Mission Statement

What we want to achieve

The goal of this research activity is to elaborate basic concepts for a straightforward generic design process for creating self-organizing solutions, consisting of the stages modeling, simulation and iteration, validation, re-iteration or deployment. A way to achieve this is to evolve control systems as distributed cyberbrains controlling the agents of a complex system.

Interested?

Cooperations and work opportunities

We are currently searching for people from different application domains in order to test the practical applicability of our approach. So, if you have an interesting concept or a demonstrator application for our approach, please contact us!

Find out more about our tool at:

http://frevo.sourceforge.net

Follow Us

Visit us and discuss with us

Lakeside Labs is offering possibilities for fostering cooperations via mutual visits of experts between academic institutions. See the the Lakeside Labs page for more information on visiting researchers:

http://www.lakeside-labs.com/

 
Project news

FREVO 1.2 released

FREVO 1.2 - new version of the Framework for Evolutionary DesignWe proudly announce the new release 1.2 of FREVO (FRamework for EVOlutionary design). FREVO helps to reduce the time to implement, set up and run an evolutionary algorithm to evolve an agent's behavior as a solution to a particular control problem. FREVO supports decomposing the task into problem definition, solution representation and the optimization method. The componentwise separation allows to experiment with different combinations of algorithms and neural networks for different tasks.

The following components were added to FREVO:

  • HEMS  a simulation for modeling trading behavior of loads and local energy generators.
  • SinglePong  a simulation of the one player pong game where several paddles can cooperate in order to achieve better performance.
  • Pong  a simulation of the pong game where two teams can play against each other.

Quick start:
  • download the newest version at frevo.sourceforge.net 
  • unpack the ZIP file
  • unless you have it already on your system, install Java 
  • execute the createscrips.jar ("java -jar createscrips.jar") 
  • you can now run FREVO using the script named launch_Frevo 
For more information see the following sources:

FREVO 1.0 released

The new release 1.0 of FREVO (FRamework for EVOlutionary design) is available at http://frevo.sourceforge.net. FREVO is an open-source framework easing the implementation, set up and running of optimization problems, especially for the design of multi-agent systems. FREVO is mostly written in Java and took an estimated 12 years of effort (COCOMO model). The new version, FREVO 1.0, comes with 26 different components and an improved user interface which allows you to pause an evolution and check the intermediate results. At http://frevo.sourceforge.net you can also find tutorials on advanced projects with FREVO. If you are doing research in engineering complex systems, this tool might be useful for your thesis ;-)

See also:

Video: How to design self-organizing systems

How to design self-organizing systems? The answer is around us in nature, in other words - Evolution! Evolutionary methods have evolved a big deal of self-organizing systems around us - these are working well and in a robust way in spite of noise and changing conditions. In the DEMESOS project we apply the evolutionary approach to the design of complex technical systems. The video gives a short introduction to the topic and displays some application scenarios.

A short video introduction to FREVO

Evolution is known to be a slow process. In earth's history, evolution took millions or even billions of years to achieve something. Computer simulations of evolutionary processes are somewhat faster, but still can take weeks of simulation time on a cluster to run an evolutionary algorithm.

We challenge this!

Our software FREVO (FRamework for EVOlutionary design) is aimed to reduce the time to implement, set up and run an evolutionary algorithm to evolve an agent's behavior as a solution to a particular control problem. FREVO is decomposing the task into problem definition, solution representation and the optimization method, in order to ... let's stop talking! I will show you in just 6 minutes!

As demonstrated in the video below, 6 minutes are sufficient to download the framework, install it, set up a simulation, evolve a neural network controller for an inverted pendulum problem and check the results! See for yourself!



The tool is available at http://frevo.sourceforge.com
There are also tutorials on advanced projects with FREVO. If you are doing research in engineering complex systems, this tool might be useful for your thesis ;-)
If FREVO is useful for you, please cite this paper:

A. Sobe, I. Fehérvári, and W. Elmenreich. Frevo: A tool for evolving and evaluating self-organizing systems. In Proceedings of the 1st International Workshop on Evaluation for Self-Adaptive and Self-Organizing Systems, Lyon, France, September 2012.

FREVO goes Sourceforge

FREVO, the framework for evolutionary design, moved in at SourceForge's. The SourceForge repository hosts more than 300,000 projects and provides wikis, metrics and analysis for open source projects. FREVO is an open-source framework developed in Java to help engineers and scientists in evolutionary design or optimization tasks. The major feature of FREVO is the componentwise decomposition and separation of the key building blocks for each optimization tasks. We identify these as the problem definition, solution representation and the optimization method. This structure enables the components to be designed separately allowing the user to easily swap and evaluate different configurations and methods or to connect an external simulation tool.

