Daniel Aloise 1 Thiago Noronha 1 Celso Ribeiro 1,2 Caroline Rocha 2

Slides:



Advertisements
Similar presentations
A GRASP Heuristic to the Extended Car Sequencing Problem Lucas Rizzo Sebastián Urrutia Federal University of Minas Gerais.
Advertisements

ECE 667 Synthesis and Verification of Digital Circuits
 Review: The Greedy Method
Ali Husseinzadeh Kashan Spring 2010
Hadi Goudarzi and Massoud Pedram
1 An Adaptive GA for Multi Objective Flexible Manufacturing Systems A. Younes, H. Ghenniwa, S. Areibi uoguelph.ca.
Novembro 2003 Tabu search heuristic for partition coloring1/29 XXXV SBPO XXXV SBPO Natal, 4-7 de novembro de 2003 A Tabu Search Heuristic for Partition.
Multi-Objective Optimization NP-Hard Conflicting objectives – Flow shop with both minimum makespan and tardiness objective – TSP problem with minimum distance,
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Models and Methods for the Judge Assignment Problem Amina Lamghari Jacques A. Ferland Computer Science & OR Dept. University of Montreal.
Wavelength Assignment in Optical Network Design Team 6: Lisa Zhang (Mentor) Brendan Farrell, Yi Huang, Mark Iwen, Ting Wang, Jintong Zheng Progress Report.
Variable Neighborhood Search for the Orienteering Problem ISCIS’06 –The 21st International Symposium on Computer and Information Sciences F. Erdoğan SEVİLGEN.
Augoust /47 Heuristics for the Mirrored Traveling Tournament Problem Celso C. RIBEIRO Sebastián URRUTIA.
May 2004 Minimizing travels by maximizing breaks1/32 Minimizing Travels by Maximizing Breaks in Round Robin Tournament Schedules Celso RIBEIRO UFF and.
A heuristic for a real-life car sequencing problem with multiple requirements Daniel Aloise 1 Thiago Noronha 1 Celso Ribeiro 1,2 Caroline Rocha 2 Sebastián.
GREEDY RANDOMIZED ADAPTIVE SEARCH PROCEDURES Reporter : Benson.
Heuristics for a multi-objective car sequencing problem Daniel Aloise 1 Thiago Noronha 1 Celso Ribeiro 1,2 Caroline Rocha 2 Sebastián Urrutia 1 1 Universidade.
Heuristics for the MTTPROADEF, February /49 Heuristics for the Mirrored Traveling Tournament Problem Celso C. RIBEIRO Sebastián URRUTIA.
2-Layer Crossing Minimisation Johan van Rooij. Overview Problem definitions NP-Hardness proof Heuristics & Performance Practical Computation One layer:
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Elements of the Heuristic Approach
Toshihide IBARAKI Mikio KUBO Tomoyasu MASUDA Takeaki UNO Mutsunori YAGIURA Effective Local Search Algorithms for the Vehicle Routing Problem with General.
HeteroPar 2013 Optimization of a Cloud Resource Management Problem from a Consumer Perspective Rafaelli de C. Coutinho, Lucia M. A. Drummond and Yuri Frota.
IE 607 Constrained Design: Using Constraints to Advantage in Adaptive Optimization in Manufacturing.
Escaping local optimas Accept nonimproving neighbors – Tabu search and simulated annealing Iterating with different initial solutions – Multistart local.
Internet Traffic Engineering by Optimizing OSPF Weights Bernard Fortz (Universit é Libre de Bruxelles) Mikkel Thorup (AT&T Labs-Research) Presented by.
MIC’2011 1/58 IX Metaheuristics International Conference, July 2011 Restart strategies for GRASP+PR Talk given at the 10 th International Symposium on.
Design Techniques for Approximation Algorithms and Approximation Classes.
Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.
June 21, 2007 Minimum Interference Channel Assignment in Multi-Radio Wireless Mesh Networks Anand Prabhu Subramanian, Himanshu Gupta.
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
Solving the Maximum Cardinality Bin Packing Problem with a Weight Annealing-Based Algorithm Kok-Hua Loh University of Maryland Bruce Golden University.
December 2003 Traveling tournament problem1/57 Heuristics for the Traveling Tournament Problem: Scheduling the Brazilian Soccer Championship Celso C. RIBEIRO.
META’08, October 2008Referee assignment in sports leagues: bi-objective approaches 1/35 Celso C. Ribeiro* Alexandre R. Duarte META’08 Hammamet, October.
A local search algorithm with repair procedure for the Roadef 2010 challenge Lauri Ahlroth, André Schumacher, Henri Tokola
Constraint Programming for the Diameter Constrained Minimum Spanning Tree Problem Thiago F. Noronha Celso C. Ribeiro Andréa C. Santos.
Tabu Search for Solving Personnel Scheduling Problem
School of Computer Science & Engineering
Aircraft Landing Problem
Scientific Research Group in Egypt (SRGE)
Data Driven Resource Allocation for Distributed Learning
Heuristic Optimization Methods
Perancangan Sistem Manufaktur
Greedy Technique.
Local Container Truck Routing Problem with its Operational Flexibility Kyungsoo Jeong, Ph.D. Candidate University of California, Irvine Local container.
Perturbation method, lexicographic method
Presented by: Suresh Vadlakonda Ramanjaneya Gupta Pasumarthi
Design and Analysis of Algorithm
ISP and Egress Path Selection for Multihomed Networks
Computer Science cpsc322, Lecture 14
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
Russell and Norvig: Chapter 3, Sections 3.4 – 3.6
Computer Science cpsc322, Lecture 14
Algorithm An algorithm is a finite set of steps required to solve a problem. An algorithm must have following properties: Input: An algorithm must have.
Objective of This Course
Eight-QueenS Problem: Fuzzy Constraint Satisfaction Problem Using Soar
Nurse Scheduling Problems
Haim Kaplan and Uri Zwick
1.206J/16.77J/ESD.215J Airline Schedule Planning
Multi-Objective Optimization
Department of Information Management National Taiwan University
A new and improved algorithm for online bin packing
CPU SCHEDULING.
School of Computer Science & Engineering
Algorithms for Budget-Constrained Survivable Topology Design
Topic 15 Job Shop Scheduling.
CSE 550 Computer Network Design
Flexible Assembly Systems
Chapter 1. Formulations.
IIS Progress Report 2016/01/18.
Presentation transcript:

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

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

X 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. Qual a tradução para body shop e paint shop???? X Heuristics for a multi-objective car sequencing problem

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

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

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

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

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. Minimize the number of violations of ratio constraints. SOFT CONSTRAINTS Heuristics for a multi-objective car sequencing problem

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

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

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

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

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

Basic findings H6 H5 ILS VNS Algorithms: EP-RAF-(ENP) EP-ENP-RAF RAF-EP-(ENP) Construction H6 H5 First objective ILS Second objective VNS Third objective Heuristics for a multi-objective car sequencing problem

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

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

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

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

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

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

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

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

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

Iterated Local Search procedure ILS while stopping criterion not satisfied do 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

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

Problem 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

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

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

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

Problem 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

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

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

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

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

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

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

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

ROADEF Challenge ID Instances EP-RAF-ENP X4 023_S49_J2 X5 024_S49_J2 034_VP_S51_J1_J2_J3 X8 034_VU_S51_J1_J2_J3 X9 039_CH1_S49_J1 X10 039_CH3_S49_J1 X11 048_CH1_S50_J4 X12 048_CH2_S49_J5 X13 064_CH1_S49_J1 X14 064_CH2_S49_J4 X15 655_CH1_S51_J2_J3_J4 X16 655_CH2_S52_J1_J2_S01_J1 ID Instances EP-ENP-RAF X1 025_S49_J1 X2 028_CH1_S50_J4 X3 028_CH2_S51_J1 ID Instances RAF-EP-(ENP) X17 022_S49_J2 X18 035_CH1_S50_J4* X19 035_CH2_S50_J4* Heuristics for a multi-objective car sequencing problem

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

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

Our average results (5 runs) Best average results (5 runs) Numerical results Instances EP-ENP-RAF Our average results (5 runs) Best average results (5 runs) HPRC LPRC PCC Cost X1 0.0 160.0 602.2 160602.2 407.6 160407.6 X2 36.0 341.4 95.4 36341495.4 X3 3.0 Team A PUC-UFF PUC-UFF+ Heuristics for a multi-objective car sequencing problem

Our average results (5 runs) Best average results (5 runs) Numerical results Instances EP-RAF-(ENP) Our average results (5 runs) Best average results (5 runs) HPRC LPRC PCC Cost X4 0.0 77.2 193.0 193077.2 66.0 192.4 192466.0 X5 12.0 352.8 352812.0 6.0 337.0 337006.0 X6 111.8 111866.0 98.4 110.2 110298.4 X7 643.6 58.0 58643.6 794.8 55.2 55994.8 X8 8.0 35.8 87.0 8087035.8 X9 479.6 69.0 69479.6 239.0 69239.0 Team A Team C Team E PUC-UFF Heuristics for a multi-objective car sequencing problem

Our average results (5 runs) Best average results (5 runs) Numerical results Instances EP-RAF-(ENP) Our average results (5 runs) Best average results (5 runs) HPRC LPRC PCC Cost X10 0.0 2162.6 231.0 233162.6 30.0 231030.0 X11 1016.0 196.0 197016.0 1005.6 197005.0 X12 31.0 1128.4 79.0 31080128.4 1116.2 76.8 31077916.2 X13 61.0 81.4 190.8 61190881.4 29.8 187.2 61187229.8 X14 37.0 37000.0 X15 30000.0 X16 153.0 34.0 153034000.0 Team B Team D Team A PUC-UFF+ Heuristics for a multi-objective car sequencing problem

Our average results (5 runs) Best average results (5 runs) Numerical results Instances RAF-EP-(ENP) Our average results (5 runs) Best average results (5 runs) HPRC LPRC PCC Cost X17 2.0 3.0 12.0 12002003.0 X18 10.0 0.0 5.0 5010000.0 X19 56.0 6.0 6056000.0 PUC-UFF+ Heuristics for a multi-objective car sequencing problem

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

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

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

Numerical results Heuristics for a multi-objective car sequencing problem

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