Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RFC] API planning #3

Open
Vaibhavdixit02 opened this issue Feb 29, 2024 · 2 comments
Open

[RFC] API planning #3

Vaibhavdixit02 opened this issue Feb 29, 2024 · 2 comments

Comments

@Vaibhavdixit02
Copy link
Member

Broad Scope

This package will serve as the source for line search algorithms in SciML packages for nonlinear and optimization solvers. Multiple dispatch should be ensured so that downstream packages can use this package almost as a blackbox.

File/Code Organisation

  1. An implementation of the Wolfe and Goldstein conditions - each as a struct. Associated dispatches for each for checking.
  2. Each linesearch method will be defined as a struct with all the method specific hyperparameters and the common ones are arguments to the associated method dispatches
  3. A kernel (function) for the method to be called in a loop, basically the update equation for the method.
  4. Termination checking, no errors should be thrown but a nothing/NaN return when failure happens.
  5. Extensions for supported AD packages.
@avik-pal
Copy link
Member

We should also allow custom jac/jvp/vjp functions to be provided via kwargs and ignore them if they are not needed in the algorithm.

@Xiaoyi-Qu
Copy link

Xiaoyi-Qu commented Mar 22, 2024

I notice that line search method is implemented in NonlinearSolve.jl. So, I think we can consider integrating this part into LineSearch.jl as well if possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants