Partha - IIT Kanpur

Download Report

Transcript Partha - IIT Kanpur

R.E.A.C.H.ing Optimum Designs
through Processes Inspired by
Principles of Evolution
Partha Chakroborty
Professor
Department of Civil Engineering
IIT, Kanpur
The Next Half-Hour
Evolution
Genetic Algorithm
Some Applications of Genetic Algorithm
Evolution 101 (I)
Evolution
Evolution is the process by which modern organisms
have descended from ancient ones
Microevolution
Microevolution
is
evolution
within
a
single
population; (a population is a group of organisms
that share the same gene pool). Often this kind of
evolution is looked upon as change in gene
frequency within a population
Evolution 101 (II)
For evolution to occur
Heredity
Information needs to be passed on from one generation to
the next
Genetic Variation
There has to be differences in the characteristics of
individuals in order for change to occur
Differential Reproduction
Some individuals need to (get to) reproduce more than others
thereby increasing the frequency of their genes in the next
generation
Evolution 101 (III)
Heredity
Heredity is the transfer of characteristics (or
traits) from parent to offspring through genes
Evolution 101 (IV)
Genetic Variation
Is about variety in the population and hence
presence of genetic variation improves chances of
coming up with “something new”
The primary mechanisms
variation are:
Mutations
Gene Flow
of
achieving
genetic
Sexual Reproduction
Evolution 101 (V)
Mutation
It is a random change in DNA
It can be beneficial, neutral or harmful to the
organism
Not all mutations matter to evolution
Evolution 101 (VI)
Gene Flow
Migration of genes from one population to
another
If the migrating genes did not exist previously in
the incident population then such a migration adds
to the gene pool
Evolution 101 (VII)
Sexual Reproduction
This type of producing young can introduce new
gene combinations through genetic shuffling
Evolution 101 (VIII)
Differential Reproduction
As the genes show up as traits (phenotype) the
individuals get affected by what is around; some
die young while others live
Those who live compete for mates; only the
winners pass on their gene to the next generation
In some sense the fitter (with respect to the
current environment) gets to leave more of his/her
genes in the next population; often the term
fitness is used to describe the relative ability of
individuals to pass on their genes
Evolution 101 (IX)
Overview
Heredity
Variation
Differential Reproduction
From Organisms to Abstract Beings (I)
The fight to survive (selection operation)
110011
101010
000010
110010
010010
111001
000000
From Organisms to Abstract Beings (II)
The Survivors and Mating
110010
Offsprings
111 010
101010
110 00 0
111001
111
0 010
010010
110011
Genetic Algorithms (I)
Basic Questions
How does one decide who survives
How does one decide how
survivor produces offsprings
successfully
each
How are the offsprings related to the parents
How does one ensure that genetic variation is
maintained even though with every generation
individuals are supposed to become fitter
Genetic Algorithms (II)
Population of
individuals or alternative
(feasible) solutions
Next generation
of
individuals
Arbitrarily change
some characteristic
Select individuals Heredity
& exchange characteristics to create
new individuals
Evaluate individuals
on their fitness
Select individuals
based on fitness
for subsequent mating
Mating pool of
“fitter”
individuals
Genetic Algorithms (III)
What is an individual?
z
x,y,z
y
24,2,11
1001,0000,1101
x
i
i
d e
a
b c
g
h
h
f
d
a b
c
e
g
f
(a,b)(b,c)(c,d)…(h,i)
a,b,c,d,…i
Genetic Algorithms (IV)
Basic Tasks
Generation of initial population
Evaluation
Selection (Reproduction operation)
Exchange characteristics to develop new
individuals (Crossover operation)
Arbitrarily modify characteristics in new
individuals (Mutation operation)
Genetic Algorithms (V)
Reproduction / Selection Operator
The purpose is to bias the mating pool (those who
can pass on their traits to the next generation)
with fitter individuals
Assign p as the prob. of choosing
an individual for the mating pool
p is proportional to the fitness
Choose an individual with prob. p
and place it in the mating pool
Continue till the mating pool size
is the same as the initial population’s
Choose n individuals randomly
Pick the one with highest fitness
Place n copies of this individual in
the mating pool
Choose n different individuals and
repeat the process till all in the
original population have been chosen
Genetic Algorithms (VI)
Crossover operator
1001101
1100111
1001111
1100101
Genetic Algorithms (VII)
Mutation
1001101
1000101
Genetic Algorithms (VIIIa)
Results from a small example:
Minimize
f ( x1 , x2 )  ( x12  x2  11) 2  ( x1  x22  7) 2
0  x1 , x2  6
Initial Population
Generation 10
Generation 20
Generation 30
Generation 40
Generation 50
Genetic Algorithms (VIIIb)
Genetic Algorithms (IX)
Issues
Representation
Generation of initial population
Evaluation
Reproduction operation
Crossover and Mutation operations and
feasibility issues
Genetic Algorithms
Benefits to engineers as an optimization tool
Problem formulation is easier
Allows external procedure based declarations
Can work naturally in a discrete environment
Optimizing with Genetic Algorithms
Some Examples
Some Applications
Decision making / decision support systems
Engineering component / equipment design
Engineering process optimization
Portfolio optimization
Route optimization; optimal layout; optimal packing
Schedule optimization
Protein structure analysis
Transit Routing: Description
Transit Routing: Characterization (I)
The purpose is to determine a set of routes
which serve many people quickly and without
using too many transfers.
The number of passengers using a particular
route depends on the layout of the route as well
as the layout of the other routes.
Evaluation of a route set (note, it is not very
meaningful to evaluate a route in isolation) is
not easy. Obtaining an objective “function” is
not possible.
Transit Routing: Characterization (II)
A solution is a “route set;” each route within a
route set is a meaningful juxtaposition of links.
Defining “meaningful juxtaposition” (a feasible
route) through algebraic relations is difficult.
Traditional MP formulation is at best extremely
difficult and most probably impossible.
Procedure
based
determination
of
the
“goodness” and “feasibility” are more practical.
Transit Routing: Formulation (I)
The problem is formulated for a GA based
solution.
The initial population of route sets are created
using problem specific information.
Tournament selection is chosen.
Problem
specific
crossover
operators are devised.
and
mutation
Transit Routing: Formulation (II)
Representation……….
Transit Routing: Formulation (III)
Crossover (inter-string)……….
Parents
Children
Transit Routing: Formulation (IV)
Crossover (intra-string)……….
Transit Routing: Formulation (V)
Mutation……….
Transit Routing: Results
0
4
1
2
3
5
8
14
6
7
11
Mandl’s Swiss
network --- a
benchmark problem
9
10
12
13
Single Vehicle Routing: Description (I)
Single Vehicle Routing: Description (II)
Nodes can be visited in any
order and at any time
Travelling Salesman
Problem
Some nodes cannot be
visited before others; no
restrictions on visit time
Pick-up and Delivery
Problem
Some nodes cannot be
visited before others;
restrictions on visit time
Dial-a-ride Problem
Single Vehicle Routing: Description (II)
J
J
I
A
H
K
B
D
F
H
K
B
G
C
I
A
G
C
D
E
A-B-C-H-G-D-E-F-I-J-K-A
A-B-C-D-E-F-H-G-I-J-K-A
A-B-C-D-E-F-H-G-K-J-I-A
A-B-C-D-E-F-G-K-J-H-I-A
F
E
A general formulation for all types of
SVRP: A mutation-only GA approach
Single Vehicle Routing: Formulation
Single Vehicle Routing: Results (I)
Near-optimal (obtained
here)
Optimal (reported in liter.)
TSP; 202 node problem; geospherical distances,
(GR202 --- a benchmark problem)
Single Vehicle Routing: Results (II)
Optimum
PDP; 70 node problem; Euclidean distances,
(ST70PD --- a modified benchmark problem)
Single Vehicle Routing: Results (IIIa)
GA evolving a good TSP route, Eil51, Initial Best
Single Vehicle Routing: Results (IIIb)
GA evolving a good TSP route, Eil51, Intermediate
Single Vehicle Routing: Results (IIIc)
GA evolving a good TSP route, Eil51, Intermediate
Single Vehicle Routing: Results (IIId)
GA evolving a good TSP route, Eil51, Intermediate
Single Vehicle Routing: Results (IIIe)
GA evolving a good TSP route, Eil51, Intermediate
Single Vehicle Routing: Results (IIIf)
GA evolving a good TSP route, Eil51, Final Best
Single Vehicle Routing: Results (IIIg)
GA evolving a good TSP route, Eil51, Initial Best
Transit Scheduling: Description (I)
Stops
Transfer stops
Transit Scheduling: Description (II)
From a scheduling standpoint determining the
schedule of bus arrivals and departures at a
transfer stop is important as these stops typically
represent major stops and also because at these
stops passengers can transfer from one route to
the other.
Given the fleet size, the idea is to determine
the schedule such that the total time spent
waiting (for a bus) by transferring and nontransferring passengers is minimized.
Transit Scheduling: Characterization (I)
Let’s look at one transfer station with 3 routes ……
time
Transit Scheduling: Characterization (II)
k-th bus
Waiting time for non-transferring passengers ……
Arrival rate
Route i
time
IWT  
i k
d ik  d ik 1
k
k 1
v
(
t
)(
d

d
 ik i i  t )dt
