This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
teaching:mfe:ia [2011/03/24 10:40] mdorigo |
teaching:mfe:ia [2013/03/18 09:49] bersini |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== MFE 2011-2012 : Intelligence Artificielle ====== | + | ====== MFE 2012-2013 : Intelligence Artificielle ====== |
===== Introduction ===== | ===== Introduction ===== | ||
Line 7: | Line 7: | ||
Ces sujets sont prêt à être encadrer, mais il va s'en dire qu'ils ne sont pas uniques. Les étudiants sont vivement encouragés à prendre contact avec Hugues Bersini (bersini AT ulb.ac.be) ou Marco Dorigo (mdorigo AT ulb.ac.be) afin de discuter de l'une ou l'autre initiative inspirée pouvant faire l'objet dun autre sujet de MFE ou de préciser le cadres, le contenu et les attentes relatives au sujets présentés. | Ces sujets sont prêt à être encadrer, mais il va s'en dire qu'ils ne sont pas uniques. Les étudiants sont vivement encouragés à prendre contact avec Hugues Bersini (bersini AT ulb.ac.be) ou Marco Dorigo (mdorigo AT ulb.ac.be) afin de discuter de l'une ou l'autre initiative inspirée pouvant faire l'objet dun autre sujet de MFE ou de préciser le cadres, le contenu et les attentes relatives au sujets présentés. | ||
- | ===== Exploration, exploitation and evaluation of the .Net Linq library for the problem of object permanence. ===== | ||
- | The MFE will consist in a deep exploration of the | + | ===== Développer un programme informatique permettant une analyse statistique en vue de l'évaluation d'un module psychothérapeutique. ===== |
- | very new microsoft Linq library which aims at resolving | + | |
- | the classical problem of mapping between the OO and the relational | + | |
- | and the XML world. The different additions of .Net necessary | + | |
- | to the implementation of this library will be studied. The | + | |
- | library will also be tested in terms of robustness and performance | + | |
- | as compared with the previous existing solutions coming from other technological platforms (Java, PHP, ...). This memoire will be a follow up of a previous memoire. | + | |
+ | Ce mémoire se fera en collaboration avec l'équipe médicale du centre pour l'anorexie et la boulimie de l'hôpital Erasme. Il consistera en l'analyse informatisée des données récoltées lors d'entretiens avec le patient et sa famille au cours du traitement. Les données sont actuellement stockées dans dans une base de données SPSS. Le mémoire consistera pour l'essentiel au traitement de ces données par des approches "Machine Learning" et "Data Mining" dans une perspective de Quality Management. | ||
* Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | * Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | ||
- | ===== Développer un programme informatique permettant une analyse statistique en vue de l'évaluation d'un module psychothérapeutique. ===== | + | ===== Développer un programme informatique permettant la reconnaissance automatique de photos évoquant des visages. ===== |
- | Ce mémoire se fera en collaboration avec l'équipe médicale du centre pour l'anorexie et la boulimie de l'hôpital Erasme. Il consistera en l'analyse informatisée des données récoltées lors d'entretiens avec le patient et sa famille au cours du traitement. | + | Un ingénieur AIrBR a comme passion de prendre des photos d'objets du quotidien dont le contenu évoque très fortement des visages humains. Il a constitué une base de données énorme de ses photos et souhaiterait mettre au point un algorithme de reconnaissance automatique de visages à partir de ces photos. Ainsi, l'algorithme pourrait séparer automatiquement sur de nouvelles photos celles qu'il considère vraiment comme évoquant un visage des autres. |
* Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | * Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | ||
- | |||
Line 39: | Line 32: | ||
* Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | * Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | ||
+ | ===== Réorganisation sous forme OO et UML d’un code de simulation climatique ===== | ||
+ | Ce mémoire se déroulera en collaboration avec le professeur Jean-Pascal van Ypersele de l’UCL, vice président du GIEC, groupe de recherche sur l’évolution climatique. La plupart des codes de simulation climatique sont rédigés en Fortran en exploitant peu les principes de la programmation OO. Ce mémoire consistera en la sélection d’un logiciel de simulation climatique assez simple, plutôt à vocation didactique, et sa réécriture sous forme OO, en faisant un recours intensif aux diagrammes UML et aux Design Patterns. | ||
+ | |||
+ | * Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | ||
+ | |||
+ | ===== Réorganisation sous forme OO et UML d’un code de contagion systémique d'un réseau de crédits interbancaire ===== | ||
+ | |||
+ | La crise financière actuelle a permis de mettre en lumière les risques de contagion systémique liés à la faillite de certaines banques. En effet, la plupart du temps, les banques forment entre elles un réseau de crédit interbancaire qui, à la fois les rend plus solides, mais aussi plus vulnérables à la défection de l’une ou l’autre. De nombreux logiciels ont été écrits afin d’étudier plus en détail ce risque. Le mémoire consistera en la sélection d’un de ces logiciels déjà clairement identifiés et sa réécriture sous forme OO, en faisant un recours intensif aux diagrammes UML et aux Design Patterns. | ||
+ | |||
+ | * Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | ||
+ | |||
===== Data/text mining - Traitement automatique de documents sur base de leur contenu ===== | ===== Data/text mining - Traitement automatique de documents sur base de leur contenu ===== | ||
Line 66: | Line 70: | ||
* Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | * Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | ||
+ | ===== Etude de la topologie de réseaux d'acteurs extraits à partir de romans célèbres ===== | ||
+ | |||
+ | De plus en plus de scientifiques sont convaincus qu’une même topologie de réseaux (c'est-à-dire la manière dont les nœuds en sont connectés) se retrouve dans de nombreux réseaux, pourtant extraits de réalités très diverses (Web, Internet, réseaux sociaux, biologiques, épidémiques). Cette topologie leur conférerait des propriétés intéressantes comme une plus grande robustesse ou une communication réduite entre les nœuds. Il est possible de construire des réseaux lexicaux à partir d’un document quelconque, par exemple, en connectant deux mots qui apparaissent dans une même phrase. Le MFE consistera en un développement logiciel ayant pour but la réalisation automatique d'un réseau de personnages de romans (Harry Potter, les Misérables et autres) à partir des dialogues présents dans ces romans. Les liens seront également pondérés comme résultat d'une analyse de sentiments faite à partir de ces mêmes dialogues. On procédera ensuite à l’étude automatisée de leur topologie : distance inter-nœuds, degré de clustering, etc … | ||
+ | |||
+ | * Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | ||
===== Expérimentation des designs patterns pour la modélisation de systèmes biologiques complexes ===== | ===== Expérimentation des designs patterns pour la modélisation de systèmes biologiques complexes ===== | ||
Line 94: | Line 103: | ||
* Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | * Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | ||
+ | |||
+ | ===== Mise au point d’un système automatique de génération d'équations différentielles au départ d’un diagramme d’état-transition ===== | ||
+ | |||
+ | Le diagramme d’état-transition représente le cycle de vie d’un objet, de sa naissance à sa disparition, en suivant les différents états par lesquels cet objet transite. Lorsqu'il s'agit d'objets biologiques, il est possible de ré-interpréter ce diagramme comme la transition d'une | ||
+ | partie d'une population d'objets dans un certain d'état dans l'état qui | ||
+ | suit. Dans ce cas, ce diagramme peut se traduire sous forme d'un système | ||
+ | d'équations différentielles que l'on devra pouvoir générer automatiquement. | ||
+ | |||
+ | * Contact : [[http://code.ulb.ac.be/iridia.people.php?id=1|Hugues Bersini (IRIDIA)]] | ||
+ | * | ||
===== Mise au point d’un langage de modélisation de systèmes biologiques inspiré des diagrammes de classe et d'état/transition UML ===== | ===== Mise au point d’un langage de modélisation de systèmes biologiques inspiré des diagrammes de classe et d'état/transition UML ===== | ||
Line 127: | Line 146: | ||
* Contacts : | * Contacts : | ||
* [[http://iridia.ulb.ac.be/~mdorigo|Marco Dorigo (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~mdorigo|Marco Dorigo (IRIDIA)]] | ||
- | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stuetzle (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |
* [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari (IRIDIA)]] | ||
* [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | ||
Line 142: | Line 161: | ||
* Contacts : | * Contacts : | ||
* [[http://iridia.ulb.ac.be/~mdorigo|Marco Dorigo (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~mdorigo|Marco Dorigo (IRIDIA)]] | ||
- | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stuetzle (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |
* [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari (IRIDIA)]] | ||
* [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | ||
Line 158: | Line 177: | ||
* Contacts : | * Contacts : | ||
- | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stuetzle (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |
* [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | ||
+ | |||
+ | |||
+ | |||
+ | ===== Design of a graphical interface for an automatic configuration tool. ===== | ||
+ | |||
+ | Optimization algorithms have a number of parameters that strongly | ||
+ | affect their efficiency. For many years the setting of these | ||
+ | parameters was done by hand; a tedious task that requires a lot of | ||
+ | human involvement. Nowadays, some tools are available to automatize this task by considering the setting of the parameters as a "meta"-optimization problem. One of these tools for automatic configuration (the irace package: http://iridia.ulb.ac.be/irace) has been developed at IRIDIA, and has been already applied successfully to many algorithms. The goal of this project is to design a graphical interface on top of the existing software, to help the user to set-up his particular tuning problem, to visualize information about the tuning process while it is on-going and when it has completed, and to integrate statistical tools for the analysis of the tuner results. | ||
+ | |||
+ | The student will have to implement a Graphical front-end on top of the | ||
+ | existing software implemented in R, using a cross-platform library | ||
+ | such as Qt (http://qtinterfaces.r-forge.r-project.org/). Some | ||
+ | additions to the original software may be required, and the student | ||
+ | will have to work in collaboration with the team of developers of | ||
+ | irace at IRIDIA. | ||
+ | |||
+ | * Contacts : | ||
+ | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] | ||
+ | * [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari (IRIDIA)]] | ||
+ | * [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | ||
+ | * [[http://iridia.ulb.ac.be/~jdubois|Jérémie Dubois-Lacoste (IRIDIA)]] | ||
Line 174: | Line 215: | ||
* Contacts : | * Contacts : | ||
- | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stuetzle (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |
* [[http://iridia.ulb.ac.be/~fmascia|Franco Mascia (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~fmascia|Franco Mascia (IRIDIA)]] | ||
Line 190: | Line 231: | ||
* Contacts : | * Contacts : | ||
- | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stuetzle (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |
* [[http://iridia.ulb.ac.be/~fmascia|Franco Mascia (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~fmascia|Franco Mascia (IRIDIA)]] | ||
- | /* | + | ===== Analysis of Local Optima Networks for the Max-Clique problem. ====== |
- | ===== Swarm robotics using the e-puck platform ===== | + | Stochastic Local Search algorithms search for optimal solutions in a large space of candidate solutions. Local Optima Networks (LON) are representations of search landscapes of combinatorial optimisation problems. In these networks, nodes are local optima of the problem, and edges are weighted transitions between the optima. These networks model in a more compact way the properties of the larger search spaces they represent. |
+ | The goal of this project is to build LON of small instances of the Maximum Clique (MC) problem, and measure properties that could illustrate the differences between instance families. | ||
- | The e-Puck is a robot developed by the Ecole Polytechnique Fédérale de Lausanne, Switzerland. It is equipped with a dsPIC micro-controller, it has an RS232 and a bluetooth interface, 8 infrared proximity sensors, a 3 axis accelerometer, 3 microphones and a speaker, a color camera with a resolution of 640x480 pixels and 8 red leds for displaying patterns. | + | The MC problem is an NP-hard combinatorial optimisation problem that asks to find the biggest completely connected component of a graph. It has relevant applications in information retrieval, computer vision, social network analysis, computational biochemistry, bioinformatics and genomics. |
- | In the last years, a number of projects carried out at IRIDIA developed a set of tools and a fully functional platform to work efficiently with e-puck robots. In particular, a precise description of the properties of the robots, software libraries and an accurate simulator are now available. A number of controllers were developed and successfully tested on the robots. | ||
- | The goal of the project ``Swarm robotics using the e-puck platform'' is to design and carry out experiments of swarm robotics that are typically bio-inspired and involve several robots. Possible experiments include p2p communication networks for path finding, flocking for exploration, transport of objects and aggregation of robots. 12 e-Puck will be available for the project. | + | Required skills: good knowledge of C or C++ programming. |
- | The project is tightly connected to the research in swarm robotics carried out at IRIDIA and in particular to the EU funded //Swarmanoid// project, the aim of which is to study new approaches to the design and implementation of self-organizing and self-assembling artifacts. See [[http://www.swarmanoid.org]] for more details. | ||
- | |||
- | Required skills: The candidates should be acquainted with C/C++ programming and have a working knowledge of the English language. | ||
* Contacts : | * Contacts : | ||
- | * [[http://iridia.ulb.ac.be/~mdorigo|Marco Dorigo (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |
- | * [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~fmascia|Franco Mascia (IRIDIA)]] |
- | + | ||
- | */ | + | |
- | ===== Experiments with the e-puck robot and the IRIDIA TAM ===== | ||
- | At IRIDIA, we are conducting many experiments with the e-puck | ||
- | robot and a task abstraction device, the IRIDIA TAM. The topic of the | ||
- | master thesis would be integrate the TAM with the e-puck robot and our | ||
- | simulation environment, ARGoS. The final goal is to have the TAM tested | ||
- | in real-robot experiments. | ||
- | The subject is practical and requires a dedicated student that is able | ||
- | to program in C++. A possible candidate should be willing to work with | ||
- | hardware and real robots. Additionally, the candidate must be very | ||
- | motivated and creative. The working language is English. | ||
- | * Contacts: [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]], Marco Dorigo, Arne Brutschy, Giovanni Pini (IRIDIA) | + | ===== Formal verification of a swarm robotics behavior through statistical model checking ===== |
- | ===== Collaboration between flying robots and ground-based robots ===== | + | The goal of this thesis is to apply statistical model |
+ | checking to formally verify properties of a collective behavior of a | ||
+ | robot swarm. Verifying that a system behaves as desired in all | ||
+ | possible situations is necessary when autonomous robots are involved. | ||
+ | This is particularly true in swarm robotics systems, where the | ||
+ | interactions of large number of individuals can result in behaviors | ||
+ | difficult to predict. Model checking is a common technique to formally | ||
+ | prove properties of a system. However, its results are limited to | ||
+ | small systems, because medium-sized or large systems are | ||
+ | computationally impossible to analyze. | ||
- | Current research in self-assembling robots mainly focuses on systems composed of identical (i.e., homogeneous) robots. In this thesis, however, we consider a system composed of robots with varying capabilities and different sensors. In particular, we consider a heterogeneous self-assembling system composed of both ground-based robots and flying robots. The ground-based robots can respond to various task contingencies by autonomously connecting to each other and forming collective structures. The flying robots can use their large field of view (from their elevated positions) to assist the ground-based robots in their tasks. | + | This thesis is will explore the application of a novel model checking technique, called statistical model checking, to formally verify a swarm robotics system. A collective behavior will be firstly implemented in |
+ | simulation and then analyzed through statistical model checking. | ||
- | In this thesis, the student will focus on the flying robots in the system. The student will explore how the flying robots can i) run internal simulations on possible connections between the ground-based robots to determine the response structure to a task and ii) apply machine learning techniques to let the flying robot use previous, successful experiences to learn about tasks and their possible response structures. The results of the study can be tested on real flying and ground-based robots. | + | Required skills: the candidates should be acquainted with C/C++ |
+ | programming and have a working knowledge of the English language. | ||
- | Concrete ideas will be developed together with the student. A candidate student must be very motivated, independent, have a good knowledge of machine learning techniques, and have a good grasp of C++. The working language is English. | + | * Contacts : [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]] and Manuele Brambilla (IRIDIA) |
- | * Contacts: [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]], Marco Dorigo, Nithin Mathews (IRIDIA) | ||
- | ===== Recruitment strategies for collective decision making in swarm robotics ===== | + | ===== UML for Swarm robotics: formal specification of a collective behavior ===== |
- | Studies of ants and bees have led to different models of collective | + | Swarm robotics is an interesting approach to the |
- | decision making methods in social insects. Swarms of cooperating | + | coordination of hundreds of robots as it promotes the realization of |
- | robots also have to find consensus decisions and thus face similar | + | systems which are scalable, robust and flexible. However, up to now, |
- | problems as social insects. It is an interesting research question if | + | swarm robotics application has been quite limited, also due to the |
- | the biological models can be applied to create decentralized and | + | lack of an engineering approach to its development. |
- | robust decision making methods for swarms of robots. More precisely, | + | In particular, formal specification has not been applied yet to swarm |
- | we assume that robots are able to estimate their confidence | + | robotics systems. |
- | about their own decision. Thus, if a group of robots is unsure about a | + | |
- | decision they shall recruit more robots into the decision process to | + | |
- | assure a certain quality in the overall decision. | + | |
- | The goal of this master thesis project is to study different | + | In this thesis, we will explore possible ways to formally specify |
- | recruitment strategies for decision making in swarms of robots. The | + | swarm robotics systems. As a starting point we will consider UML and |
- | following application scenario will be implemented. A group | + | UML extensions like AUML and UML for multi-agent systems. If |
- | of robots need to classify an object in order to operate on it. | + | necessary, we will develop a specific extension for swarm robotics |
- | Through its sensors the single robots can classify an object with a | + | systems. Once the preliminary work is done we will consider an |
- | certain accuracy. This opinion can then be shared in a group to reach | + | example, perform formal specification of a task and then implement the |
- | consensus. If the individual robot's opinions differ strongly from the | + | system in simulation. |
- | one of other | + | |
- | robots or the robots do not have the necessary skills/sensors they | + | |
- | might not be able to reach a final decision. In this case they can | + | |
- | recruit other robots and involve them in the decision making process. | + | |
Required skills: the candidates should be acquainted with C/C++ | Required skills: the candidates should be acquainted with C/C++ | ||
- | programming and have a working knowledge of the English language. | + | programming, have a good knowledge of formal specification and UML, |
+ | and have a working knowledge of the English language. | ||
+ | |||
+ | * Contacts : [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]] and Manuele Brambilla (IRIDIA) | ||
+ | |||
+ | |||
+ | ===== A GUI for debugging the behavior of a robot swarm ===== | ||
+ | |||
+ | Debugging a robot swarm is a complex and difficult task. | ||
+ | The desired behavior of the swarm is the result of the complex | ||
+ | non-linear interactions of tens or hundreds of robots. When | ||
+ | implementing a swarm robotics system, very often it is necessary to | ||
+ | analyze individually the output of the execution of each robot, a very | ||
+ | long and boring process. Since the goal of the developer is to obtain | ||
+ | a specific collective behavior, it would be better to debug the system | ||
+ | at the collective level and, only if necessary, at the individual | ||
+ | level. | ||
+ | |||
+ | In this thesis we will analyze a possible way to debug the collective | ||
+ | behavior of a swarm of robots, using macroscopic and microscopic | ||
+ | modeling. The goal is to develop a GUI that shows the state of the | ||
+ | collective behavior of the system, and if the user requires it, the | ||
+ | state of a single robot. We will start with a version of the debugging | ||
+ | GUI that interface with the ARGoS simulator and eventually one that | ||
+ | interfaces with the real robots. | ||
+ | |||
+ | Required skills: the candidates should be acquainted with C/C++ | ||
+ | programming, GUI programming (QT/C++ or QT/Python or Java) and have a | ||
+ | working knowledge of the English language. | ||
+ | |||
+ | |||
+ | * Contacts : [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]] and Manuele Brambilla (IRIDIA) | ||
+ | |||
- | * Contact: [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]], Marco Dorigo, Manuele Brambilla, Alexander Scheidler (IRIDIA) | ||
- | ===== Scalable aggregation in swarm robotics without global information or environmental clues ===== | + | ===== A virtual machine for mobile code in a swarm of robots ===== |
- | Several studies in biology have shown that group of social insects are able to gather to a particular spot. This process is usually driven by environmental clues such as shadows projected by a shelter (cockroaches) or temperature gradients (bees). These studies have been a source of inspiration for several algorithms in swarm robotics. Is it possible to achieve the same result without an environmental clue? Do we need global information in order to let a group of robot gather in one place? | + | Mobile code is a technology whereby nodes in a network of |
+ | computing nodes exchange code. In other words, code migrates from | ||
+ | machine to machine like an agent navigating an environment. Mobile | ||
+ | code is a promising technology for swarm robotics because it would | ||
+ | enable a new, novel type of robot-to-robot interaction. The aim of this | ||
+ | project is produce a simple, yet high-performance virtual machine to | ||
+ | support code exchange in a swarm of robots. A simple experiment with | ||
+ | the robots demonstrating the capabilities of the VM will be performed. | ||
- | The goal of this project is to study how to solve an aggregation task without relying on environmental clues or global signaling. The problem can be seen as an exploration-exploitation trade-off tackled by a single robot. The robot has to select between keeping exploring, that is, finding the the largest aggregate, or exploiting, that is join a previously created aggregate. The study will be conducted only in simulation and will concern comparing different approaches for decision making or different communication strategies. | + | Required Skills: Good knowledge of C |
- | Required skills: The candidates should be acquainted with C++ programming and have a working knowledge of the English language. | ||
- | * Contact: [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]], Marco Dorigo, Eliseo Ferrante, Ali Emre Turgut (IRIDIA) | + | * Contact: [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]] and Carlo Pinciroli (IRIDIA) |
- | ===== Kaleidoscope: Creating temporal motion patterns in a swarm of robots ===== | ||
- | In swarm robotics, agents are programmed in such a way that local actions and simple interactions among agents result in complex, swarm-level dynamics. At present, the design of swarm robotic control systems is more of a craft than a science, mainly because significant design patterns are still to be identified and studied. This project aims to discover and study temporal patterns in robot motion, and subsequently to encode them into reusable design patterns. Each robot is assumed to possess a limited set of capabilities, such as the ability to change body color and to perceive other robots and their | + | ===== Swarmscope ===== |
- | colors in a short range. Individual controllers are derived from a very simple but powerful mathematical model. The work of the student will be to code and analyze robot controllers, both with simulated and real robots. The most important required skills are a good knowledge of C and C++ and no fear of mathematics. The working language is English. | + | |
+ | One the main problems in the development of swarm robotics | ||
+ | systems is the difficulty of producing, analyzing and debugging code for | ||
+ | large distributed systems. The aim of this project is to produce a set of | ||
+ | innovative tools to aid the development of complex swarm robotics | ||
+ | systems. The produced tools will involve new, creative visualization | ||
+ | methods and media, novel human-robot swarm interaction and effective | ||
+ | debugging tools. | ||
- | * Contact: [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]], Marco Dorigo, Carlo Pinciroli (IRIDIA) | + | Required Skills: Good knowledge of C++ and Qt4 |
+ | * Contact: [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]] and Carlo Pinciroli (IRIDIA) | ||
- | ===== Flocking and avoidance of concave obstacles ===== | + | ===== Self-organized visual coverage in a swarm of robots ===== |
- | In swarm robotics, taking inspiration from biological | + | Systems composed of several inter-connected cameras are already a reality in our everyday lives. The prime application of such systems is video-surveillance, but the possibilities offered by multiple-camera systems can extend to other interesting scenarios, such as environment mapping, 3D shape-reconstruction and object recognition. In all these scenarios, the problem of finding the right |
- | systems such as flock of birds, a number of strategies for coordinated | + | position of a set of cameras in order to maximize the visual field, or the amount of information available, is not always a simple one. Furthermore, systems consisting of cameras in a fixed position present obvious issues of robustness and flexibility. |
- | navigation of large swarms have been proposed. By coordinated | + | Multi-robots systems can provide an interesting mean to overcome this issues. Robots navigating in the enviroment can change their position as a result of changes in the enviroment or in the overall system's objective. A centralized control solution for these systems is still not a desirable one, as it introduces a single point of failure and it can suffer from performance issues. |
- | navigation we mean that each robot in the swarm is able to locally avoid | + | The Swarm Robotics paradigm offers a valid approach to the design of a multiple camera system. In this project, we want to study the possibility to develop a control strategy that enables a swarm of robots to position themselves into an unknown environment, maximizing the area covered by their visual fields, while relying only on their image processing system and on local communication. |
- | collisions with the neighbors, while at the global level the swarm | + | |
- | behaves as a single organism. In cluttered environments, in which many | + | |
- | obstacles are present, it is still an open problem how to maintain the | + | |
- | cohesion of the swarm. In addition, when obstacles are concave and | + | |
- | large enough to house a large portion of the swarm, the latter may get stuck | + | |
- | in the concavity, preventing navigation from continuing. This project | + | |
- | aims to study a set of effective strategies to tackle this | + | |
- | problem. The student will run experiments with simulated and real | + | |
- | robots. The most important required skill is a good knowledge of C and | + | |
- | C++. The working language is English. | + | |
- | * Contact: [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]], Marco Dorigo, Carlo Pinciroli, Eliseo Ferrante (IRIDIA) | + | Required skills: The candidate should be acquainted with C/C++ programming and have a |
+ | working knowledge of the English language. | ||
+ | * Contact: [[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]] and Alessandro Stranieri (IRIDIA) | ||
===== Automatic fitness function definition in evolutionary robotics ===== | ===== Automatic fitness function definition in evolutionary robotics ===== | ||
Line 445: | Line 510: | ||
* Contacts : | * Contacts : | ||
* [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | ||
- | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stuetzle (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |
Line 454: | Line 519: | ||
* Contacts : | * Contacts : | ||
* [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | ||
- | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stuetzle (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |
* [[http://iridia.ulb.ac.be/~mdorigo|Marco Dorigo (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~mdorigo|Marco Dorigo (IRIDIA)]] | ||
Line 464: | Line 529: | ||
* Contacts : | * Contacts : | ||
* [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | ||
- | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stuetzle (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |
Line 473: | Line 538: | ||
* Contacts : | * Contacts : | ||
* [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | * [[http://iridia.ulb.ac.be/~manuel|Manuel López-Ibáñez (IRIDIA)]] | ||
- | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stuetzle (IRIDIA)]] | + | * [[http://iridia.ulb.ac.be/~stuetzle|Thomas Stützle (IRIDIA)]] |