PSU CS410/510SS: Search and Scheduling
Lecture 5
Realistic Scheduling Problems
Administrative
- Homework 3: look at it now
- Project teams
- Syllabus change
- Reading for next week (online)
- Search Research?
Lecture 5
- Brucker: OR Scheduling Notation
- Basics
- Machines M
- Jobs J
- Operations O: sub-jobs
- Machines for O; mu: resources used by O
- Cost f: may be function of t
- Job Characteristics: we care mostly about
- no preemption
- arbitrary precedence (DAG)
- problems with and without release times
- no special processing requirements
- problems with and without deadlines
- Machine Environment: we care mostly about
- QMPM or less
- 1 operation per job
- Job-shop problems
- Objectives
- bottleneck/makespan
- rarely sum
- very common to hack objective together
- Why regular (monotonic) objectives?
- Active (left-most) and semi-active (left-shifted)
schedules.
- Brucker: Common Manufacturing Scheduling Domains
- Disjunctive Graphs
- Various Shop Problems
- Open Shop
- Each job has m operations, m machines
- Operation Oij requires machine j
- Polytime for O2 (w. proof)
- Flow Shop
- Open Shop restricted to Oij
in j order
- Polytime for F2 (w. proof sketch)
- Permutation Flow Shop = Flow Shop with every
machine processing jobs in a given order
- Job Shop
- Flow Shop generalized to
- Allow arbitrary number n of jobs
- Require Oij to be
processed on some given machine
muij
- WLOG muij not equal to mui,j+1
- Very extensively studied
- Famous benchmark: Sadeh (Micro-BOSS) synthetics [Project?]
- Heuristics
- Brucker: Techniques For NP-hard Scheduling
- DFBnB on disjunctive graphs
- Disjunctive graphs = precedence based
- ``Critical path''
- Branching scheme = variable ordering + value
ordering + symmetry breaking
- One possible branching scheme (Grabowski)
- Construct a heuristic soln
- Systematically search all possible improvements
of that soln
- Some improvements can be ruled out by ``candidates
thm''
- ``Heads and Tails''
- Head of job i is lower bound
on span preceding i
- Tail of job i is lower bound
on span following i
- ``Pigeonhole'' refinement for heads and tails
- Carlier and Pinson: cool work on improving this
stuff
- Note complexity of scheme: not necessarily
worth it (i.e. switch search techniques)
- Tabu Search
- Neighborhood = search space
- N1: Flip jobs processed on same machine in critical
path (sound, opt-connected)
- N4: Flip job inside block on critical path close as
possible to beginning or to end of block
- Tabu list: FIFO buffer of visited solns
- Can catch more than one per entry
- Can grow or shrink as needed
- Aspiration: cancelling tabus
- Realistic Constraints In Shop Scheduling
- Deadlines
- Release times
- Setups and forbidden setups
- Fixed times and time relationships
- Time and cost objectives
Author: Bart Massey
<bart@cs.pdx.edu>
Last Updated: 2000/2/8