Академический Документы
Профессиональный Документы
Культура Документы
Genetic Algorithms
An
An
algorithm
algorithm
is a set of instructions that is
is a set of instructions that is
repeated to solve a problem.
repeated to solve a problem.
A
A
genetic algorithm
genetic algorithm
conceptually follows
conceptually follows
steps inspired by the biological processes of
steps inspired by the biological processes of
evolution.
evolution.
Also known as
Also known as
evolutionary algorithms
evolutionary algorithms
,
,
genetic algorithms demonstrate self
genetic algorithms demonstrate self
organization and adaptation similar to the
organization and adaptation similar to the
way that the fittest biological organism
way that the fittest biological organism
survive and reproduce.
survive and reproduce.
initiali!e pop"lation#
e$al"ate pop"lation#
while Termination%riteria&otSatis'ied
select parents 'or reprod"ction#
per'orm crosso$er and m"tation#
repair()#
e$al"ate pop"lation#
*
*
Every loop called
generation
%oncepts
%oncepts
Selection
Selection
replicates the most successful
replicates the most successful
solutions found in a population at a rate
solutions found in a population at a rate
proportional to their relative (uality
proportional to their relative (uality
Recombination
Recombination
(%rosso$er)
(%rosso$er)
decomposes two
decomposes two
distinct solutions and then randomly mies
distinct solutions and then randomly mies
their parts to form novel solutions
their parts to form novel solutions
Mutation
Mutation
randomly perturbs a candidate
randomly perturbs a candidate
solution
solution
'imulated )volution
'imulated )volution
+epresentation of an individual
+epresentation of an individual
,itness ,unction
,itness ,unction
+eproduction -ethod
+eproduction -ethod
'election %riteria
'election %riteria
+epresenting an Individual
+epresenting an Individual
!he problem& there are things with given value and !he problem& there are things with given value and
size. !he knapsack has given capacity. 'elect things size. !he knapsack has given capacity. 'elect things
to maimize the values. to maimize the values.
)ncoding& )ach bit says, if the corresponding thing is )ncoding& )ach bit says, if the corresponding thing is
in the knapsack in the knapsack
4ermutation )ncoding
4ermutation )ncoding
Reproduction
Reproduction
- !hrough
- !hrough
reprod"ction
reprod"ction
,
,
genetic algorithms produce new
genetic algorithms produce new
generations of improved solutions by
generations of improved solutions by
selecting parents with higher fitness
selecting parents with higher fitness
ratings or by giving such parents a
ratings or by giving such parents a
greater probability of being contributors
greater probability of being contributors
and by using random selection
and by using random selection
How o''spring are prod"ced
How o''spring are prod"ced
(Recombination)
(Recombination)
Crossover
Crossover
- -any genetic
- -any genetic
algorithms use strings of binary symbols for
algorithms use strings of binary symbols for
chromosomes, as in our 5napsack eample,
chromosomes, as in our 5napsack eample,
to represent solutions.
to represent solutions.
%rosso$er
%rosso$er
means
means
choosing a random position in the string #say,
choosing a random position in the string #say,
after 9 digits$ and echanging the segments
after 9 digits$ and echanging the segments
either to the right or to the left of this point
either to the right or to the left of this point
with another string partitioned similarly to
with another string partitioned similarly to
produce two new off spring.
produce two new off spring.
%rosso$er E,ample
%rosso$er E,ample
4arent A 011011
4arent A 011011
4arent B 101100
4arent B 101100
.
.
-ate the parents by splitting each number
-ate the parents by splitting each number
as shown between the second and third
as shown between the second and third
digits #position is randomly selected$
digits #position is randomly selected$
01@1011
01@1011
10@1100
10@1100
%rossover )ample
%rossover )ample
011100 011100
101011 101011
Mutation
Mutation
-
-
-"tation
-"tation
is an arbitrary
is an arbitrary
change in a situation. 'ometimes it is
change in a situation. 'ometimes it is
used to prevent the algorithm from
used to prevent the algorithm from
getting stuck. !he procedure changes a
getting stuck. !he procedure changes a
1 to a 0 to a 1 instead of duplicating
1 to a 0 to a 1 instead of duplicating
them. !his change occurs with a very
them. !his change occurs with a very
low probability #say 1 in 1000$
low probability #say 1 in 1000$
1 0 1 0 1 1 1
1 1 0 0 0 1 1
Parent 1
Parent 2
1 0 1 0 0 1 1
1 1 0 0 1 1 0
Child 1
Child 2
Mutation
Genetic Algorithm Operators
Genetic Algorithm Operators
-"tation and %rosso$er
-"tation and %rosso$er
%rossover Bperators
%rossover Bperators
-utation&
-utation&
!he recipe eample&
!he recipe eample&
1-9-8 may be changed to 1-8-8 or 8-9-8,
1-9-8 may be changed to 1-8-8 or 8-9-8,
giving two new offspring. Dow oftenE Dow
giving two new offspring. Dow oftenE Dow
many digits changeE Dow bigE
many digits changeE Dow bigE
#parameters to ad"ust$
#parameters to ad"ust$
-ore eamples&
-ore eamples&
%rossover
%rossover
+ecipe &
+ecipe &
4arents 1-8-8 F 8-9-8. %rossover point
4arents 1-8-8 F 8-9-8. %rossover point
after the first digit. Generate two
after the first digit. Generate two
offspring& 8-8-8 and 1-9-8.
offspring& 8-8-8 and 1-9-8.
%an have one or two point crossover.
%an have one or two point crossover.
%rossover 2 4ermutation
%rossover 2 4ermutation
)ncoding
)ncoding
Single point crosso$er Single point crosso$er - one crossover point is selected, till this - one crossover point is selected, till this
point the permutation is copied from the first parent, then the point the permutation is copied from the first parent, then the
second parent is scanned and if the number is not yet in the second parent is scanned and if the number is not yet in the
offspring it is added offspring it is added
# #. 1 2 3 40 . 1 2 3 40 : < > =$ G # : < > =$ G #3 4 2 5 60 3 4 2 5 60 = < 9 1$ 3 # = < 9 1$ 3 #. 1 2 3 4 . 1 2 3 4 : > = <$ : > = <$
-"tation -"tation
Order changing Order changing - two numbers are selected and echanged - two numbers are selected and echanged
#1 #1 1 1 8 ; 7 : 8 ; 7 : 6 6 = <$ 3H #1 = <$ 3H #1 6 6 8 ; 7 : 8 ; 7 : 1 1 = =
<$ <$
%rossover 2 ?alue )ncoding
%rossover 2 ?alue )ncoding
%rosso$er
%rosso$er
All crossovers from
All crossovers from
7inary encoding
7inary encoding
can be
can be
used
used
-"tation
-"tation
Adding Adding a small number #for real value encoding$ - to a small number #for real value encoding$ - to
selected values is added #or subtracted$ a small selected values is added #or subtracted$ a small
number number
#
#1.9= 7.:> 1.9= 7.:> 1865 1865 38.. 38.. 7.77$ 3H #1.9= 7.:> 7.77$ 3H #1.9= 7.:> 1892 1892 3811 3811 7.77$ 7.77$
'election %riteria
'election %riteria
,itness proportionate 2 each individual, ,itness proportionate 2 each individual, I, I, has the has the
probability fitness(I)/sum_over_all_individual_j probability fitness(I)/sum_over_all_individual_j
itness(j itness(j$, where $, where itness(I) itness(I) is the fitness function is the fitness function
value for individual value for individual I! I!
+ank selection 2 sorts individual by fitness and the +ank selection 2 sorts individual by fitness and the
probability that an individual will be selected is probability that an individual will be selected is
proportional to its rank in this sorted list. proportional to its rank in this sorted list.
,itness ,unction
,itness ,unction
;
;
Start<
Start<
Generate random population of
Generate random population of
n
n
chromosomes #suitable solutions for
chromosomes #suitable solutions for
the problem$
the problem$
;Fitness<
;Fitness<
)valuate the fitness
)valuate the fitness
f(")
f(")
of
of
each chromosome
each chromosome
"
"
in the population
in the population
;&ew pop"lation<
;&ew pop"lation<
%reate a new
%reate a new
population by repeating following
population by repeating following
steps until the new population is
steps until the new population is
complete
complete
O"tline o' the :asic Genetic Algorithm
O"tline o' the :asic Genetic Algorithm
38 38
;
;
Selection<
Selection<
'elect two parent chromosomes
'elect two parent chromosomes
from a population according to their fitness #the
from a population according to their fitness #the
better fitness, the bigger chance to be selected$
better fitness, the bigger chance to be selected$
!he idea is to choose the better parents.
!he idea is to choose the better parents.
48 48
;%rosso$er<
;%rosso$er<
*ith a crossover probability cross
*ith a crossover probability cross
over the parents to form a new offspring
over the parents to form a new offspring
#children$. If no crossover was performed,
#children$. If no crossover was performed,
offspring is an eact copy of parents.
offspring is an eact copy of parents.
58 58
;-"tation<
;-"tation<
*ith a mutation probability mutate
*ith a mutation probability mutate
new offspring at each locus #position in
new offspring at each locus #position in
chromosome$.
chromosome$.
O"tline o' the :asic Genetic Algorithm
O"tline o' the :asic Genetic Algorithm
98 98
;
;
Accepting<
Accepting<
4lace new offspring in a new
4lace new offspring in a new
population
population
68 68
;Replace<
;Replace<
6se new generated population
6se new generated population
for a further run of algorithm
for a further run of algorithm
=8 =8
;Test<
;Test<
If the end condition is satisfied,
If the end condition is satisfied,
stop
stop
,
,
and return the best solution in current
and return the best solution in current
population
population
./8 ./8
;Loop<
;Loop<
Go to step
Go to step
1
1
!ermination condition
!ermination condition
+epresentation #encoding$
+epresentation #encoding$
4ossible individualIs encoding
4ossible individualIs encoding
Bit strings #0101 ... 1100$ Bit strings #0101 ... 1100$
+eal numbers #;8.9 -88.1 ... 0.0 >=.9$ +eal numbers #;8.9 -88.1 ... 0.0 >=.9$
4ermutations of element #)11 )8 )< ... )1 )17$ 4ermutations of element #)11 )8 )< ... )1 )17$
Jists of rules #+1 +9 +8 ... +99 +98$ Jists of rules #+1 +9 +8 ... +99 +98$
... any data structure ... ... any data structure ...
+epresentation #cont$
+epresentation #cont$
*hen choosing an encoding method rely on the
following key ideas
#uperindividuals
#uperindividuals
cause convergence #that may
cause convergence #that may
be premature$
be premature$
Jinear +anking 'election
Jinear +anking 'election
Based on sorting of individuals by decreasing fitness
!he probability to be etracted for the ith individual
in the ranking is defined as
2 1 ,
1
1
) 1 ( 2
1
) (
=
n
i
n
i p
where can be interpreted as
the epected sampling rate of
the best individual
!ournament 'election
!ournament 'election
Tournament Selection:
randomly select two individuals and the one
with the highest rank goes on and reproduces
cares only about the one with the higher rank,
not the spread between the two fitness scores
puts an upper and lower bound on the chances
that any individual to reproduce for the next
generation eual to! )2s 2r + 1* / s
2
" s is the si#e of the population
" r is the rank of the $winning$ individual
can be generali#ed to select best of n individuals
+ecombination #%rossover$
+ecombination #%rossover$
@ )nables the evolutionary process
to move toward promising
regions of the search space
@ -atches good parents% sub-solutions
to construct better offspring
-utation
-utation
?"rpose@
?"rpose@
to simulate the effect of errors that
to simulate the effect of errors that
happen with low probability during duplication
happen with low probability during duplication
Res"lts@
Res"lts@
- -ovement in the search space
- -ovement in the search space
- +estoration of lost information to the population
- +estoration of lost information to the population
)valuation #fitness function$
)valuation #fitness function$
!he fitness
!he fitness
f
f
of a candidate solution to the
of a candidate solution to the
-AMBA) problem is the number of ones in
-AMBA) problem is the number of ones in
its genetic code
its genetic code
i
i f
i f
) (
) (
4
*e repeat the etraction
as many times as the
number of individuals we
need to have the same
parent population size
#: in our case$
)ample #selection9$
)ample #selection9$
'uppose that, after performing selection, we get
the following population&
s
1
0 & 1111'1'1'1 (s
1
)
s
2
0 & 111'11'1'1 (s
*
)
s
*
0 & 111'1111'1 (s
)
)
s
+
0 & '111'''1'1 (s
2
)
s
)
0 & '1'''1''11 (s
+
)
s
-
0 & 111'1111'1 (s
)
)
)ample #crossover1$
)ample #crossover1$
Aet we mate strings for crossover. ,or each
couple we decide according to crossover
probability #for instance 0.:$ whether to actually
perform crossover or not
'uppose that we decide to actually perform
crossover only for couples #s
1
O, s
9
O$ and #s
7
O, s
:
O$.
,or each couple, we randomly etract a
crossover point, for instance 9 for the first and 7
for the second
)ample #crossover9$
)ample #crossover9$
s
1
0 & 1111'1'1'1
s
2
0 & 111'11'1'1
s
)
0 & '1'''1''11
s
-
0 & 111'1111'1
Before crossover&
After crossover&
s
1
00 & 111'11'1'1
s
2
00 & 1111'1'1'1
s
)
00 & '1'''111'1
s
-
00 & 111'11''11
)ample #mutation1$
)ample #mutation1$
!he final step is to apply random mutation& for each bit that
we are to copy to the new population we allow a small
probability of error #for instance 0.1$
Before applying mutation&
s
1
00 & 111'11'1'1
s
2
00 & 1111'1'1'1
s
*
00 & 111'1111'1
s
+
00 & '111'''1'1
s
)
00 & '1'''111'1
s
-
00 & 111'11''11
)ample #mutation9$
)ample #mutation9$
After applying mutation&
s
1
000 & 111'1''1'1 f (s
1
000 ) & -
s
2
000 & 111111'1'' f (s
2
000 ) & (
s
*
000 & 111'1'1111 f (s
*
000 ) & ,
s
+
000 & '111'''1'1 f (s
+
000 ) & )
s
)
000 & '1'''111'1 f (s
)
000 ) & )
s
-
000 & 111'11'''1 f (s
-
000 ) & -
)ample #end$
)ample #end$
In one generation, the total population fitness
changed from 8; to 8<, thus improved by P=Q
At this point, we go through the same process
all over again, until a stopping criterion is met
E,ample @
E,ample @
S"ppose a Genetic Algorithm "ses chromosomes o' the 'orm ,Aa7cde'gh S"ppose a Genetic Algorithm "ses chromosomes o' the 'orm ,Aa7cde'gh
with a 'i,ed length o' eight genes 8 Each gene can 7e any digit 7etween / with a 'i,ed length o' eight genes 8 Each gene can 7e any digit 7etween /
and = 8 Let the 'itness o' indi$id"al , 7e calc"lated as @ and = 8 Let the 'itness o' indi$id"al , 7e calc"lated as @
'(,) A(aB7)+(cBd)B(eB')+ ( gBh) '(,) A(aB7)+(cBd)B(eB')+ ( gBh)
And let the initial pop"lation consist o' 'o"r indi$id"als ,.C 888 C,3 with the And let the initial pop"lation consist o' 'o"r indi$id"als ,.C 888 C,3 with the
'ollowing chromosomes @ 'ollowing chromosomes @
D. A 5 4 3 . 2 4 2 1 D. A 5 4 3 . 2 4 2 1
F(,.) A(5B4)+(3B.)B(2B4)+(2B1) A = F(,.) A(5B4)+(3B.)B(2B4)+(2B1) A =
D1 A 6 9 . 1 5 5 / . D1 A 6 9 . 1 5 5 / .
F(,1) A (6B9)+(.B1)B(5B5)+(/B.) A 12 F(,1) A (6B9)+(.B1)B(5B5)+(/B.) A 12
D2 A 1 2 = 1 . 1 6 4 D2 A 1 2 = 1 . 1 6 4
F(,2) A (1B2)+(=B1)B(.B1)+(6B4) A +.5 F(,2) A (1B2)+(=B1)B(.B1)+(6B4) A +.5
D3A 3 . 6 4 1 / = 3 D3A 3 . 6 4 1 / = 3
F(,3) A (3B.)+(6B4)B(1B/)+(=B3) A +.= F(,3) A (3B.)+(6B4)B(1B/)+(=B3) A +.=
The arrangement is ( ass"me ma,imi!ation ) The arrangement is ( ass"me ma,imi!ation )
D1 D1 ,. ,. ,2 ,2 ,3 ,3
( the 'ittest indi$id"al ) ( the 'ittest indi$id"al ) ( least 'it indi$id"al ) ( least 'it indi$id"al )
4ut the calculations in table
4ut the calculations in table
for simplicity
for simplicity
Indi$id"als Indi$id"als
String String
Representation Representation
Fitness Fitness
Arrangement Ass"me Arrangement Ass"me
ma,imi!ation ma,imi!ation
M1 M1
:7;18789 :7;18789 = = M9#fittest individual$ M9#fittest individual$
M9 M9
><19::01 ><19::01 98 98 M1#second fittest individual$ M1#second fittest individual$
M8 M8
98=919>7 98=919>7 -1: -1: M8 #third fittest individual$ M8 #third fittest individual$
M; M;
;1>790=; ;1>790=; -1= -1= M; #least fit individual$ M; #least fit individual$
'o Average fitness &-0.<7 Best & 98 *orst & -1=
Average fitness 3 # =G98G -1: G -1=$N ; 3-0.<7
E E D1 A 6 D1 A 6 9 9 . . 1 1 5 5 5 5 / / . .
D. A 5 D. A 5 4 4 3 3 . . 2 2 4 4 2 2 1 1
O''spring . A 6 O''spring . A 6 9 9 . . 1 1 2 2 4 4 2 2 1 1
O''spring 1 A 5 O''spring 1 A 5 4 4 3 3 . . 5 5 5 5 / / . .
D. A 5 D. A 5 4 4 3 3 . . 2 2 4 4 2 2 1 1
D2 A 1 D2 A 1 2 2 = = 1 1 . . 1 1 6 6 4 4
O''spring 2 A 5 O''spring 2 A 5 4 4 = = 1 1 . . 1 1 2 2 1 1
O''spring 3 A 1 O''spring 3 A 1 2 2 3 3 . . 2 2 4 4 6 6 4 4
Middle crossover
crossover crossover
M9 3 > M9 3 > < < 1 1 9 9 : : : : 0 0 1 1
M8 3 9 M8 3 9 8 8 = = 9 9 1 1 9 9 > > 7 7
Bffspring 7 3 > Bffspring 7 3 > 8 8 1 1 9 9 : : : : > > 1 1
Bffspring : 3 9 Bffspring : 3 9 < < 1 1 9 9 : : 9 9 > > 1 1
Bffspring 1 3 > Bffspring 1 3 > < < 1 1 9 9 8 8 7 7 8 8 9 9
F (O''spring .) A(6B9)+(.B1)B(2B4)+(2B1) A .4 F (O''spring .) A(6B9)+(.B1)B(2B4)+(2B1) A .4
Bffspring 9 3 : Bffspring 9 3 : 7 7 ; ; 1 1 : : : : 0 0 1 1
F (O''spring 1) A(5B4)+(3B.)B(5B5)+(/B.) A .9 F (O''spring 1) A(5B4)+(3B.)B(5B5)+(/B.) A .9
Bffspring 8 3 : Bffspring 8 3 : 7 7 = = 9 9 1 1 9 9 8 8 9 9
F (O''spring 2) A(5B4)+(=B1)B(.B1)+(2B1) A +1 F (O''spring 2) A(5B4)+(=B1)B(.B1)+(2B1) A +1
Bffspring ; 3 9 Bffspring ; 3 9 8 8 ; ; 1 1 8 8 7 7 > > 7 7
F (O''spring 3) A(1B2)+(3B.)B(2B4)+(6B4) A +4 F (O''spring 3) A(1B2)+(3B.)B(2B4)+(6B4) A +4
Bffspring 7 3 > Bffspring 7 3 > 8 8 1 1 9 9 : : : : > > 1 1
F (O''spring 4) A(6B2)+(.B1)B(5B5)+(6B.) A .. F (O''spring 4) A(6B2)+(.B1)B(5B5)+(6B.) A ..
Bffspring : 3 9 Bffspring : 3 9 < < 1 1 9 9 : : 9 9 > > 1 1
F (O''spring 5) A(1B9)+(.B1)B(5B1)+(6B.) A 4 F (O''spring 5) A(1B9)+(.B1)B(5B1)+(6B.) A 4
Indi$id"als Indi$id"als String Representation String Representation Fitness Fitness
Bffspring 1 Bffspring 1 ><198789 ><198789 17 17
Bffspring Bffspring 9 9 :7;1::01 :7;1::01 1< 1<
Bffspring Bffspring 8 8 :7=91989 :7=91989 -9 -9
Bffspring ; Bffspring ; 98;187>7 98;187>7 -7 -7
Bffspring 7 Bffspring 7 ><=91901 ><=91901 11 11
Bffspring : Bffspring : 98=9::01 98=9::01 7 7
4ut the calculation in table for simplicity
A$erage 'itness @ 58622 :est @ .9 Forst @ +4
'o that , the overall fitness is improved , since the average
is better and worst is improved .
Average fitness 3 #17G1<G -7 G -9 G 11G7 $N : 3 :.>888
)ample& !he 5napsack
)ample& !he 5napsack
4roblem
4roblem
0eight: 0eight: , . % , . % 10 % + % 10 % + %
4ill it to get the ma3imum bene#it 4ill it to get the ma3imum bene#it
Solutions ta2e the #orm o# a string o# 15s and 05s Solutions ta2e the #orm o# a string o# 15s and 05s
Solutions: lso 2no6n as strings o# genes called Solutions: lso 2no6n as strings o# genes called
Chromosomes Chromosomes
1. 0101010 1. 0101010
9. 1100100 9. 1100100
8. 0100111 8. 0100111
GA E,ample@ The GnapsacH
GA E,ample@ The GnapsacH
?ro7lem
?ro7lem
E,ample@ The GnapsacH
E,ample@ The GnapsacH
?ro7lem
?ro7lem
1. 0101010
1. 0101010
9. 1100100
9. 1100100
8. 0100111
8. 0100111
5napsack )ample
5napsack )ample
'olution 1
'olution 1
Benefit > G 9 G = 3 1=
Benefit > G 9 G = 3 1=
*eight > G 10 G : 3 9;
*eight > G 10 G : 3 9;
Item
Item
1
1
9
9
8
8
;
;
7
7
:
:
<
<
Sol"tion
Sol"tion
/
/
.
.
/
/
.
.
/
/
.
.
/
/
Benefit
Benefit
7
7
>
>
8
8
9
9
<
<
=
=
;
;
*eight
*eight
<
<
>
>
;
;
10
10
;
;
:
:
;
;
5napsack )ample
5napsack )ample
'olution 9
'olution 9
*eight > G ; G : G ; 3 99
*eight > G ; G : G ; 3 99
Item
Item
1
1
9
9
8
8
;
;
7
7
:
:
<
<
Sol"tion
Sol"tion
/
/
.
.
/
/
/
/
.
.
.
.
.
.
Benefit
Benefit
7
7
>
>
8
8
9
9
<
<
=
=
;
;
*eight
*eight
<
<
>
>
;
;
10
10
;
;
:
:
;
;
5napsack )ample
5napsack )ample
Methods of selection
Random ,est, !ournament, Roulette "heel,
!runcation, Rank, #$ponential, olt%man, Stead&
state, 'nteractive and binar& tournament
selection(
In our eample&
suppose ?m"t 30.9
generate number between 0-1 #0.01$
0.01T30.9#yes$ apply mutation.
Generate number between 1->#:$
0 1 / 1 0 1 0 1 3H 0 1 . 1 0 1 0 1
Ko this for each chromosome in population.
!ermination %riteria
!ermination %riteria
There e,ist three termination condition
type@
.+!ime@in secondsC in minutes and may be in
hours according to the problem that you have
it.
1+*umber of )enerations@ in hundreds, in
thousands may be in millions according to
the problem you have it.
2+conver)ence@ when =7Q of populations
have the same fitness value we can say the
convergence started to appear and the user
can stop its genetic program to take the
result.
!he 5napsack 4roblem
!he 5napsack 4roblem
!he knapsack
!he knapsack
problem, though
problem, though
simple, has
simple, has
many important
many important
applications
applications
including
including
determining
determining
what items to
what items to
take on a space
take on a space
ship mission.
ship mission.
Genetic Algorithms
Genetic Algorithms
Simulating biological models o# beha"ior and e"olution Simulating biological models o# beha"ior and e"olution
Scheduling Scheduling
Transportation Transportation
Telecommunication Telecommunication
Schedule ssembl! lines at :ol"o Truc2 (orth Schedule ssembl! lines at :ol"o Truc2 (orth
merica merica
Dri"er scheduling in a public transportation s!stem Dri"er scheduling in a public transportation s!stem
=#ten genetic algorithm h!brids 6ith other I methods =#ten genetic algorithm h!brids 6ith other I methods