Evolutionary Computation Application Peter Andras peter andrasncl ac

  • Slides: 24
Download presentation
Evolutionary Computation Application Peter Andras peter. andras@ncl. ac. uk www. staff. ncl. ac. uk/

Evolutionary Computation Application Peter Andras peter. andras@ncl. ac. uk www. staff. ncl. ac. uk/ peter. andras/lectures

Overview 1. Application principles 2. Problem definition 3. Evolutionary solution 4. Summary and questions

Overview 1. Application principles 2. Problem definition 3. Evolutionary solution 4. Summary and questions

Application principles Problem domains: • hard discrete optimisation problems (e. g. , complex combinatorial

Application principles Problem domains: • hard discrete optimisation problems (e. g. , complex combinatorial optimisation) • very hard continuous optimisation problems (e. g. , problems with high combinatorial complexity) • evolutionary simulations

Application principles Speed: • evolutionary optimisation is usually slow • if there are simple

Application principles Speed: • evolutionary optimisation is usually slow • if there are simple ways of finding the optimal solutions those should be preferred

Application principles Complex programming: • evolutionary optimisation needs relatively complex programming (encoding, genetic operators,

Application principles Complex programming: • evolutionary optimisation needs relatively complex programming (encoding, genetic operators, performance evaluation, offspring generation, etc. )

Application principles Off-line application: • if the objective is to apply evolutionary optimisation to

Application principles Off-line application: • if the objective is to apply evolutionary optimisation to find an optimal solution of a problem, off-line application is preferred

Application principles Simulation games: • ideas and methods form evolutionary optimisation can fit very

Application principles Simulation games: • ideas and methods form evolutionary optimisation can fit very well to simulation games, where these can be applied directly

Problem definition World of problems: • finding the right parameters of the problems; •

Problem definition World of problems: • finding the right parameters of the problems; • finding the effective ranges of the parameters; • finding a good problem representation;

Problem definition Generating the problem world: • problem population with good random sampling of

Problem definition Generating the problem world: • problem population with good random sampling of the parameter domains; • regime dependent problem world niches;

Problem definition Problem: • health resource allocation in a labyrinth

Problem definition Problem: • health resource allocation in a labyrinth

Problem definition Optimisation problem: • given the risks of moving within the labyrinth, how

Problem definition Optimisation problem: • given the risks of moving within the labyrinth, how to locate the health resources to allow passing through the labyrinth, but without making this easy

Problem definition Simple labyrinth: can be solved explicitly Complex labyrinth: hard to solve, and

Problem definition Simple labyrinth: can be solved explicitly Complex labyrinth: hard to solve, and more interesting to play with

Problem definition Solving the complex labyrinth problem: • good place for evolutionary optimisation

Problem definition Solving the complex labyrinth problem: • good place for evolutionary optimisation

Evolutionary solution Encoding: • the labyrinth is given • the risks associated to labyrinth

Evolutionary solution Encoding: • the labyrinth is given • the risks associated to labyrinth positions are given; • the locations of the resources are encoded by their positions • chromosome: (x 1, y 1), …, (xn, yn)

Evolutionary solution Crossover operator:

Evolutionary solution Crossover operator:

Evolutionary solution Mutation operator: mutations

Evolutionary solution Mutation operator: mutations

Evolutionary solution Performance evaluation: • several trials of simulated players • the simulated players

Evolutionary solution Performance evaluation: • several trials of simulated players • the simulated players try to go through the labyrinth and we monitor their health amount • we determine the performance for each resource allocation pattern from the population of solutions

Evolutionary solution Directed operators: • monitoring the health amount changes in areas of the

Evolutionary solution Directed operators: • monitoring the health amount changes in areas of the labyrinth we can guide the mutation and crossover operators to improve areas where the performance is not close enough to the desired one

Evolutionary solution Mating potential determination: Mating potential Performance

Evolutionary solution Mating potential determination: Mating potential Performance

Evolutionary solution Parent selection: • each potential parent is assigned a mating potential •

Evolutionary solution Parent selection: • each potential parent is assigned a mating potential • randomly select parents • randomly set a limit for the potential parent, if its mating potential is bigger than that, the parent is selected • after each time when a parent is selected its mating potential is decreased

Evolutionary solution Evolution: • a population of potential solutions (resource allocation patterns) is generated

Evolutionary solution Evolution: • a population of potential solutions (resource allocation patterns) is generated • the population evolves using the genetic operators, performance evaluation, parent selection and offspring generation

Evolutionary solution How does it work ? Average performance Variance of performance

Evolutionary solution How does it work ? Average performance Variance of performance

Summary • evolutionary optimisation is very time consuming • off-line application is preferred for

Summary • evolutionary optimisation is very time consuming • off-line application is preferred for optimisation for computer games • it may be applied to evolutionary simulation • the problem world should be well defined and should sample the relevant ranges of the parameters • appropriate genetic encoding, genetic operators, performance evaluation, mating potential determination and parent selection should be found

Questions 1. Are the proteins the building blocks of the DNA ? 2. Is

Questions 1. Are the proteins the building blocks of the DNA ? 2. Is it true that animals may develop new organs under evolutionary pressures ? 3. Are the behaviours of an animal determined by its genes ? 4. Is it true that evolutionary optimisation is slow ? 5. Are the genes of a solution individual randomly changed by the application of crossover ? 6. Is it good if the variance of the performances is very low from the beginning of the evolutionary optimisation ?