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

## Presentation on theme: "A GRASP Heuristic to the Extended Car Sequencing Problem Lucas Rizzo Sebastián Urrutia Federal University of Minas Gerais."— Presentation transcript:

A GRASP Heuristic to the Extended Car Sequencing Problem Lucas Rizzo {surrutia,rizzo}@dcc.ufmg.br Sebastián Urrutia Federal University of Minas Gerais

Outline The Extended Car Sequencing Problem Heuristic Approach Results Conclusions 2

The car sequencing problem (CSP) involves the schedule of different kinds of cars along an assembly line A group of options need to be installed in each car along this assembly line Each type of option is installed by a station A limited number of cars can be simultaneously handled by each station Introduction 3

The Car Sequencing Problem Definition The CSP is defined by the set of entries –C = {c 1, c 2,..., c n } –V = {v 1, v 2,..., v k } –Vectors p and q associated to each option v i, such that in every sequence of q(v i ) cars at most p(v i ) of then require v i –A function t: C x V {0,1}, that for each car c i and each option v j returns 1 if v j must be installed in c i and 0 otherwise. 4

The CSP is a NP-Complete [2] feasibility problem It consists in finding an arrangement of the cars in a sequence such that the number of upper violations in the objective function is zero 5 The Car Sequencing Problem Definition where

This work deals with the extended version of CSP (xCSP) [1] Now is also considered lower limitations on the number of cars that a station can simultaneously deal with This new limitations aim a more homogeneous distribution of work in the option installation stations The Extended Car Sequencing Problem 6

The xCSP is defined by the same set (C,V,t,p,q) of entries shown for the CSP Differently we have only –Vectors r and s associated to each option v i, such that in every sequence of s(v i ) cars at least r(v i ) of then require v i 7 The Extended Car Sequencing Problem

The xCSP is an optimization problem with an objective function that considers both upper and lower violations Upper violations are considered infinite times more important than the lower ones 8 The Extended Car Sequencing Problem

For upper violations, subsequences with size smaller than q(v i ) are considered at the beginning of the assembly line The reason for this is that in the optimization problem, a subsequence that exceeds the limit of a station by a larger number of cars is considered worse than a subsequence that exceeds by a smaller number of cars 9 The Extended Car Sequencing Problem

Suppose a option v a such that p(v a ) = 2 and q(v a ) = 4. Also suppose r(v a ) = 1 and s(v a ) = 4. X _ _ _ _ X X X _ X X X _ _ _ X X _ _ _ _ _ X X Example Assembly Line 1 Assembly Line 3 Assembly Line 2 10

Suppose a option v a such that p(v a ) = 2 and q(v a ) = 4. Also suppose r(v a ) = 1 and s(v a ) = 4. X _ _ _ _ X X X _ X X X _ _ _ X X _ _ _ _ _ X X Example Assembly Line 1 Assembly Line 3 Assembly Line 2 10

Suppose a option v a such that p(v a ) = 2 and q(v a ) = 4. Also suppose r(v a ) = 1 and s(v a ) = 4. X _ _ _ _ X X X _ X X X _ _ _ X X _ _ _ _ _ X X Example Assembly Line 1 Assembly Line 3 Assembly Line 2 10

Suppose a option v a such that p(v a ) = 2 and q(v a ) = 4. Also suppose r(v a ) = 1 and s(v a ) = 4. X _ _ _ _ X X X _ X X X _ _ _ X X _ _ _ _ _ X X Example Assembly Line 1 Assembly Line 3 Assembly Line 2 10

Suppose a option v a such that p(v a ) = 2 and q(v a ) = 4. Also suppose r(v a ) = 1 and s(v a ) = 4. X _ _ _ _ X X X _ X X X _ _ _ X X _ _ _ _ _ X X Example Assembly Line 1 Assembly Line 3 Assembly Line 2 10

Suppose a option v a such that p(v a ) = 2 and q(v a ) = 4. Also suppose r(v a ) = 1 and s(v a ) = 4. X _ _ _ _ X X X _ X X X _ _ _ X X _ _ _ _ _ X X Example Assembly Line 1 Assembly Line 3 Assembly Line 2 10

Suppose a option v a such that p(v a ) = 2 and q(v a ) = 4. Also suppose r(v a ) = 1 and s(v a ) = 4. X _ _ _ _ X X X _ X X X _ _ _ X X _ _ _ _ _ X X Example Assembly Line 1 Assembly Line 3 Assembly Line 2 10

Heuristic Approach To heuristically solve the problem we implemented an algorithm based on the GRASP metaheuristic 1. Final Solution 2. For k=1 to MAX ITERATIONS 3. Solution Randomized Greedy Algorithm 4. Solution Local Search (Solution) 5. If Solution better than Final Solution Then 6. Final Solution Solution 7. End If 8. End For 9. Return Final Solution 11

Heuristic Approach To heuristically solve the problem we implemented an algorithm based on the GRASP metaheuristic 1. Final Solution 2. For k=1 to MAX ITERATIONS 3. Solution Randomized Greedy Algorithm 4. Solution Local Search (Solution) 5. If Solution better than Final Solution Then 6. Final Solution Solution 7. End If 8. End For 9. Return Final Solution 11

