Upload
lauren
View
27
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics. Raunak Singh (ras2192) IEOR 4405: Production Scheduling 28 th April 2009. 1||∑ w j T j (NP Hard). Simple rules do not work ! And not many complicated ones do too!!. Exact Solution Procedures MIP based Branch & Bound alg. - PowerPoint PPT Presentation
Citation preview
Raunak Singh (ras2192)IEOR 4405: Production Scheduling
28th April 2009
Exact Solution Procedures
MIP based
• Branch & Bound alg.• Strong valid inequalities
Prohibitively large!!
Approx. Solution Procedures
Search heuristics
• Iterated Dynasearch• Ant Colony Optimization
:
Combinatorial Explosion!!
Simple rules do not work ! And not many complicated ones do too!!
Overview of Proposed Heuristic
Simulated Annealing Alg.
Combine MIP and local search to iteratively look for improvements in objective
Divide time into discrete polynomial number of “Intervals”
∑pj0
Divide time into discrete polynomial number of “Intervals”
• LP of reasonable size, relaxation can be quickly solved with modern solvers
• Don’t know the exact completion time of jobs, objective value is approx.• Needs post-processing to come up with feasible schedule
Overestimate Model: End pts of Intervals used to approximate Tardiness
Observations•Solution Quality depends on closeness of intervals to end points in optimal sequence•If intervals contain optimal end points, this model guarantees to find opt solution
∑pj0
How can we initially define Intervals?“Intervals as union of feasible schedules”
Example: 5 job instance
EDD2 - 3 - 1 - 4 - 5 | 4 - 14 - 18 - 20 - 25 | Value: 178SPT4 - 1 - 2 - 5 - 3 | 2 - 6 - 10 - 15 - 25 | Value: 124
Intervals: (0,2], (2,4], (4,6], (6,10], (10,14], (14,15], (15,18], (18, 20], (20,25]LP Solution: 2 - 4 - 1 - 3 - 5 | 4 - 6 - 10 - 20 - 25 | Value: 91 (optimal)
∑pj0
How can we initially define Intervals?
Dispatch Rules used for defining intervals:
End points given by:(EDD) U (WSPT) U (ATC)
Apparent Tardiness Cost Rule (ATC):
Ref. Parameter k mapping function from [6] Valente
∑pj0
Steps to get initial “Good Solution”
• Form the initial intervals using the 3 dispatching rules
• Feed data to CPLEXSolve as an LP not IP
40 job instance: 4,800 variables; 160 constraints100 job instance: 30,000 variables; 400 constraints
Schedule by α – point (α taken 0.98)
• Post-processing to get a feasible schedule Break ties by EDD
• Use this as a seed solution for simulated annealing
∑pj0
0 ∑pj
Local Search in well-defined neighborhood
Neighborhood 1 Neighborhood 2
Adjacent Pair-wise Interchanges
Acceptance Probability(0 < β < 1; k = 1..# stages)
Termination Condition for Simulated Annealing:• All pair-wise interchanges in neighborhoods exhausted, or• Maximum number of iterations reached
Ref. Simulated Annealing algorithm from [3] Matsou, Suh, Sullivan
• Solution after Simulated Annealing ≤ LP solution
• Add the end points of current best solution to MIP formulation
• Resolve the LP ….
• Implementation completed in C++ (1,200 lines of code) including: Interval creationInterfacing with CPLEX to solve LPSimulated Annealing Data structures and running time considerations
• Testing and Statistical Analysis of Quality of Solution (in progress..)
• Comparison with other heuristics (in progress..)
Test Instances from OR-library (125 instances of 40, 50, 100 jobs each)http://people.brunel.ac.uk/~mastjjb/jeb/info.html
Deviation # of instances≤ 1% 241 - 2% 42 - 5% 0
5 - 10% 0> 10% 2Mean 3.05
Median 0.15
Deviation # of instances≤ 1% 731 - 2% 122 - 5% 205 - 10% 11> 10% 9Mean 3.85
Median 0.71
Quality of Initial Solution (Before Simulated Annealing)
Instance size: 40 jobs# tested: 125Run time: 0.2 sec
Instance size: 100 jobs# tested: 30Run time: 4 - 5 sec
Quality of Final Solution (After iterations of Simulated Annealing)
Instance size: 40 jobs# tested: Run time:
Instance size: 100 jobs# tested:Run time:
TO BE COMPLETED…
TO BE COMPLETED…
[1] Interval-indexed formulation based heuristics for single machine total weighted tardiness problem - Altunc, Keha
[2] Scheduling To Minimize Average Completion Time: Off-line and On-line Algorithms - Hall, Shmoyst , Wein
[3] A Controlled Search Simulated Annealing Method for the single machine weighted tardiness problem - Matsuo, Suh, Sullivan
[4] Local Search Heuristics for the Single Machine Total Weighted Tardiness Scheduling Problem - Crauwels, Potts, Wassenhove
[5] A time indexed formulation of non-preemptive single machine scheduling problems - Sousa, Wolsey
[6] Improving the performance of the ATC dispatch rule by using workload data to determine the lookahead parameter value - Valente
[7] An Experimental Study of LP-Based Approximation Algorithms for Scheduling Problems - Savelsbergh, Uma, Wein