Exploiting symmetries in mathematical programming via orbital independence

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.

This is a preview of subscription content, access via your institution.

References

  1. Achterberg, T. (2009). SCIP: Solving constraint integer programs. Mathematical Programming Computation, 1(1), 1–41.

    Article  Google Scholar 

  2. 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.

    Google Scholar 

  3. 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.

    Google Scholar 

  4. 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.

  5. 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.

  6. Faenza, Y., & Kaibel, V. (2009). Extended formulations for packing and partitioning orbitopes. Mathematics of Operations Research, 34(3), 686–697.

    Article  Google Scholar 

  7. 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.

  8. Fischetti, M., Liberti, L., Salvagnin, D., & Walsh, T. (2017). Orbital shrinking: Theory and applications. Discrete Applied Mathematics, 222, 109–123.

    Article  Google Scholar 

  9. Fourer, R., Gay, D., & Kernighan, B. (2002). The AMPL book (2nd ed.). California, USA: Cengage Learning.

    Google Scholar 

  10. 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.

  11. Galli, S. (2004). Parsing AMPL internal format for linear and non-linear expressions. B.Sc. dissertation, DEI, Politecnico di Milano, Italy.

  12. Gallo, G., Hammer, P., & Simeone, B. (1980). Quadratic knapsack problems (pp. 132–149). Berlin, Heidelberg: Springer.

    Google Scholar 

  13. IBM. (2014). ILOG CPLEX 12.6—user’s manual.

  14. Kaibel, V., & Pfetsch, M. (2008). Packing and partitioning orbitopes. Mathematical Programming, 114(1), 1–36.

    Article  Google Scholar 

  15. Liberti, L. (2009). Reformulations in mathematical programming: Definitions and systematics. RAIRO-RO, 43(1), 55–86.

    Article  Google Scholar 

  16. Liberti, L. (2012a). Reformulations in mathematical programming: Automatic symmetry detection and exploitation. Mathematical Programming A, 131, 273–304.

    Article  Google Scholar 

  17. 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.

    Google Scholar 

  18. 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.

  19. Liberti, L., & Ostrowski, J. (2014). Stabilizer-based symmetry breaking constraints for mathematical programs. Journal of Global Optimization, 60, 183–194.

    Article  Google Scholar 

  20. Margot, F. (2002). Pruning by isomorphism in branch-and-cut. Mathematical Programming, 94, 71–90.

    Article  Google Scholar 

  21. Margot, F. (2003). Exploiting orbits in symmetric ILP. Mathematical Programming B, 98, 3–21.

    Article  Google Scholar 

  22. 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.

    Google Scholar 

  23. McKay, B. (1981). Practical graph isomorphism. Congressus Numerantium, 30, 45–87.

    Google Scholar 

  24. McKay, B., & Piperno, A. (2014). Practical graph isomorphism, II. Journal of Symbolic Computation, 60, 94–112.

    Article  Google Scholar 

  25. Ostrowski, J., Linderoth, J., Rossi, F., & Smriglio, S. (2011). Orbital branching. Mathematical Programming, 126(1), 147–178.

    Article  Google Scholar 

  26. Pfetsch, M., & Rehn, T. (2015). A computational comparison of symmetry handling methods for mixed integer programs. Technical report 5209, optimization online.

  27. The GAP Group. (2014). GAP - Groups. Algorithms and programming. Version 4.7.4.

Download references

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

Affiliations

Authors

Corresponding author

Correspondence to Leo Liberti.

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

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

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

Download citation

Keywords

  • Combinatorial optimization
  • Symmetry breaking
  • Group theory
  • Quadratic programming