Skip to main content
Log in

Exploiting symmetries in mathematical programming via orbital independence

  • S.I.: CoDIT2017-Combinatorial Optimization
  • Published:
Annals of Operations Research Aims and scope Submit manuscript

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

Institutional subscriptions

Similar content being viewed by others

References

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

    Article  Google Scholar 

  • 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 

  • 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 

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

    Article  Google Scholar 

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

    Article  Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

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

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

    Article  Google Scholar 

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

    Article  Google Scholar 

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

    Article  Google Scholar 

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

    Chapter  Google Scholar 

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

    Article  Google Scholar 

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

    Article  Google Scholar 

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

    Article  Google Scholar 

  • 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 

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

    Google Scholar 

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

    Article  Google Scholar 

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

    Article  Google Scholar 

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

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

Authors and 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

Check for updates. 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

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10479-019-03145-x

Keywords

Navigation