Abstract
The computation of the basis inverse is the most time-consuming step in simplex-type algorithms. The basis inverse does not have to be computed from scratch at each iteration, but updating schemes can be applied to accelerate this calculation. This chapter presents two basis inverse and two basis update methods used in simplex-type algorithms: (i) Gauss-Jordan elimination basis inverse method, (ii) LU Decomposition basis inverse method, (iii) Product Form of the Inverse basis update method, and (iv) Modification of the Product Form of the Inverse basis update method. Each technique is presented with: (i) its mathematical formulation, (ii) a thorough numerical example, and (iii) its implementation in MATLAB. Finally, a computational study is performed. The aim of the computational study is to compare the execution time of the basis inverse and update methods and highlight the significance of the choice of the basis update method on simplex-type algorithms and the reduction that it can offer to the solution time.
References
Badr, E. S., Moussa, M., Papparrizos, K., Samaras, N., & Sifaleras, A. (2006). Some computational results on MPI parallel implementations of dense simplex method. In Proceedings of World Academy of Science, Engineering and Technology, 23, (CISE 2006), Cairo, Egypt, 39–32.
Bartels, R. H., & Golub, G. H. (1969). The simplex method of linear programming using LU decomposition. Communications of the ACM, 12, 266–268.
Benhamadou, M. (2002). On the simplex algorithm revised form. Advances in Engineering Software, 33(11–12), 769–777.
Brayton, R. K., Gustavson, F. G., & Willoughby, R. A. (1970) Some results on sparse matrices. Mathematics of Computation, 24, 937–954.
Chvatal, V. (1983). Linear programming. New York, USA: W.H. Freeman and Company.
Dantzig, G. B., & Orchard–Hays, W. (1954). The product form of the inverse in the simplex method. Mathematical Tables and Other Aids to Computation, 8, 64–67.
Forrest, J. J. H., & Tomlin, J. A. (1972). Updated triangular factors of the basis to maintain sparsity in the product form simplex method. Mathematical Programming, 2, 263–278.
Goldfarb, D. (1977). On the Bartels-Golub decomposition for linear programming bases. Mathematical Programming, 13, 272–279.
Golub, G. H., & Van Loan, C. F. (2013). Matrix computations (4th ed). JHU Press.
Lim, S., Kim, G., & Park, S. (2003). A comparative study between various LU update methods in the simplex method. Journal of the Military Operations Research Society of Korea, 29(1), 28–42.
Markowitz, H. (1957). The elimination form of the inverse and its applications to linear programming. Management Science, 3, 255–269.
McCoy, P. F., & Tomlin, J. A. (1974). Some experiments on the accuracy of three methods of updating the inverse in the simplex method. Technical Report, Stanford University.
Nazareth, J. L. (1987). Computer solution of linear programs. Oxford, UK: Oxford University Press.
Ploskas, N. (2014). Hybrid optimization algorithms: implementation on GPU. Ph.D. thesis, Department of Applied Informatics, University of Macedonia.
Ploskas, N., & Samaras, N. (2013). Basis update on simplex type algorithms. In Book of Abstracts of the EWG-DSS Thessaloniki 2013, p. 11, Thessaloniki, Greece.
Ploskas, N., & Samaras, N. (2013). A computational comparison of basis updating schemes for the simplex algorithm on a CPU-GPU system. American Journal of Operations Research, 3, 497–505.
Ploskas, N., Samaras, N., & Margaritis, K. (2013). A parallel implementation of the revised simplex algorithm using OpenMP: Some Preliminary Results. In A. Migdalas et al. (Eds.), Optimization Theory, Decision Making, and Operations Research Applications, Series Title: Springer Proceedings in Mathematics & Statistics 31 (pp. 163–175). New York: Springer.
Ploskas, N., Samaras, N., & Papathanasiou, J. (2012). LU decomposition in the revised simplex algorithm. In Proceedings of the 23th National Conference, Hellenic Operational Research Society (pp. 77–81), Athens, Greece.
Ploskas, N., Samaras, N., & Papathanasiou, J. (2013). A web-based decision support system using basis update on simplex type algorithms. In J. Hernandez et al. (Eds.), Decision Support Systems II Recent Developments Applied to DSS Network Environments, Lecture Notes in Business Information Processing (LNBIP 164) (pp. 102–114). New York: Springer.
Ploskas, N., Samaras, N., & Sifaleras, A. (2009). A parallel implementation of an exterior point algorithm for linear programming problems. In Proceedings of the 9th Balcan Conference on Operational Research (BALCOR 2009), 2–6 September, Constanta, Romania.
Reid, J. (1982). A sparsity-exploiting variant of the Bartels-Golub decomposition for linear programming bases. Mathematical Programming, 24, 55–69.
Saunders, M. (1976). A fast and stable implementation of the simplex method using Bartels-Golub updating. In J. Bunch, & S. T. Rachev (Eds.), Sparse Matrix Computation (pp. 213–226). New York: Academic Press.
Suhl, L. M., & Suhl, U. H. (1993). A fast LU update for linear programming. Annals of Operations Research, 43(1), 33–47.
Author information
Authors and Affiliations
7.1 Electronic Supplementary Material
Below is the link to the electronic supplementary material.
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this chapter
Cite this chapter
Ploskas, N., Samaras, N. (2017). Basis Inverse and Update Methods. In: Linear Programming Using MATLAB® . Springer Optimization and Its Applications, vol 127. Springer, Cham. https://doi.org/10.1007/978-3-319-65919-0_7
Download citation
DOI: https://doi.org/10.1007/978-3-319-65919-0_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-65917-6
Online ISBN: 978-3-319-65919-0
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)