Lecture 19 - Informatics - Indiana University

jinksimaginaryAI and Robotics

Nov 7, 2013 (3 years and 9 months ago)

136 views

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

biologically

Inspired

computing

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

biologically
-
inspired computing

lecture
19

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Readings until now


Class Book


Nunes de Castro, Leandro [2006].
Fundamentals of Natural Computing:
Basic Concepts, Algorithms, and Applications
. Chapman & Hall.


Chapter 1, 2, 7,
8


Chapter
3


Lecture notes


Chapter 1: “What is Life?”


Chapter 2: “The Logical Mechanisms of Life”


Chapter 3: “Formalizing and Modeling the World”


Chapter 4: “Self
-
Organization and Emergent Complex Behavior



Chapter 5: “Reality
is Stranger than Fiction



Chapter 6: “Von Neumann and Natural Selection



Chapter 7: “Modeling Evolution: Evolutionary Computation



posted online @
http://informatics.indiana.edu/rocha/i
-
bic



Other materials


Flake’s [1998], The Computational Beauty of Nature. MIT Press


Chapter 20

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

course outlook


Presentation
and Discussion: 35%


Students will present and lead the discussion of an
article related to the class materials.


Thursday, November 29
th

or Tuesday,
December 4
th

?


Afek
, Y., N.
Alon
, O.
Barad
, E.
Hornstein
, N.
Barkai
,
and Z. Bar
-
Joseph. [
2011].
“A Biological Solution to
a Fundamental Distributed Computing Problem.”
Science

331

(6014)


Max
Bushmakin



Szolnoki
, A., Wang, Z., &
Perc
, M. (2012). “Wisdom
of groups promotes cooperation in evolutionary
social dilemmas”.
Scientific Reports
,
2
, 576.


Nick Lewis


discussion
by
all

Sections I585/I601

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

planned presentations in I585/I601


Afek
, Y., N.
Alon
, O.
Barad
, E.
Hornstein
, N.
Barkai
, and
Z. Bar
-
Joseph. 2011. “A Biological Solution to a
Fundamental Distributed Computing Problem.”
Science

331 (6014)


Max
Bushmakin



Szolnoki
, A., Wang, Z., &
Perc
, M. (2012). “Wisdom of
groups promotes cooperation in evolutionary social
dilemmas”.
Scientific Reports
,
2
, 576.


Nick
Lewis


Maccallum
, R. M.,
Mauch
, M., Burt, A., &
Leroi
, A. M.
(2012).
“Evolution
of music by public
choice”.
PNAS
,
109

(30):
12081
-
12086.


Yucong

Jiang


Glickman
, Matthew, Justin
Balthrop
, and Stephanie
Forrest. 2005. “A Machine Learning Evaluation of an
Artificial Immune System.”
Evolutionary Computation

13

(2): 179.


Thomas
Koster

Recent papers

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

final project schedule


Projects


Due by Dec
11
th

in
Oncourse


ECAL 2013


Actual conference due date:
May 10, 2013


http://www.dmi.unict.it/ecal2013
/


8
pages LNCS
proceedings format


http://www.springer.com/computer/lncs?SGWI
D=0
-
164
-
6
-
793341
-
0



Individual or group


With very definite tasks assigned per
member of group

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

biologically

Inspired

computing

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

computational evolution

artificial genotype/phenotype mapping

x
x
x
1
2
n
p
φ
Code:
!!!
S
S
n
p
2
1
S
Selection
Variation
Genotype
Phenotype
Traditional Genetic Algorithm
011001

code

Genotype

DNA

RNA


transcription

translation

(code)

amino acid

chains

development

phenotype

organism

environmental
ramifications

Inherited
variation

Search algorithms based on
the mechanics of
Natural Selection

Based on distinction
between a machine
and a description of a
machine

Solution alternatives
for optimization
problems

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Types of encoding


Binary encodings


Typically fixed
-
length


Many
-
letter encoding


Larger alphabet (e.g. graph
-
generation grammars)


Real
-
valued encodings


Genes take real values


Tree Encodings


Evolutionary programming


Indirect Encodings


