New research line on µRTS

This new research line was started one year ago together with PhD student Abdessamed Ouessai and professor Mohammed Salem both from the University of Mascara (Algeria).

The objective is focused on the improvemet of the decision process of an autonomous agent for playing a simple Real-Time Strategy Game, named µRTS (microRTS). See an illustrative image below of this game/simulator created by Proffessor Santiago Ontañón mainly for research purposes.

For the moment three papers have been published:

  1. Online Adversarial Planning in μRTS: A Survey. Presented at 2019 International Conference on Theoretical and Applicative Aspects of Computer Science (ICTAACS) on December 2019, and selected as Best paper of the conference.
  2. Improving the Performance of MCTS-Based µRTS Agents Through Move Pruning. Published and presented at IEEE Conference on Games 2020 last August 2020.
  3. Parametric Action Pre-Selection for MCTS in Real-Time Strategy Games. Presented at CoSECiVi 2020 yesterday.

Here you can see the slides and the video presentation of the paper at CoG:

Moreover an agent named USMBot was created and participed in the last µRTS AI Competition, reaching rank 4!!!

The bot can be found in Github

We hope you like it, as usual. :D

Angry Birds meet EAs at EVO* 2019

Last 24 of April we presented the work «Free Form Evolution for Angry Birds Level Generation» at EVOApplications 2019 (EvoGAMES) a conference part of EVO* 2019, held in Leipzig (Germany).

The abstract of the work is:

This paper presents an original approach for building structures that are stable under gravity for the physics-based puzzle game Angry Birds, with the ultimate objective of creating fun and aesthetically pleasing Angry Birds levels with the minimum number of constraints. This approach consists of a search-based procedural level generation method that uses evolutionary algorithms. In order to evaluate the stability of the levels, they are executed in an adaptation of an open source version of the game called Science Birds. In the same way, an open source evolutionary computation framework has been implemented to fit the requirements of the problem. The main challenge has been to design a fitness function that, first, avoids if possible the actual execution of the simulator, which is time consuming, and, then, to take into account the different ways in which a structure is not structurally sound and consider them in different ways to provide a smooth landscape that eventually achieves that soundness. Different representations and operators have been considered and studied. In order to test the method four experiments have been carried out, obtaining a variety of stable structures, which is the first path for the generation of levels that are aesthetically pleasing as well as playable.

@amorag did a short presentation and later ‘defended’ a poster during the reception act. The presentation is a description of the poster:

Actually the poster was selected as the second best of the conference by the attendants. :D

Those interested can found the paper at Springer web: https://link.springer.com/chapter/10.1007/978-3-030-16692-2_9

Enjoy it… and cite us! ;D

EvoGAMES is coming… Check out the CFP

The deadline for submitting your paper to EvoGAMES (and the rest of Evo*) is now set (1 November).

EvoGAMES is a track of the European Conference on the Applications of Evolutionary Computation focused on the applications of bio-inspired algorithms in games.

The areas of interest for the track include, among others:
Computational Intelligence in video games
  – Intelligent avatars and new forms of player interaction
  – Player experience measurement and optimization
  – Procedural content generation
  – Human-like artificial adversaries and emotion modelling
  – Authentic movement, believable multi-agent control
  – Experimental methods for gameplay evaluation
  – Evolutionary testing and debugging of games
  – Adaptive and interactive narrative and cinematography
  – Games related to social, economic, and financial simulations
  – Adaptive educational, serious and/or social games
  – General game intelligence (e.g. general purpose drop-n-play Non-Player Characters, NPCs)
  – Monte-Carlo tree search (MCTS)
  – Affective computing in Games

Important dates are:
– Submission of papers: 1 November 2015
– Notification: 4 January 2015
– Camera-ready: 18 January 2015
– Evo* dates: 30 March – 1 April 2016

This year, the page limit has been increased up to 16 pages, so you could write more and more scientific content. :D

As usual, the accepted submissions will be included in the proceedings of Evo*, published in a volume of the Springer Lecture Notes in Computer Science.

For more info about the conference and the track you can visit the Main site of Evo* 2016.

See you in Porto!

YAPC::Europe 2015: Something dies in your soul when a friend is leaving.

The European Perl conference of this year is over.

2015-09-04-091525

During the week from 31-Aug-2015 to 5-Sep-2015, Granada has been hosting the YAPC::Europe 2015; a Perl conference in which GeNeura Team has been one of the main organizers. Along these days, more than 250 professionals, most of them Perl developers, have been talking, listening, discussing, laughing, singing (at least Larry Wall did it), offering employment opportunities, and sharing drinks and tapas around a single main topic: Perl.

