Skip to content

ConjugateGradient gives rise to NaNs if the line search returns zero step size #43

Description

@leburgel

For difficult or ill-conditioned optimization problems, the line search can sometimes return a zero step size α = 0.0. While this is always leads to issues, in the particular case of the ConjugateGradient algorithm it seems this can lead to β = NaN for several flavors of the algorithm. In particular for the default HagerZhang flavor, this circumvents the β < η check that was already in place since this returns false if β = NaN.

Addressing this won't solve the clear issue with the underlying optimization, but it would be helpful if this was flagged in some way. This was observed in the case of Riemannian optimization of MPS, where it resulted in some LAPACKException that was quite distracting from the issue at hand.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions