Encyclopedia of Operations Research and Management Science

2013 Edition
| Editors: Saul I. Gass, Michael C. Fu

Integer and Combinatorial Optimization

Reference work entry
DOI: https://doi.org/10.1007/978-1-4419-1153-7_129


Integer optimization problems are concerned with the efficient allocation of limited resources to meet a desired objective when some of the resources in question can only be divided into discrete parts. In such cases, the divisibility constraints on these resources, which may be people, machines, or other discrete inputs, may restrict the possible alternatives to a finite set. Nevertheless, there are usually too many alternatives to make complete enumeration a viable option for instances of realistic size. For example, an airline may need to determine crew schedules that minimize the total operating cost, an automotive manufacturer may want to determine the optimal mix of models to produce in order to maximize profit, or a flexible manufacturing facility may want to schedule production for a plant without knowing precisely what parts will be needed in future periods. In today’s changing and competitive industrial environment, the difference between ad hoc planning methods...

This is a preview of subscription content, log in to check access.


  1. Aardal, K., & van Hoesel, C. (1996a). Polyhedral techniques in combinatorial optimization I: Applications and computations. Statistica Neerlandica, 50, 3–26.CrossRefGoogle Scholar
  2. Aardal, K., & van Hoesel, C. (1996b). Polyhedral techniques in combinatorial optimization II: Applications and computations. Statistica Neerlandica, 50, 3–26.CrossRefGoogle Scholar
  3. Abara, J. (1989). Applying integer linear programming to the fleet assignment problem. Interfaces, 19, 20–28.CrossRefGoogle Scholar
  4. Achtenberg, T., & Berthold, T. (2007). Improving the feasibility pump. Discrete Mathematics, 4, 77–86.Google Scholar
  5. Achterberg, T., Koch, T., & Martin, A. (2005). Branching rules revisited. Operations Research Letters, 33, 42–54.CrossRefGoogle Scholar
  6. Ahuja, R., Magnanti, T., & Orlin, J. (1993). Network flows: Theory, algorithms, and applications. Englewood Cliffs, NJ: Prentice Hall.Google Scholar
  7. Anderson, E., & Anderson, K. (1995). Presolving in linear programming. Mathematical Programming, 71, 221–245.Google Scholar
  8. Applegate, D., & Cook, W. (1991). A computational study of the job-shop scheduling problem. INFORMS Journal on Computing, 3, 149–156.CrossRefGoogle Scholar
  9. Applegate, D., Bixby, R., Chvátal, V., & Cook, W. (2006). The traveling salesman problem: A computational study. Princeton, NJ: Princeton University Press.Google Scholar
  10. Atamturk, A., & Savelsbergh, M. (2000). Conflict graphs in solving integer programming problems. European Journal of Operational Research, 121, 40–55.CrossRefGoogle Scholar
  11. Atamtürk, A., & Savelsbergh, M. (2005). Integer-programming software systems. Annals of Operations Research, 140, 67–124.CrossRefGoogle Scholar
  12. Avner, P. (2001). A radiation hybrid transcript may of the mouse genome. Nature Genetics, 29, 194–200.CrossRefGoogle Scholar
  13. Balas, E. (1975). Facets of the knapsack polytope. Mathematical Programming, 8, 146–164.CrossRefGoogle Scholar
  14. Balas, E. (1998). Disjunctive programming: Properties of the convex hull of feasible points. Discrete Applied Mathematics, 89, 3–44.CrossRefGoogle Scholar
  15. Balas, E., & Martin, R. (1980). Pivot and complement: A heuristic for 0-1 programming. Management Science, 26, 86–96.CrossRefGoogle Scholar
  16. Balas, E., & Padberg, M. (1972). On the set-covering problem. Operations Research, 20, 1152–1161.CrossRefGoogle Scholar
  17. Balas, E., & Padberg, M. (1976). Set partitioning: A survey. SIAM Review, 18, 710–760.CrossRefGoogle Scholar
  18. Balas, E., Ceria, S., & Corneujols, G. (1993). A lift-and-project cutting plane algorithm for mixed 0-1 programs. Mathematical Programming, 58, 295–324.CrossRefGoogle Scholar
  19. Balas, E., Ceria, S., & Cornuejols, G. (1996). Mixed 0-1 programming by lift-and-project in a branch-and-cut framework. Management Science, 42, 1229–1246.CrossRefGoogle Scholar
  20. Balas, E., Ceria, S., Cornuejols, G., & Natraj, N. (1999). Gomory cuts revisited. Operations Research Letters, 19, 1–9.CrossRefGoogle Scholar
  21. Balas, E., Schmieta, S., & Wallace, C. (2004). Pivot and shift—A mixed integer programming heuristic. Discrete Optimization, 1, 3–12.CrossRefGoogle Scholar
  22. Barahona, F., Grötschel, M., Jünger, M., & Reinelt, G. (1988). An application of combinatorial optimization to statistical physics and circuit layout design. Operations Research, 36, 493–513.CrossRefGoogle Scholar
  23. Barnhart, C., Johnson, E. L., Nemhauser, G. L., Savelsbergh, M. W. P., & Vance, P. H. (1998). Branch and price: Column generation for solving huge integer programs. Operations Research, 46, 316–329.CrossRefGoogle Scholar
  24. Bauer, P., Linderoth, J., & Savelsbergh, M. (2002). A branch and cut approach to the cardinality constrained circuit problem. Mathematical Programming, 9, 307–348.CrossRefGoogle Scholar
  25. Benders, J. F. (1962). Partitioning procedures for solving mixed variable programming problems. Numerische Mathematik, 4, 238–252.CrossRefGoogle Scholar
  26. Bertsimas, D., & Weismantel, R. (2005). Optimization over integers. Cambridge, MA: Dynamic Ideas.Google Scholar
  27. Borndörfer, R., & Weismantel, R. (2000). Set packing relaxations of some integer programs. Mathematical Programming, 88, 425–450.CrossRefGoogle Scholar
  28. Bramel, J., & Simchi-Levi, D. (1997). On the effectiveness of set covering formulations for the vehicle routing problem with time windows. Operations Research, 45, 295–301.CrossRefGoogle Scholar
  29. Brearley, A., Mitra, G., & Williams, H. (1975). Analysis of mathematical programming problems prior to applying the simplex method. Mathematical Programming, 8, 54–83.CrossRefGoogle Scholar
  30. Brooke, A., Kendrick, D., & Meeraus, A. (1988). GAMS, a user’s guide. Redwood City, CA: The Scientific Press.Google Scholar
  31. Chabrier, A. (2006). Vehicle routing problem with elementary shortest path based column generation. Computers and Operations Research, 33(10), 2972–2990.CrossRefGoogle Scholar
  32. Chan, L., Muriel, A., & Simchi-Levi, D. (1998a). Parallel machine scheduling, linear programming, and parameter list scheduling heuristics. Operations Research, 46, 729–741.CrossRefGoogle Scholar
  33. Chan, L., Simchi-Levi, D., & Bramel, J. (1998b). Worst-case analyses, linear programming and the bin-packing problem. Mathematical Programming, 83, 213–227.Google Scholar
  34. Chvátal, V. (1983). Linear programming. New York: W. H. Freeman.Google Scholar
  35. Cornuéjols, G. (2008). Valid inequalities for mixed integer linear programs. Mathematical Programming B, 112, 3–44.CrossRefGoogle Scholar
  36. Cornuejols, G., Nemhauser, G., & Wolsey, L. (1980). Worst-case and probabilistic analysis of algorithms for a location problem. Operations Research, 28, 847–858.CrossRefGoogle Scholar
  37. Cramton, P., Shoham, Y., & Steinberg, R. (2006). Combinatorial auctions. Cambridge, MA: MIT Press.Google Scholar
  38. Danna, E., Rothberg, E., & LePape, C. (2005). Exploring relaxation induced neighborhoods to improve MIP solutions. Mathematical Programming, 102, 71–90.CrossRefGoogle Scholar
  39. Dantzig, G., & Wolfe, P. (1960). Decomposition principle for linear programs. Operations Research, 8, 101–111.CrossRefGoogle Scholar
  40. Drezner, Z., & Hamacher, H. (2004). Facility location: Applications and theory. Berlin: Springer.Google Scholar
  41. Edmonds, J., & Johnson, E. L. (1973). Matching, Euler tours, and the Chinese postman. Mathematical Programming, 5, 88–124.CrossRefGoogle Scholar
  42. Fischetti, M., & Lodi, A. (2002). Local branching. Mathematical Programming, 98, 23–47.CrossRefGoogle Scholar
  43. Fischetti, M., Lodi, A., & Salvagnin, D. (2009). Just MIP It! In V. Maniezzo, T. Stuetzle, & S. Voss (Eds.), MATHEURISTICS: Hybridizing metaheuristics and mathematical programming (pp. 39–70). Berlin: Springer.CrossRefGoogle Scholar
  44. Fisher, M. L. (1981). The lagrangian method for solving integer programming problems. Management Science, 27, 1–18.CrossRefGoogle Scholar
  45. Fourer, R., Gay, D. M., & Kernighan, B. W. (1993). AMPL: A modeling language for mathematical programming. San Francisco: The Scientific Press.Google Scholar
  46. Garey, M. R., & Johnson, D. S. (1979). Computers and intractability: A guide to the theory of NP-completeness. New York: W. H. Freeman.Google Scholar
  47. Geoffrion, A. (1974). Lagrangian relaxation for integer programming. Mathematical Programming Study, 2, 82–114.CrossRefGoogle Scholar
  48. Gilmore, P. C., & Gomory, R. E. (1961). A linear programming approach to the cutting stock problem. Operations Research, 9, 849–859.CrossRefGoogle Scholar
  49. Glover, F., & Laguna, M. (1998). Tabu search. Berlin: Springer.CrossRefGoogle Scholar
  50. Goldberg, D. (1989). Genetic algorithms in search, optimization, and machine learning. Reading, MA: Addison-Wesley.Google Scholar
  51. Golden, B., Raghavan, S., & Wasail, E. (2010). The vehicle routing problem: Latest advances and new challenges. Berlin: Springer.Google Scholar
  52. Gomory, R. E. (1958). Outline of an algorithm for integer solutions to linear programs. Bulletin of the American Mathematical Monthly, 64, 275–278.CrossRefGoogle Scholar
  53. Gomory, R. E. (1960). An algorithm for the mixed integer problem (Tech. Rep. RM-2597). The RAND Corporation. Santa Monica, California.Google Scholar
  54. Gu, Z., Nemhauser, G. L., & Savelsbergh, M. W. P. (1998). Cover inequalities for 0-1 linear programs: Computation. INFORMS Journal on Computing, 10, 427–437.CrossRefGoogle Scholar
  55. Gu, Z., Nemhauser, G. L., & Savelsbergh, M. W. P. (1999). Lifted flow covers for mixed 0-1 integer programs. Mathematical Programming, 85, 439–467.CrossRefGoogle Scholar
  56. Gu, Z., Nemhauser, G. L., & Savelsbergh, M. W. P. (2000). Sequence independent lifting. Journal of Combinatorial Optimization, 4, 109–129.CrossRefGoogle Scholar
  57. Guignard, M., & Kim, S. (1987). Lagrangian decomposition: A model yielding stronger lagrangian bounds. Mathematical Programming, 39, 215–228.CrossRefGoogle Scholar
  58. Guignard, M., & Spielberg, K. (1981). Logical reduction methods in zero-one programming: Minimal preferred inequalities. Operations Research, 29, 49–74.CrossRefGoogle Scholar
  59. Hammer, P. L., Johnson, E. L., & Peled, U. N. (1975). Facets of regular 0-1 polytopes. Mathematical Programming, 8, 179–206.CrossRefGoogle Scholar
  60. Hane, C., Barnhart, C., Johnson, E., Marsten, R., Nemhauser, G., & Sigismondi, G. (1995). The fleet assignment problem: Solving a large-scale integer program. Mathematical Programming, 70, 211–232.Google Scholar
  61. Hansen, P. (1986). The steepest ascent mildest descent heuristic for combinatorial programming. Proceedings of Congress on Numerical Methods in Combinatorial Optimization, Italy.Google Scholar
  62. Held, M., & Karp, R. M. (1970). The traveling salesman problem and minimum spanning trees. Operations Research, 18, 1138–1162.CrossRefGoogle Scholar
  63. Hoffman, K., & Padberg, M. (1985). LP-based combinatorial problem solving. Annals of Operations Research, 4, 145–194.CrossRefGoogle Scholar
  64. Hoffman, K. L., & Padberg, M. W. (1991). Improving LP-representations of zero-one linear programs for branch and cut. ORSA Journal on Computing, 3, 121–134.CrossRefGoogle Scholar
  65. Hoffman, K., & Padberg, M. (1993). Solving airline crew scheduling problems by branch-and-cut. Management Science, 39, 667–682.Google Scholar
  66. Hoffman, K., & Villa, C. (2007). A column-generation and branch-and-cut approach to the bandwidth-packing problem. Journal of Research of the National Institute of Standards and Technology, 111, 161–185.Google Scholar
  67. Hooker, J. (2002). Logic, optimization, and constraint programming. INFORMS Journal on Computing, 14, 295–321.CrossRefGoogle Scholar
  68. Hooker, J. (2007). Planning and scheduling by logic-based benders decomposition. Operations Research, 55, 588–602.CrossRefGoogle Scholar
  69. Jünger, M., Liebling, T., Naddef, D., Nemhauser, G., Pulleyblank, W., Reinelt, G. (2010). Fifty years of integer programming: 1958–2008. Berlin: Springer.CrossRefGoogle Scholar
  70. Kan, A. R. (1986). An introduction to the analysis of approximation algorithms. Discrete Applied Mathematics, 14, 111–134.CrossRefGoogle Scholar
  71. Karamanov, M., & Cornuéjols, G. (2009). Branching on general disjunctions. Mathematical Programming, 128, 403–406.Google Scholar
  72. Karp, R. (1976). Probabilistic analysis of partitioning algorithms for the traveling salesman problem. In J. F. Traub (Ed.), Algorithms and complexity: New directions and recent results (pp. 1–19). New York: Academic.Google Scholar
  73. Land, A. H., & Doig, A. G. (1960). An automatic method for solving discrete programming problems. Econometrica, 28, 497–520.CrossRefGoogle Scholar
  74. Linderoth, J., & Ralphs, T. (2005). Noncommercial software for mixed-integer linear programming. In J. Karlof (Ed.), Integer programming: Theory and practice (pp. 253–303). Boca Raton, FL: CRC Press.Google Scholar
  75. Linderoth, J. T., & Savelsbergh, M. W. P. (1999). A computational study of search strategies in mixed integer programming. INFORMS Journal on Computing, 11, 173–187.CrossRefGoogle Scholar
  76. Marchand, H., & Wolsey, L. (2001). Aggregation and mixed integer rounding to solve MIPs. Operations Research, 49, 363–371.CrossRefGoogle Scholar
  77. Markowitz, H., & Manne, A. (1957). On the solution of discrete programming problems. Econometrica, 2, 84–110.CrossRefGoogle Scholar
  78. Martello, S., & Toth, P. (1990). Knapsack problems. New York: Wiley.Google Scholar
  79. Martin, A. (2001). Computational issues for branch-and-cut algorithms. In M. Juenger & D. Naddef (Eds.), Computational combinatorial optimization (pp. 1–25). Berlin: Springer.CrossRefGoogle Scholar
  80. McAloon, K., & Tretkoff, C. (1996). Optimization and computational logic. New York: Wiley.Google Scholar
  81. Mitten, L. (1970). Branch-and-bound methods: General formulation and properties. Operations Research, 18, 24–34.CrossRefGoogle Scholar
  82. Nediak, M., & Eckstein, J. (2001). Pivot, cut, and dive: A heuristic for mixed 0-1 integer programming (Tech. Rep. RUTCOR Research Report RRR 53-2001). Rutgers University, Newark, New Jersey.Google Scholar
  83. Nemhauser, G. L., & Sigismondi, G. (1992). A strong cutting plane/branch-and-bound algorithm for node packing. Journal of the Operational Research Society, 43, 443–457.CrossRefGoogle Scholar
  84. Nemhauser, G. L., & Trotter, L. E., Jr. (1974). Properties of vertex packing and independence system polyhedra. Mathematical Programming, 6, 48–61.CrossRefGoogle Scholar
  85. Nemhauser, G., & Vance, P. (1994). Lifted cover facets of the 0-1 knapsack polytope with GUB constraints. Operations Research Letters, 16, 255–264.CrossRefGoogle Scholar
  86. Nemhauser, G., & Wolsey, L. A. (1988). Integer and combinatorial optimization. New York: Wiley.CrossRefGoogle Scholar
  87. Nemhauser, G., & Wolsey, L. (1990). A recursive procedure for generating all cuts for 0-1 mixed integer programs. Mathematical Programming, 46, 379–390.CrossRefGoogle Scholar
  88. Odlyzko, A. M. (1990). The rise and fall of knapsack cryptosystems. In C. Pomerance (Ed.), Cryptology and computational number theory (pp. 75–88). Ann Arbor: American Mathematical Society.Google Scholar
  89. Owen, J., & Mehrotra, S. (2001). Experimental results on using general disjunctions in branch-and-bound for general-integer linear programs. Computational Optimization and Applications, 20(2).Google Scholar
  90. Padberg, M. (1973). On the facial structure of set packing polyhedra. Mathematical Programming, 5, 199–215.CrossRefGoogle Scholar
  91. Padberg, M. (1974). Perfect zero-one matrices. Mathematical Programming, 6, 180–196.CrossRefGoogle Scholar
  92. Padberg, M. (1979a). Covering, packing and knapsack problems. Annals of Discrete Mathematics, 4, 265–287.CrossRefGoogle Scholar
  93. Padberg, M. W. (1979b). A note on 0-1 programming. Operations Research, 23, 833–837.CrossRefGoogle Scholar
  94. Padberg, M. W., & Rinaldi, G. (1991). A branch and cut algorithm for the solution of large scale traveling salesman problems. SIAM Review, 33, 60–100.CrossRefGoogle Scholar
  95. Papadimitriou, C., & Steiglitz, K. (1982). Combinatorial optimization: Algorithms and complexity. New Jersey: Prentice-Hall.Google Scholar
  96. Parker, R., & Rardin, R. (1988). Discrete optimization. San Diego: Academic.Google Scholar
  97. Parker, M., & Ryan, J. (1995). A column generation algorithm for bandwidth packing. Telecommunication Systems, 2, 185–196.CrossRefGoogle Scholar
  98. Pinedo, M. (2008). Scheduling: Theory, algorithms, and systems. Berlin: Springer.Google Scholar
  99. Pochet, Y., & Wolsey, L. (1991). Solving multi-item lot sizing problems using strong cutting planes. Management Science, 37, 53–67.CrossRefGoogle Scholar
  100. Ralphs, T., & Galati, M. (2005). Decomposition in integer programming. In J. Karlof (Ed.), Integer programming: Theory and practice (pp. 57–110). Boca Raton, FL: CRC Press.Google Scholar
  101. Rasmussen, R., & Trick, M. (2007). A benders approach to the constrained minimum break problem. European Journal of Operational Research, 177, 198–213.CrossRefGoogle Scholar
  102. Ravikumar, C. (1996). Parallel methods for VLSI layout design. Norwood, NJ: Ablex Publishing Corporation.Google Scholar
  103. Rendl, F. (2010). Semidefinite relaxations for integer programming. In M. Jünger, T. Liebling, D. Naddef, G. Nemhauser, W. Pulleyblank, G. Reinelt, G. Rinaldi, & L. Wolsey (Eds.), Fifty years of integer programming: 1958–2008 (pp. 687–726). Berlin: Springer.CrossRefGoogle Scholar
  104. Rothberg, E. (2007). An evolutionary algorithm for polishing mixed integer programming solutions. INFORMS Journal on Computing, 19, 534–541.CrossRefGoogle Scholar
  105. Roy, T. J. V., & Wolsey, L. A. (1987). Solving mixed integer 0-1 programs by automatic reformulation. Operations Research, 35, 45–57.CrossRefGoogle Scholar
  106. Savelsbergh, M. W. P. (1994). Preprocessing and probing techniques for mixed integer programming problems. ORSA Journal on Computing, 6, 445–454.CrossRefGoogle Scholar
  107. Savelsbergh, M. W. P. (1997). A branch and price algorithm for the generalized assignment problem. Operations Research, 45, 831–841.CrossRefGoogle Scholar
  108. Schrijver, A. (1986). Theory of linear and integer programming. Chichester: Wiley.Google Scholar
  109. Schrijver, A. (2003). Combinatorial optimization: Polyhedra and efficiency. Berlin: Springer.Google Scholar
  110. Shah, R. (1998). Optimization problems in SONET/WDM ring architecture. Master’s Essay, Rutgers University, Newark, NJ.Google Scholar
  111. Vance, P. H., Barnhart, C., Johnson, E. L., & Nemhauser, G. L. (1994). Solving binary cutting stock problems by column generation and branch and bound. Computational Optimization and Applications, 3, 111–130.CrossRefGoogle Scholar
  112. Vance, P., Barnhart, C., Johnson, E., & Nemhauser, G. (1997). Airline crew scheduling: A new formulation and decomposition algorithm. Operations Research, 45, 188–200.CrossRefGoogle Scholar
  113. Vanderbeck, F. (2000). On Dantzig-Wolfe decomposition in integer programming and ways to perform branching in a branch-and-price algorithm. Operations Research, 48, 111–128.CrossRefGoogle Scholar
  114. Vanderbeck, F., & Wolsey, L. (2010). Reformulation and decomposition of integer programs. In M. Jünger, T. Liebling, D. Naddef, G. Nemhauser, W. Pulleyblank, G. Reinelt, G. Rinaldi, & L. Wolsey (Eds.), Fifty years of integer programming: 1958–2008 (pp. 431–504). Berlin: Springer.CrossRefGoogle Scholar
  115. Weingartner, H. (1963). Mathematical programming and the analysis of capital budgeting problems. Englewood Cliffs, NJ: Prentice Hall.Google Scholar
  116. Weyl, H. (1935). Elementare theorie der konvexen polyheder. Commentarii Mathematici Helvetici, 7, 290–306.CrossRefGoogle Scholar
  117. Williams, H. (1985). Model building in mathematical programming (2nd ed.). New York: Wiley.Google Scholar
  118. Wolsey, L. A. (1975). Faces for a linear inequality in 0-1 variables. Mathematical Programming, 8, 165–178.CrossRefGoogle Scholar
  119. Wolsey, L. A. (1976). Facets and strong valid inequalities for integer programs. Operations Research, 24, 367–372.CrossRefGoogle Scholar
  120. Wolsey, L. A. (1990). Valid inequalities for mixed integer programs with generalized and variable upper bound constraints. Discrete Applied Mathematics, 25, 251–261.CrossRefGoogle Scholar
  121. Wolsey, L. A. (1998). Integer programming. New York: Wiley.Google Scholar
  122. Zhang, X. (2010). Neural networks in optimization. Berlin: Springer.Google Scholar

Copyright information

© Springer Science+Business Media New York 2013

Authors and Affiliations

  1. 1.Systems Engineering and Operations Research Department, School of Information Technology and EngineeringGeorge Mason UniversityFairfaxUSA
  2. 2.Department of Industrial and Systems EngineeringLehigh UniversityBethlehemUSA