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 [2010/03/19 16:33]
mbiro
teaching:mfe:ia [2011/03/18 11:44]
bersini [Mise au point d’un système automatique de génération de code à partir d’un diagramme d’état-transition]
Line 1: Line 1:
-====== MFE 2010-2011 : Intelligence Artificielle ======+====== MFE 2011-2012 : Intelligence Artificielle ======
  
 ===== Introduction ===== ===== Introduction =====
Line 15: Line 15:
 to the implementation of this library will be studied. The to the implementation of this library will be studied. The
 library will also be tested in terms of robustness and performance library will also be tested in terms of robustness and performance
-as compared with the previous existing solutions.+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
  
  
Line 24: Line 24:
 Le MFE consistera en un développement orienté objet d'une Le MFE consistera en un développement orienté objet d'une
 cellule biologique minimale avec son métabolisme chimique interne, un génome cellule biologique minimale avec son métabolisme chimique interne, un génome
-élémentaire et sa membrane. Cette cellule devra être capable+élémentaire et sa membrane. L'​idée est de réaliser le logiciel minimal capable de simuler un organisme vivant. Cette cellule devra être capable
 de croître et de spontanément se dupliquer. Il fera suite de croître et de spontanément se dupliquer. Il fera suite
-à un MFE déjà ​réalisé il y a deux ans.+à une succession de MFE déjà ​réalisés ces dernières années.
  
  
Line 68: Line 68:
 ===== Etude de la topologie de réseaux de musiciens de Jazz ===== ===== Etude de la topologie de réseaux de musiciens de Jazz =====
  
-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 un réseau de musiciens de Jazz connectant deux musiciens dès lors qu’ils ont joué sur un même disque. Le MFE consistera en un développement logiciel ayant pour but la réalisation automatique de ces réseaux de musiciens à partir de documentations sur les disques téléchargés automatiquement de sites de vente en ligne. ​+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 un réseau de musiciens de Jazz connectant deux musiciens dès lors qu’ils ont joué sur un même disque ​ou participé à un même concert. Le MFE consistera en un développement logiciel ayant pour but la réalisation automatique de ces réseaux de musiciens à partir de documentations sur les disques ​ou les concerts ​téléchargés automatiquement de sites de vente en ligne. ​Le mémorant devra réaliser un logiciel capable d'​extraire ces informations sur le Web et ensuite exploitera un ensemble d'​outils existant lui permettant d'​étudier la topologie du réseau ainsi obtenue.  ​
  
   * 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 83: Line 83:
 ===== Mise au point d’un système automatique de génération de code à partir d’un diagramme d’état-transition ===== ===== Mise au point d’un système automatique de génération de code à partir 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. Il est par exemple très largement mis à l’œuvre dans la modélisation des procédures parlementaires (l’évolution des décrets de loi). C’est le cas dans plusieurs parlements belges avec lesquels IRIDIA collabore. Le MFE étudiera la possibilité d’une génération automatique de code fidèle à ces diagrammes et tout ce qui les compose.+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. Il est par exemple très largement mis à l’œuvre dans la modélisation des procédures parlementaires (l’évolution des décrets de loi). C’est le cas dans plusieurs parlements belges avec lesquels IRIDIA collabore. Le MFE étudiera la possibilité d’une génération automatique de code fidèle à ces diagrammes et tout ce qui les compose. Le code généré respectera le design pattern d'​état associant une classe à chaque état possible. Des problèmes tels les états compositionnels ou les transitions s'​effectuant simultanément seront étudiés
  
   * 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 121: Line 121:
     * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]] ​     * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]] ​
     * [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari (IRIDIA)]] ​     * [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari (IRIDIA)]] ​
-    * Manuel López-Ibáñez (IRIDIA)+    * [[http://​iridia.ulb.ac.be/​~manuel|Manuel López-Ibáñez (IRIDIA)]]
  
  
Line 136: Line 136:
     * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]] ​     * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]] ​
     * [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari (IRIDIA)]] ​     * [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari (IRIDIA)]] ​
-    * Manuel López-Ibáñez (IRIDIA)+    * [[http://​iridia.ulb.ac.be/​~manuel|Manuel López-Ibáñez (IRIDIA)]]
        
  
Line 151: Line 151:
   * Contacts :    * Contacts : 
     * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]] ​     * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]] ​
