Evaluation-Time Bias in Evolutionary Algorithms

A brief overview with the early research works from the literature Photo by Jon Tyson on Unsplash An Evolutionary Algorithm (EA) is a subset of evolutionary computation in artificial intelligence. Evolutionary computation is a family of algorithms for global optimization inspired by biological evolution.

The rapid development of the information age with Big Data has led to an increase in the size and complexity of the optimization problems. In the context of an EA, this eventually results in the expansion of the search space with the fitness evaluation (used for optimal solution search) computation cost of the individuals becoming extremely high.

Diving deep into the EA variants, we observe the below different types, Source: Image by the author In this article, we will mainly focus on the Parallel EA variant with its two types and then dive deep into understanding the problem of evaluation time-bias. Traditional generational EAs are derived from sequential EA but were formulated to induce parallelism.

However, these algorithms require synchronization and are often faced with the problem of idle time when there is time variance between the individuals to evaluate their fitness value.

This often results in wastage of CPU resources and a hindrance to parallelization. To solve this problem we have asynchronous EAs which are based on a steady-state model in which a one-at-a-time generation of an individual offspring takes place followed by their fitness evaluation.

As soon as the fitness evaluation for an individual is completed, it can immediately compete for a place in the existing population without the need for synchronization. This process eventually helps in the effective utilization of computational resources and induces efficient parallel processing. However, asynchronous EAs are faced with the so-called problem of Evaluation-Time bias.

Evaluation-Time Bias is the heritable phenomenon in which individuals who quickly evaluate themselves as compared to the other individuals in the population have a reproductive advantage in an EA. This eventually puts the long-evaluating individuals at a disadvantage since the fast-evaluating individuals have more opportunity to generate offsprings.

This also leads to the solution search biased towards the fast-evaluating regions and away from the long evaluating regions of the search space and thus resulting in a premature convergence. However, sometimes evaluation-time bias can prove helpful in an algorithm if all the faster-evaluating individuals are better but at the same time can hinder the convergence if all of them are worse.

Noteworthily, in an experiment carried out in a flat fitness landscape, the evaluation showed no evidence of bias towards faster or slower regions, indicating that the bias may be small or negligible under certain conditions.

As a solution and depending on the scenario, sometimes penalizing high-quality solutions by assigning them with long-evaluation times can help to prevent the premature convergence of the EA and improve its performance.

Below illustrated are two early research works carried out towards solving the problem of evaluation time-bias and laid the foundations for further research directions, Quasi-Generational Asynchronous Evolutionary Algorithm (QGEA) QGEA combines some aspects of synchronous and asynchronous EA as a novel algorithm for the best of both worlds.

This proposed algorithm serves as an intermediate solution that would neither incur idle time nor significant bias towards fast solutions. QGEA utilizes the asynchronous evaluation scheme to evaluate the individuals in the population which minimizes idle time. However, evaluated individuals are not added directly into the parent population.

Instead, a separate child population is created and they are added there one-at-a-time. Once the full capacity of the child population is reached, it replaces the parent population, and a new child population is then created. The difference between this algorithm and the traditional EA lies in the fact that it generates more children from each set of parents, which further helps in keeping all the processors occupied. The changes to the population occur in a generational way with complete replacement of the population after every defined-number of steps.

Evolutionary Algorithm with Interleaving Generations (IGEA) IGEA is equivalent to the standard generational EA but allows for better utilization of the computational resources by interleaving the fitness evaluations from different generations, thus avoiding the evaluation time bias and exhibiting a better parallelization potential.

The main idea of the algorithm lies in the fact that some individuals from the next generation can be generated before the current generation is completely evaluated. Instead of incurring the CPU idle time as in a standard EA, IGEA tries to eliminate this through the evaluation of the generated individuals by the idle CPUs and thus does not require the processor nodes to wait until the slower evaluating individuals have completed their evaluation.

There are two variants of IGEA, the comma version (λ, λ) and the plus version (λ + λ). The comma version has a population of λ and in each generation generates λ offspring to be used in the next generation. The plus version generates λ offspring from λ parents, then λ individuals from the combined offspring and parent population are selected for the next generation. However based on their experimental evaluation both of the early approaches exhibit certain limitations, The QGEA approach does not solve the problem of evaluation-time bias as well as exhibits a very low convergence rate.

The IGEA approach is not based on the asynchronous EA scheme and hence does not exhibit evaluation-time bias. The interleaving of the generations can only work when the selection of the individuals does not require all of the individuals to be evaluated before the execution. Hence, the IGEA approach aims to eliminate the problem of evaluation-time bias by interleaving the generations of the standard generational EA, but at the same time does not allow for the use of unlimited parallelism like the asynchronous EA’s.

More recently in the last year, we had two more research works published in this area. A new parent selection strategy to reduce the effect of evaluation-time bias by taking into account the search progress of each solution is proposed in. This proposed method when experimentally evaluated using asynchronous NSGA-III, helps to reduce its computing time and the effect of evaluation-time bias.

Another research work builds on IGEA and proposes a solution focussed on improving the CPU utilization through the concept of precedence evaluation of tentative offspring in IGEA. Summarizing, as observed from the literature, there is no concrete solution identified towards the total elimination of the evaluation time bias.

Hence the research on efficient methods for the effective elimination of the problem of evaluation-time bias in asynchronous EAs and the study on the open research question to predict how evaluation-time bias will affect an EA’s performance given a particular problem type and conditions remains a hotspot topic of research.

THE FOREFRONT OF TECHNOLOGY

We monitors and writes about new technologies in areas such as technology, innovation, digitization, space, Earth, IT and AI.

Related Posts

Leave a Reply