The Mosek Interior Point Optimizer for Linear Programming: An Implementation of the Homogeneous Algorithm

  • Erling D. Andersen
  • Knud D. Andersen
Part of the Applied Optimization book series (APOP, volume 33)


The purpose of this work is to present the MOSEK optimizer intended for solution of large-scale sparse linear programs. The optimizer is based on the homogeneous interior-point algorithm which in contrast to the primal-dual algorithm detects a possible primal or dual infeasibility reliably. It employs advanced (parallelized) linear algebra, it handles dense columns in the constraint matrix efficiently, and it has a basis identification procedure.

This paper discusses in details the algorithm and linear algebra em­ployed by the MOSEK interior point optimizer. In particular the ho­mogeneous algorithm is emphasized. Furthermore, extensive computa­tional results are reported. These results include comparative results for the XPRESS simplex and the MOSEK interior point optimizer. Fi­nally, computational results are presented to demonstrate the possible speed-up, when using a parallelized version of the MOSEK interior point optimizer on a multiprocessor Silicon Graphics computer.


Interior Point Dense Column Interior Point Method Cholesky Decomposition Complementary Solution 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    I. Adler, N. Karmarkar, M. G. C. Resende, and G. Veiga. Data structures and programming techniques for the implementation of Karmarkar’s algorithm. ORSA J. on Comput. , 1(2):84–106, 1989.MATHCrossRefGoogle Scholar
  2. [2]
    P. R. Amestoy, T. A. Davis, and I. S. Duff. An approximate minimum degree ordering algorithm. SIAM J. Mat. Anal. Appl., 17(4):886–905, October 1996.MathSciNetMATHCrossRefGoogle Scholar
  3. [3]
    E. D. Andersen. Finding all linearly dependent rows in large-scale linear programming. Optimization Methods and Software, 6:219–227, 1995.CrossRefGoogle Scholar
  4. [4]
    E. D. Andersen. On exploiting problem structure in the basis identification procedure for linear programming. Technical Report 6, Department of Management, Odense University, Denmark, July 1996.Google Scholar
  5. [5]
    E. D. Andersen and K. D. Andersen. Presolving in linear programming. Math. Programming, 71(2):221–245, 1995.MathSciNetMATHCrossRefGoogle Scholar
  6. [6]
    E. D. Andersen and K. D. Andersen. A parallel interior-point based linear programming solver for shared-memory multiprocessor computers: A case study based on the XPRESS LP solver. Technical report, CORE, UCL, Belgium, 1997.Google Scholar
  7. [7]
    E. D. Andersen, J. Gondzio, C. Mészáros, and X. Xu. Implementation of interior point methods for large scale linear programming. In T. Terlaky, editor, Interior-point methods of mathematical programming, pages 189–252. Kluwer Academic Publishers, 1996.Google Scholar
  8. [8]
    E. D. Andersen and Y. Ye. Combining interior-point and pivoting algorithms. Management Sci., 42(12):1719–1731, December 1996.MATHCrossRefGoogle Scholar
  9. [9]
    K. D. Andersen. A Modified Schur Complement Method for Handling Dense Columns in Interior-Point Methods for Linear Programming. ACM Trans. Math. Software, 22(3):348–356, 1996.MathSciNetMATHCrossRefGoogle Scholar
  10. [10]
    C. C. Ashcraft and R. G. Grimes. The influence of relaxed supernode partitions on the multifrontal method. ACM Trans. Math. Software, 4(15):291–309, 1989.CrossRefGoogle Scholar
  11. [11]
    C. C. Ashcraft, R. G. Grimes, J. G. Lewis, B. W. Peyton, and H. D. Simon. Progress in sparse matrix methods for large scale linear systems on vector supercomputers. The Internat. J. of Supercomputer Appl., 1(4): 10–30, 1987.CrossRefGoogle Scholar
  12. [12]
    J. R. Birge and D. F. Holmes. Efficient solution of two-stage stochastic linear programs using interior point methods. Computational Optimization and Applications, 1:245–276, 1992.MathSciNetMATHCrossRefGoogle Scholar
  13. [13]
    R. E. Bixby. Progress in linear programming. ORSA J. on Comput., 6(1):15–22, 1994.MathSciNetMATHCrossRefGoogle Scholar
  14. [14]
    J. W. Chinneck. Computer codes for the analysis of infeasible linear programs. J. Oper. Res. Soc., 67:61–72, 1996.Google Scholar
  15. [15]
    I. S. Duff, A. M. Erisman, and J. K. Reid. Direct methods for sparse matrices. Oxford University Press, New York, 1989.MATHGoogle Scholar
  16. [16]
    J. J. H. Forrest and J. A. Tomlin. Vector processing in simplex and interior methods for linear programming. Annals of Operations Research, 22:71–100, 1990.MathSciNetMATHCrossRefGoogle Scholar
  17. [17]
    A. George and J. W. -H. Liu. Computing Solution of Large Sparse Positive Definite Systems. Prentice-Hall, Inc., Englewood Cliffs, NJ, 1981.Google Scholar
  18. [18]
    A. George and J. W. -H. Liu. The evolution of the minimum degree ordering algorithm. SIAM Rev., 31:1–19, 1989.MathSciNetMATHCrossRefGoogle Scholar
  19. [19]
    G.H. Golub and C.F. Van Loan. Matrix Computations. The John Hopkins University Press, Baltimore and London, 2 edition, 1989.MATHGoogle Scholar
  20. [20]
    J. Gondzio. Multiple centrality corrections in a primal-dual method for linear programming. Computational Optimization and Applications, 6:137–156, 1996.MathSciNetMATHCrossRefGoogle Scholar
  21. [21]
    J. Gondzio and T. Terlaky. A computational view of interior point methods for linear programming. In J. Beasley, editor, Advances in linear and integer programming. Oxford University Press, Oxford, England, 1995.Google Scholar
  22. [22]
    H. J. Greenberg. The use of the optimal partition in a linear programming solution for postoptimal analysis. Oper. Res. Lett., 15(4):179–186, 1994.MathSciNetMATHCrossRefGoogle Scholar
  23. [23]
    O. Güler and Y. Ye. Convergence behaviour of interior-point algorithms. Math. Programming, 60(2):215–228, 1993.MathSciNetMATHCrossRefGoogle Scholar
  24. [24]
    A. Gupta. Graph partitioning based sparse matrix orderings for interior-point algorithms. Technical Report RC20467(90480), IBM Research Division, T.J. Watson Research Center, P. O. Box 218, Yorktown Heights, New York 10598, May 1996.Google Scholar
  25. [25]
    B. Hendrickson and E. Rothberg. Sparse matrix ordering methods for interior point linear programming. Technical report, Silicon Graphics, Inc., January 1996.Google Scholar
  26. [26]
    H. -W. Jung, R. E. Marsten, and M. J. Saltzman. Numerical factorization methods for interior point algorithms. ORSA J. on Comput., 6(1):94–105, 1994.MATHCrossRefGoogle Scholar
  27. [27]
    N. Karmarkar. A polynomial-time algorithm for linear programming. Combinatorica, 4:373–395, 1984.MathSciNetMATHCrossRefGoogle Scholar
  28. [28]
    G. Karypis, A. Gupta, and V. Kumar. A parallel formulation of interior point algorithms. Technical Report 94–20, Department of computer science, University of Minnesota, 1994.Google Scholar
  29. [29]
    M. Kojima, N. Megiddo, and S. Mizuno. A primal-dual infeasible-interior-point algorithm for linear programming. Math. Programming, 61:263–280, 1993.MathSciNetMATHCrossRefGoogle Scholar
  30. [30]
    M. Kojima, S. Mizuno, and A. Yoshise. A primal-dual interior point algorithm for linear proramming. In N. Megiddo, editor, Progress in Mathematical Programming: Interior-Point Algorithms and Related Methods, pages 29–47. Springer Verlag, Berlin, 1989.Google Scholar
  31. [31]
    J. W.-H. Liu. A note on sparse factorization in a paging environment. SIAM J. Sci. Statist. Comput., 8(6): 1085–1088, 1987.MathSciNetMATHCrossRefGoogle Scholar
  32. [32]
    I. J. Lustig. Feasibility issues in primal-dual interior-point methods for linear programming. Math. Programming, 49:145–162, 1990.MathSciNetMATHCrossRefGoogle Scholar
  33. [33]
    I. J. Lustig, R. E. Marsten, and D. F. Shanno. The interaction of algorithms and architectures for interior point methods. In P. M. Pardalos, editor, Advances in optimization and parallel computing, pages 190–205. Elsevier Sciences Publishers B.V., 1992.Google Scholar
  34. [34]
    I. J. Lustig, R. E. Marsten, and D. F. Shanno. Interior point methods for linear programming: Computational state of the art. ORSA J. on Comput, 6(1):1–15, 1994.MathSciNetMATHCrossRefGoogle Scholar
  35. [35]
    I. J. Lustig and E. Rothberg. Gigaflops in linear programming. Oper. Res. Lett., 18(4):157–165, 1996.MathSciNetMATHCrossRefGoogle Scholar
  36. [36]
    S. Mehrotra. On the implementation of a primal-dual interior point method. SIAM J. on Optim., 2(4):575–601, 1992.MathSciNetMATHCrossRefGoogle Scholar
  37. [37]
    E. Rothberg. Ordering sparse matrices using approximate minimum local fill. Technical report, Silicon Graphics, Inc. Mountain View, CA 94043, April 1996.Google Scholar
  38. [38]
    E. Rothberg and A. Gupta. Efficient Sparse Matrix Factorization on High-Performance Workstations-Exploiting the Memory Hierarchy. ACM Trans. Math. Software, 17(3):313–334, 1991.MATHCrossRefGoogle Scholar
  39. [39]
    S. Wright. Modified Cholesky factorizations in interior-point algorithms for linear programming. Technical Report ANL/MCS-P600–0596, Mathematics and Computer Science division, Argonne National Laboratory, Argonne, IL 60439, USA, 1996.Google Scholar
  40. [40]
    S. J. Wright. Primal-dual interior-point methods. SIAM, Philadelphia, 1997.MATHCrossRefGoogle Scholar
  41. [41]
    X. Xu, P. -F. Hung, and Y. Ye. A simplified homogeneous and self-dual linear programming algorithm and its implementation. Annals of Operations Research, 62:151–171, 1996.MathSciNetMATHCrossRefGoogle Scholar
  42. [42]
    Y. Ye. Interior point algorithms: theory and analysis. John Wiley and Sons, New York, 1997.MATHCrossRefGoogle Scholar
  43. [43]
    Y. Ye, M. J. Todd, and S. Mizuno. An O \( O\left( {\sqrt n L} \right) \) — iteration homogeneous and self-dual linear programming algorithm. Math. Oper. Res., 19:53–67, 1994.MathSciNetMATHCrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2000

Authors and Affiliations

  • Erling D. Andersen
  • Knud D. Andersen

There are no affiliations available

Personalised recommendations