Source code for pyomo.contrib.solver.plugins

# ____________________________________________________________________________________
#
# Pyomo: Python Optimization Modeling Objects
# Copyright (c) 2008-2026 National Technology and Engineering Solutions of Sandia, LLC
# Under the terms of Contract DE-NA0003525 with National Technology and Engineering
# Solutions of Sandia, LLC, the U.S. Government retains certain rights in this
# software.  This software is distributed under the 3-clause BSD License.
# ____________________________________________________________________________________


from .common.factory import SolverFactory
from .solvers.ipopt import Ipopt, LegacyIpoptSolver
from .solvers.gurobi.gurobi_direct import GurobiDirect
from .solvers.gurobi.gurobi_persistent import GurobiPersistent
from .solvers.gurobi.gurobi_direct_minlp import GurobiDirectMINLP
from .solvers.highs import Highs
from .solvers.gams import GAMS
from .solvers.knitro.direct import KnitroDirectSolver


[docs] def load(): SolverFactory.register( name="ipopt", legacy_name="ipopt_v2", doc="The IPOPT NLP solver" )(Ipopt, LegacyIpoptSolver) SolverFactory.register( name="gurobi_persistent", legacy_name="gurobi_persistent_v2", doc="Persistent interface to Gurobi", )(GurobiPersistent) SolverFactory.register( name="gurobi_direct", legacy_name="gurobi_direct_v2", doc="Direct (scipy-based) interface to Gurobi", )(GurobiDirect) SolverFactory.register( name='gurobi_direct_minlp', legacy_name='gurobi_direct_minlp', doc='Direct interface to Gurobi accommodating general MINLP', )(GurobiDirectMINLP) SolverFactory.register( name="highs", legacy_name="highs", doc="Persistent interface to HiGHS" )(Highs) SolverFactory.register(name='gams', legacy_name='gams_v2', doc='Interface to GAMS')( GAMS ) SolverFactory.register( name="knitro_direct", legacy_name="knitro_direct", doc="Direct interface to KNITRO solver", )(KnitroDirectSolver)