Closed cdiener closed 1 year ago
Btw, I saw that both osqp and highs are available as conda packages, so maybe our recommendation for Mac & Windows platforms could be to use conda?
Btw, I saw that both osqp and highs are available as conda packages, so maybe our recommendation for Mac & Windows platforms could be to use conda?
I wish, but unfortunately the highs conda package is only the compiled (C) library. It does not include highspy (the Python interface).
I did notice in the CI though that the current wheels actually do work on Windows. So it's only MAC that does not work. But I do think this will be fixed in the coming months. I do know the HIGHS team is working on fixing the wheels.
This enables the hybrid solver from optlang.
Example
Things to consider
There is currently an issue with the wheels for highspy. The wheels on PyPI only work with linux at the moment. There are some candiates here in the artifacts. Installing from source will work on all OSs. Broken wheels are handled by optlang and if code is run on a platform with a broken highspy wheel it will not be listed as an available solver.
This is not specific to the hybrid interface but in some case one has to set the configuration for LP/QP methods before switching if the next solver does not support he same methods. Maybe this should be handled more gracefully in optlang by using the default and issuing a warning instead of raising an error.
HIGHS and OSQP only support getting the full set of primals/duals at once, so there is no good way of getting primals for only one variable. Right now, the interface will thus obtain the full solution on every solve, which makes basis recycling a bit slower. So it is not the best solver for FVA or gene deletions.
Is it okay if I also fix the
minimal_medium
pandas deprecation warning here?Full test and benchmark results