<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Thanks. I had a separate conversation with Carl Laird, and his
recommendation was to keep the variables in the objective. We only
discussed smooth problems and no corner cases. Carl said that even
though the objective is part of the Lagrangian and so any variable
and constraint changes in there should be equivalent, in his
experience Ipopt performs better with the variables in the
objective, based on how the line search works.<br>
<br>
Damien <br>
<br>
<div class="moz-cite-prefix">On 2014-06-13 11:02 AM, Andrew R Conn
wrote:<br>
</div>
<blockquote
cite="mid:OFE5860F75.39A93532-ON85257CF6.005D751A-85257CF6.005DA3A7@us.ibm.com"
type="cite"><tt><font size="2"><<Mathematically (and I think
algorithmically)
these are equivalent</font></tt>
<br>
<br>
<font face="sans-serif" size="2">Not necessarily. Depends very
much on
the context</font>
<br>
<br>
<font face="sans-serif" size="2">eg </font>
<br>
<br>
<font face="sans-serif" size="2">min_x max_i f_i(x)</font>
<br>
<br>
<font face="sans-serif" size="2">is non-smooth</font>
<br>
<br>
<font face="sans-serif" size="2">cf with</font>
<br>
<br>
<font face="sans-serif" size="2">min_x,z z</font>
<br>
<br>
<font face="sans-serif" size="2">subject to z>= f_i(x)</font>
<br>
<br>
<font face="sans-serif" size="2">for an example</font>
<br>
<br>
<br>
<font color="blue" face="Arial" size="2">Andrew R. Conn</font>
<br>
<font color="blue" face="Arial" size="2">BM T. J. Watson Research
Center</font>
<br>
<br>
<br>
<br>
<font color="#5f5f5f" face="sans-serif" size="1">From:
</font><font face="sans-serif" size="1"><a class="moz-txt-link-abbreviated" href="mailto:ipopt-request@list.coin-or.org">ipopt-request@list.coin-or.org</a></font>
<br>
<font color="#5f5f5f" face="sans-serif" size="1">To:
</font><font face="sans-serif" size="1"><a class="moz-txt-link-abbreviated" href="mailto:ipopt@list.coin-or.org">ipopt@list.coin-or.org</a>,
</font>
<br>
<font color="#5f5f5f" face="sans-serif" size="1">Date:
</font><font face="sans-serif" size="1">06/13/2014 12:03 PM</font>
<br>
<font color="#5f5f5f" face="sans-serif" size="1">Subject:
</font><font face="sans-serif" size="1">Ipopt Digest,
Vol 114, Issue 7</font>
<br>
<font color="#5f5f5f" face="sans-serif" size="1">Sent by:
</font><font face="sans-serif" size="1"><a class="moz-txt-link-abbreviated" href="mailto:ipopt-bounces@list.coin-or.org">ipopt-bounces@list.coin-or.org</a></font>
<br>
<hr noshade="noshade">
<br>
<br>
<br>
<tt><font size="2">Send Ipopt mailing list submissions to<br>
<a class="moz-txt-link-abbreviated" href="mailto:ipopt@list.coin-or.org">ipopt@list.coin-or.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
</font></tt><a moz-do-not-send="true"
href="http://list.coin-or.org/mailman/listinfo/ipopt"><tt><font
size="2">http://list.coin-or.org/mailman/listinfo/ipopt</font></tt></a><tt><font
size="2"><br>
or, via email, send a message with subject or body 'help' to<br>
<a class="moz-txt-link-abbreviated" href="mailto:ipopt-request@list.coin-or.org">ipopt-request@list.coin-or.org</a><br>
<br>
You can reach the person managing the list at<br>
<a class="moz-txt-link-abbreviated" href="mailto:ipopt-owner@list.coin-or.org">ipopt-owner@list.coin-or.org</a><br>
<br>
When replying, please edit your Subject line so it is more
specific<br>
than "Re: Contents of Ipopt digest..."<br>
<br>
<br>
Today's Topics:<br>
<br>
1. Re: question on formulation of the objective function and<br>
IPOPT performance (Greg Horn)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Fri, 13 Jun 2014 14:36:51 +0200<br>
From: Greg Horn <a class="moz-txt-link-rfc2396E" href="mailto:gregmainland@gmail.com"><gregmainland@gmail.com></a><br>
To: Damien <a class="moz-txt-link-rfc2396E" href="mailto:damien@khubla.com"><damien@khubla.com></a><br>
Cc: ipopt mailing list <a class="moz-txt-link-rfc2396E" href="mailto:ipopt@list.coin-or.org"><ipopt@list.coin-or.org></a><br>
Subject: Re: [Ipopt] question on formulation of the objective
function<br>
and IPOPT performance<br>
Message-ID:<br>
<a class="moz-txt-link-rfc2396E" href="mailto:CAAr-h4v3uuR=cHmXqgNbBSXO_v4PGE7aLNGg8qdn+S1sTFvsPg@mail.gmail.com"><CAAr-h4v3uuR=cHmXqgNbBSXO_v4PGE7aLNGg8qdn+S1sTFvsPg@mail.gmail.com></a><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Hi Damien,<br>
<br>
Since no one has answered I'll take a shot at it, though it's
not my<br>
expertise. The case you described is:<br>
<br>
minimize f(x) w.r.t {x}<br>
vs<br>
minimize y w.r.t {x,y}, subject to y == f(x)<br>
<br>
I'm not sure if there will be any difference in this case.
However, I have<br>
had personal experience with:<br>
<br>
minimize f(g(x)) w.r.t {x} [prob1]<br>
vs<br>
minimize f(y) w.r.t. {x, y} subject to y == g(x) [prob2]<br>
<br>
In this case you can have significantly better convergence by
"lifting"<br>
these variables out. [prob2] will compute a better search
direction than<br>
[prob1]. This is why people use direct multiple shooting
instead of direct<br>
single shooting sometimes. There are even specialized lifting
solvers which<br>
can do linear algebra in the space of [prob1] and obtain the
search<br>
direction in the space of [prob2], for example:<br>
</font></tt><a moz-do-not-send="true"
href="http://num.math.uni-bayreuth.de/en/conferences/ompc_2013/program/download/friday/Diehl_ompc2013.pdf"><tt><font
size="2">http://num.math.uni-bayreuth.de/en/conferences/ompc_2013/program/download/friday/Diehl_ompc2013.pdf</font></tt></a><tt><font
size="2"><br>
<br>
Hope this helps,<br>
Greg<br>
<br>
<br>
On Wed, Jun 11, 2014 at 8:52 PM, Damien
<a class="moz-txt-link-rfc2396E" href="mailto:damien@khubla.com"><damien@khubla.com></a> wrote:<br>
<br>
> All,<br>
><br>
> I'm looking at two ways to formulate the objective
function in a new<br>
> optimisation model. The first way is what you'd call the
conventional
way<br>
> I suppose, where you have a variety of variables
contributing to the<br>
> objective value and you calculate the gradient and return
that to
IPOPT.<br>
> The other way I'm considering is to equate the objective
function
to a new<br>
> variable in an extra equality constraint, and have the
new variable
as the<br>
> only variable in the objective, with a gradient of 1.0.
The
new equality<br>
> constraint then contributes first partial derivatives
like any other<br>
> equation or constraint.<br>
><br>
> Mathematically (and I think algorithmically) these are
equivalent,
but I<br>
> was wondering if anyone who's done this before has seen a
performance<br>
> difference between the two.<br>
><br>
> Cheers,<br>
><br>
> Damien<br>
> _______________________________________________<br>
> Ipopt mailing list<br>
> <a class="moz-txt-link-abbreviated" href="mailto:Ipopt@list.coin-or.org">Ipopt@list.coin-or.org</a><br>
> </font></tt><a moz-do-not-send="true"
href="http://list.coin-or.org/mailman/listinfo/ipopt"><tt><font
size="2">http://list.coin-or.org/mailman/listinfo/ipopt</font></tt></a><tt><font
size="2"><br>
><br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <</font></tt><a moz-do-not-send="true"
href="http://list.coin-or.org/pipermail/ipopt/attachments/20140613/8e7a79b0/attachment-0001.html"><tt><font
size="2">http://list.coin-or.org/pipermail/ipopt/attachments/20140613/8e7a79b0/attachment-0001.html</font></tt></a><tt><font
size="2">><br>
<br>
------------------------------<br>
<br>
_______________________________________________<br>
Ipopt mailing list<br>
<a class="moz-txt-link-abbreviated" href="mailto:Ipopt@list.coin-or.org">Ipopt@list.coin-or.org</a><br>
</font></tt><a moz-do-not-send="true"
href="http://list.coin-or.org/mailman/listinfo/ipopt"><tt><font
size="2">http://list.coin-or.org/mailman/listinfo/ipopt</font></tt></a><tt><font
size="2"><br>
<br>
<br>
End of Ipopt Digest, Vol 114, Issue 7<br>
*************************************<br>
<br>
</font></tt>
<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Ipopt mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Ipopt@list.coin-or.org">Ipopt@list.coin-or.org</a>
<a class="moz-txt-link-freetext" href="http://list.coin-or.org/mailman/listinfo/ipopt">http://list.coin-or.org/mailman/listinfo/ipopt</a>
</pre>
</blockquote>
<br>
</body>
</html>