Are valid inequalities worth the effort given modern solver preprocessing options?Solver rounding precision...
Why are there yellow dot stickers on the front doors of businesses in Russia?
Is there a way to improve my grade after graduation?
Is an "are" omitted in this sentence
Would the shaking of an earthquake be visible to somebody in a low-flying aircraft?
Need reasons why a satellite network would not work
How do I handle a DM that plays favorites with certain players?
What is it exactly about flying a Flyboard across the English channel that made Zapata's thighs burn?
Why did the US Airways Flight 1549 passengers stay on the wings?
What is the reason behind water not falling from a bucket at the top of loop?
Why is it to say 'paucis post diebus'?
How to win against ants
Can the Cauchy product of divergent series with itself be convergent?
Is a switch from R to Python worth it?
Conditional probability of dependent random variables
Would this winged human/angel be able to fly?
Pronouns when writing from the point of view of a robot
What's "halachic" about "Esav hates Ya'akov"?
Is space radiation a risk for space film photography, and how is this prevented?
ZFS on Linux: Which mountpoint option when mounting manually per script?
How can I perform a deterministic physics simulation?
How do I know when and if a character requires a backstory?
How to call made-up data?
How easy is it to get a gun illegally in the United States?
Why does capacitance not depend on the material of the plates?
Are valid inequalities worth the effort given modern solver preprocessing options?
Solver rounding precision vs programming language rounding precisionWhat is the “big-M” method? And are there two of them?What are the tradeoffs between “exact” and Reinforcement Learning methods for solving optimization problemsWhy is it important to choose big-M carefully and what are the consequences of doing it badly?Why the optimal value that minimizes a function does not satisfy condition?How to select a Constraint Programming SolverRead an LP/MPS file in the PuLPHow to evaluate the performance of open source solver?Are there examples of spatially explicit MIP problems?Estimation of the size of Branch-and-Bound trees using ML
$begingroup$
In Laurence Wolsey's Integer Programming[1], he presents a well-known procedure for deriving valid inequalities (VI) suitable for integer and mixed integer linear problems (see Section 8.3, and also Ch 9).
In the application-oriented literature, I've often seen authors present a MILP formulation then follow it up with VIs they have derived and found to be helpful in the problem, usually accompanied with experimental results (robust or not) to show the utility of the VI. (For clarification, I'm referring to VIs authors suggest adding to the formulation, not user-generated cuts derived and/or added during the solution procedure.)
Q: With the extensive pre-processing options available with commercial solvers like CPLEX or Gurobi, is this still worth doing? If yes, what are the best practices for testing and convincing oneself a VI (or set of VIs) is worth the trouble?
[1] Wolsey, Laurence A. 1998. Integer Programming. Wiley: New York. ISBN 0471283665.
mixed-integer-programming optimization solver valid-inequalities
$endgroup$
add a comment |
$begingroup$
In Laurence Wolsey's Integer Programming[1], he presents a well-known procedure for deriving valid inequalities (VI) suitable for integer and mixed integer linear problems (see Section 8.3, and also Ch 9).
In the application-oriented literature, I've often seen authors present a MILP formulation then follow it up with VIs they have derived and found to be helpful in the problem, usually accompanied with experimental results (robust or not) to show the utility of the VI. (For clarification, I'm referring to VIs authors suggest adding to the formulation, not user-generated cuts derived and/or added during the solution procedure.)
Q: With the extensive pre-processing options available with commercial solvers like CPLEX or Gurobi, is this still worth doing? If yes, what are the best practices for testing and convincing oneself a VI (or set of VIs) is worth the trouble?
[1] Wolsey, Laurence A. 1998. Integer Programming. Wiley: New York. ISBN 0471283665.
mixed-integer-programming optimization solver valid-inequalities
$endgroup$
$begingroup$
Valid inequalities generally do help. That's why all good MIP solvers use them. Are you asking if it's worth it to add user-generated cuts?
$endgroup$
– Austin Buchanan
9 hours ago
$begingroup$
@AustinBuchanan Latest edit should help clarify. Yes, VIs are useful during the solution procedure (we need cuts!). I'm specifically talking about the addition of VIs added to the formulation prior to passing to a solver. If this is still unclear, I'll be happy to edit.
$endgroup$
– SecretAgentMan
9 hours ago
add a comment |
$begingroup$
In Laurence Wolsey's Integer Programming[1], he presents a well-known procedure for deriving valid inequalities (VI) suitable for integer and mixed integer linear problems (see Section 8.3, and also Ch 9).
In the application-oriented literature, I've often seen authors present a MILP formulation then follow it up with VIs they have derived and found to be helpful in the problem, usually accompanied with experimental results (robust or not) to show the utility of the VI. (For clarification, I'm referring to VIs authors suggest adding to the formulation, not user-generated cuts derived and/or added during the solution procedure.)
Q: With the extensive pre-processing options available with commercial solvers like CPLEX or Gurobi, is this still worth doing? If yes, what are the best practices for testing and convincing oneself a VI (or set of VIs) is worth the trouble?
[1] Wolsey, Laurence A. 1998. Integer Programming. Wiley: New York. ISBN 0471283665.
mixed-integer-programming optimization solver valid-inequalities
$endgroup$
In Laurence Wolsey's Integer Programming[1], he presents a well-known procedure for deriving valid inequalities (VI) suitable for integer and mixed integer linear problems (see Section 8.3, and also Ch 9).
In the application-oriented literature, I've often seen authors present a MILP formulation then follow it up with VIs they have derived and found to be helpful in the problem, usually accompanied with experimental results (robust or not) to show the utility of the VI. (For clarification, I'm referring to VIs authors suggest adding to the formulation, not user-generated cuts derived and/or added during the solution procedure.)
Q: With the extensive pre-processing options available with commercial solvers like CPLEX or Gurobi, is this still worth doing? If yes, what are the best practices for testing and convincing oneself a VI (or set of VIs) is worth the trouble?
[1] Wolsey, Laurence A. 1998. Integer Programming. Wiley: New York. ISBN 0471283665.
mixed-integer-programming optimization solver valid-inequalities
mixed-integer-programming optimization solver valid-inequalities
edited 9 hours ago
SecretAgentMan
asked 11 hours ago
SecretAgentManSecretAgentMan
6512 silver badges21 bronze badges
6512 silver badges21 bronze badges
$begingroup$
Valid inequalities generally do help. That's why all good MIP solvers use them. Are you asking if it's worth it to add user-generated cuts?
$endgroup$
– Austin Buchanan
9 hours ago
$begingroup$
@AustinBuchanan Latest edit should help clarify. Yes, VIs are useful during the solution procedure (we need cuts!). I'm specifically talking about the addition of VIs added to the formulation prior to passing to a solver. If this is still unclear, I'll be happy to edit.
$endgroup$
– SecretAgentMan
9 hours ago
add a comment |
$begingroup$
Valid inequalities generally do help. That's why all good MIP solvers use them. Are you asking if it's worth it to add user-generated cuts?
$endgroup$
– Austin Buchanan
9 hours ago
$begingroup$
@AustinBuchanan Latest edit should help clarify. Yes, VIs are useful during the solution procedure (we need cuts!). I'm specifically talking about the addition of VIs added to the formulation prior to passing to a solver. If this is still unclear, I'll be happy to edit.
$endgroup$
– SecretAgentMan
9 hours ago
$begingroup$
Valid inequalities generally do help. That's why all good MIP solvers use them. Are you asking if it's worth it to add user-generated cuts?
$endgroup$
– Austin Buchanan
9 hours ago
$begingroup$
Valid inequalities generally do help. That's why all good MIP solvers use them. Are you asking if it's worth it to add user-generated cuts?
$endgroup$
– Austin Buchanan
9 hours ago
$begingroup$
@AustinBuchanan Latest edit should help clarify. Yes, VIs are useful during the solution procedure (we need cuts!). I'm specifically talking about the addition of VIs added to the formulation prior to passing to a solver. If this is still unclear, I'll be happy to edit.
$endgroup$
– SecretAgentMan
9 hours ago
$begingroup$
@AustinBuchanan Latest edit should help clarify. Yes, VIs are useful during the solution procedure (we need cuts!). I'm specifically talking about the addition of VIs added to the formulation prior to passing to a solver. If this is still unclear, I'll be happy to edit.
$endgroup$
– SecretAgentMan
9 hours ago
add a comment |
2 Answers
2
active
oldest
votes
$begingroup$
In my experience, it's rarely, but sometimes still, worth doing. There is no general answer however, as it's very model-specific (and sometimes even instance-specific). The only way to know for sure is to try both ways with the solver of your choice. Your results will also change over time, because newer versions of solvers generally implement better algorithms and use differently tuned heuristics.
$endgroup$
$begingroup$
Not clear why you mention preprocessing: maybe you mean that modern solvers already exploit a number of (powerful) cutting plane families (VIs), and you ask whether it makes sense to investigate new ones for specific problems.
$endgroup$
– Matteo Fischetti
9 hours ago
$begingroup$
@Matteo Fischetti: I did not mention preprocessing in my answer...?!? Did I misunderstand your comment?
$endgroup$
– Simon
8 hours ago
$begingroup$
@Simon Perhaps this was intended as a comment on the question? I'll wait for the commenter to clarify before I edit the question to address.
$endgroup$
– SecretAgentMan
7 hours ago
add a comment |
$begingroup$
It is, at least sometimes, still very useful.
I have a short note (link) on a problem in quay crane scheduling in which adding a single - rather uninspired - family of valid inequalities greatly reduced solution times.
My understanding is that you make the most out of enumerated valid inequalities when the linear relaxation of the MIP is poor, as they can quickly improve the dual bound.
$endgroup$
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "700"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2for.stackexchange.com%2fquestions%2f1170%2fare-valid-inequalities-worth-the-effort-given-modern-solver-preprocessing-option%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
In my experience, it's rarely, but sometimes still, worth doing. There is no general answer however, as it's very model-specific (and sometimes even instance-specific). The only way to know for sure is to try both ways with the solver of your choice. Your results will also change over time, because newer versions of solvers generally implement better algorithms and use differently tuned heuristics.
$endgroup$
$begingroup$
Not clear why you mention preprocessing: maybe you mean that modern solvers already exploit a number of (powerful) cutting plane families (VIs), and you ask whether it makes sense to investigate new ones for specific problems.
$endgroup$
– Matteo Fischetti
9 hours ago
$begingroup$
@Matteo Fischetti: I did not mention preprocessing in my answer...?!? Did I misunderstand your comment?
$endgroup$
– Simon
8 hours ago
$begingroup$
@Simon Perhaps this was intended as a comment on the question? I'll wait for the commenter to clarify before I edit the question to address.
$endgroup$
– SecretAgentMan
7 hours ago
add a comment |
$begingroup$
In my experience, it's rarely, but sometimes still, worth doing. There is no general answer however, as it's very model-specific (and sometimes even instance-specific). The only way to know for sure is to try both ways with the solver of your choice. Your results will also change over time, because newer versions of solvers generally implement better algorithms and use differently tuned heuristics.
$endgroup$
$begingroup$
Not clear why you mention preprocessing: maybe you mean that modern solvers already exploit a number of (powerful) cutting plane families (VIs), and you ask whether it makes sense to investigate new ones for specific problems.
$endgroup$
– Matteo Fischetti
9 hours ago
$begingroup$
@Matteo Fischetti: I did not mention preprocessing in my answer...?!? Did I misunderstand your comment?
$endgroup$
– Simon
8 hours ago
$begingroup$
@Simon Perhaps this was intended as a comment on the question? I'll wait for the commenter to clarify before I edit the question to address.
$endgroup$
– SecretAgentMan
7 hours ago
add a comment |
$begingroup$
In my experience, it's rarely, but sometimes still, worth doing. There is no general answer however, as it's very model-specific (and sometimes even instance-specific). The only way to know for sure is to try both ways with the solver of your choice. Your results will also change over time, because newer versions of solvers generally implement better algorithms and use differently tuned heuristics.
$endgroup$
In my experience, it's rarely, but sometimes still, worth doing. There is no general answer however, as it's very model-specific (and sometimes even instance-specific). The only way to know for sure is to try both ways with the solver of your choice. Your results will also change over time, because newer versions of solvers generally implement better algorithms and use differently tuned heuristics.
edited 8 hours ago
answered 10 hours ago
SimonSimon
5721 silver badge13 bronze badges
5721 silver badge13 bronze badges
$begingroup$
Not clear why you mention preprocessing: maybe you mean that modern solvers already exploit a number of (powerful) cutting plane families (VIs), and you ask whether it makes sense to investigate new ones for specific problems.
$endgroup$
– Matteo Fischetti
9 hours ago
$begingroup$
@Matteo Fischetti: I did not mention preprocessing in my answer...?!? Did I misunderstand your comment?
$endgroup$
– Simon
8 hours ago
$begingroup$
@Simon Perhaps this was intended as a comment on the question? I'll wait for the commenter to clarify before I edit the question to address.
$endgroup$
– SecretAgentMan
7 hours ago
add a comment |
$begingroup$
Not clear why you mention preprocessing: maybe you mean that modern solvers already exploit a number of (powerful) cutting plane families (VIs), and you ask whether it makes sense to investigate new ones for specific problems.
$endgroup$
– Matteo Fischetti
9 hours ago
$begingroup$
@Matteo Fischetti: I did not mention preprocessing in my answer...?!? Did I misunderstand your comment?
$endgroup$
– Simon
8 hours ago
$begingroup$
@Simon Perhaps this was intended as a comment on the question? I'll wait for the commenter to clarify before I edit the question to address.
$endgroup$
– SecretAgentMan
7 hours ago
$begingroup$
Not clear why you mention preprocessing: maybe you mean that modern solvers already exploit a number of (powerful) cutting plane families (VIs), and you ask whether it makes sense to investigate new ones for specific problems.
$endgroup$
– Matteo Fischetti
9 hours ago
$begingroup$
Not clear why you mention preprocessing: maybe you mean that modern solvers already exploit a number of (powerful) cutting plane families (VIs), and you ask whether it makes sense to investigate new ones for specific problems.
$endgroup$
– Matteo Fischetti
9 hours ago
$begingroup$
@Matteo Fischetti: I did not mention preprocessing in my answer...?!? Did I misunderstand your comment?
$endgroup$
– Simon
8 hours ago
$begingroup$
@Matteo Fischetti: I did not mention preprocessing in my answer...?!? Did I misunderstand your comment?
$endgroup$
– Simon
8 hours ago
$begingroup$
@Simon Perhaps this was intended as a comment on the question? I'll wait for the commenter to clarify before I edit the question to address.
$endgroup$
– SecretAgentMan
7 hours ago
$begingroup$
@Simon Perhaps this was intended as a comment on the question? I'll wait for the commenter to clarify before I edit the question to address.
$endgroup$
– SecretAgentMan
7 hours ago
add a comment |
$begingroup$
It is, at least sometimes, still very useful.
I have a short note (link) on a problem in quay crane scheduling in which adding a single - rather uninspired - family of valid inequalities greatly reduced solution times.
My understanding is that you make the most out of enumerated valid inequalities when the linear relaxation of the MIP is poor, as they can quickly improve the dual bound.
$endgroup$
add a comment |
$begingroup$
It is, at least sometimes, still very useful.
I have a short note (link) on a problem in quay crane scheduling in which adding a single - rather uninspired - family of valid inequalities greatly reduced solution times.
My understanding is that you make the most out of enumerated valid inequalities when the linear relaxation of the MIP is poor, as they can quickly improve the dual bound.
$endgroup$
add a comment |
$begingroup$
It is, at least sometimes, still very useful.
I have a short note (link) on a problem in quay crane scheduling in which adding a single - rather uninspired - family of valid inequalities greatly reduced solution times.
My understanding is that you make the most out of enumerated valid inequalities when the linear relaxation of the MIP is poor, as they can quickly improve the dual bound.
$endgroup$
It is, at least sometimes, still very useful.
I have a short note (link) on a problem in quay crane scheduling in which adding a single - rather uninspired - family of valid inequalities greatly reduced solution times.
My understanding is that you make the most out of enumerated valid inequalities when the linear relaxation of the MIP is poor, as they can quickly improve the dual bound.
answered 3 hours ago


Alberto SantiniAlberto Santini
6413 silver badges6 bronze badges
6413 silver badges6 bronze badges
add a comment |
add a comment |
Thanks for contributing an answer to Operations Research Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2for.stackexchange.com%2fquestions%2f1170%2fare-valid-inequalities-worth-the-effort-given-modern-solver-preprocessing-option%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
$begingroup$
Valid inequalities generally do help. That's why all good MIP solvers use them. Are you asking if it's worth it to add user-generated cuts?
$endgroup$
– Austin Buchanan
9 hours ago
$begingroup$
@AustinBuchanan Latest edit should help clarify. Yes, VIs are useful during the solution procedure (we need cuts!). I'm specifically talking about the addition of VIs added to the formulation prior to passing to a solver. If this is still unclear, I'll be happy to edit.
$endgroup$
– SecretAgentMan
9 hours ago