Modeling Phenotype development or post
-
transcription
processes

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Real
-
encoding

1)
Genotypes contain real values

1)
Crossover is performed in the same way

2)
Mutation assigns a random number in a given
interval

2)
More computationally demanding


In genetic algorithms

0.3

1.7

3.8

1.7

6

1.2

3.2

6.4

2.8

0

0.3

1.7

3.8

1.7

2.9

1.2

3.2

6.4

2.8

0

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

evolving computer programs


Fogel, Owens and Walsh (1966)


Artificial Intelligence through simulated evolution
. Wiley.


Evolution of finite
-
state machines


John Koza (1992) at Stanford University


Genetic Programming: On the programming of
computers by means of Natural Selection
. MIT Press.

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

genetic programming


Evolving computer programs to perform a task


No strict genotype
-
phenotype mapping


LISP programs


Can be expressed in the form of parse trees

tree encodings

(
DEFUN

AREA
-
OF
-
CIRCLE

()


(
SETF

R

45)


(
SETF

PI

3.1415)


(
*

PI

(
*

R

R
)))

*

PI

R

R

*

functions

terminals

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

genetic programming

1)
Choose a pool of possible functions and terminals


Setting up a language of description

2)
Generate Random population of trees (programs)


Must be syntactically correct (parsing)


Size is usually restricted

3)
Evaluate Fitness Function for each tree


Desired
I/O


Simplicity, speed

4)
Reproduce next generation with variation


Trees with higher fitness value reproduce with higher probability

5)
Go back to 3)


the workings

*

PI

R

R

-

*



C

/

PI

PI

PI

/

/

/

PI

PI

+

R

D

*



PI

R
*
[(
PI
*
C
)
-

R
]

PI
/{
[(
PI
/
PI
)
/
(
PI
/
PI)
]}

R
+
(

PI
*
D)

-

/ + ==
√ ABS …

PI C
R B …

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Creation demo

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

genetic programming


Choose random point in each parent’s tree


Exchange subtrees beneath to produce offspring


Allows size of program to increase or decrease

crossover

/

PI

PI

PI

/

/

/

PI

PI

+

R

D

*



PI

PI
/{
[(
PI
/
PI
)
/
(
PI
/
PI)
]}

R
+
(

PI
*
D)

/

PI

D

PI

PI

PI

/

/

/

PI

+

R

*



PI

R
+
{

PI
*
[(PI
/
PI)
/
(PI
/
PI)]}

PI
/
D

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

crossover demo

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

genetic programming


Choose random point in a tree


Replace subtree beneath with random tree

mutation

+

R

D

*



PI

R
+
(

PI
*
D)

A

PI

-

MAX

B

+

R

*



PI

R
+
{

PI
*
[
MAX
(A,B)
-
PI]}

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Mutation demo

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

biologically

Inspired

computing

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Genetic programming

Architecture
-
altering operations

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Genetic programming


Optimal control


Planning


Symbolic
regression


Fit real data


Example: Uncover laws of physics


Schmidt M., Lipson H. (2009) "Distilling Free
-
Form Natural Laws from
Experimental Data,"
Science
,
324

(5923): 81
-

85
.


Binary Classification


Software Tool


Eureqa
:
http://
ccsl.mae.cornell.edu/eureqa



Robot strategies


Robocup


Evolvable hardware

applications

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

biologically

Inspired

computing

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

A symbolic regression tool

Eureqa

Eureqa
: http://ccsl.mae.cornell.edu/eureqa

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Gene expression programming


Proposed by Candida Ferreira


Program trees are encoded in fixed
-
length linear genotypes


Genotypes


Open
-
reading frame architecture


Stop signal not necessarily at end of genotype


Non
-
coding genes are possible


Can include genetic operators


Genes contain two types of symbols


Functions (only at the head) and terminals


Multigenic solutions


Assembled from non
-
coding operations between various open
-
reading frames


Including a genotype/phenotype map in GP

C. FERREIRA [2001].
Gene Expression
Programming: A New
Adaptive Algorithm
for Solving Problems.
Complex Systems
,
13

