1 / 20

# 스케줄 이론 Ch 4 Heuristic Method - PowerPoint PPT Presentation

스케줄 이론 Ch 4 Heuristic Method. 1. Introduction. Heuristic Procedure Capable of obtaining good solutions with limited computational effort. We need a measure for performances of heuristic procedures. Procedures based on Local Search: Simulated Annealing Tabu-search Genetic Algorithm

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about ' 스케줄 이론 Ch 4 Heuristic Method' - inez-kirk

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Ch 4 Heuristic Method

• Heuristic Procedure

• Capable of obtaining good solutions with limited computational effort.

• We need a measure for performances of heuristic procedures.

• Procedures based on Local Search:

• Simulated Annealing

• Tabu-search

• Genetic Algorithm

• Sorting

• The use of a ranking scheme where the relative ranking of two jobs does not change with time.  Static priorities

• Dispatching

• A procedure that uses a decision rule to select the next job when the machine becomes free.

• Include dynamic sorting rules

• Example: At time t

t=0

t=3

• Construction

• A procedure where a schedule is built from scratch, normally adding a job(s) to the schedule one at a time. (but not necessarily adding jobs in order from earliest to latest)

• Greedy procedure: T-problem

• O(n2)

• Insertion procedure

• {1, 2} 에서 1-2, 2-1 중  (2, 1) 선택

• 3을 삽입 3-2-1, 2-3-1, 2-1-3 중  (2, 3, 1) 선택

• O(n3)

• Table1. Comparison of heuristic algorithm(p. 4.5)

• Neighborhood

• ⓐ Initial seed (Initial trial solution)

• ⓑ Neighborhood generating mechanism

• Pair-wise interchange

• Last job inserted to previous jobs    n-1

• ⓒ New seed selection rule (Only one, or search all possible improvements)

• Neighborhood Search Procedure:

• ① A trial solution

• ② Generate and compare neighborhood solutions and find new trial solution

• ③ Go to ② until no new trial solution is possible

• Example (p. 4.7)

Example: p 4.5

• Neighborhood Search  Descent technique

• Fig. Improvement of the objective function in Neighborhood Search

• 단점: Trapped at local optima

Objective

Function

Seed Number

• A modified form of neighborhood search

• Do not stop even when a local optimum is encountered

• Move: Change from one schedule (solution, seed) to another

• Neighborhood definition

• Search the candidate

• Tabu move: A move back to the previous seed (schedule, solution)

• Tabu-list: A list of tabu moves

• Fixed number of entries (5~9)

• To avoid cycling

• Mutations:

• Every time a move is made thru a mutation in the current schedule, the reverse mutation is entered at the top of the Tabu-list.

• Basic difference: Mechanism used for approving candidate moves

• Simulated Annealing: Probabilistic

• Tabu Search: Deterministic by a Tabu-List

• Algorithm(Tabu-Search)

• Step 1:

• Step 2:

• Step 3:

• Increment k by 1

• If k=K, then stop; otherwise, go to Step 2.

• (Example)

• Single machine sum of the weighted tardiness problem( )

• Tabu-list: a list of pairs of jobs (j, k) that swapped within the last two moves and cannot be swapped again.

• Initial Tabu-list; empty

• Iteration 1:

• Neighborhood: 3 schedules

• (1,2,4,3): 480

• (2,4,1,3): 436

• (2,1,3,4): 652

• Selection of the best non-Tabu sequence

• Tabu-list: {(1,4)}

• Iteration 2:

• Neighborhood: 3 schedules

• (4,2,1,3): 460

• (2,1,4,3): 500  Tabu

• (2,4,3,1): 608

• The First move results in a schedule worse than the best schedule so far. Nevertheless

• Tabu-list: {(2,4), (1,4)}

• Iteration 3:

• Neighborhood: 3 schedules

• (2,4,1,3): 436  Tabu

• (4,1,2,3): 440

• (4,2,3,1): 632

• Tabu-list:{(1,2),(2,4)} ( max. length of Tabu-list=2 in this case)

