An Implementation of a Combinatorial Approximation Algorithm for Minimum-Cost Multicommodity Flow

  • Andrew V. Goldberg
  • Jeffrey D. Oldham
  • Serge Plotkin
  • Cliff Stein
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1412)


The minimum-cost multicommodity flow problem involves si- multaneously shipping multiple commodities through a single network so that the total flow obeys arc capacity constraints and has minimum cost. Multicommodity flow problems can be expressed as linear programs, and most theoretical and practical algorithms use linear-programming algorithms specialized for the problems’ structures. Combinatorial ap- proximation algorithms in [GK96,KP95b,PST95] yield flows with costs slightly larger than the minimum cost and use capacities slightly larger than the given capacities. Theoretically, the running times of these algo- rithms are much less than that of linear-programming-based algorithms. We combine and modify the theoretical ideas in these approximation al- gorithms to yield a fast, practical implementation solving the minimum- cost multicommodity flow problem. Experimentally, the algorithm solved our problem instances (to 1% accuracy) two to three orders of magni- tude faster than the linear-programming package CPLEX [CPL95] and the linear-programming based multicommodity flow program PPRN [CN96].


Problem Instance Commodity Group Proximation Algorithm Multicommodity Flow Primal Simplex 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. AMO93.
    R. K. Ahuja, T. L. Magnanti, and J. B. Orlin. Network Flows: Theory, Algorithms, and Applications. Prentice Hall, Englewood Cliffs, NJ, 1993.Google Scholar
  2. ARVK89.
    I. Adler, M. G. C. Resende, G. Veiga, and N. Karmarkar. An implementation of Karmarkar’s algorithm for linear programming. Mathematical Programming A, 44(3):297–335, 1989.zbMATHCrossRefMathSciNetGoogle Scholar
  3. Ass78.
    A. A. Assad. Multicommodity network flows — A survey. Networks, 8(1):37–91, Spring 1978.zbMATHCrossRefMathSciNetGoogle Scholar
  4. Bad91.
  5. CN96.
    J. Castro and N. Nabona. An implementation of linear and nonlinear multicommodity network flows. European Journal of Operational Research, 92(1):37–53, 1996.zbMATHCrossRefGoogle Scholar
  6. CPL95.
    CPLEX Optimization, Inc., Incline Village, NV. Using the CPLEX Callable Library, 4.0 edition, 1995.Google Scholar
  7. Dan63.
    G. B. Dantzig. Linear Programming and Extensions. Princeton University Press, Princeton, NJ, 1963.zbMATHGoogle Scholar
  8. GK96.
    M. D. Grigoriadis and L. G. Khachiyan. Approximate minimum-cost multicommodity flows in Õ( −2 knm) time. Mathematical Programming, 75(3):477–482, 1996.CrossRefMathSciNetGoogle Scholar
  9. Gol92.
    A. V. Goldberg. A natural randomization strategy for multicommodity flow and related algorithms. Information Processing Letters, 42(5):249–256, 1992.zbMATHCrossRefMathSciNetGoogle Scholar
  10. GOPS97.
    A. Goldberg, J. D. Oldham, S. Plotkin, and C. Stein. An implementation of a combinatorial approximation algorithm for minimum-cost multicommodity flow. Technical Report CS-TR-97-1600, Stanford University, December 1997.Google Scholar
  11. Gri86.
    M. D. Grigoriadis. An efficient implementation of the network simplex method. Mathematical Programming Study, 26:83–111, 1986.zbMATHMathSciNetGoogle Scholar
  12. HL96.
    R. W. Hall and D. Lotspeich. Optimized lane assignment on an automated highway. Transportation Research—C, 4C(4):211–229, 1996.Google Scholar
  13. HO96.
    A. Haghani and S.-C. Oh. Formulation and solution of a multi-commodity, multi-modal network flow model for disaster relief operations. Transportation Research—A, 30A(3):231–250, 1996.Google Scholar
  14. Kar84.
    N. Karmarkar. A new polynomial-time algorithm for linear programming. Combinatorica, 4(4):373–395, 1984.zbMATHCrossRefMathSciNetGoogle Scholar
  15. KH80.
    J. L. Kennington and R. V. Helgason. Algorithms for Network Programming. John Wiley & Sons, New York, 1980.zbMATHGoogle Scholar
  16. Kha80.
    L. G. Khachiyan. Polynomial algorithms in linear programming. Zhurnal Vychislitel’noi Matematiki i Matematicheskoi Fiziki (Journal of Computational Mathematics and Mathematical Physics), 20(1):51–68, 1980.zbMATHMathSciNetGoogle Scholar
  17. KP95a.
    A. Kamath and O. Palmon. Improved interior point algorithms for exact and approximate solution of multicommodity flow problems. In Proceedings of the 6th Annual ACM-SIAM Symposium on Discrete Algorithms, Vol. 6, pages 502–511. Association for Computing Machinery, January 1995.MathSciNetGoogle Scholar
  18. KP95b.
    D. Karger and S. Plotkin. Adding multiple cost constraints to combinatorial optimization problems, with applications to multicommodity flows. In Symposium on the Theory of Computing, Vol. 27, pages 18–25. Association for Computing Machinery, ACM Press, May 1995.Google Scholar
  19. KPST94.
    P. Klein, S. Plotkin, C. Stein, and É. Tardos. Faster approximation algorithms for the unit capacity concurrent flow problem with applications to routing and finding sparse cuts. SIAM Journal on Computing, 23(3):466–487, 1994.zbMATHCrossRefMathSciNetGoogle Scholar
  20. KV86.
    S. Kapoor and P. M. Vaidya. Fast algorithms for convex quadratic programming and multicommodity flows. In Proceedings of the 18th Annual ACM Symposium on Theory of Computing, Vol. 18, pages 147–159. Association for Computing Machinery, 1986.Google Scholar
  21. LMP+95._T. Leighton, F. Makedon, S. Plotkin, C. Stein, É. Tardos, and S. Tragoudas. Fast approximation algorithms for multicommodity flow problems. Journal of Computer and System Sciences, 50(2):228–243, 1995.zbMATHCrossRefMathSciNetGoogle Scholar
  22. LO91.
  23. LSS93.
    T. Leong, P. Shor, and C. Stein. Implementation of a combinatorial multicommodity flow algorithm. In David S. Johnson and Catherine C. Mc-Geoch, editors, Network Flows and Matching, Series in Discrete Mathematics and Theoretical Computer Science, Vol. 12, pages 387–405. American Mathematical Society, 1993.Google Scholar
  24. PFTV88.
    W. H. Press, B. P. Flannery, S. A. Teukolsky, and W. T. Vetterling. Numerical Recipes in C. Cambridge University Press, Cambridge, 1988.zbMATHGoogle Scholar
  25. PST95.
    S. A. Plotkin, D. B. Shmoys, and É. Tardos. Fast approximation algorithms for fractional packing and covering problems. Mathematics of Operations Research, 20(2):257–301, 1995.zbMATHMathSciNetCrossRefGoogle Scholar
  26. Rad97.
    T. Radzik. Fast deterministic approximation for the multicommodity flow problem. Mathematical Programming, 78(1):43–58, 1997.CrossRefMathSciNetGoogle Scholar
  27. Rap90.
    J. Raphson. Analysis Æquationum Universalis, seu, Ad Æquationes Algebraicas Resolvendas Methodus Generalis, et Expedita. Prostant venales apud Abelem Swalle, London, 1690.Google Scholar
  28. Sch91.
    R. Schneur. Scaling Algorithms for Multicommodity Flow Problems and Network Flow Problems with Side Constraints. PhD thesis, MIT, Cambridge, MA, February 1991.Google Scholar
  29. Vai89.
    P. M. Vaidya. Speeding up linear programming using fast matrix multiplication. In Proceedings of the 30th Annual Symposium on Foundations of Computer Science, Vol. 30, pages 332–337. IEEE Computer Society Press, 1989.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Authors and Affiliations

  • Andrew V. Goldberg
    • 1
  • Jeffrey D. Oldham
    • 2
  • Serge Plotkin
    • 2
  • Cliff Stein
    • 3
  1. 1.NEC Research Institute, Inc.PrincetonUSA
  2. 2.Department of Computer ScienceStanford UniversityStanfordUSA
  3. 3.Department of Computer ScienceDartmouth CollegeHanoverUSA

Personalised recommendations