artificial intelligence search methodologies
DESCRIPTION
Artificial Intelligence Search Methodologies. Dr Rong Qu School of Computer Science University of Nottingham Nottingham, NG8 1BB, UK [email protected] Population Based Algorithms. Optimisation Problems : Methods. Meta-heuristics - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/1.jpg)
Artificial Intelligence Search Methodologies
Dr Rong QuSchool of Computer Science
University of NottinghamNottingham, NG8 1BB, UK
Population Based Algorithms
![Page 2: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/2.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 2
Optimisation Problems: Methods
Meta-heuristics Guide an underlying heuristic/search to
escape from being trapped in a local optima and to explore better areas of the solution space
Single solution approaches Simulated Annealing, Tabu Search, Variable
Neighbourhood Search, etc.; Population based approaches
Genetic algorithm, Memetic algorithm, Ant Algorithms, Particle Swarm Intelligence, etc.;
![Page 3: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/3.jpg)
AI Search Algorithms – Population Based 3
Population Based Algorithms
Local search Concerning only one solution at a particular
time during the search Search is very much restricted to local regions,
so called local Population based algorithms
concern a population of solutions at a time
Konstanz, May 2014
![Page 4: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/4.jpg)
GENETIC ALGORITHMS
Konstanz, May 2014 AI Search Algorithms – Population Based 4
Charles Darwin1809 - 1882
![Page 5: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/5.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 5
GA Algorithm – basic idea
Based on survival of the fittest Algorithm uses terms from genetics: population,
chromosome and gene Developed extensively by John Holland in
mid 70’s Three modules
the evaluation module, the population module and the reproduction module
Solutions (individuals) often coded as bit strings
![Page 6: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/6.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 6
GA Algorithm – basic idea
1859
Origin of the Species
Survival of the Fittest
![Page 7: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/7.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 7
GA Algorithm – basic idea
1975
Genetic Algorithms
Artificial Survival of the Fittest
![Page 8: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/8.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 8
GA Algorithm – basic idea
1989
Genetic Algorithms
Foundations and Applications
![Page 9: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/9.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 9
GA Algorithm – basic steps
Initial population Evaluations on individuals Breeding
Choose suitable parents (proportion to evaluation rating)
Produce two offspring (Probability of breeding)
MutationDomain knowledge – evaluation function
![Page 10: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/10.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 10
GA Algorithm – basic steps
1. Initialise a population of chromosomes Ci2. Evaluate each Ci (individual) in the population
Create new C by using Ci in the current population (using crossover and mutation)
Delete members of the existing population to make way for the new members
Evaluate the new members and insert them into the population
Repeat (evolve) until some termination condition is reached (normally based on time or number of populations produced)
3. Return the best Ci as the solution
![Page 11: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/11.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 11
GA Algorithm – basic steps
Generate Initial Population
Generate Initial Population
Population Generation 'n'
Population Generation 'n'
Crossover Population
Crossover Population
Mutate Population
Mutate Population
n = n + 1 n = n + 1
n = 1
Final Population
Final Population
SelectionSelection
n<20?
![Page 12: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/12.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 12
GA Algorithm – encoding
The decision variables of a problem arenormally encoded into a finite length string
This could be a binary string or a list of integersFor example :
or0 1 1 0 1 1 0 1 0 2 3 4 11 45
We could also representnumbers as coloured boxes
![Page 13: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/13.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 13
Evaluation Module
Responsible for evaluating a chromosome Only part of the GA that has domain
knowledge. The rest of the GA modules are simply operating on (typically) bit strings with no information about the problem
A different evaluation module is needed for each problem
![Page 14: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/14.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 14
Population Module
Responsible for maintaining the population
Initialization Random Known Solutions Heuristics
Population Size Elitism
![Page 15: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/15.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 15
Population Module
Deletion Delete-All : replaces all the members of the
current population by the same number of chromosomes created
Steady-State : replaces n old members by n new members.But: replace the worst, random or the parents individuals?
Steady-State-No-Duplicates : Same as steady-state but also checks that no duplicate chromosomes are added to the population.
![Page 16: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/16.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 16
Reproduction Module
Parent selection Fitness techniques Crossover & mutation
![Page 17: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/17.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 17
Parent Selection
Roulette Wheel Selection Select the parents with a probability in
proportion to their fitness Tournament
Select two individuals at random. The individual with the highest evaluation becomes the parent. Repeat to find a second parent
![Page 18: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/18.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 18
Fitness Techniques
• Fitness-Is-Evaluation : Simply use the fitness of the chromosome equal to its evaluation
• Linear Normalization : The chromosomes are sorted by decreasing the evaluation value. Then the chromosomes are assigned a fitness value that starts with a constant value and decreases linearly. The initial value and the decrement are parameters to the techniques
![Page 19: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/19.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 19
Crossover Operators
One Point Crossover inOne Point Crossover inGenetic AlgorithmsGenetic Algorithms
© Graham Kendall
http://cs.nott.ac.uk/~gxk
Uniform Crossover inUniform Crossover inGenetic AlgorithmsGenetic Algorithms
© Graham Kendall
http://cs.nott.ac.uk/~gxk
Order based crossoverCycle crossoverPartially matched crossover
![Page 20: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/20.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 20
Mutation
• A method of ensuring premature convergence does not occur
• Usually set to a small value
• Dynamic mutation and crossover rates
![Page 21: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/21.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 21
Example I
• Crossover probability, PC = 1.0• Mutation probability, PM = 0.0• Maximise f(x) = x3 - 60 * x2 + 900 * x +100• 0 <= x >= 31• x can be represented using five binary digits
0 100
1 9412 16683 22874 28045 32256 35567 38038 39729 4069
10 410011 407112 398813 385714 368415 347516 323617 297318 269219 239920 210021 180122 150823 122724 96425 72526 51627 34328 21229 12930 100
0
500
1000
1500
2000
2500
3000
3500
4000
4500
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37
Max : x = 10
f(x) = x^3 - 60x^2 + 900x + 100
![Page 22: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/22.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 22
Example I
• Generate random initial individualsMaximise f(x) = x^3 - 60 * x^2 + 900 * x +100 (0 <= x <=
31)
chromosome binary string x f(x)
P1 11100 28 212
P2 01111 15 3475
P3 10111 23 1227
P4 00100 4 2804
Total 7718
Average 1929.50
![Page 23: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/23.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 23
Example I
• Choose Parents, using roulette wheel selection
• Crossover point, 1, is chosen randomlyRoulette wheel Parents
4116 P3
1915 P2
1 0 1 1 1
0 1 1 1 1
P3
P2
1 1 1 1 1
0 0 1 1 1
C1
C2
0 0 1 0 0
0 1 1 1 1
P4
P2
0 0 1 1 1
0 1 1 0 0
C3
C4
![Page 24: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/24.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 24
Example I
New generation
chromosome binary string x f(x)
P1 11111 31 131
P2 00111 7 3803
P3 00111 7 3803
P4 01100 12 3889
Total 11735
Average 2933.75
Maximise f(x) = x^3 - 60 * x^2 + 900 * x +100 (0 <= x <= 31)
![Page 25: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/25.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 25
Example I
chromosome
binary string
x f(x)
P1 11100 28 212
P2 01111 15 3475
P3 10111 23 1227
P4 00100 4 2804
Total 7718
Average 1929.50
chromosome
binary string
x f(x)
P1 11111 31
131
P2 00111 7 3803
P3 00111 7 3803
P4 01100 12
3889
Total 11735
Average 2933.75
Two generations
Mutation
Maximise f(x) = x^3 - 60 * x^2 + 900 * x +100 (0 <= x <= 31)
What problem do you see with the populations?
what chance is there of finding the global optimum?
![Page 26: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/26.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 26
GA - performance
There are a number of factors which affect the performance of a genetic algorithm The size of the population The initial population Selection pressure (elitism, tournament) The cross-over probability The mutation probability Defining convergence Local optimisation
![Page 27: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/27.jpg)
Konstanz, May 2012 AI Search Algorithms – Population Based 27
GA - applications
Combinatorial optimisation problems Cutting and packing problems vehicle routing problems job shop scheduling
![Page 28: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/28.jpg)
Konstanz, May 2012 AI Search Algorithms – Population Based 28
GA - applications
Combinatorial optimisation problems portfolio optimization multimedia multicast routing knapsack problem
![Page 29: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/29.jpg)
ANT ALGORITHMS
Konstanz, May 2014 AI Search Algorithms – Population Based 29
Ants are practically blind but they still manage to find their way to and from food. How do they do it?
![Page 30: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/30.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 30
Ant Algorithms
Ant systems are a population based approach. In this respect it is similar to genetic algorithms
There is a population of ants, with each ant finding a solution and then communicating with the other ants
![Page 31: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/31.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 31
Ant Algorithms
A
B
C
H
D
F
E
G
![Page 32: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/32.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 32
Ant Algorithms
A
B
C
D
F
E
d=0.5
d=0.5
d=1
d=1
d=1
d=1
![Page 33: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/33.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 33
Ant Algorithms
Time, t, is discrete
At each time unit an ant moves a distance, d of 1
Once an ant moved, it lays down 1 unit of pheromone
At t = 0, there is no pheromone on any edge
![Page 34: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/34.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 34
Ant Algorithms
At t=1 there will be 16 ants at B and 16 ants at D.At t=2 there will be 8 ants at D and 8 ants at B. There will be 16 ants at EThe intensities on the edges will be as follows
FD = 16, AB = 16, BE = 8, ED = 8, BC = 16 and CD = 16
A
B
C
D
F
E
0.5
0.5
1
1
11
16 ants are moving from A - F and another 16 are
moving from F - A
![Page 35: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/35.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 35
Ant Algorithms
We need to allow the ants to explore paths and follow the best paths with some probability in proportion to the intensity of the pheromone trail
We do not want them simply to follow the route with the highest amount of pheromone on it, else our search will quickly settle on a sub-optimal (and probably very sub-optimal) solution
![Page 36: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/36.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 36
Ant Algorithms
The probability of an ant following a certain route is a function, not only of the pheromone intensity but also a function of what the ant can see (visibility)
The pheromone trail must not build unbounded. Therefore, we need “evaporation”
![Page 37: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/37.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 37
Ant Algorithms – initial ideas
Dorigo (1996) Based on real world phenomena Ants, despite almost blind, are able to find
their way to the food source using the shortest route
If an obstacle is placed, ants have to decide which way to take around the obstacle.
![Page 38: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/38.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 38
Ant Algorithms – initial ideas
Dorigo (1996) Initially there is a 50-50 probability as to
which way they will turn Assume one route is shorter than the other Ants taking the shorter route will arrive at a
point on the other side of the obstacle before the ants which take the longer route.
![Page 39: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/39.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 39
Ant Algorithms – initial ideas
Dorigo (1996) As ants walk they deposit pheromone trail. Ants have taken shorter route will have
already laid trail So ants from the other direction are more
likely to follow that route with deposit of pheromone.
![Page 40: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/40.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 40
Ant Algorithms – initial ideas
Dorigo (1996) Over a period of time, the shortest route will
have high levels of pheromone. The quantity of pheromones accumulates faster
on the shorter path than on the longer one There is positive feedback which reinforces that
behaviors so that the more ants follow a particular route, the more desirable it becomes.
![Page 41: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/41.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 41
Ant Algorithms
![Page 42: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/42.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 42
Ant Algorithms - TSP
At the start of the algorithm, one ant is placed in each city
Time, t, is discrete. t(0) marks the start of the algorithm. At t+1 every ant will have moved to a new city
Assuming that the TSP is represented as a fully connected graph, each edge has an intensity of trail on it. This represents the pheromone trail laid by the ants
Let Ti,j(t) represent the intensity of trail edge (i,j) at time t
Variations have been tested by Dorigo
![Page 43: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/43.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 43
Ant Algorithms - TSP
An ant decides which town to move to next, with a probability that is based on the distance to that city AND the amount of trail intensity on the connecting edge
The distance to the next town, is known as the visibility, nij, defined as 1/dij, dij is the distance between cities i and j.
At each time unit evaporation takes place, at a rate p, a value between 0 and 1
Variations have been tested by Dorigo
![Page 44: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/44.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 44
Ant Algorithms - TSP
In order to stop ants visiting the same city in the same tour a data structure, Tabu, is maintained
Tabuk is defined as the list for the kth ant and it holds the cities that have already been visited
Variations have been tested by Dorigo
![Page 45: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/45.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 45
Ant Algorithms - TSP
After each ant tour the trail intensity on edge (i,j) is updated using the following formula
Tij (t + n) = p . Tij(t) + ΔTij
otherwise
ntandttimebetween
touritsinjiedgeusesantkththeif
L
Q
kk
ijT )(
),(
0
Q is a constantLk is the tour length of the kth antp is the evaporation coefficient
![Page 46: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/46.jpg)
otherwise
allowedjifntTallowedk
ntTt
k
ikikk
ijijk
ijp
0
][)]([
][)]([)( .
.
Konstanz, May 2014 AI Search Algorithms – Population Based 46
Ant Algorithms - TSP
Transition Probability
where and are control parameters that control the relative importance of trail versus visibility
![Page 47: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/47.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 47
Ant Algorithms - TSP
Left: Trail distribution at the beginning;Right: Trail distribution after 100 cycles. (Dorigo et al., 1996)
![Page 48: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/48.jpg)
Konstanz, May 2014 AI Search Algorithms – Population Based 48
Ant Algorithms - Applications
Travelling Salesman Problem (TSP) Facility Layout Problem Vehicle Routing Stock Cutting …
Marco Dorigo maintains a page devoted to the subject at
http://iridia.ulb.ac.be/~mdorigo/ACO/ACO.html contains information about ant algorithms as well as
links to the main papers published on the subject
![Page 49: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/49.jpg)
APPENDIX
Konstanz, May 2014 AI Search Algorithms – Population Based 49
Examples of Genetic Algorithms
![Page 50: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/50.jpg)
Genetic Algorithm Example II Genetic Algorithm Example II
Traveling Salesman Problema number of citiescosts of traveling between cities
a traveling sales man needs to visit all these cities exactly once and return to the starting city
What’s the cheapest route?
Konstanz, May 2014 50AI Search Algorithms – Population Based
![Page 51: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/51.jpg)
Traveling Salesman Problem
Konstanz, May 2014 51AI Search Algorithms – Population Based
Genetic Algorithm Example II Genetic Algorithm Example II
![Page 52: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/52.jpg)
Initial generation5 8 1 … … 84 32 27 54 67P1
78 81 27 … … 9 11 7 44 24P2
8 1 7 … … 9 16 36 24 19P30
…
6.5
7.8
6.0
Any idea of other ways to generate the initial population?
Konstanz, May 2014 52AI Search Algorithms – Population Based
Genetic Algorithm Example II Genetic Algorithm Example II
![Page 53: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/53.jpg)
Choose pairs of parents
78 81 27 … … 9 11 7 44 24P2
8 1 7 … … 9 16 36 24 19P30 6.0
7.8
Crossover
78 81 27 … … 9 16 36 24 19C2
8 1 7 … … 9 11 7 44 24C1 5.9
6.2
13
Konstanz, May 2014 53AI Search Algorithms – Population Based
Genetic Algorithm Example II Genetic Algorithm Example II
![Page 54: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/54.jpg)
Next generation
78 81 27 … … 9 16 36 24 19P2
8 1 7 … … 9 11 7 44 24P1 5.9
6.2
6.0…
Konstanz, May 2014 54AI Search Algorithms – Population Based
7 8 2 … … 5 10 76 4 79P2
Genetic Algorithm Example II Genetic Algorithm Example II
![Page 55: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/55.jpg)
Traveling Salesman ProblemNo. of cities: 100Population size: 30
Cost: 6.37Generation: 88
Cost: 6.34Generation: 1100
Konstanz, May 2014 55AI Search Algorithms – Population Based
Genetic Algorithm Example II Genetic Algorithm Example II
![Page 56: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/56.jpg)
Many applications of genetic algorithms.Best suited to problems where the efficient solutions are not already known.Strength of GA's: ability to heuristically search for solutions when all else fails.If you can represent the solutions to the problem in a suitable format, such as a series of 1's and 0's, then the GA will do the rest.
Konstanz, May 2014 56AI Search Algorithms – Population Based
Genetic Algorithm Example III Genetic Algorithm Example III
![Page 57: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/57.jpg)
Applying Genetic Algorithms
to Personnel Scheduling
Applying Genetic Algorithms
to Personnel Scheduling
Personnel scheduling in healthcareis usually a very complex operation
which has a profound effect upon theefficient usage of expensive resources.
Konstanz, May 2014 57AI Search Algorithms – Population Based
Genetic Algorithm Example III Genetic Algorithm Example III
![Page 58: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/58.jpg)
A number of nursesA number of shifts each dayA set of constraints
shift coverageone shift per dayresting timeworkload per monthconsecutive shiftsworking weekends…
Konstanz, May 2012 58AI Search Algorithms – Population Based
Genetic Algorithm Example III Genetic Algorithm Example III
![Page 59: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/59.jpg)
Konstanz, May 2012 59AI Search Algorithms – Population Based
Genetic Algorithm Example III Genetic Algorithm Example III
![Page 60: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/60.jpg)
Genetic Algorithm- Initial population
- construct rosters- repair infeasible ones
Konstanz, May 2012 60AI Search Algorithms – Population Based
Genetic Algorithm Example III Genetic Algorithm Example III
![Page 61: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/61.jpg)
Genetic Algorithm- Select parents- Recombine rows in the two rosters
- repair infeasible ones
+
Konstanz, May 2012 61AI Search Algorithms – Population Based
Genetic Algorithm Example III Genetic Algorithm Example III
![Page 62: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/62.jpg)
Genetic Algorithm- Mutation- Local optimiser
Genetic Algorithm Example III Genetic Algorithm Example III
![Page 63: Artificial Intelligence Search Methodologies](https://reader036.vdocuments.mx/reader036/viewer/2022062721/568137e7550346895d9f95ec/html5/thumbnails/63.jpg)
Population SizeCrossover ProbabilityMutation ProbabilityLocal Optimiser
500.7
0.001ON
Konstanz, May 2014 63AI Search Algorithms – Population Based
Genetic Algorithm Example III Genetic Algorithm Example III