SlideShare une entreprise Scribd logo
1  sur  64
Télécharger pour lire hors ligne
Sandeep Kumar Poonia
Algorithms
Local Search Methods
By: Sandeep Kumar Poonia
Asst. Professor, Jagannath University, Jaipur
6/15/2013
Genetic algorithms
• Genetic algorithms is based on the concepts
from population genetics and evolution theory.
The algorithm are constructed to optimize
fitness of a population of elements through
crossover (recombination) and mutation
(perturbation) operations on their genes.
Sandeep Kumar Poonia
6/15/2013
The Ant algorithm is based on the observation of real ant’s
behavior. Ants can coordinate their activities via stigmergy, a
way of indirect communication through the modification of the
environment. The main idea of ant algorithm is to use self-
organizing principles of artificial agents which collaborate to
solve the problems.
Sandeep Kumar Poonia
6/15/2013
The Ant algorithm
Tabu search
• Tabu search is a deterministic iterative
improvement local search method with a
possibility to accept worse-cost local solution
in order to escape from local optimum. The set
of legal local solutions are restricted by a tabu
list which is designed to present from going
back to the recently visited solutions. The set
of solutions in tabe list are not accepted in the
next iteration.
Sandeep Kumar Poonia
6/15/2013
1
Particle Swarm Optimization (PSO) algorithm is a population-
based stochastic optimization method proposed by James
Kennedy and R. C. Eberhart in 1995. It is motivated by social
behavior of organisms such as bird flocking and fish schooling.
In the PSO algorithm, the potential solutions called particles, are
flown in the problem hyperspace. Change of position of a
particle is called velocity. The particle changes their position
with time. During flight, particle’s velocity is stochastically
accelerated toward its previous best position and toward a
neighborhood best solution. PSO has been successfully applied
to solve various optimization problems, artificial neural network
training, fuzzy system control, and others.
Sandeep Kumar Poonia
6/15/2013
1
The Bees Algorithm is a new population-based search algorithm,
first developed in 2005 by Pham DT etc. [1] and Karaboga.D [2]
independently. The algorithm mimics the food foraging
behaviour of swarms of honey bees. In its basic version, the
algorithm performs a kind of neighbourhood search combined
with random search and can be used for optimization problems.
Sandeep Kumar Poonia
6/15/2013
Contents
1 Introduction
2 Genetic Algorithms
3 Non-linear Programming Problems
4 Foundation of Genetic Algorithms
5 Metaheuristic Algorithms
Sandeep Kumar Poonia
6/15/2013
6. Simulated Annealing
7. Tabu Search
8. Ant Algorithms
9. Particle Swarm Optimization
10. Bee Algorithms
Sandeep Kumar Poonia
6/15/2013
11. The Other Bio-Inspired Metaheuristic Algorithms
12. Traveling Salesman Problems
13. Knapsack Problems
14. Set Covering Problems
15. Minimum Spanning Tree Problems
16. Flow Shop Scheduling Problems
17. Job Shop and Open Shop Scheduling Problems
Sandeep Kumar Poonia
6/15/2013
18. Bin Packing Problems
19. Data Mining
20. Quadratic Assignment Problems
21. Reliability Optimization Problems
22. Layout and Location Problems
Sandeep Kumar Poonia
6/15/2013
1. The Computational complexity
We do not expect NP-hard (and NP-complete) problems to be
solved in polynomial steps.
Ambati et al. (1991): An evolution algorithm that can achieve
heuristic solutions 25% worse than the expected optimal solution on
random Traveling Salesman Problem in O(NlogN) time.
Fogel (1993): An evolution algorithm that can achieve heuristic
solutions 10% worse than the expected optimal solution on random
Traveling Salesman Problem in O(N2) time.
Sandeep Kumar Poonia
6/15/2013
goal
state
current
state
initial
state
Algorithm – Problem Solving
2. Search Spaces (Solution Space)
How to do efficient search in the state space?
Sandeep Kumar Poonia
6/15/2013
1
1. To obtain a good initial state.
2. Goal identification (identify the optimal condition).
3. Control the search process.
For some problems, we are not able to identify the goal state.
Sandeep Kumar Poonia
6/15/2013
9
Evolution Process
01
02
0k
S
S
S

11
12
1k
S
S
S

21
22
2k
S
S
S

1
2
n
n
nk
S
S
S

. . . .  
Initial
Population
s
1st
Generation
2nd
Generation
n-th
Generation
. . . .
Genetic Algorithm, Ant Algorithm, Particle Swarm Optimization,
Bee Algorithm, Firefly Algorithm, . . .
Sandeep Kumar Poonia
6/15/2013
Example 1: Simplex algorithm for linear program
Goal identification: primal feasible & dual feasible condition
Goal identification:
1. The goal state can be identified. (e.g. linear program, convex program )
2. The goal state cannot be identified. (e.g. traveling salesman problem,
quadratic assignment problem, knapsack problem, scheduling
problems, . . . )
Control the search process: moving to improved adjacent basic
solution
Example 2: Steepest descent algorithm for convex program
Goal identification: Karash-Kuhn-Tucker condition
Control the search process: moving to the steepest descent
direction ( minimization problem)
Sandeep Kumar Poonia
6/15/2013
Example 4: Ant algorithm for the Traveling Salesman Problem
Goal identification: The optimal condition can not be identified
efficiently. Using heuristic rules to identify approximate solution.
Control the search process: pheromone & state transition
probability
Example 3: Genetic algorithm for the Traveling Salesman Problem
Goal identification: The optimal condition can not be identified
efficiently. Using heuristic rules to identify approximate solution.
Control the search process: Crossover, mutation and selection
operations.
Sandeep Kumar Poonia
6/15/2013
A state space of a Traveling Salesman Problem with n = 4.
(A X X X)
(A B X X)
(A C X X)
(A D X X)
(A B C D)
(A B D C)
(A C B D)
(A C D B)
(A D B C)
(A D C B)
Sandeep Kumar Poonia
6/15/2013
1









