Nothing Special   »   [go: up one dir, main page]

Skip to main content
Log in

Integral column generation for the set partitioning problem

  • Research Paper
  • Published:
EURO Journal on Transportation and Logistics

Abstract

The integral simplex using decomposition (ISUD) algorithm was recently developed to solve efficiently set partitioning problems containing a number of variables that can all be enumerated a priori. This primal algorithm generates a sequence of integer solutions with decreasing costs, leading to an optimal or near-optimal solution depending on the stopping criterion used. In this paper, we develop an integral column generation (ICG) heuristic that combines ISUD and column generation to solve set partitioning problems with a very large number of variables. Computational experiments on instances of the public transit vehicle and crew scheduling problem and of the airline crew pairing problem involving up to 2000 constraints show that ICG clearly outperforms two popular column generation heuristics (the restricted master heuristic and the diving heuristic). ICG can yield optimal or near-optimal solutions in less than 1 hour of computational time, generating up to 300 integer solutions during the solution process.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

References

  • Balas E, Padberg MW (1972) On the set-covering problem. Oper Res 20(6):1152–1161

    Article  Google Scholar 

  • Balas E, Padberg M (1975) On the set-covering problem: II. An algorithm for set partitioning. Oper Res 23(1):74–90

    Article  Google Scholar 

  • Barnhart C, Johnson EL, Nemhauser GL, Savelsbergh MW, Vance PH (1998) Branch-and-price: column generation for solving huge integer programs. Oper Res 46(3):316–329

    Article  Google Scholar 

  • Bouarab H, Elhallaoui I, Metrane A, Soumis F (2017) Dynamic constraint and variable aggregation in column generation. Eur J Oper Res 262(3):835–850

    Article  Google Scholar 

  • Dantzig GB, Wolfe P (1960) Decomposition principle for linear programs. Oper Res 8(1):101–111

    Article  Google Scholar 

  • Desaulniers G, Desrosiers J, Dumas Y, Marc S, Rioux B, Solomon MM, Soumis F (1997) Crew pairing at Air France. Eur J Oper Res 97(2):245–259

    Article  Google Scholar 

  • Elhallaoui I, Metrane A, Desaulniers G, Soumis F (2011) An improved primal simplex algorithm for degenerate linear programs. INFORMS J Comput 23(4):569–577

    Article  Google Scholar 

  • Elhallaoui I, Villeneuve D, Soumis F, Desaulniers G (2005) Dynamic aggregation of set-partitioning constraints in column generation. Oper Res 53(4):632–645

    Article  Google Scholar 

  • Elhallaoui I, Metrane A, Soumis F, Desaulniers G (2010) Multi-phase dynamic constraint aggregation for set partitioning type problems. Math Program 123(2):345–370

    Article  Google Scholar 

  • Haase K, Desaulniers G, Desrosiers J (2001) Simultaneous vehicle and crew scheduling in urban mass transit systems. Trans Sci 35(3):286–303

    Article  Google Scholar 

  • Ibarra-Rojas O, Delgado F, Giesen R, Muñoz J (2015) Planning, operation, and control of bus transport systems: a literature review. Transp Res Part B 77(1):38–75

    Article  Google Scholar 

  • Irnich S, Desaulniers G (2005) Shortest path problems with resource constraints. In: Desaulniers G, Desrosiers J, Solomon MM (eds) Column generation, chapter 2. Springer, New York, pp 33–65

    Chapter  Google Scholar 

  • Joncour C, Michel S, Sadykov R, Vanderbeck F (2010) Column generation based primal heuristics. Electron Not Discrete Math 36:695–702

    Article  Google Scholar 

  • Kasirzadeh A, Saddoune M, Soumis F (2017) Airline crew scheduling: models, algorithms, and data sets. Eur J Transp Logist 6(2):111–137

    Article  Google Scholar 

  • Lübbecke ME, Desrosiers J (2005) Selected topics in column generation. Oper Res 53(6):1007–1023

    Article  Google Scholar 

  • Rönnberg E, Larsson T (2009) Column generation in the integral simplex method. Eur J Oper Res 192(1):333–342

    Article  Google Scholar 

  • Rönnberg E, Larsson T (2014) All-integer column generation for set partitioning: basic principles and extensions. Eur J Oper Res 233(3):529–538

    Article  Google Scholar 

  • Rosat S, Elhallaoui I, Soumis F, Chakour D (2016) Influence of the normalization constraint on the integral simplex using decomposition. Discrete Appl Math 217(1):53–70

    Google Scholar 

  • Rosat S, Elhallaoui I, Soumis F, Lodi A (2017) Integral simplex using decomposition with primal cutting planes. Math Program. https://doi.org/10.1007/s10107-017-1123-x

    Article  Google Scholar 

  • Saddoune M, Desaulniers G, Soumis F (2013) Aircrew pairings with possible repetitions of the same flight number. Comput Oper Res 40(3):805–814

    Article  Google Scholar 

  • Saxena A (2003) Set-partitioning via integral simplex method. Carnegie Mellon University, Pittsburgh

    Google Scholar 

  • Thompson GL (2002) An integral simplex algorithm for solving combinatorial optimization problems. Comput Optim Appl 22(3):351–367

    Article  Google Scholar 

  • Trubin VA (1969) On a method of solution of integer linear programming problems of a special kind. Sov Math Doklady 10:1544–1546

    Google Scholar 

  • Vanderbeck F (2005) Implementing mixed integer column generation. In: Desaulniers G, Desrosiers J, Solomon MM (eds) Column generation, chapter 12. Springer, New York, pp 331–358

    Chapter  Google Scholar 

  • Zaghrouti A, Soumis F, El Hallaoui I (2014) Integral simplex using decomposition for the set partitioning problem. Oper Res 62(2):435–449

    Article  Google Scholar 

  • Zaghrouti A, Soumis F, El Hallaoui I (2018) Improving set partitioning problem solutions by zooming around an improving direction. Ann Oper Res. https://doi.org/10.1007/s10479-018-2868-1

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Adil Tahir.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A: compatibility matrices

