Antonio J. Fernández-LeivaUniversity of Malaga | UMA · Department of Computer Sciences and Languages
Antonio J. Fernández-Leiva
PhD in Computer Science
About
160
Publications
62,214
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
1,361
Citations
Introduction
Additional affiliations
January 1996 - present
Publications
Publications (160)
The template design problem (TDP) is a hard combinatorial problem with a high number of symmetries which makes solving it more complicated. A number of techniques have been proposed in the literature to optimise its resolution, ranging from complete methods to stochastic ones. However, although metaheuristics are considered efficient methods that c...
Memetic algorithms are techniques that orchestrate the interplay between population-based and trajectory-based algorithmic components. In particular, some memetic models can be regarded under this broad interpretation as a group of autonomous basic optimization algorithms that interact among them in a cooperative way in order to deal with a specifi...
The balanced incomplete block design (BIBD) problem is a difficult combinatorial problem with a large number of symmetries, which add complexity to its resolution. In this paper, we propose a dual (integer) problem representation that serves as an alternative to the classical binary formulation of the problem. We attack this problem incrementally:...
Digital collectible card games are not only a growing part of the video game industry, but also an interesting research area for the field of computational intelligence. This game genre allows researchers to deal with hidden information, uncertainty and planning, among other aspects. This paper proposes the use of evolutionary algorithms (EAs) to d...
Este libro incluye la transcripción en formato de artículo de de algunas de las presentaciones originales que se han impartido en el curso 'Be comics & videogames 2022' que se realizó en el Contendro cultural de la UMA de abril a junio de 2022 y que han sido seleccionadas para ser divulgadas en forma de artículo académico. Como podrá observar el/la...
The automatic generation of game mechanics is nowadays one of the most complex challenges within procedural content generation (PCG), even being considered by itself as automatic game generation in the literature. Previous works have contributed with research papers related to PCG in general, and, in particular, the generation of game mechanics fro...
Motion-based technology (MBT) has been applied in the last decades with enormous success in a high number of applications. Its use continues growing and is specially interesting in the health area. Nowadays, its employment is being more and more specialised with respect to the profile of the end user (i.e., child, adolescent/teenager, adult or elde...
We consider the issue of intensification/diversification balance in the context of a memetic algorithm for the multiobjective optimization of investment portfolios with cardinality constraints. We approach this issue in this work by considering the selective application of knowledge-augmented operators (local search and a memory of elite solutions)...
Neck disorders have a significant impact on people because of their high incidence. The head-mounted display (HMD) systems, such as Meta Quest 2, grant access to immersive virtual reality (iRV) experiences. This study aims to validate the Meta Quest 2 HMD system as an alternative for screening neck movement in healthy people. The device provides da...
Usually, human participation is required in order to provide feedback during the game tuning or balancing process. Moreover, this is commonly an iterative process in which play-testing is required as well as human interaction for gathering all important information to improve and tune the game components’ specification. In this paper, a mechanism i...
The template design problem (TDP) is a hard combinatorial problem with a high number of symmetries which makes solving it more complicated. A number of techniques have been proposed in the literature to optimise its resolution, ranging from complete methods to stochastic ones. However, although metaheuristics are considered efficient methods that c...
General Videogame Playing is one of the hottest topics in the research field of AI in videogames. It aims at the implementation of algorithms or autonomous agents able to play a set of unknown games efficiently, just receiving the set of rules to play in real time. Thus, this work presents the implementation of eight approaches based on the main te...
Memetic algorithms are techniques that orchestrate the interplay between population-based and trajectory-based algorithmic components. In particular, some memetic models can be regarded under this broad interpretation as a group of autonomous basic optimization algorithms that interact among them in a cooperative way in order to deal with a specifi...
This paper presents the design and development of an Android application (using Unreal Engine 4) called GravityVolve. It is a two-dimensions game based on the N-Body problem previously presented by some of the authors. In order to complete a map, the player will have to push the particle from its initial position until it reaches the circumference’...
This paper presents the XML-based Video Game Description Language (XVGDL), a new language for specifying Video games which is based on the Extensible Markup Language (XML). The proposal is portable and extensible, and allows games to not only be defined at engine level but also includes specific features that can lead the game design process whilst...
The Balanced Incomplete Block Design (BIBD) problem is a difficult combinatorial problem with a large number of symmetries, which add complexity to its resolution. In this paper, we propose a dual (integer) problem representation that serves as an alternative to the classical binary formulation of the problem. We attack this problem incrementally:...
Digital collectible card games are not only a growing part of the video game industry, but also an interesting research area for the field of computational intelligence. This game genre allows researchers to deal with hidden information, uncertainty and planning, among other aspects. This paper proposes the use of evolutionary algorithms (EAs) to d...
A user-centric memetic algorithm (UcMA) represents an instance of the so-called interactive evolutionary computation, in which the subjacent algorithm that interacts with a human consists of a memetic algorithm (MA) that manages knowledge of the problem with the aim of accelerating the solution search process. UcMAs have been proved to be effective...
Ephemeral computing is a term that describes computing systems whose nodes or their connectivity have an ephemeral, heterogeneous and possibly also unpredictable nature. These properties will affect the functioning of distributed versions of computer algorithms. Such algorithms, which are usually straightforward extensions of sequential algorithms,...
This paper presents multiple hybridizations of the two best bots on the BotPrize 2014 competition, which sought for the best human-like bot playing the First Person Shooter game Unreal Tournament 2004. To this aim the participants were evaluated using a Turing test in the game. The work considers MirrorBot (the winner) and NizorBot (the second) cod...
It is increasingly common that computational devices with significant computing power are underexploited. Some of the reasons for that are due to frequent idle-time or to the low computational demand of the tasks they perform, either sporadically or in their regular duty. The exploitation of this (otherwise-wasted) computational power is a cost-eff...
Video game development is not only one of the most profitable entertainment industries but also represents a very interesting field of research. Particularly in the area of Artificial Intelligence (AI), it provides many interesting (and hard to tackle) challenges. One of them consists in creating artificial bots (i.e., game characters not controlle...
This paper presents a spatially-structured evolutionary algorithm (EA) to procedurally generate game maps of different levels of difficulty to be solved, in Gravityvolve!, a physics-based simulation videogame that we have implemented and which is inspired by the n-body problem, a classical problem in the field of physics and mathematics. The propos...
This paper proposes an evolutionary algorithm for evolving game bots that eschews an explicit fitness function using instead a match between individuals called joust and implemented as a selection mechanism where only the winner survives. This algorithm has been designed as an optimization approach to generate the behavioural engine of bots for the...
Videogames are one of the most important and profitable sectors in the industry of entertainment. Nowadays, the creation of a videogame is often a large-scale endeavor and bears many similarities with, e.g., movie production. On the central tasks in the development of a videogame is content generation, namely the definition of maps, terrains, non-p...
This paper discusses some of the most interesting challenges to which the games research community members may face in the area of the application of artificial or computational intelligence techniques to the design and creation of video games. The paper focuses on three lines that certainly will influence significantly the industry of game develop...
This paper presents an interactive genetic algorithm for generating a human-like autonomous player (bot) for the game Unreal Tournament 2004. It is based on a bot modelled from the knowledge of an expert human player. The algorithm provides two types of interaction: by an expert in the game and by an expert in the algorithm. Each one affects differ...
The classical approach of Competitive Coevolution (CC) applied in games tries to exploit an arms race between coevolving populations that belong to the same species (or at least to the same biotic niche), namely strategies, rules, tracks for racing, or any other. This paper proposes the co-evolution of entities belonging to different realms (namely...
This chapter presents an overview of hybridization mechanisms in evolutionary algorithms. Such mechanisms are aimed to introducing problem knowledge in the optimization technique by means of the synergistic combination of general-purpose methods and problemspecific add-ons. This combination is presented in this work from two wide perspectives: meme...
Computational devices with significant computing power are pervasive yet often under-exploited since they
are frequently idle or performing non-demanding tasks. Exploiting this power can be a cost-effective solution
for solving complex computational tasks. Device-wise, this computational power can some times comprise a
stable, long-lasting availabi...
Procedural content generation (PCG) is a research field on the rise, with numerous papers devoted to this topic. This paper presents a PCG method based on a self-adaptive evolution strategy for the automatic generation of maps for the real-time strategy (RTS) game Planet Wars. These maps are generated in order to fulfill the aesthetic preferences o...
This paper presents a procedural content generation (PCG) method that is able to generate aesthetic maps for a real-time strategy game. The maps were characterized based on either their geometrical properties or their topological measures (obtained in this latter case from the sphere-of-influence graph induced by each map). Using these features, a...
This work presents a procedural content generation system that uses an evolutionary algorithm in order to generate interesting maps for a real-time strategy game, called Planet Wars. Interestingness is here captured by the dynamism of games (i.e., the extent to which they are action-packed). We consider two different approaches to measure the dynam...
We consider search-based procedural content generation in the context of Planet Wars, an RTS game. The objective of this work is to generate maps for the aforementioned game, that result in an interesting game-play. In order to characterize interestingness we focus on the properties of balance and dynamism. The former captures the fact that no play...
The Google Artificial Intelligence (AI) Challenge is an international contest the objective of which is to program the AI in a two-player real time strategy (RTS) game. This AI is an autonomous computer program that governs the actions that one of the two players executes during the game according to the state of play. The entries are evaluated via...
Games constitute a research domain that is attracting the interest of
scientists from numerous disciplines. This is particularly true from the
perspective of computational intelligence. In order to examine the
growing importance of this area in the gaming domain, we present an
analysis of the scientific collaboration network of researchers working...
Car racing is a successful genre of videogames, as proved, for example, by the racing simulator saga, Gran Turismo. In this genre of games, players not only race but they are also involved in the process of setting up the car, assuming the role of a technician/mechanic/engineer. Generally, this configuration deals with a large set of parameters tha...
This paper compares two different approaches for teaching complex programming concepts in lab sessions. The first approach is based on the widely held assumption that the programming knowledge and skills which the student obtains are predominantly acquired from classroom activities undertaken at the instigation of the teacher. This automatically im...
This paper presents a parameterized schema for building memetic algorithms based on cross-entropy (CE) methods. This novel schema is general in nature, and features multiple probability mass functions and Lamarckian learning. The applicability of the approach is assessed by considering the Tool Switching Problem, a complex combinatorial problem in...
Procedural content generation (PCG) is the programmatic generation of game content using a random or pseudo-random process that results in an unpredictable range of possible gameplay spaces. This methodology brings many advantages to game developers, such as reduced memory consumption. This works presents a procedural balanced map generator for a r...
Real-time strategy games offer a wide variety of fundamental AI research challenges. Most of these challenges have applications outside the game domain. This paper provides a review on computational intelligence in real-time strategy games (RTS). It starts with challenges in real-time strategy games, then it reviews different tasks to overcome this...
Most of game development along the years has been focused on the technical part (graphics and sound), leaving the artificial intelligence aside. However computational intelligence is becoming more significant, leading to much research on how to provide non-playing characters with adapted and unpredictable behaviour so as to afford users a better ga...
This paper explores the use of Hall-of-Fame (HoF) in the application of competitive coevolution for finding winning strategies in RobotWars, a two-player real time strategy (RTS) game developed in the University of Malaga for research purposes. The main goal is testing different approaches in order to implement the concept of HoF as part of the sel...
There are two main research issues in the game of Mastermind: one of them is finding solutions that are able to minimize the number of turns needed to find the solution, and another is finding methods that scale well when the size of the search space is increased. In this paper we will present a method that uses evolutionary algorithms to find fast...
Procedural content generation (PCG) is the program-matic generation of game content using a random or pseudo-random process that results in an unpredictable range of possible game play spaces. This methodology brings many advantages to game developers, such as reduced memory consumption. In this paper we intro-duce a procedural map generator for a...
The tool switching problem (ToSP) is well known in the domain of flexible manufacturing systems. Given a reconfigurable machine, the ToSP amounts to scheduling a collection of jobs on this machine (each of them requiring a different set of tools to be completed), as well as the tools to be loaded/unloaded at each step to process these jobs, such th...
We consider the problem of selecting investment components according to two partially opposed measures: the portfolio performance and its risk. We approach this within Markowitz’s model, considering the case of mutual funds market in Europe until July 2010. Comparisons were made on three multi-objective evolutionary algorithms, namely NSGA-II, SPEA...
This paper shows the results of a review about modeling, evaluating and increasing players' satisfaction in computer games. The paper starts discussing the main stages of development of quantitative solutions, and then it tries to propose a taxonomy that represents the most common trends. In the first part of this paper we take as base some approac...
In general Evolutionary Computation (EC) includes a number of optimization
methods inspired by biological mechanisms of evolution. The methods catalogued
in this area use the Darwinian principles of life evolution to produce
algorithms that returns high quality solutions to hard-to-solve optimization
problems. The main strength of EC is precisely t...
Memetic algorithms (MAs) constitute a metaheuristic optimization paradigm [usually based on the synergistic combination of an evolutionary algorithm (EA) and trajectory-based optimization techniques] that systematically exploits the knowledge about the problem being solved and that has shown its efficacy to solve many combinatorial optimization pro...
Basically, in (one-player) war Real Time Strategy (wRTS) games a human player
controls, in real time, an army consisting of a number of soldiers and her aim
is to destroy the opponent's assets where the opponent is a virtual (i.e.,
non-human player controlled) player that usually consists of a pre-programmed
decision-making script. These scripts ha...
As mentioned in previous chapters in this volume, metaheuristics (and specifically MAs) have a part of their raison d’etre in practically solving problems whose resolution would be otherwise infeasible by means of other non-heuristic approaches. Such alternative non-heuristic approaches are complete methods that –unlike heuristics– do guarantee tha...
This work deals with memetic-computing agent-models based on the cooperative integration of search agents endowed with (possibly
different) optimization strategies, in particular memetic algorithms. As a proof-of-concept of the model, we deploy it on
the tool switching problem (ToSP), a hard combinatorial optimization problem that arises in the are...
This paper deals with the template design problem, a hard constrained combinatorial problem with multiple applications. This problem is here formulated as a two-level combinatorial optimization problem whose solutions are integer matrices. In the higher level, a metaheuris-tic tackles the design of a collection of templates containing multiple inst...
One of the lessons learned in the last years in the metaheuristics community, and most prominently in the area of evolutionary computation (EC), is the need of exploiting problem knowledge in order to come up with effective optimization tools. This problem-knowledge can be provided in a variety of ways, but there are situations in which endowing th...
User-centric evolutionary computation is an optimization pa-radigm that tries to integrate the human user and the evolutionary
algorithm in a smooth way, favoring bi-directional communication and establishing synergies among these two actors. We explore
the possibilities for such an approach in the context of memetic algorithms, with application to...
Evolutionary combinatorial optimization (ECO) is a branch of evolutionary computing (EC) focused on finding optimal values
for combinatorial problems. Algorithms ranging in this category require that the user defines, before the process of evolution,
the fitness measure (i.e., the evaluation function) that will be used to guide the evolution of can...
This paper describes two different decision tree-based approaches to obtain strategies that control the behavior of bots in the context of the Unreal Tournament 2004. The first approach follows the traditional process existing in commercial videogames to program the game artificial intelligence (AI), that is to say, it consists of coding the strate...
We consider a 2D packing problem in which a collection of rectangular objects have to be arranged within a larger rectangular
area of fixed width, such that its height is minimized. This problem is tackled using evolutionary algorithms that combine
permutational decoders and GRASP-based principles. It is shown that this approach can be improved by...
The generation of balanced incomplete block designs (BIBD) is a hard constrained combinatorial problem whose applications are manifold. Although the BIBD problem can be easily formulated as a combinatorial optimization problem, its resolution still constitutes a formidable challenge for solving techniques. In this work we devise a memetic algorithm...
This paper describes a generic (meta-)cooperative optimization schema in which several agents endowed with an optimization
technique (whose nature is not initially restricted) cooperate to solve an optimization problem. These agents can use a wide
set of optimization techniques, including local search, population-based methods, and hybrids thereof,...
The Tool Switching Problem (ToSP) is a hard combinatorial optimization problem of relevance in the field of flexible manufacturing
systems (FMS), that has been tackled in the literature using both complete and heuristic methods, including local-search metaheuristics,
population-based methods and hybrids thereof (e.g., memetic algorithms). This wor...
This paper presents, from a user point-of-view, the mechanism of cooperation between constraint domains that is currently part of the system TOY, an implementation of a constraint functional logic programming scheme. This implementation follows a cooperative goal solving calculus based on lazy narrowing. It manages the invocation of solvers for eac...
This paper deals with the construction of binary sequences with low autocorrelation, a very hard problem with many practical applications. The paper analyzes several metaheuristic approaches to tackle this kind of sequences. More specifically, the paper provides an analysis of different local search strategies, used as standalone techniques and emb...
A weighted constraint satisfaction problem (WCSP) is a constraint satisfaction problem in which preferences among solutions can be expressed. Bucket elimination is a complete technique commonly used to solve this kind of constraint satisfaction problem. When the memory required to apply bucket elimination is too high, a heuristic method based on it...
This paper presents a computational model for the cooperation of constraint domains and an implementation for a particular case of practical importance. The computational model supports declarative programming with lazy and possibly higher-order functions, predicates, and the cooperation of different constraint domains equipped with their respectiv...
We present a constraint functional logic programming approach over finite domain (CFLP(FD)) for solving typical combinatorial prob-lems. Our approach adds to former approaches as (Constraint) Logic Pro-gramming, and Functional Logic Programming both expressiveness and further efficiency by combining combinatorial search wit h propagation. We integr...
This paper deals with the generation of balanced incomplete block designs (BIBD), a hard constrained combinatorial problem
with multiple applications. This problem is here formulated as a combinatorial optimization problem (COP) whose solutions
are binary matrices. Two different neighborhood structures are defined, based on bit-flipping and positio...
Several problems in the area of financial optimization can be naturally dealt with optimization techniques under multiobjective
approaches, followed by a decision-making procedure on the resulting efficient solutions. The problem of portfolio optimization
is one of them. This chapter studies the use of evolutionary multiobjective techniques to solv...
Several problems in the area of financial optimization can be naturally dealt with optimization techniques under multiobjective
approaches, followed by a decision-making procedure on the resulting efficient solutions. The problem of portfolio optimization
is one of them. This chapter studies the use of evolutionary multiobjective techniques to solv...