Skip to main content
Log in

Sparse multi-term disjunctive cuts for the epigraph of a function of binary variables

  • Full Length Paper
  • Series B
  • Published:
Mathematical Programming Submit manuscript

Abstract

We propose a new method for separating valid inequalities for the epigraph of a function of binary variables. The proposed inequalities are disjunctive cuts defined by disjunctive terms obtained by enumerating a subset I of the binary variables. We show that by restricting the support of the cut to the same set of variables I, a cut can be obtained by solving a linear program with \(2^{|I|}\) constraints. While this limits the size of the set I used to define the multi-term disjunction, the procedure enables generation of multi-term disjunctive cuts using far more terms than existing approaches. We present two approaches for choosing the subset of variables. Experience on three MILP problems with block diagonal structure using |I| up to size 10 indicates the sparse cuts can often close nearly as much gap as the multi-term disjunctive cuts without this restriction and in a fraction of the time. We also find that including these cuts within a cut-and-branch solution method for these MILP problems leads to significant reductions in solution time or ending optimality gap for instances that were not solved within the time limit. Finally, we describe how the proposed approach can be adapted to optimally “tilt” a given valid inequality by modifying the coefficients of a sparse subset of the variables.

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

Access this article

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

Instant access to the full article PDF.

Algorithm 1
Algorithm 2
Algorithm 3
Algorithm 4
Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Notes

  1. Integrality gap of the lower bound LB is calculated as (\(z^*-\)LB)/\(|z^*|\times 100\%\) where \(z^*\) is the optimal objective value of the MILP.

