- 112 Views
- Uploaded on
- Presentation posted in: General

스케줄 이론 Ch 4 Heuristic Method

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 - - - - - - - - - - - - - - - - - - - - - - - - - -

스케줄 이론

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

- 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
- 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

- 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( )
- 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

- 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)}

- Neighborhood: 3 schedules
- 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)}

- Neighborhood: 3 schedules

- 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)

- Neighborhood: 3 schedules
- 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)}

- Neighborhood: 3 schedules
- 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

- 1st Generation

- 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.

- (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

- (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

- From (1, *, *, *)
- (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이기 때문에 마지막 수단으로 등장한 것임.