Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
teaching:mfe:ia [2011/03/18 11:55]
bersini [> Développer un programme informatique permettant une analyse statistique en vue de l'évaluation d'un module psychothérapeutique.]
teaching:mfe:ia [2012/03/21 16:07]
mdorigo [Formal verification of a swarm robotics behavior through statistical model checking]
Line 178: Line 178:
  
  
-/* 
  
-===== Swarm robotics using the e-puck platform ​=====+===== Stochastic Local Search heuristics for solving NP-complete puzzles. ======
  
 +This project is about single player games (puzzles) and the design of algorithms for tackling hard combinatorial optimisation problems. ​
 +Example puzzles are: [[http://​en.wikipedia.org/​wiki/​Light_Up|Light Up]], [[http://​en.wikipedia.org/​wiki/​Mastermind_(board_game)|Mastermind]],​ [[http://​en.wikipedia.org/​wiki/​Minesweeper_(video_game)|Minesweeper]],​ etc.
  
-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 student will learn how to design and implement a Stochastic Local Search algorithm to solve NP-complete puzzles. The student will also learn how to analyse ​the performaces of the algorithm ​and perform statistically sound comparisons ​with the other algorithms available in literature.
  
-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.+Required skills: good knowledge ​of C or C++ programming
  
-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. 
  
-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 artifactsSee [[http://www.swarmanoid.org]] for more details.+  * Contacts :  
 +    * [[http://iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]]  
 +    * [[http://iridia.ulb.ac.be/​~fmascia|Franco Mascia (IRIDIA)]]   ​
  
-Required skills: The candidates should be acquainted with C/C++ programming and have a working knowledge of the English language. 
  
-  * Contacts :  
-    * [[http://​iridia.ulb.ac.be/​~mdorigo|Marco Dorigo (IRIDIA)]] ​ 
-    * [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari (IRIDIA)]] ​ 
-  
-*/ 
  
-===== Self-organized task allocation in swarm robotics =====+===== Formal verification of a swarm robotics ​behavior through statistical model checking ​=====
  
-Swarm robotics ​is an innovative branch ​of collective ​robotics that aims at designing ​robot behaviors by taking inspiration from social animals, such as ants and bees"Task allocation" ​in such robotic swarms ​is the problem of "who is doing what job and when?" Obviouslythis problem ​of assigning jobs to a whole swarm robots ​can be very difficult, especially when using many robots that cannot communicate with each other on global level.+The goal of this thesis ​is to apply statistical model 
 +checking to formally verify properties ​of collective ​behavior of a 
 +robot swarmVerifying that a system behaves as desired ​in all 
 +possible situations ​is necessary ​when autonomous robots are involved. 
 +This is particularly true in swarm robotics systemswhere the 
 +interactions ​of large number of individuals ​can result in behaviors 
 +difficult ​to predict. Model checking is 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.
  
-The goal of the project is to implement new algorithms for solving this problem on the e-Puck robot and run extensive experiments with this robot in various environmentsThe project ​will involve experimentation with about 30 real e-Pucks. The project is tightly connected to the research ​in swarm robotics carried out at IRIDIA.+This thesis is will explore the application ​of a novel model checking technique, called statistical model checking, ​to formally verify a swarm robotics systemA collective behavior ​will be firstly implemented ​in 
 +simulation and then analyzed through statistical model checking.
  
-Required skills: ​The candidates should be acquainted with C/C++ programming and have a working knowledge of the English language.+Required skills: ​the candidates should be acquainted with C/C++ 
 +programming and have a working knowledge of the English language.
  
-  * Contacts: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]], Marco Dorigo, Arne Brutschy, Giovanni Pini (IRIDIA)+  * Contacts : [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]] ​and Manuele Brambilla ​(IRIDIA)
  
-===== Studying collaboration between flying robots and ground-based robots ===== 
  
-In previous studies, it has been shown that multiple ground-based robots can autonomously form various patterns by attaching to each other. These robots used simple rule sets and local communication to form pre-defined or random patterns. In this thesis, the student will study how flying robots can collaborate with ground-based robots to select and control the pattern formation process. The student will implement the results ​of his study and various other algorithms that would facilitate such collaboration. In order to gain a sound understanding of the matter, the student will first study and benchmark collaboration techniques used in existing robotic systems including flying and ground-based robots.+===== UML for Swarm robotics: formal specification ​of a collective behavior =====
  
-A possible candidate student must be very motivated, ready to invest extra hours into the thesis, and have a good grasp of C++ The working ​ language is English.+Swarm robotics is an interesting approach ​to the 
 +coordination of hundreds of robots as it promotes the realization of 
 +systems which are scalablerobust ​and flexible. However, up to now, 
 +swarm robotics application has been quite limited, also due to the 
 +lack of an engineering approach to its development. 
 +In particular, formal specification has not been applied yet to swarm 
 +robotics systems.
  
-  * Contacts: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]]Marco Dorigo, Nithin Mathews (IRIDIA)+In this thesis, we will explore possible ways to formally specify 
 +swarm robotics systemsAs a starting point we will consider UML and 
 +UML extensions like AUML and UML for multi-agent systemsIf 
 +necessary, we will develop a specific extension for swarm robotics 
 +systemsOnce the preliminary work is done we will consider an 
 +exampleperform formal specification of a task and then implement the 
 +system in simulation.
  
-===== Adaptive collective alignment ​with a swarm of e-puck robots =====+Required skills: the candidates should be acquainted ​with C/C++ 
 +programming,​ have good knowledge ​of formal specification and UML, 
 +and have a working knowledge of the English language.
  
-Flocking is a fascinating behavior that birds are able to achieve without a leader or a common frame of referenceMoreover, in some cases, the group goes in the correct direction even if only a small proportion of the group knows the goal directionThis allows birds to avoid a predator even if only a subset of the flock sees itWe want to study one of the most interesting aspects of this mechanism, that is how a group can align collectively to a common direction ​and change this direction over time according to some stimuli perceived only by a small minority of individuals.+  * Contacts : [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]] ​and Manuele Brambilla (IRIDIA)
  
-The goal of this project is to apply a methodology,​ so far studied only in simulation, to the e-puck robots, in order to tackle the adaptive collective alignment problem. A group of e-pucks has to reach consensus and turn to a common random heading direction, using a common light source as reference point. Furthermore,​ when an obstacle is perceived by a small minority of the group, consensus should be achieved in order to align to a new direction which allows them to avoid the obstacle. 
  
-Required skills: The candidates 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]],​ Marco Dorigo, Eliseo Ferrante, Ali Emre Turgut (IRIDIA)+===== A virtual machine for mobile code in a swarm of robots =====
  
-===== Scalable aggregation ​in swarm robotics ​without global information or environmental clues =====+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.
  
-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?+Required Skills: Good knowledge ​of C
  
-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 skillsThe 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]] ​and Carlo Pinciroli (IRIDIA) ​
  
-  * Contact: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]],​ Marco Dorigo, Eliseo Ferrante, Ali Emre Turgut (IRIDIA) 
  
-===== A comparison of decision-making strategies for adaptive foraging in swarm robotics ===== 
  
-Group of social insects are able to efficiently find the (shortest) path to the a food source and even to differentiate between the quality of two food sources. Studies with ants showed that this mechanism is driven by the perception of stimuli from chemical substances like pheromone. Moreover ants are able to collectively modify their choices if there are changes in the environment,​ that is, if a source becomes better than another. These ideas have been a source of inspiration for several algorithms in swarm robotics which solves a similar problem (retrieval of objects) by using different types of stimuli such as the encounter rate of objects.+===== Swarmscope =====
  
