Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics
description
Transcript of Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics
![Page 1: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/1.jpg)
Raunak Singh (ras2192)IEOR 4405: Production Scheduling
28th April 2009
![Page 2: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/2.jpg)
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!!
![Page 3: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/3.jpg)
Overview of Proposed Heuristic
Simulated Annealing Alg.
Combine MIP and local search to iteratively look for improvements in objective
![Page 4: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/4.jpg)
Divide time into discrete polynomial number of “Intervals”
∑pj0
![Page 5: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/5.jpg)
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
![Page 6: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/6.jpg)
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
![Page 7: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/7.jpg)
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
![Page 8: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/8.jpg)
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
![Page 9: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/9.jpg)
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
![Page 10: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/10.jpg)
• Solution after Simulated Annealing ≤ LP solution
• Add the end points of current best solution to MIP formulation
• Resolve the LP ….
![Page 11: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/11.jpg)
• 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
![Page 12: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/12.jpg)
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
![Page 13: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/13.jpg)
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…
![Page 14: Numerical Analysis of 1||∑ w j T j using MIP and Search Heuristics](https://reader035.fdocuments.us/reader035/viewer/2022070413/56814c46550346895db94a83/html5/thumbnails/14.jpg)
[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