Skip to content

Add highs backend (WIP)#856

Draft
brynpickering wants to merge 2 commits into
mainfrom
feat/highs-backend
Draft

Add highs backend (WIP)#856
brynpickering wants to merge 2 commits into
mainfrom
feat/highs-backend

Conversation

@brynpickering
Copy link
Copy Markdown
Member

Fixes #822

TODO

  • create verbose string representations programmatically (highs does not use standard math expressions by default)
  • fix infeasibilities in operate mode, likely caused by incorrect col/row deletion when updating params, but could also be due to some presolve/warmstarting issues

Summary of changes in this pull request

  • New Highs backend interface

Reviewer checklist

  • Test(s) added to cover contribution
  • Documentation updated
  • Changelog updated
  • Coverage maintained or improved

@brynpickering brynpickering marked this pull request as draft December 16, 2025 23:14
@codecov
Copy link
Copy Markdown

codecov Bot commented Dec 16, 2025

Codecov Report

❌ Patch coverage is 26.29310% with 171 lines in your changes missing coverage. Please review.
✅ Project coverage is 93.48%. Comparing base (31300db) to head (2b3de5e).

Files with missing lines Patch % Lines
src/calliope/backend/highs_backend_model.py 25.55% 165 Missing and 4 partials ⚠️
src/calliope/backend/__init__.py 33.33% 1 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #856      +/-   ##
==========================================
- Coverage   96.70%   93.48%   -3.22%     
==========================================
  Files          38       39       +1     
  Lines        4851     5081     +230     
  Branches      630      669      +39     
==========================================
+ Hits         4691     4750      +59     
- Misses         65      231     +166     
- Partials       95      100       +5     
Files with missing lines Coverage Δ
src/calliope/backend/expression_parser.py 92.99% <100.00%> (ø)
src/calliope/schemas/config_schema.py 100.00% <100.00%> (ø)
src/calliope/backend/__init__.py 90.00% <33.33%> (-10.00%) ⬇️
src/calliope/backend/highs_backend_model.py 25.55% <25.55%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

Support HiGHS solver either via new backend interface or by relying on linopy

1 participant