diff --git a/motile/solver.py b/motile/solver.py index 460802b..d62dc5c 100644 --- a/motile/solver.py +++ b/motile/solver.py @@ -12,6 +12,7 @@ from .ssvm import fit_weights logger = logging.getLogger(__name__) +ILPY_V03 = ilpy.__version__.split(".")[:2] >= ["0", "3"] if TYPE_CHECKING: from motile.costs import Costs @@ -152,7 +153,12 @@ def solve(self, timeout: float = 0.0, num_threads: int = 1) -> ilpy.Solution: self.ilp_solver.set_verbose(False) - self.solution, message = self.ilp_solver.solve() + solution = self.ilp_solver.solve() + + if ILPY_V03: + self.solution, message = solution, solution.get_status() + else: + self.solution, message = solution if message: logger.info("ILP solver returned with: %s", message)