mathnet-numerics icon indicating copy to clipboard operation
mathnet-numerics copied to clipboard

Modified newtons method

Open strMikhailPotapenko opened this issue 4 months ago • 6 comments

My proposed solution which resolves #1067.

I added an option to Newton Minimizer which forces the Hessian to be positive definite by reversing negative eigenvalues. This method is described in

Philip E. Gill, Walter Murray, and Margaret H. Wright, Practical Optimization, 1981, 107–8.

I also added a unit test, FindMinimum_SixHumpCamel_IndefiniteHessian(), to demonstrate the benefit of this modification. If the optional argument is changed to HessianModifiers.None then the test fails.

Please see the issue for further illustration of the use case.

I made the optional argument an enum because this method of forcing positive definiteness can be improved upon in terms of efficiency and this gives some future developer the hooks to be able to do so.

Regards, Mikhail

strMikhailPotapenko avatar Mar 01 '24 19:03 strMikhailPotapenko

@cdrnet, Would it be possible to get this pull request reviewed?

strMikhailPotapenko avatar Mar 15 '24 14:03 strMikhailPotapenko

@jvangael, @jkalias, @JohanLarsson, I think you are also listed as member of the Math.Net team. Would any of you be willing to consider this pull request?

strMikhailPotapenko avatar Mar 25 '24 17:03 strMikhailPotapenko

@strMikhailPotapenko I would be more than happy to. The problem is that I can only merge PRs for the MathNet.Spatial project, for the Numerics only @cdrnet has the relevant rights to.

jkalias avatar Mar 25 '24 21:03 jkalias

@jkalias Ah I didn't know that, sorry about that and thank you for the response.

Just looking at open issues and pull requests it does seem like there isn't a lot of activity with this repo, which is too bad because I have been using this library quite often lately and have been pretty satisfied with it. Do you happen to have any information on the plans of @cdrnet as far as actively maintaining this repo or any way to request that information from him?

strMikhailPotapenko avatar Mar 25 '24 21:03 strMikhailPotapenko

@strMikhailPotapenko nothing to be sorry about :)

I have no information on whether/when @cdrnet will continue to actively maintain this repo. On the other hand, it's an open source project, so there is no obligation to do so, and rightfully so.

jkalias avatar Mar 28 '24 19:03 jkalias

@jkalias Very true!

strMikhailPotapenko avatar Mar 28 '24 19:03 strMikhailPotapenko