24
1 Artificial Evolution: Artificial Evolution: From Clusters to GRID From Clusters to GRID Erol Şahin Cevat Şener Dept. of Computer Engineering Middle East Technical University Ankara

1 Artificial Evolution: From Clusters to GRID Erol Şahin Cevat Şener Dept. of Computer Engineering Middle East Technical University Ankara

Embed Size (px)

Citation preview

1

Artificial Evolution: Artificial Evolution: From Clusters to GRIDFrom Clusters to GRID

Erol ŞahinCevat Şener

Dept. of Computer EngineeringMiddle East Technical University

Ankara

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 2

Darwinian EvolutionDarwinian Evolution

• A population consists of a variety of individuals.

• The traits of individuals are determined by their genomes.

• Fitter individuals tend to produce more-than-average off-springs.

• Off-springs are generated by a recombination of the genomes of the fitter individuals.

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 3

Artificial EvolutionArtificial Evolution

• Generate a population of solutions.

• Evaluate the quality of each solution using a pre-defined “fitness function”.

• Use the fitter solutions to generate more-than-average new solutions.

• New solutions generated by a recombination of fitter solutions.

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 4

EVOLUTION

Environment

Individual

Fitness

PROBLEM SOLVING

Problem

Candidate Solution

Quality

Quality chance for seeding new solutions

Fitness chances for survival and reproduction

The metaphorThe metaphor

Slide taken from Eiben and Smith’s presentation.

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 5

Evolutionary roboticsEvolutionary robotics• Challenge: How to

design a controller that would make the robot to perform a desired task?– Manual controller design

is often difficult/impossible– Realistic simulators are

used to evaluate different controller alternatives.

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 6

Evolutionary roboticsEvolutionary robotics

010101 100111...

Sensor data

Actuator outputs

Convert to controller

parameters Use the controller

in robots

ControllerController

Chromosome

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 7

Evolving controllersEvolving controllers

...........

Generation n

Chrom.1: 0101011001...

Chrom.2: 1100110111...

.........

Generation n+1

SelectReproduceMutate

...........

Chrom.1: 1010001110...

Chrom.2: 0011110101...

.........

Population n

Population n+1

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 8

Physics Based SimulationPhysics Based Simulation• Pros

– Faster and more reliable than experimentation with real robots

– Realistic• Cons

– High processing demand!

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 9

Single Machine LimitationsSingle Machine Limitations

• Computation required:– Solving Ordinary Differential Equations– Increasing complexity with more collisions

• Time estimates for single computer:– Order of minutes for a single evaluation– For 100 chromosomes and 100 generations

• Total time > a week on a single machine

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 10

Parallel Evolution System (PES)Parallel Evolution System (PES) on a Cluster on a Cluster

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 11

PES ArchitecturePES Architecture

• Server: Artificial Evolution

• Clients: Fitness evaluation

PES-C

PES-C

PES-C

Client Application

Client Application

Client ApplicationPES-SServer

Application

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 12

PES Communication ModelPES Communication Model

PES Network Adapter

PVM

Host

PES-C

PES Network Adapter

PVM

Host

PES-S

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 13

PES-S ArchitecturePES-S Architecture

Server Application

Artificial Evolution

Task Manager

PES-S

Configuration Manager

Task generator

Best solutions

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 14

PES-C ArchitecturePES-C Architecture

PES-C

Client Application

Simulator

Fitness Evaluator

Task

Fitness

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 15

Processor Load BalancingProcessor Load Balancing

• Dynamic simulation

• Varying number of collisions

• Varying task complexity

• Varying processor load

Diamonds and Hexagons: tasks Solid lines: Start of new generation

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 16

Fault ToleranceFault Tolerance

• Processor 2 fails

• Detected at ping at 15th sec

• Task restart at 19th sec

Red lines: PingBlue lines: GenerationNumbers: Task index

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 17

Efficiency & Efficiency & SpeedupSpeedup

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 18

Generation Gap for 128 ProcessorsGeneration Gap for 128 Processors

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 19

Implementing PES on a GridImplementing PES on a Grid

Two alternatives so far:

1. Porting PES as a whole from Clusters to Grid

2. Submitting only the clients onto Grid

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 20

Porting the whole PESPorting the whole PES

16 pvm PES-S,PES-C,PES-C,...,PES-C

PES-S PES-C PES-C PES-C

pvmd pvmd pvmd pvmd. . .

. . .

. . .GridEngine

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 21

Porting the whole PESPorting the whole PES

• Advantage– Easy implementation

• Disadvantage– Requires that 16 nodes become available at

the same time to start running

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 22

Only ClientsOnly ClientsJobArray:1:15 PES-C

PES-S

PES-C. . .

Grid Engine

PES-CPES-C

TaskSubmission

Results

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 23

Only ClientsOnly Clients

• Disadvantage– Communication and synchronization setup

between PES-S and Grid Engineis not straightforward

• Advantage– Performance

Ulusal GRID Çalıştayı, 21-22 Eylül 2005, Ankara 24

Questions/Comments?Questions/Comments?