ERROR: The provided `optimizer_constructor` is invalid

I can’t reproduce your code because I don’t know what the get_ipopt function is, etc.

I haven’t tested locally so I might have made a typo, but something like this should work:

using JuMP, Alpine, Ipopt, Gurobi, Juniper

gurobi = optimizer_with_attributes(Gurobi.Optimizer)
ipopt = optimizer_with_attributes(Ipopt.Optimizer)
juniper = optimizer_with_attributes(
    Juniper.Optimizer,
    "nl_solver" => ipopt,
    "mip_solver" => gurobi,
)
alpine = optimizer_with_attributes(
    Alpine.Optimizer,
    "mip_solver" => gurobi,
    "nl_solver" => ipopt
    "minlp_solver" => juniper,
)
model = Model(alpine)
1 Like