Download as pdf or txt
Download as pdf or txt
You are on page 1of 23

Location Problem

Assoc. Prof. Charoenchai Khompatraporn, Ph.D.


KMUTT
Location Problem Example
• Position emergency services.
• Accessible in <= 10 mins
• Where to locate the site(s)?

Time to Potential Site (mins)


From
1 2 3 4 5 6
A 0 5 15 25 25 15
B 5 0 20 30 15 5
C 15 20 0 10 25 15
D 25 30 10 0 10 20
E 25 15 25 10 0 9
F 15 5 15 20 9 0
Example (cont)
Location Timely Accessible
Neighborhood
A 1,2
B 1,2,6
C
D
E
F
Formulation
• (Work in class)

4
A Note on Decision Variables
• The more variables, the more space to search for the optimal solution → lead to
longer time to find the optimal solution.
• One more variable = one more axis of the search space.
• Indices are often use to increase the number of variables.
• Discrete problems (discrete variables) are sometimes called combinatorial
problems.
• Even a medium size problem (often determined by the number of variables), a
discrete problem may require a long time to find the optimal solution.

5
A Note on Optimization
• Some transportation problems have a special structure that can be
formulated as a linear problem.
• Certain classes of linear programs can be difficult to solve. Most of the
linear programs though are no longer difficult to solve by a computer now.
• Non-linear programs generally are more difficult to solve than the linear
ones.
• Some special algorithms were developed to solve a certain class of
problems.

6
What makes an optimization problem
difficult?
• The number of decision variables
• The type of decision variables
• The number of constraints
• The number and type of the objective function(s)
• The type of equations involved

7
Metaheuristics
Assoc. Prof. Charoenchai Khompatraporn, Ph.D.
KMUTT

8
Rationale
• Large nonlinear problems are often difficult to solve
• Real world applications usually fall into large-scale nonlinear type of
problems:
• Airline crew scheduling, Hospital staff scheduling
• Job scheduling, Production planning
• Dynamic vehicle routing problem
• Transportation-inventory problem
• Large structure design
• Chemical production process design
• There is limited time to find a “good-enough” solution to the problem
9
Examples of Test Functions

Griewank Function (1981)

Branin Function (1978)

10
Examples of Test Functions

Shubert Function (1985)

Michalewics Function

Ackley Function (1997)

11
Procedure
Real Problem

Assumed Real Problem

Problem Formulation

Solution Method
12
Solution Approach
• Exact solution, enumeration
• Pro: Yield the optimal solution (if find)
• Con: Could be time consuming
• Approximation
• Simulation
• Heuristics/Metaheuristics
• Pro: Could be reasonably fast (practical)
• Con: The best solution found may not be optimal

13
Metaheuristic Design
• Exploration (global phase)
• Exploitation (local phase)

Exploitation

Exploration

14
Examples of Metaheuristic Search
• Single solution method
• Simulated annealing (simulated quenching)
• Tabu search
• Greedy randomized adaptive search procedure (GRASP)
• Variable neighborhood search
• Population-based method
• Genetic algorithms
• Ant colony
• Artificial bee colony
• Particle swarm optimization
• Cuckoo search
• Bat algorithm
• Frog leaping algorithm
15
Popular Stopping Criteria
• Time
• Number of iterations
• Relative improvement

16
Ant Walk

17
Traveling Salesman Application
Ant colony algorithm developing better solutions to TSP

18
Pseudo-code ACO
procedure ACO_MetaHeuristic while(not_termination)
generateSolutions()
selectionActions()
pheromoneUpdate()
end while
end procedure

19
Particle Swarm Basic Idea
xbest Where should
in group xnew be?

xnow

Bird flying formation


(May have many of groups like this in the search) 20
Particle Swarm
• Solution update:
xnew = xnow + vnew
• Velocity update:
vnew = c1*vnow
+ rand*c2*(xnow – xbest in group)
+ rand*c3*(xnow – xbest in population)

21
General Procedure of Search Algorithms
1. Produce an initial feasible solution
2. While not terminate
1. Change to new region to look for candidate solution (if choose too) –
Exploration (Global) Phase
2. Generate a candidate solution
3. Do some local search (if choose too) – Exploitation (Local) Phase
4. Compare the quality of the new solution with the best-so-far solution
1. If better renew the best-so-far solution
5. Check if terminating condition is true
1. If yes STOP. If not, return in 2.1.
3. Report the best solution found

22
Common Steps
• Construction
• Recombination
• Random modification: to modify current solution(s)
• Improvement: such as selection of good solution(s)
• Memory update: keep selected solution(s)
• Parameter update

23

You might also like