Tuesday, April 15, 2014

How the body affects the mind - On the effects of robot configuration on evolved behavior

The design of robotic controllers through evolutionary methods requires making a large number of choices about the experimental setup, which are often left to the expertise or naïveté of the experimenter. Although much attention is normally given to the fitness function or the genotype-to-phenotype mapping determining the robot controller, the robot configuration is often selected with little care. Yet, an ill-defined configuration - in terms of the selected subset of the sensory-motor system, or in the pre-processing of the raw sensor data - may be decisive in determining the failure of the evolutionary process.

Different emerged patterns 
simulated with ARGoS
In our paper "On the effects of the robot configuration on evolving coordinated motion behaviors" we studied the effect of different robot configurations on the ability to evolve efficient behaviors for a swarm robotics system. In this domain, the choice of a good configuration is fundamental as even small details can lead to large differences in the group behavior. To demonstrate the importance of the robot configuration, we test different alternatives and measure the group performance on a bi-objective scale.

The results show that different configurations not only have a strong effect on performance, but they also correspond to behaviors with radically different features concerning the organization of the group.

The following video illustrates three basic behaviors that emerged: wavefront, train and flocking:

For more information, see:

I. Fehérvári, V. Trianni, and W. Elmenreich. On the effects of the robot configuration on evolving coordinated motion behaviors. In Proceedings of the IEEE Congress on Evolutionary Computation. IEEE, June 2013.

Wednesday, April 9, 2014

Prof. A. E. Eiben at Lakeside Labs: The Next Big Thing in Artificial Evolution

Professor Àgoston E. Eiben will give an interesting talk at the Lakeside Labs / Alpen-Adria-Universität Klagenfurt on April 10th 2014, 15:00 CET, Room L4.1.114  

This talk presents a vision about the upcoming breakthrough in artificial evolution: animate artefacts that (self-)reproduce in physical spaces. In other words, we witness the “Evolution of Things”, rather than just the evolution of digital objects, leading to a new field of Embodied Artificial Evolution. After presenting this vision some of the technical challenges are elaborated and related to the main algorithmic/technical requirements to the current know-how in evolutionary computing. Finally, Prof. Eiben will speculate about possible applications, their societal impacts, and argue that these developments will radically change our lives.

For those who cannot attend or want to warm up on the topic, we recommend Eiben's TED talk "Evolution at Work":

A.E. Eiben is a professor of Computational Intelligence on the VU University Amsterdam and Visiting Professor in the Department of Electronics of the University of York, UK. He is one of the European early birds of Evolutionary Computing; his first EC paper dates back to 1989 and he co-authored the first comprehensive book on the subject. He has been organizing committee member of practically all major international evolutionary computing conferences and editorial board member of related international journals. He have also coordinated or participated in several EU research projects. Prominent themes in his work include multi-parent recombination methods, evolutionary constraint handling, evolutionary art, artificial life, and evolutionary robotics. Furthermore, he is concerned with methodological issues, especially the design and calibration of evolutionary algorithms (parameter tuning off-line as well as parameter control on-line). Lately he became interested in artificial evolutionary systems that are physically embodied in real time and real space. This goes far beyond conventional evolutionary computing in digital spaces and implies great new opportunities and challenges – see his TEDx talk and a journal paper on the vision, and the The Triangle of Life framework for a possible implementation in robotic systems that can self-reproduce. On the long term, a broad range of possible “incarnations” can emerge and form a radically new way of engineering. Furthermore, they can serve as an apparatus to investigate deep scientific questions about evolution in a new substrate, different from carbon-based life as we know it.

Wednesday, March 5, 2014

Solving the „Tracking Game“

Guest article from Doris A. Behrens

Games taking place in a shared environment are characterized by the fact that the effectiveness of individual decisions heavily depends on the decisions of other players. Our algorithm OPTGAME is able to approximate the evolution of choices to be made if a number of independent decision makers seek to reach individually desirable states. The evolution of states subject to control is described by a system of nonlinear difference equations. We call this a „tracking game“, since is an extension of the linear regulator problem (also known as „tracking problem“) that is well known from LQ optimal control theory.
OPTGAME is a tool that steers the control and state paths towards desired outcomes. It is novel in a way that it works for game theoretic systems with nonlinear constraints. It searches for equilibrium solutions by iteratively applying a sequence of local linearization and optimization over the entire planning horizon. The tool yields three types of non-cooperative equilibrium solutions (open-loop Nash equilibrium, feedback Nash equilibrium, feedback Stackelberg equilibrium) plus one cooperative solution (Pareto-optimal strategy).
An example for such a game could be the decision-making within a monetary union such as the European Monetary Union (EMU). In this game all but one player represent countries with intentions for economic growth, employment and limited budget deficit and one player represents the European Central Bank, aiming solely at price stability. Besides trade-offs between state variables, for example the well-known trade-off between unemployment and price stability (see Phillips curve), there are strong economic interdependencies due to international trade.
European Monetary Union
For instance, if a single country aims at economic growth, one option could be to increase the demand for goods and services from the public sector. This increases production in response to demand, which in turn increases incomes. However, within an open economy the future success strongly depends on the situation and behavior of the other member countries. In order to find a solution for this problem it is necessary to estimate the countries’ individual parameters as well as the degree of economic interdependencies (like trade) between countries.
Such models, in order to be accurate are inherently nonlinear, which cannot be solved analytically by a linear model such as the LQ game. In our work we apply OPTGAME to a monetary union macroeconomic model based on the nonlinear MUMOD1 model. In this model, there are basically two groups of countries, one economically stronger than the other, all experiencing a brief period of recession.
Doris A. Behrens is a senior re-
searcher working on optimization
in techno-socio-economic systems
at the Alpen-Adria-Universität
Without policy intervention all countries would experience a deep recession and an enormous increase in public debt. By applying OPTGAME for different solution concepts we learn that macroeconomic properties like public debt, economic growth, inflation, etc. can be significantly improved with system-aware control actions of players.

