1 / 49

A heuristic for a real-life car sequencing problem with multiple requirements

A heuristic for a real-life car sequencing problem with multiple requirements. EURO VNS Tenerife, Spain November 2005. Daniel Aloise 1 Thiago Noronha 1 Celso Ribeiro 1,2 Caroline Rocha 2 Sebastián Urrutia 1. 1 Universidade Católica do Rio de Janeiro, Brazil

faye
Download Presentation

A heuristic for a real-life car sequencing problem with multiple requirements

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A heuristic for a real-life car sequencing problemwith multiple requirements EURO VNS Tenerife, Spain November 2005 Daniel Aloise 1 Thiago Noronha 1 Celso Ribeiro 1,2 Caroline Rocha 2 Sebastián Urrutia1 1Universidade Católica do Rio de Janeiro, Brazil 2Universidade Federal Fluminense, Brazil

  2. Summary • Problem statement • Basic findings • Construction heuristics • Neighborhoods • Local search • Other neighborhoods • Improvement heuristics • ROADEF challenge • Implementation issues • Numerical results Heuristics for a multi-objective car sequencing problem

  3. Problem statement • Scheduling in a car factory consists in: • Assigning a production day to each vehicle, according to production line capacities and delivery dates; • Scheduling the order of cars to be put on the production line for each day, while satisfying as many requirements as possible of the plant shops: body shop, paint shop and assembly line. X Heuristics for a multi-objective car sequencing problem

  4. Problem statement • Paint shop requirements: • The paint shop has to minimize the consumption of paint solvent used to wash spray guns each time the paint color is changed between two consecutive scheduled vehicles. • Therefore, there is a requirement to group vehicles together by paint color. Minimize the number of paint color changes (PCC) in the sequence of scheduled vehicles. Heuristics for a multi-objective car sequencing problem

  5. 7 washes! 2 washes! Color batches have an upper bound on the batch size. HARD CONSTRAINT Problem statement Heuristics for a multi-objective car sequencing problem

  6. Problem statement • Assembly line requirements: • Vehicles that require special assembly operations have to be evenly distributed throughout the total processed cars. • These cars may not exceed a given quota over any sequence of vehicles. • This requirement is modeled by a ratio constraint N/P: at most N cars in each consecutive sequence of P cars are associated with this constraint. Heuristics for a multi-objective car sequencing problem

  7. There must be no more than 3 constrained cars in any consecutive sequence of 5 vehicles . N/P = 3/5 It means that 2 constrained cars must be separated by at least P-1 consecutive non-constrained vehicles . N/P = 1/P Problem statement P-1 cars X _ _ ... _ _ X Non-constrained car Constrained car Heuristics for a multi-objective car sequencing problem

  8. Minimize the number of violations of ratio constraints. SOFT CONSTRAINTS Problem statement • Assembly line requirements (cont.) • There are two classes of ratio constraints: • High priority level ratio constraints (HPRC) are due to car characteristics that require a heavy workload on the assembly line. • Low priority level ratio constraints (LPRC) result from car characteristics that cause small inconvenience to production. Heuristics for a multi-objective car sequencing problem

  9. Problem statement • Cost function: • Weights are associated to the objectives according to their priorities • Lexicographic formulation is handled as a single-objective problem Solution cost: P1  number of violations of HPRC + + P2  number of violations of LPRC + + P3  number of paint color changes EP-ENP-RAF P1 >> P2 >> P3 Heuristics for a multi-objective car sequencing problem

  10. Problem statement • Problem: find the sequence of cars that optimizes painting and assembling requirements. • Three different lexicographic problems exist: EP-RAF-(ENP) • Minimize the number of violations of high priority ratio constraints • Minimize the number of paint color changes • * Minimize the number of violations of low priority ratio constraints EP-ENP-RAF • Minimize the number of violations of high priority ratio constraints • Minimize the number of violations of low priority ratio constraints • Minimize the number of paint color changes RAF-EP-(ENP) • Minimize the number of paint color changes • Minimize the number of violations of high priority ratio constraints • * Minimize the number of violations of low priority ratio constraints Heuristics for a multi-objective car sequencing problem

  11. Notation • Some notation: • Paint color changes: PCC • High priority ratio constraints: HPRC • Low priority ratio constraints: LPRC • Ratio constraint N/P: at most N cars associated with this constraint in any sequence of P cars • Number of cars: n • Number of constraints: m Heuristics for a multi-objective car sequencing problem

  12. Basic findings • Heuristics are very sensitive to initial solutions: • Effective quick construction heuristics are a must. • Same algorithm behaves differently for each problem: • Specific heuristics for each problem. • Weight structure strongly differentiates the three objectives: • Algorithms should handle one objective at a time. • Specific algorithms for each objective of each problem. • All objectives should be taken into account: triggering strategies. Heuristics for a multi-objective car sequencing problem

  13. Basic findings • Four step approach: Construction heuristic First objective optimization Second objective optimization Third objective optimization Heuristics for a multi-objective car sequencing problem

  14. Basic findings Heuristics for a multi-objective car sequencing problem

  15. Basic findings • Many neighborhood definitions exist: • Explore simple neighborhoods for local search. • Use complex moves as perturbations. • Time limit is restrictive: • Optimize move evaluations and local search. • Use appropriate data structures. • Optimal number of paint color changes can be exactly computed in polynomial time: • Initial solutions for problem RAF-EP-(ENP) will have the minimum number of paint color changes. Heuristics for a multi-objective car sequencing problem

  16. Construction heuristics • Heuristic H5: • Starts with the sequence of cars from day D-1. • At each iteration, a yet unselected car is considered for insertion into the partial solution. • Best position (possibly in the middle) to schedule this car into the sequence of cars already scheduled is that with the smallest increase in the cost function. • Insertions into positions corresponding to infeasible partial solutions are discarded. • Obtains a solution minimizing PCC. • Complexity: O(m.n2) Heuristics for a multi-objective car sequencing problem

  17. Construction heuristics • Heuristic H6: • Greedy strategy using the number of additional HPRC violations to define the next car to be placed at the end of the partial sequence. • Ties are broken in favor of more equilibrated car distributions. • Second tie breaking criterion based on the hardness of each constraint: • Harder constraints are those applied to more cars and that have smaller ratios. • Cars with harder constraints are scheduled first. • Complexity: O(m.n2) Heuristics for a multi-objective car sequencing problem

  18. Neighborhoods • Local search explores two different types of moves (neighborhoods) evaluated in time O(1): • swap: the positions of two cars are exchanged • shift: a car is moved from its current position to a new specific position Heuristics for a multi-objective car sequencing problem

  19. Local search • Local search uses swap and shift moves. • Quick local search: only cars involved in violations. • Full search: too many cars involved in violations. • For each car, select the best improving move. • In case of ties, best moves are kept in a candidate list from which one of them is randomly selected. • Better and same cost solutions are accepted. • Move evaluations quickly performed in time O(m). • Search stops when all cars have been investigated without improvement. Heuristics for a multi-objective car sequencing problem

  20. Other neighborhoods • Four types of moves are explored as perturbations: • k-swap: k pairs of cars have their positions exchanged Heuristics for a multi-objective car sequencing problem

  21. Other neighborhoods • Four types of moves are explored as perturbations: • group swap: two groups of cars painted with different colors are exchanged Heuristics for a multi-objective car sequencing problem

  22. Other neighborhoods • Four types of moves are explored as perturbations: • inversion: order of the cars in a group painted with the same color is reverted Heuristics for a multi-objective car sequencing problem

  23. Other neighborhoods • Four types of moves are explored as perturbations: • reinsertion: cars involved in violations are eliminated and greedily reinserted Heuristics for a multi-objective car sequencing problem

  24. Iterated Local Search procedureILS whilestopping criterion not satisfieddo s0 BuildRandomizedInitialSolution() s*  LocalSearch(s0) repeat s’  Perturbation(s*) s’  LocalSearch(s’) s*  AcceptanceCriterion(s*,s’) until reinitialization criterion satisfied end-while end Heuristics for a multi-objective car sequencing problem

  25. procedureVNS s*  BuildInitialSolution() Select neighborhoods Nk, k = 1,...,kmax while stopping criterion not satisfied do k  1 while k  kmaxdo s’  Shaking(s*, Nk) s”  LocalSearch(s’) s*  AcceptanceCriterion(s*,s”) if s* = s” then k  1 else k  k + 1 end-while end-while end Variable Neighborhood Search Heuristics for a multi-objective car sequencing problem

  26. Problem EP-RAF-(ENP) EP-RAF-(ENP) • Build initial solution: H6 • Improve 1st objective: ILS with restarts • Make solution feasible for PCC • Improve 2nd objective without deteriorating the 1st: VNS • Improve 3rd objective without deteriorating the 1st and 2nd: ILS with restarts • Minimize the number of violations of high priority ratio constraints • Minimize the number of paint color changes • * Minimize the number of violations of low priority ratio constraints Heuristics for a multi-objective car sequencing problem

  27. Problem EP-RAF-(ENP) • Optimization of the first objective HPRC: • Build initial solution: H6 • Improvement: Iterated Local Search (ILS) with restarts • Only first objective is considered. • Local search: swap moves • Intensification: shift followed by swap moves • Perturbations: reinsertion moves • Reinitializations: H6 or reinsertions • Stopping criterion: number of reinitializations without improvement or given fraction of total time Heuristics for a multi-objective car sequencing problem

  28. Problem EP-RAF-(ENP) • Optimization of the second objective PCC: • Repair heuristic to make solution feasible for PCC • Improvement: Variable Neighborhood Search (VNS) • First and second objectives are considered. • First objective does not deteriorate. • Local search: swap moves • Shaking: k-swap moves (kmax=20) • Intensification: shift followed by swap moves • Stopping criterion: number of intensifications without improvement or given fraction of total time Heuristics for a multi-objective car sequencing problem

  29. Problem EP-RAF-(ENP) • Optimization of the third objective LPRC: • Improvement: Iterated Local Search (ILS) with restarts • All three objectives are simultaneously considered. • First and second objectives do not deteriorate. • Local search: swap moves • Intensification: shift followed by swap moves • Perturbations: inversion and group swap moves • Reinitializations: variant of H6 that do not deteriorate the first and second objectives • Stopping criterion: time limit Heuristics for a multi-objective car sequencing problem

  30. Problem EP-ENP-RAF EP-ENP-RAF • Build initial solution: H6 • Improve 1st objective: ILS with restarts • Improve 2nd objective without deteriorating the 1st: VNS • Make solution feasible for PCC • Improve 3rd objective without deteriorating the 1st and 2nd: VNS • Minimize the number of violations of high priority ratio constraints • Minimize the number of violations of low priority ratio constraints • Minimize the number of paint color changes Heuristics for a multi-objective car sequencing problem

  31. Problem EP-ENP-RAF • Optimization of the first objective HPRC: • Build initial solution: H6 • Improvement: Iterated Local Search (ILS) with restarts • Only first objective is considered. • Local search: swap moves • Intensification: shift followed by swap moves • Perturbations: reinsertion moves • Reinitializations: H6 or reinsertions • Stopping criterion: number of reinitializations without improvement or given fraction of total time Heuristics for a multi-objective car sequencing problem

  32. Problem EP-ENP-RAF • Optimization of the second objective LPRC: • Improvement: Variable Neighborhood Search (VNS) • First and second objectives are considered. • First objective does not deteriorate. • Local search: swap moves • Shaking: reinsertion and k-swap moves • Intensification: shift followed by swap moves • Stopping criterion: number of intensifications without improvement or given fraction of total time Heuristics for a multi-objective car sequencing problem

  33. Problem EP-ENP-RAF • Optimization of the third objective PCC: • Repair heuristics to make solution feasible for PCC: • Antecipatory analysis: build good solution for PCC • Swap moves to find feasible solution for PCC • Shift moves to ensure feasibility: solution may deteriorate • Improvement: Variable Neighborhood Search (VNS) • All three objectives are simultaneously considered. • First and second objectives do not deteriorate. • Local search: swap moves • Shaking: reinsertion and k-swap moves • Intensification: shift followed by swap moves • Stopping criterion: time limit Heuristics for a multi-objective car sequencing problem

  34. Problem RAF-EP-(ENP) RAF-EP-(ENP) • Build initial solution minimizing 1st objective PCC: H5 • Improve 2nd objective without deteriorating the 1st: ILS with restarts • Improve 3rd objective without deteriorating the 1st and 2nd: ILS with restarts • Minimize the number of paint color changes • Minimize the number of violations of high priority ratio constraints • * Minimize the number of violations of low priority ratio constraints Heuristics for a multi-objective car sequencing problem

  35. Problem RAF-EP-(ENP) • Optimization of the second objective HPRC: • Improvement: Iterated Local Search (ILS) with restarts • First and second objectives are considered. • First objective does not deteriorate. • Local search: swap moves • Intensification: shift followed by swap moves • Perturbations: group swap and inversion moves • Reinitializations: H5 • Stopping criterion: same solution hit many times after given fraction of total time Heuristics for a multi-objective car sequencing problem

  36. Problem RAF-EP-(ENP) • Optimization of the third objective LPRC: • Improvement: Iterated Local Search (ILS) with restarts • All three objectives are simultaneously considered. • First and second objectives do not deteriorate. • Local search: swap moves • Intensification: shift followed by swap moves • Perturbations: inversion and group swap moves • Reinitializations: variant of H6 that do not deteriorate the first and second objectives • Stopping criterion: time limit Heuristics for a multi-objective car sequencing problem

  37. ROADEF Challenge • Real life problem proposed by Renault • First phase: • Test set A provided by Renault (16 instances) • Results evaluated for instances in test set A • Best teams selected (52 candidates) • Second phase: • Test set B provided by Renault (45 instances) • Teams improved their codes using test set B • Third and final phase: • Renault evaluated the algorithms using test set X of unknown instances (19 instances) • Instances of the three types in each test set Heuristics for a multi-objective car sequencing problem

  38. ROADEF Challenge Heuristics for a multi-objective car sequencing problem

  39. Implementation issues • Same quality solutions (ties) encouraged, accepted, and explored to diversify the search. • Neighbors that cannot improve the current solution are not investigated, for example: • To do not deteriorate PCC, a car inside (but not in the border of) a color group may only be exchanged with another car with the same color. • Swap of two cars not involved in violations cannot improve the total number of violations. • Only shift moves of isolated cars can reduce the number of paint color changes. Heuristics for a multi-objective car sequencing problem

  40. Implementation issues • Codes in C++ compiled with version 3.2.2 of the gcc compiler with the optimization flag -O3. • Extensive use of profiling for code optimization. • Approximately 27000 lines of code. • C++ library routines linked with flag -static -lstdc++ • Computational experiments on a Pentium IV with 1.8 GHz clock and 512 Mbytes of RAM memory. • Time limit: 600 seconds (imposed by Renault). • Schrage’s random number generator. Heuristics for a multi-objective car sequencing problem

  41. Numerical results Heuristics for a multi-objective car sequencing problem

  42. Numerical results Heuristics for a multi-objective car sequencing problem

  43. Numerical results Heuristics for a multi-objective car sequencing problem

  44. Numerical results Heuristics for a multi-objective car sequencing problem

  45. Numerical results average cost running time (s) Heuristics for a multi-objective car sequencing problem

  46. Numerical results average cost running time (s) Heuristics for a multi-objective car sequencing problem

  47. Numerical results average cost running time (s) Heuristics for a multi-objective car sequencing problem

  48. Numerical results Heuristics for a multi-objective car sequencing problem

  49. Numerical results Team A: B. Estelllon, F. Gardi, K. Nouioua Team PUC-UFF: D. Aloise, T. Noronha, C. Ribeiro, C. Rocha, S. Urrutia Heuristics for a multi-objective car sequencing problem

More Related