searchincomplete
space)theinsearch(partialSearchLocal
searchcomplete
sapce)theinsearchc(systematiSearchExact
MethodsSearch
3. Search Methods
Sandeep Kumar Poonia
6/15/2013
Exact search methods:
Advantage: To produce an optimal solution and It is able to
detect that a given problem has no feasible solution.
Disadvantage: It is time-consuming. For example, it is infeasible
for real-time problems.
Local search methods:
Advantage: It is time-efficient and easy to write a program.
Disadvantage: It may not produce an optimal solution and is not
able to detect that a given problem has no feasible
solution.
Traversal Search, Backtracking Algorithm, Branch and Bound
Algorithm, Dynamic Programming Method, etc.
Traditional Local search does not provide a mechanism for the
search to escape from a local optimum. The goal of local search is
find a solution which is as close as possible to the optimum.Sandeep Kumar Poonia
6/15/2013
local search
• local search is a metaheuristic method for solving
computationally hard optimization problems.
• Local search can be used on problems that can be
formulated as finding a solution maximizing a
criterion among a number of candidate solutions.
• Local search algorithms move from solution to
solution in the space of candidate solutions (the
search space) by applying local changes, until a
solution deemed optimal is found or a time bound
is elapsed.
Sandeep Kumar Poonia
6/15/2013
local search
• A local search algorithm starts from a
candidate solution and then iteratively
moves to a neighbor solution. This is only
possible if a neighborhood relation is
defined on the search space.
• Every candidate solution has more than one
neighbor solution; the choice of which one
to move to is taken using only information
about the solutions in the neighborhood of
the current one, hence the name local
search.
Sandeep Kumar Poonia
6/15/2013
Metaheuristic
• Metaheuristic designates a computational
method that optimizes a problem by
iteratively trying to improve a candidate
solution with regard to a given measure of
quality. Metaheuristics make few or no
assumptions about the problem being
optimized and can search very large spaces
of candidate solutions.
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Background and Motivation
Local Search Methods
Metaheuristics
Integer Programming
Exact Methods
Sandeep Kumar Poonia
6/15/2013
Background and Motivation
• Local Improvement
• Tabu Search
• Iterated Local Search
• Simulated annealing
• Genetic Algorithms
• Evolutionary algorithms
• Ant Colony
Optimization
• Scatter Search
• Memetic Algorithms
• Etc….
Local Search Methods
Metaheuristics
Sandeep Kumar Poonia
6/15/2013
Background and Motivation
• Branch-and-bound
• Branch-and-cut
• Column generation
• Cutting and price
• Dynamic programming
• Lagrangian relaxation
• Linear relaxation
• Surrogate relaxation
• Lower bounds
• Etc…
Integer Programming
Exact Methods
Sandeep Kumar Poonia
6/15/2013
Background and Motivation
• Good solutions for
complex and large-scale
problems
• Short running times
• Easily adapted
Local Search Methods
Metaheuristics
Integer Programming
Exact Methods
• Proved optimal
solutions
• Important
information on
the
characteristics
and properties of
the problem.
Sandeep Kumar Poonia
6/15/2013
Background and Motivation
Local Search Methods
Metaheuristics
Integer Programming
Exact Methods
Optimized Search
Heuristics
Sandeep Kumar Poonia
6/15/2013
1



MethodsSearchdPerturbate
MethodsSearchveConstructi
MethodsSearchLocal



MethodsSearchLocalStochastic
MethodsSearchLocalticDeterminis
MethodsSearchLocal


 
MethodsSearchveCoorperati
MethodsSearchvecoorperatiNon
MethodsSearchLocal
neighborhood search, simulated annea
population-based search
It makes use the information of a set of soluti
e.g. genetic algorithms, ant algorithm, . . .Sandeep Kumar Poonia
6/15/2013
Initial
state
Partial
solution
Complete
solution
Improved
solution
Accepted
solution
Constructive procedure Iteratively improvement
procedure
Refinement:
The best solution comes from a process of repeatedly refining and
inventing alternative solutions.
Sandeep Kumar Poonia
6/15/2013
A  J  D  E  F  K  H  I  G  C  B  A
(A J D E F K H I G C B) is a complete solution.
Constructive Search Methods:
To generate a complete solution by iteratively extending partial
solutions.
A CB
J D
F E
K
I
H G
5
3
5 5
6 3
5
4107
9
6
8
3
9
4
Sandeep Kumar Poonia
6/15/2013
Perturbation Search Methods:
For a complete solution, we can easily change it into new complete
solution by modifying one or more solution components.
For example, in TSP a complete solution (ABCD) is changes into a
new solution (ADCB) by interchange the positions of B and D.
( neighborhood search methods, mutation operations i.e. )
( The Liberty Times, July 27, 2005 )
Sandeep Kumar Poonia
6/15/2013
1
For a set of complete solutions, we can easily change them into new
complete solutions by modifying one or more solution components
among the solutions. ( crossover and mutation operations in genetic
algorithms. etc. )
Sandeep Kumar Poonia
6/15/2013
Deterministic Algorithms: In each search step, it progresses
toward the complete solution by making deterministic decision.
e.g. Simplex method, Quasi-Newton algorithms, tabu search and
many other conventional algorithms.
Deterministic algorithm will produce the same solution for a given
problem instance. Even for the same instance, the stochastic
algorithm usually product distinct solutions at each run.
Ackley’s function
Sandeep Kumar Poonia
6/15/2013
4. Stochastic Algorithms:
It make a random decision at each search step. e.g. Monte Carlo
algorithms, simulated annealing, genetic algorithms, ant algorithms,
etc.
There are two cases.
(1) The available information – the objective function to be
optimized – may be considered possible erroneous or corrupted by
random noise.
(2) For the case with perfect information, we may introduce a
random element to guide us when searching for the optimum
solution.
Sandeep Kumar Poonia
6/15/2013
1. They are efficient for the practical uses.
2. They are simple to implement. For many applications, stochastic
algorithm is the simplest algorithm available, or fastest, or both.
3. They are very general and can be implemented for a wide class of
optimization. For example, no differential function of real valued
parameters is required. It need not be expressible in any particular
constraint language.
4. They can run in parallel. The quality of solutions may be improved
time by time.
Why stochastic algorithms?
Sandeep Kumar Poonia
6/15/2013
Transition probabilities for a deterministic algorithm:
5
3
5
7
8 9
1
3
2
1
1
1
1
1
1
1
1
1
Minimize f (x)
subject to x  S
f (xk) = 2
Configuration Graph
Deterministic algorithm will produce the same solution for a given
problem instance.
Sandeep Kumar Poonia
6/15/2013
Transition probabilities for a stochastic algorithm:
Remark: Transition probabilities may be dependent on the number
of iterations.
S8
S1
S2
S9
S7
S5
S6
S3
S4
2/4
1/4 1/8
1/8 1/4
3/4
1/3
1/3
1/3
1/8
1/8
2/41/8 1/8
3/4
1/3
1/3
1/3
3/4
1/8
1/8
1/2
1/4
1/4
1/8
1/8
1/8
2/4
1/4
Even for the same instance, the stochastic algorithm usually product
distinct solutions at each run.Sandeep Kumar Poonia
6/15/2013
S8
S1
S2
S9
S7
S5
S6
S3
S4
1 - (e-2/T)/3 - (e-1/T)/3
(e-2/T)/3 (e-1/T)/3
1/8 (e-3/T)/3
3/4
1/3
1/3
1/3
2/3 - (e-1/T)/3
1/3
1/8 1/8
3/4
1/3
1/3
1/3
3/4
1/8
1/8
1 - (e-3/T)/3 -
(e-1/T)/3
1/4
1/8
1/8
1/8
2/4
1/4
(e-1/T)/3
(e-1/T)/3
T = the number of iterations.
Sandeep Kumar Poonia
6/15/2013
There are two ways to avoid getting trapped in a local optimum.
1. Accommodate nongreedy search move. It is allowed to move to
a neighborhood state with a worse function value. ( Tabu search,
simulated annealing, . . . )
2. To increase the number of edges in the configuration graph.
However, the denser the configuration graph is, the more
inefficient search step will be.
To enlarge the neighborhood for each state.
Sandeep Kumar Poonia
6/15/2013
General local search algorithm
• G(S) is the value of the objective under
schedule S
1. Let k=1. Start with a schedule S1 and let the
best schedule S0=S1
2. Choose a schedule Sc from the neighborhood of
Sk N(Sk)
3. If Sc is accepted let Sk+1 = Sc, otherwise let
Sk+1= Sk. If G(Sk+1)<G(S0) let S0=Sk+1
4. Let k=k+1. Terminate the search if the stopping
criteria are satisfied. Otherwise return to 2.
Sandeep Kumar Poonia
6/15/2013
Local search example
Schedule representation
• Let the vector S=(j1,…,jn) represent the
schedule
– jk=j if j is the kth job in the sequence
• Use EDD to construct the initial schedule
 S1= …
• The total weighted tardiness
– Let G(S) be SwjTj under schedule S
=> G(S1)= …
Sandeep Kumar Poonia
6/15/2013
Local search example
Neighborhood structure
• Manipulating S1
1. Pairwise adjacent interchange
2. Try to move a job to a different location in
the sequence
• Rules 1 and 2 above define two types of
neighborhoods N1 and N2
• N1(S1)=…
• N2(S1)=…
Sandeep Kumar Poonia
6/15/2013
Local search example
Choosing Sc
• Assume we use N1
• Methods for choosing Sc from N1(Sk)
1. Randomly
2. Move the job forward that has the highest
contribution to the objective
• Follow rule 2
 Interchange jobs … and …
 Sc = ( , , , )
 G(Sc) =
Sandeep Kumar Poonia
6/15/2013
Local search example
Acceptance criteria
• Is G(Sc) < G(Sk)?
• Should we consider accepting Sc if G(Sc) ≥
G(Sk) ?
• In this example we only accept if we get an
improvement in the objective
Sandeep Kumar Poonia
6/15/2013
Local search example
Stopping criteria
• Max number of iterations
• No or little improvement
– We would terminate the search since we did not
improve the current schedule
• Local optimal solution
– No solution S in N(Sk) satisfies G(S)<G(Sk)
Sandeep Kumar Poonia
6/15/2013
Local search
Design criteria
i. The representation of the schedule
ii. The design of the neighborhood
iii. The search process within the
neighborhood
iv. The acceptance-rejection criteria
v. Stopping criteria
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013
Simulated Annealing (SA)
• Annealing: Heating of a material (metal) to
a high temperature and then cooling it at a
certain rate to achieve a desired crystalline
structure
• SA: Avoids getting stuck at a local
minimum by accepting a worse schedule Sc
with probability
P(Sk,Sc)= exp(-
G(Sc)-G(Sk)
)bk
Sandeep Kumar Poonia
6/15/2013
SA: Temperature parameter
bk ≥ 0 is the temperature (also called cooling
parameter)
• Initially the temperature is high making moves to
a worse schedule more likely
~50% chance of accepting a slightly worse schedule
seems to work well
• As the temperature decreases the probability of
accepting a worse schedule decreases
– Often, bk=Tak for some .9<a<1 and T>0
Sandeep Kumar Poonia
6/15/2013
SA algorithm
1. Set k=1 and select b1.
Select S1 and set S0=S1.
2. Select Sc (randomly) from N(Sk).
i. If G(S0)<G(Sc)<G(Sk) set Sk+1=Sc and go to 3
ii. If G(Sc)<G(S0) set S0=Sk+1=Sc and go to 3
iii. If G(Sc)>G(Sk), generate a uniform random number Uk from a
Uniform(0,1) distribution (e.g., rand() in Excel)
If Uk≤P(Sk,Sc), set Sk+1=Sc; otherwise set Sk+1=Sk.
3. Select bk+1≤ bk.
Set k=k+1.
Stop if stopping criteria are satisfied; otherwise go to
2.
Sandeep Kumar Poonia
6/15/2013
Tabu (taboo?) search
• Tabu search tries to model human memory
processes
• A “tabu-list” is maintained throughout the
search
– Moves according to the items on the list are
forbidden
Sandeep Kumar Poonia
6/15/2013
Tabu search algorithm
1. Set k=1. Select S1 and set S0=S1.
2. Select Sc from N(Sk).
i. If the move SkSc is on the tabu list set Sk+1=Sk
and go to 3
ii. If SkSc is not on the tabu list set Sk+1=Sc.
Add the reverse move to the top of the tabu list and
delete the entry on the bottom.
If G(Sc)<G(S0), set S0=Sc.
3. Set k=k+1.
Stop if stopping criteria are satisfied;
otherwise go to 2.
Sandeep Kumar Poonia
6/15/2013
Sandeep Kumar Poonia
6/15/2013

Contenu connexe

Tendances

Ch2 3-informed (heuristic) search
Ch2 3-informed (heuristic) searchCh2 3-informed (heuristic) search
Ch2 3-informed (heuristic) search
chandsek666
 

Tendances (20)

Ch2 3-informed (heuristic) search
Ch2 3-informed (heuristic) searchCh2 3-informed (heuristic) search
Ch2 3-informed (heuristic) search
 
A Star Search
A Star SearchA Star Search
A Star Search
 
AI_Session 9 Hill climbing algorithm.pptx
AI_Session 9 Hill climbing algorithm.pptxAI_Session 9 Hill climbing algorithm.pptx
AI_Session 9 Hill climbing algorithm.pptx
 
A Brief Introduction to Machine Learning.pptx
A Brief Introduction to Machine Learning.pptxA Brief Introduction to Machine Learning.pptx
A Brief Introduction to Machine Learning.pptx
 
AI Lecture 3 (solving problems by searching)
AI Lecture 3 (solving problems by searching)AI Lecture 3 (solving problems by searching)
AI Lecture 3 (solving problems by searching)
 
Genetic Algorithm
Genetic AlgorithmGenetic Algorithm
Genetic Algorithm
 
AI_Session 1 Introduction to AI and intelligent agents.pptx
AI_Session 1 Introduction to AI and intelligent agents.pptxAI_Session 1 Introduction to AI and intelligent agents.pptx
AI_Session 1 Introduction to AI and intelligent agents.pptx
 
Introduction Artificial Intelligence a modern approach by Russel and Norvig 1
Introduction Artificial Intelligence a modern approach by Russel and Norvig 1Introduction Artificial Intelligence a modern approach by Russel and Norvig 1
Introduction Artificial Intelligence a modern approach by Russel and Norvig 1
 
Informed search algorithms.pptx
Informed search algorithms.pptxInformed search algorithms.pptx
Informed search algorithms.pptx
 
Genetic Algorithms and Ant Colony Optimisation (lecture slides)
Genetic Algorithms and Ant Colony Optimisation (lecture slides)Genetic Algorithms and Ant Colony Optimisation (lecture slides)
Genetic Algorithms and Ant Colony Optimisation (lecture slides)
 
AI_Session 7 Greedy Best first search algorithm.pptx
AI_Session 7 Greedy Best first search algorithm.pptxAI_Session 7 Greedy Best first search algorithm.pptx
AI_Session 7 Greedy Best first search algorithm.pptx
 
Uncertainty in AI
Uncertainty in AIUncertainty in AI
Uncertainty in AI
 
Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019
Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019
Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019
 
Semantic networks
Semantic networksSemantic networks
Semantic networks
 
Informed search
Informed searchInformed search
Informed search
 
Genetic algorithm raktim
Genetic algorithm raktimGenetic algorithm raktim
Genetic algorithm raktim
 
Algorithms Lecture 8: Pattern Algorithms
Algorithms Lecture 8: Pattern AlgorithmsAlgorithms Lecture 8: Pattern Algorithms
Algorithms Lecture 8: Pattern Algorithms
 
3 problem-solving-
3 problem-solving-3 problem-solving-
3 problem-solving-
 
A* Search Algorithm
A* Search AlgorithmA* Search Algorithm
A* Search Algorithm
 
State space search and Problem Solving techniques
State space search and Problem Solving techniquesState space search and Problem Solving techniques
State space search and Problem Solving techniques
 

En vedette

Algorithm chapter 10
Algorithm chapter 10Algorithm chapter 10
Algorithm chapter 10
chidabdu
 
Genetic Algorithms
Genetic AlgorithmsGenetic Algorithms
Genetic Algorithms
anas_elf
 
Genetic algorithms
Genetic algorithmsGenetic algorithms
Genetic algorithms
zamakhan
 

En vedette (20)

TabuSearch FINAL
TabuSearch  FINALTabuSearch  FINAL
TabuSearch FINAL
 
Algorithm chapter 10
Algorithm chapter 10Algorithm chapter 10
Algorithm chapter 10
 
Travelling salesman problem using genetic algorithms
Travelling salesman problem using genetic algorithms Travelling salesman problem using genetic algorithms
Travelling salesman problem using genetic algorithms
 
Travelling salesman problem ( Operation Research)
Travelling salesman problem ( Operation Research)Travelling salesman problem ( Operation Research)
Travelling salesman problem ( Operation Research)
 
Simulated Annealing - A Optimisation Technique
Simulated Annealing - A Optimisation TechniqueSimulated Annealing - A Optimisation Technique
Simulated Annealing - A Optimisation Technique
 
Genetic Algorithms
Genetic AlgorithmsGenetic Algorithms
Genetic Algorithms
 
Genetic algorithms
Genetic algorithmsGenetic algorithms
Genetic algorithms
 
Tabu search
Tabu searchTabu search
Tabu search
 
Elementary Landscape Decomposition of the Quadratic Assignment Problem
Elementary Landscape Decomposition of the Quadratic Assignment ProblemElementary Landscape Decomposition of the Quadratic Assignment Problem
Elementary Landscape Decomposition of the Quadratic Assignment Problem
 
All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomia...
All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomia...All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomia...
All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomia...
 
CS571: Gradient Descent
CS571: Gradient DescentCS571: Gradient Descent
CS571: Gradient Descent
 
Tsp problem
Tsp problemTsp problem
Tsp problem
 
Snm Tauctv
Snm TauctvSnm Tauctv
Snm Tauctv
 
Introduction to NP Completeness
Introduction to NP CompletenessIntroduction to NP Completeness
Introduction to NP Completeness
 
Inspiration to Application: A Tutorial on Artificial Immune Systems
Inspiration to Application: A Tutorial on Artificial Immune SystemsInspiration to Application: A Tutorial on Artificial Immune Systems
Inspiration to Application: A Tutorial on Artificial Immune Systems
 
Global optimization
Global optimizationGlobal optimization
Global optimization
 
Travelling salesman problem
Travelling salesman problemTravelling salesman problem
Travelling salesman problem
 
Gradient descent method
Gradient descent methodGradient descent method
Gradient descent method
 
Branch and bounding : Data structures
Branch and bounding : Data structuresBranch and bounding : Data structures
Branch and bounding : Data structures
 
Simulated Annealing
Simulated AnnealingSimulated Annealing
Simulated Annealing
 

Similaire à Lecture29

Ijarcet vol-2-issue-2-352-358
Ijarcet vol-2-issue-2-352-358Ijarcet vol-2-issue-2-352-358
Ijarcet vol-2-issue-2-352-358
Editor IJARCET
 
4-200626030058kpnu9avdbvionipnmvdadzvdavavd
4-200626030058kpnu9avdbvionipnmvdadzvdavavd4-200626030058kpnu9avdbvionipnmvdadzvdavavd
4-200626030058kpnu9avdbvionipnmvdadzvdavavd
mmpnair0
 
Bba q&a study final white
Bba q&a study final whiteBba q&a study final white
Bba q&a study final white
Greg Sterling
 
Particle swarm optimization (PSO) ppt presentation
Particle swarm optimization (PSO) ppt presentationParticle swarm optimization (PSO) ppt presentation
Particle swarm optimization (PSO) ppt presentation
LatestShorts
 

Similaire à Lecture29 (20)

18CSC305J – Artificial Intelligence - UNIT 1.pptx
18CSC305J – Artificial Intelligence - UNIT 1.pptx18CSC305J – Artificial Intelligence - UNIT 1.pptx
18CSC305J – Artificial Intelligence - UNIT 1.pptx
 
Lecture 3 general problem solver
Lecture 3 general problem solverLecture 3 general problem solver
Lecture 3 general problem solver
 
E034023028
E034023028E034023028
E034023028
 
Simulation To Reality: Reinforcement Learning For Autonomous Driving
Simulation To Reality: Reinforcement Learning For Autonomous DrivingSimulation To Reality: Reinforcement Learning For Autonomous Driving
Simulation To Reality: Reinforcement Learning For Autonomous Driving
 
Maze Path Finding
Maze Path FindingMaze Path Finding
Maze Path Finding
 
Ijarcet vol-2-issue-2-352-358
Ijarcet vol-2-issue-2-352-358Ijarcet vol-2-issue-2-352-358
Ijarcet vol-2-issue-2-352-358
 
search strategies in artificial intelligence
search strategies in artificial intelligencesearch strategies in artificial intelligence
search strategies in artificial intelligence
 
Optimizing Mobile Robot Path Planning and Navigation by Use of Differential E...
Optimizing Mobile Robot Path Planning and Navigation by Use of Differential E...Optimizing Mobile Robot Path Planning and Navigation by Use of Differential E...
Optimizing Mobile Robot Path Planning and Navigation by Use of Differential E...
 
Lecture 07 search techniques
Lecture 07 search techniquesLecture 07 search techniques
Lecture 07 search techniques
 
4-200626030058kpnu9avdbvionipnmvdadzvdavavd
4-200626030058kpnu9avdbvionipnmvdadzvdavavd4-200626030058kpnu9avdbvionipnmvdadzvdavavd
4-200626030058kpnu9avdbvionipnmvdadzvdavavd
 
Artificial Intelligence and The Complexity
Artificial Intelligence and The ComplexityArtificial Intelligence and The Complexity
Artificial Intelligence and The Complexity
 
How Humans & Machines Can Improve Site Search Results - Search Y: Paris
How Humans & Machines Can Improve Site Search Results - Search Y: ParisHow Humans & Machines Can Improve Site Search Results - Search Y: Paris
How Humans & Machines Can Improve Site Search Results - Search Y: Paris
 
Expert Finding System in Pet Domain
Expert Finding System in Pet DomainExpert Finding System in Pet Domain
Expert Finding System in Pet Domain
 
Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...
Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...
Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...
 
Bba q&a study final white
Bba q&a study final whiteBba q&a study final white
Bba q&a study final white
 
AI PROJECTppt.pptx
AI PROJECTppt.pptxAI PROJECTppt.pptx
AI PROJECTppt.pptx
 
Genetic algorithms mahyar
Genetic algorithms   mahyarGenetic algorithms   mahyar
Genetic algorithms mahyar
 
Particle swarm optimization (PSO) ppt presentation
Particle swarm optimization (PSO) ppt presentationParticle swarm optimization (PSO) ppt presentation
Particle swarm optimization (PSO) ppt presentation
 
Machine Learning Tools and Particle Swarm Optimization for Content-Based Sear...
Machine Learning Tools and Particle Swarm Optimization for Content-Based Sear...Machine Learning Tools and Particle Swarm Optimization for Content-Based Sear...
Machine Learning Tools and Particle Swarm Optimization for Content-Based Sear...
 
Deep Learning Overview
Deep Learning OverviewDeep Learning Overview
Deep Learning Overview
 

Plus de Dr Sandeep Kumar Poonia

Memetic search in differential evolution algorithm
Memetic search in differential evolution algorithmMemetic search in differential evolution algorithm
Memetic search in differential evolution algorithm
Dr Sandeep Kumar Poonia
 
Performance evaluation of different routing protocols in wsn using different ...
Performance evaluation of different routing protocols in wsn using different ...Performance evaluation of different routing protocols in wsn using different ...
Performance evaluation of different routing protocols in wsn using different ...
Dr Sandeep Kumar Poonia
 

Plus de Dr Sandeep Kumar Poonia (20)

Soft computing
Soft computingSoft computing
Soft computing
 
An improved memetic search in artificial bee colony algorithm
An improved memetic search in artificial bee colony algorithmAn improved memetic search in artificial bee colony algorithm
An improved memetic search in artificial bee colony algorithm
 
Modified position update in spider monkey optimization algorithm
Modified position update in spider monkey optimization algorithmModified position update in spider monkey optimization algorithm
Modified position update in spider monkey optimization algorithm
 
Enhanced local search in artificial bee colony algorithm
Enhanced local search in artificial bee colony algorithmEnhanced local search in artificial bee colony algorithm
Enhanced local search in artificial bee colony algorithm
 
RMABC
RMABCRMABC
RMABC
 
Memetic search in differential evolution algorithm
Memetic search in differential evolution algorithmMemetic search in differential evolution algorithm
Memetic search in differential evolution algorithm
 
Improved onlooker bee phase in artificial bee colony algorithm
Improved onlooker bee phase in artificial bee colony algorithmImproved onlooker bee phase in artificial bee colony algorithm
Improved onlooker bee phase in artificial bee colony algorithm
 
Comparative study of_hybrids_of_artificial_bee_colony_algorithm
Comparative study of_hybrids_of_artificial_bee_colony_algorithmComparative study of_hybrids_of_artificial_bee_colony_algorithm
Comparative study of_hybrids_of_artificial_bee_colony_algorithm
 
A novel hybrid crossover based abc algorithm
A novel hybrid crossover based abc algorithmA novel hybrid crossover based abc algorithm
A novel hybrid crossover based abc algorithm
 
Multiplication of two 3 d sparse matrices using 1d arrays and linked lists
Multiplication of two 3 d sparse matrices using 1d arrays and linked listsMultiplication of two 3 d sparse matrices using 1d arrays and linked lists
Multiplication of two 3 d sparse matrices using 1d arrays and linked lists
 
Sunzip user tool for data reduction using huffman algorithm
Sunzip user tool for data reduction using huffman algorithmSunzip user tool for data reduction using huffman algorithm
Sunzip user tool for data reduction using huffman algorithm
 
New Local Search Strategy in Artificial Bee Colony Algorithm
New Local Search Strategy in Artificial Bee Colony Algorithm New Local Search Strategy in Artificial Bee Colony Algorithm
New Local Search Strategy in Artificial Bee Colony Algorithm
 
A new approach of program slicing
A new approach of program slicingA new approach of program slicing
A new approach of program slicing
 
Performance evaluation of different routing protocols in wsn using different ...
Performance evaluation of different routing protocols in wsn using different ...Performance evaluation of different routing protocols in wsn using different ...
Performance evaluation of different routing protocols in wsn using different ...
 
Enhanced abc algo for tsp
Enhanced abc algo for tspEnhanced abc algo for tsp
Enhanced abc algo for tsp
 
Database aggregation using metadata
Database aggregation using metadataDatabase aggregation using metadata
Database aggregation using metadata
 
Performance evaluation of diff routing protocols in wsn using difft network p...
Performance evaluation of diff routing protocols in wsn using difft network p...Performance evaluation of diff routing protocols in wsn using difft network p...
Performance evaluation of diff routing protocols in wsn using difft network p...
 
Lecture28 tsp
Lecture28 tspLecture28 tsp
Lecture28 tsp
 
Lecture27 linear programming
Lecture27 linear programmingLecture27 linear programming
Lecture27 linear programming
 
Lecture26
Lecture26Lecture26
Lecture26
 

Dernier

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Dernier (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 

Lecture29

  • 1. Sandeep Kumar Poonia Algorithms Local Search Methods By: Sandeep Kumar Poonia Asst. Professor, Jagannath University, Jaipur 6/15/2013
  • 2. Genetic algorithms • Genetic algorithms is based on the concepts from population genetics and evolution theory. The algorithm are constructed to optimize fitness of a population of elements through crossover (recombination) and mutation (perturbation) operations on their genes. Sandeep Kumar Poonia 6/15/2013
  • 3. The Ant algorithm is based on the observation of real ant’s behavior. Ants can coordinate their activities via stigmergy, a way of indirect communication through the modification of the environment. The main idea of ant algorithm is to use self- organizing principles of artificial agents which collaborate to solve the problems. Sandeep Kumar Poonia 6/15/2013 The Ant algorithm
  • 4. Tabu search • Tabu search is a deterministic iterative improvement local search method with a possibility to accept worse-cost local solution in order to escape from local optimum. The set of legal local solutions are restricted by a tabu list which is designed to present from going back to the recently visited solutions. The set of solutions in tabe list are not accepted in the next iteration. Sandeep Kumar Poonia 6/15/2013
  • 5. 1 Particle Swarm Optimization (PSO) algorithm is a population- based stochastic optimization method proposed by James Kennedy and R. C. Eberhart in 1995. It is motivated by social behavior of organisms such as bird flocking and fish schooling. In the PSO algorithm, the potential solutions called particles, are flown in the problem hyperspace. Change of position of a particle is called velocity. The particle changes their position with time. During flight, particle’s velocity is stochastically accelerated toward its previous best position and toward a neighborhood best solution. PSO has been successfully applied to solve various optimization problems, artificial neural network training, fuzzy system control, and others. Sandeep Kumar Poonia 6/15/2013
  • 6. 1 The Bees Algorithm is a new population-based search algorithm, first developed in 2005 by Pham DT etc. [1] and Karaboga.D [2] independently. The algorithm mimics the food foraging behaviour of swarms of honey bees. In its basic version, the algorithm performs a kind of neighbourhood search combined with random search and can be used for optimization problems. Sandeep Kumar Poonia 6/15/2013
  • 7. Contents 1 Introduction 2 Genetic Algorithms 3 Non-linear Programming Problems 4 Foundation of Genetic Algorithms 5 Metaheuristic Algorithms Sandeep Kumar Poonia 6/15/2013
  • 8. 6. Simulated Annealing 7. Tabu Search 8. Ant Algorithms 9. Particle Swarm Optimization 10. Bee Algorithms Sandeep Kumar Poonia 6/15/2013
  • 9. 11. The Other Bio-Inspired Metaheuristic Algorithms 12. Traveling Salesman Problems 13. Knapsack Problems 14. Set Covering Problems 15. Minimum Spanning Tree Problems 16. Flow Shop Scheduling Problems 17. Job Shop and Open Shop Scheduling Problems Sandeep Kumar Poonia 6/15/2013
  • 10. 18. Bin Packing Problems 19. Data Mining 20. Quadratic Assignment Problems 21. Reliability Optimization Problems 22. Layout and Location Problems Sandeep Kumar Poonia 6/15/2013
  • 11. 1. The Computational complexity We do not expect NP-hard (and NP-complete) problems to be solved in polynomial steps. Ambati et al. (1991): An evolution algorithm that can achieve heuristic solutions 25% worse than the expected optimal solution on random Traveling Salesman Problem in O(NlogN) time. Fogel (1993): An evolution algorithm that can achieve heuristic solutions 10% worse than the expected optimal solution on random Traveling Salesman Problem in O(N2) time. Sandeep Kumar Poonia 6/15/2013
  • 12. goal state current state initial state Algorithm – Problem Solving 2. Search Spaces (Solution Space) How to do efficient search in the state space? Sandeep Kumar Poonia 6/15/2013
  • 13. 1 1. To obtain a good initial state. 2. Goal identification (identify the optimal condition). 3. Control the search process. For some problems, we are not able to identify the goal state. Sandeep Kumar Poonia 6/15/2013
  • 14. 9 Evolution Process 01 02 0k S S S  11 12 1k S S S  21 22 2k S S S  1 2 n n nk S S S  . . . .   Initial Population s 1st Generation 2nd Generation n-th Generation . . . . Genetic Algorithm, Ant Algorithm, Particle Swarm Optimization, Bee Algorithm, Firefly Algorithm, . . . Sandeep Kumar Poonia 6/15/2013
  • 15. Example 1: Simplex algorithm for linear program Goal identification: primal feasible & dual feasible condition Goal identification: 1. The goal state can be identified. (e.g. linear program, convex program ) 2. The goal state cannot be identified. (e.g. traveling salesman problem, quadratic assignment problem, knapsack problem, scheduling problems, . . . ) Control the search process: moving to improved adjacent basic solution Example 2: Steepest descent algorithm for convex program Goal identification: Karash-Kuhn-Tucker condition Control the search process: moving to the steepest descent direction ( minimization problem) Sandeep Kumar Poonia 6/15/2013
  • 16. Example 4: Ant algorithm for the Traveling Salesman Problem Goal identification: The optimal condition can not be identified efficiently. Using heuristic rules to identify approximate solution. Control the search process: pheromone & state transition probability Example 3: Genetic algorithm for the Traveling Salesman Problem Goal identification: The optimal condition can not be identified efficiently. Using heuristic rules to identify approximate solution. Control the search process: Crossover, mutation and selection operations. Sandeep Kumar Poonia 6/15/2013
  • 17. A state space of a Traveling Salesman Problem with n = 4. (A X X X) (A B X X) (A C X X) (A D X X) (A B C D) (A B D C) (A C B D) (A C D B) (A D B C) (A D C B) Sandeep Kumar Poonia 6/15/2013
  • 19. Exact search methods: Advantage: To produce an optimal solution and It is able to detect that a given problem has no feasible solution. Disadvantage: It is time-consuming. For example, it is infeasible for real-time problems. Local search methods: Advantage: It is time-efficient and easy to write a program. Disadvantage: It may not produce an optimal solution and is not able to detect that a given problem has no feasible solution. Traversal Search, Backtracking Algorithm, Branch and Bound Algorithm, Dynamic Programming Method, etc. Traditional Local search does not provide a mechanism for the search to escape from a local optimum. The goal of local search is find a solution which is as close as possible to the optimum.Sandeep Kumar Poonia 6/15/2013
  • 20. local search • local search is a metaheuristic method for solving computationally hard optimization problems. • Local search can be used on problems that can be formulated as finding a solution maximizing a criterion among a number of candidate solutions. • Local search algorithms move from solution to solution in the space of candidate solutions (the search space) by applying local changes, until a solution deemed optimal is found or a time bound is elapsed. Sandeep Kumar Poonia 6/15/2013
  • 21. local search • A local search algorithm starts from a candidate solution and then iteratively moves to a neighbor solution. This is only possible if a neighborhood relation is defined on the search space. • Every candidate solution has more than one neighbor solution; the choice of which one to move to is taken using only information about the solutions in the neighborhood of the current one, hence the name local search. Sandeep Kumar Poonia 6/15/2013
  • 22. Metaheuristic • Metaheuristic designates a computational method that optimizes a problem by iteratively trying to improve a candidate solution with regard to a given measure of quality. Metaheuristics make few or no assumptions about the problem being optimized and can search very large spaces of candidate solutions. Sandeep Kumar Poonia 6/15/2013
  • 27. Background and Motivation Local Search Methods Metaheuristics Integer Programming Exact Methods Sandeep Kumar Poonia 6/15/2013
  • 28. Background and Motivation • Local Improvement • Tabu Search • Iterated Local Search • Simulated annealing • Genetic Algorithms • Evolutionary algorithms • Ant Colony Optimization • Scatter Search • Memetic Algorithms • Etc…. Local Search Methods Metaheuristics Sandeep Kumar Poonia 6/15/2013
  • 29. Background and Motivation • Branch-and-bound • Branch-and-cut • Column generation • Cutting and price • Dynamic programming • Lagrangian relaxation • Linear relaxation • Surrogate relaxation • Lower bounds • Etc… Integer Programming Exact Methods Sandeep Kumar Poonia 6/15/2013
  • 30. Background and Motivation • Good solutions for complex and large-scale problems • Short running times • Easily adapted Local Search Methods Metaheuristics Integer Programming Exact Methods • Proved optimal solutions • Important information on the characteristics and properties of the problem. Sandeep Kumar Poonia 6/15/2013
  • 31. Background and Motivation Local Search Methods Metaheuristics Integer Programming Exact Methods Optimized Search Heuristics Sandeep Kumar Poonia 6/15/2013
  • 33. Initial state Partial solution Complete solution Improved solution Accepted solution Constructive procedure Iteratively improvement procedure Refinement: The best solution comes from a process of repeatedly refining and inventing alternative solutions. Sandeep Kumar Poonia 6/15/2013
  • 34. A  J  D  E  F  K  H  I  G  C  B  A (A J D E F K H I G C B) is a complete solution. Constructive Search Methods: To generate a complete solution by iteratively extending partial solutions. A CB J D F E K I H G 5 3 5 5 6 3 5 4107 9 6 8 3 9 4 Sandeep Kumar Poonia 6/15/2013
  • 35. Perturbation Search Methods: For a complete solution, we can easily change it into new complete solution by modifying one or more solution components. For example, in TSP a complete solution (ABCD) is changes into a new solution (ADCB) by interchange the positions of B and D. ( neighborhood search methods, mutation operations i.e. ) ( The Liberty Times, July 27, 2005 ) Sandeep Kumar Poonia 6/15/2013
  • 36. 1 For a set of complete solutions, we can easily change them into new complete solutions by modifying one or more solution components among the solutions. ( crossover and mutation operations in genetic algorithms. etc. ) Sandeep Kumar Poonia 6/15/2013
  • 37. Deterministic Algorithms: In each search step, it progresses toward the complete solution by making deterministic decision. e.g. Simplex method, Quasi-Newton algorithms, tabu search and many other conventional algorithms. Deterministic algorithm will produce the same solution for a given problem instance. Even for the same instance, the stochastic algorithm usually product distinct solutions at each run. Ackley’s function Sandeep Kumar Poonia 6/15/2013
  • 38. 4. Stochastic Algorithms: It make a random decision at each search step. e.g. Monte Carlo algorithms, simulated annealing, genetic algorithms, ant algorithms, etc. There are two cases. (1) The available information – the objective function to be optimized – may be considered possible erroneous or corrupted by random noise. (2) For the case with perfect information, we may introduce a random element to guide us when searching for the optimum solution. Sandeep Kumar Poonia 6/15/2013
  • 39. 1. They are efficient for the practical uses. 2. They are simple to implement. For many applications, stochastic algorithm is the simplest algorithm available, or fastest, or both. 3. They are very general and can be implemented for a wide class of optimization. For example, no differential function of real valued parameters is required. It need not be expressible in any particular constraint language. 4. They can run in parallel. The quality of solutions may be improved time by time. Why stochastic algorithms? Sandeep Kumar Poonia 6/15/2013
  • 40. Transition probabilities for a deterministic algorithm: 5 3 5 7 8 9 1 3 2 1 1 1 1 1 1 1 1 1 Minimize f (x) subject to x  S f (xk) = 2 Configuration Graph Deterministic algorithm will produce the same solution for a given problem instance. Sandeep Kumar Poonia 6/15/2013
  • 41. Transition probabilities for a stochastic algorithm: Remark: Transition probabilities may be dependent on the number of iterations. S8 S1 S2 S9 S7 S5 S6 S3 S4 2/4 1/4 1/8 1/8 1/4 3/4 1/3 1/3 1/3 1/8 1/8 2/41/8 1/8 3/4 1/3 1/3 1/3 3/4 1/8 1/8 1/2 1/4 1/4 1/8 1/8 1/8 2/4 1/4 Even for the same instance, the stochastic algorithm usually product distinct solutions at each run.Sandeep Kumar Poonia 6/15/2013
  • 42. S8 S1 S2 S9 S7 S5 S6 S3 S4 1 - (e-2/T)/3 - (e-1/T)/3 (e-2/T)/3 (e-1/T)/3 1/8 (e-3/T)/3 3/4 1/3 1/3 1/3 2/3 - (e-1/T)/3 1/3 1/8 1/8 3/4 1/3 1/3 1/3 3/4 1/8 1/8 1 - (e-3/T)/3 - (e-1/T)/3 1/4 1/8 1/8 1/8 2/4 1/4 (e-1/T)/3 (e-1/T)/3 T = the number of iterations. Sandeep Kumar Poonia 6/15/2013
  • 43. There are two ways to avoid getting trapped in a local optimum. 1. Accommodate nongreedy search move. It is allowed to move to a neighborhood state with a worse function value. ( Tabu search, simulated annealing, . . . ) 2. To increase the number of edges in the configuration graph. However, the denser the configuration graph is, the more inefficient search step will be. To enlarge the neighborhood for each state. Sandeep Kumar Poonia 6/15/2013
  • 44. General local search algorithm • G(S) is the value of the objective under schedule S 1. Let k=1. Start with a schedule S1 and let the best schedule S0=S1 2. Choose a schedule Sc from the neighborhood of Sk N(Sk) 3. If Sc is accepted let Sk+1 = Sc, otherwise let Sk+1= Sk. If G(Sk+1)<G(S0) let S0=Sk+1 4. Let k=k+1. Terminate the search if the stopping criteria are satisfied. Otherwise return to 2. Sandeep Kumar Poonia 6/15/2013
  • 45. Local search example Schedule representation • Let the vector S=(j1,…,jn) represent the schedule – jk=j if j is the kth job in the sequence • Use EDD to construct the initial schedule  S1= … • The total weighted tardiness – Let G(S) be SwjTj under schedule S => G(S1)= … Sandeep Kumar Poonia 6/15/2013
  • 46. Local search example Neighborhood structure • Manipulating S1 1. Pairwise adjacent interchange 2. Try to move a job to a different location in the sequence • Rules 1 and 2 above define two types of neighborhoods N1 and N2 • N1(S1)=… • N2(S1)=… Sandeep Kumar Poonia 6/15/2013
  • 47. Local search example Choosing Sc • Assume we use N1 • Methods for choosing Sc from N1(Sk) 1. Randomly 2. Move the job forward that has the highest contribution to the objective • Follow rule 2  Interchange jobs … and …  Sc = ( , , , )  G(Sc) = Sandeep Kumar Poonia 6/15/2013
  • 48. Local search example Acceptance criteria • Is G(Sc) < G(Sk)? • Should we consider accepting Sc if G(Sc) ≥ G(Sk) ? • In this example we only accept if we get an improvement in the objective Sandeep Kumar Poonia 6/15/2013
  • 49. Local search example Stopping criteria • Max number of iterations • No or little improvement – We would terminate the search since we did not improve the current schedule • Local optimal solution – No solution S in N(Sk) satisfies G(S)<G(Sk) Sandeep Kumar Poonia 6/15/2013
  • 50. Local search Design criteria i. The representation of the schedule ii. The design of the neighborhood iii. The search process within the neighborhood iv. The acceptance-rejection criteria v. Stopping criteria Sandeep Kumar Poonia 6/15/2013
  • 59. Simulated Annealing (SA) • Annealing: Heating of a material (metal) to a high temperature and then cooling it at a certain rate to achieve a desired crystalline structure • SA: Avoids getting stuck at a local minimum by accepting a worse schedule Sc with probability P(Sk,Sc)= exp(- G(Sc)-G(Sk) )bk Sandeep Kumar Poonia 6/15/2013
  • 60. SA: Temperature parameter bk ≥ 0 is the temperature (also called cooling parameter) • Initially the temperature is high making moves to a worse schedule more likely ~50% chance of accepting a slightly worse schedule seems to work well • As the temperature decreases the probability of accepting a worse schedule decreases – Often, bk=Tak for some .9<a<1 and T>0 Sandeep Kumar Poonia 6/15/2013
  • 61. SA algorithm 1. Set k=1 and select b1. Select S1 and set S0=S1. 2. Select Sc (randomly) from N(Sk). i. If G(S0)<G(Sc)<G(Sk) set Sk+1=Sc and go to 3 ii. If G(Sc)<G(S0) set S0=Sk+1=Sc and go to 3 iii. If G(Sc)>G(Sk), generate a uniform random number Uk from a Uniform(0,1) distribution (e.g., rand() in Excel) If Uk≤P(Sk,Sc), set Sk+1=Sc; otherwise set Sk+1=Sk. 3. Select bk+1≤ bk. Set k=k+1. Stop if stopping criteria are satisfied; otherwise go to 2. Sandeep Kumar Poonia 6/15/2013
  • 62. Tabu (taboo?) search • Tabu search tries to model human memory processes • A “tabu-list” is maintained throughout the search – Moves according to the items on the list are forbidden Sandeep Kumar Poonia 6/15/2013
  • 63. Tabu search algorithm 1. Set k=1. Select S1 and set S0=S1. 2. Select Sc from N(Sk). i. If the move SkSc is on the tabu list set Sk+1=Sk and go to 3 ii. If SkSc is not on the tabu list set Sk+1=Sc. Add the reverse move to the top of the tabu list and delete the entry on the bottom. If G(Sc)<G(S0), set S0=Sc. 3. Set k=k+1. Stop if stopping criteria are satisfied; otherwise go to 2. Sandeep Kumar Poonia 6/15/2013