IPOPT

From Wikipedia, the free encyclopedia

Template:Short description

Page Module:Message box/ambox.css has no content.

Page Module:Infobox/styles.css has no content.

IPOPT
[[Programmer|DeveloperTemplate:Pluralize from text]]Andreas Wächter, Carl Laird
Initial releaseAugust 26, 2005; 20 years ago (2005-08-26)
Template:Infobox software/simple
Operating systemUNIX, Linux, macOS, Microsoft Windows
Available inC++
LicenseEclipse Public License
Websitegithub.com/coin-or/Ipopt

Script error: No such module "Check for conflicting parameters".

IPOPT, short for "Interior Point OPTimizer, pronounced I-P-Opt", is a software library for large scale nonlinear optimization of continuous systems.

It is written in C++ (after migrating from Fortran and C) and is released under the EPL (formerly CPL). IPOPT implements a primal-dual interior point method, and uses line searches based on Filter methods (Fletcher and Leyffer).

IPOPT can be called from various modeling environments: C, C++, Fortran, Java, R, Python, and others.[2]

IPOPT is part of the COIN-OR project.

IPOPT is designed to exploit 1st derivative (gradient) and 2nd derivative (Hessian) information if provided (usually via automatic differentiation routines in modeling environments such as AMPL). If no Hessians are provided, IPOPT will approximate them using a quasi-Newton methods, specifically a BFGS update.

IPOPT was originally developed[3] by Ph.D. student Andreas Wächter and Prof. Lorenz T. Biegler of the Department of Chemical Engineering at Carnegie Mellon University. Their work was recognized with the INFORMS Computing Society Prize in 2009.

Arvind Raghunathan later created an extension to IPOPT for Mathematical programming with equilibrium constraints (MPEC).[4] This version of IPOPT is generally known as IPOPT-C (with the 'C' standing for 'complementarity'). While in theory any mixed-integer program can be recast as an MPEC, it may or may not be solvable with IPOPT-C. Solution of MINLPs (Mixed-Integer Nonlinear Programs) using IPOPT is still being explored.[5][6]

Carl Laird and Andreas Wächter are the developers of IPOPT 3.0, which is a re-implementation of IPOPT in C++. Wächter and Laird were awarded the 2011 J. H. Wilkinson Prize for Numerical Software for this development.

See also

References

Page Template:Reflist/styles.css has no content.

  1. ^ Page Module:Citation/CS1/styles.css has no content."Github release page". GitHub.
  2. ^ Page Module:Citation/CS1/styles.css has no content."IPOPT Github repository". GitHub. COIN-OR Foundation. 26 April 2024. Retrieved 27 April 2024.
  3. ^ Page Module:Citation/CS1/styles.css has no content.Wächter, Andreas; Biegler, Lorenz T. (2006). "On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming" (PDF). Mathematical Programming. 106: 25–57. doi:10.1007/s10107-004-0559-y. S2CID 14183894.
  4. ^ Page Module:Citation/CS1/styles.css has no content.Raghunathan, Arvind U.; Biegler, Lorenz T. (2005). "An Interior Point Method for Mathematical Programs with Complementarity Constraints (MPCCS)". SIAM Journal on Optimization. 15 (3): 720–750. doi:10.1137/S1052623403429081.
  5. ^ Page Module:Citation/CS1/styles.css has no content."CMU-IBM Open Source MINLP Project". Archived from the original on 2006-06-22.
  6. ^ Page Module:Citation/CS1/styles.css has no content."Bonmin". 27 October 2023.

Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found.


Template:Asbox