[Coin-discuss] Solving ILP within B&B framework
John J Forrest
jjforre at us.ibm.com
Fri Jul 14 12:52:02 EDT 2006
Kirsten,
It is fairly obvious that you would get the first "access violation
reading location". Without knowing more about your driver I can't say
much about the second one.
Fixing many variables could easily allow CglProbing to find that the
problem is infeasible and then this can happen. I have modified code in
branches/devel to trap this before error message.
Try with no cut generators at all.
John Forrest
"Wiebe Kirsten (Stud. FdEWB)" <K.Wiebe at Student.Unimaas.NL>
Sent by: coin-discuss-bounces at list.coin-or.org
07/14/2006 08:04 AM
Please respond to
Discussions about open source software for Operations Research
<coin-discuss at list.coin-or.org>
To
"Discussions about open source software for Operations Research"
<coin-discuss at list.coin-or.org>
cc
Subject
[Coin-discuss] Solving ILP within B&B framework
Hello everyone,
I'm currently writing my master thesis in operations research about
rankings in tournaments using the linear ordering polytope. My idea is to
find all Slater solutions for that tournament with the help of a branch
and bound, where, in each node of the b&b tree, the ILP of the linear
ordering polytope is solved to optimality. For that I start with solving
the ILP once to optimality and then "going up" in the tree fixing all
variables above the currently processed node to what they were before (in
the current solution of the ILP) and the variable that is branched on in
that node to its complement, i.e. to (1 - (what is was before)). I
implemented a function that detects 3-cycles, i.e. infeasibility if the
transitivity is not satisfied; but it seems that there is still something
going wrong. For a little instance where there are 4 participants for the
tournament and hence 6 variables representing the binary relations the
algorithm, that until now is simply supposed to go up in the b&b tree
once, is working ok. In a larger instance, with 40 participants and hence
780 binary relations, I get that error message about "Access violation
reaing location ..." after 33 iterations and my output says:
Clp6002E 192 bad bound pairs or bad objectives were found - first at R9884
Clp0004I Stopped due to errors - objective value 0
Cgl0000I Cut generators found to be infeasible!
The error message occurs where "model" is defined (model is the object
with which I can define the branching method and node comparison and add
cuts:
solver1=getModelForILP();
// Use Preprocessing of Coin
solver1.initialSolve();
solver2=&solver1;
solver2=PreProcess.preProcess(solver1,true,5);
model = new CbcModel(*solver2); <-- HERE IS THE ERROR
Does that mean that I cannot use the CoinOR cuts here, or is already
something wrong with using the preprocessing?
I think it is about the preprocessing, because when I include
if(solver2 == NULL)
{
cout << "Preprocessing did not work, node skipped\n";
return 1;
}
before "model = new CbCModel(*solver2);" and hence return to main to
continue without processing the node, the algorithm continues until
iteration 95, but then there is again the error message about "access
violation reading location..." when the program tries to access the column
solution of column 423 (the variable that is branched on there). When
debugging and looking until which column there are solutions I get that
there are only solutions until column 218. In the beginning I had that
problem already at iteration 33 and iteration 91, but that is not the case
anymore and I just don't get why...
Greetz
Kirsten
_______________________________________________
Coin-discuss mailing list
Coin-discuss at list.coin-or.org
http://list.coin-or.org/mailman/listinfo/coin-discuss
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/coin-discuss/attachments/20060714/a429594c/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: winmail.dat
Type: application/octet-stream
Size: 6001 bytes
Desc: not available
URL: <http://list.coin-or.org/pipermail/coin-discuss/attachments/20060714/a429594c/attachment.obj>
More information about the Coin-discuss
mailing list