[SciPy-Dev] GSoC2017: Constrained Optimisation in Scipy

Matt Haberland haberland at ucla.edu
Fri Mar 10 13:01:32 EST 2017


The choice of nonlinear optimization algorithm can have a dramatic impact
on the speed and quality of the solution, and the best choice for a
particular problem can be difficult to determine a priori, so it is
important to have multiple options available.

My work in optimal control leads to problems with (almost entirely)
nonlinear constraints, and the use of derivative information is essential
for reasonable performance, leaving SLSQP as the only option in SciPy right
now. However, the problems are also huge and very sparse with a specific
structure, so SLSQP is not very effective, and not nearly as effective as a
nonlinear optimization routine could be. So despite SciPy boasting 14
options for minimization of a nonlinear objective, it wasn't suitable for
this work (without the use of an external solver).

I think SciPy is in need of at least one solver designed to handle large,
fully nonlinear problems, and having two would be much better. Interior
point and SQP are good, complementary options.

On Thu, Mar 9, 2017 at 2:38 PM, Antonio Ribeiro <antonior92 at gmail.com>
wrote:

> Hello, my name is Antonio and I am a Brazilian electrical engineer
> currently pursuing my master degree. I have contributed to scipy.optimize
>  and scipy.signal implementing functions "iirnotch", "irrpeak"
> <https://github.com/scipy/scipy/pull/6404>and the method
> "trust-region-exact" <https://github.com/scipy/scipy/pull/6919> (under
> revision). I am interested in applying for the Google Summer of Code 2017
> to work with the Scipy optimisation package.
>
> My proposal is to improve scipy.optimize adding optimisation methods that
> are able to deal with non-linear constraints. Currently the only
> implemented methods able to deal with non-linear constraints are the
> FORTRAN wrappers SLSQP and COBYLA.
>
> SLSQP is a sequential quadratic programming method and COBYLA is a
> derivative-free optimisation method, they both have its limitations:
> SLSQP is not able to deal with sparse
> hessians and jacobians and is unfit for large-scale problems and COBYLA,
> as other derivative-free methods, is a good choice for optimise noisy
> objective functions, however usually presents a poorer performance then
> derivative-based methods when the derivatives are available (or even when
> they are computed by automatic differentiation or finite differences).
>
> My proposal is to implement in Scipy one or more state-of-the-art solvers
> (interior point and SQP methods) for constrained optimisation problems. I
> would like to get some feedback about this, discuss the relevance of it for
> Scipy  and get some suggestions of possible mentors.
>
> _______________________________________________
> SciPy-Dev mailing list
> SciPy-Dev at scipy.org
> https://mail.scipy.org/mailman/listinfo/scipy-dev
>
>


-- 
Matt Haberland
Assistant Adjunct Professor in the Program in Computing
Department of Mathematics
7620E Math Sciences Building, UCLA
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scipy-dev/attachments/20170310/00ea2b5d/attachment.html>


More information about the SciPy-Dev mailing list