0
Transit Scheduling: Characterization (III)
k
Waiting time for transferring passengers ……
Route i
Route j
l
time
T T   (d  a )
i j k l
j i
kl
ij
l
j
k
i
k
ij
Transit Scheduling: Formulation (I)
Minimize N1 .(IWT )  N 2 .(TT )
Subject to
d ik  aik  simax
i, k
d ik  aik  simin
i, k
(d lj  aik )  M (1   ijkl )  0
i, j , k , l, j  i
kl

 ij  1
i, j , k , j  i
l
aik  aik 1  hi
i, k
(d  a )
i, j , k , l , j  i
l
j
k
i
kl
ij
T
Transit Scheduling: Formulation (II)
The MP formulation is an NLMIP problem. Efficient
solution techniques do not exist.
A GA formulation was attempted to solve this and
similar problems. The general characteristics of
the formulation are:
(a) Headway and stopping times used as variables
(b) Variables d are computed through external
procedures
(c) Binary coding, single point crossover, and
bitwise mutation used
(d) One set of constraints remained; these were
handled using penalty functions
Transit Scheduling: Results (I)
3 routes, 8-10-12
buses, only IWT
3 routes, 8-10-12
buses, TT+IWT
Transit Scheduling: Results (II)
3 transfer stations, 6
routes, 10-12-8-12-8-10
buses, TT+IWT
R5
R4
S2
R2
S1
S3
R1
R3
R6
Transit Scheduling: Results (III)
3 routes, fleet
distribution unknown,
only IWT
3 routes, fleet
distribution unknown,
TT+IWT
That’s it !!!!!
Thank you