Variable substitution can be used to reduce the density of the constraint coefficient matrix of the CP (7)–(11). A first reformulation, proposed by Zaghrouti et al. (2014), is obtained by isolating each \(\lambda _l\) variable in the last constraint (8) in which it appears before substituting it in the rest of the formulation. This substitution yields the following reformulation of the CP:

$$\begin{aligned} \min _v ( {\mathbf {c}}^{\top }_{I_{S}} - {\mathbf {c}}^{\top }_{S}({\mathbf {A}}^1_{S})^{-1} {\mathbf {A}}^1_{I_S})^{\top }{\mathbf {v}} \end{aligned}$$
(16)
$$\begin{aligned} \text{ s.t.: } ({\mathbf {A}}^2_{S}({\mathbf {A}}^1_{S})^{-1} {\mathbf {A}}^1_{I_S} - {\mathbf {A}}^2_{I_S}){\mathbf {v}}= 0 \end{aligned}$$
(17)
$$\begin{aligned} \sum _{j \in I_{S}} w_{j}v_{j} = 1 \end{aligned}$$
(18)
$$\begin{aligned} v_j \ge 0,&\forall j\in I_S \end{aligned}$$
(19)
$$\begin{aligned} v_{j_1}v_{j_2} = 0,&\forall (j_1,j_2)\in F_S, \end{aligned}$$
(20)

where, for \(U\subset N\), \({\mathbf {c}}_U\) is the subvector of the cost coefficient vector in (7) associated with the variables \(v_j\), \(j\in U\). Constraint (17) can be written in the form \(({\mathbf {M}}_1{\mathbf {A}}_{I_S})^{\top }{\mathbf {v}}= 0\), where \({\mathbf {M}}_1\) is a compatibility matrix according to the following definition.

Definition 3

A matrix \({\mathbf {M}}\) is said to be a compatibility matrix if and only if \({\mathbf {M}}{\mathbf {A}}_j = 0\) for all compatible columns \({\mathbf {A}}_j\), \(j\in C_S\), and \({\mathbf {M}}{\mathbf {A}}_j \ne 0\) for all incompatible columns \({\mathbf {A}}_j\), \(j\in I_S\).

There exists an infinite number of compatibility matrices that can be used to define the CP. The choice of this matrix may have a significant impact on the computational times. We have chosen to use the matrix \({\mathbf {M}}_2\) introduced by Bouarab et al. (2017) that is specialized for vehicle routing and crew-scheduling problems. In these problems, each column is associated with a route or a crew schedule that performs a subset of tasks in a given sequence. The \({\mathbf {M}}_2\) matrix allows to measure the deviation of the incompatible columns with respect to the task sequences defined by the columns in solution S. This matrix is such that, if an incompatible column \({\mathbf {A}}_j\), \(j\in I_S\), does not respect the task ordering in a sequence, \({\mathbf {M}}_2{\mathbf {A}}_j\) contains a component equal to -1 each time that \({\mathbf {A}}_j\) covers a task but not its predecessor and a component equal to 1 each time that \({\mathbf {A}}_j\) covers a task but not its successor (see Bouarab et al. 2017 for details).

Appendix B: multi-phase strategy

Inspired from that developed by Elhallaoui et al. (2010) in the context of DCA, Zaghrouti et al. (2014) have elaborated a multi-phase acceleration strategy for ISUD which also aims at reducing the density of the CP constraint coefficient matrix. Each time that the CP needs to be solved, a sequence of phases can be invoked. Each phase is defined by a parameter k (a positive integer) which restricts the CP to a subset \(I^k_S\subseteq I_S\) of the incompatible columns such that \(I^k_S \subseteq I^{\ell }_S\) if \(k < \ell\). The sequence of phases is predetermined and corresponds to an increasing sequence \(k_1, k_2, \ldots , k_p\) of values of k with \(k_p = \infty\) (for instance, \(k = 2, 3, 4, 5, 6, \infty\)), where phase \(k_p = \infty\) means that \(I^{\infty }_S = I_S\). Starting in phase \(k_1\), the CP restricted to the subset \(I^{k_1}_S\) is solved. If its optimal value is negative, the process stops and the computed linear combination of incompatible columns is returned. Otherwise, the next phase is invoked. The process repeats until obtaining a negative optimal value for the CP or reaching phase \(k_p = \infty\).

