Variable and value ordering heuristics for the job shop scheduling constraint satisfaction problem
This presentation is the property of its rightful owner.
Sponsored Links
1 / 39

Norman Sadeh, School of Computer Science, CMU Mark S.Fox PowerPoint PPT Presentation


  • 46 Views
  • Uploaded on
  • Presentation posted in: General

Variable and value ordering heuristics for the job shop scheduling constraint satisfaction problem. Norman Sadeh, School of Computer Science, CMU Mark S.Fox Dept. of Industrial Engineering, Univ. of Toronto. Artificial Intelligence , 86(1996) p1-41. Contents. 1. Introduction

Download Presentation

Norman Sadeh, School of Computer Science, CMU Mark S.Fox

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


Variable and value ordering heuristics for the job shop scheduling constraint satisfaction problem

Variable and value ordering heuristics for the job shop scheduling constraint satisfaction problem

Norman Sadeh,

School of Computer Science, CMU

Mark S.Fox

Dept. of Industrial Engineering, Univ. of Toronto

Artificial Intelligence, 86(1996) p1-41


Contents

Contents

1. Introduction

2. Job shop CSP

3. Search Procedure

4. Some popular variable ordering heuristics

5. Some popular value ordering heuristics

6. New variable and value ordering heuristics

7. Empirical evaluation

8. Concluding remarks ? -> No!


About authors

About Authors

  • Fox and Sadeh

    • the most representatives in CSP and Scheduling area.

  • ISIS (1986)

  • MICRO-BOSS (1991)

  • CMU School of CS, Robotics Institute


1 introduction 1

1. Introduction (1)

  • CSPs for design and scheduling

    • Generally entail large search spaces.

    • Only a very tiny fraction of all possible assignments participates in solution.

  • Variable and Value ordering

    • Reducing the effective size of the search space to be explored.


1 introduction 2

1. Introduction (2)

  • Job Shop Scheduling Problem.

    • Large scale, tightly connected problem

    • Objective is to find a feasible solution as quickly as possible. (notes: in large scale problem in industry)

  • In this research,

    • Review generic variable and value ordering heuristics

    • Introduce new variable and value ordering heuristics with Probabilistic framework considering reliance of a variable, and measure of contention


2 the job shop csp 1

2. The job shop CSP (1)

  • Assumption on this study

    • Tree-like process routing (그림 참조)

  • J = { j1, j2, …., jn}

  • RES = {R1,R2,..,Rm}

  • Ol = {Ol1,…, Olnl }

  • Variables Ol

    • operation start time stli

    • resource requirements, Rlij


Tree like process routing an example

O14

O16

O11

O17

O12

O15

O13

O18

O21

O22

O23

Tree-like process routing (an example)


2 the job shop csp 2

2. The job shop CSP (2)

Constraints

  • Precedence Constraints

    • stli + duli <=stlj (i.e. Oli Before Oli)

  • Capacity Constraints

  • Example :

    • 4 jobs, 4 resources, 2-3 operations

    • All jobs should be terminated by 15 time units.


Simple job shop problem example

Simple Job shop problem example

P1

P2

O11 R1

O12 R2

O13 R3

j1

C1

C2

C4

C6

P3

C7

j2

O21 R1

O22 R2

C3

C5

C9

C8

P4

P5

j3

O31 R3

O32 R1

O33 R2

C10

P6

j4

O42 R2

O41 R4


3 search procedure

3. Search Procedure

1. If all operations have been scheduled then stop, else go on to 2.

2. Apply the consistency enforcing procedure.

3.If a deadend is detected then backtrack (i.e. select an alternative if there is one left and go back to 1, else stop and report that the problem is infeasible). else go on to step 4.

4. Select the next operation to be scheduled (variable ordering heuristic).

5. Select a promising reservation for that operation (value ordering heuristic).

6. Create a new search state by adding the new reservation assignment to the current partial schedule. Go back to 1.


Consistency enforcing

Consistency Enforcing

  • Consistency with respect to precedence constraints

    • Propagate EST to downstream and LST to upstream

  • Forward consistency checks w.r.t. capacity constraints

    • difficult because of disjunctive nature

    • checks the remaining possible reservations,

    • and remove those reservations that would conflict with the new assignment.


Consistency enforcing cont d

Consistency Enforcing - Cont’d

  • Additional consistency checks w.r.t. capacity constraints

    • checks that no two unscheduled operations require overlapping resource/time intervals.

    • In example [lskki, efkki]and[lsklj, efklj] overlap --> oversubscribed interval

    • This enforces a higher level of are-consistency than forward checking.


Consistency w r t precedence constraints

Before Propagation

j1

O11 3 R1

O12 4 R2

O13 5 R3

[0, ]

[0, ]

[0, 15]

Downstream Propagation

j1

O11 3 R1

O12 4 R2

O13 5 R3

[0, ]

[3, ]

[7, 15]

Upstream Propagation

j1

O11 3 R1

