[Ipopt] conditional gradient

Nicolas Essis-Breton nicolasessisbreton at gmail.com
Mon Nov 27 10:37:48 EST 2017


Hi,

I would like to experiment with conditional gradient in ipopt.
Normal ipopt flow is:

query user hessian -> find search direction -> filter line search

I would like to do:

query user hessian -> find search direction -> let user modify search
direction -> filter line search

I can overload IpoptAlgorithm::ComputeSearchDirection, but is this enough?
For example, for a second-order correction
FilterLSAcceptor::TrySecondOrderCorrection recalculates the search
direction.
Would it be better to overload PDSystemSolver::Solve?

The idea of conditional gradient is to modify any computed search
direction, before it is actually used by the optimization algorithm.
This is sometimes called 'projected gradient' or 'frank-wolfe' method.
To be sure I have overloaded all the necessary parts, your help would be
great.

Thanks,

Nicolas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20171127/36afc465/attachment.html>


More information about the Ipopt mailing list