The definition of a subset \(I^k_S\) used in phase k is based on a distance between an incompatible column and the vector subspace generated by the columns in the solution. This distance, called the degree of incompatibility, is defined as follows.

Definition 4

The degree of incompatibility\(\delta _j\) of an incompatible column \({\mathbf {A}}_j\), \(j\in I_S\), is given by \(\delta _j = || {\mathbf {M}}{\mathbf {A}}_j ||\), where \({\mathbf {M}}\) is a compatibility matrix (as defined in Appendix A).

In phase k of the multi-phase strategy for solving the CP, the index subset of the incompatible columns considered in the CP is defined by \(I^k_S = \{ j \in I_S \, | \, \delta _j \le k \}\). Bouarab et al. (2017) has proven the following result.

Proposition 2

In phase k , each incompatible column \({\mathbf {A}}_j\) , \(j\in I^k_S\) , has at most \(k+1\) non-zero coefficients in the constraint coefficient matrix of the CP if \({\mathbf {M}}_2\) is used as the compatibility matrix.

Consequently, for phases with a low k value, the constraint coefficient matrix has a low density. This helps to reduce the computational effort for solving the CP and also to produce integer directions without branching. Finally, it may allow to consider a very large number of incompatible columns in the CP if many are available.

Appendix C: computation of a complete dual solution

To compute a complete dual solution \({\varvec{\alpha }}= \left( \alpha _i \right) _{i\in T} \in {\mathbb {R}}^m\) to the MP, we use as in Bouarab et al. (2017) the dual variable values \({\hat{{\varvec{\pi }}}} \in {\mathbb {R}}^{m-|S|}\) associated with constraints (17) that were computed when solving the last relaxed CP (16)–(19) (i.e., without constraints (20)). Recall that, for each column index \(j\in S\), there are \(|T_j| -1\) constraints (17) in the CP, where \(T_j\) is the subset of tasks covered by \({\mathbf {A}}_j\). These constraints are associated with the first \(|T_j| -1\) tasks of \(T_j\). We denote by \({\hat{\pi ^q_j}}\), for all \(j\in S\) and \(q \in \{ 1, \ldots , |T_j| - 1\}\), the component of \({\hat{{\varvec{\pi }}}}\) associated with the task q covered by \({\mathbf {A}}_j\). Similarly, we denote by \(\alpha ^q_j\), for all \(j\in S\) and \(q \in \{ 1, \ldots , |T_j|\}\), the component of \({\varvec{\alpha }}\) associated with the task q covered by \({\mathbf {A}}_j\). To determine values for the \(\alpha ^q_j\) variables, we solve the following linear system of equations:

$$\begin{aligned} \sum _{i=1}^{|T_j|} \alpha ^i_j = c_j,&\quad \forall j \in S, \end{aligned}$$
(21)
$$\begin{aligned} \sum _{i=1}^{q} \alpha ^i_j = {\hat{\pi ^q_j}},&\quad \forall j\in S, \, q \in \{1,\ldots ,|T_j|-1\} \end{aligned}$$
(22)

which can be decomposed by column index \(j\in S\). Conditions (21) ensure that the columns in the current solution of the SPP have a zero reduced cost and all compatible columns in the RP have, thus, a nonnegative reduced cost. Furthermore, conditions (22) ensure that the least value among all weighted reduced costs \({\bar{c}}_j / w_j = (c_j - {\varvec{\alpha }}^{\top } {\mathbf {A}}_j) / w_j\), \(j\in I_S\), of the incompatible columns considered in the CP is maximized. A dual solution \({\varvec{\alpha }}\in {\mathbb {R}}^m\) that satisfies conditions (21) is said to correspond to the current solution S.

Finally, observe that, if \(({\hat{{\varvec{\pi }}}}, {\hat{\sigma }}) \in {\mathbb {R}}^{m-|S|} \times {\mathbb {R}}\) is an optimal dual solution to the relaxed CP (16)–(19), then \(({\varvec{\alpha }}, {\hat{\sigma }}) \in {\mathbb {R}}^m \times {\mathbb {R}}\) forms an optimal solution to the relaxed CP (7)–(10) when \({\varvec{\alpha }}\) is computed by solving the equation system (21)–(22). In these solutions, \({\hat{\sigma }}\) is the dual value associated with constraints (9) and (18), which is equal to the optimal value of the relaxed CP.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Tahir, A., Desaulniers, G. & El Hallaoui, I. Integral column generation for the set partitioning problem. EURO J Transp Logist 8, 713–744 (2019). https://doi.org/10.1007/s13676-019-00145-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s13676-019-00145-6

Keywords

Navigation