681-evo cell22c3 slides (2)

22
EvoCell free software for designing and evolving cellular automata http://kybernet.org/wiki/EvoCell [email protected]

Upload: independent

Post on 16-May-2023

1 views

Category:

Documents


0 download

TRANSCRIPT

EvoCell

free software for designing and evolving

cellular automata

http://kybernet.org/wiki/[email protected]

Agenda

Introduction to Cellular Automata Demo of EvoCell Artificial Life in Cellular Automata Resume

Cellular automata

Introduced by von Neumann and Ulam http://cba.mit.edu/events/03.11.ASE/docs/VonNeumann.pdf

Mathematical model Dynamical system Discrete in time Discrete in space Only local interaction

Global phenomena out of local interaction

Elements of a cellular automaton

Some regular lattice of cells

Elements of a cellular automaton

Some regular lattice of cells

00

000

0

130 0

040

0

0

3

2

0000

0

0

0

0

At each time stepeach cell is in

one of s states

Elements of a cellular automaton

Some regular lattice of cells

00

000

0

130 0

040

0

0

3

2

0000

0

0

0

0

States coded by colorfor visualisation 0 1 2 3 4

At each time stepeach cell is in

one of s states

Neighbourhood The state of each cell at time step t+1 is a

function of some of its surrounding cells (the neighbours) at time step t

t t+1

The neighbourhood is the same for each cell The center cell is usually included in the

neighbourhood

Typical neighbourhoods

Von Neumann

“Big“

Moore

Transition Function For each possible combination of states in

the neighbourhood there is a target state the center cell develops into.

Implemented as a look-up-table Example: Moore Neighbourhood, 3 states

0 000

0

00 00

0 000

1

00 00

0 000

2

00 00

1 000

0

00 00

2 222

2

22 22

20 1 0 2

...

Elements of a cellular automaton(Summary)

a lattice geometry Defines how the cells are aligned to each other

a number of states the cells can be in (s) a neighbourhood (n neighbours) a transition function

The neighbourhood and the transition function define the local interactions

How many different CA do exist?

s s

s

s

s

Each of the n cells in the neighbourhood can be in one of s states

So there are s*s*s*s*s = s^n different neighbourhoods

First: How many different neighbourhoods do exist?

How many different CA do exist?

For each of these s^n neighbourhoods we have to assign one target state.

0 0

0

0

0 1 0

0

0

0 2 0

0

0

0 ...

s s s ...

s-1

s-1 s-1

s-1

s-1

s

So there are s^(s^n) different possible CA

This is a huge number!

How do we find the interesting points in this huge space of possible CA?

How to evolve cellular automata

0.Start with some initial rule.

1.Make some copies of the CA and change some entries in the transition function tables of the copies.

2. Initialize the original CA and the mutated CA with some predefined or random cell pattern.

The difference in the transition rules can now be seen as differences in the development of the cell patterns.

3.Select the most interesting CA.

4. goto 1

Symmetries Rotational Symmetry Rotated versions of the same neighbourhood

have the same target state Example:

0 000

0

21 30

2

0 300

0

00 12

2

2 100

3

00 00

2

0 002

1

03 00

2

Symmetries Mirror Symmetry Mirrored versions of the same

neighbourhood have the same target state Example:

0 000

0

21 30

2

0 000

0

23 10

2

2 300

1

00 00

2

2 100

3

00 00

2

EvoCell Demo

„Regular Expressions“ for Rules

? matches any state n0, n1, ..., nn matches the nth

neighbour n0 + 1 works too

avg5 matches(sum of all neighbour cells + 5)/n

Evoloop CA created by by Hiroki Sayama

http://necsi.org/postdocs/sayama/sdsr/

Self replicating Structure „DNA“ inside the loop

„DNA“ is copied „DNA“ codes for one side of the loop - fractal

Loops that collide and become dysfunctional dissolve to free the space

Loops evolve Smaller loops can reproduce faster

Artificial Life in CA

Everything is the result / emergent property of local rules

shows evolution without: Concept of individuals Fitness function

select the N fittest individuals Hardcoded genetic algorithm

EvoLoop is an existence proof for Alife in CA

Resume

There is a huge space of possible CA Presented tools for exploring this space “Existence proof“ that there are some

interesting points in this space Hope I got you interested in CA http://kybernet.org/wiki/EvoCell

Thats it!

Questions?

http://kybernet.org/wiki/[email protected]

Huge space of possible CA

How many CA with n neighbours and s states are there?

There are s^n different possible combination of states in the neighbourhood

For each of these s^n neighbourhoods we can assign one of s target states.

So there are s^(s^n) different possible CA This is a huge number! How do we find the interesting ones?