-
-
Notifications
You must be signed in to change notification settings - Fork 519
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
Construct an interactive_simplex_method.LPDictionary from a MixedIntegerLinearProgram #18734
Comments
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Author: Aedi Wang |
Commit: |
comment:9
Hello, You assume in this code that the backend is GLPK. Also, I have to say that I do not like this That woud lead us to make function like Also, return Nathann P.S.: Oh. And what about renaming "construct_interactive_lp" to "interactive_linear_program"? We usually try to write the long names in Sage. |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
comment:12
Hi Nathann,
The code is indeed GLPK-specific (explicit testing for it has been added) -- more general support would require designing a common interface to basis status, which is #18688. |
comment:13
Hello !
Thanks!
Okayokayokay. For as long as a meaningful exception is raised when the backend is not one that the code handle, it's fine by me. Especially since in this case the 'right backend' is GLPK. It's more awkward when the only backend that supports a feature is one that Sage does not ship by default. Nathann |
comment:14
Hello, There are some possible improvements in the documentation:
For all of these, look at the reference manual. Vincent |
comment:41
Changed the example so that the optimal dictionary is not dual degenerate, so the test should now work. Also removed the "get_variables" method which had creeped in again. Needs review. New commits:
|
comment:42
And there should be test(s) for non-default value(s) of the parameter |
comment:43
I also do not like that the code seems to assume that the default backend is always GLPK. If this is true this needs to be fixed. One might run
to see the default. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
Changed author from Aedi Wang to Aedi Wang, Matthias Koeppe |
comment:46
you don't seem to need
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:48
ok, good :) |
comment:49
sorry, please have a look at the patchbots' output:
in mip.pyx should be
|
comment:50
after you fix this little typo, please feel free to set the ticket to positive review. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:52
Fixed, it should have been "EXAMPLE::" actually. Thanks for reviewing, Dima. |
Reviewer: Dima Pasechnik |
For teaching, presentation, and debugging purposes, it could be powerful
to have a function that sets up a
sage.numerical.interactive_simplex_method.LPDictionary
corresponding to the current basis of a
MixedIntegerLinearProgram
(with all variables real).The plan is as follows:
MixedIntegerLinearProgram
.construct_interactive_lp() return an interactive LP (by querying the backend for problem data) and a list of basic variables (by querying the backend for col_stat, row_stat)LPDictionary
orLPRevisedDictionary
by invoking thedictionary
orrevised_dictionary
methods.#18685 added the prerequisite basis status information for the case of the GLPK backend. #18763 did the same for the COIN backend.
See also: #18688, #18733
Follow-up: #18804 (LPBackendDictionary)
Depends on #18685
Depends on #18732
CC: @nathanncohen @yuan-zhou @uduse @novoselt @dimpase @videlec
Component: numerical
Author: Aedi Wang, Matthias Koeppe
Branch/Commit:
e8ffa20
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/18734
The text was updated successfully, but these errors were encountered: