IPOPT
Deweloperzy | Andreas Wächter, Carl Laird |
---|---|
Pierwsze wydanie | 26 sierpnia 2005 |
Wersja stabilna | 3.12.11 / 17 września 2018
|
System operacyjny | UNIX , Linux , macOS , Microsoft Windows |
Licencja | Licencja publiczna Eclipse |
Strona internetowa |
IPOPT , skrót od „ Interior Point OPT imizer, wymawiane IP-Opt”, to biblioteka oprogramowania do nieliniowej optymalizacji systemów ciągłych na dużą skalę. Jest napisany w Fortran i C i jest wydany na licencji EPL (dawniej CPL ). IPOPT implementuje metodę punktu wewnętrznego primal-dual i wykorzystuje przeszukiwanie linii w oparciu o metody filtrów ( Fletcher i Leyffer ). IPOPT można wywoływać z różnych środowisk modelowania i C .
IPOPT jest częścią projektu COIN-OR .
IPOPT jest przeznaczony do wykorzystywania informacji o pierwszej i drugiej pochodnej ( hessians ), jeśli są dostępne (zwykle za pomocą automatycznych procedur różniczkowania w środowiskach modelowania, takich jak AMPL ). Jeśli nie podano hesji, IPOPT dokona ich aproksymacji przy użyciu metod quasi-newtonowskich , w szczególności aktualizacji BFGS .
IPOPT został pierwotnie opracowany przez dr. student Andreas Wächter i prof. Lorenz T. Biegler z Wydziału Inżynierii Chemicznej na Uniwersytecie Carnegie Mellon . Ich praca została doceniona nagrodą INFORMS Computing Society w 2009 roku.
Arvind Raghunathan stworzył później rozszerzenie IPOPT do programowania matematycznego z ograniczeniami równowagi (MPEC) [1] . Ta wersja IPOPT jest ogólnie znana jako IPOPT-C (gdzie „C” oznacza „komplementarność”). Chociaż teoretycznie każdy program z mieszanymi liczbami całkowitymi może zostać przekształcony jako MPEC, może on być rozwiązany za pomocą IPOPT-C lub nie. Rozwiązanie MINLP (Mixed-Integer Nonlinear Programs) z wykorzystaniem IPOPT jest wciąż badane [2] [3] .
Carl Laird i Andreas Wächter są twórcami IPOPT 3.0, który jest reimplementacją IPOPT w C++ . Za ten rozwój Wächter i Laird otrzymali nagrodę JH Wilkinson Prize for Numerical Software 2011.
Zobacz też
Linki zewnętrzne