O12 4 R2

O13 5 R3

[0, 8]

[3, 11]

[7, 15]

Consistency w. r. t. Precedence constraints


Forward consistency checks w r t capacity constraints

Forward consistency checks w.r.t. capacity constraints


Additional consistency checks

Additional Consistency checks

Detecting situations where two unscheduled operations

requiring the same resource are in conflict


Job shop csp after consistency labeling

O11 R1

O12 R2

O13 R3

j1

[0,6]

[3,9]

[6,12]

j2

O21 R1

O22 R2

[3,12]

[0,9]

j3

O31 R3

O32 R1

O33 R2

[0,6]

[3,9]

[6,12]

j4

O42 R2

O41 R4

[0,9]

[3,12]

Job shop CSP after consistency labeling


Consistency enforcing cont d1

Consistency Enforcing - Cont’d

In Job shop Scheduling Problem

  • Consistence enforcement to Precedence constraint is sufficient to guarantee decomposability.

  • Backtracking can only occur as the result of capacity constraint violations.


4 popular variable ordering heuristics

4. Popular variable ordering heuristics

  • Difficult variables first!

  • Fixed variable ordering heuristics

    • a unique variable ordering is determined prior to starting the search.

    • Require less computing!

  • Dynamic variable ordering heuristics

    • The ordering is dynamically revised in each state in order to account for earlier assignments.

    • More powerful!


4 1 variable ordering heuristics

4.1 Variable ordering heuristics

  • DSR (Dynamic search reassignment)

    • DSR look for the the variable with the smallest number of remaining values.

    • BENCHMARK to determine whether it is worthwhile using a dynamic variable ordering heuristics.

  • Job shop scheduling is more difficult problem for which Dynamic variable ordering heuristic is justified.


4 2 variable ordering heuristics

4.2 Variable ordering heuristics

  • MW (Minimum Width)

    • select a node which has minimal degree remaining after deleting all nodes that have already been selected.

  • MD (Minimum degree)

    • Ordering variables according to their degree in the initial constraint graph.

  • MC (Max Cardinality) Dynamic

    • picks the variable connected to the largest number of already instantiated variables.


5 popular value ordering heuristics

5. Popular value ordering heuristics

  • Least constraining values first!

  • ABT (Advised Backtracking) and MST(Min Spanning Tree)

    • Benchmark in this research.


6 new variable and value ordering heuristics

6. New variable and value ordering heuristics

  • General Consideration

  • A probabilistic model of the search space

  • a variable ordering heuristic based o measures of resource contention

  • a reservation ordering heuristic that attempts to minimize contention

    • Estimation the probability that a reservation survives contention

    • Estimating the probability that a job schedule survives contention


6 1 general consideration

6.1 General Consideration

  • This research aims at developing heuristics that efficiently reduce the expected number of search states that need to be explored


6 2 a probabilistic model of the search space

6.2 A probabilistic model of the search space

  • The chance that a given value will be assigned to a variable

  • the chances that values assigned to different variables conflict with each other.


6 3 a variable ordering heuristic

6.3 a variable ordering heuristic

  • Calculate individual demand of each operation for each resources ==> Dli() (fig10-1, fig10-2)

  • Aggregate each demand for Resource Rj ==> DaggrRj() (fig11-1, fig11-2)

  • Compare each aggregated demand profile ==> select max contention resource Rj*

  • Select Operation Oli which has highest contribute to Rj*(fig12-1, fig12-2)


Fig10 1 r2 s demand profiles

Fig10-1 R2’s demand profiles


Fig10 2 r2 s demand profiles

Fig10-2 R2’s demand profiles


Fig11 1 aggregate demand profiles

Fig11-1 Aggregate demand profiles


Fig11 2 aggregate demand profiles

Fig11-2 Aggregate demand profiles


Fig12 1 orr heuristic

Fig12-1 ORR heuristic


Fig12 2 orr heuristic

Fig12-2 ORR heuristic


6 4 a variable ordering heuristic

6.4 A variable ordering heuristic

  • Estimate the Survivability for each reservation.==> (Fig 13)

  • Estimate the survivability for each job ==> Goodness. (Fig 14)


Fig 13 survivability measures

Fig 13 Survivability measures


Fig 14 reservation goodness

Fig 14 Reservation Goodness


7 empirical evaluation

7. Empirical Evaluation

  • Test data parameters

    • Range parameter : release date and due date distribution control

    • Bottleneck parameter : Number of bottleneck resources

    • Slack parameter


Comparison with other heuristics

Comparison with other heuristics

  • Comparison competitors

    • DSR & ABT

    • DSR & FSS

    • ORR & ABT

    • ORR & FSS

  • Performance Measures

    • Search Efficiency : the number of operations to be scheduled over total number of search states explored

    • Number of experiment solved

    • Average CPU time


Table 1 1

Table 1-1


Table 1 2

Table 1-2


Table 1 3

Table 1-3


  • Login