Commit 41233a59 authored by Theo Christiaanse's avatar Theo Christiaanse
Browse files

update for pulp21

parent 9da86828
Loading
Loading
Loading
Loading
Loading
+14 −11
Original line number Diff line number Diff line
@@ -14,6 +14,9 @@ import warnings
if pulp.__version__ >= '2.1':
    import pulp.apis.cplex_api as cplex
    import pulp.apis.glpk_api as glpk
    import pulp.apis.choco_api as choco
    import pulp.apis.gurobi_api as gurobi
    import pulp.apis.coin_api as cbc
else:
    import pulp.solvers as solvers
    warnings.warn('You are using pulp 2.0 or lower, pulp.apis.core has been changed to pulp.sovers automatically')
@@ -67,35 +70,35 @@ def solve(

    if solver == "glpk":
        if solver_path!=None:
            solver = pulp.solvers.GLPK(msg=verbose, path=solver_path, options=options)
            solver = glpk.GLPK(msg=verbose, path=solver_path, options=options)
        else:
            print("solver_path is not set, going to default, without options")
            # This catches the error if glpk_path is not set
            solver = pulp.solvers.GLPK(msg=verbose)
            solver = glpk.GLPK(msg=verbose)
    elif solver == "glpk-cluster":
        if solver_path!=None:
            solver = pulp.solvers.GLPK(msg=verbose, path=solver_path, options=options)
            solver = glpk.GLPK(msg=verbose, path=solver_path, options=options)
        else:
            print("solver_path is not set, going to default.")
            # This catches the error if glpk_path is not set
            solver = pulp.solvers.GLPK(msg=verbose, path="/home/theochri/ENV/bin/glpsol")
            solver = glpk.GLPK(msg=verbose, path="/home/theochri/ENV/bin/glpsol")
    elif solver == "cplex":
        solver = pulp.solvers.CPLEX(msg=verbose)
        solver = cplex.CPLEX(msg=verbose)
    elif solver == "gurobi":
        if solver_path!=None:
            solver = pulp.solvers.GUROBI_CMD(msg=verbose,path=solver_path)
            solver = gurobi.GUROBI_CMD(msg=verbose,path=solver_path)
        else:
            solver = pulp.solvers.GUROBI_CMD(msg=verbose)
            solver = gurobi.GUROBI_CMD(msg=verbose)
    elif solver == "cbc":
        if solver_path!=None:
            solver = pulp.solvers.PULP_CBC_CMD(msg=verbose,path=solver_path)
            solver = cbc.PULP_CBC_CMD(msg=verbose,path=solver_path)
        else:
            solver = pulp.solvers.PULP_CBC_CMD(msg=verbose)
            solver = cbc.PULP_CBC_CMD(msg=verbose)
    elif solver == "choco":
        if solver_path!=None:
            solver = pulp.CHOCO_CMD(msg=verbose,path=solver_path)
            solver = choco.CHOCO_CMD(msg=verbose,path=solver_path)
        else:
            solver = pulp.CHOCO_CMD(msg=verbose)
            solver = choco.CHOCO_CMD(msg=verbose)
    else:
        raise ValueError(f"Unsupported solver: {solver}")