Increase scipy minimize compatibility#97
Conversation
|
This is a good idea. It looks like maybe args should go to the hessian, and maybe constraints? I can merge this and add those easy enough I think if you want. |
|
Good point, I think args should also go to hessian. For constraints, I am not sure. I (or Claude) have to lookup the exact scipy api. I will also add the callback functionality from scipy. These are all features that are used in BoTorch and I want to test how POUNCE perform as drop-in replacement for SLSQP for ACQF optimization in the presence of linear constraints. |
|
I just converted to draft, I want to teach the scipy interface a few more things, I tell you when it is ready for review ;) |
|
I will probably work on a new release this weekend. Do you think you will finish it by then? |
Sorry, I totally overlooked this. I try to get it finished this week. Maybe we can get it then into the next release. |
Hi,
when starting to play around with the repo and trying to use it as drop-in replacement for
scipy.optimize.minimize, I stumbled about two things:scipy.optimize.minimizeoffer anargsargument which are arguments that are passed to the objective function on optimization. The pounce interface is currently not supporting this.scipy.optimize.minimizeoffer the option to setjac=True, in this case it expects thatfunreturns both the function value and its gradient. This is especially useful when computing the gradient via autodiff as then only one forward pass is needed.This PR adds compatibility for the
argsargument and for thejacas boolean to incease scipy compatibility. This PR is kind of a draft and needs further polishing and testing etc. It should serve as a proposal, if you find it useful, I am happy to improve it so that one can get it merged intopounce.Best,
Johannes