[petsc-users] Integrating TAO into SNES and TS

Justin Chang jchang27 at uh.edu
Thu Apr 2 18:39:51 CDT 2015


Hi everyone,

I have a two part question regarding the integration of the following
optimization problem

min 1/2 u^T*K*u + u^T*f
S.T. u >= 0

into SNES and TS

1) For SNES, assuming I am working with a linear FE equation, I have the
following algorithm/steps for solving my problem

a) Set an initial guess x
b) Obtain residual r and jacobian A through functions SNESComputeFunction()
and SNESComputeJacobian() respectively
c) Form vector b = r - A*x
d) Set Hessian equal to A, gradient to A*x, objective function value to
1/2*x^T*A*x + x^T*b, and variable (lower) bounds to a zero vector
e) Call TaoSolve

This works well at the moment, but my question is there a more "efficient"
way of doing this? Because with my current setup, I am making a rather bold
assumption that my problem would converge in one SNES iteration without the
bounded constraints and does not have any unexpected nonlinearities.

2) How would I go about doing the above for time-stepping problems? At each
time step, I want to solve a convex optimization subject to the lower
bounds constraint. I plan on using backward euler and my resulting jacobian
should still be compatible with the above optimization problem.

Thanks,

-- 
Justin Chang
PhD Candidate, Civil Engineering - Computational Sciences
University of Houston, Department of Civil and Environmental Engineering
Houston, TX 77004
(512) 963-3262
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20150402/cb4385a5/attachment.html>


More information about the petsc-users mailing list