[Ipopt] Ipopt best usage - suggestions

Seth Watts watts2 at illinois.edu
Thu Apr 20 10:36:11 EDT 2017

IPOPT assumes that the objective and constraint functions are
differentiable with respect to the optimization parameters. So long as that
is true, it is ok if the modelled system is transient and/or subjected to
random and/or discontinuous loads. However, if the response functions are
not smoothly differentiable with respect to the optimization parameters, I
don't believe IPOPT is an appropriate choice of optimization library.

I am not sure that I fully understand the optimization problem you wish to
solve. Is the parameter you want to optimize the battery size, such that
the lifetime system cost is minimized? If so, then random discontinuous
electrical usage might be acceptable, since I assume this is akin to the
forcing function of the model. You will need to be able to provide IPOPT
with the derivatives of the response functions with respect to the
optimization parameter(s). If the response functions themselves are quick
to evaluate, then you can approximate the derivatives with finite
differences; if not, you should look into e.g. direct or adjoint
sensitivity analyses if there are implicit derivatives in your model. Again
depending on your model, you may or may not be able to efficiently provide
the second derivatives.

You can link to IPOPT from C/C++ and Fortran, and there is a third-party
pyipopt library that provides Python bindings to IPOPT. All of these are
open source options that I have used; there are likely others as well.

- Seth

On Thu, Apr 20, 2017 at 10:04 AM, Rueff Guillaume <guillaume.rueff at epfl.ch>

> Hello everyone,
> I am new with Ipopt and would like to have some of your advices.
> I'd like to know if it is possible, and what would be the best option(s)
> to solve a maximization problem under constraints, where most variables are
> time dependent?
> The main inputs are real measures of the electricity consumption of a
> house (every 15min --> discontinuous and random function) and the
> electricity production with photovoltaic solar panels on its roof. There is a
> battery storage system that can be charged or used at a different rate for
> every time step, and accounting for economical variables, I'd like to find
> the best battery size to maximise the economic gain of its user (over a
> certain period of time).
> Is it only possible with Ipopt ?
> If yes, are there any possibility to solve this with fully open
> source softwares (not like Matlab)?
> Thank you for your responses,
> Guillaume Rueff
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> https://urldefense.proofpoint.com/v2/url?u=https-3A__list.
> coin-2Dor.org_mailman_listinfo_ipopt&d=DwICAg&c=Ngd-
> ta5yRYsqeUsEDgxhcqsYYY1Xs5ogLxWPA_2Wlc4&r=dsBwtvU3bu9vN6wT5m80-
> EaS8VGLQW06hr28nrxytaI&m=IuEt9a0_iRN6OCngD_5Y3MjPM7N-L5g4tknQX07By3A&s=
> p8iEea4ezK3ZDvEhx0GTprXL8SAJj7q00j3X8swVRM0&e=
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20170420/af522518/attachment-0001.html>

More information about the Ipopt mailing list