<div dir="ltr"><div>Thanks Barry,<br><br></div>1) Say this is my problem:<br><div><br></div><div>min 1/2 x^T*H*x - x^T*f</div><div>s.t. x_lower < x < x_upper</div><div><br></div><div>If i want to use any of the following TAO complementarity solvers:</div><div><br></div><div>- ASILS</div><div>- ASFLS</div><div>- SSILS</div><div>- SSFLS</div><div><br></div><div>I would need these routines:</div><div><br></div><div>TaoSetConstraintsRoutine(tao,c,formGradient(...),NULL)</div><div>TaoSetJacobianRoutine(tao,J,J,formHessian(...),NULL)</div><div>TaoSetVariableBounds(tao,x_lower,x_upper)</div><div><br></div><div>where formGradient() would return c = H*x - f</div><div>and formHessian would return J = H</div><div><br></div><div>Is this correct?</div><div><br></div><div>2) If so, then what exactly is the difference between these TAO complementarity solvers and the SNESVINEWTONSSLS solver? From the online manuals and documentation, both claim to be variational inequality solvers.</div><div><br></div><div>Thanks!</div><div>Justin</div><div> </div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Jun 11, 2016 at 12:19 PM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
   Justin,<br>
<br>
For bound constrained optimization problems, there is:<br>
<br>
 TRON -- a truncated Newton method from your favorite inventor of such methods<br>
 BLMVM -- a limited memory quasi-Newton method for bound constraints (projected quasi-Newton)<br>
<br>
There used to be the KT solvers that was just a wrapper around the complementarity<br>
methods.  Jason -- what happened to this?<br>
<br>
Anyways, from the gradient and Hessian (or Hessian vector product), you can apply the<br>
complementarity solvers to the optimality conditions:<br>
<br>
 ASLS -- active set family (e.g. projected newton)<br>
 SSLS -- semismooth family<br>
<br>
For more general constraints, there is:<br>
<br>
 IPM -- interior-point method<br>
<br>
I have not used it or tested it though.<br>
<br>
For PDE constrained problems, there is:<br>
<br>
 LCL -- linearly constrained augmented Lagrangian.<br>
<br>
<br>
ROL has imitations either directly copied from our code or written from our papers.<br>
<div class="HOEnZb"><div class="h5"><br>
> On Jun 10, 2016, at 5:57 PM, Justin Chang <<a href="mailto:jychang48@gmail.com">jychang48@gmail.com</a>> wrote:<br>
><br>
> Hi all,<br>
><br>
> Does PETSc currently have any of these solvers for bounded constraint problems:<br>
><br>
> 1) Semismooth Newton methods (aka primal-dual active-set methods)<br>
> 2) Projected Newton methods<br>
><br>
> Trilinos' Rapid Optimization Library (ROL) has them, and I have seen papers and books claiming that these solvers are state-of-the-art.<br>
><br>
> I see there's SNESVINEWTONSSLS and TAOGPCG but are these the same as the above methods?<br>
><br>
> Thanks,<br>
> Justin<br>
><br>
><br>
><br>
<br>
</div></div></blockquote></div><br></div>