Finding the symmetry group of an LP with equality constraints and its application to classifying orthogonal arrays

Abstract For a given linear program (LP) a permutation of its variables that sends feasible points to feasible points and preserves the objective function value of each of its feasible points is a symmetry of the LP. The set of all symmetries of an LP, denoted by G LP , is the symmetry group of the LP. Margot (2010) described a method for computing a subgroup of the symmetry group G LP of an LP. This method computes G LP when the LP has only non-redundant inequalities and its feasible set satisfies no equality constraints. However, when the feasible set of the LP satisfies equality constraints this method finds only a subgroup of G LP and can miss symmetries. We develop a method for finding the symmetry group of a feasible LP whose feasible set satisfies equality constraints. We apply this method to find and exploit the previously unexploited symmetries of an orthogonal array defining integer linear program (ILP) within the branch-and-bound (B&B) with isomorphism pruning algorithm (Margot, 2007). Our method reduced the running time for finding all OD-equivalence classes of OA ( 160 , 8 , 2 , 4 ) and OA ( 176 , 8 , 2 , 4 ) by factors of 1 ∕ ( 2 . 16 ) and 1 ∕ ( 1 . 36 ) compared to the fastest known method (Bulutoglu and Ryan, 2018). These were the two bottleneck cases that could not have been solved until the B&B with isomorphism pruning algorithm was applied. Another key finding of this paper is that converting inequalities to equalities by introducing slack variables and exploiting the symmetry group of the resulting ILP’s LP relaxation within the B&B with isomorphism pruning algorithm can reduce the computation time by several orders of magnitude when enumerating a set of all non-isomorphic solutions of an ILP.

[1]  François Margot,et al.  Exploiting orbits in symmetric ILP , 2003, Math. Program..

[2]  Marc E. Pfetsch,et al.  A computational comparison of symmetry handling methods for mixed integer programs , 2019, Math. Program. Comput..

[3]  Michael Joswig,et al.  Algorithms for highly symmetric linear and integer programs , 2010, Mathematical Programming.

[4]  J. Rotman An Introduction to the Theory of Groups , 1965 .

[5]  Steven J. Leon Linear Algebra With Applications , 1980 .

[6]  Steven J. Rosenberg,et al.  A large index theorem for orthogonal arrays, with bounds , 1995, Discret. Math..

[7]  Boxin Tang,et al.  Complete enumeration of two-Level orthogonal arrays of strength d with d + 2 constraints , 2007, 0708.1908.

[8]  G. Nemhauser,et al.  Integer Programming , 2020 .

[9]  Eugene M. Luks,et al.  Permutation Groups and Polynomial-Time Computation , 1996, Groups And Computation.

[10]  Andrew J. Geyer,et al.  The LP Relaxation Orthogonal Array Polytope and its Permutation Symmetries , 2015, 1503.03910.

[11]  Jeff T. Linderoth,et al.  Constraint Orbital Branching , 2008, IPCO.

[12]  Leo Liberti,et al.  Reformulations in mathematical programming: automatic symmetry detection and exploitation , 2010, Mathematical Programming.

[13]  D. Bulutoglu,et al.  The linear programming relaxation permutation symmetry group of an orthogonal array defining integer linear program , 2021, LMS J. Comput. Math..

[14]  François Margot,et al.  Small covering designs by branch-and-cut , 2003, Math. Program..

[15]  Brendan D. McKay,et al.  Isomorph-Free Exhaustive Generation , 1998, J. Algorithms.

[16]  Kenneth Joseph Ryan,et al.  Minimum Aberration Fractional Factorial Designs With Large N , 2010, Technometrics.

[17]  K. J. Ryan,et al.  Integer Programming for Classifying Orthogonal Arrays , 2015, 1501.02281.

[18]  Brendan D. McKay,et al.  The Nonexistence of 4-(12,6,6) Designs , 1996 .

[19]  François Margot,et al.  Symmetric ILP: Coloring and small integers , 2007, Discret. Optim..

[20]  Ian M. Wanless,et al.  Enumeration of MOLS of small order , 2014, Math. Comput..

[21]  François Margot,et al.  Symmetry in Integer Linear Programming , 2010, 50 Years of Integer Programming.

[22]  François Margot,et al.  Pruning by isomorphism in branch-and-cut , 2001, Math. Program..

[23]  S. Nash,et al.  Linear and Nonlinear Programming , 1987 .

[24]  Brendan D. McKay,et al.  Practical graph isomorphism, II , 2013, J. Symb. Comput..

[25]  Erich Kaltofen,et al.  Topics of computer algebra , 2003 .

[26]  Brendan D. McKay,et al.  Hadamard equivalence via graph isomorphism , 1979, Discret. Math..

[27]  D. Bulutoglu,et al.  Classification of Orthogonal Arrays by Integer Programming , 2008 .

[28]  D. Pasechnik,et al.  Computing symmetry groups of polyhedra , 2012, LMS J. Comput. Math..