Evolving Motor Techniques for Artificial Life Kelley Hecker, Period 7.

17
Evolving Motor Techniques for Artificial Life Kelley Hecker, Period 7

Transcript of Evolving Motor Techniques for Artificial Life Kelley Hecker, Period 7.

Evolving Motor Techniques for Artificial Life Kelley Hecker, Period 7

Abstract

Creatures' fitness values improve from generation to generation

Co-evolution Both the body and the brain

develop Possibility of specialized

creatures

Methodology:Genome

Genome represented by a one-dimensional array

Each array has several nodes Nodes represent body

segments Each node contains dimensions

for body part, location of parent and child connections, and neuron functions

Genome converted to physical form for simulation

Example Genomes Root Node:

Length: 3, Width: 2, Height: 2 Child 0:

Length: 2, Width: 2, Height: 3 Child 1:

Length: 1, Width: 4, Height: 4 Child 2:

Length: 1, Width: 3, Height: 4 Child 3:

Length: 1, Width: 3, Height: 2

Example GenomesExample Genomes

Note: Each node also contains the neuron data, but since this cannot be seen physically I did not list it

Methodology:Controller

Controller object maintains an array of genomes

Generates new genomes at beginning of simulation

Displays creatures and runs simulation

Measures fitness and breeds creatures for next generation

Methodology:Nodes

Physical dimensions Where the body segment

connects to its parent and children segments

Neuron functions Methods to add children and

connection points Accessor methods return

children, dimensions and neurons

Methodology:Creature GA

Applies neuron functions to sensor values

Possible neuron functions: Oscillating functions: sin, cos, atan,

saw-wave Other functions: sum-threshold,

sign-of, min, max, mem, log, expt, devide, interpolate, differentiate

Returns joint velocity values for the associated body segment

Circulation of Data

Values received from

joint-angle sensors

Values sent to the GA, where they are put

through node's neurons

Values become

effectors and modify joint

velocity

Reproduction

Creatures are evaluated based on their performance in the simulation

Top half of genomes copied directly (asexual)

Remaining 1/2 of genomes are crossed over in pairs

Crossover

Crossover

Children have both physical and control traits of their parents

A portion of the limbs will be physically the same and controlled in the same way as one of the parents, while the remaining limbs will be identical to the second parent

Allows for co-evolution: both the body and brain change

Simulation Process

Population is simulated in the physical environment

All of the creatures are displayed at once

Final fitnesses are evaluated and reproduced

Repeated with next generation for n generations

Example Simulation

One creature is copied directly to the second generation. Can you tell which one?

http://www.youtube.com/watch?v=a_jyKuzrBRM

Testing

Fitness tests Measures the success of a

motor method Progression of fitness level

shows evolution of technique Create graph of fitness level over

time

Results

Results had a consistent upwards trend, but varied on the amount of improvement

Some graphs showed a levelling off or decrease in the later generations (100+), but after adding mutation this rarely happened

Graphs

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76

0

25

50

75

100

125

Max

Linear (Max)

Average

Linear (Average)

Generation

Fitn

ess

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

0

10

20

30

40

50

60

AverageFit:

Linear (AverageFit:)

Generation

Fitn

ess

1 15 29 43 57 71 85 99 113

127

141

155

169

183

197

211

0

10

20

30

40

50

60

70

80

AverageFit:

Linear (AverageFit:)

Generation

Fitn

ess

Potential Creatures