Title: Problem Difficulties
1Problem Difficulties
- Search space
- (can the best answer be found in time?)
- 2. Complexity
- (simplification renders the solution useless)
- 3. Objective function
- (noise and time variance)
- 4. Constraints
- (difficult to find one feasible solution,
- harder to find optimum solution)
- People and Politics
2Algorithmic Approach to Problem Solving
- Three basic concepts are common to every
algorithmic approach to problem solving - Representation
- Objective
- Evaluation Function
- Representation encoding of problem solution.
- Objective what is the goal?
- Evaluation (Fitness) Function quality of
solution.
3Problem Types
It is important to recognise different problem
types as it may suggest appropriate methods to
find the solution.
- Linear,
- SAT Boolean Satisfiability Problem
- TSP Travelling Salesman Problem
- NLP Non-linear Programming
- Proofs
- Constraint Satisfaction Problems
- Other types and subdivisions exist
4Classical Algorithms
- Two main classes of classical algorithms
- Operate on complete solutions
- Interruptible to give potential solution
- Quality depends on the accuracy of
procedure-problem - Requires knowledge of problem
- Each algorithm can only tackle a class of
problems - Evaluate partially constructed or approximate
solutions
Enumeration fails on real-world problems when the
number of alternative solutions is prohibitively
large
5Classical Algorithms
- Two main classes of classical algorithms
- Operate on complete solutions
- Evaluate partially constructed or approximate
solutions - Utilised when complete solution methods fail
- Decompose problem into simpler sub-problems and
then reassemble - Or solve complex problem in a series of simpler
stages
Methods include Greedy, Dynamic programming, A,
Branch Bound and Divide Conquer.
6 Summary of Traditional Methods
- Some problems can be solved by classical
algorithms - e.g. a quadratic evaluation function can be
solved by gradient minimisation methods. - Each algorithm is suited to a problem and may
falter or fail on other problems - Could use complete solutions
- (time-consuming and may get trapped in local
optima ) - or partial solutions,
- (may be complex to implement and may not improve
things) - Now Consider Modern Heuristics
7Contents
- Problems
- Basic Concepts Representation, objective,
evaluation problem definition, neighbourhoods
and optima - Basic Problems Linear, SAT, TSP, NLP
Constraint satisfaction problems - Basic Techniques Exhaustive, Local Search
Simplex method. - Methods 1 Greedy, A, Branch Bound Dynamic
programming, and Divide Conquer. - Methods 2 Simulated Annealing, Tabu Search
- Methods 3 Evolutionary Approaches
- Constraint Handling Techniques
- Hybridise and Tune Practical tips
- Test are you sure that you have the best
solution?
8Escaping Local Optima
- Problem solving strategies either
- Guarantee to discover global solution, but are
too expensive or - May gets stuck in local optima
- We need to escape!
- Probability of moving from one point in the
search space to another changes - Memory, which forces exploration of new areas of
the search space
9Hill-climbing
- Procedure simple hill-climber
- Begin
- x some initial starting point in S
- while improve (x) ! no do
- x improve (x)
- return (x)
- End
- Simple hill-climber has several weaknesses
- Usually terminates at locally optimum solutions
- No information on difference between local
optimum and global optimum - Optimum obtained depends on initial conditions
- Not normally possible to provide an upper bound
for computational time.
10Improve function
- Procedure Improve (Hill-climber)
- Repeat
- Select all new points in neighbourhood of
current point vc - Select point vn with best value from evaluation
function - If eval(vn) gt eval(vc) then vc ? vn
- Else Local Optimum
- Until Local Optimum
- Can improve algorithm by restarting
- Maximum number of restarts (iterations) needs to
be set
11Simulated Annealing
- Annealing
- A heating and cooling operation implying usually
a relatively slow cooling. Annealing is a
comprehensive term. The process of such a heat
treatment may be to - remove stresses
- induce softness
- alter ductility toughness electrical
magnetic, or other physical properties - refine the crystalline structure
- remove gases
- produce a definite micro-structure.
- In annealing, the temperature of the operation
and the rate of cooling depend upon the material
being heat treated and the purpose of the
treatment.
12Simulated Annealing
13Simulated Annealing
- Procedure Simulated Annealing
- Begin
- x some initial starting point in S
- while not termination-condition do x improve?
(x,T) - update(T)
- return (x)
- End
- Three important differences
- Requires termination condition
- Improve does not have to return a better solution
- Parameter T is updated periodically and used in
Improve.
14Simulated Annealing
- Procedure Improve (Simulated Annealing)
- Repeat
- Select one new point in neighbourhood of current
point vc - If eval(vn) Probably Better eval(vc)
- then vc ? vn
- Until halting-criterion
- Probably better?
- If eval(vn) gt eval(vc) then vc ? vn
- or
- If random0,1lt
- then vc ? vn
15Simulated Annealing
- Effect of Temperature Diff 13 (new better)
- When Eval(vc) 107 and T 10
16Simulated Annealing
- For any search algorithm
- What is the solution?
- What are the neighbours of the solution?
- What is the cost of the solution?
- How do we determine the initial solution?
- Specifically for simulated annealing
- How to set initial temperature T?
- How to determine cooling ratio (update of T)?
- How to stop searching at a given temperature?
- How to stop searching completely?
- cf http//exatech.com/Optimization/
- Optimization.htm
17Simulated Annealing
- Feedback and interaction with environment
- STEP 1 T ? TMax
- select vc at random
- STEP 2 Select vn in neighbourhood vc
- If eval(vn) gt eval(vc) then vc ? vn
- then vc ? vn
- else select with probability
- repeat this step k times
- STEP 3 set T ? rT
- If T gt Tmin
- then go to STEP 2
- else go to STEP 1
- Need to set four parameters!
18Simulated Annealing
- Kirkpatrick, S., C. D. Gelatt Jr., M. P. Vecchi,
"Optimization by Simulated Annealing",Science,
220, 4598, 671-680, 1983.
19Tabu Search
- (sometimes spelt Taboo Search)
- Memory forces the search to explore new areas.
- Recently explored points become tabu (forbidden)
- Tabu search is basically deterministic
- (simulated annealing is stochastic)
- Although both tabu search and simulated annealing
have many improvements.
Danger
High Voltage
20Tabu Search
- Procedure Tabu Search
- Begin
- x some initial starting point in S
- while not termination-condition do x improve?
(x,H) - update(H)
- return (x)
- End
- Three important differences
- Requires termination condition
- Improve does not have to return a better solution
- Parameter H is updated periodically and used in
Improve.
21Tabu Search
- Eight-bit SAT problem x1 x8
- Tabu list
- 1 iteration
- 5 iterations
- Gives x (1,1,0,0,0,1,1,1) 36
- x1 (0,1,0,0,0,1,1,1) 37
- x2 (1,0,0,0,0,1,1,1) 32
- x3 (1,1,1,0,0,1,1,1) 31
- x4 (1,1,0,1,0,1,1,1) 31
- x5 (1,1,0,0,1,1,1,1) 30
- x6 (1,1,0,0,0,0,1,1) 28
- x7 (1,1,0,0,0,1,0,1) 30
- x8 (1,1,0,0,0,1,1,0) 31
- NB Recency-Based Memory
- Aspiration Criterion
22Escaping Local Optima
- Tabu search and simulated annealing
- TS usually makes worse moves when stuck,
whereas SA can at any time - TS is deterministic, SA is stochastic
- Both work on complete solutions,
But require more parameters than classical
techniques How to choose these parameters? The
more sophisticated the method, the more human
judgment used!