0

I am implementing a branching rule in SCIP (using the C api). During the BRANCHEXECLP callback, I need to get the sensitivity range of the objective function coefficient of the candidates variables. Is there a way to get this information?

I want a function to get a range [x1, x2] for a variable x such that changing the objective coefficient of x by a value in this range does not change the optimal solution of the LP relaxation.

3
  • by not changing the optimal solution do you mean not changing the objective value or not changing the variable assignments (or both?)? I can already tell you that there is no already implemented functions that gives you this, but it might be possible with a bit of work, depending on what exactly you want. Commented Jan 24, 2023 at 9:13
  • Not changing the variable assignment. I might be able to do so by doing as in this example (page 9), but it requires the final state of the simplex tableau, is it directly available? Or must I compute also it myself? Commented Jan 26, 2023 at 16:12
  • All the data from the final Basis should be directly available to you (real LP solvers do not actually compute a simplex tableau explicitly). Commented Jan 27, 2023 at 7:18

1 Answer 1

0

Ok so I think you only need to query the reduced costs, as well as the tableau coefficients. The reduced cost you get from calling SCIPgetVarRedcost. For the tableau row you should call SCIPgetLPBInvARow

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.