Skip to content

optlang interface for the HiGHS solver - #282

Open
axelvonkamp wants to merge 1 commit into
opencobra:masterfrom
axelvonkamp:highs
Open

optlang interface for the HiGHS solver#282
axelvonkamp wants to merge 1 commit into
opencobra:masterfrom
axelvonkamp:highs

Conversation

@axelvonkamp

@axelvonkamp axelvonkamp commented Aug 6, 2026

Copy link
Copy Markdown

supports LP and QP, but QP performance is not as good as OSQP
possible long-term alternative for GLPK, which seems not to be actively developed any more
no integer variables/MIP support yet, but in principle possible with HiGHS
test script is included

supports LP and QP, but QP performance is as good as OSQP
@cdiener

cdiener commented Aug 10, 2026

Copy link
Copy Markdown
Member

This is awesome thanks so much. I also was planning this to eventually replace GLPK as reference implementation because it actually supports all solver types (LP, QP, MIP). Will take me a bit to go through everything but I am excited for it.

@axelvonkamp

axelvonkamp commented Aug 11, 2026

Copy link
Copy Markdown
Author

This is awesome thanks so much. I also was planning this to eventually replace GLPK as reference implementation because it actually supports all solver types (LP, QP, MIP). Will take me a bit to go through everything but I am excited for it.

Well, you can also thank Claude for it ;-). I mostly directed the implementation towards using the solver object as ground truth and to make it possible to set up everything without the need for symbolic expressions (which still can be used if required).
I also let Claude implement a SCIP interface which in principle works, but it is not as streamlined as the HiGHS interface. If you are interested I can make another pull request for that, but it does not come with a test suite at this stage. I've decided to focus on HiGHS because it has, in my opinion, a cleaner Python interface, and it also drops the GIL when solving.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants