150 likes | 265 Views
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.
E N D
Numerical Analysis of 1||∑wjTjusing MIP and Search Heuristics Raunak Singh (ras2192) IEOR 4405: Production Scheduling 28th April 2009
1||∑wjTj (NP Hard) Simple rules do not work ! And not many complicated ones do too!! • 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!!
1||∑wjTj (NP Hard) Overview of Proposed Heuristic Simulated Annealing Alg. • Combine MIP and local searchto iteratively look for improvements in objective
Interval Indexed Formulation Divide time into discrete polynomial number of “Intervals” ∑pj 0
Interval Indexed Formulation 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 ∑pj 0
Interval Indexed Formulation How can we initially define Intervals? “Intervals as union of feasible schedules” Example: 5 job instance EDD 2 - 3 - 1 - 4 - 5 | 4 - 14 - 18 - 20 - 25 | Value: 178 SPT 4 - 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) ∑pj 0
Interval Indexed Formulation 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 ∑pj 0
Interval Indexed Formulation • Steps to get initial “Good Solution” • Form the initial intervals using the 3 dispatching rules • Feed data to CPLEX • Solve as an LP not IP • 40 job instance: 4,800 variables; 160 constraints • 100 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 ∑pj 0
Simulated Annealing Local Search in well-defined neighborhood Neighborhood 1 Neighborhood 2 ∑pj 0 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
What next? • Solution after Simulated Annealing ≤ LP solution • Add the end points of current best solution to MIP formulation • Resolve the LP ….
Project Status • Implementation completed in C++ (1,200 lines of code) including: • Interval creation • Interfacing with CPLEX to solve LP • Simulated 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
Results Quality of Initial Solution (Before Simulated Annealing) Instance size: 40 jobs # tested: 125 Run time: 0.2 sec Instance size: 100 jobs # tested: 30 Run time: 4 - 5 sec
Results Quality of Final Solution (After iterations of Simulated Annealing) Instance size: 40 jobs # tested: Run time: TO BE COMPLETED… Instance size: 100 jobs # tested: Run time: TO BE COMPLETED…
References • [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