Skip to content
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

CBC and MIP from web assembly/pyodide #484

Open
sebastianjhm opened this issue Feb 23, 2022 · 2 comments
Open

CBC and MIP from web assembly/pyodide #484

sebastianjhm opened this issue Feb 23, 2022 · 2 comments

Comments

@sebastianjhm
Copy link

Hi CBC team.
I'm working in my project and I want to use MIP and CBC in the browser with pyodide. MIP function good because is a pure pyrhon library, the problem is CBC. I had trying with cbcpy but the wheels are from specific OS. Is possible achieve use CBC with web assembly, or convert to a pure python library?

@tkralphs
Copy link
Member

tkralphs commented Feb 24, 2022

Years ago, I managed to compile SYMPHONY with emscripten as a proof of concept, so you can just give it a try and you may succeed. But I really doubt it makes sense to try to run a MIP solver in-browser. You would likely be much better off running it server-side. You certainly cannot convert Cbc to pure Python and even if you could, that would likely result in a catastrophic loss of efficiency.

I've been developing a MIP solver in pure Python, but only for educational purposes and as a way of doing proofs-of-concept of simple ideas. It certainly wouldn't have performance anywhere near Cbc. Of course, if you're just hoping to solve very small/easy MILPs, it would work.

@sebastianjhm
Copy link
Author

I understand,
For very small/easy MILPs, in pyodide is GLPK. My question was because CBC is a better solver. But thanks for the info.

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

No branches or pull requests

2 participants