Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

clarkzinzow/Nonlinear-Optimization-Algorithms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

17 Commits

Repository files navigation

Nonlinear-Optimization-Algorithms

MATLAB implementations of various nonlinear programming algorithms.


This repository contains MATLAB implementations of a variety of popular nonlinear programming algorithms, many of which can be found in Numerical Optimization by Nocedal and Wright, a text that I highly recommend.

List of algorithms implemented:

  1. line-search (simple Wolfe, strong Wolfe, Moré-Thuente)
  2. steepest descent
  3. Newton's method
  4. Dogleg method
  5. Steihaug-Toint conjugate gradient trust region method
  6. BFGS
  7. limited-memory BFGS
  8. Gauss-Newton method

All of the algorithms are heavily commented (possibly to a fault), but I wanted someone in the midst of a nonlinear programming class to be able to read through the code and understand it decently well. Although I have done my best to implement these algorithms with efficiency in mind (within the confines of MATLAB's inherent deficiencies in this regard), this repository is far more valuable as a teaching tool than as a performance-centric library.

Due to the algorithms being so heavily commented, many implementation details are contained within the code as comments instead of in a README.

Some day, I will include a demo folder that demonstrates the correctness and performance of each algorithm on a set of representative problems, and I will create a README with implementation details for each algorithm, to be located in the src folder.

Some day! :)

AltStyle によって変換されたページ (->オリジナル) /