[SciPy-User] scipy optimization: inequality constraint type

David Goldsmith eulergaussriemann at gmail.com
Fri May 26 11:15:11 EDT 2017


It looks like it could simply be a typo: could you be troubled to file a
ticket?  Worst case: someone will explain, in that record, why it isn't a
typo; best case: it will get fixed.  Thanks for your conscientiousness.

DLG

On Fri, May 26, 2017 at 4:40 AM Kirill Balunov <kirillbalunov at gmail.com>
wrote:

> I'm sorry, I understand that's because the only solver for constrained
> optimization in scipy is *SLSQP*?
>
> But, It is not good idea to write about a particular case as if it is a
> general ->
>
> In documentation -> "In general, the optimization problems are of the
> form: ..."
>
> https://docs.scipy.org/doc/scipy-0.18.1/reference/generated/scipy.optimize.minimize.html
>
> Which is not true in general :)
>
>
> -gdg
>
> 2017-05-26 14:18 GMT+03:00 Kirill Balunov <kirillbalunov at gmail.com>:
>
>> David, KKT conditions are first-order necessary conditions which are
>> applicable if some assumptions are satisfied (regularity, continuity,..).
>> The points which satisfy KKT are said to be stationary (or candidate)
>> points (min, max or inflation). Internally this conditions use gradient of
>> Lagrange function -> c^T * x + lambda^T * h(x) + mu^T * g(x) (this is
>> classical notation), where h(x) are equality and g(x) are inequality (g(x)
>> <= 0) constraints respectively. Also there is a restriction among others
>> for `mu` to be non-negative. This is classical formulation of NLP (which
>> looks for minimum). Of course mathematics is simply a human game with some
>> rules. So you can choose from four cases (for "inequality term"):
>> 1) +  mu^T * g(x),  mu >= 0,  g(x) <=0   (classical)
>> 2) -  mu^T * g(x), mu >= 0, g(x) >= 0
>> 3) + mu^T * g(x),  mu <= 0,  g(x) >= 0    ( awkward)
>> 4) - mu^T * g(x),  mu => 0,  g(x) <= 0    (awkward)
>>
>> Tрe last two are awkward they roughly crash the dual problem principle
>> (the related maximization problem but in Lagrange multipliers). The first
>> two look good but the  the second one is very unusual. That is why I ask
>> about historical reasons, why this form was chosen?
>>
>> -gdg
>>
>>
>>
>> 2017-05-26 1:03 GMT+03:00 David Goldsmith <eulergaussriemann at gmail.com>:
>>
>>> The KKT reference exceeds my numeracy...
>>>
>>> Anyway, i doubt this is the case, but if it's really a problem, you can
>>> always write wrappers to automate the desired transformations, yes?
>>>
>>> DLG
>>>
>>
>>
> _______________________________________________
> SciPy-User mailing list
> SciPy-User at python.org
> https://mail.python.org/mailman/listinfo/scipy-user
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scipy-user/attachments/20170526/7fad444b/attachment.html>


More information about the SciPy-User mailing list