The OPTGAME tool is available as MATLAB implementation upon request (Contact Doris A. Behrens).


Doris A. Behrens, Reinhard Neck, Approximating Solutions for Nonlinear Dynamic Tracking Games, Computational Economics, Springer, February 2014. DOI: 10.1007/s10614-014-9420-4

Reinhard Neck, Doris A. Behrens, A macroeconomic policy game for a monetary union with adaptive expectations. Atlantic Economic Journal, 37(4), 335–349, 2009. DOI: 10.1007/s11293-009-9186-6f

Saturday, November 30, 2013

Advent Programming Contest 2013

An Advent calendar is a special calendar used to count or celebrate the days in anticipation of Christmas. Advent calendars typically begin on December 1 and provide a window to open until December 24. Usually they have windows, which you can open each day containing some chocolate or other stuff. But what is better to kill some time until Christmas, Hanukkah, Yule, Kwanzaa, Diwali, Boxing Day, etc. than an Advent calendar giving you a programming problem every day?

The Advent Programming Contest 2013, organized by the IEEE Student Branch Klagenfurt will provide a new problem every day from December 1st to December 24th. On Saturdays and Sundays, new problems will appear at 12:00 Central European Time, on workdays at 18:00 CET. You can submit solutions any day until the contest ends on December 26. You can choose to use C, C++, Java, Python or Perl as programming language. The programming tasks can be solved with short programs (typically less than 100 lines of code). Until a solution is correct you can submit your program as often as you want (but please don't spam our server). Your score depends on the number of correct solutions and the time and trials you needed to solve the problem. Winners will be announced after closing of the contest.

The event is open to everyone. If you want to participate, please register at http://mooshak.nes.aau.at/ When you register please indicate if you bleong to the group University, Pupils or other.
This is an individuals competition, not a team contest - be fair!
You can also join the contest after 1st December, Registration will be still possible until December 24.

See also the results form last years Advent Programming contest.

Thursday, October 10, 2013

Interactive web resources on Self-Organizing Systems

WATOR Predator-Prey Simulation

WATOR is a simulation of the interaction over time of predator and prey in a small rectangular area
Language: Java (runs in Browser)

Fish School and Predator

This is a simulation of a fish school, where each fish tries to align to its comrades, forming a fish swarm after some time.

Language: Scratch (runs in Browser via Adobe Flash)

Ant Simulator

Simulation of virtual ants looking for food.
Language: Java (runs in Browser)

Conway's Game of Life

Interactive cellular automata simulation.
 Language: Java (runs in Browser)

Foxes and Rabbits Predator-Prey System

Simulation of a small ecosystem involving a fast-breedin prey (rabbits) and predators (foxes) feeding on them.
Language: Scratch (runs in Browser via Adobe Flash)

Slime Mold Simulation

Explanation: http://ccl.northwestern.edu/netlogo/models/Slime

Language: Netlogo (runs in Browser via Java)


Explanation: http://ccl.northwestern.edu/netlogo/models/Fireflies
Language: Netlogo (runs in Browser via Java)


Explanation: http://ccl.northwestern.edu/netlogo/models/Segregation
Language: Netlogo (runs in Browser via Java)

Twitter Network Analysis

Interactiv webpage for analyzing trends on Twitter. 
Language: Javascript

Monday, September 16, 2013

The Complex Systems Community Explorer

If you are working in the field of complex systems, you face network analysis and graphical data representation. So why not use these features to organize your research network and to identify possible collaborators?
The complex systems community explorer developed at ISC-PIF by Julian Bilke and David Chavalarias is doing exactly this. In particular, it visualizes data are taken from the complex systems registry directory. This directory is an open directory maintained by several complex systems organisations and coordinated by the Complex Systems Society. After registering your data and interests, you can explore other scholars graphically. Links symbolize how semantically close two researchers are. The more shared keywords match, the stronger the link.

Monday, September 9, 2013

FREVO 1.0 released

We proudly announce the new release 1.0 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 is decomposing the task into problem definition, solution representation and the optimization method. These components allow to experiment with different combinations of algorithms and neural networks for different tasks.

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.

Quick start:
  1. download the newest version at frevo.sourceforge.net 
  2. unpack the ZIP file
  3. unless you have it already on your system, install Java
  4. execute the createscrips.jar ("java -jar  createscrips.jar")
  5. you can now run FREVO using the script named launch_Frevo

...or have a look at the following video explaining the basic steps to get started with FREVO:

For more information see the following sources: