-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add HiGHS as a solver #224
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've read through the code, but haven't run it (or followed the instructions in the documents to test implementation - which I'd ideally like to do).
Looks great!
Could you fix the conflicts @trevorb1, and then I'll try to follow through the instructions to test the functionality as you've written it, just to sense check on my own laptop before we merge and release!
Thanks for reviewing, @willu47! :) I updated this PR to address conflicts. I updated the docs to (hopefully) make them clearer. Also, I was doing a bit of testing with HiGHS and I guess consistent reported columns are not guaranteed. For example, the If anything is unclear in this PR, please just let me know! |
Description
In this PR I add functionality to process HiGHS solution files. Specifically, I have:
ReadHighs
class as a read strategyReadHighs
classA couple other notes:
HiGHS Format
in the ticket (solution style1
in HiGHS docs). Motivation is that it only requires one file as an argument and has dual values in this file for if we eventually want to extract out these values.1
requires us to pass in an option file to the solver from the command line. A little cumbersome, but not a big deal (and this is documented!)highspy
, but I chose not to. It is probably a little more efficient to use their package for bulk processing, but then that adds a dependency tootoole
highspy
andotoole
's python API to process a solution file.Issue Ticket Number
Closes #218
Documentation
I have updated the following pages:
otoole
being able to process HiGHS nowhighspy
Instructions for setting up HiGHS to use from the command line may need to be improved a bit. For example, I had to add HiGHS executable to my
.bashrc
via the following command, that I did not include:I don't think the instructions should necessarily turn into a "how to setup solvers" guide; as there are better resources than
otoole
for that. However, it can be kinda tedious getting everything working. Additionally, I kinda glossed over install for Windows as I havent done that!