Opened 16 months ago

Last modified 3 months ago

#32282 new enhancement

Add MILP solver backends for HiGHS via scipy.optimize.linprog — at Version 9

Reported by: Matthias Köppe Owned by:
Priority: major Milestone: sage-9.8
Component: linear programming Keywords:
Cc: Dima Pasechnik, Sébastien Labbé, David Coudert Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description (last modified by Matthias Köppe)

scipy 1.6 added a vendored copy of the HiGHS LP solvers. https://github.com/scipy/scipy/tree/master/scipy/optimize/_highs/src

https://docs.scipy.org/doc/scipy/reference/optimize.linprog-highs.html

We should start using them.

scipy 1.7 makes dual values available - https://docs.scipy.org/doc/scipy/reference/release.1.7.0.html#scipy-optimize-improvements

https://www.maths.ed.ac.uk/hall/HiGHS/ also has MIP, but this is not yet exposed in scipy.optimize.

highs also has a rudimentary python interface in its own source tree - https://github.com/ERGO-Code/HiGHS/blob/master/src/interfaces/highs_python_api.py

A possible route for a high-level interface goes through CVXPY (#31962)

For an interface that provides access to tableau data, as of 2022-04, neither scipy nor the OsiHiGHSSolverInterface provides the necessary methods:

Part of Meta-ticket #26511: Use Python optimization interfaces: CVXPY, or-tools, PuLP, Pyomo, cylp...

Change History (9)

comment:1 Changed 16 months ago by Matthias Köppe

Description: modified (diff)

comment:2 Changed 16 months ago by Matthias Köppe

Description: modified (diff)

comment:3 Changed 16 months ago by Matthias Köppe

Description: modified (diff)

comment:4 Changed 12 months ago by Matthias Köppe

Milestone: sage-9.5sage-9.6

comment:5 Changed 10 months ago by Matthias Köppe

Cc: Sébastien Labbé David Coudert added
Description: modified (diff)
Summary: Add LP solver backends for HiGHS via scipy.optimize.linprogAdd MILP solver backends for HiGHS via scipy.optimize.linprog

comment:6 Changed 9 months ago by Matthias Köppe

Milestone: sage-9.6sage-9.7

comment:7 Changed 9 months ago by Matthias Köppe

Description: modified (diff)

comment:8 Changed 8 months ago by Matthias Köppe

Description: modified (diff)

comment:9 Changed 8 months ago by Matthias Köppe

Description: modified (diff)
Note: See TracTickets for help on using tickets.