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/23 08:31]
mdorigo [Adaptive collective alignment with a swarm of e-puck robots]
teaching:mfe:ia [2012/03/21 16:11]
mdorigo [Self-organized visual coverage in a swarm of robots]
Line 182: Line 182:
  
 This project is about single player games (puzzles) and the design of algorithms for tackling hard combinatorial optimisation problems. ​ This project is about single player games (puzzles) and the design of algorithms for tackling hard combinatorial optimisation problems. ​
-Example puzzles are: <a href="http://​en.wikipedia.org/​wiki/​Light_Up">Light Up</a><a href="http://​en.wikipedia.org/​wiki/​Mastermind_(board_game)">Mastermind</a><a href="http://​en.wikipedia.org/​wiki/​Minesweeper_(video_game)">Minesweeper</a>, etc.+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 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. 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.
Line 194: Line 194:
  
  
-/* 
  
-===== Swarm robotics ​using the e-puck platform ​=====+===== Formal verification of a swarm robotics ​behavior through statistical model checking ​=====
  
 +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.
  
-The e-Puck ​is a robot developed by the Ecole Polytechnique Fédérale de Lausanne, Switzerland. It is equipped with dsPIC micro-controllerit 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.+This thesis ​is will explore ​the application of novel model checking techniquecalled statistical model checkingto formally verify ​swarm robotics system. A collective behavior will be firstly implemented in 
 +simulation ​and then analyzed through statistical model checking.
  
-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: ​the candidates should be acquainted with C/C++ 
 +programming ​and have working knowledge ​of the English language.
  
-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 robots12 e-Puck will be available for the project.+  * Contacts : [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]] and Manuele Brambilla (IRIDIA)
  
-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 skillsThe candidates should be acquainted with C/C++ programming and have a working knowledge ​of the English language.+===== UML for Swarm roboticsformal specification ​of a collective behavior =====
  
-  * Contacts :  +Swarm robotics is an interesting approach to the 
-    * [[http://​iridia.ulb.ac.be/​~mdorigo|Marco Dorigo (IRIDIA)]] ​ +coordination of hundreds of robots as it promotes the realization of 
-    * [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari (IRIDIA)]] ​ +systems which are scalable, robust and flexibleHowever, 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.
  
-===== Self-organized task allocation in swarm robotics ​=====+In this thesis, we will explore possible ways to formally specify 
 +swarm robotics systems. As a starting point we will consider UML and 
 +UML extensions like AUML and UML for multi-agent systems. If 
 +necessary, we will develop a specific extension for swarm robotics 
 +systems. Once the preliminary work is done we will consider an 
 +example, perform formal specification of a task and then implement the 
 +system in simulation.
  
-Swarm robotics is an innovative branch of collective robotics that aims at designing robot behaviors by taking inspiration from social animalssuch 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 a global level.+Required skills: the candidates should be acquainted with C/C++ 
 +programminghave a good knowledge ​of formal specification ​and UML, 
 +and have a working knowledge ​of the English language.
  
-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-PucksThe project is tightly connected to the research in swarm robotics carried out at IRIDIA.+  * Contacts : [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]] and Manuele Brambilla (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/​~mbiro|Mauro Birattari]],​ Marco Dorigo, Arne Brutschy, Giovanni Pini (IRIDIA) 
  
-===== Collaboration between flying robots and ground-based robots ===== 
  
-Current research ​in self-assembling robots mainly focuses on systems composed of identical (i.e., homogeneous) robots. In this thesis, however, we consider ​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.+===== A virtual machine for mobile code in a swarm of robots ​=====
  
-In this thesisthe student will focus on the flying robots in the systemThe 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.+Mobile code is a technology whereby nodes in a network of 
 +computing nodes exchange code. In other wordscode migrates from 
 +machine to machine like an agent navigating an environmentMobile 
 +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 ​simple, yet high-performance virtual ​machine to 
 +support code exchange in a swarm of robotsA simple experiment with 
 +the robots demonstrating the capabilities ​of the VM will be performed.
  
-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. ​+Required Skills: Good knowledge of C
  
-  * Contacts: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]],​ Marco Dorigo, Nithin Mathews (IRIDIA) 
  
-===== Recruitment strategies for collective decision making in swarm robotics =====+  * Contact: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]] and Carlo Pinciroli (IRIDIA) ​
  
-Studies of ants and bees have led to different models of collective 
-decision making methods in social insects. Swarms of cooperating 
-robots also have to find consensus decisions and thus face similar 
-problems as social insects. It is an interesting research question if 
-the biological models can be applied to create decentralized and 
-robust decision making methods for swarms of robots. More precisely, 
-we assume that robots are able to estimate their confidence 
-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 
-recruitment strategies for decision making in swarms of robots. The 
-following application scenario will be implemented. A group 
-of robots need to classify an object in order to operate on it. 
-Through its sensors the single robots can classify an object with a 
-certain accuracy. This opinion can then be shared in a group to reach 
-consensus. If the individual robot'​s opinions differ strongly from the 
-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++ +===== Swarmscope =====
-programming and have a working knowledge of the English language.+
  
-* Contact: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]]Marco DorigoManuele Brambilla, Alexander Scheidler (IRIDIA)+One the main problems in the development of swarm robotics 
 +systems is the difficulty of producing, analyzing and debugging code for 
 +large distributed systemsThe aim of this project is to produce a set of 
 +innovative tools to aid the development of complex swarm robotics 
 +systemsThe produced tools will involve newcreative visualization 
 +methods and medianovel human-robot swarm interaction and effective 
 +debugging tools.
  
-===== Scalable aggregation in swarm robotics without global information or environmental clues =====+Required Skills: Good knowledge of C++ and Qt4
  
-Several studies in biology have shown that group of social insects are able to gather to a particular spotThis process is usually driven by environmental clues such as shadows projected by a shelter ​(cockroachesor 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?+  * Contact: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]] and Carlo Pinciroli ​(IRIDIA
  
-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: The candidates should be acquainted with C++ programming and have working knowledge ​of the English language.+===== Self-organized visual coverage in swarm of robots =====
  
-  * Contact: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]]Marco DorigoEliseo FerranteAli Emre Turgut (IRIDIA)+Systems composed of several inter-connected cameras are already a reality in our everyday livesThe prime application of such systems is video-surveillance,​ but the possibilities off ered by multiple-camera systems can extend to other interesting scenarios, such as environment mapping, 3D shape-reconstruction and object recognitionIn all these scenarios, the problem of finding the right 
 +position of a set of cameras in order to maximize the visual field, or the amount of information available, is not always a simple oneFurthermoresystems consisting of cameras in a fixed position present obvious issues of robustness and flexibility. 
 +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 oneas it introduces a single point of failure and it can suff er from performance issues. 
 +The Swarm Robotics paradigm o ffers a valid approach to the design of a multiple camera system. In this projectwe 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.
  
-===== A comparison ​of decision-making strategies for adaptive foraging in swarm robotics =====+Required skills: The candidate should be acquainted with C/C++ programming and have a 
 +working knowledge ​of the English language.
  
-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 sourcesStudies with ants showed that this mechanism is driven by the perception of stimuli from chemical substances like pheromoneMoreover ants are able to collectively modify their choices if there are changes in the environment,​ that is, if a source becomes better than anotherThese ideas have been a source of inspiration for several algorithms in swarm robotics which solves a similar problem ​(retrieval of objectsby using different types of stimuli such as the encounter rate of objects.+  * Contact: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]] and Alessandro Stranieri ​(IRIDIA)
  
-The goal of this project is to perform a 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.+===== Automatic fitness function definition ​in evolutionary robotics =====
  
-Required skills: The candidates should be acquainted with C++ programming and have working knowledge of the English language.+Evolutionary robotics is fascinating approach to the design of robot controllers that takes inspiration from natural evolution.
  
-  * Contact: [[http://​iridia.ulb.ac.be/~mbiro|Mauro Birattari]]Marco DorigoEliseo Ferrante, Manuele Brambilla (IRIDIA)+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 timeEach robot is characterized by a genotype that defines somehow its behaviorEach robot is evaluated according to a fitness function that measures the ability of the robot to perform the desired taskRobots 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 processgeneration by generationthe 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.
  
-===== Kaleidoscope:​ Creating temporal motion patterns ​in a swarm of robots =====+One of the main open problems ​in evolutionary robotics is that the definition of an appropriate fitness function is very complex, labor-intensive,​ and time-consuming activity that requires the attention ​of an expert researcher.
  
-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 ​limited set of capabilities,​ such as the ability to change body color and to perceive other robots and their  +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 ​desired taskThis automatic method ​will be based on machine learning ​and metaheuristic algorithms. In particularit will draw ideas from the fields ​of reinforcement learning ​and of on-line adaptation of parameters in optimization algorithms.
-colors in a short rangeIndividual controllers are derived from a very simple but powerful mathematical model. The work of the student ​will be to code and analyze robot controllersboth 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.+
  
 +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) ​
  
-  * Contact: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]],​ Marco Dorigo, Carlo Pinciroli (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