New tool: critical point finder

25 views
Skip to first unread message

Nicolas Boumal

unread,
Jan 26, 2017, 3:28:46 PM1/26/17
to Manopt
Dear users,

A new tool was added to Manopt on the GitHub version:

This tool makes it easy to find critical points of an optimization problem. This can be useful for research, when investigating saddle points in particular.

Given a problem structure,

newproblem = criticalpointfinder(problem);

creates a new Manopt problem whose cost function is (half) the squared norm of the gradient of the original problem. Thus, critical points of problem are global optima of newproblem, with cost value 0. A random critical point can then be found by calling any solver on newproblem, such as for example:

[x, fx] = trustregions(newproblem);

(One must of course check afterwards that the returned x is indeed a critical point, by checking that sqrt(2*fx)(the gradient norm) is close to 0.) If an initial guess is passed to trustregions as second input, it is of course also possible to aim for a critical point in a particular neighborhood.

We hope this proves useful.

Best,
The Manopt team
Reply all
Reply to author
Forward
0 new messages