Skip to content

GUROBI solver not working #28

Description

@danolson1

Describe the bug
The documentation says the gurobi solver is supported, but when I try to use it, I get an error:

ERROR
test_minimal_cut_sets (__main__.ToyMetabolicNetworkTests.test_minimal_cut_sets) ... ERROR

======================================================================
ERROR: test_elementary_flux_modes_support (__main__.ToyMetabolicNetworkTests.test_elementary_flux_modes_support)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "[C:\Users\d89659k\AppData\Local\Temp\ipykernel_38872\4218544364.py", line 33](file:///C:/Users/d89659k/AppData/Local/Temp/ipykernel_38872/4218544364.py#line=32), in test_elementary_flux_modes_support
    test = {self.convert_solution_to_string(sol) for sol in self.enumerate_elementary_flux_modes()}
                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "[C:\Users\d89659k\AppData\Local\Temp\ipykernel_38872\4218544364.py", line 19](file:///C:/Users/d89659k/AppData/Local/Temp/ipykernel_38872/4218544364.py#line=18), in enumerate_elementary_flux_modes
    ksh = KShortestEnumerator(lsystem)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "[c:\users\d89659k\documents\github\cobamp\src\cobamp\algorithms\kshortest.py", line 142](file:///C:/users/d89659k/documents/github/cobamp/src/cobamp/algorithms/kshortest.py#line=141), in __init__
    self.__set_model_parameters()
  File "[c:\users\d89659k\documents\github\cobamp\src\cobamp\algorithms\kshortest.py", line 231](file:///C:/users/d89659k/documents/github/cobamp/src/cobamp/algorithms/kshortest.py#line=230), in __set_model_parameters
    parset_func[self.model.solver]()
  File "[c:\users\d89659k\documents\github\cobamp\src\cobamp\algorithms\kshortest.py", line 269](file:///C:/users/d89659k/documents/github/cobamp/src/cobamp/algorithms/kshortest.py#line=268), in __set_model_parameters_gurobi
    instance.params.MIPAbsGap = 0
    ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "src\\gurobipy\\param.pxi", line 269, in gurobipy._core.ParamClass.__setattr__
  File "src\\gurobipy\\env.pxi", line 375, in gurobipy._core.Env.setParam
gurobipy._exception.GurobiError: Unknown parameter 'MIPAbsGap'

======================================================================
ERROR: test_minimal_cut_sets (__main__.ToyMetabolicNetworkTests.test_minimal_cut_sets)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "[C:\Users\d89659k\AppData\Local\Temp\ipykernel_38872\4218544364.py", line 39](file:///C:/Users/d89659k/AppData/Local/Temp/ipykernel_38872/4218544364.py#line=38), in test_minimal_cut_sets
    test = {self.convert_solution_to_string(sol) for sol in self.enumerate_minimal_cut_sets()}
                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "[C:\Users\d89659k\AppData\Local\Temp\ipykernel_38872\4218544364.py", line 26](file:///C:/Users/d89659k/AppData/Local/Temp/ipykernel_38872/4218544364.py#line=25), in enumerate_minimal_cut_sets
    ksh = KShortestEnumerator(dsystem)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "[c:\users\d89659k\documents\github\cobamp\src\cobamp\algorithms\kshortest.py", line 142](file:///C:/users/d89659k/documents/github/cobamp/src/cobamp/algorithms/kshortest.py#line=141), in __init__
    self.__set_model_parameters()
  File "[c:\users\d89659k\documents\github\cobamp\src\cobamp\algorithms\kshortest.py", line 231](file:///C:/users/d89659k/documents/github/cobamp/src/cobamp/algorithms/kshortest.py#line=230), in __set_model_parameters
    parset_func[self.model.solver]()
  File "[c:\users\d89659k\documents\github\cobamp\src\cobamp\algorithms\kshortest.py", line 269](file:///C:/users/d89659k/documents/github/cobamp/src/cobamp/algorithms/kshortest.py#line=268), in __set_model_parameters_gurobi
    instance.params.MIPAbsGap = 0
    ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "src\\gurobipy\\param.pxi", line 269, in gurobipy._core.ParamClass.__setattr__
  File "src\\gurobipy\\env.pxi", line 375, in gurobipy._core.Env.setParam
gurobipy._exception.GurobiError: Unknown parameter 'MIPAbsGap'

To Reproduce
Steps to reproduce the behavior:

  1. Run the toy model test
  2. Replace 'CPLEX' with 'GUROBI'

Expected behavior
No error.

Screenshots
n/a

Desktop (please complete the following information):

  • OS: Windows 10
  • Browser: Chrome
  • Version 133.0.6943

Additional context
The note about solvers on the introduction page says, "gurobi: no explicit indicator varaibles." I don't understand what this means. Additional clarification about when to use a particular solver would be helpful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions