coin-or / FlopCpp

An open source algebraic modelling language implemented as a C++ class library
https://projects.coin-or.org/FlopC++
Other
10 stars 1 forks source link

Allow specified constraints to be added as cuts if violated #11

Open svigerske opened 5 years ago

svigerske commented 5 years ago

Issue created by migration from Trac.

Original creator: hpwalton

Original creation time: 2006-07-22 02:57:47

Assignee: somebody

Version:

Motivation: It can sometimes be very useful to add many constraints into a cut set in order to tighten an LP relaxation (for example). However, it can be a rather large set which may slow the LP down significantly if added a priori. Binding these as needed can significantly speed up solving LPs.

Proposal: Allow normal FlopC++ specification of the constraint, but mark it (attribute on the constraint?) as a cut set. At runtime, instead of instantiating this to the normal constraint block, add them to appropriate Cgl structures. In turn, the Cgl structures will be added to the OsiSolverInterface.

svigerske commented 5 years ago

Comment by hpwalton created at 2006-07-22 02:58:42

Changing assignee from somebody to hpwalton.

svigerske commented 5 years ago

Comment by thh created at 2006-07-26 09:40:22

I have to look closer at Cgl to confirm, but I could imagine that after separating model and solver this can be relatively easily done using existing Flopc++ and COIN features. If so this should be the first approach - to write an example where this is done, then it would be possible to judge if this elegant enough or if a Flopc++ extention is needed.