290 likes | 476 Views
Characterizing the Distribution of Low-Makespan Schedules in the Job Shop Scheduling Problem. Matthew J. Streeter Stephen F. Smith Carnegie Mellon University. Outline. Introduction & related work Definitions Results Backbone size Clustering of low-makespan schedules
E N D
Characterizing the Distribution of Low-Makespan Schedules in the Job Shop Scheduling Problem Matthew J. Streeter Stephen F. Smith Carnegie Mellon University
Outline • Introduction & related work • Definitions • Results • Backbone size • Clustering of low-makespan schedules • Neighborhood exactness • Conclusions
Introduction • Goal: to determine how optimal schedules are geographically distributed in the search space in random instances of the JSSP, as a function of the job:machine ratio • A first step toward understanding the success of heuristics (e.g., path relinking) for the JSSP
Related work: the ‘big valley’ • Boese et al. (1994) generated random locally optimal TSP tours, measured two correlations: • correlation between cost of tour and avg. distance to other tours • correlation between cost of tour and distance to best tour • Both correlations were suprisingly high; suggests ‘big valley’ distribution of local optima • Similar correlations found for job shop (Nowicki & Smutnicki 2001) and permutation flow shop (Watson et al. 2002) problems
Related work • Statistical mechanical analyses of TSP (Mézard and Parisi 1986) • Empirical studies of backbone size in JSSP, SAT, & other problems (Slaney & Walsh 2001; Watson et al. 2001)
JSSP instance M7 M8 M8 M4 M0 M2 • Set of N jobs, each a sequence of M operations • Each operation has specific machine, duration • Each job uses each machine exactly once M2 M0 M5 M6 M9 M3 M7 M9 M1 M4 M3 M1 M5 M6 Job 1 Job 2
M8 M4 M0 M2 JSSP schedule M7 • Assigns start time to each operation • Feasible if • no machine is scheduled to perform two operations simultaneously, and • operation i of a job does not start until operation i-1 completes • Makespan = maximum operation completion time M8 M2 M0 M5 M9 time M6 M3 M7 M9 M1 M4 M3 M1 M5 M6 Job 1 Job 2
M8 M4 M0 M2 Sink Disjunctive Graphs M7 M8 M8 M4 • Weighted, directed graph representation of JSSP schedule • Makespan = length of longest weighted path from source to sink M0 M2 M7 M2 M8 M0 M2 M5 M6 M9 M0 M3 M5 time M9 M7 M6 M9 M3 M7 M9 M1 M4 M1 M4 M3 M3 M1 M1 M5 M5 M6 M6 Job 2 Job 1 Source
-Backbone • Set of disjunctive edges that have the same orientation in all schedules whose makespan is within a factor of optimal
Random JSSP instances • Fixed N and M. • Each job uses the machines in a random order • Operation durations are i.i.d.
Determining |-backbone| empirically • Let optoo’ be the optimum makespan among schedules that start o before o’ • If o and o’ use the same machine, then min(optoo’, opto’o) = [optimal makespan] • An edge e = {o,o’} is in -backbone iff. max(optoo’, opto’o) > *[optimal makespan] • Can determine optoo’ using branch and bound
Claim • For fixed N, a random disjunctive edge is in the 1-backbone w.h.p. (as M )
Resolve resource conflicts randomly Expected increase in makespan is O(1) Proof idea time Schedule, ignoring resource constraints makespan < N+sqrt(N)*log(N) w.h.p. Orient a random disjunctive edge the “wrong” way Ensures makespan > N+sqrt(N)*log(N) w.h.p.
Claim • For fixed M, a random disjunctive edge is not in the 1-backbone w.h.p. (as N )
Proof idea J7 J9 J4 J8 • Lemma: w.h.p. we can build a schedule with no idle time on any machine J6 J3 J5 J1 J2 J0 J9 J8 J7 J6 J4 J5 J3 J2 J0 J1 Machine 1 Machine 2
Proof idea J98 J97 • Let e = {o,o’} connect operations of jobs J and J’. • Remove J and J’ from instance, and use Lemma to build schedule • Schedule J and J’ during “long” period when all but one machine is idle J99 . . . J96 J3 . . . J’ J2 J1 J O(1) J0 J J’ J98 J99 J96 J97 . . . . . . J3 J2 J0 J1 Machine 1 Machine 2
Clustering of low-makespan schedules • Use simulated annealing to generate “random” schedules within a given factor of optimal • For each , compute average distance between random schedules, where distance = # of disjunctive edges with different orientation
Neighborhood exactness • Nr(S) = set of schedules that differ from S on at most r edges • exactness(Nr) = probability that a random local optimum under Nr is globally optimal • A way to quantify “ruggedness” of search landscape
Summary of contributions • Two analytical results on backbone size in JSSP • Experimental investigation of clustering of low-makespan schedules as a function of job:machine ratio • Tool (neighborhood exactness) to quantify ‘ruggedness’ of search landscape
An intuitive picture ? • many global optima, • far apart, • ‘smooth’ search space 1 0 • few global optima, • close together, • ‘smooth’ search space • big valley?