Best season greetings from the MESON team




Complexity on the workbench

István Fehérvári explains complex systems and discusses how to use them in technical engineering. He also explains our tool following this approach, Frevo.


Why self-organization?

A short animation about the problems of complex systems and why we should look for a new paradigm in system design:


New version of FREVO released

FREVO, our framework for evolutionary design, got a new look. The user interface has been adapted to allow for a more comprehensive handling of your simulations. Below the hood we also optimized several components and provided new problems. Feel free to test the new program - it is open source!

e-puck Robots

We got our e-puck robots today. An e-puck is a small differential-wheeled robot. The openness of the design makes the e-puck especially interesting for academic use. The hardware and software is under an open source license which allows for modifictaion and redistribution of the design. Besides being cute, e-pucks offer a lot of sensory functions and allow us to do hands-on experiments on collaborative robot algorithms.

Open PhD Position

We are looking for a PhD student to do research in the MESON project. We are a highly motivated international team of researchers situated at the Lakeside Science & Technology Park/University of Klagenfurt, Austria. We offer best work conditions, a beautiful campus with a pleasant, intercultural work environment, and a highly competitive salary.

Potential candidates should have a master's degree in computer science, computer engineering, mathematics, physics or related studies and should have skills in creative problem solving, Java programming, the use of the English language and knowledge in at least one of the following subjects:

  • Complex systems, or
  • Machine Learning, or
  • Multi-agent systems, or
  • Robotics

Research will be conducted at the Institute of Networked and Embedded Systems under the supervision of Lakeside Labs.

Women are especially encouraged to apply. Please mail applications containing a letter of interest, curriculum vitae, copies of academic certificates and courses, list of publications, and contact details of two references in a single PDF file to applications@lakeside-labs.com by deadline of Juli 31st, 2011.

iBraitenberg

A Braitenberg vehicle is a simple robot that is able to show interesting complex behavior. The main feature of a Braitenberg vehicle is that it lacks a complex controller but instead directly connects the sensors' output to some actuators' input. That way, a two-wheeled vehicle can, e.g. be told to approach or to flee from an object detected by the sensors. Dominik Egarter has build a nice Braitenberg vehicle using Lego mindstorms. To be exact, it is a Braitenberg emulator contained in the Lego Mindtstorms controller brick. The interesting feature is that the vehicle can be configured via a nice iPhone app. The iBraitenberg app is a useful demonstrator to introduce robotics to pupils. We presented the work at the Lange Nacht der Forschung, an open lab day at the university, where the project attracted a lot of people, among them several kids.


→ Get the Sourcecode for the iBraitenberg application

Evolving a cellular automaton with neural controllers

In an experiment, we extended the model of CA with a neural network that controls the cell behavior according to its internal state. The model is used to evolve an Artificial Neural Network controlling the cell behavior in a way a previously defined reference pattern emerges by interaction of the cells. Each cell is controlled by an instance of the same ANN. The ANNs have connections to neighbors and one output of each ANN determines cell color. At the beginning of each simulation, all cells had the same state and commenced their operation at the same time - this is comparable with a number of people cooperatively drawing an image in the dark. We used our tool FREVO for evolving the neural network in a way that it reproduces the given pattern. The best results have been achieved when evolving simple structures with large areas of a single color as they are present for example in flags. For more complex images, however, the current setup causes the evolutionary algorithm to get stuck at a suboptimal stage like depicted in the approach to learn the image of Leonardo da Vinci's Mona Lisa painting. There is, however, a large space of possibilities for variations of the model which gives rise to future work.

Self-organized Positioning of Mobile Relays

The Fifth International Workshop on Self-Organizing Systems (IWSOS 2011) in Karlsruhe was a great success. Helmut Lindner won the best student poster award with his work on self-organizing mobile drones.
In catastrophic scenarios, wireless communication is an important means for coordinating rescue and saving operations. However, in such situations, the standard communication infrastructure is often not available. One possibility to solve this problem would be the usage of helicopter drones as flying relay stations. For the positioning of the drones, we would have to cope with disturbances of wireless media (interference from other nets, signal fading, etc.), an unknown landscape, as well as the need to add or remove relay nodes as they need to recharge.
Helmut Lindner presented a evolution-based algorithm for a self-organizing positioning of the drones. The ground stations are connected by multi-hop communication over drone relays. For each possible route a “flow” value Phi is calculated, which serves as a local fitness function for each drone. The drones are moving around in order to increase their Phi value. A movement that worsened the Phi value is reversed, while for an improvement, the current direction is kept. This way, the drones execute a distributed (1+1) evolution strategy.

Mozart meets Darwin

