About jjmerelo

Servidor de ustedes

How good are different languages at runnig evolutionary algorithms?

As part of the EvoStar conference, which took place last week, we presented the poster Benchmarking Languages for Evolutionary Algorithms, where, with help from many friends in Open Science fashion, we tested several a bunch of compiled and scripting languages on several common evolutionary operations: crossover, mutation and OneMax.

It was presented in poster form, and you had to be there to actually understand it. Since you are not, it’s better if you use this comments (or those at the poster) to inquire about it. Or you can check out the interactive presentation we also did, which in fact includes data and everything in the source.
This work is ongoing, and you are very welcome to participate. Just take a peek at the repo, and do a pull request.


There can be only one: Evolving RTS Bots via joust selection

During EvoStar, our group presented several papers on games, multiobjective optimization and implementation of evolutoinary algorithms. This paper was presented as a full talk at EvoGAMES 2016 in Porto (Portugal). BY: Antonio Fernández Ares, Pablo García-Sánchez, Antonio M. Mora García, Pedro A. Castillo, Juan J. Merelo

Source: There can be only one: Evolving RTS Bots via joust selection

Ayúdanos a hacer un poquito de ciencia / Help us to make a bit of Science

Se puede ayudar en un experimento simplemente visitando una página web. ¿Nos ayudas?

Víctor M. Rivas Santos

/cc @geneura – http://vrivas.es/dcai16
(English version)

¿Me echas una mano con unos experimentos símplemente accediendo a la web http://vrivas.es/dcai16?

Como muchos sabéis, últimamente me dedico a la ejecución de algoritmos evolutivos y redes neuronales desde navegadores web. En relación a esta investigación, me gustaría enviar un trabajo a un congreso que habrá en Sevilla este año, llamado DCAI’2016.

Ya tengo el trabajo bastante avanzado, pero me gustaría poder tener más resultados; así que, si no te importa, accede a la web http://vrivas.es/dcai16 desde donde intentamos predecir valores de una serie temporal de temática económica.

Ten en cuenta que:

  • Puedes acceder a la página tantas veces como desees, y también abandonarla en el momento que decidas.
  • El programa que se ejecutará no instalará nada en tu ordenador, móvil o tablet, ni siquiera cookies.
  • Los algoritmos evolutivos suelen ser lentos, por eso, no te preocupes si tarda en…

View original post 193 more words

A wonderful visit of Granada, a fruitful collaboration and the most welcoming GeNeura team !

Zeineb Chelly was our guest in Granada last February. Here’s her account of what happened.


Please, let me introduce myself. My name is Zeineb Chelly. I am a lecturer at the department of Computer Science, Institut supèrieur de Gestion de Tunis, Tunisia, and a member of the Laboratory of Operations Research, Decision and Control of Processes (LARODEC).

I have received my Ph.D. from the University of Tunis in 2014; dealing with new evolutionary algorithms under imprecision and uncertainty.  My research papers have been published in refereed international conferences and journals.

The story began when I met Pr. Juan Julián Merelo Guervós ! and for short, we call him JJ :) I met him in several conferences and had talks with him about how we can fuse our works together in order to solve specific research problems. When the time came, the Granada Excellence Network of Innovation Laboratories (GENIL) called for funded projects. GENIL is a high-competitive project of the University of Granada (UGR) funded by the…

View original post 592 more words

Dealing with noise in evolutionary algorithms

For evolutionary algorithms, noise is something that happens when you cannot get a fitness function to return the same value twice in a row. It is a mainstay of games, but it can be found also in industrial processes and in things like neural nets. We have been working despite it many times usually by doing several evaluations and averaging, but this is not really the best way of dealing with it. Since the shape of noise is not known in advance, in the paper presented at the ECTA 2014 conference we proposed a new method for dealing with it: using statistically sound comparisons, namely Wilcoxon. The paper is entitled “Studying and Tackling Noisy Fitness in Evolutionary Design of Game Characters”, and here’s the abstract.

In most computer games as in life, the outcome of a match is uncertain due to several reasons: the characters or assets appear in different initial positions or the response of the player, even if programmed, is not deterministic; different matches will yield different scores. That is a problem when optimizing a game-playing engine: its fitness will be noisy, and if we use an evolutionary algorithm it will have to deal with it. This is not straightforward since there is an inherent uncertainty in the true value of the fitness of an individual, or rather whether one chromosome is better than another, thus making it preferable for selection. Several methods based on implicit or explicit average or changes in the selection of individuals for the next generation have been proposed in the past, but they involve a substantial redesign of the algorithm and the software used to solve the problem. In this paper we propose new methods based on incremental computation (memory-based) or fitness average or, additionally, using statistical tests to impose a partial order on the population; this partial order is considered to assign a fitness value to every individual which can be used straightforwardly in any selection function. Tests using several hard combinatorial optimization problems show that, despite an increased computation time with respect to the other methods, both memory-based methods have a higher success rate than implicit averaging methods that do not use memory; however, there is not a clear advantage in success rate or algorithmic terms of one method over the other

The presentation uses jmpress.js and, besides, is generated randomly every time it is loaded, by adding some Javascript cleverness to the layout. It’s open source and available in GitHub (check out the gh-pages bramch.

Out of CPU cycles and in need to do science? No problem!

After the bad experience of spending money in clusters and grids and then spending more time doing maintenance, hack-proofing and installing stuff than science, maybe it is the time to rethink how massive distributed evolutionary computation should be done. Nowadays there are lots of free or use-based resources that can be tapped for doing volunteer-based evolutionary algorithms. That is way my last keynote and tutorial have dealt with that: the IDC Keynote, Low or No Cost Evolutionary computation, which you can access here in Heroku, puts the money where its mouth is: talking and doing volunteer-based evolutionary computing at the same time. The PPSN tutorial, Low or no cost distributed evolutionary computation, touched on the same topic, only longer and with more enphasis on tools.
So finally it is just a matter of a little Javascript and using free cloud resources and you can have your very own massive distributed experiment. Whose results will be published soon enough.