A study of constraint programming heuristics for the car-sequencing problem

https://doi.org/10.1016/j.engappai.2014.10.009Get rights and content

Abstract

In the car-sequencing problem, a number of cars have to be sequenced on an assembly line respecting several constraints. This problem was addressed by both Operations Research (OR) and Constraint Programming (CP) communities, either as a decision problem or as an optimization problem. In this paper, we consider the decision variant of the car sequencing problem and we propose a systematic way to classify heuristics for solving it. This classification is based on a set of four criteria, and we consider all relevant combinations for these criteria. Some combinations correspond to common heuristics used in the past, whereas many others are novel. Not surprisingly, our empirical evaluation confirms earlier findings that specific heuristics are very important for efficiently solving the car-sequencing problem (see for instance Smith, 1996), in fact, often as important or more than the propagation method. Moreover, through a criteria analysis, we are able to get several new insights into what makes a good heuristic for this problem. In particular, we show that the criterion used to select the most constrained option is critical, and the best choice is fairly reliably the “load” of an option. Similarly, branching on the type of vehicle is more efficient than branching on the use of an option. Overall, we can therefore indicate with a relatively high confidence which is the most robust strategy, or at least outline a small set of potentially best strategies.

Last, following a remark in Régin and Puget (1997) stating that the notion of slack used in heuristics induces a pruning rule, we propose an algorithm for this method and experimentally evaluate it, showing that, although computationally cheap and easy to implement, this is in practice a very efficient way to solve car-sequencing benchmarks.

Introduction

The car-sequencing problem comes from the automotive industry and has a long history in constraint programming. In this problem, a number of cars have to be sequenced on an assembly line. Each class of cars requires a set of options. However, the working station handling a given option can only mount it on a fraction of the cars passing on the line. Each option j is then associated with a fractional number pj/qj standing for its capacity (no more than pj cars with this option j should occur in any sub-sequence of length qj).

The car-sequencing was first introduced as a Constraint Satisfaction Problem (CSP) modeled using CHIP (Dincbas et al., 1988), and later an optimization variant of this problem was used as benchmark for the Roadef Challenge in 2005 (see Solnon et al., 2008 for a survey of the methods used during the Challenge). The decision version of the problem, that we shall consider in this paper, asks if a given set of cars can be sequenced on the assembly line in such a way that the line never has to slow down. This problem is NP-hard in the strong sense (Kis, 2004).

Our contributions are divided into two major points. First, we provide an empirical study regarding car-sequencing heuristics. To the best of our knowledge, this is the most complete heuristics study for this problem. For the experiments, all heuristics are included in a complete chronological backtracking method. Moreover, we combine these heuristics to several known filtering algorithms to evaluate the trade-off between search and propagation.

We show the interest of some new heuristics in our experiments as well as the impact of the branching strategy comparatively to filtering algorithms.

This empirical study is based on a new classification of heuristics for the car sequencing. This classification is based on a set of four criteria: branching variables, exploration directions, selection of branching variables and aggregation functions for this selection. In particular, we show that the way of selecting the most constrained option is critical, and the best choice is fairly reliably the “load” of an option, that is the ratio between its demand and the capacity of the corresponding machine. Similarly, branching on the class of vehicle is more efficient than branching on the use of an option. Overall, even though results vary greatly from instance to instance, we can therefore indicate with a relatively high confidence which is the most robust strategy, or at least outline a small set of potentially best strategies.

Second, we propose a new filtering rule, using the notion of slack introduced by Régin and Puget (1997). This filtering can be used only when variables are explored in the lexicographic order. However, as shown by Smith (1996), this is a good strategy for this problem. Moreover, this filtering rule greatly improves the performance of our model whilst being almost free computationally.

In this paper, we are mainly interested in heuristics for solving the decision variant of the car-sequencing problem, although we shall draw a link with propagation in Section 5. However, such study provides insights on resolving optimization car-sequencing variants. In fact, there are two standard types of objective functions for the car-sequencing problem. One somehow counts the number of constraint violations. This is the objective function used for instance in the Roadef challenge 2005 (Solnon et al., 2008). The other considers the delay incurred because of the violations of the capacity constraints. It was proposed by Hindi and Ploszajski (1994) and latter on used in Perron and Shaw (2004), Perron et al. (2004), and Siala et al. (2014). The latter objective is a simple and effective way of setting up the assembly line so that it can run smoothly. In this case, the number of extra empty slots gives an exact measure of the delay incurred. Solving a sequence of the satisfaction problem where a number of extra empty slots are added, for instance through binary search, is a natural way of optimizing this objective function. Furthermore, methods based on constraint programming are still competitive and branching heuristics are significantly contributing to this. For instance, they are relevant within a Large Neighborhood Search (LNS) approach such as the one proposed in Perron and Shaw (2004) and Perron et al. (2004). In this context, one needs to solve a small CSP standing for a small part of the problem. Solving this sub-problem is expected to be fast, hence we rely on branching and selection heuristics to speed up this task. The heuristics are therefore likely to make a significant difference.

The rest of the paper is organized as follows. In Section 2, we describe the car-sequencing problem and discuss the related constraint satisfaction models. In Section 3, we propose and classify a number of new and existing heuristics, which we empirically evaluate and analyze in Section 4. Then, in Section 5, we introduce a simple filtering rule to propagate capacity constraints coupled with cardinality. Finally, we show in Section 6 the interest of the proposed filtering rule and provide a comparison with state-of-the-art propagators for this problem as well as other approaches.

Section snippets

Problem description

