[SCIP] Solving LP again in the pricerredcost

Maher, Stephen S.J.Maher at exeter.ac.uk
Mon Jul 27 09:13:03 CEST 2020


Hi Jungeun,

There are definitely not any weird questions. We try to help out for any case that our users come up with.

It is a shame that the PySCIPOpt interface is not achieving what you want to do. Could you share a link to the Github issue that you have raised about this? I had a look through, but I couldn't find the issue that you are talking about. We might be able to fix the interface for so that you can implement the Ryan-Foster branching scheme.

You are able to resolve the LP is pricerredcost. However, it is not recommended.

I am assuming that you are using the PySCIPOpt interface, so I will use the python syntax. To resolve the LP, you need to enter probing mode by calling "startProbing". This will allow you to make changes to the LP that are then discarded when you exit probing mode. In particular, you can change the bounds on the variables to enforce some branching decisions. To resolve the LP, then you call "solveProbingLP". Once you have finished in probing mode, you need to call "endProbing". This will discard the changes made to the problem.

The issue with solving the LP in pricerredcost is that the LP will change while in the middle of the pricer and cut loop. This can have unintended consequences on other parts of the solver, such as separation routines and constraint enforcement. If you do attempt this, be mindful that this is unintended behaviour.

Cheers,

Steve

________________________________
From: Scip <scip-bounces at zib.de> on behalf of Shin, Jungeun <jungeun4 at illinois.edu>
Sent: 23 July 2020 09:08
To: scip at zib.de <scip at zib.de>
Subject: [SCIP] Solving LP again in the pricerredcost

CAUTION: This email originated from outside of the organisation. Do not click links or open attachments unless you recognise the sender and know the content is safe.


Hi SCIPers,

I would like to ask how we can solve LP relaxation again in the pricerredcost after adding local constraints.

I know this is a weird question, but here is my issue.  I am working on Branch-cut-price model using pyscipopt interface.

I have a branching scheme similar to Ryan-foster (not the same) and need to create nodes and add respective constraints to each node locally using “SCIPaddConsnode” within the branchrule module.

However, there is some problem using this addConsnode in pyscipopt package which raises a segfault error. (I have asked this issue to Pyscipopt community on github, but it doesn’t seem to be a known issue that can be resolved quickly.)

I am trying to use kind of hacky way of applying the branching scheme without using addConsnode,  by adding constraints in the pricerredcost and solve LP again to get the updated dual solutions to compute subproblem.

Long story in short,
1) Can we solve LP master problem again in the pricerredcost?

2) Can we use branching scheme like a Ryanfoster rule without using addConsnode?

Jungeun




_______________________________________________
Scip mailing list
Scip at zib.de
https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Flistserv.zib.de%2Fmailman%2Flistinfo%2Fscip&data=02%7C01%7CS.J.Maher%40exeter.ac.uk%7Cbe36380ef6ab4c1ebd0508d82ee02f0b%7C912a5d77fb984eeeaf321334d8f04a53%7C0%7C0%7C637310887693311116&sdata=cFFdNs5FvqHa3TALAmvhbqnEgjJEz4u2rVyztsuFR0c%3D&reserved=0
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.zib.de/pipermail/scip/attachments/20200727/5e43bcd2/attachment.html>


More information about the Scip mailing list