This package includes the main function
function [x,obj,iter,elapsedTime]=rowPivot(A,b,c,Ai,bi,bl,bu)
where A and b give the equality constraints, Ai and bi give the inequality constraints, bl and bu give the lower and upper bounds, c defines the objective function. If there is no equality constraints, A is [] and b is []. If there is no inequatlity constraints Ai is [] and bi is [].
All lp_xxx.mat files are Netlib test problems that has lower and upper bounds.
rowPivotTestNetlibMain.m is the function that is used to test the main function rowPivit.m using Netlib test problems lp_xxx.mat. rowPivotTestNetlibMain first upload lp_xxx.mat, then using extract.m to get A,b,c,Ai,bi,bl,bu, so that rowPivot.m can be called correctly. Before rowPivot.m is called, a pre-processor is used to remove unneccessary constraints. The pre-precessor is described in
Yang, Y. CurveLP-A MATLAB implementation of an infeasible interior-point algorithm for linear programming. Numer Algor 74, 967–996 (2017).
Our experience showes that the algoirhm is more efficient than vertex pivot algorithms. Please visit arXiv [2107.08468] On the facet pivot simplex method for linear programming I: algorithms and numerical test for more details.
If you use this code in your research, please cite the paper in arXiv and inform me at yaguang.yang@verizon.net.
引用格式
Yaguang Yang (2025). Facet pivot algorithm for linear programming (https://www.mathworks.com/matlabcentral/fileexchange/181706), MATLAB Central File Exchange. Retrieved August 3, 2025.
MATLAB 版本兼容性
创建方式
R2025a
兼容任何版本
