Software
I actively maintain the following software.
Please send me email if you encounter any problems or bugs.
Feedback is welcomed.
- recursionSolve_qN.m is a direct solver for solving equations of the form (B+sigma I)x=y, where B is an L-BFGS quasi-Newton matrix and sigma is a strictly positive constant.
This code is based on the manuscript Limited-memory BFGS systems with diagonal updates.
A demo driver file can be found here. You will need this additional file to run the demo.
- gen_recursionSolve_qN.m is a direct solver for solving equations of the form (B+D)x=y, where B is an L-BFGS quasi-Newton matrix and D is a strictly positive diagonal matrix.
This code is based on the manuscript Solving limited-memory BFGS
systems with generalized diagonal updates.
A demo driver file can be found here. You will need this additional file to run the
demo.
-
Updated! (Nov 6, 2013) mss.m is software for solving
L-BFGS trust-region subproblems
in large-scale optimization. It makes use of newrec.m.
This code is based on the manuscript MSS:
MATLAB Software for L-BFGS Trust-Region Subproblems for Large-Scale
Optimization but is a faster implementation.
You will also need the following file to run mss.m:
two_loop.m.
- Updated! (July 10, 2015) eig_finder.m computes the eigenvalues of a SR1 matrix.
update_QR_add_pair.m
updates the QR factorization after a new SR1 pair is computed.
update_QR_delete_pair.m updates the QR factorization after an SR1 pair is deleted.
These codes are based on the manuscript On efficiently computing the eigenvalues of limited-memory quasi-Newton matrices.
A demo driver file to see how this file is called and used can be found here.
To run the demo, you will need this purely for testing purposes.
- Updated! (July 10, 2015) eig_finder_convex.m computes the eigenvalues of a matrix that is generated by the Broyden convex class of updates.
update_QR_add_pair_convex.m
updates the QR factorization after a new quasi-Newton pair is computed.
update_QR_delete_pair_convex.m updates the QR factorization after a quasi-Newton pair is deleted.
These codes are based on the manuscript On efficiently computing the eigenvalues of limited-memory quasi-Newton matrices.
A demo driver file to see how this file is called and used can be found here.
To run the demo, you will need this purely for testing purposes.
- Updated! (March 2018) obs.m
solves L-SR1 trust-region subproblems.
This code is based on the manuscript On solving L-SR1 trust-region subproblems.
A demo driver file to see how this file is called and used can be found here.
The above work was supported by National Science Foundation grants DMS-0811106, CMMI-1334042, and IIS-1741264.
I often use the following software and am thankful to the authors:
There's no place like home.