• Iteration 4:

• Neighborhood: 3 schedules

• (1,4,2,3): 408

• (4,2,1,3): 460  Tabu

• (4,1,3,2): 586

• Tabu-list:{(1,4),(1,2)}

• Actually, S5 is a global optimum, but tabu-search, being unaware of this fact, continues.

• Stop only when K reaches.

• (Definition)

• First developed as a simulation model for describing the physical annealing process for condensed matter.

• Algorithm(Simulated Annealing)

• Step 1:

• Step 2:

• Step 3:

• Effectiveness depends on

• The design of the neighborhood

• Search policy: Randomly or in an Organized way.

• More general and abstract

• Individuals (Chromosomes): Sequences or schedules

• Population: Constant size

• Fitness: f (Obj. fn.)

• Generation: Iteration

• Consists of surviving individuals of the previous generation and new solutions(Children).

• Children generation  Reproduction and mutation of individuals that are  a part of the previous generation(Parents).

• Chromosome consists of sub-chromosomes containing the information regarding job sequence.

• Mutation in a parent chromosome  Adjacent pair-wise interchange

• Fittest individual reproduces and the least fit dies.

• Algorithm(Genetic Algorithms)

• Step 1:

• Step 2:

• Step 3:

• Increment k by 1

• If k=K, then stop; otherwise, go to Step 2.

• (Example) The same data with previous Tabu-Search example

• 1st Generation

• 3 individuals are selected at random

• 4,1,3,2 reproduces 4,3,1,2 with random swap and 3,4,1,2 dies.

• 2nd Generation

• 4,1,3,2 reproduces 1,4,3,2 with random swap and 4,3,1,2 dies.

• 3rd Generation

• 1,4,3,2 reproduces 1,4,2,3 with random swap and 2,1,3,4 dies.

• 4th Generation

• Only the most promising nodes at level k are selected as nodes to branch from.

• Beam width of the search: # of nodes retained

• Filter width: # of nodes selected for a thorough search

• Crude prediction  Thorough evaluation

• (Crude prediction)

• Contribution of the partial schedule to the objective

• Due-date tightness or other statistic of the jobs remaining to be scheduled

•   The nodes are compared and overall assessment are made.

• (Thorough evaluation)

• All the jobs not yet scheduled are scheduled using a composite dispatching rule

• Indication of promise of the node

•   Nodes may be filtered out

•   Retained nodes may be analyzed more thoroughly  by having all its remaining jobs scheduled with the composite dispatching rule

• The value of this schedule's objective - upper bound on the best schedule among the offspring of that node.

• (Example) The same data with previous Tabu-Search example

• Beam width =2

• No filtering mechanism

• Prediction: ATC(Apparent tardiness cost: Combination of WSPT and MS) rule

• Highest ranking index first

• Due-date tightness factor

• Due-date range factor

• (Level 1)

• (1, *, *, *)  1,4,2,3 : 408 by ATC rule - Retained

• (2, *, *, *)  2,4,1,3 : 436 by ATC rule - Retained

• (3, *, *, *)  3,4,1,2 : 814 by ATC rule

• (4, *, *, *)  4,1,2,3 : 440 by ATC rule

• (Level 2)

• From (1, *, *, *)

• (1, 2, *, *)

• (1, 3, *, *)

• (1, 4, *, *) - Retained

• From (2, *, *, *)

• (2, 1, *, *)

• (2, 3, *, *)

• (2, 4, *, *) - Retained

• (Level 3)

• (1, 4, 2, 3) - Best( Optimal )

• (1, 4, 3, 2)

• (2, 4, 1, 3)

• (2, 4, 3, 1)

• K samples 일 경우, 총 가능해의 수 =

• (Terminology) Biased Random Sampling

• At each stage, each job has unequal chance to be selected.

• (e.g.) higher selection probability for first job in EDD sequence or SPT sequence.⇒ 모두 combinatorial problem이기 때문에 마지막 수단으로 등장한 것임.