TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Optimization Without Using Derivatives

2 pointsby zaikunzhangabout 2 years ago

1 comment

zaikunzhangabout 2 years ago
Reading the discussions under a previous thread titled &quot;More Descent, Less Gradient&quot;( <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23004026" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23004026</a> ), I guess people might be interested in PRIMA ( www.libprima.net ), which provides the reference implementation for Powell&#x27;s renowned gradient&#x2F;derivative-free (zeroth-order) optimization methods, namely COBYLA, UOBYQA, NEWUOA, BOBYQA, and LINCOA.<p>PRIMA solves general nonlinear optimizaton problems without using derivatives. It implements Powell&#x27;s solvers in modern Fortran, compling with the Fortran 2008 standard. The implementation is faithful, in the sense of being mathmatically equivalent to Powell&#x27;s Fortran 77 implementation, but with a better numerical performance. In contrast to the 7939 lines of Fortran 77 code with 244 GOTOs, the new implementation is structured and modularized.<p>There is a discussion to include the PRIMA solvers into SciPy ( <a href="https:&#x2F;&#x2F;github.com&#x2F;scipy&#x2F;scipy&#x2F;issues&#x2F;18118">https:&#x2F;&#x2F;github.com&#x2F;scipy&#x2F;scipy&#x2F;issues&#x2F;18118</a> ), replacing the buggy and unmaintained Fortran 77 version of COBYLA, and making the other four solvers available to all SciPy users.