Abstract
The implementation of a linear programming interior point solver is described that is based on iterative linear algebra. The linear systems are preconditioned by a basis matrix, which is updated from one interior point iteration to the next to bound the entries in a certain tableau matrix. The update scheme is based on simplex-type pivot operations and is implemented using linear algebra techniques from the revised simplex method. An initial basis is constructed by a crash procedure after a few interior point iterations. The basis at the end of the interior point solve provides the starting basis for a crossover method which recovers a basic solution to the linear program. Results of a computational study on a diverse set of medium to large-scale problems are discussed.
Similar content being viewed by others
Notes
For a matrix A the expression \(|A|\) is meant componentwise.
References
Al-Jeiroudi, G., Gondzio, J., Hall, J.A.J.: Preconditioning indefinite systems in interior point methods for large scale linear optimisation. Optim. Methods Softw. 23(3), 345–363 (2008)
Alabi, A., Castro, J.: Dantzig–Wolfe and block coordinate-descent decomposition in large-scale integrated refinery-planning. Comput. Oper. Res. 36(8), 2472–2483 (2009)
Arioli, M., Duff, I.S.: Preconditioning linear least-squares problems by identifying a basis matrix. SIAM J. Sci. Comput. 37(5), S544–S561 (2015)
Bixby, R.E., Fenelon, M., Gu, Z., Rothberg, E., Wunderling, R.: MIP: Theory and practice—closing the gap. In: System Modelling and Optimization: Methods, Theory and Applications, pp. 19–50. Kluwer Academic Publishers (1999)
Bixby, R.E., Saltzman, M.J.: Recovering an optimal LP basis from an interior point solution. Oper. Res. Lett. 15(4), 169–178 (1994)
Duff, I.S.: On algorithms for obtaining a maximum transversal. ACM Trans. Math. Softw. 7(3), 315–330 (1981)
Fong, D.C.L., Saunders, M.A.: CG versus MINRES: an empirical comparison. SQU J. Sci. 17(1), 44–62 (2012)
Gondzio, J.: Multiple centrality corrections in a primal-dual method for linear programming. Comput. Optim. Appl. 6(2), 137–156 (1996)
Goreinov, S.A., Oseledets, I.V., Savostyanov, D.V., Tyrtyshnikov, E.E., Zamarashkin, N.L.: How to find a good submatrix. In: Matrix Methods: Theory. Algorithms and Applications, pp. 247–256. World Sci. Publ, Hackensack, NJ (2010)
Gurobi Optimization. http://www.gurobi.com. Accessed 24 Jan 2017
Hall, J.A.J., McKinnon, K.I.M.: Hyper-sparsity in the revised simplex method and how to exploit it. Comput. Optim. Appl. 32(3), 259–283 (2005)
Harris, P.M.J.: Pivot selection methods of the Devex LP code. Math. Program. 5, 1–28 (1973)
Hestenes, M.R., Stiefel, E.: Methods of conjugate gradients for solving inear systems. J. Res. Natl. Bureau Stand. 49(6), 409–436 (1952)
Higham, N.J., Relton, S.D.: Estimating the largest elements of a matrix. SIAM J. Sci. Comput. 38(5), C584–C601 (2016)
Knuth, D.E.: Semioptimal bases for linear dependencies. Linear Multilinear Algebra 17(1), 1–4 (1985)
Megiddo, N.: On finding primal- and dual-optimal bases. ORSA J. Comput. 3(1), 63–65 (1991)
Mehrotra, S.: On the implementation of a primal-dual interior point method. SIAM J. Optim. 2(4), 575–601 (1992)
Nugent, C.E., Vollman, T.E., Ruml, J.: An experimental comparison of techniques for the assignment of facilities to locations. Oper. Res. 16, 150–173 (1968)
Oliveira, A.R.L., Sorensen, D.C.: A new class of preconditioners for large-scale linear systems from interior point methods for linear programming. Linear Algebra Appl. 394, 1–24 (2005)
Paige, C.C., Saunders, M.A.: Solution of sparse indefinite systems of linear equations. SIAM J. Numer. Anal. 12(4), 617–629 (1975)
Pan, C.T.: On the existence and computation of rank-revealing \(LU\) factorizations. Linear Algebra Appl. 316, 199–222 (2000)
Resende, M.G.C., Ramakrishnan, K.G., Drezner, Z.: Computing lower bounds for the quadratic assignment problem with an interior point algorithm for linear programming. Oper. Res. 43(5), 781–791 (1995)
Saad, Y.: Iterative Methods for Sparse Linear Systems, 2nd edn. Society for Industrial and Applied Mathematics, Philadelphia (2003)
Schork, L.: Basis Preconditioning in Interior Point Methods. Ph.D. thesis, University of Edinburgh (2018)
Schork, L., Gondzio, J.: Maintaining a basis matrix in the linear programming interior point method. Tech. Rep. ERGO-17-009, University of Edinburgh (2017)
Schork, L., Gondzio, J.: Permuting spiked matrices to triangular form and its application to the Forrest-Tomlin update. Tech. Rep. ERGO-17-002, University of Edinburgh (2017)
Wright, S.J.: Primal-Dual Interior-Point Methods. Society for Industrial and Applied Mathematics (SIAM), Philadelphia (1997)
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Supported by Google Research Award “Fast interior point method for linear programming problems”.
Appendix A: Test set and solution times
Appendix A: Test set and solution times
The LP models have been obtained from the following sources:
-
(1)
J. Castro: http://www-eio.upc.es/~jcastro/
-
(a)
huge CTA instances
-
(b)
integrated refinery problems
-
(c)
L1.zip
-
(d)
Linf.zip
-
(a)
-
(2)
J. A. J. Hall: http://www.maths.ed.ac.uk/hall/PublicLP/
-
(3)
Kennington collection: http://www.netlib.org/lp/data/kennington/index.html
-
(4)
C. Mészáros: http://old.sztaki.hu/~meszaros/public_ftp/lptestset/
-
(a)
misc
-
(b)
New
-
(c)
problematic
-
(d)
stochlp
-
(a)
-
(5)
MIPLIB 2010: http://miplib.zib.de/download/miplib2010-complete.tgz
-
(6)
H. Mittelmann: http://plato.asu.edu/ftp/lptestset/
-
(a)
fome
-
(b)
misc
-
(c)
nug
-
(d)
pds
-
(e)
rail
-
(a)
-
(7)
Netlib collection: http://www.netlib.org/lp/data/index.html
For mixed-integer problems, the canonical LP relaxation was used.
In the following table, the columns headed “\({\bar{m}}\)”, “\({\bar{n}}\)” and “\({{\,\mathrm{nnz}\,}}\)” provide the number of rows, columns and nonzero entries of the constraint matrix \({\bar{A}}\) in the problem formulation (2a), after the LP model was preprocessed by the Gurobi LP presolve. The column block headed “IPX” provides the runtime of the IPX interior point solver (“IPM”), of the IPX crossover push phases (“push”) and of the clean-up using the Gurobi simplex (“simplex”); the latter field is empty if no clean-up was needed. The column headed “total” gives the sum of the three runtimes. The column block headed “Gurobi” provides the runtimes of the Gurobi interior point solver (“IPM”) and crossover (“crossover”) as well as their sum (“total”). The presolve time has been excluded from these figures. Computation times are in seconds and were obtained on an Intel i5-6500 CPU (4 cores, 3.2 GHz, 6 MB L3 cache) and 8 GB of physical memory. Logfiles from IPX and Gurobi, from which the runtimes were extracted, are available at https://github.com/ERGO-Code/ipx/tree/master/benchmark.
src | Name | \({\bar{m}}\) | \({\bar{n}}\) | \({{\,\mathrm{nnz}\,}}\) | IPX | Gurobi | |||||
---|---|---|---|---|---|---|---|---|---|---|---|
Total | IPM | Push | Cleanup | Total | IPM | Crossover | |||||
1a | L1_sixm250obs | 154,168 | 308,284 | 639,901 | 180.1 | 176.5 | 3.6 | 43.5 | 42.1 | 1.4 | |
1a | L1_sixm500obs | 283,055 | 565,680 | 1,196,860 | 553.8 | 506.0 | 47.8 | 471.8 | 468.7 | 3.1 | |
1b | srd120 | 186,440 | 357,070 | 9,804,510 | 329.5 | 327.4 | 2.1 | 496.5 | 484.9 | 11.6 | |
1b | srd240 | 372,920 | 714,190 | 36,457,110 | 1883.3 | 1877.2 | 6.1 | 3615.5 | 3577.2 | 38.3 | |
1c | L1_bts4 | 25,611 | 69,900 | 181,413 | 5.7 | 5.6 | 0.1 | 1.4 | 1.3 | 0.2 | |
1c | L1_five20b | 28,342 | 62,986 | 187,981 | 47.4 | 47.2 | 0.1 | 6.5 | 3.7 | 2.8 | |
1d | Linf_bts4 | 61,465 | 70,128 | 287,954 | 11.1 | 10.8r | 0.3 | 0.1 | 49.3 | 48.7 | 0.6 |
1d | Linf_five20b | 60,911 | 63,458 | 285,418 | 243.5 | 64.6r | 16.3 | 162.6 | 25.1 | 10.8 | 14.3 |
2 | dcp2 | 13,927 | 25,376 | 281,550 | 5.7 | 5.7r | 0.0 | 0.7 | 0.6 | 0.2 | |
3 | cre-b | 5213 | 31,720 | 107,039 | 2.3 | 2.3 | 0.0 | 0.4 | 0.4 | 0.0 | |
3 | ken-18 | 39,855 | 89,346 | 204,936 | 5.5 | 5.5 | 0.1 | 1.3 | 1.1 | 0.2 | |
3 | osa-60 | 10,209 | 224,125 | 584,253 | 5.7 | 5.6 | 0.1 | 1.1 | 1.0 | 0.1 | |
4a | bas1lp | 5409 | 4443 | 582,390 | 4.0 | 3.8 | 0.2 | 1.2 | 1.0 | 0.1 | |
4a | baxter | 18,867 | 10,742 | 78,412 | 2.5 | 2.4 | 0.1 | 1.9 | 1.9 | 0.1 | |
4a | co9 | 6784 | 10,675 | 81,809 | 2.1 | 2.1 | 0.0 | 0.4 | 0.4 | 0.1 | |
4a | dbic1 | 33,598 | 140,205 | 781,668 | 58.4 | 46.7 | 11.7 | 12.0 | 2.8 | 9.2 | |
4a | dbir1 | 7150 | 24,862 | 994,828 | 17.3 | 16.3 | 1.0 | 1.6 | 1.4 | 0.2 | |
4a | e18 | 24,598 | 14,211 | 131,991 | 12.6 | 12.3 | 0.2 | 63.2 | 63.1 | 0.2 | |
4a | ex3sta1 | 12,602 | 12,675 | 54,377 | 3.5 | 3.4 | 0.0 | 0.4 | 0.2 | 0.2 | |
4a | jendrec1 | 2109 | 3535 | 88,915 | 0.9 | 0.9 | 0.0 | 1.1 | 0.7r | 0.4 | |
4a | lpl1 | 32,427 | 82,733 | 252,587 | 21.9 | 21.4 | 0.5 | 4.1 | 1.8 | 2.3 | |
4a | mod2 | 23,706 | 24,005 | 114,068 | 6.1 | 6.1 | 0.0 | 1.5 | 1.2 | 0.2 | |
4a | model10 | 2961 | 10,373 | 94,372 | 1.6 | 1.5 | 0.0 | 0.0 | 0.3 | 0.2 | 0.1 |
4a | nemsemm1 | 2829 | 36,052 | 495,916 | 5.8 | 5.8 | 0.0 | 0.6 | 0.6 | 0.1 | |
4a | nl | 5290 | 7997 | 36,524 | 1.0 | 1.0 | 0.0 | 0.4 | 0.4 | 0.0 | |
4a | nsct1 | 7696 | 11,297 | 589,578 | 7.7 | 7.5 | 0.2 | 3.5 | 3.4 | 0.1 | |
4a | p010 | 8907 | 17,770 | 60,150 | 4.3 | 4.2 | 0.0 | 0.1 | 0.1 | 0.0 | |
4a | rat7a | 2152 | 6772 | 156,249 | 2.0 | 2.0 | 0.0 | 0.5 | 0.3 | 0.2 | |
4a | route | 20,779 | 23,923 | 184,576 | 2.4 | 2.3 | 0.1 | 0.4 | 0.4 | 0.0 | |
4a | stat96v1 | 4624 | 187,892 | 562,110 | 21.7 | 21.2r | 0.4 | 0.1 | 20.8 | 4.9r | 15.8 |
4a | stat96v3 | 26,274 | 1,090,091 | 3,250,147 | 1423.9 | 470.1r | 14.0 | 939.9 | 8063.5 | 5.2r | 8058.3 |
4a | ulevimin | 4594 | 41,225 | 135,479 | 3.9 | 3.9 | 0.0 | 0.6 | 0.5 | 0.1 | |
4a | world | 23,640 | 25,839 | 114,431 | 6.7 | 6.7 | 0.0 | 1.7 | 1.3 | 0.4 | |
4b | degme | 185,501 | 659,415 | 8,127,528 | 2496.8 | 2495.9 | 0.9 | 166.4 | 79.8 | 86.6 | |
4b | karted | 46,501 | 133,114 | 1,770,336 | 499.6 | 499.4 | 0.2 | 144.9 | 27.2 | 117.7 | |
4b | tp-6 | 142,752 | 1,014,301 | 11,537,419 | 2820.9 | 2820.0 | 0.8 | 66.0 | 42.0 | 24.0 | |
4b | ts-palko | 22,002 | 47,235 | 1,076,903 | 314.7 | 314.5 | 0.2 | 79.2 | 8.6 | 70.6 | |
4c | gen4 | 1475 | 4173 | 104,236 | 12.3 | 11.8r | 0.5 | 1.8 | 0.5 | 1.3 | |
4c | l30 | 2698 | 15,360 | 51,093 | 1.8 | 1.6 | 0.1 | 0.1 | 4.0 | 0.8 | 3.2 |
4d | fxm3_16 | 32,946 | 57,391 | 315,606 | 7.2 | 7.2 | 0.1 | 1.0 | 0.8 | 0.2 | |
4d | pltexpa4_6 | 13,693 | 24,221 | 70,946 | 3.0 | 3.0 | 0.1 | 1.3 | 1.2 | 0.1 | |
4d | scfxm1-2r-256 | 25,922 | 45,663 | 158,006 | 8.1 | 8.1 | 0.1 | 1.6 | 1.0 | 0.5 | |
4d | stormg2-125 | 47,536 | 129,869 | 358,498 | 28.3 | 28.1 | 0.2 | 2.8 | 2.5 | 0.4 | |
4d | stormg2_1000 | 380,036 | 1,038,119 | 2,865,373 | f | 29.3 | 24.1 | 5.2 | |||
5 | 30_70_45_095_100 | 12,515 | 10,967 | 46,614 | 2.4 | 1.0 | 1.5 | 1.2 | 0.3 | 0.9 | |
5 | app1-2 | 52,261 | 26,265 | 194,705 | 4.5 | 4.4 | 0.1 | 1.0 | 0.9 | 0.2 | |
5 | atlanta-ip | 19,835 | 17,484 | 182,879 | 10.2 | 10.0 | 0.2 | 4.8 | 4.5 | 0.3 | |
5 | bab3 | 22,478 | 393,457 | 3,097,799 | 120.1 | 119.8 | 0.3 | 6.2 | 5.9 | 0.3 | |
5 | bley_xl1 | 175,178 | 5724 | 867,393 | 10.4 | 7.8 | 2.6 | 13.5 | 13.2 | 0.3 | |
5 | buildingenergy | 225,031 | 128,695 | 683,844 | 262.5 | 260.5 | 2.0 | 6.1 | 5.7 | 0.5 | |
5 | circ10-3 | 42,620 | 2700 | 307,320 | 1.2 | 1.0 | 0.3 | 0.6 | 0.4 | 0.2 | |
5 | core4872-1529 | 4607 | 24,098 | 184,762 | 4.2 | 4.1 | 0.1 | 1.6 | 1.3 | 0.3 | |
5 | dano3mip | 3150 | 13,837 | 79,530 | 1.7 | 1.7 | 0.0 | 1.1 | 0.9 | 0.2 | |
5 | datt256 | 9863 | 196,147 | 1,124,622 | 1218.3 | 158.1 | 1060.2 | 718.3 | 1.0 | 717.3 | |
5 | dc1l | 1650 | 35,496 | 424,338 | 5.9 | 5.9 | 0.1 | 1.1 | 1.0 | 0.1 | |
5 | dolom1 | 1802 | 10,825 | 176,976 | 2.4 | 2.4 | 0.0 | 0.6 | 0.5 | 0.0 | |
5 | ds-big | 1042 | 173,029 | 4,573,582 | 196.9 | 195.4 | 1.6 | 6.0 | 5.0 | 1.0 | |
5 | ex10 | 62,932 | 15,896 | 1,031,940 | 38.7 | 12.9 | 25.8 | 121.8 | 114.4 | 7.4 | |
5 | f2000 | 10,495 | 3995 | 29,490 | 3.6 | 2.3 | 1.3 | 2.8 | 0.9 | 1.9 | |
5 | germanrr | 5524 | 10,650 | 159,548 | 2.0 | 1.9 | 0.0 | 0.0 | 0.3 | 0.3 | 0.0 |
5 | gmut-75-50 | 2499 | 35,915 | 569,806 | 6.0 | 5.9 | 0.0 | 0.0 | 0.8 | 0.7 | 0.1 |
5 | in | 1,495,549 | 1,439,571 | 6,696,217 | 5381.1 | 4622.9 | 758.2 | 101.2 | 82.7 | 18.4 | |
5 | ivu06-big | 1177 | 2,197,774 | 22,556,378 | 2067.8 | 2064.9 | 2.9 | 34.3 | 30.7 | 3.6 | |
5 | ivu52 | 2116 | 157,543 | 2,178,871 | 69.2 | 68.4 | 0.8 | 3.5 | 3.2 | 0.3 | |
5 | map06 | 37,504 | 18,973 | 81,653 | 11.3 | 11.2 | 0.1 | 3.5 | 3.2 | 0.3 | |
5 | mining | 661,094 | 348,958 | 2,754,430 | 772.0 | 770.0 | 2.0 | 46.6 | 36.8 | 9.8 | |
5 | momentum3 | 56,421 | 13,334 | 566,199 | 25.7 | 25.6 | 0.2 | 22.1 | 18.0 | 4.0 | |
5 | msc98-ip | 15,293 | 12,823 | 81,666 | 4.1 | 3.6 | 0.3 | 0.2 | 3.0 | 2.6 | 0.4 |
5 | mspp16 | 524,814 | 4081 | 27,555,511 | 65.3 | 65.0 | 0.3 | 57.4 | 52.7 | 4.7 | |
5 | mzzv11 | 9316 | 9902 | 133,424 | 2.3 | 2.1 | 0.2 | 1.6 | 1.5r | 0.1 | |
5 | n15-3 | 28,860 | 153,140 | 575,246 | 19.0 | 18.6 | 0.3 | 2.4 | 2.1 | 0.3 | |
5 | n3seq24 | 5950 | 119,856 | 2,404,844 | 27.0 | 26.5 | 0.5 | 4.1 | 3.7 | 0.3 | |
5 | nb10tb | 94,742 | 49,744 | 802,185 | 92.8 | 78.2 | 0.6 | 14.0 | 53.6 | 41.9 | 11.7 |
5 | neos-1140050 | 3795 | 39,075 | 806,835 | 6.8 | 6.8 | 0.0 | 3.9 | 3.3 | 0.6 | |
5 | neos-1429212 | 29,416 | 64,404 | 1,222,493 | 34.1 | 31.4 | 2.6 | 3.3 | 1.9 | 1.4 | |
5 | neos-1605075 | 3464 | 4085 | 91,314 | 1.3 | 0.9 | 0.3 | 1.0 | 0.9 | 0.2 | |
5 | neos-476283 | 4312 | 6528 | 3,924,503 | 23.8 | 23.3 | 0.5 | 20.0 | 19.8 | 0.3 | |
5 | neos-506428 | 129,925 | 42,981 | 343,466 | 7.5 | 4.4 | 3.1 | 1.3 | 1.0 | 0.3 | |
5 | neos-520729 | 17,391 | 64,464 | 175,131 | 12.1 | 11.8 | 0.3 | 0.4 | 0.4 | 0.1 | |
5 | neos-631710 | 169,576 | 167,056 | 834,166 | 220.2 | 3.4 | 216.8 | 8.7 | 1.2 | 7.5 | |
5 | neos-738098 | 25,736 | 8981 | 100,842 | 2.6 | 1.5 | 1.1 | 0.6 | 0.5 | 0.1 | |
5 | neos-799711 | 12,660 | 11,615 | 40,152 | 1.4 | 1.3 | 0.1 | 0.5 | 0.4 | 0.1 | |
5 | neos-824661 | 18,804 | 29,920 | 122,230 | 2.0 | 1.7 | 0.3 | 0.3 | 0.2 | 0.1 | |
5 | neos-826694 | 6730 | 15,210 | 52,020 | 1.2 | 0.8 | 0.3 | 0.2 | 0.1 | 0.1 | |
5 | neos-933638 | 9642 | 8887 | 54,484 | 1.9 | 1.0 | 0.9 | 0.6 | 0.4 | 0.3 | |
5 | neos-941313 | 13,099 | 116,670 | 386,400 | 8.4 | 6.9 | 1.6 | 1.1 | 0.4 | 0.7 | |
5 | neos-948126 | 7208 | 7777 | 37,891 | 1.6 | 1.1 | 0.5 | 0.4 | 0.2 | 0.2 | |
5 | neos-957389 | 5114 | 6034 | 355,369 | 4.4 | 4.3 | 0.1 | 0.6 | 0.5 | 0.1 | |
5 | neos-984165 | 6921 | 7315 | 36,573 | 1.7 | 1.2 | 0.5 | 0.4 | 0.2 | 0.2 | |
5 | neos6 | 1036 | 8563 | 251,723 | 1.1 | 1.1 | 0.0 | 0.5 | 0.4 | 0.0 | |
5 | neos808444 | 17,729 | 19,330 | 119,357 | 2.8 | 1.2 | 1.6 | 0.6 | 0.4 | 0.3 |
5 | net12 | 13,975 | 14,115 | 80,108 | 2.8 | 2.8 | 0.0 | 4.4 | 4.4 | 0.0 | |
5 | netdiversion | 99,581 | 128,968 | 495,878 | 110.3 | 105.2 | 5.1 | 14.4 | 4.2 | 10.3 | |
5 | npmv07 | 60,835 | 162,180 | 378,798 | 23.1 | 22.9 | 0.2 | 3.7 | 3.5 | 0.2 | |
5 | ns1111636 | 13,453 | 76,462 | 283,284 | 5.3 | 5.1 | 0.2 | 0.5 | 0.4 | 0.1 | |
5 | ns1116954 | 131,865 | 11,928 | 409,850 | 7.0 | 2.1 | 4.9 | 12.2 | 11.7 | 0.4 | |
5 | ns1631475 | 24,074 | 22,485 | 100,023 | 4.6 | 4.4 | 0.3 | 1.0 | 0.5 | 0.5 | |
5 | ns1644855 | 30,597 | 30,199 | 2,100,495 | 49.5 | 47.9 | 1.6 | 131.6 | 131.2 | 0.5 | |
5 | ns1663818 | 167,047 | 123,027 | 20,177,986 | 1105.0 | 1077.8r | 27.3 | 208.3 | 197.3r | 10.9 | |
5 | ns1685374 | 43,195 | 9174 | 206,101 | 9.9 | 9.9 | 0.0 | 11.9 | 1.6 | 10.4 | |
5 | ns1696083 | 10,513 | 7748 | 371,757 | 4.9 | 4.9 | 0.1 | 1.7 | 1.6 | 0.1 | |
5 | ns1758913 | 615,190 | 17,824 | 1,265,492 | 26.2 | 19.6 | 6.6 | 21.0 | 3.9 | 17.1 | |
5 | ns1853823 | 223,144 | 213,176 | 1,346,924 | 492.6 | 473.3 | 19.3 | 32.7 | 20.8r | 11.9 | |
5 | ns1854840 | 143,236 | 135,754 | 844,834 | 136.5 | 124.1 | 12.4 | 6.2 | 4.7 | 1.6 | |
5 | ns1904248 | 146,398 | 38,262 | 371,070 | 6.6 | 1.7 | 4.9 | 0.8 | 0.7 | 0.2 | |
5 | ns1905797 | 51,876 | 18,188 | 239,156 | 1.6 | 1.5 | 0.1 | 11.4 | 11.3 | 0.1 | |
5 | ns2017839 | 49,884 | 53,364 | 298,482 | 20.2 | 20.1 | 0.1 | 0.0 | 7.3 | 3.2r | 4.1 |
5 | ns2118727 | 160,408 | 164,350 | 636,614 | 42.0 | 41.9 | 0.1 | 13.8 | 13.5 | 0.3 | |
5 | ns2122603 | 19,036 | 16,556 | 64,357 | f | 4.4 | 1.6 | 2.9 | |||
5 | ns2124243 | 32,277 | 48,893 | 192,513 | 4.8 | 4.4 | 0.4 | 0.6 | 0.3 | 0.3 | |
5 | ns2137859 | 99,385 | 99,462 | 593,332 | 11.6 | 11.4 | 0.2 | 2.7 | 2.1 | 0.5 | |
5 | ns894244 | 9479 | 16,399 | 68,362 | 3.1 | 2.6 | 0.5 | 0.8 | 0.6 | 0.2 | |
5 | ns930473 | 22,846 | 33,136 | 139,974 | 7.2 | 6.8 | 0.4 | 1.1 | 0.8 | 0.4 | |
5 | nsr8k | 6283 | 38,264 | 370,206 | 16.8 | 16.4 | 0.4 | 4.7 | 3.9 | 0.7 | |
5 | ofi | 105,107 | 222,217 | 848,037 | 135.5 | 134.7 | 0.8 | 0.1 | 29.0 | 28.5 | 0.5 |
5 | opm2-z11-s8 | 205,936 | 7653 | 473,063 | 19.4 | 10.9 | 8.6 | 22.4 | 15.0 | 7.4 | |
5 | opm2-z12-s7 | 297,892 | 10,336 | 678,441 | 44.4 | 20.4 | 23.9 | 37.8 | 23.2 | 14.6 | |
5 | pb-simp-nonunif | 123,532 | 11,798 | 298,082 | 1.3 | 1.0 | 0.3 | 1.3 | 0.7 | 0.5 | |
5 | rail02 | 54,524 | 192,618 | 599,436 | 71.0 | 62.3 | 8.6 | 45.2 | 42.0 | 3.2 | |
5 | rail03 | 129,647 | 567,095 | 1,349,518 | 399.2 | 318.7 | 80.5 | 55.4 | 48.7 | 6.8 |
5 | ramos3 | 2187 | 2187 | 32,805 | 4.6 | 1.0 | 3.6 | 4.4 | 0.3 | 4.1 | |
5 | reblock420 | 62,800 | 4200 | 138,670 | 1.9 | 1.2 | 0.8 | 0.8 | 0.6 | 0.3 | |
5 | rmatr100-p5 | 8685 | 8784 | 26,152 | 3.9 | 3.8 | 0.0 | 9.1 | 9.1 | 0.0 | |
5 | rmatr200-p5 | 37,617 | 37,816 | 113,048 | 56.5 | 55.7 | 0.8 | 1.3 | 1.2 | 0.1 | |
5 | rmine14 | 268,474 | 32,144 | 659,980 | 83.0 | 80.4 | 2.6 | 48.6 | 20.8 | 27.8 | |
5 | rmine21 | 1,441,506 | 162,402 | 3,514,014 | 2707.8 | 2580.2 | 127.7 | 1620.0 | 694.8 | 925.2 | |
5 | rocII-9-11 | 42,412 | 20,557 | 503,343 | 6.6 | 6.3 | 0.3 | 1.1 | 0.7 | 0.3 | |
5 | satellites3-40-fs | 28,171 | 54,578 | 199,798 | 22.0 | 14.7 | 7.4 | 6.2 | 3.1 | 3.1 | |
5 | satellites3-40 | 37,422 | 54,578 | 588,630 | 34.4 | 25.4 | 9.0 | 61.2 | 56.6 | 4.6 | |
5 | sct1 | 9171 | 14,514 | 85,676 | 4.2 | 4.1 | 0.1 | 1.3 | 1.2 | 0.1 | |
5 | shs1023 | 126,657 | 432,068 | 1,013,029 | 173.5 | 170.8 | 2.7 | 14.4 | 12.8 | 1.6 | |
5 | siena1 | 2211 | 13,482 | 254,310 | 3.9 | 3.8 | 0.1 | 1.1 | 1.0 | 0.1 | |
5 | sing161 | 150,806 | 464,036 | 1,459,828 | 281.9 | 273.6 | 8.3 | 13.6 | 12.1 | 1.5 | |
5 | sing359 | 153,253 | 428,748 | 1,408,257 | 268.7 | 258.4 | 10.3 | 11.9 | 10.1 | 1.8 | |
5 | sp97ar | 1692 | 14,100 | 281,317 | 1.4 | 1.4 | 0.0 | 0.2 | 0.2 | 0.0 | |
5 | splan1 | 521,819 | 1,253,087 | 5,088,694 | 5242.2 | 4989.8 | 250.4 | 1.9 | 1775.7 | 1587.6 | 188.1 |
5 | stockholm | 36,517 | 16,622 | 111,003 | 5.6 | 5.5 | 0.1 | 0.7 | 0.6 | 0.1 | |
5 | stp3d | 97,936 | 137,646 | 500,753 | 196.5 | 163.4 | 33.1 | 11.2 | 9.4 | 1.8 | |
5 | tanglegram1 | 68,210 | 34,501 | 204,158 | 7.3 | 5.8 | 1.5 | 7.7 | 0.3 | 7.4 | |
5 | triptim3 | 14,121 | 22,982 | 494,503 | 14.2 | 13.3 | 0.9 | 5.3 | 4.8 | 0.5 | |
5 | uc-case3 | 34,288 | 27,194 | 230,068 | 7.2 | 7.0 | 0.2 | 1.1 | 0.9 | 0.2 | |
5 | unitcal_7 | 43,301 | 25,767 | 109,859 | 12.5 | 12.1 | 0.4 | 1.1 | 0.9 | 0.2 | |
5 | van | 22,016 | 7360 | 481,408 | 2.7 | 2.7 | 0.0 | 7.5 | 7.3 | 0.1 | |
5 | vpphard | 39,140 | 43,395 | 332,904 | 8.2 | 7.2 | 1.0 | 3.7 | 3.4 | 0.3 | |
5 | vpphard2 | 136,399 | 139,234 | 561,958 | 26.2 | 25.8 | 0.4 | 36.6 | 36.3 | 0.3 | |
5 | wnq-n100-mw99-14 | 656,900 | 10,000 | 1,333,400 | 20.3 | 20.0 | 0.2 | 39.4 | 39.0 | 0.3 | |
6a | fome13 | 34,600 | 76,249 | 246,895 | 40.5 | 36.0 | 4.5 | 5.8 | 4.6 | 1.2 | |
6a | fome21 | 24,173 | 162,336 | 356,706 | 15.5 | 15.0 | 0.5 | 3.5 | 3.1 | 0.4 | |
6b | cont1 | 120,395 | 40,398 | 359,593 | 88.5 | 88.4 | 0.1 | 18.8 | 2.0 | 16.8 |
6b | cont11 | 120,395 | 80,396 | 359,593 | 668.6 | 641.7 | 4.8 | 22.1 | 250.0 | 1.9 | 248.1 |
6b | cont11_l | 1,468,599 | 981,396 | 4,403,001 | f | 3256.3 | 32.1 | 3224.2 | |||
6b | cont1_l | 1,918,399 | 641,598 | 5,752,001 | f | 1951.3 | 50.3 | 1900.9 | |||
6b | neos | 419,478 | 41,140 | 911,651 | 118.8 | 118.6 | 0.2 | 8.1 | 7.8 | 0.3 | |
6b | neos1 | 131,581 | 1892 | 468,009 | 7.9 | 7.8 | 0.1 | 1.4 | 1.3 | 0.1 | |
6b | neos3 | 512,209 | 6624 | 1,542,816 | 60.9 | 27.4 | 33.5 | 38.6 | 11.4 | 27.2 | |
6b | ns1687037 | 36,080 | 30,955 | 1,377,655 | 145.8 | 145.8 | 0.1 | 24.5 | 15.4 | 9.1 | |
6b | ns1688926 | 24,576 | 16,489 | 901,120 | f | 28.9 | 22.5r | 6.4 | |||
6b | sgpf5y6 | 19,499 | 39,020 | 109,247 | 3.4 | 3.3 | 0.1 | 1.7 | 1.4 | 0.3 | |
6b | watson_1 | 107,522 | 216,565 | 658,933 | 85.7 | 85.2 | 0.5 | 4.5 | 3.3 | 1.3 | |
6b | watson_2 | 185,474 | 378,986 | 1,040,238 | 193.8 | 192.7 | 1.1 | 6.5 | 3.5 | 3.0 | |
6c | nug08-3rd | 18,270 | 20,448 | 128,547 | 573.8 | 253.7 | 320.1 | 91.2 | 18.8 | 72.4 | |
6c | nug20 | 14,098 | 72,546 | 281,906 | 192.3 | 176.1 | 16.1 | 435.5 | 37.5 | 398.0 | |
6c | nug30 | 52,260 | 379,350 | 1,567,800 | 11,473.2 | 5125.2 | 6337.0 | 11.1 | 1400.5 | t | |
6d | pds-100 | 94,994 | 433,867 | 933,313 | 110.6 | 104.9 | 5.7 | 30.9 | 28.1 | 2.7 | |
6d | pds-60 | 54,289 | 285,112 | 617,497 | 39.5 | 37.7 | 1.8 | 16.5 | 15.4 | 1.1 | |
6e | rail2586 | 2463 | 909,940 | 7,901,059 | 259.0 | 258.6 | 0.4 | 15.3 | 12.7 | 2.7 | |
6e | rail4284 | 4176 | 1,090,526 | 11,174,639 | 370.7 | 369.9 | 0.8 | 32.9 | 29.7 | 3.2 | |
7 | dfl001 | 4325 | 9511 | 30,833 | 2.2 | 2.0 | 0.1 | 0.6 | 0.5 | 0.1 | |
7 | pilot87 | 1815 | 4420 | 70,035 | 1.6 | 1.6 | 0.0 | 0.4 | 0.3 | 0.2 | |
7 | qap15 | 5698 | 22,218 | 85,413 | 15.4 | 13.3 | 2.1 | 4.3 | 2.8 | 1.5 |
Rights and permissions
About this article
Cite this article
Schork, L., Gondzio, J. Implementation of an interior point method with basis preconditioning. Math. Prog. Comp. 12, 603–635 (2020). https://doi.org/10.1007/s12532-020-00181-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12532-020-00181-8