References

  1. Ahmed, S.: Two-Stage Stochastic Integer Programming: A Brief Introduction Wiley Encyclopedia of Operations Research and Management Science. Wiley, USA (2010)

    Google Scholar 

  2. Andersen, K., Louveaux, Q., Weismantel, R., Wolsey, L.: Cutting planes from two rows of a simplex tableau. In: IPCO 2007: Integer Programming and Combinatorial Optimization, Lecture Notes in Computer Science, vol. 4513, pp. 1–15. Springer (2007)

  3. Atamtürk, A., Nemhauser, G.L., Savelsbergh, M.W.: The mixed vertex packing problem. Math. Progr. 89(1), 35–53 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  4. Balas, E.: Disjunctive programming. In: Annals of Discrete Mathematics, vol. 5, pp. 3–51. Elsevier (1979)

  5. Balas, E.: Disjunctive programming: properties of the convex hull of feasible points. Discret. Appl. Math. 89(1–3), 3–44 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  6. Balas, E., Ceria, S., Cornuéjols, G.: A lift-and-project cutting plane algorithm for mixed 0–1 programs. Math. Progr. 58(1), 295–324 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  7. Balas, E., Ceria, S., Cornuéjols, G.: Mixed 0–1 programming by lift-and-project in a branch-and-cut framework. Manage. Sci. 42(9), 1229–1246 (1996)

    Article  MATH  Google Scholar 

  8. Balas, E., Kazachkov, A.M.: V-polyhedral disjunctive cuts. arXiv preprint arXiv:2207.13619 (2022)

  9. Balas, E., Perregaard, M.: Lift-and-project for mixed 0–1 programming: recent progress. Discret. Appl. Math. 123(1–3), 129–154 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  10. Basu, A., Conforti, M., Cornuéjols, G., Zambelli, G.: Maximal lattice-free convex sets in linear subspaces. Math. Oper. Res. 35(3), 704–720 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  11. Benders, J.F.: Partitioning procedures for solving mixed-variables programming problems. Numer. Math. 4, 238–252 (1962)

    Article  MathSciNet  MATH  Google Scholar 

  12. Bertsimas, D., Cory-Wright, R., Pauphilet, J.: A unified approach to mixed-integer optimization problems with logical constraints. SIAM J. Optim. 31(3), 2340–2367 (2021)

    Article  MathSciNet  MATH  Google Scholar 

  13. Bertsimas, D., Tsitsiklis, J.N.: Introduction to Linear Optimization, vol. 6. Athena Scientific Belmont, MA (1997)

    Google Scholar 

  14. Bodur, M., Dash, S., Günlük, O., Luedtke, J.: Strengthened Benders cuts for stochastic integer programs with continuous recourse. Informs J. Comput. 29(1), 77–91 (2017)

    Article  MathSciNet  MATH  Google Scholar 

  15. Ceria, S., Pataki, G.: Solving integer and disjunctive programs by lift and project. In: R. Bixby, E. Boyd, R. Ríos-Mercado (eds.) IPCO 1998: Integer Programming and Combinatorial Optimization, Lecture Notes in Computer Science, vol. 1412, pp. 271–283. Springer (1998)

  16. Ceria, S., Soares, J.: Convex programming for disjunctive convex optimization. Math. Progr. 86(3), 595–614 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  17. Chen, R., Luedtke, J.: On generating Lagrangian cuts for two-stage stochastic integer programs. Informs J. Comput. 34(4), 2332–2349 (2022)

    Article  MathSciNet  MATH  Google Scholar 

  18. Chen, R., Luedtke, J.: Sparse multi-term disjunctive cuts for the epigraph of a function of binary variables. In: K. Aardal, L. Sanitá (eds.) IPCO 2022: Integer Programming and Combinatorial Optimization, Lecture Notes in Computer Science, vol. 13265, pp. 98–111. Springer (2022)

  19. Chvátal, V., Cook, W., Espinoza, D.: Local cuts for mixed-integer programming. Math. Progr. Comput. 5(2), 171–200 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  20. Cook, W., Kannan, R., Schrijver, A.: Chvátal closures for mixed integer programming problems. Math. Progr. 47(1), 155–174 (1990)

    Article  MATH  Google Scholar 

  21. Cornuejols, G., Fisher, M.L., Nemhauser, G.L.: Exceptional paper-location of bank accounts to optimize float: an analytic study of exact and approximate algorithms. Manage. Sci. 23(8), 789–810 (1977)

    Article  MATH  Google Scholar 

  22. Cornuéjols, G., Margot, F.: On the facets of mixed integer programs with two integer variables and two constraints. Math. Progr. 120(2), 429–456 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  23. Dey, S.S., Iroume, A., Molinaro, M.: Some lower bounds on sparse outer approximations of polytopes. Oper. Res. Lett. 43(3), 323–328 (2015)

    Article  MathSciNet  MATH  Google Scholar 

  24. Dey, S.S., Lodi, A., Tramontani, A., Wolsey, L.A.: Experiments with two row tableau cuts. In: F. Eisenbrand, F. Shepherd (eds.) IPCO 2010: Integer Programming and Combinatorial Optimization, Lecture Notes in Computer Science, vol. 6080, pp. 424–437. Springer (2010)

  25. Dey, S.S., Molinaro, M., Wang, Q.: Approximating polyhedra with sparse inequalities. Math. Progr. 154(1), 329–352 (2015)

    Article  MathSciNet  MATH  Google Scholar 

  26. Dey, S.S., Molinaro, M., Wang, Q.: Analysis of sparse cutting planes for sparse MILPs with applications to stochastic MILPs. Math. Oper. Res. 43(1), 304–332 (2018)

    Article  MathSciNet  MATH  Google Scholar 

  27. Espinoza, D., Fukasawa, R., Goycoolea, M.: Lifting, tilting and fractional programming revisited. Oper. Res. Lett. 38(6), 559–563 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  28. Frangioni, A., Gentile, C.: Perspective cuts for a class of convex 0–1 mixed integer programs. Math. Progr. 106(2), 225–236 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  29. Fukasawa, R., Poirrier, L., Yang, S.: Split cuts from sparse disjunctions. Math. Progr. Comput. 12, 295–335 (2020)

    Article  MathSciNet  MATH  Google Scholar 

  30. Gade, D., Küçükyavuz, S., Sen, S.: Decomposition algorithms with parametric Gomory cuts for two-stage stochastic integer programs. Math. Progr. 144(1–2), 39–64 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  31. Gray, F.: Pulse code communication. United States Patent Number 2632058 (1953)

  32. Grötschel, M., Lovász, L., Schrijver, A.: The ellipsoid method and its consequences in combinatorial optimization. Combinatorica 1(2), 169–197 (1981)

    Article  MathSciNet  MATH  Google Scholar 

  33. Grötschel, M., Lovász, L., Schrijver, A.: Geometric Algorithms and Combinatorial Optimization. Springer Science & Business Media, Cham (2012)

    MATH  Google Scholar 

  34. Günlük, O., Lee, J., Weismantel, R.: MINLP Strengthening for Separable Convex Quadratic Transportation-Cost ufl. Tech. rep, IBM (2007)

    Google Scholar 

  35. Günlük, O., Pochet, Y.: Mixing mixed-integer inequalities. Math. Progr. 90(3), 429–457 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  36. Gurobi Optimization, LLC: Gurobi Optimizer Reference Manual (2021). https://www.gurobi.com

  37. Kazachkov, A.M., Balas, E.: Monoidal strengthening of simple V-polyhedral disjunctive cuts. In: International Conference on Integer Programming and Combinatorial Optimization, pp. 275–290. Springer (2023)

  38. Kelley, J.E., Jr.: The cutting-plane method for solving convex programs. J. Soc. Ind. Appl. Math. 8(4), 703–712 (1960)

    Article  MathSciNet  MATH  Google Scholar 

  39. Laporte, G., Louveaux, F.V.: The integer L-shaped method for stochastic integer programs with complete recourse. Oper. Res. Lett. 13(3), 133–142 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  40. Lemaréchal, C., Nemirovskii, A., Nesterov, Y.: New variants of bundle methods. Math. Progr. 69(1–3), 111–147 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  41. Li, H.L.: A global approach for general 0–1 fractional programming. Eur. J. Oper. Res. 73(3), 590–596 (1994)

    Article  MATH  Google Scholar 

  42. Li, Y., Richard, J.P.P.: Cook, Kannan and Schrijver’s example revisited. Discret. Optim. 5(4), 724–734 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  43. Louveaux, F.V.: Discrete stochastic location models. Ann. Oper. Res. 6(2), 21–34 (1986)

    Article  Google Scholar 

  44. Lovász, L.: Submodular functions and convexity. In: Mathematical Programming The State of the Art, pp. 235–257. Springer, Cham (1983)

  45. Méndez-Díaz, I., Miranda-Bront, J.J., Vulcano, G., Zabala, P.: A branch-and-cut algorithm for the latent-class logit assortment problem. Discret. Appl. Math. 164, 246–263 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  46. Nemhauser, G.L., Wolsey, L.A., Fisher, M.L.: An analysis of approximations for maximizing submodular set functions-I. Math. Progr. 14(1), 265–294 (1978)

    Article  MathSciNet  MATH  Google Scholar 

  47. Ntaimo, L.: Fenchel decomposition for stochastic mixed-integer programming. J. Global Optim. 55(1), 141–163 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  48. Pan, F., Morton, D.P.: Minimizing a stochastic maximum-reliability path. Networks 52(3), 111–119 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  49. Perregaard, M., Balas, E.: Generating cuts from multiple-term disjunctions. In: K. Aardal, B. Gerards (eds.) IPCO2001: Integer Programming and Combinatorial Optimization, Lecture Notes in Computer Science, vol. 2081, pp. 348–360. Springer (2001)

  50. Rahmaniani, R., Ahmed, S., Crainic, T.G., Gendreau, M., Rei, W.: The Benders dual decomposition method. Oper. Res. 68, 878–895 (2020)

    Article  MathSciNet  MATH  Google Scholar 

  51. Rockafellar, R.T.: Convex Analysis. 28. Princeton university press (1970)

  52. Sen, S., Higle, J.L.: The C3 theorem and a D2 algorithm for large scale stochastic mixed-integer programming: set convexification. Math. Progr. 104(1), 1–20 (2005)

    Article  MATH  Google Scholar 

  53. Sen, S., Sherali, H.D.: Decomposition with branch-and-cut approaches for two-stage stochastic mixed-integer programming. Math. Progr. 106(2), 203–223 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  54. Van Slyke, R.M., Wets, R.: L-shaped linear programs with applications to optimal control and stochastic programming. SIAM J. Appl. Math. 17(4), 638–663 (1969)

    Article  MathSciNet  MATH  Google Scholar 

  55. Wiegele, A.: Biq Mac Library-a collection of max-cut and quadratic 0-1 programming instances of medium size. Tech. rep. (2007)

  56. Zhang, M., Küçükyavuz, S.: Finitely convergent decomposition algorithms for two-stage stochastic pure integer programs. SIAM J. Optim. 24(4), 1933–1951 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  57. Zou, J., Ahmed, S., Sun, X.A.: Stochastic dual dynamic integer programming. Math. Progr. 175(1–2), 461–502 (2019)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rui Chen.

Additional information

Publisher's Note

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

Parts of the paper have been published in proceedings of the 23rd International Conference on Integer Programming and Combinatorial Optimization, IPCO 2022. This research is supported by the Office of Naval Research under grant N00014-21-1-2574 and by NSF under grant 2000986.

Appendix

Appendix

1.1 Test problems

1.1.1 SNIP problem

The SNIP problem [48] is a two-stage stochastic integer program with pure binary first-stage and continuous second-stage variables. In this problem, by installing sensors on some arcs of a directed network to in the first stage, the defender tries to find the attacker and minimize the probability that the attacker travels from the origin to the destination undetected. In the second stage, the origin and destination of the attacker are observed and the attacker chooses to travel on the maximum reliability path from its origin to its destination. Let N and A denote the node set and the arc set of the network and let \(D\subseteq A\) denote the set of interdictable arcs. The first-stage variables are denoted by \(\textbf{x}\), where \(x_a=1\) if and only if the defender installs a sensor on arc \(a\in D\). Each scenario \(s \in S\) is associated with a possible origin/destination combination of the attacker, with \(u^s\) representing the origin and \(v^s\) representing the destination of the attacker for each scenario \(s \in S\). The second-stage variables are denoted by \(\pi \), where \(\pi ^s_i\) denotes the maximum probability of reaching destination \(v^s\) undetected from node i in scenario s. The budget for installing sensors is b, and the cost of installing a sensor on arc a is \(c_a\) for each arc \(a\in D\). For each arc \(a\in A\), the probability of traveling on arc a undetected is \(r_{a}\) if the arc is not interdicted, or \(q_a\) if the arc is interdicted. Parameter \(\bar{\pi }_j^s\) denotes the maximum probability of reaching the destination undetected from node j when no sensors are installed. The extensive formulation of the problem is as follows:

