The Cunningham-Geelen Method in Practice: Branch-Decompositions and Integer Programming
S. Margulies, J. Ma, I. V. Hicks
INFORMS Journal on Computing ยท 2013 ยท Volume 25 ยท Issue 4
Abstract
In 2007, W. H. Cunningham and J. Geelen describe an algorithm for solving m a x โก { ๐ ๐ โข ๐ฅ : ๐ด โข ๐ฅ = ๐ , ๐ฅ โฅ 0 , ๐ฅ โ โค ๐ } max โก { c T โข x : A โข x = b , x โฅ 0 , x โ โค n } , where ๐ด โ โค ๐ ร ๐ โฅ 0 A โ โค โฅ 0 m ร n , ๐ โ โค ๐ b โ โค m , and ๐ โ โค ๐ c โ โค n , which utilizes a branch-decomposition of the matrix A and techniques from dynamic programming. In this paper, we report on the first implementation of the CG algorithm and compare our results with the commercial integer programming software Gurobi . Using branch-decomposition trees produced by heuristics and optimal trees produced by algorithms developed in our previous studies, we test both a memory-intensive and low-memory version of the CG algorithm on problem instances such as graph 3-coloring, set partition, market split, and knapsack. We isolate a class of set partition instances where the CG algorithm runs twice as fast as Gurobi , and demonstrate that certain infeasible market split and knapsack instances with width โค6 range from running twice as fast as Gurobi , to running in a matter of minutes versus a matter of hours.
Keywords
optimization, integer programming, branch-decompositions
Enable JavaScript for citation tools and additional paper interactions.