There may be some sets, even user-defined sets, that MOSD does not implement differentiable projections for. Currently users would have to pass a custom projection function in that case.
As a fallback L2ODLL can formulate the projection as a JuMP model and use DiffOpt to make it differentiable...
Note we are projecting onto the dual set (since users are giving us a primal model), so the sets would have to implement that interface to be compatible.
There may be some sets, even user-defined sets, that MOSD does not implement differentiable projections for. Currently users would have to pass a custom projection function in that case.
As a fallback L2ODLL can formulate the projection as a JuMP model and use DiffOpt to make it differentiable...
Note we are projecting onto the dual set (since users are giving us a primal model), so the sets would have to implement that interface to be compatible.