It is never easy to organize a conference, and YAPC has a singularity: is  probably-the-cheapest-international-conference (regarding the prices for delegates) I’ve ever been. Anyone having a talk accepted (except for lightning talks) received a free registration which included all the goodies (bag and T-Shirt, among others), and tickets for pre-conference dinner, lunches and gala dinner. There were also some courses organized under the scope of the conference, but registration was separate. Having all of this in mind, YAPC Europe wouldn’t be possible without the sponsors. For this reason, first of all, let us thank  all the companies and people that have supported this event (you can see all of them at http://act.yapc.eu/ye2015/our_sponsors.html): nothing could have been written about this conference without their generosity.

The venue for YAPC::Europe 2015 has been the Faculty of Sciences of the University of Granada. For this reason, the conference started with the pre-conference dinner, where all of us shared a some bits (in fact, a good amount of) pizzas seated on the grass of the venue’s backyard. Thus, from the very first moment, we realized that YAPC is mainly designed to keep people, the community, in touch. More than sharing knowledge (although it is shared), showing solutions (and they were shown), or talking about “one’s book”, YAPC allows you shaking the hands that wrote the CPAN module that saved your project a few months ago, or seeing the smile of that costumer whose business mainly depends of Perl’s good (unique?) programming features.

During the three days the conference lasted, plenary talks took place both at first and last hours. Thus, the central hours were dedicated to parallel sessions with talk lasting 20 or 50 minutes, with a small gap between them, so that people can move from room to room attending to their favorites talks. It’s rather difficult, if not impossible , to make a summary of all of them, so, both the schedule and list of accepted talks will be available for a long time, just in case anyone is interested.

Last day was probably the big day. Larry Wall was talking about Perl 6… Well, and also about lot of things related to Tolkien’s books and their similarities with Perl 5 and Perl 6. Larry invited us to the party, i.e., the upcoming release of Perl 6, that will be available in Christmas (in fact, this was not the first time he pronounced this sentence… but it’s the first time that he indicates the exact year for those “Christmas”, and is 2015!!!). We’ll never would be able to thank him enough for being with us in Granada, and will never forget him… as well as their hats.

Together with Larry’s talk, probably lightning talks have been the most important discovery in this conference. Far away from extremely, perfectly, and strictly organized and exposed speeches, lightning are 5-minutes length talks that give the opportunity to show new CPAN modules (or also preventing people for spending their time writting modules for solved problems, i.e., CGI.pm ) , your analysis of the use of a given module, the importance of making web analytics… and, most of all, of being in contact with Japanase developers (sorry, fast developers). Lightning talks are dynamic, illustrative, interactive, fun, necessary… essential!!!!

Finally, as this YAPC::Europe was devoted to art and engineering, let us say «good bye» to the attendees with two songs. First one is a typical Andalusian song, that could be translated into “Something dies in your soul when a friend is leaving”. But, as far as I’ve could seen, probably the best song that reflects what programming in Perl means is Joe Cocker’s “With A Little Help From My Friends” (https://www.youtube.com/watch?v=_wG6Cgmgn5U)… Maybe Frodo Baggins and the Fellowship of the Ring would fully agree with me… maybe not.

BTW, YAPC::Europe 2015 is done; so is this entry. (Some other thing I learned in a lightning talk – see http://www.brepettis.com/blog/2009/3/3/the-cult-of-done-manifesto.html)

Evostar 2015 mandatory post

We can never skip the chance to assist the Evostar conference, and aside learn the latest trends in Evolutionary Computation and present our results, we also have a good time with our other colleagues.

This time the conference was held in Copenhagen (Denmark), and because Antonio and me were part of the organization we didn’t have much time to go sightseeing, but we went to Tivoli Gardens and ride the flying chairs (and screamed like babies).

On the scientific part, we presented two papers to EvoGames track, related with our research lines on content generation for videogames and AI optimization. The first paper, How the World Was MADE: Parametrization of Evolved Agent-Based Models for Backstory Generation, presents a study on parametrization of the values that define a virtual world to facilitate the emergence of archetypes, and be able to generate interesting backstories (for videogames, for example). See the poster here:

The poster

Also, as we are commited to open science and open software, you can download the MADE environment from its web. The abstract:

Generating fiction environments for a multi-agent system optimized by genetic algorithms (with some specific requirements related to the desirable plots), presents two main problems: first it is impossible to know in advance the optimal value for the particular designed fitness function, and at the same time, it creates a vast search space for the parameters that it needs. The purpose of this paper is to define a methodology to find the best parameter values for both, the evolutionary algorithm, and the own fictional world configuration. This design includes running, to completion, a world simulation represented as a chromosome, and assigning a fitness to it, thus composing a very complex fitness landscape.
In order to optimize the resources allocated to evolution and to have some guarantees that the final result will be close to the optimum, we systematically analyze a set of possible values of the most relevant parameters, obtaining a set of generic rules. These rules, when applied to the plot requisites, and thus, to the fitness function, will lead to a reduced range of parameter values that will help the storyteller to create optimal worlds with a reduced computation budget.

Evostar 2015 - Copenhagen(That’s me with the IKEA rat plushies I used to describe our system)

Our other paper, It’s Time to Stop: A Comparison of Termination Conditions in the Evolution of Game Bots, describes a methodology to compare different termination conditions in noisy environments such as the RTS games. The abstract:

Evolutionary Algorithms (EAs) are frequently used as a mechanism for the optimization of autonomous agents in games (bots), but knowing when to stop the evolution, when the bots are good enough, is not as easy as it would a priori seem. The first issue is that optimal bots are either unknown (and thus unusable as termination condition) or unreachable. In most EAs trying to find optimal bots fitness is evaluated through game playing. Many times it is found to be noisy, making its use as a termination condition also complicated. A fixed amount of evaluations or, in the case of games, a certain level of victories does not guarantee an optimal result. Thus the main objective of this paper is to test several termination conditions in order to find the one that yields optimal solutions within a restricted amount of time, and that allows researchers to compare different EAs as fairly as possible. To achieve this we will examine several ways of finishing an EA who is finding an optimal bot design process for a particular game, Planet Wars in this case, with the characteristics described above, determining the capabilities of every one of them and, eventually, selecting one for future designs.

Evostar 2015 - Copenhagen(Here’s Antonio presenting the paper)

You can see the rest of the Evostar photos in their flickr account.

Aplicación de Programación Genética para la generación de bots del RTS Planet Wars en CoSECiVi 2014

Este trabajo se publicó dentro del Primer Congreso de la Sociedad Española para las Ciencias del Videojuego (CoSECIVI), que se celebró en conjunción con el Gamelab 2014 en Barcelona.

En él se presentó el artículo titulado «Designing Competitive Bots for a Real Time Strategy Game using Genetic Programming», cuyo resumen (en inglés) es:

The design of the Artificial Intelligence (AI) engine for an autonomous agent (bot) in a game is always a difficult task mainly done by an expert human player, who has to transform his/her knowledge into a behavioural engine. This paper presents an approach for conducting this task by means of Genetic Programming (GP) application. This algorithm is applied to design decision trees to be used as bot’s AI in 1 vs 1 battles inside the RTS game Planet Wars. Using this method it is possible to create rule-based systems defining decisions and actions, in an automatic way, completely different from a human designer doing them from scratch. These rules will be optimised along the algorithm run, considering the bot’s performance during evaluation matches. As GP can generate and evolve behavioural rules not taken into account by an expert, the obtained bots could perform better than human-defined ones. Due to the difficulties when applying Computational Intelligence techniques in the videogames scope, such as noise factor in the evaluation functions, three different fitness approaches have been implemented and tested in this work. Two of them try to minimize this factor by considering additional dynamic information about the evaluation matches, rather than just the final result (the winner), as the other function does.
In order to prove them, the best obtained agents have been compared with a previous bot, created by an expert player (from scratch) and then
optimised by means of Genetic Algorithms. The experiments show that the three used fitness functions generate bots that outperform the optimized human-defined one, being the area-based fitness function the one that produces better results.

La presentación del artículo se puede ver aquí:

El artículo se puede encontrar en: http://gaia.fdi.ucm.es/sites/cosecivi14/es/papers/24.pdf

Esperamos que os guste.

Y que nos citéis. :D

EVOGames CFP 11/Nov

Minientrada

EVOGames es una sesión dedicada a la investigación dentro del campo de los videojuegos, que se incluye dentro del congreso EVO* 2014, que se celebrará en Granada del 23 al 25 de Abril del próximo año.

El Call for Papers ha sido retrasado hasta el 11 de Noviembre, fecha definitiva para el envío de artículos.

———————————–

EVOGames is a Special Session devoted to research works in videgames scope. It is included inside EVO* 2014, to be held in Granada (Spain) next month of April.

The CFP has been delayed to the 11th of November.

[PACT’08][PABA Workshop I] Addressing Churn in P2P EA

This week the first Workshop on Parallel Architerctures and Bioinspired Algorithms is being held in Toronto (Canada) in conjunction with the prestigious conference Parallel Architectures and Compilation Techniques (PACT).

In extension to our line of work in P2P EAs, we have presented the work:

In this paper we analyse the robustness of a Peer-to-Peer (P2P) Evolutionary Algorithm (EA) subject to the following dynamics: peers leave the system independently from each other causing a collective effect known as churn. The algorithm has been designed to tackle large instances of computationally expensive problems and, in this paper, we will assess its behavior under churn. To that end, we have performed a scalability analysis in five different scenarios using the Massively Multimodal Deceptive Problem as a
benchmark.  In all cases, the P2P EA reaches the success criterion without a penalty on the response time. The key to the algorithm robustness is to ensure enough peers at the beginning of the experiment. Some of them leave but those that remain are enough to guarantee a reliable  convergence.