(2): 87
-
129.

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Natural design principles


self
-
similar structures


Trees, plants, clouds, mountains


morphogenesis


Mechanism


Iteration, recursion, feedback


Unpredictability


From limited knowledge or inherent in nature?


Mechanism


Chaos,
measurement


Collective
behavior, emergence, and
self
-
organization


Complex behavior from collectives of
many simple units or agents


Cellular Automata, Ant colonies, development, morphogenesis, brains,
immune systems, economic markets


Mechanism


Parallelism, multiplicity, multi
-
solutions, redundancy


Adaptation


Evolution, learning, social evolution


Mechanism


Reproduction, transmission, variation, selection


Network causality (complexity)


Behavior derived from many inseparable sources


Environment, embodiment,
epigenetics
, culture


Mechanism


Interactivity, connectivity,
stigmergy
, non
-
holonomic

constraints

exploring similarities across nature

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

biologically

Inspired

computing

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

biological, social and complexity explanations

differences and explanations


Emergent

behavior


Intricate structures and behavior from the interaction of
many simple agents or rules


Examples


Cellular Automata, Ant colonies, development,
morphogenesis, brains, immune systems, economic
markets


Mechanism


Parallelism, multiplicity,
stigmergy
, multi
-
solutions,
redundancy


Design causes


Natural selection, self
-
organization,
epigenetics
, culture

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

artificial bug worlds


Automata with
diverse
characteristics


Bugs have an
identity separate
from the world


Bug: data
structure and set
of rules


World: Arena for
information
exchange plus
set of rules

Figure by Rudy Rucker in
Artificial Life Lab
.

Artificial ecosystems

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

artificial bug worlds


Automata with diverse characteristics


Bugs have an identity separate from the world


Bug: data structure and set of rules


World: Arena for information exchange plus set of rules


Typical bug implementation


ID#


Transition tables, rules of operations


Position in world


Fitness value


State (e.g. mood)


Velocity


Speed and direction


Group membership

Figures by Rudy Rucker in
Artificial Life Lab
.

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Flocking Behavior


Boids

by Craig Reynolds (1986)


3 Steering behaviors


Alignment
: move towards the average heading of local
flockmates


Adjust velocity
direction according
to others in vicinity


Separation
: steer to avoid crowding local
flockmates


Maintain minimum distance to others (adjusting speed)


Cohesion
: steer to move toward the average position of local
flockmates


Adjust velocity direction according to others in vicinity



Each
boid

sees only
flockmates

within a certain small
neighborhood around itself.


http://www.red3d.com/cwr/boids/


biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Next
lectures


Class Book


Nunes

de Castro, Leandro [2006].
Fundamentals of Natural
Computing: Basic Concepts, Algorithms, and Applications
.
Chapman & Hall.


Chapter
5,
all sections


Section 7.7,
8.3.1,8.3.6,8.3.8,8.39


Lecture notes


Chapter 1: “What is Life?”


Chapter 2: “The logical Mechanisms of Life”


Chapter 3: Formalizing and Modeling the
World


Chapter 4: “Self
-
Organization and Emergent Complex
Behavior



Chapter 5: “Reality is Stranger than Fiction



Chapter 6: “Von Neumann and Natural Selection



Chapter 7: “Modeling Evolution: Evolutionary
Computation”


p
osted online @ http://informatics.indiana.edu/rocha/i
-
bic

readings

biologically

Inspired

computing

rocha@indiana.edu

http://informatics.indiana.edu/rocha/i
-
bic

INDIANA
UNIVERSITY
Info
rm
atics

luis

rocha

2012

Next
lectures


Papers


Afek
, Y., N.
Alon
, O.
Barad
, E.
Hornstein
, N.
Barkai
, and Z. Bar
-
Joseph. [2011]. “A Biological
Solution to a Fundamental Distributed
Computing Problem.”
Science

331

(6014
)



Szolnoki
, A., Wang, Z., &
Perc
, M. (2012).
“Wisdom of groups promotes cooperation in
evolutionary social dilemmas”.
Scientific
Reports
,
2
, 576
.

Additional readings