New Version 1.2 of FREVO Released

frevo12We 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 features were added to the new release of 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

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

For more information see the following sources:

Scalability in Self-Organizing Systems

One of the properties of self-organizing systems is scalability. It means that system keeps its working capabilities even if we remove some of its components or add more of them. In our reseach, we employ different evolutionary algorithms (EAs) to create a self-organizing system. In particular, algorithms like a simple evolutionary algorithm or a two dimensional cellular EA are used  for adjusting the synaptic weights of an neural controller. The best solutions are identified based on simulations of the target application. Typically, the simulation parameters limit the applicability of the solution – there is no guarantee that an evolved solution is adaptable or scalable to situations not specified in the simulation parameters. On the other hand, there are many examples in nature where solutions could be successfully employed in other contexts. We decided to check how our soccer teams, which consist of evolved neural controllers, can scale.For the FIFA World Cup in Brazil we organized our own tournament between evolved self-organized soccer teams. This is an exciting show – to see how simple agents having only partial information about the environment around them are reaching its goal (score a goal) as a team. Will they be able to play in the same manner if we take the contoller, trained in the simulation with 10 players per team, and increase or decrease the number of players? This question has remained open until today.

In our first scenario, we assume that we invited two soccer teams to show us a fantastic game, but due to some circumstances, only 4 players per teamshow up.
Thus our first experiment can be seen in the video below.
Despite the players being evolved in a context of 11 players on each side, reducing the number of players did not affect the ability of players to show good game.

To check the other extreme, we settled a very dangerous experiment – each team consisting of 40 players! The results were stunning (see video below). These soccer heroes could play as a team even with significantly increased number of players. Unfortunately, they could not play for a long time in this mode: Marco Materazzi headbutted Zinadine Zidane in the chest and shouted “Revenge!”; Luis Suarez bit two players in order to show his perfect teeth; Diego Maradona scored the goal by striking the ball with his hand and this time he was disqualified for this trick. We didn’t care about these incidents since we got the results of our experiment:

Links:

  • Privacy