26
www.kovan.ceng.metu.e du.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University http://www.kovan.ceng.metu.ed u.tr ISCIS’03 04/11/20 03

Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

  • View
    222

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

www.kovan.ceng.metu.edu.tr

Parallelized Evolution System

Onur Soysal, Erkin Bahçeci

Erol Şahin

Dept. of Computer Engineering

Middle East Technical University

http://www.kovan.ceng.metu.edu.tr

ISCIS’03

04/11/2003

Page 2: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Evolutionary MethodsSimulation of Natural Evolution

Using evolution mechanisms to solve optimization problems

Survival of the fittest...........

Generation n

Chrom.1: 0101011001...

Chrom.2: 1100110111...

.........

Generation n+1

SelectReproduceMutate

...........

Chrom.1: 1010001110...

Chrom.2: 0011110101...

.........

Population n

Population n+1

Page 3: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Genetic AlgorithmsEncoding

Binary representation

Stochastic searchGuided by measure of fitness

Problem-specific fitness function

Genetic operatorsMutation

Crossover

Page 4: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Evolutionary Robotics

MotivationController: Sensor-actuator relationshipDifficult to design manually in nontrivial tasksTo be in the shoes of a robot?

Solutions of evolutionary roboticsEvolving controllers

Sensors ActuatorsController

???

Page 5: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Genotype Phenotype:Generic Controller

010101 100111...

Sensor data

Actuator outputs

Convert to controller

parameters Use the controller

in robots

ControllerController

Chromosome

Page 6: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Genotype Phenotype:Neural Network Controller

010101 100111...

Sensor data

Actuator outputs

Convert to neural

network weightsUse the neural network

to control robots

Chromosome

Page 7: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Fitness Evaluation

Use controlleron physical robots

on simulated robots

Observe behavior

Calculate fitness value

Repeat for each generation

• for each chromosome

Page 8: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Physics Based SimulationImportance of realistic simulationsPros

Much faster runtimecompared to physical implementationBehavioral similarity to physical robotsRealistic interactions

ConsHigh processing demand!

Example libraries: ODE, Vortex, Havok

Page 9: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Single Machine Limitations

Computation requiredSolving Ordinary Differential Equations

Increasing complexity with more collisions

Time estimates for single computerOrder of minutes for a single evaluation

For 100 chromosomes and 100 generations• Total time > a week on a single machine

Page 10: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Cluster Computing

Cheap alternative to supercomputers

Large-grained problems

Example applicationSETI@home: Search for Extraterrestrial Intelligence at home

Page 11: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Cluster Computing Solution to Evolutionary Robotics

Fitness evaluations dominate computation time

Fitness evaluations are independent

Master-Slave modelMaster: GA

Slaves: Fitness evaluations

Page 12: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Parallel Evolution System (PES)Parallel Genetic Algorithm libraryDistributed fitness evaluationCentral genetic algorithmSupports interoperability of multiple platforms

Page 13: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

PES Architecture

Server: GA

Clients: Fitness evaluation

PES-C

PES-C

PES-C

Client Application

Client Application

Client ApplicationPES-SServer

Application

Page 14: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

PES Communication Model

PES Network Adapter

PES-C

PES Network Adapter

PES-S

Ping mechanism

Task and result packets

ping

ping reply

task

result

Page 15: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

PES-S Architecture

Server Application

GA Engine

Task Manager

PES-S

Task generator

Best solutions

Network Adapter

Page 16: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

PES-C Architecture

Client ApplicationNetwork Adapter

Task

Fitness

PES-C

Page 17: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

PES Usage: Server

Server Code

#include <pes.h>int main(){

PES_INIT();for each generation{

PES_EVAL_INDIVIDUALS();PES_NEXT_GENERATION();

}}

Page 18: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

PES Usage: Client

Client Code

#include <pes.h>int main(){

PES_INIT();while true{

RECEIVE_TASK();EVAL_TASK();SEND_RESULT();

}}

Page 19: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

PES FeaturesMulti-platform support

Linux and Windows via PVM

Improved fault tolerancePing mechanism to detect non-responding clients

Supplies GA facilitiesBuilt-in crossover, mutation and selection functions

Simplified usageAutomatic task distribution / fitness collectionSingle line for evaluating fitness of whole populationBasic load balancing

Page 20: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Our ApplicationTask: Aggregation

Getting 10 robots as close as possible

Minimal sensors and communication

Modified single layer NN for controlNo memory/learning

No world knowledge

Probabilistic inputs

Fitness evaluation 2000 steps of simulation

Total distance as fitness measure

1

2

3

1

3 2

31 2

31 2

R

Page 21: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Sample Application Results

Page 22: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Processor Load BalancingDynamic simulationVarying number of collisionsVarying task complexityVarying processor load

Diamonds: tasks Solid lines: Start of new generation

Page 23: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Fault ToleranceProcessor 2 fails

Detected at ping at 15th sec

Task restart at 19th sec

Red lines: PingBlue lines: GenerationNumbers: Task index

Page 24: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Efficiency & Speedup

Page 25: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

Discussions & Future Work

Generation gapAsynchronous reproduction

Dynamic host list

Progress monitor

Extension to the Internet

Page 26: Www.kovan.ceng.metu.edu.tr Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University

ISCIS’03 www.kovan.ceng.metu.edu.tr

PES Sources & Documentation

Source distribution under Gnu Public License (GPL)

User manual

Functional reference

Sample applications

http://www.kovan.ceng.metu.edu.tr/software/PES