Title: Parameter Estimation for SSystems using Evolutionary MultiObjective Optimization
1Parameter Estimation for S-Systems using
Evolutionary Multi-Objective Optimization
- Pros Naval
- Computer Vision Machine Intelligence Group
- Department of Computer Science
- University of the Philippines-Diliman
2Basic Facts about Yeast Fermentation
- Yeast Cells undergo alcohol fermentation.
- pathway results in the formation of ethanol and
carbon dioxide. - Net 2 ATP are gained by this pathway from a
glucose molecule. - Common Uses of Yeast
- 1. Bread
- Carbon dioxide released from the yeast cells
causing dough to rise. Alcohol evaporates
during baking. - 2. Alcohol production
- Sparkling wines wines where the carbon dioxide
is trapped. - Other wines carbon dioxide is allowed to escape.
3The Fermentation Pathway
- External glucose is transported into cell
Transport is inhibited by Glucose-6-phosphate - Hexokinase phosphorylates internal glucose into
glucose-6-phosphate - In vivo glucose-6-phosphate can flow towards
ethanol, glycogen, trehalose, oxidative and
non-oxidative pentose pathways. Only two are
considered here. - Glucose-6-phosphate and fructose-6-phosphate are
at equilibrium are very readily converted into
each other. - 3. Phosphofructokinase phosphorylates
fructose-6-phosphate - 4. Fructose-1,6-diphosphate can be used to
produce glycerol or phosphoenolpyruvate. - 5. Pyruvate kinase catalyses the production of
ethanol upon activation of fructose-1,6-diphosphat
e.
4The 5 Dependent Variables
5The 9 Independent Variables
6GMA Test System
- 5 Differential Equations, 9 Independent Variables
- 21 unknowns Chromosome has 21 floating-point
genes
7Constraints
- Precursor-Product Relations
- V1- V2 V51-
- a2 ß1 ß51
- g21 h11 h51,1
- g25 h15 h55,1
- g27 h17 h57,1
- etc.
8Time Course Data 40 Points
9Parameter Estimation
- Goal Estimate the values 21 parameters of the
system - from the given time course data.
- Use Evolutionary Multiobjective Optimization
10What are Genetic Algorithms ?
- Genetic Algorithms (GAs) are search algorithms
based on the mechanics of natural selection and
natural genetics. - GAs combine survival of the fittest among string
structures with a structured yet randomized
information exchange to form a search algorithm
with some of the innovative flair of human
search. - GAs effectively exploit historical information to
speculate on new search points with expected
improved performance. - GAs were developed by John Holland and colleagues
at the University of Michigan.
11Why GA ?
- Robustness balance between efficiency and
efficacy necessary for survival in many different
environments. - GAs are not fundamentally limited by restrictive
assumptions about the search space. - Continuity
- Existence of derivatives
- Unimodality (one-peaked search spaces)
12Genetic Algorithms
- Simple Genetic Algorithm
-
- initialize population
- evaluate population
- while termination criterion not reached
- select solutions for next population
- perform crossover and mutation
- evaluate population
-
13How GAs differ from Traditional Methods
- 1. GAs work with a coding of the parameter set,
not the parameters themselves. - 2. GAs search from a population of points, not a
single point - 3. GAs use pay-off information (objective
function) information, not derivatives or other
auxiliary knowledge. - 4. GAs use probabilistic transition rules, not
deterministic rules
14Other GA Features
- Most optimization methods move from a single
decision point to the next using some transition
rule to determine the next point. - point-to-point method lead to false peaks in
multimodal (many-peaked) search spaces - GAs work from a population of points
simultaneously climbing peaks in parallel
15Other GA Features
- Many search techniques require much auxiliary
information in order to work properly. - E.g. gradient techniques need derivatives
- GAs do not need auxiliary information. GAs only
require pay-off values
16Other GA Features
- GAs use probabilistic transition rules to guide
their search towards regions of the search space
with likely improvement.
17Desirable Properties of GAs
- Simplicity
- Parallelizability
- Robust
- Generality
18A Simple Genetic Algorithm
- Problem Maximize f(x) x2 on interval 0, 31
- 1. Encode x as a 5 bit binary string
- 2. Form Initial Population
- 01101
- 11000
- 01000
- 10011
- randomized through 20 successive flips
of an unbiased coin - 3. Define Operators
- Reproduction Operator
- Crossover Operator
- Mutation Operator
19Reproduction
- Reproduction process in which individual
strings are copied according to their objective
function values. - String with a higher value have a higher
probability of contributing one or more offspring
in the next generation (Darwinian survival of the
fittest principle)
20Reproduction
- To reproduce simply spin the wheel 4 times
- Once a string has been selected for reproduction,
an exact replica of the string is made. This
string is then entered into a mating pool for
further genetic operator action.
21Crossover Operation
- After reproduction, a simple crossover may
proceed in 2 steps - Members of the newly reproduced strings in the
mating pool are mated at random. - Each pair of string undergoes crossing over as
follows - An integer position k along the string is
selected uniformly at random between 1 and the
string length less one 1, l-1. Two new strings
are created by swapping all characters between
positions k1 and l inclusively - Example
- A1 01101 A1 01100
- A2 11000 A2 11001
22Mutation
- Mutation occasional (with small probability)
random alteration of the value of a string
position - Changing a 1 to 0 or vice-versa
- Mutation rate typically one mutation per one
thousand bits
23Computing the Second Generation
24The Second Generation
25Evolutionary Multiobjective Optimization (EMOO)
- Real-world optimization problems are most of the
time multiobjective in nature - Conflicting and competing objectives
- Trade-offs (cost and reliability, mass and
stability, etc) - Traditional Approach simplify multi-objective
problem into a single objective problem - Use penalty methods in which the different
criteria are weighted and summed to obtain a
scalar objective function which is to be
minimized or maximized - Multi-to-single objective transformation often
changes the problem to a different one
26Domination
- A 100, 80, 90, 100
- B 90, 80, 90, 100
- A dominates B because A is better than B in all
aspects. - C 90, 80, 90, 100
- D 80, 100, 70, 100
- C and D are non-dominated with respect to each
other. - we are interested in non-dominated vectors too
- Very distinct solutions
- Single-objective optimization throws away many
non-dominated vectors and forces us to accept
just one or a few very similar optimized
solutions.
27Multiobjective Optimization (MO)
- We want to find a vector x x1, x2, , xnT
satisfying the m inequality constraints - gi(x) 0 i 1, , m
- and the p equality constraints
- hi(x) 0 i 1, , p
- and which optimizes the vector function
- f(x) f1(x), f2(x), , f3(x) T
- where x x1, x2, , xnT is the vector of
decision variables.
28Pareto Optimality
- x is Pareto-optimal if there is no feasible
vector that would decrease one criterion without
causing a simultaneous increase in some other
criterion. - Pareto-optimum is very often not a single
solution but a set of solutions called
non-dominated solutions. - Pareto-optimal solutions are optimal in the
wider sense that no other solutions in the search
space are superior to them when all objectives
are considered.
29The Pareto Front
30Why Evolutionary Algorithms ?
- Classical Approaches
- Several independent optimization runs are
required to obtain an approximation of the
Pareto-optimal set synergies are not exploited
causing high computation overhead - For large scale problems, hardly any real
classical multi-objective optimization
techniques had previously been available (Horn,
1997) - Weighting method may be sensitive to the shape of
the Pareto-optimal front - Problem knowledge may be required which may not
be available - Evolutionary Computation Approach
- Single optimization run
- Large search spaces can be handled
- Generality Non-differentiable, non-continuous
objective functions - scalability
31Why Evolutionary Algorithms ?
- Evolutionary Algorithms seem to be especially
suited to Multi-objective optimization for two
main reasons - They capture multiple Pareto-optimal solutions in
a single simulation run - They exploit similarities of solutions by
recombination
32EMO Algorithms
- 1. Penalty-Function-Based Selection
- VEGA (Schaefer, 1994)
- 2. Pareto-Based Selection
- NPGA (Horn et. al. 1994)
- MOGA (Fonseca Fleming, 1993)
- 3. Elitism-based Selection
- SPEA (Zitzler et. Al. 2000)
- NSGA-II (Deb et. al. 2000)
- PAES (Knowles Corne, 2000)
- PESA (Corne et. al. 2000)
- 4. With Local Search
- MOGLS (Ishibuchi Murata, 1996), Jaszkiewicz
(2002)
33NSGA-II
- Basic Idea
- Generate a population of n children from n
parents - Population of parents and children are merged
- Non-dominated sort is performed to keep the best
n individuals for the next generation.
34Evolutionary Computation Issues
- Population Size
- Choice of GA Operators
- Operator Probabilities
- Representation of Decision Variables
- Selection
- Others elitism, niching, etc.
- These parameters interact in complex ways.
35- Crossover is useful for problems that rely on
building-block exchange. Mutation may destroy
already-found good information and may not be
suitable for such problems. - Use large crossover probability and small
mutation probability
36Difficulties encountered by EC Algorithms
- Multimodality presence of false attractors
- Deception lower-order schema are led to
sub-optimal solutions - Isolation (e.g. needle in the haystack problem)
no information is available to guide the search
in any direction - Collateral Noise noise hides the presence of a
good sub-solution in a solution
37Population Size
- Too small or too large a population size is
detrimental - Both require a large number of generations to
arrive at the optimum
38Chromosomal Representation of Problem
- The ai, ßi, gij, hij, parameters we want to
estimate are encoded as real-valued genes in the
chromosome. - Initialization 0.01, 0.5
- Constraints 1.0e-9, 1.0
- Macro repairs the sign of the parameters
39The Vector-Valued Fitness Function
- Other objective functions
- values of the numerically calculated dependent
variables - values of the numerically calculated slopes
40Simulations
- Settings
- 1. Gaussian Probabilities
- Mean (0.0, 0.1)
- Sigma (0.5, 0.1)
- Pm 0.1
- 2. Crossover Single-Point, pc 0.8
- 3. Population Sizes (500, 300, 100)
- Very Preliminary Results
- Solution found for pop. Size 500
- Generation 2260 (after 38 hrs)
- 1 minute/generation
413 Solutions Found
- Best Solution at Generation 2260
- x1' 0.403538 x2-0.109715 x6 -0.279625
x10.344337 x50.483996 x7 - x2' 0.279625 x10.344337 x50.483996 x7
-0.155649 x21e-09 x5-0.267273 x8 - 0.230363
x20.417923 x11 - x3' 0.155649 x21e-09 x5-0.267273 x8
-0.0276623 x30.378066 x50.37052 x9
x14-0.000762412 -0.0909049 x30.0350299
x40.785198 x5-0.302526 x12 - x4' 0.0797786 x30.378066 x50.37052 x9
x14-0.000762412 -0.131994 x30.0350299
x40.785198 x5-0.302526 x10 - x5' 0.0797786 x30.378066 x50.37052 x9
x14-0.000762412 0.131994 x30.0350299
x40.785198 x5-0.302526 x10 -0.155649 x21e-09
x5-0.267273 x8 - - 0.392697 x5 x13
42- Best Solution
- Objective1 (sum of differences in x) minimum
- Sol 2
- Objective1 (sum of differences in x) minimum
- Sol 3
- Objective2 (sum of differences in xdot) minimum
43X1 (Internal Glucose) Estimate
44X1 (Internal Glucose) Estimate
45X1 (Internal Glucose) Estimate
46X2 (Glucose-6-Phosphate) Estimate
47X2 (Glucose-6-Phosphate) Errors
48X3 (Fructose-1,6-diphosphate) Estimate
49X3 (Fructose-1,6-diphosphate) Errors
50X4 (Phosphoenolpyruvate) Estimate
51X4 (Phosphoenolpyruvate) Errors
52X5 (ATP) Estimate
53X5 (ATP) Errors
54Errors of Best Estimate
55X-dot Based Objective Function
56Summary (Best)
57Using 2 Objective Functions for Fitness
- Other EA Parameters are the same as before.
58The Vector-Valued Fitness Function
59X-Xdot Pareto Fronts
60- Choose Generation 2000
- Computation Time 34 hours
- Pareto Set
- 189 Members
- Select min x, mid, min xdot
61X1 (Internal Glucose) Generation 2000 Errors
62X2 (Glucose-6-Phosphate) Generation 2000 Errors
63X3 (Fructose-1,6-diphosphate) Generation 2000
Errors
64X4 (Phosphoenolpyruvate) Generation 2000 Errors
65X4 (Phosphoenolpyruvate) Generation 2000 Errors
66X5 (ATP) Generation 2000 Errors
67Errors of Best Estimate (Gen 2000)
68Errors of Mid Estimate (Gen 2000)
69Errors of Min Xdot Estimate (Gen 2000)
70Summary Generation 2000 (Min X)
71Future Work
- Determine
- Population Size
- Mutation Rate, Gaussian Probability
- Appropriate Crossover Type, Crossover Probability
- Add noise to data
- Effect of data size on estimate
- Whats next ?
- EMO SA ?
- EMO Local Search ?
- EMO SA Local Search ?
- Needed lots of computational resources