Abstract
The presence of symmetries in the solution set of mathematical programs requires the exploration of symmetric subtrees during the execution of Branch-and-Bound type algorithms and yields increases in computation times. When some of the solution symmetries are evident in the formulation, it is possible to deal with them as a preprocessing step. In this sense, implementation-wise, one of the simplest approaches is to break symmetries by adjoining Symmetry-Breaking Constraints (SBCs) to the formulation. Designed to remove some of the symmetric global optima, these constraints are generated from each orbit of the action of the symmetries on the variable index set. Incompatible SBCs, however, might make all of the global optima infeasible. In this paper we introduce and test a new concept of Orbital Independence designed to address this issue. We provide necessary conditions for characterizing independent sets of orbits and also prove that such sets embed sufficient conditions to exploit symmetries from two or more distinct orbits concurrently. The theory developed is used to devise an algorithm that identifies the largest independent set of orbits of any mathematical program. Extensive numerical experiments are provided to validate the theoretical results.
Similar content being viewed by others
References
Achterberg, T. (2009). SCIP: Solving constraint integer programs. Mathematical Programming Computation, 1(1), 1–41.
Berstel, J., & Boasson, L. (1990). Context-free languages. In J. van Leeuwen (Ed.), Handbook of theoretical computer science (Vol. B, pp. 59–102). Cambridge, MA, USA: MIT Press.
Bomze, I., Budinich, M., Pardalos, P., & Pelillo, M. (1998). The maximum clique problem. In D. Z. Du & P. Pardalos (Eds.), Handbook of combinatorial optimization: Supplement (Vol. A, pp. 1–74). US, Boston, MA: Springer.
Costa, A., Hansen, P., & Liberti, L. (2010). Formulation symmetries in circle packing. In R. Mahjoub (Ed.), ISCO 2010 proceedings, ENDM (Vol. 36, pp. 1303–1310). Amsterdam, Netherlands: Elsevier.
Dias, G., & Liberti, L. (2015). Orbital independence in symmetric mathematical programs. In Z. Lu et al. (Eds.), COCOA 2015 proceedings, LNCS (Vol. 9486, pp. 467–480). Springer.
Faenza, Y., & Kaibel, V. (2009). Extended formulations for packing and partitioning orbitopes. Mathematics of Operations Research, 34(3), 686–697.
Fischetti, M., & Liberti, L. (2012). Orbital shrinking. In R. Mahjoub, V. Markakis, I. Milis, & V. Paschos (Eds.), ISCO 2012 proceedings, LNCS (Vol. 7422, pp. 48–58). Berlin, Heidelberg: Springer.
Fischetti, M., Liberti, L., Salvagnin, D., & Walsh, T. (2017). Orbital shrinking: Theory and applications. Discrete Applied Mathematics, 222, 109–123.
Fourer, R., Gay, D., & Kernighan, B. (2002). The AMPL book (2nd ed.). California, USA: Cengage Learning.
Friedman, E. (2007). Fundamental domains for integer programs with symmetries. In A. Dress, Y. Xu, B. Zhu (Eds.), COCOA 2007 proceedings, LNCS (Vol. 4616, pp. 146–153). Springer.
Galli, S. (2004). Parsing AMPL internal format for linear and non-linear expressions. B.Sc. dissertation, DEI, Politecnico di Milano, Italy.
Gallo, G., Hammer, P., & Simeone, B. (1980). Quadratic knapsack problems (pp. 132–149). Berlin, Heidelberg: Springer.
IBM. (2014). ILOG CPLEX 12.6—user’s manual.
Kaibel, V., & Pfetsch, M. (2008). Packing and partitioning orbitopes. Mathematical Programming, 114(1), 1–36.
Liberti, L. (2009). Reformulations in mathematical programming: Definitions and systematics. RAIRO-RO, 43(1), 55–86.
Liberti, L. (2012a). Reformulations in mathematical programming: Automatic symmetry detection and exploitation. Mathematical Programming A, 131, 273–304.
Liberti, L. (2012b). Symmetry in mathematical programming. In S. Leyffer & J. Lee (Eds.), Mixed integer nonlinear programming, IMA Series (Vol. 154, pp. 263–286). New York: Springer.
Liberti, L., Cafieri, S., & Savourey, D. (2010). Reformulation optimization software engine. In K. Fukuda et al. (Eds.), Mathematical software, LNCS (Vol. 6327, pp. 303–314). Springer.
Liberti, L., & Ostrowski, J. (2014). Stabilizer-based symmetry breaking constraints for mathematical programs. Journal of Global Optimization, 60, 183–194.
Margot, F. (2002). Pruning by isomorphism in branch-and-cut. Mathematical Programming, 94, 71–90.
Margot, F. (2003). Exploiting orbits in symmetric ILP. Mathematical Programming B, 98, 3–21.
Margot, F. (2010). Symmetry in integer linear programming. In M. Jünger, et al. (Eds.), 50 years of integer programming (pp. 647–681). Berlin: Springer.
McKay, B. (1981). Practical graph isomorphism. Congressus Numerantium, 30, 45–87.
McKay, B., & Piperno, A. (2014). Practical graph isomorphism, II. Journal of Symbolic Computation, 60, 94–112.
Ostrowski, J., Linderoth, J., Rossi, F., & Smriglio, S. (2011). Orbital branching. Mathematical Programming, 126(1), 147–178.
Pfetsch, M., & Rehn, T. (2015). A computational comparison of symmetry handling methods for mixed integer programs. Technical report 5209, optimization online.
The GAP Group. (2014). GAP - Groups. Algorithms and programming. Version 4.7.4.
Acknowledgements
The first author (GD) was supported by a CNPq Ph.D. thesis award. The second author (LL) gratefully acknowledges funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Sklodowska-Curie Grant Agreement No. 764759. We would like to thank two anonymous referees for all the comments and suggestions that helped us to improve our work.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This paper is an extension of the work presented in Dias and Liberti (2015).
Rights and permissions
About this article
Cite this article
Dias, G., Liberti, L. Exploiting symmetries in mathematical programming via orbital independence. Ann Oper Res 298, 149–182 (2021). https://doi.org/10.1007/s10479-019-03145-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10479-019-03145-x