-
-
Notifications
You must be signed in to change notification settings - Fork 384
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
new solver: CHOCO #169
new solver: CHOCO #169
Conversation
Great news I will try and look at this over Easter and hopefully do a release |
OK ! Now that I think of it, we could package the jar file inside pulp too.
Just like it is done with CBC...
…On Tue, Mar 27, 2018, 23:46 Stuart Mitchell ***@***.***> wrote:
Great news I will try and look at this over Easter and hopefully do a
release
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#169 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AFNM8xwgSJJuE15jRCHVDtIw63Pxg5X_ks5tirNCgaJpZM4S9Du3>
.
|
…via PULP_CHOCO_CMD just like PULP_CBC_CMD does
Ok, changes done. I still need to understand how to configure the running of the tests to be done with the PULP_CHOCO_CMD solver too. |
you need to change this line https://github.com/coin-or/pulp/blob/master/src/pulp/pulp.py#L2277 |
Nice, thanks. Now that I see that tests are failing I can go to bed at ease. I'll take a look tomorrow, I hope. |
quick summary of the test resuls and some analysis on them:
I guess I'll send the obviusly incorrect (009, 011) to the choco team via the mps so they can check them out. |
… the solver to the testing function.
Current status: remaining:
"solved":
|
Now maximize gets passed correctly to choco. Some tests that are not compatible with choco were taken out.
Hey Stu, thanks! Franco |
Hi I think I will need you to to follow this process re contribution agreements https://www.coin-or.org/contributing/code/ |
Hello Stuart, you mean signing the CSRO? if so, should I send it to someone in particular? you by mail for example? |
please follow these steps
There are two common ways to submit a CSRO:
- Fill out the plain text version of the CSRO
<http://www.coin-or.org/management/forms/csro.txt> and “sign” it by
typing your name at the bottom. Send the completed form by email to
secretary@coin-or.org
- Print a hardcopy of the PDF version of the CSRO
<http://www.coin-or.org/management/forms/csro.pdf>, fill it out and sign
it, and email a scan to secretary@coin-or.org
and cc me
Stuart Mitchell
PhD Engineering Science
Extraordinary Freelance Programmer and Optimisation Guru
www.stuartmitchell.com
…On Thu, Oct 25, 2018 at 10:32 PM pchtsp ***@***.***> wrote:
Hello Stuart, you mean signing the CSRO? if so, should I send it to
someone in particular? you by mail for example?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#169 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAtEWa0kAhfU91XoqzaL16SfHWIHWhQ1ks5uoYUtgaJpZM4S9Du3>
.
|
OK done!
On Fri, 26 Oct 2018, 01:14 Stuart Mitchell, <notifications@github.com>
wrote:
… please follow these steps
There are two common ways to submit a CSRO:
- Fill out the plain text version of the CSRO
<http://www.coin-or.org/management/forms/csro.txt> and “sign” it by
typing your name at the bottom. Send the completed form by email to
***@***.***
- Print a hardcopy of the PDF version of the CSRO
<http://www.coin-or.org/management/forms/csro.pdf>, fill it out and sign
it, and email a scan to ***@***.***
and cc me
Stuart Mitchell
PhD Engineering Science
Extraordinary Freelance Programmer and Optimisation Guru
www.stuartmitchell.com
On Thu, Oct 25, 2018 at 10:32 PM pchtsp ***@***.***> wrote:
> Hello Stuart, you mean signing the CSRO? if so, should I send it to
> someone in particular? you by mail for example?
>
> —
> You are receiving this because you commented.
> Reply to this email directly, view it on GitHub
> <#169 (comment)>, or
mute
> the thread
> <
https://github.com/notifications/unsubscribe-auth/AAtEWa0kAhfU91XoqzaL16SfHWIHWhQ1ks5uoYUtgaJpZM4S9Du3
>
> .
>
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#169 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AFNM80zHsPZm6fGc66aEJ-1_2cu4AvCxks5uokW-gaJpZM4S9Du3>
.
|
Hey Stu, at the end are you thinking on merging this PR? I'm thinking on adding mip start support for CPLEX_CMD and CBC but I don't really want to be having a whole bunch of different independent branches in my fork just so I can have independent PRs. What do you think? Franco |
Sorry to get to this so late, I'll merge if you can fix the conflicts |
Ok, I'll check this today / tomorrow. I've added the solver to the repository, in a similar fashion as CBC. Is it okay? |
# Conflicts: # src/pulp/solvers.py
Good day,
The open source CHOCO solver recently released an MPS integration for input data. I wanted to test my model an came up with a lightweight integration for this solver in pulp.
I think it's nice to add a CP solver to the mix of pulp's solvers. Specially since it's open source.
It re-uses the other CMD solvers' structure. Specifically I took into account the GUROBI_CMD, CPLEX_CMD and COIN_CMD classes.
It's built over the PR I made to get solving and solution status separately. Because choco also makes a distinction between 'finding the optimal' and 'finding a solution'. Having said that, if the other change is not considered important enough or desirable to pulp I could include this solver on top of the master branch directly without this distinction.
The solver is built in java so it needs java installed to work, which I care to check. For the time being, for it to work it needs to have java in the PATH and the user needs to give the absolute path to the jar binary. The binary needs to be built from sources (for now, since it's a new version) but it will be available for download soon, according to the developers.
For more information, see the following:
If you have any questions, comments or changes, I'll be glad to discuss them!
Franco