Skip to content

OptimizationBase v2.0 plan #62

Closed
Closed
@Vaibhavdixit02

Description

@Vaibhavdixit02

The current AD implementation here (at least) lacks these features/suffers from these issues -

  1. MOAR!! oracles: Add lag_h support to FiniteDiff, MTK and Enzyme AD implementations #10, jvp and vjp for constraints, Add stochastic oracles #61, Add Proximal oracles #50
  2. Redundant function evaluations: Evaluate functional and gradient simultaneously #22
  3. Consistent support for exotic array types: Static arrays + autodiff #14 Real sparsity support in Enzyme backend #7
  4. Some more backends: add PolyesterForwardDiff as an AD backend #21 Wrap HyperHessians.jl as an AD backend #32 and FastDifferentiation
  5. Defaults
  6. Mixing AD backends when it makes sense

The reason these are outstanding has been lower priority and tediousness due to having to do it for multiple backends all the time. Hence, the emergence of DI is a timely solution for a bunch of these.

So my aim with #54 has been to start fleshing out some of the ideas of how these would look, we obviously can't expect DI to be the solution for everything but some of these are right up in its alley and it gives an excuse to spend time rethinking the implementation.

I plan to address #10, jvp and vjp for constraints, points 2, 3, #21 and FastDifferentiation, 5, and 6 in #54. I am hopeful to get this in by (at the absolute maximum) end of summer.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions