Abstract
We derive cutting planes for cardinality-constrained linear programs. These inequalities can be used to separate any basic feasible solution of an LP relaxation of the problem, assuming that this solution violates the cardinality requirement. To derive them, we first relax the given simplex tableau into a disjunctive set, expressed in the space of nonbasic variables. We establish that coefficients of valid inequalities for the closed convex hull of this set obey ratios that can be computed directly from the simplex tableau. We show that a transportation problem can be used to separate these inequalities. We then give a constructive procedure to generate violated facet-defining inequalities for the closed convex hull of the disjunctive set using a variant of Prim’s algorithm.




Similar content being viewed by others
References
Avella, P., Sassano, A.: On the \(p\)-median polytope. Math. Program. 89(3), 395–411 (2001)
Balas, E.: Intersection cuts—a new type of cutting planes for integer programming. Oper. Res. 19(1), 19–39 (1971)
Balas, E.: Disjunctive programming. Ann. Discrete Math. 5, 3–51 (1979)
Balas, E., Perregaard, M.: A precise correspondence between lift-and-project cuts, simple disjunctive cuts, and mixed integer gomory cuts for 0–1 programming. Math. Program. 94(2–3), 221–245 (2003)
Bazaraa, M.S., Sherali, H.D.: On the use of exact and heuristic cutting plane methods for the quadratic assignment problem. J. Oper. Res. Soc. 33(11), 991–1003 (1982)
Beale, E.M.L., Tomlin, J.A.: Special facilities in a general mathematical programming system for non-convex problems using ordered sets of variables. In: Lawrence, J. (ed.) Prodeedings of the Fifth International Conference on Operational Research, pp. 447–454. Tavistock Publications, London (1970)
Beasley, J.E.: A note on solving large \(p\)-median problems. Eur. J. Oper. Res. 21(2), 270–273 (1985)
Beasley, J.E., Meade, N., Chang, T.J.: An evolutionary heuristic for the index tracking problem. Eur. J. Oper. Res. 148(3), 621–643 (2003)
Bertsimas, D., King, A., Mazumder, R.: Best subset selection via a modern optimization lens. Ann. Stat. 44(2), 813–852 (2016)
Bertsimas, D., Shioda, R.: Algorithm for cardinality-constrained quadratic optimization. Comput. Optim. Appl. 43(1), 1–22 (2009)
Bienstock, D.: Computational study of a family of mixed-integer quadratic programming problems. Math. Program. 74(2), 121–140 (1996)
Brøndsted, A.: An Introduction to Convex Polytopes, vol. 90. Springer, Berlin (1983)
Chang, T.J., Meade, N., Beasley, J.E., Sharaiha, Y.M.: Heuristics for cardinality constrained portfolio optimisation. Comput. Oper. Res. 27(13), 1271–1302 (2000)
Christof, T.: Ein verfahren zur transformation zwischen polyederdarstellungen. Ph.D. thesis, Diplomarbeit, Universität Augsburg (1991)
Christof, T., Löbel, A.: PORTA—polyhedron representation transformation algorithm. Available at https://comopt.ifi.uni-heidelberg.de/software/PORTA/ (2008)
Christofides, N., Beasley, J.E.: A tree search algorithm for the \(p\)-median problem. Eur. J. Oper. Res. 10(2), 196–204 (1982)
Crama, Y., Schyns, M.: Simulated annealing for complex portfolio selection problems. Eur. J. Oper. Res. 150(3), 546–571 (2003)
d’Aspremont, A., El Ghaoui, L., Jordan, M.I., Lanckriet, G.R.: A direct formulation for sparse PCA using semidefinite programming. SIAM Rev. 49(3), 434–448 (2007)
Ehrgott, M., Klamroth, K., Schwehm, C.: An MCDM approach to portfolio optimization. Eur. J. Oper. Res. 155(3), 752–770 (2004)
de Farias Jr, I.R.: A family of facets for the uncapacitated \(p\)-median polytope. Oper. Res. Lett. 28(4), 161–167 (2001)
de Farias Jr, I.R., Johnson, E.L., Nemhauser, G.L.: Branch-and-cut for combinatorial optimization problems without auxiliary binary variables. Knowl. Eng. Rev. 16(1), 25–39 (2001)
de Farias Jr, I.R., Nemhauser, G.L.: A polyhedral study of the cardinality constrained knapsack problem. Math. Program. 96(3), 439–467 (2003)
Gilli, M., Këllezi, E.: The threshold accepting heuristic for index tracking. In: Pardalos, P.M., Tsitsiringos, V.K. (eds.) Financial Engineering, E-Commerce and Supply Chain, pp. 1–18. Springer, Berlin (2002)
Glover, F.: Convexity cuts and cut search. Oper. Res. 21(1), 123–134 (1973)
Gomory, R.: An algorithm for the mixed integer problem. Tech. Rep. RM-2597, The Rand Corporation (1960)
Gomory, R.E.: Some polyhedra related to combinatorial problems. Linear Algebra Appl. 2, 341–375 (1969)
Guan, Y., Dy, J.G.: Sparse probabilistic principal component analysis. In: International Conference on Artificial Intelligence and Statistics, pp. 185–192 (2009)
Güler, O.: Foundations of Optimization, vol. 258. Springer, Berlin (2010)
Ibaraki, T.: The use of cuts in complementary programming. Oper. Res. 21(1), 353–359 (1973)
Järvinen, P., Rajala, J., Sinervo, H.: A branch-and-bound algorithm for seeking the \(p\)-median. Oper. Res. 20(1), 173–178 (1972)
Jeurissen, R., Van den Berg, J.: Index tracking using a hybrid genetic algorithm. In: 2005 ICSC Congress on Computational Intelligence Methods and Applications, pp. 1–6. IEEE (2005)
Jeurissen, R., van den Berg, J.: Optimized index tracking using a hybrid genetic algorithm. In: IEEE Congress on Evolutionary Computation (CEC 2008), pp. 2327–2334. IEEE (2008)
Jobst, N.J., Horniman, M.D., Lucas, C.A., Mitra, G.: Computational aspects of alternative portfolio selection models in the presence of discrete asset choice constraints. Quant. Finance 1(5), 489–501 (2001)
Journée, M., Nesterov, Y., Richtárik, P., Sepulchre, R.: Generalized power method for sparse principal component analysis. J. Mach. Learn. Res. 11, 517–553 (2010)
Kariv, O., Hakimi, S.L.: An algorithmic approach to network location problems. II: the \(p\)-medians. SIAM J. Appl. Math. 37(3), 539–560 (1979)
Kis, T.: Lift-and-project for general two-term disjunctions. Discrete Optim. 12, 98–114 (2014)
Laundy, R.: Some logically constrained mathematical programming problems. Ph.D. thesis, University of Southampton (1983)
Loraschi, A., Tomassini, M., Tettamanzi, A., Verda, P.: Distributed genetic algorithms with an application to portfolio selection problems. In: Pearson, D.W., Steele, N.C., Albrecht, R.F. (eds.) Artificial Neural Nets and Genetic Algorithms, pp. 384–387. Springer, Berlin (1995)
Mansini, R., Speranza, M.G.: Heuristic algorithms for the portfolio selection problem with minimum transaction lots. Eur. J. Oper. Res. 114(2), 219–233 (1999)
Moral-Escudero, R., Ruiz-Torrubiano, R., Suarez, A.: Selection of optimal investment portfolios with cardinality constraints. In: IEEE Congress on Evolutionary Computation (CEC 2006), pp. 2382–2388. IEEE (2006)
Narula, S.C., Ogbu, U.I., Samuelsson, H.M.: An algorithm for the \(p\)-median problem. Oper. Res. 25(4), 709–713 (1977)
Nguyen, T.T.: Convexification techniques for complementarity and multilinear constraints. Ph.D. thesis, University of Florida (2013)
Prim, R.C.: Shortest connection networks and some generalizations. Bell Syst. Tech. J. 36(6), 1389–1401 (1957)
Raghavachari, M.: On connections between zero-one integer programming and concave programming under linear constraints. Oper. Res. 17(4), 680–684 (1969)
Rockafellar, R.T.: Convex Analysis, vol. 28. Princeton University Press, Princeton (1997)
Ruiz-Torrubiano, R., Suárez, A.: A hybrid optimization approach to index tracking. Ann. Oper. Res. 166(1), 57–71 (2009)
Schrijver, A.: Theory of Linear and Integer Programming. Wiley, New York (1998)
Shapcott, J.: Index Tracking: Genetic Algorithms for Investment Portfolio Selection. Edinburgh Parallel Computing Centre, Edinburgh (1992)
Tuy, H.: Concave programming under linear constraints. Sov. Math. 5, 1437–1440 (1964)
Zeng, B., Richard, J.-P.P.: A polyhedral study on 0–1 knapsack problems with disjoint cardinality constraints: facet-defining inequalities by sequential lifting. Discrete Optim. 8(2), 277–301 (2011)
Zeng, B., Richard, J.-P.P.: A polyhedral study on 0–1 knapsack problems with disjoint cardinality constraints: strong valid inequalities by sequence-independent lifting. Discrete Optim. 8(2), 259–276 (2011)
Zhang, Y., Burer, S., Street, W.N.: Ensemble pruning via semi-definite programming. J. Mach. Learn. Res. 7, 1315–1338 (2006)
Ziegler, G.M.: Lectures on Polytopes, vol. 152. Springer, Berlin (1995)
Zou, H., Hastie, T., Tibshirani, R.: Sparse principal component analysis. J. Comput. Graph. Stat. 15(2), 265–286 (2006)
Author information
Authors and Affiliations
Corresponding authors
Additional information
This work was supported by NSF CMMI Grants 1234897, 1235236, 1727989 and 1728031.
Appendix: Proof of Theorem 4
Appendix: Proof of Theorem 4
Proof
For a given node set \(X\subseteq \mathbf{{\mathcal {N}}_0}\), the operation Extract-Min(X) (resp. Extract-Max(X)) removes and returns the element of X with the smallest (resp. largest) key. We also define \(\text {Min}(X):=\min _{i\in X}\text {key}[i]\) and \(\text {Max}(X):=\max _{i\in X}\text {key}[i]\). We denote by \({\mathcal {Q}}_+\) (resp. \({\mathcal {Q}}_-\)) the max-priority queue in \({\mathcal {I}}_+\) (resp. min-priority queue in \({\mathcal {I}}_-\)) whose keys are not yet finalized. We let \({\mathcal {Q}}={\mathcal {Q}}_+\cup {\mathcal {Q}}_-\). For a node v, \(\text {Adj}[v]\) is the set of nodes adjacent to v in \({\mathcal {Q}}\).
Let H represent the sequence of nodes extracted during the successive iterations of the while loop. For nodes i and j, we write \(j \prec i\) if j occurs in H before i. We define \(\text {key}[0]=0\). Then, for \(i\in {\mathcal {Q}}_+\) (resp. \({\mathcal {Q}}_-\backslash \{0\}\)), we define \(\text {key}[i]\) to be \(\max _{j\in {\mathcal {I}}_-\backslash {\mathcal {Q}}_-, j \prec i} -s_{ij} + \text {key}[j]\) (resp. \(\min _{j\in {\mathcal {I}}_+\backslash {\mathcal {Q}}_+, j\prec i} s_{ij}+\text {key}[j]\)). We use induction to show that keys follow this definition. The base case can be verified via the initial assignment of keys and the convention that \(\min \{\emptyset \}=\infty \). If we assume that the keys satisfy the above definition before the iteration, then since \(k\prec i\) for any \(i\in {\mathcal {Q}}\backslash \{k\}\), the definition remains valid after the step 11 (resp. step 13). It is clear that once a node is extracted, the key of the node never changes in the remainder of the algorithm.
We first show that \(\min ({\mathcal {Q}}_-)-\text {key}[k]\ge 0\) and \(\text {key}[k] - \max ({\mathcal {Q}}_+)\ge 0\) at step 4 of the algorithm. This is clearly true for the base case. We assume that these inequalities are true and we choose to extract \(k'\) at either step 5 or step 7. We will only argue that the above inequalities hold for \(k'\) selected at step 5 because the other case is similar. We first argue that the result holds before step 9. If \(k'\) was selected at step 5, i.e., \(k'\in {\mathcal {Q}}_-\), then the first inequality holds because \(k'\) was chosen to be the node with minimum key in \({\mathcal {Q}}_-\). The second inequality holds because \(\text {key}[k']-\text {key}[k]\ge 0\) and \(\text {key}[k]-\max ({\mathcal {Q}}_+)\ge 0\) by induction hypothesis. Now, we show that these inequalities continue to hold until the step 4 of the next iteration. In particular, observe that for \(j\in {\mathcal {Q}}_-\) (resp. \(j\in {\mathcal {Q}}_+\)), since \(\text {key}[j]\ge \text {key}[k']\) (resp. \(\text {key}[j]\le \text {key}[k']\)) before the update in step 13 (resp. step 11) and \(s_{jk'}\ge 0\), it remains so after the update as well.
Now, we show that at each iteration of the algorithm where node \(k'\) is extracted, \(\delta + \sum _{j \preceq k'} \text {key}[j]\chi (\{j\}) + \text {key}[k']\chi ({\mathcal {Q}})\) defines a valid cut. This is trivially true for the base case. We now consider the case when \(k'\) is extracted. The incremental change to the vector is \((\text {key}[k']-\text {key}[k])\chi ({\mathcal {Q}}\cup \{k'\})\), where k immediately precedes \(k'\) in H. Clearly, this change does not affect any inequality in \(D_{1}\) expressed for nodes i and j which both precede \(k'\) or both succeed \(k'\). Therefore, we only need to concern ourselves with an inequality with respect to i and j where \(i\preceq k'\preceq j\). Assume \(j\in {\mathcal {Q}}_+\). If \(k'\in {\mathcal {I}}_+\), then the result follows because \(0\le s_{ij} + \text {key}[j] - \text {key}[i] \le s_{ij} + \text {key}[k'] - \text {key}[i]\) because \(k'\) is the maximizer in \({\mathcal {Q}}_+\). On the other hand, if \(k'\in {\mathcal {I}}_-\), then \(s_{ij} + \text {key}[k'] - \text {key}[i] \ge 0\) if \(k'=i\) and \(s_{ij} + \text {key}[k'] - \text {key}[i] \ge s_{ij} + \text {key}[k] - \text {key}[i] \ge 0\), where the first inequality follows because \(\text {key}[k']-\text {key}[k]\ge 0\) by our earlier proof and the second inequality by the induction hypothesis and because \(\text {key}[i]\) was not updated. The proof for the case \(j\in {\mathcal {Q}}_-\) is similar.
It follows from the definition of keys that at least one of the inequalities with respect to \(k'\) and its predecessors becomes tight. Since the procedure only stops when all the nodes are visited, it follows that the graph of tight inequalities is connected at the end and \(\delta + \sum _{j\in \mathbf{{\mathcal {N}}_0}} \text {key}^*[j]\chi (\{j\})\) defines a facet-defining inequality.
We now show that all the tight inequalities remain tight during the procedure. In particular, assume \(s_{ij} = 0\). Assume \(j\preceq i\) where \(j\in {\mathcal {I}}_-\) (the proof for \(j \in {\mathcal {I}}_+\) is similar). Clearly, when \(k=j\) at step 4, \(\text {key}[j]\ge \text {key}[i]\). However, \(\text {key}[i]\ge \text {key}[j]\) because of the previous update at step 11. Therefore, \(\text {key}[j]-\text {key}[i]=0\). Then, because of the condition in step 4, the keys added match \(\text {key}[i]\). Therefore, there is no update to \(\text {key}[i]\) because \(\text {key}[i]\ge -s_{ik} + \text {key}[k]\) follows from \(s_{ik}\ge 0\) and \(\text {key}[i]=\text {key}[k]\).
The above algorithm can be implemented using heaps for both \({\mathcal {Q}}_+\) and \({\mathcal {Q}}_-\). If the graph \(G({\mathcal {I}}_+,{\mathcal {I}}_-)\) has n nodes and e edges, it requires O(n) Insert, O(n) Min, O(n) Max, O(n) Extract-Min and Extract-Max, and O(e) Decrease-Key operations. With Fibonacci heaps, the running time is \(O(e+n\log n)\) which exactly matches that of Prim’s algorithm. \(\square \)
Rights and permissions
About this article
Cite this article
Kim, J., Tawarmalani, M. & Richard, JP.P. On cutting planes for cardinality-constrained linear programs. Math. Program. 178, 417–448 (2019). https://doi.org/10.1007/s10107-018-1306-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10107-018-1306-0
Keywords
- Complementarity/cardinality constraints
- Disjunctive sets
- Tableau cuts
- Equate-and-relax procedure
- Concavity cuts
- Prim’s algorithm