import CPLEX as CPLEX_con from cvxpy.reductions.solvers.conic_solvers.nag_conif \ import NAG as NAG_con from cvxpy.reductions.solvers.conic_solvers.scip_conif \ import SCIP as SCIP_con from cvxpy.reductions.solvers.conic_solvers.scipy_conif \ import SCIPY as SCIPY_con # QP interfaces from cvxpy.reductions.solvers.qp_solvers.osqp_qpif import OSQP as OSQP_qp from cvxpy.reductions.solvers.qp_solvers.gurobi_qpif import GUROBI as GUROBI_qp from cvxpy.reductions.solvers.qp_solvers.cplex_qpif import CPLEX as CPLEX_qp from cvxpy.reductions.solvers.qp_solvers.xpress_qpif import XPRESS as XPRESS_qp solver_conic_intf = [DIFFCP_con(), ECOS_con(), CVXOPT_con(), GLPK_con(), GLPK_MI_con(), CBC_con(), SCS_con(), GUROBI_con(), MOSEK_con(), CPLEX_con(), NAG_con(), XPRESS_con(), SCIP_con(), SCIPY_con(), ECOS_BB_con()] solver_qp_intf = [OSQP_qp(), GUROBI_qp(), CPLEX_qp(), XPRESS_qp() ] SOLVER_MAP_CONIC = {solver.name(): solver for solver in solver_conic_intf} SOLVER_MAP_QP = {solver.name(): solver for solver in solver_qp_intf} # CONIC_SOLVERS and QP_SOLVERS are sorted in order of decreasing solver # preference. QP_SOLVERS are those for which we have written interfaces # and are supported by QpSolver.
from cvxpy.reductions.solvers.conic_solvers.scipy_conif import ( SCIPY as SCIPY_con, ) from cvxpy.reductions.solvers.conic_solvers.scs_conif import SCS as SCS_con from cvxpy.reductions.solvers.conic_solvers.xpress_conif import ( XPRESS as XPRESS_con, ) from cvxpy.reductions.solvers.qp_solvers.cplex_qpif import CPLEX as CPLEX_qp from cvxpy.reductions.solvers.qp_solvers.gurobi_qpif import GUROBI as GUROBI_qp # QP interfaces from cvxpy.reductions.solvers.qp_solvers.osqp_qpif import OSQP as OSQP_qp from cvxpy.reductions.solvers.qp_solvers.xpress_qpif import XPRESS as XPRESS_qp solver_conic_intf = [ DIFFCP_con(), ECOS_con(), CVXOPT_con(), GLPK_con(), GLPK_MI_con(), CBC_con(), SCS_con(), GUROBI_con(), MOSEK_con(), CPLEX_con(), NAG_con(), XPRESS_con(), SCIP_con(), SCIPY_con(), ECOS_BB_con() ] solver_qp_intf = [OSQP_qp(), GUROBI_qp(), CPLEX_qp(), XPRESS_qp()] SOLVER_MAP_CONIC = {solver.name(): solver for solver in solver_conic_intf}
from cvxpy.reductions.solvers.conic_solvers.xpress_conif \ import XPRESS as XPRESS from cvxpy.reductions.solvers.conic_solvers.elemental_conif \ import Elemental as Elemental_con from cvxpy.reductions.solvers.conic_solvers.mosek_conif \ import MOSEK as MOSEK_con from cvxpy.reductions.solvers.conic_solvers.cplex_conif \ import CPLEX as CPLEX_con # QP interfaces from cvxpy.reductions.solvers.qp_solvers.osqp_qpif import OSQP as OSQP_qp from cvxpy.reductions.solvers.qp_solvers.gurobi_qpif import GUROBI as GUROBI_qp from cvxpy.reductions.solvers.qp_solvers.cplex_qpif import CPLEX as CPLEX_qp solver_conic_intf = [ECOS_con(), ECOS_BB_con(), CVXOPT_con(), GLPK_con(), XPRESS(), GLPK_MI_con(), CBC_con(), SCS_con(), SuperSCS_con(), GUROBI_con(), Elemental_con(), MOSEK_con(), CPLEX_con()] solver_qp_intf = [OSQP_qp(), GUROBI_qp(), CPLEX_qp() ] SOLVER_MAP_CONIC = {solver.name(): solver for solver in solver_conic_intf} SOLVER_MAP_QP = {solver.name(): solver for solver in solver_qp_intf} # CONIC_SOLVERS and QP_SOLVERS are sorted in order of decreasing solver # preference. QP_SOLVERS are those for which we have written interfaces # and are supported by QpSolver. CONIC_SOLVERS = [s.MOSEK, s.ECOS, s.ECOS_BB, s.SUPER_SCS, s.SCS, s.GUROBI, s.GLPK, s.XPRESS,