Heuristic Approach To heuristically solve the problem we implemented an algorithm based on the GRASP metaheuristic 1. Final Solution 2. For k=1 to MAX ITERATIONS 3. Solution Randomized Greedy Algorithm 4. Solution Local Search (Solution) 5. If Solution better than Final Solution Then 6. Final Solution Solution 7. End If 8. End For 9. Return Final Solution 11

We can build a initial solution by iteratively choosing the car that minimize the cost of the new sequence This car is added to the last position of the sequence Ties in this criterion are not only possible but frequent, for this case we present tie- breaking criterion Randomized Greedy Algorithm 12

Tie-Breaking Criterion Choose the car that minimizes the lower violations If ties persist, create a restricted candidate list by randomly choosing two of the cars tied. Choose the car that has the larger dynamic highest utilization rate [3]. 13

The dynamic highest utilization (DHU) for an option v i is the ratio between the number of cars requiring the option v i in the current sequence, and the number of cars requiring the option that could be schedule in the current sequence without violations The car with the larger dynamic highest utilization rate is the one which has the options with the highest DHU. Tie-Breaking Criteria 14

Only the swap operator was implemented. It consists in exchanging two given cars in a given sequence All feasible solutions are reachable from any other solution by a finite number of swap movements. Therefore the neighborhood is connected. Because of this property, the swap operator when well implemented allow us to construct an efficient local search Local Search 15

To compare neighbors solutions we consider first of all upper violations and only if they are tied in this criterium, we compute lower violations. This is because upper violations have infinite times more importance than lower violations Furthermore this strategy reduces the evaluation time, resulting in a more efficient local search. Local Search 16

Given cars c i and c j, the swap will only change the value of the objective function if exist an option v i V such that t(c i,v i ) t(c j,v i ) The cost function may only vary in subsequences affected by the movement Auxiliary vectors for each option v i stores the number of cars that have v i in their subsequences. This allow us, in O(1), to decide when a car will generate a violation if placed in a sequence. Swap Operator 17

That implies a complexity of O(|V|*q max + |V|*s max ) for a possible exchange With this low complexity all possible exchanges can be tested in a very efficient way. 18 Swap Operator

A total of 74 instances, provided by CSPlib [7], were used in the experiments Four instances have 100 cars while the other 70 instances have 200 cars. Each instance considers five possible options to be or not installed in each car Results 19

Instances are divided in eight groups according to the percentage of use of each option. These vary between 60% and 90%. The first group contains four classical instances while the rest of the groups contain 10 instances each. In order to adapt the instances to the xCSP we build the restrictions of minimum as s(v i ) = q(v i ) and r(v i ) = p(v i ) – 1 Results are compared with [1]. As far as we know this is the only work dealing with the xCSP. Results 20

Both instances and machine are identical to the ones used in [1] The average time to each GRASP iteration was 0.3 seconds for the proposed algorithm while in [1] an average time of 1 second per GRASP iteration is reported 21 Results

22

Results 22

Results 22

Results 23

Results 23

Conclusions A heuristic based on the GRASP metaheuristic was implemented for the Extended Car Sequencing Problem This heuristic presents a randomized greedy algorithm and a simple but efficient local search Results were compared with the literature using the same instances and machine 24

A careful implementation of the local search procedure in terms of the cost evaluation of neighbors solutions allowed us to decrease the time of execution of every GRASP iteration in comparison with [1] In consequence our algorithm found much better solutions in the same execution time 25 Conclusions

Further research includes the usage of other neighborhoods in the local search procedure and the developing of new heuristics based on other metaheuristics We intend to perform a fine tuning of the algorithm, for example for the size of the restricted candidate list. Preliminary experiments show that better results may be obtained. 26 Conclusions

A GRASP Heuristic to the Extended Car Sequencing Problem Lucas Rizzo {surrutia,rizzo}@dcc.ufmg.br Sebastián Urrutia Federal University of Minas Gerais

References [1] Bautista, J., Pereira, J. and Adenso-Díaz, B. A GRASP approach for the extended car sequencing problem, Journal of Scheduling, v.11, p.3-16, 2008. [2] Gent, I. Two results on car-sequencing problems (Technical report APES-02-1998). [3] Gottlieb, J., Puchta, M. and Solnon, C. A study of greedy, local search and ant colony optimization approaches for car sequencing problems. In Lecture notes in computer science: Vol. 2611, 246-257, 2003. [4] Feo T. A. and Resende M. G. C. A probabilistic heuristic for a computationally difficult set covering problem. Operations Research Letters, 8, 67-71, 1989

[5] Regin, J. C. and Puget, J. F. A filtering algorithm for global sequencing constraints. In Lecture notes in computer science: Vol. 1330, 32-46, 1997. [6] Resende, M.G.C. and Ribeiro, C.C. Greedy randomized adaptive search procedures: Advances, hybridizations, and applications, Handbook of Metaheuristics (M. Gendreau e J.- Y. Potvin, editors), 283-319, Springer, 2nd edition, 2010. [7] http://www.csplib.org/ References

Download ppt "A GRASP Heuristic to the Extended Car Sequencing Problem Lucas Rizzo Sebastián Urrutia Federal University of Minas Gerais."

Similar presentations