Title: Evolution and Artificial Life in Process Engineering
1Evolution and Artificial Lifein Process
Engineering
- Janos Abonyi and Janos Madar
Department of Process EngineeringUniversity of
Veszprém, Hungary www.fmt.vein.hu/softcomp
2(No Transcript)
3Contents
- Neumanns self-replication scheme
- Self-reproduction and Artificial Life
- Stochastic optimization algorithms based
Artificial Life - Application examples
4Introduction
Major works of John von Neumann
- Theory of Games and Economic Behavior
- Mathematical Foundations of Quantum Mechanics
- Computer and the Brain
- Theory of Self-reproducing Automata (posthumously)
Neumanns self-reproduction scheme can be
interpreted as the general version of stochastic
optimization techniques.
Neumann is called as the Father of game theory
and the Father of the modern computer and if
any person could be called the father of
Artificial life, it would be Neumann too.
5Background of Self-Reproduction
In general, if we construct a machine, we use
even more complex machinery in its construction.
While engineering decreases the complexity, in
the nature the complexity may grow by evolution.
More complex
Less complex
Engineering
Evolution
Less complex
More complex
6Neumanns Self-reproduction
The underlying idea of Neumanns
Self-reproduction is the separation of machines
from their descriptions.
The theoretical self-reproductive machine
consists of four parts
Universal constructor automation
Copyingmachine
Operativesystem
Descriptionof (ABC)
F(ABC)
A
B
C
7Neumanns Self-reproduction
1. The C feeds the description into A
A
B
F(ABC)
C
8Neumanns Self-reproduction
2. The A produce ABC
A
A
B
B
F(ABC)
C
C
9Neumanns Self-reproduction
3. The C feeds the description into B
A
A
B
B
F(ABC)
C
C
10Neumanns Self-reproduction
4. The B makes a copy of description
A
A
B
B
F(ABC)
F(ABC)
C
C
11Neumanns Self-reproduction
5. Finally, we have a copy of the original system
A
A
B
B
F(ABC)
F(ABC)
C
C
12Artificial Life
The logic model of self-reproduction views living
organisms as complex machineries.
Still we are not able to create such machineries,
but we can emulate them using computers.
Artificial Life
- A-life inspired stochastic optimization methods,
e.g. - Evolutionary Algorithms
- Particle Swarm Optimization
13Game of life
14Evolutionary computation
15Motivations for EC
- Developing, analyzing, applying problem solving
methods a.k.a. algorithms is a central theme in
mathematics and computer science - Time for thorough problem analysis decreases
- Complexity of problems to be solved increases
- Consequence
- Robust problem solving technology needed
16The Main Evolutionary Computing Metaphor
- PROBLEM SOLVING
- Problem
- Candidate Solution
- Quality
- EVOLUTION
- Environment
- Individual
- Fitness
Fitness ? chances for survival and reproduction
Quality ? chance for seeding new solutions
17Problem type 1 Optimisation
- We have a model of our system and seek inputs
that give us a specified goal
- e.g.
- time tables for university, call center, or
hospital - design specifications, etc etc
18Optimisation example Satellite structure
Optimised satellite designs for NASA to maximize
vibration isolation Evolving design
structures Fitness vibration resistance Evoluti
onary creativity
19(No Transcript)
20Problem types 2 Modelling
- We have corresponding sets of inputs outputs
and seek model that delivers correct output for
every known input
- Evolutionary machine learning
21Modelling example loan applicant creditibility
British bank evolved creditability model to
predict loan paying behavior of new applicants
Evolving prediction models Fitness model
accuracy on historical data
22Problem type 3 Simulation
- We have a given model and wish to know the
outputs that arise under different input
conditions
- Often used to answer what-if questions in
evolving dynamic environments - e.g. Evolutionary economics, Artificial Life
23Simulation example evolving artificial societies
- Simulating trade, economic competition, etc. to
calibrate models - Use models to optimise strategies and policies
- Evolutionary economy
- Survival of the fittest is universal (big/small
fish)
24Brief History 1 the ancestors
- 1948, Turing
- proposes genetical or evolutionary search
- 1962, Bremermann
- optimization through evolution and recombination
- 1964, Rechenberg
- introduces evolution strategies
- 1965, L. Fogel, Owens and Walsh
- introduce evolutionary programming
- 1975, Holland
- introduces genetic algorithms
- 1992, Koza
- introduces genetic programming
25Darwinian Evolution Survival of the fittest
- All environments have finite resources
- (i.e., can only support a limited number of
individuals) - Lifeforms have basic instinct/ lifecycles geared
towards reproduction - Therefore some kind of selection is inevitable
- Those individuals that compete for the resources
most effectively have increased chance of
reproduction - Note fitness in natural evolution is a derived,
secondary measure, i.e., we (humans) assign a
high fitness to individuals with many offspring
26The Genetic Algorithm
- Directed search algorithms based on the mechanics
of biological evolution - Developed by John Holland, University of Michigan
(1970s) - To understand the adaptive processes of natural
systems - To design artificial systems software that
retains the robustness of natural systems
27The Genetic Algorithm (cont.)
- Provide efficient, effective techniques for
optimization and machine learning applications - Widely-used today in business, scientific and
engineering circles
28Components of a GA
- A problem to solve, and ...
- Encoding technique (gene, chromosome)
- Initialization procedure
(creation) - Evaluation function (environment)
- Selection of parents (reproduction)
- Genetic operators (mutation, recombination)
- Parameter settings (practice and art)
29Simple Genetic Algorithm
-
- initialize population
- evaluate population
- while TerminationCriteriaNotSatisfied
-
- select parents for reproduction
- perform recombination and mutation
- evaluate population
-
30The GA Cycle of Reproduction
children
reproduction
modification
modified children
parents
evaluation
population
evaluated children
deleted members
discard
31Population
population
- Chromosomes could be
- Bit strings
(0101 ... 1100) - Real numbers (43.2 -33.1 ...
0.0 89.2) - Permutations of element (E11 E3 E7 ... E1
E15) - Lists of rules (R1 R2 R3
... R22 R23) - Program elements (genetic
programming) - ... any data structure ...
32Reproduction
children
reproduction
parents
population
Parents are selected at random with selection
chances biased in relation to chromosome
evaluations.
33Chromosome Modification
children
- Modifications are stochastically triggered
- Operator types are
- Mutation
- Crossover (recombination)
modification
modified children
34Mutation Local Modification
Before (1 0 1 1 0 1 1 0) After (0
1 1 0 0 1 1 0) Before (1.38 -69.4
326.44 0.1) After (1.38 -67.5 326.44
0.1)
- Causes movement in the search space(local or
global) - Restores lost information to the population
35Crossover Recombination
- P1 (0 1 1 0 1 0 0 0) (0 1 0 0 1 0 0
0) C1 - P2 (1 1 0 1 1 0 1 0) (1 1 1 1 1 0 1
0) C2 - Crossover is a critical feature of genetic
- algorithms
- It greatly accelerates search early in evolution
of a population - It leads to effective combination of schemata
(subsolutions on different chromosomes)
36Evaluation
- The evaluator decodes a chromosome and assigns it
a fitness measure - The evaluator is the only link between a
classical GA and the problem it is solving
modified children
evaluated children
evaluation
37Deletion
population
- Generational GAentire populations replaced with
each iteration - Steady-state GAa few members replaced each
generation
discarded members
discard
38Evolutionary Algorithms
Evolutionary Algorithm (EA) is an optimization
method which uses the computational model of
natural selection.
Initial population(first generation)
The EAs handle several potential solutions
simultaneously (population). These potential
solutions referred to as individuals. Every
individual represents a point in the search
space. Likes in the natural world, the more
successful individuals, which have bigger fitness
values, have higher probability to transmit their
genes into the new generation. The next
generation of individuals is generated from the
actual population using selection, mutation,
crossover.
Calculate fitness values(based on objectives)
Selection
Crossover and Mutation
New generation
End
39An Abstract Example
Distribution of Individuals in Generation 0
Distribution of Individuals in Generation N
Genetic Optimization Toolbox gademox
40A Simple Example
- The Traveling Salesman Problem
- Find a tour of a given set of cities so that
- each city is visited only once
- the total distance traveled is minimized
41TSP Example 30 Cities
42Representation
- Representation is an ordered list of city
- numbers known as an order-based GA.
- 1) London 3) Dunedin 5) Beijing 7)
Tokyo - 2) Venice 4) Singapore 6) Phoenix 8)
Victoria - CityList1 (3 5 7 2 1 6 4 8)
- CityList2 (2 5 7 6 8 1 3 4)
43Crossover
- Crossover combines inversion and
- recombination
-
- Parent1 (3 5 7 2 1 6 4 8)
- Parent2 (2 5 7 6 8 1 3 4)
- Child (5 8 7 2 1 6 3 4)
- This operator is called the Order1 crossover.
44Mutation
- Mutation involves reordering of the list
-
- Before (5 8 7 2 1 6 3 4)
- After (5 8 6 2 1 7 3 4)
45Solution i (Distance 941)
46Solution j(Distance 800)
47Solution k(Distance 652)
48Best Solution (Distance 420)
49Overview of Performance
50A Simple Example
- The Gene is by far the most sophisticated
program around. - - Bill Gates, Business Week, June 27, 1994
51Considering the EA Technology
Almost eight years ago ... people at Microsoft
wrote a program that uses some genetic things
for finding short code sequences. Windows 2.0 and
3.2, NT, and almost all Microsoft applications
products have shipped with pieces of code created
by that system. - Nathan Myhrvold, Microsoft
Advanced Technology Group, Wired, September 1995
52Issues for EA Practitioners
- Choosing basic implementation issues
- representation
- population size, mutation rate, ...
- selection, deletion policies
- crossover, mutation operators
- Termination Criteria
- Performance, scalability
- Solution is only as good as the evaluation
function (often hardest part)
53Benefits of Evolutionary Algorithms
- Concept is easy to understand
- Modular, separate from application
- Supports multi-objective optimization
- Good for noisy environments
- Always an answer answer gets better with time
- Inherently parallel easily distributed
54Benefits of Evolutionary Algorithms (cont.)
- Many ways to speed up and improve a GA-based
application as knowledge about problem domain is
gained - Easy to exploit previous or alternate solutions
- Flexible building blocks for hybrid applications
- Substantial history and range of use
55When to Use a EA
- Alternate solutions are too slow or overly
complicated - Need an exploratory tool to examine new
approaches - Problem is similar to one that has already been
successfully solved by using a GA - Want to hybridize with an existing solution
- Benefits of the GA technology meet key problem
requirements
56Some EA Application Types
57Conclusions
The underlying idea of these algorithms is the
separation of solutions from descriptions of the
solutions. These algorithms work on these
descriptions and not on the solutions themselves.
Neumann proposed that non-trivial
self-reproduction should include the ability to
undergo inheritable mutations as well as the
ability to make another organism like the
original.
PSO and EA
Neumanns Self-reproduction
Self-replicating machines Potential
solutions Description of machines Coded
individuals Mutation of description Mutation
and recombination Growing complexity Growing
fitness
Self-organization scheme Selective organization
scheme
58Tools
- http//www.it.uom.gr/pdp/DigitalLib/EC/ec_soft.htm