Annals of Operations Research

, Volume 140, Issue 1, pp 67–124

Integer-Programming Software Systems

Abstract

Recent developments in integer-programming software systems have tremendously improved our ability to solve large-scale instances. We review the major algorithmic components of state-of-the-art solvers and discuss the options available to users for adjusting the behavior of these solvers when default settings do not achieve the desired performance level. Furthermore, we highlight advances towards integrated modeling and solution environments. We conclude with a discussion of model characteristics and substructures that pose challenges for integer-programming software systems and a perspective on features we may expect to see in these systems in the near future.

Keywords

integer programming algebraic modeling languages software 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aardal, K., C.A.J. Hurkens, and A.K. Lenstra. (2000). “Solving a System of Linear Diophantine Equations with Lower and Upper Bounds on the Variables.” Mathematics of Operations Research 25(3), 427–442.CrossRefGoogle Scholar
  2. Aardal, K. and A. Lenstra. (2002). “Hard Equality Constrained Integer Knapsacks.” In W. Cook and A. Schultz (eds.), Proc. 9th International IPCO Conference Springer-Verlag, pp. 350–366.Google Scholar
  3. Anderson, E.D. and K.D. Anderson. (1995). “Presolving in Linear Programming.” Mathematical Programming 71, 221–225.Google Scholar
  4. Atamtürk, A. (2003a). “On the Facets of Mixed-Integer Knapsack Polyhedron.” Mathematical Programming 98, 145–175.CrossRefGoogle Scholar
  5. Atamtürk, A. (2003b). “Strong Formulations of Robust Mixed 0-1 Programming.” Research Report BCOL.03.04. Available at http://ieor.berkeley.edu/~atamturk (To appear in Mathematical Programming).
  6. Atamtürk, A. and M. Zhang. (2004). “Two-Stage Robust Network Flow and Design for Demand Uncertainty.” Research Report BCOL.04.03. Available at http://ieor.berkeley.edu/~atamturk.
  7. Balas, E. (1975). “Facets of the Knapsack Polytope.” Mathematical Programming 8, 146–164.CrossRefGoogle Scholar
  8. Balas, E., S. Ceria, G. Cornuéjols, and N. Natraj. (1996). “Gomory Cuts Revisited.” Operations Research Letters 19, 1–9.CrossRefGoogle Scholar
  9. Balas, E. and E. Zemel. (1978). “Facets of the Knapsack Polytope from Minimal Covers.” SIAM Journal of Applied Mathematics 34, 119–148.CrossRefGoogle Scholar
  10. Barany, I., T.J. Van Roy, and L.A. Wolsey. (1984). “Uncapacitated lot Sizing: The Convex Hull of Solutions.” Mathematical Programming Study 22, 32–43.Google Scholar
  11. Beale, E.M.L. (1979). “Branch and Bound Methods for Mathematical Programming Systems.” In P.L. Hammer, E.L. Johnson, and B.H. Korte (eds.), Discrete Optimization II, North Holland Publishing Co, pp. 201–219.Google Scholar
  12. Bénichou, M., J.M. Gauthier, P. Girodet, G. Hentges, G. Ribière, and O. Vincent. (1971). “Experiments in Mixed-Integer Linear Programming.” Mathematical Programming 1, 76–94.CrossRefGoogle Scholar
  13. Bertsimas, D. and M. Sim. (2003). “Robust Discrete Optimization and Network Flows.” Mathematical Programming 98, 49–71.CrossRefGoogle Scholar
  14. Bienstock, D. (1996). “Computational Study of a Family of Mixed-Integer Quadratic Programming Problems.” Mathematical Programming 74, 121–140.CrossRefGoogle Scholar
  15. Birge, J.R. and F. Louveaux. (1997). Introduction to Stochastic Programming. New York: Springer Verlag.Google Scholar
  16. Bixby, R.E., M. Fenelon, Z. Gu, E. Rothberg, and R. Wunderling. (2002). Mixed–integer programming: A progress report.Google Scholar
  17. Codato, G. and M. Fischetti. (2004). “Combinatorial Benders' Cuts.” In D. Bienstock, and G.L. Nemhauser (eds.), Proc. 10th International IPCO Conference Springer-Verlag; pp. 178–195.Google Scholar
  18. Cornuejols, G. and M. Dawande. (1998). “A Class of Hard Small 0-1 Programs.” In R.E. Bixby, E.A. Boyd, and R.Z. Rios-Mercado (eds.), Proc. 6th International IPCO Conference Springer-Verlag, pp. 284–293.Google Scholar
  19. Crowder, H., E.L. Johnson, and M.W. Padberg. (1983). “Solving Large–Scale Zero-One Linear Programming Problems.” Operations Research 31, 803–834.Google Scholar
  20. Danna, E., E. Rothberg, and C.L. Pape. (2003). “Exploring Relaxation Induced Neighborhoods to Improve MIP Solutions.” Technical report, ILOG, Inc.Google Scholar
  21. Dash Optimization, L. (2004a). Proctor and Gamble Case Study.Google Scholar
  22. Dash Optimization, L. (2004b). XPRESS-BCL Reference Manual—Release 2.6.Google Scholar
  23. Dash Optimization, L. (2004c). XPRESS-Mosel Language Reference Manual—Release 1.4.Google Scholar
  24. Dash Optimization, L. (2004d). XPRESS-Optimizer Reference Manual—Release 15.Google Scholar
  25. Farias, I.R.D., E.L. Johnson, and G.L. Nemhauser. (2001). “Branch-and-Cut for Combinatorial Optimisation Problems without Auxiliary Binary Variables.” Knowledge Engineering Review 16, 25–39.CrossRefGoogle Scholar
  26. Farias, I.R.D., E.L. Johnson, and G.L. Nemhauser. (2003). “A Polyhedral Study of the Cardinality Constrained Knapsack Problem.” Mathematical Programming 96, 439–467.CrossRefGoogle Scholar
  27. Fischetti, M. and A. Lodi. (2003). “Local Branching.” Mathematical Programming 98, 23–47.CrossRefGoogle Scholar
  28. Fischetti, M., F. Glover, and A. Lodi. (2005). ‘The Feasibility Pump.” Mathematical Programming 104, 91–104.CrossRefGoogle Scholar
  29. Forrest, J.J.H., J.P.H. Hirst, and J.A. Tomlin. (1974). “Practical Solution of Large Scale Mixed Integer Programming Problems with UMPIRE.” Management Science 20, 736–773.Google Scholar
  30. Gomory, R.E. (1960). “An Algorithm for the Mixed Integer Problem.” Technical Report RM-2597, The Rand Corporation.Google Scholar
  31. Gondzio, J. (1997). “Presolve Analysis of Linear Programs Prior to Applying an Interior Point Method.” INFORMS Journal on Computing 9, 73–91.Google Scholar
  32. Gu, Z., G.L. Nemhauser, and M.W.P. Savelsbergh. (1998). “Lifted Cover Inequalities for 0-1 Integer Programs: Computation.” INFORMS Journal on Computing 10, 427–437.Google Scholar
  33. Gu, Z., G.L. Nemhauser, and M.W.P. Savelsbergh. (1999). “Lifted Flow Cover Inequalities for Mixed 0-1 Integer Programs.” Mathematical Programming 85, 439–467.CrossRefGoogle Scholar
  34. Guignard, M. and K. Spielberg. (1981). “Logical Reduction Methods in Zero–One Programming.” Operations Research 29, 49–74.Google Scholar
  35. Hammer, P.L., E.L. Johnson, and U.N. Peled. (1975). “Facets of Regular 0-1 Polytopes.” Mathematical Programming 8, 179–206.CrossRefGoogle Scholar
  36. Harjunkoski, I., V. Jain, and I.E. Grossman. (2000). “Hybrid Mixed-Integer/Constraint Logic Programming Strategies for Solving Scheduling and Combinatorial Optimization Problems.” Computers and Chemical Engineering 24, 337–343.CrossRefGoogle Scholar
  37. Hirst, J.P.H. (1969). “Features Required in Branch and Bound Algorithms for (0-1) Mixed Integer Linear Programming.” Privately circulated manuscript.Google Scholar
  38. Hooker, J.N., G. Ottosson, E.S. Thornsteinsson, and H.-J. Kim. (2000). “A Scheme for Unifying Optimization and Constraint Satisfaction Methods.” Knowledge Engineering Review 15, 11–30.CrossRefGoogle Scholar
  39. ILOG, I. (2002). ILOG OPL User's Manual.Google Scholar
  40. ILOG, I. (2003). ILOG CPLEX 9.0 Reference Manual.Google Scholar
  41. Jain, V. and I.E. Grossmann. (2001). “Algorithms for Hybrid MILP/CP Methods.” INFORMS Journal on Computing 13, 258–276.CrossRefGoogle Scholar
  42. Land, A. and S. Powell. (1979). “Computer Codes for Problems of Integer Programming.” In P.L. Hammer, E.L. Johnson, and B.H. Korte (eds.), Discrete Optimization II North Holland Publishing Co, pp. 221–269.Google Scholar
  43. LINDO Systems, I. (2002). LINDO API User's Manual.Google Scholar
  44. Louveaux, Q. and L.A. Wolsey. (2002). “Combining Problem Structure with Basis Reduction to Solve a Class of Hard Integer Programs.” 27, 470–484.Google Scholar
  45. Marchand, H. and L.A. Wolsey. (2001). “Aggregation and Mixed Integer Rounding to Solve MIPs.” Operations Research 49, 363–371.CrossRefGoogle Scholar
  46. Margot, F. (2003). “Exploiting Orbits in Symmetric Ilp.” Mathematical Programming 98, 3–21.CrossRefGoogle Scholar
  47. Martin, A., T. Achterberg, and T. Koch. (2003). MIPLIB 2003. http://miplib.zib.de/.
  48. Mitra, G. (1973). “Investigation of Some Branch and Bound Strategies for the Solution of Mixed Integer Linear Programs.” Mathematical Programming 4, 155–170.CrossRefGoogle Scholar
  49. Mittelman, H. (2002). “Benchmarks for Optimization Software.” http://plato.asu.edu/bench.html.
  50. Nemhauser, G.L. and L.A. Wolsey. (1988). Integer and Combinatorial Optimization. New York: John Wiley & Sons.Google Scholar
  51. Nemhauser, G.L. and L.A. Wolsey. (1990). “A Recursive Procedure for Generating all Cuts for 0-1 Mixed Integer Programs.” Mathematical Programming 46, 379–390.CrossRefGoogle Scholar
  52. Owen, J.H. and S. Mehrotra. (2002). “On the Value of Binary Expansions for General Mixed-Integer Linear Programs.” Operations Research 50(5), 810–819.CrossRefGoogle Scholar
  53. Padberg, M.W. (1973). “On the Facial Structure of Set Packing Polyhedra.” Mathematical Programming 5, 199–215.CrossRefGoogle Scholar
  54. Padberg, M.W. (1979). “Covering, Packing and Knapsack Problems.” Annals of Discrete Mathematics 4, 265–287.CrossRefGoogle Scholar
  55. Padberg, M.W., T.J.V. Roy, and L.A. Wolsey. (1985). “Valid Linear Inequalities for Fixed Charge Problems.” Operations Research 33, 842–861.Google Scholar
  56. Savelsbergh, M.W.P. (1994). “Preprocessing and Probing Techniques for Mixed Integer Programming Problems.” ORSA Journal on Computing 6, 445–454.Google Scholar
  57. Sherali, H.D. and J.C. Smith. (2001). “Improving Discrete Model Representations via Symmetry Considerations.” Management Science 47, 1396–1407.CrossRefGoogle Scholar
  58. van der Vlerk, M.H. (1996–2003). “Stochastic Integer Programming Bibliography.” http://mally.eco.rug.nl/biblio/stoprog.html.
  59. Van Roy, T.J. and L.A. Wolsey. (1987). “Solving Mixed Integer Programming Problems using Automatic Reformulation.” Operations Research 35, 45–57.CrossRefGoogle Scholar
  60. Wolsey, L.A. (1998). Integer Programming. New York: John Wiley & Sons.Google Scholar

Copyright information

© Springer Science + Business Media, Inc. 2005

Authors and Affiliations

  1. 1.Department of Industrial Engineering and Operations ResearchUniversity of CaliforniaBerkeleyUSA
  2. 2.School of Industrial and Systems EngineeringGeorgia Institute of TechnologyAtlantaUSA

Personalised recommendations