In the car-sequencing problem, n vehicles have to be produced on an assembly line. There are k classes of vehicles and m types of options. Each class c{1,,k} is associated with a demand Dcclass, that is, the number of occurrences of this class on the assembly line, and a set of options Oc{1,,m}. Each option is handled by a working station able to process only a fraction of the vehicles passing on the line. The capacity of an option j is defined by two integers pj and qj, such that no

Classification criteria

We propose to classify the heuristics related to this problem according to four criteria:

  • The type of branching decisions: that is whether we branch on classes or options.

  • The order in which we explore the variables along the assembly line: one can start from the left of the sequence and progress to the right, or start from the middle of the assembly line widen to the sides.

  • The measure used to select the most constrained options.

  • The function used to aggregate the evaluation of the different

Evaluating the new structure

In this section, we evaluate the impact of the proposed classification criteria for the heuristics. We slightly perform randomization as a simple mechanism to deal with the Heavy-Tail phenomena (Gomes et al., 1998). In particular, with a low probability (2% for classes and 5% for options1), the second best choice (provided by the heuristic) is taken.

All the

Slack-based filtering rule

When analyzing the heuristics, we have seen that selecting the options using the load, the slack, or the usage rate is beneficial. In this section, we shall see that one can go one step further, and use the same idea to prune the search tree at a very cheap computational cost.

Evaluating the filtering rules

In order to evaluate the slack-based filtering rule, we propose to compare its results against the other propagators. Notice first that, as we mentioned in Section 5, this rule can be applied only with lexbranching. In fact, we can use the following set of heuristics {class,opt},lex,{1,q/p,d,δ,nσ,ρ},{,Euc,lex}. That is 21 different heuristics for each filtering algorithm. The experiments concern 9030 configuration per propagator.

Table 10 shows that the extra filtering of the rule we

Conclusion

Throughout this paper, we empirically studied a large set of heuristics for the car-sequencing problem and proposed to classify these heuristics using 4 criteria: branching variables, exploration directions, parameters for the selection of branching variables, and aggregation functions for these criteria. The experiments show the interest of some classification criteria (the branching and the selection) and a low impact of the other criteria (exploration directions and aggregation functions).

Acknowledgments

We would like to thank our Cork Constraint Computation Center colleagues for giving us access to their computing resources.

References (19)

There are more references available in the full text version of this article.

Cited by (23)

  • Constructive metaheuristics for solving the Car Sequencing Problem under uncertain partial demand

    2019, Computers and Industrial Engineering
    Citation Excerpt :

    On the other hand, those approaches that tackle the CSP as an optimization problem try to minimize the number of constraint violations within a sequence, being able obtain a sequence with minimum constraint violation when there is no feasible sequence. The latter approaches (i.e., those considering the CSP as an optimization problem) employ different strategies, such as constraint programing (Bergen, van Beek, & Carchrae, 2001; Siala, Hebrard, & Huguet, 2015), integer programing (Gravel et al., 2005), branch & bound algorithms (Fliedner & Boysen, 2008), or beam search (Bautista, Pereira, & Adenso-Díaz, 2008a; Golle, Rothlauf, & Boysen, 2015) to other non-exact methods such as metaheuristics (Golle, 2011; Gottlieb et al., 2003; Morin et al., 2009; Zinflou et al., 2007; Zinflou, Gagné, & Gravel, 2010). The available results using CSPLib show both exact methods and metaheuristics achieve good results, but they also show that metaheuristics exhibit a more robust behavior when the size of the problem is high (Golle et al., 2015; Morin et al., 2009; Zinflou et al., 2007) (i.e., number of vehicles to be scheduled).

  • Advanced constraint propagation for the combined car sequencing and level scheduling problem

    2018, Computers and Operations Research
    Citation Excerpt :

    Siala et al. (2015) compare this branching strategy to an alternative in which the positions are filled starting from the middle and towards the ends in an alternating fashion, and they find that their proposed method performs slightly but consistently better. Our strategy is in line with that of Siala et al. As for node selection, we adopt the depth-first node selection strategy consistently with Drexl et al. (2006).

  • An expert system to minimize operational costs in mixed-model sequencing problems with activity factor

    2018, Expert Systems with Applications
    Citation Excerpt :

    In literature, there are many variants of sequencing problems in regard with the optimization criteria. A classification of these criteria can be the following: (0.1) to maximize the productive time by completing the maximum number of product units and reducing the idle time (Yano & Rachamadugu, 1991); (0.2) to maximize the satisfaction degree of a set of constraints related to special components of products (Bautista-Valhondo, 2016; Parrello, Kabat, & Wos, 1986; Siala, Hebrard, & Huguet, 2015); (0.3) to maintain, as constant as possible, the rate of production for the different product types (Miltenburg, 1989) and the rate of component consumption (Aigbedo, 2009; Aigbedo & Monden, 1997; Monden, 2011) in order to reduce the maximum stock levels, and to asses the impact of maintaining constant the product manufacturing rate concerning the consumption components rate (Bautista, Cano, Alfaro, & Batalla, 2013). Since the first work by Macaskill (1973), Okamura and Yamashina (1979), and Thomopoulos (1967), the variety of perceptions that exist on the controllable factors and production policies are shown.

  • A tool-supported framework for work planning on construction sites based on constraint programming

    2018, Automation in Construction
    Citation Excerpt :

    Consequently, the cars must be arranged in a sequence so that the capacity of each station is never exceeded. This problem has been shown to be NP-hard [28] and has been widely studied [29,30]. Fig. 4 shows an example with 10 cars, 5 options and 6 classes.

View all citing articles on Scopus
View full text