-    * Manuel López-Ibáñez (IRIDIA)+    * [[http://​iridia.ulb.ac.be/​~manuel|Manuel López-Ibáñez (IRIDIA)]] 
 + 
 + 
 +===== Stochastic local search algorithms for weighted maximum clique problems. ====== 
 + 
 +The Maximum Clique 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.  
 + 
 +Among the possible generalisations of the problem there is the Vertex Weighted and Edge Weighted Maximum Clique which asks to find the clique of maximum weight. Being generalisations they are also NP-hard. The goal of the project is to devise heuristic algorithms or adapt existing algorithms of the Maximum Clique for weighted version. 
 + 
 +Required skills: good knowledge of C or C++ programming.  
 + 
 + 
 +  * Contacts :  
 +    * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]]  
 +    * [[http://​iridia.ulb.ac.be/​~fmascia|Franco Mascia (IRIDIA)]] ​   
  
 /* /*
Line 180: Line 197:
 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 environments. The 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. 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 environments. The 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.
  
 +Required skills: The candidates should be acquainted with C/C++ programming and have a working knowledge of the English language.
  
-===== KaleidoscopeCreating temporal motion patterns in a swarm of robots =====+  * Contacts[[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]],​ Marco Dorigo, Arne Brutschy, Giovanni Pini (IRIDIA)
  
-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  +===== Studying collaboration between flying robots ​and ground-based 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.+
  
 +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 a 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.
  
-  * Contact: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]]Marco DorigoCarlo Pinciroli (IRIDIA) ​+A possible candidate student must be very motivatedready to invest extra hours into the thesisand have a good grasp of C++.  The working ​ language is English.
  
 +  * Contacts: [[http://​iridia.ulb.ac.be/​~mbiro|Mauro Birattari]],​ Marco Dorigo, Nithin Mathews (IRIDIA)
  
 +===== Adaptive collective alignment with a swarm of e-puck robots =====
  
- +Flocking is a fascinating behavior that birds are able to achieve without a leader or a common frame of reference. Moreover, in some cases, the group goes in the correct direction even if only a small proportion of the group knows the goal direction. This allows birds to avoid a predator even if only a subset of the flock sees it. We 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.
  
-===== Evolution ​of Cooperation =====+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.
  
-Often the selfish and strong are believed to be favored by natural selection, even though cooperative ​and fair interactions thrive at all levels ​of organization in living systems. This project tackles this paradox in the context of Evolutionary Game Theory (EGT), having kin-selection,​ direct and indirect reciprocity as conceptual starting points. Contrary to what is usual, models will also take into account the intricate ties of modern social networks and its topological evolution+Required skills: The candidates should ​be acquainted with C/C++ programming ​and have a working knowledge ​of the English language.
  
-In spite of its relevance, understanding the evolution of cooperation remains one of the most fundamental challenges to date, tackled by scientists from fields as diverse as anthropology,​ biology, sociology, ecology, economics, psychology, political science, mathematics,​ physics, etc., who often adopt EGT as a common mathematical framework. Hence, students who choose this proposal should be strongly interested in interdisciplinary research. 
  
-Required skillsThe candidates should have good mathematical skills, 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)
  
-  * Contact : [[http://​iridia.ulb.ac.be/​~fsantos|Francisco C. Santos (IRIDIA)]] ​+===== Scalable aggregation in swarm robotics without global information or environmental clues =====
  
 +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?
  
 +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 a working knowledge of the English language. 
-\\ + 
-The project is in collaboration ​with [[http://www.ciul.ul.pt/~pacheco/|Jorge M. Pacheco ​(University ​of Lisbon)]], [[http://como.vub.ac.be/doku.php?​id=members:​sven_van_segbroeck|Sven Van Segbroeck ​(IRIDIA and COMOVUB)]] ​and [[http://switch.vub.ac.be/~tlenaert/|Tom Lenaerts (SWITCH, VUB)]].+  * 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 (shortestpath 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 environmentthat 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. 
 + 
 +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. 
 + 
 +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, Manuele Brambilla ​(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 complexswarm-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  
 +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. 
 + 
 + 
 +  * Contact: ​[[http://iridia.ulb.ac.be/~mbiro|Mauro Birattari]], Marco Dorigo, Carlo Pinciroli (IRIDIA)  
 + 
 + 
 + 
 + 
  
  
Line 310: Line 353:
     * [[frank@business-insight.com|Frank Vanden Berghen (Business-Insight) ]]     * [[frank@business-insight.com|Frank Vanden Berghen (Business-Insight) ]]
     * [[http://​code.ulb.ac.be/​iridia.people.php?​id=1|Hugues Bersini (IRIDIA)]] ​     * [[http://​code.ulb.ac.be/​iridia.people.php?​id=1|Hugues Bersini (IRIDIA)]] ​
 + 
 +
 +===== Comparison of fast heuristics for the longest common subsequence problem =====
 +
 +The [[http://​en.wikipedia.org/​wiki/​Longest_common_subsequence|longest common subsequence (LCS) problem]] has important applications in Computational Biology. Several heuristic methods have been proposed to obtain approximate solutions. These methods require different computation time and obtain solutions of varied quality. In this project, the student will learn several methods that have been proposed in the literature to tackle a difficult optimization problem, and compare them in terms of computation time and quality of the resulting solutions. The final goal is to propose appropriate combinations of existing methods that solve diverse instances of the LCS problem. ​
 +
 +  * Contacts : 
 +    * [[http://​iridia.ulb.ac.be/​~manuel|Manuel López-Ibáñez (IRIDIA)]]
 +    * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]] ​
 +
 +
 +===== Applications of the Multi-objective ACO framework =====
 +
 +We have recently developed a software framework of Ant Colony Optimization algorithms for multi-objective optimization problems. This framework has only been applied to a few problems. The goal of this project would be to extend this framework to other problems and compare its results with the methods proposed in the literature. The student will learn to solve multi-objective optimization problems with ACO algorithms, automatic configuration of optimization algorithms, and analysis and comparison of optimization algorithms for multi-objective problems.
 +
 +  * Contacts : 
 +    * [[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/​~mdorigo|Marco Dorigo (IRIDIA)]] ​
 +
 +
 +===== A graphical interface for the optimisation of Water Distribution Networks =====
 +
 +The [[http://​iridia.ulb.ac.be/​~manuel/​doc/​cec2005-presentation.pdf|optimization of the operations of Water Distribution Networks]] may save important amounts of energy and its associated costs, and, therefore, it is an important problem in practice. There are [[http://​www.epa.gov/​nrmrl/​wswrd/​dw/​epanet.html|graphical tools and simulators]] available. In addition, several optimization methods based on [[http://​iridia.ulb.ac.be/​~manuel/​doc/​cec2005.pdf|evolutionary algorithms]] and [[http://​dx.doi.org/​10.1061/​(ASCE)0733-9496(2008)134:​4(337)|ant colony optimization]] have been proposed in the literature. The goal of this project is to integrate the optimization algorithms into a graphical environment that can be used by water engineers and operators. No knowledge about water distribution networks is necessary. The optimisation algorithms and toolkit libraries for handling water distribution networks will be available to the student.
 +
 +  * Contacts : 
 +    * [[http://​iridia.ulb.ac.be/​~manuel|Manuel López-Ibáñez (IRIDIA)]]
 +    * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]] ​
 +
 +
 +===== Automatic fine-tuning of an evolutionary multi-objective framework =====
 +
 +The goal of this project is to explore the possibilities of using automatic configuration tools for fine-tuning an existing [[http://​paradiseo.gforge.inria.fr/​index.php?​n=Paradiseo.MOEO|evolutionary multi-objective framework]]. The student will learn about automatic configuration tools, evolutionary algorithms for multi-objective optimization problems and analysis and comparison of multi-objective algorithms.
 +
 +  * Contacts : 
 +    * [[http://​iridia.ulb.ac.be/​~manuel|Manuel López-Ibáñez (IRIDIA)]]
 +    * [[http://​iridia.ulb.ac.be/​~stuetzle|Thomas Stuetzle (IRIDIA)]] ​
 +
 + 
 
teaching/mfe/ia.txt · Last modified: 2024/07/01 16:15 by stuetzle