$$\begin{aligned} \begin{aligned} \min _{\textbf{x},\mu ^s}\ {}&\sum _{s\in S}p_s\pi _{u^s}^s\\ \text {s.t. }\ {}&\sum _{a\in A}c_ax_a\le b,\\&\pi _i^s-r_a\pi _j^s\ge 0,{} & {} a=(i,j)\in A\setminus D,\ s\in S,\\&\pi _i^s-r_a\pi _j^s\ge -(r_a-q_a)\bar{\pi }_j^sx_a,{} & {} a=(i,j)\in D,\ s\in S,\\&\pi _i^s-q_a\pi _j^s\ge 0,{} & {} a=(i,j)\in D,\ s\in S,\\&\pi _{v^s}^s=1,{} & {} s\in S,\\&x_a\in \{0,1\},{} & {} a\in D. \end{aligned} \end{aligned}$$

We use the SNIP instances from [48]. We consider 40 instances with snipno\(\in \{3,4\}\), and budget \(b\in \{30,50,70,90\}\). All instances have 320 first-stage binary variables, 2586 s-stage continuous variables per scenario and 456 scenarios.

1.1.2 LLA problem

The LLA problem is introduced in [45]. In this problem, a retailer chooses a set of items to display for customers to purchase. The model assumes all customers are from a set of customer segments. For each customer segment k, the customers arrive according to a Poisson process with rate \(\lambda _k\) and only purchases products in the consideration set \(C_k\). For item i, the cost for displaying it is \(c_i\), the relative attractiveness of it to customers in segment k is \(v_i^k\), and the retailer earns a positive profit \(w_i\) for each purchase of it by the customers. The preference of not purchasing anything is denoted by \(v_0^k\) for customers in segment k. The retailer can choose items with a total cost up to \(\rho \sum _{i=1}^n c_i\) to display. The problem can be formulated as an MINLP as follows:

$$\begin{aligned} \max _{\textbf{x}}\left\{ \sum _{k=1}^{N}\sum _{i\in C_k}\frac{\lambda _kv_i^kw_ix_i}{\sum _{i\in C_k}v_i^kx_i+v_0^k}:\sum _{i=1}^nc_ix_i\le \rho \sum _{i=1}^nc_i, \textbf{x}\in \{0,1\}^n \right\} . \end{aligned}$$

In [45], the authors reformulate the MINLP as an MILP by introducing a variable \(y_k\) to represent the value of \(1/(\sum _{i\in C_k}v_i^kx_i+v_0^k)\) and a variable \(z_{ik}\) to linearize the product \(x_iy_k\). The MILP reformulation of the problem is as follows:

$$\begin{aligned} \max _{\textbf{x},\textbf{y},\textbf{z}}~&\sum _{k=1}^N\sum _{i\in C_k}\lambda _kv_i^kw_i z_{ik}\\ \text {s.t. }&v_0^ky_k+\sum _{i\in C_k}v_i^kz_{ik}=1,{} & {} \hspace{-2cm}k\in [N],\\&v_0^ky_k-v_0^kz_{ik}\le 1-x_i,{} & {} \hspace{-2cm}k\in [N],i\in C_k,\\&z_{ik}\le y_k,{} & {} \hspace{-2cm}k\in [N],i\in C_k,\\&(v_0^k+v_i^k)z_{ik}\le x_i,{} & {} \hspace{-2cm}k\in [N],i\in C_k,\\&\sum _{i=1}^nc_ix_i\le \rho \sum _{i=1}^nc_i,\\&\textbf{x}\in \{0,1\}^n,~\textbf{y}\ge \textbf{0},~\textbf{z}\ge \textbf{0}. \end{aligned}$$

For the generation of test instances, we follow the basic scheme of generating type-1 problems in [45], but increase the value of some of the parameters to make the instances harder. We set \(n=200\) and \(N=200\). For each segment k, its arrival rate \(\lambda _k\) and the preference of no purchase \(v_0^k\) are randomly generated according to the uniform distributions Uniform([0, 1]) and Uniform([0, 4]), respectively. The preference \(v_i^k\) for segment k of purchasing product i is randomly generated according to the discrete uniform distribution Uniform\((\{0,1,\ldots ,10\})\). For each odd \(k\in K\), \(C_k\) is a independently randomly chosen subset of [n] with size \(p\in \{12,16,20\}\). For each even \(k\in [N]\), \(C_k\) is a random subset of \(C_{k-1}\) of size p/2. The profit \(w_i\) of product i is independently randomly generated according to the uniform distribution Uniform([100, U]) with \(U\in \{150,350\}\). The capacity parameter \(\rho \) is chosen from \(\{20\%,50\%,100\%\}\). We consider both cases with uniform and nonuniform costs for generating the cost parameters \(c_i\):

  • (Uniform cost) \(c_i=1\) for \(i\in [n]\);

  • (Nonuniform cost) \(c_i=f_i\cdot |\{k\in [N]:i\in C_k\}|\) for \(i\in [n]\), where each \(f_i\) is independently randomly generated according to the normal distribution with mean 1 and standard deviation 0.1.