Mozart meets Darwin is a case study where we try to evolve a piece of music, a simple melody. To evolve something, we need a model of the canditates, a method to mutate a candidate (that is apply some random perturbations), a method to recombine two parent candidates into similar children canditates, and a way to assess the fitness of a result. Using the music notes as DNA, we came up with solutions for mutation and recombination. But the assessment of the quality cannot be done by the machine - that is where we need you to indicate which piece of music is better than the other.

Click on the flash application below to contribute to the experiment!


Get Adobe Flash player

See also:

Self-organizing algorithm for video distribution networks

The way how users consume videos has changed with the availability of large repositories with a high number of more or less related videos. Many users are only interested in tiny fractions of a video and not even necessarily in the original temporal order. Moreover, they might wish to dynamically compose portions of di erent videos into one presentation.

For example, take a video recording of a ski-jumping competition. Some users might be interested in watching it sequentially. A trainer might be interested in studying the jumping-off technique of athletes in parallel. Another user might be interested in the performance of several jumpers from one country. In order to keep up with this emergent access patterns, we invented a self-organizing video delivery network that is based on artificial hormones which are spread throughout the network when a particular video is requested. The hormone spreading is affected by the bandwidth and delay parameters of the network edges, thus indirectly help in searching for the (currently) best path to transmit a video.

The interactions between nodes like spreading/evaporating hormone or moving a video according to the neighbor with highest hormone gradient are all local within a node's neighborhood. Still, the system is able to guide the overall transportation and placement of units in the system up to near optimum.

A. Sobe, W. Elmenreich, and L. Böszörmenyi. Towards a Self-Organizing Replication Model for Non-Sequential Media Access ACM Multimedia 2010 Workshop - Social, Adaptive and Personalized Multimedia Interaction and Access, SAPMIA 2010

→ Comment this article at demesos.blogspot.com!

→ Get the simulation source code!

Robot soccer model available for download

The simulated robot soccer module for the FREVO tool can be downloaded from the FREVO webpage under 'downloads'. The soccer simulation was used to evolve coordinated behavior of simulated robot soccer players. After a few hundred generations, the players of a team adopt a useful behavior. The used approach did not include a trainer telling them how to play or specifying predefined roles for the players such as being a defender, midfielder or striker. Still, during a game, different behavior of the players emerges. Thus, similar to biological systems, the entities take up different roles in a self-organizing way. Since the agents are not predefined, such systems have a high robustness against failure of come of the entities.

→ Learn more at Self-Organizing Networked Systems

→ Or read the paper at Journal of Robotics.

A tool for engineering self-organizing systems

A main problem in engineering self-organizing systems is to find the respective behavior for the interaction of the components so that the intented behavior emerges. We address this problem in the DEMESOS project. As an outcome of the project, we have just released a first version of our Framework for Evolutionary Design (FREVO). The tool is very generic and can be applied to find a (possibly distributed) solution (i.e. a configuration for a controller) for a defined problem (i.e. a simulation giving a fitness function) using an optimization algorithm. An example of its use was to breed the neural network controllers for an agent-based robot soccer team (see http://wwwextra-nes.uni-klu.ac.at/~welmenre/papers/fehervari-2009-evolutionary-methods-in-self-organizing-system-design.pdf).

FREVO is released under the GPL open source license. The framework, some sample components, and a tutorial can be accessed at the project webpage http://frevo.sourceforge.net.

A Self-organizing Robot Soccer Team

Two evolved teams playing soccer

In a case study, we have evolved the control behavior for simulated soccer robots to cooperatively win soccer games. After a few hundred generations, the players of a team adopt a useful behavior. In particular, the players were not evolved to a priori defined roles, like defender, midfielder or striker, but all have an instance of the same neural network controller. Still, during a game, different behavior of the players emerge based on their situations. Thus, similar to biological systems, the entities specify to different roles in a self-organizing way. Since the entities are identical, the system has a high robustness against failure of come of the entities.

At the IWSOS in Zurich

Wilfried and István went to Zurich, Switzerland to attend IWSOS 2009, the Fourth International Workshop on Self-Organizing Systems, which was held in December 9-11 2009. Wilfried gave a talk on "A Survey of Models and Methods for Self-Organizing Networked Systems", which was joint work together with Raissa D'Souza, Christian Bettstetter, and Hermann de Meer. István presented a poster on "Towards evolving cooperative behavior with neural controllers" were he researched the necessary initial conditions to evolve cooperative behavior.

Get the paper:

W. Elmenreich, R. D'Souza, C. Bettstetter, and H. de Meer. A survey of models and design methods for self-organizing networked systems. In Proceedings of the Fourth International Workshop on Self-Organizing Systems, volume LNCS 5918, pages 37–49. Springer Verlag, 2009.