Skip to main content
Log in

Feasibility pump 2.0

  • Full Length Paper
  • Published:
Mathematical Programming Computation Aims and scope Submit manuscript

Abstract

Finding a feasible solution of a given mixed-integer programming (MIP) model is a very important \({\mathcal{NP}}\) -complete problem that can be extremely hard in practice. Feasibility Pump (FP) is a heuristic scheme for finding a feasible solution to general MIPs that can be viewed as a clever way to round a sequence of fractional solutions of the LP relaxation, until a feasible one is eventually found. In this paper we study the effect of replacing the original rounding function (which is fast and simple, but somehow blind) with more clever rounding heuristics. In particular, we investigate the use of a diving-like procedure based on rounding and constraint propagation—a basic tool in Constraint Programming. Extensive computational results on binary and general integer MIPs from the literature show that the new approach produces a substantial improvement of the FP success rate, without slowing-down the method and with a significantly better quality of the feasible solutions found.

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

  1. Achterberg, T.: Constraint integer programming. PhD thesis, Technische Universität Berlin, (2007)

  2. Achterberg T., Berthold T.: Improving the feasibility pump. Discrete Optim. 4, 77–86 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  3. Achterberg, T., Koch, T., Martin, A.: MIPLIB 2003. Oper. Res. Lett., 34:361–372. Problems available at http://miplib.zib.de (2006)

  4. Balas E., Ceria S., Dawande M., Margot F., Pataki G.: OCTANE: A new heuristic for pure 0–1 programs. Oper. Res. 49, 207–225 (2001)

    Article  MATH  MathSciNet  Google Scholar 

  5. Balas E., Martin C.: Pivot-and-complement: A heuristic for 0-1 programming. Manage. Sci. 26, 86–96 (1980)

    Article  MATH  MathSciNet  Google Scholar 

  6. Balas E., Schmieta S., Wallace C.: Pivot and shift—a mixed integer programming heuristic. Discrete Optim. 1, 3–12 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  7. Bertacco, L.: Feasibility pump. Source code available at http://www.or.deis.unibo.it/research_pages/ORcodes/FP-gen.html

  8. Bertacco L., Fischetti M., Lodi A.: A feasibility pump heuristic for general mixed-integer problems. Discrete Optim. 4, 63–76 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  9. Danna E., Rothberg E., Pape C.L.: Exploring relaxation induced neighborhoods to improve MIP solutions. Math. Program. 102, 71–90 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  10. Eckstein J., Nediak M.: Pivot, cut, and dive: a heuristic for 0–1 mixed integer programming. J. Heuristics 13, 471–503 (2007)

    Article  Google Scholar 

  11. Fischetti M., Glover F., Lodi A.: The feasibility pump. Math. Program. 104, 91–104 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  12. Fischetti M., Lodi A.: Local branching. Math. Program. 98(1–3), 23–47 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  13. Fischetti M., Polo C., Scantamburlo M.: A local branching heuristic for mixed-integer programs with 2-level variables, with an application to a telecommunication network design problem. Networks 44, 61–72 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  14. Gecode Team: Gecode: Generic constraint development environment, 2008. Available at http://www.gecode.org (2008)

  15. Glover F., Laguna M.: General purpose heuristics for integer programming—part I. J. Heuristics 2, 343–358 (1997)

    Article  MATH  Google Scholar 

  16. Glover F., Laguna M.: General purpose heuristics for integer programming—part II. J. Heuristics 3, 161–179 (1997)

    Article  MATH  Google Scholar 

  17. Glover F., Laguna M.: Tabu Search. Kluwer, Dordrecht (1997)

    MATH  Google Scholar 

  18. Gondzio J.: Presolve analysis of linear programs prior to applying an interior point method. INFORMS J. Comput. 9, 73–91 (1997)

    Article  MATH  MathSciNet  Google Scholar 

  19. Hansen P., Mladenović N., Urosevic D.: Variable neighborhood search and local branching. Comput. Oper. Res. 33, 3034–3045 (2006)

    Article  MATH  Google Scholar 

  20. Hillier F.: Efficient heuristic procedures for integer linear programming with an interior. Oper. Res. 17, 600–637 (1969)

    Article  MATH  MathSciNet  Google Scholar 

  21. Hooker J.N.: Integrated Methods for Optimization. Springer, New York (2006)

    Google Scholar 

  22. Ibaraki T., Ohashi T., Mine F.: A heuristic algorithm for mixed-integer programming problems. Math. Program. Study 2, 115–136 (1974)

    Google Scholar 

  23. ILOG. CPLEX 11.0 User’s manual (2008)

  24. Lagerkvist M.Z., Schulte C.: Advisors for incremental propagation. In: Bessière C. (ed.) Thirteenth international conference on principles and practice of constraint programming. Lecture notes in computer science, vol. 4741, pp. 409–422. Springer-Verlag, New York (2007)

  25. Løkketangen A.: Heuristics for 0–1 mixed-integer programming. In: Pardalos, P., Garey, M.R. (eds) Handbook of Applied Optimization, pp. 474–477. Oxford University Press, Oxford (2002)

    Google Scholar 

  26. Løkketangen A., Glover F.: Solving zero/one mixed integer programming problems using tabu search. Eur. J. Oper. Res. 106, 624–658 (1998)

    Article  Google Scholar 

  27. Maros I.: Computational Techniques of the Simplex Method. Kluwer, Dordrecht (2002)

    Google Scholar 

  28. Mittelmann, H.D.: Benchmarks for optimization software: Testcases. Problems available at http://plato.asu.edu/sub/testcases.html

  29. Rossi, F., van Beek, P., Walsh, T. (eds.): Computational Techniques of the Simplex Method. Elsevier, Amsterdam (2006)

    Google Scholar 

  30. Savelsbergh M.W.P.: Preprocessing and probing for mixed integer programming problems. ORSA J. Comput. 6, 445–454 (1994)

    MATH  MathSciNet  Google Scholar 

  31. Schulte, C.: Programming constraint services. PhD thesis, Universität des Saarlandes, Naturwissenschaftlich-Technische Fakultät I, Fachrichtung Informatik, Saarbrücken, Germany (2000)

  32. Schulte, C., Stuckey, P.J.: Speeding up constraint propagation. In Wallace M. (ed.) Principles and practice of constraint programming-CP 2004, 10th international conference. Lecture notes in computer science, vol. 3258, pp. 619–633. Springer (2004)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Matteo Fischetti.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Fischetti, M., Salvagnin, D. Feasibility pump 2.0. Math. Prog. Comp. 1, 201–222 (2009). https://doi.org/10.1007/s12532-009-0007-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12532-009-0007-3

Keywords

Mathematics Subject Classification (2000)

Navigation