-The goal of this project is to perform ​study on how to solve a foraging task in which robots have to choose between staying at the nest or go foraging for different energy sources. The optimal strategy might change over time. What happens if all the robots go to the best source? Will these "​traffic jams" slow the process? Is it possible to avoid this problem? What if source quality changes over time? The study will be conducted only in simulation ​and will concern comparing different approaches ​and different metrics to measure stimuli.+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 ​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.
  
-Required ​skillsThe candidates should be acquainted with C++ programming ​and have a working knowledge of the English language.+Required ​SkillsGood knowledge of C++ and Qt4
  
-  * Contact: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]], Marco Dorigo, Eliseo Ferrante, Manuele Brambilla ​(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 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  +===== Self-organized visual coverage ​in a swarm of robots ​=====
-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.+
  
 +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 o ered from multiple-camera systems can extend to other
 +interesting objectives, such as environment mapping, 3D shape-reconstruction
 +and object recognition. In all these scenarios, the problem of nding the right
 +position of a set of cameras in order to maximize the visual eld, or the amount
 +of information available, is not always a simple one. Furthermore,​ systems
 +consisting of cameras in a xed position present obvious issues of robustness
 +and exibility.
 +Multi-robots systems can provide an interesting mean to overcome this is-
 +sues. 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 su er from performance issues.
 +The Swarm Robotics paradigm o ers a valid approach to the design of a mul-
 +tiple 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 elds, while
 +relying only on their image processing system and on local communication.
  
-  * Contact: [[http://iridia.ulb.ac.be/​~mbiro|Mauro Birattari]],​ Marco Dorigo, Carlo Pinciroli (IRIDIA) ​+RequirementsThe candidates 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 =====
  
 +Evolutionary robotics is a fascinating approach to the design of robot controllers that takes inspiration from natural evolution.
 +
 +In order to obtain a robot that is able to perform a desired task, the evolutionary robotics approach considers a population of robots that evolves in time. Each robot is characterized by a genotype that defines somehow its behavior. Each robot is evaluated according to a fitness function that measures the ability of the robot to perform the desired task. Robots with a low fitness are eliminated. Robots with a high fitness remain in the population and generate offsprings -- e.g., robots with a similar genotype obtained via mutation and/or cross-over. Through this process, generation by generation, the evolutionary robotics approach is able to obtain robots that present higher and higher fitness and that are therefore able to perform the desired task more and more effectively.
 +
 +One of the main open problems in evolutionary robotics is that the definition of an appropriate fitness function is a very complex, labor-intensive,​ and time-consuming activity that requires the attention of an expert researcher.
 +
 +The goal of this master thesis is to devise an automatic method to define a fitness function in order to obtain a robot that is able to perform a desired task. This automatic method will be based on machine learning and metaheuristic algorithms. In particular, it will draw ideas from the fields of reinforcement learning and of on-line adaptation of parameters in optimization algorithms.
 +
 +Required skills: The candidates 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]],​ Marco Dorigo, Vito Trianni (IRIDIA) ​
 +
 +
 +===== Evolution of Modular Controllers for Simulated and Real Robots =====
 +
 +The goal of this master thesis is investigating how modularity in a robot controller can influence the quality of the behaviours obtained through artificial evolution.
 +Similarly to the nervous system that can be divided in central and peripheral, the project will study a modular architecture for neural network controllers. The peripheral modules encode the information coming from the sensory subsytems or going to the motor apparatus. The central system encodes the behavioural rules that map sensations to actions. The project will study methods to develop the peripheral modules by maximising the information transfer from the sensory input and to the motor output, on the basis of measures derived from Information Theory.
 +The project will involve experimental activities with both simulated and real robots, and will investigate both individual and collective behaviours.
 +
 +Required skills: The candidates should be acquainted with C/C++ programming and have a working knowledge of the English language.
 +
 +* Contact: [[http://​iridia.ulb.ac.be/​~vtrianni|Vito Trianni]], Marco Dorigo (IRIDIA) ​
  
  
 
teaching/mfe/ia.txt · Last modified: 2024/07/01 16:15 by stuetzle