We generate one instance with uniform costs and one instance with nonuniform costs for each combination of \((p,U,\rho )\). Therefore, we have 36 LLA instances in total.

1.1.3 CAP problem

The stochastic CAP problem [14] is a generalization of the deterministic CAP problem [43], which can be formulated as a stochastic two-stage integer program. In this problem, the decision maker chooses to open a set of facilities to meet uncertain customer demands. The first-stage variables are denoted by \(\textbf{x}\) with \(x_i=1\) if and only if facility i is chosen to be opened. The second-stage variables are denoted by \(\textbf{y}\), where \(y_{ij}^k\) is the amount of the jth customer’s demand met by facility i in scenario k. For each facility i, the associated opening cost and its capacity are denoted by \(f_i\) and \(s_i\), respectively. The cost associated with satisfying a unit of the jth customer demand using facility i (sending a unit of flow from facility i to customer j) is denoted by \(q_{ij}\). The jth customer’s demand under scenario k is denoted by \(\lambda _j^k\). The extensive formulation of the problem is as follows:

$$\begin{aligned} \min _{\textbf{x},\textbf{y}}~&\sum _{i=1}^nf_ix_i+N^{-1}\sum _{k=1}^N{} & {} \hspace{-3.25cm}\sum _{i=1}^n\sum _{j=1}^m q_{ij}y_{ij}^k\\ \text {s.t. }&\sum _{i=1}^ny_{ij}^k\ge \lambda _j^k,{} & {} \hspace{-3.3cm}j\in [m],~k\in [N],\\&\sum _{j=1}^my_{ij}^k\le s_ix_i,{} & {} \hspace{-3.3cm}i\in [n],~k\in [N],\\&\sum _{i=1}^ns_ix_i\ge \max _{k\in [N]}\sum _{j=1}^m\lambda _j^k,\\&\textbf{x}\in \{0,1\}^n,~\textbf{y}\ge \textbf{0}. \end{aligned}$$

There are in total 32 CAP test instances all taken from [14] with \(n\in \{25,50\}\), \(m=50\) and \(N=250\).

1.2 Additional root node results

Table 10 Number of cutting planes generated for SNIP instances. Results in each row are averages over five instances
Table 11 Number of cutting planes generated for LLA instances. Results in each row are averages over six instances
Table 12 Number of cutting planes generated for CAP instances. Results in each row are averages of eight instances

To provide further insights into the Benders model at the root node, in Tables 10, 11, and 12, we present the number of I-sparse cuts generated in IBC and the numbers of three major types of solver cutting planes (MIR, flow cover and relax-and-lift) generated in BBC and IBC, as reported by Gurobi. It is observed that a smaller number of solver cuts are generated in IBC than in BBC. This is due to the fact that the LP relaxation of the Benders model in IBC is stronger than that of the Benders model in BBC. Consequently, even though the LP relaxation of IBC includes a great number I-sparse cuts, processing one node in the branch-and-bound tree is not significantly more challenging in IBC than in BBC, as fewer solver cutting planes are introduced there.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Chen, R., Luedtke, J. Sparse multi-term disjunctive cuts for the epigraph of a function of binary variables. Math. Program. (2023). https://doi.org/10.1007/s10107-023-02019-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s10107-023-02019-2

Keywords

Mathematics Subject Classification

Navigation