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

IPOPT interface to OptLang #241

Open
djinnome opened this issue Jun 9, 2022 · 1 comment
Open

IPOPT interface to OptLang #241

djinnome opened this issue Jun 9, 2022 · 1 comment

Comments

@djinnome
Copy link

djinnome commented Jun 9, 2022

Checklist

I have an implementation of a nonlinear optimization problem for thermokinetic regulation using IPOPT, which is called through pyomo.

I would like to integrate that algorithm into CobraPy, but CobraPy uses OptLang, not Pyomo, and IPOPT is not supported in OptLang.

Describe the solution you would like.

The solution I would like is for someone to help me import the IPOPT interface to OptLang

Describe alternatives you considered

Another solution might be to provide Pyomo support for Cobrapy.

A third solution would be to ignore CobraPy and wrap the algorithm using the KBase SDK

Additional context

@cdiener
Copy link
Member

cdiener commented Jun 9, 2022

I think the only real solutions would be the 1. and 3. proposal. 2 doesn't really work due to COBRAPY implementation details and requirements on the solver interface (fast modification mostly where libraries like Pyomo aren't great at since most of them make the low level problem formulation immutable). For 1 you would need to add a new interface and tests to optlang. That basically means implementing the classes and methods defined in the abstract interface. You can have a look at the already implemented interfaces to get an idea how that works. Not super easy and a decent amount of work unfortunately.

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