1 / 20

스케줄 이론 Ch 4 Heuristic Method

스케줄 이론 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

inez-kirk
Télécharger la présentation

스케줄 이론 Ch 4 Heuristic Method

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 스케줄 이론 Ch 4 Heuristic Method

  2. 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 • Neighborhood search (Adjacent Pair-wise Interchange, One-step look-back, Multi-step look-back, One-step look-ahead, Multi-step look-ahead)

  3. 2. Dispatching and Construction Procedures • 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

  4. 2. Dispatching and Construction Procedures • 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)

  5. 3. Neighborhood Search • Neighborhood • ⓐ Initial seed (Initial trial solution) • ⓑ Neighborhood generating mechanism • Adjacent pair-wise interchange       n-1 • 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

  6. 3. Neighborhood Search • Neighborhood Search  Descent technique • Fig. Improvement of the objective function in Neighborhood Search • 단점: Trapped at local optima Objective Function Seed Number

  7. 4. Tabu-Search • 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

  8. 4. Tabu-Search • Algorithm(Tabu-Search) • Step 1: • Step 2: • Step 3: • Increment k by 1 • If k=K, then stop; otherwise, go to Step 2.

  9. 4. Tabu-Search • (Example) • Single machine sum of the weighted tardiness problem( ) • Neighborhood: Adjacent Pair-wise Interchange • 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

  10. 4. Tabu-Search • 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)}

  11. 4. Tabu-Search • 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.

  12. 5. Simulated Annealing • (Definition) • First developed as a simulation model for describing the physical annealing process for condensed matter.

  13. 5. Simulated Annealing • 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.

  14. 6. Genetic algorithms • 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.

  15. 6. Genetic algorithms • Algorithm(Genetic Algorithms) • Step 1: • Step 2: • Step 3: • Increment k by 1 • If k=K, then stop; otherwise, go to Step 2.

  16. 6. Genetic algorithms • (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

  17. 7. Filtered Beam Search • Adaptation of B&B • 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.

  18. 7. Filtered Beam Search • (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 • Look-ahead parameter: k =5

  19. 7. Filtered Beam Search • (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)

  20. 8. Random Sampling • 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이기 때문에 마지막 수단으로 등장한 것임.

More Related