[Cbc] failure in small IP

John J Forrest jjforre at us.ibm.com
Thu Sep 10 12:49:02 EDT 2009


Matt,

getBasics returns an array number of rows long.  The entry for row 7 would
say which variable was actually pivoting on row 7.  If you are looking at
tableau you may need that.

warmstart just gives status of each variable with no information as to
which row a basic variable would pivot on.

John


                                                                                                                     
  From:       Matthew Galati <magh at lehigh.edu>                                                                       
                                                                                                                     
  To:         John J Forrest/Watson/IBM at IBMUS                                                                        
                                                                                                                     
  Cc:         "cbc at list.coin-or.org" <cbc at list.coin-or.org>                                                          
                                                                                                                     
  Date:       09/10/2009 12:39 PM                                                                                    
                                                                                                                     
  Subject:    Re: [Cbc] failure in small IP                                                                          
                                                                                                                     





Thanks John. When you say "different" do you mean actually different or
just the way they are stored?

I.e., if I want to know which variables are basic after a solve - and I
getWarmStart and check the structural status - will that information match
what getBasics would return?



  Matt,

  Thanks.

  As to getBasics - the two sets of information are different - but I will
  modify to point out options to user.

  John

  Inactive hide details for Matthew Galati ---09/10/2009 12:37:54 AM---Here
  is a fix. It was just missing an initialization in CbMatthew Galati
  ---09/10/2009 12:37:54 AM---Here is a fix. It was just missing an
  initialization in CbcRounding constructor. [magala at orclus71 sr



                                                                           
                                                                           
                                                                           
                                                                           
 From:          Matthew Galati <                                           
                Matthew.Galati at sas.com>                                    
                                                                           
                                                                           
 To:                                            Matthew Galati <           
                                                magh at lehigh.edu>           
                                                                           
                                                                           
 Cc:            "cbc at list.coin-or.org" <                                   
                cbc at list.coin-or.org>                                      
                                                                           
                                                                           
 Date:          09/10/2009 12:37 AM                                        
                                                                           
                                                                           
                                                                           
                                                                           
 Subject:       Re: [Cbc] failure in small IP                              
                                                                           
                                                                           
 Sent by:       cbc-bounces at list.coin-or.org                               
                                                                           






  Here is a fix. It was just missing an initialization in CbcRounding
  constructor.



  [magala at orclus71 src]$ svn diff CbcHeuristic.cpp
  Index: CbcHeuristic.cpp
  ===================================================================
  --- CbcHeuristic.cpp (revision 1223)
  +++ CbcHeuristic.cpp (working copy)
  @@ -1538,6 +1538,9 @@
  {
  // Get a copy of original matrix (and by row for rounding);
  assert(model.solver());
  + down_=NULL;
  + up_=NULL;
  + equal_=NULL;
  if (model.solver()->getNumRows()) {
  matrix_ = *model.solver()->getMatrixByCol();
  matrixByRow_ = *model.solver()->getMatrixByRow();



  From: Matthew Galati [mailto:magh at lehigh.edu]
  Sent: Thursday, September 10, 2009 12:19 AM
  To: Matthew Galati
  Cc: cbc at list.coin-or.org
  Subject: Re: [Cbc] failure in small IP

  The run with cbc executable that does not fail was using a May 2009
  version of code.

  Using the current trunk it fails (same as when using CbcMain1):


  [magala at orclus71 src]$ ./cbc ~/subProb.n0.c0.p1.b0.lp


  Coin Cbc and Clp Solver version 1.2trunk, build Sep 10 2009


  command line - ./cbc /users/magala/subProb.n0.c0.p1.b0.lp (default
  strategy 1)


  Continuous objective value is 46.6667 - 0.00 seconds


  Cgl0003I 20 fixed, 0 tightened bounds, 0 strengthened rows, 0
  substitutions


  Cgl0003I 5 fixed, 0 tightened bounds, 0 strengthened rows, 8
  substitutions


  Cgl0003I 0 fixed, 0 tightened bounds, 0 strengthened rows, 8
  substitutions


  Cgl0004I processed model has 0 rows, 0 columns (0 integer) and 0 elements


  Segmentation fault




  The following small IP fails using the CbcMain1 interface. It is a unique
  case, because all rows and cols are removed by presolver.


  http://coral.ie.lehigh.edu/~magh/tmp/subProb.n0.c0.p1.b0.lp


  https://projects.coin-or.org/Cbc/ticket/79


  CbcModel cbc(*subprobSI);


  CbcMain0(cbc);


  const char * argv[] = {"cbc","-solve","-quit"};


  CbcMain1(3, argv, cbc);


  Coin Cbc and Clp Solver version 1.2trunk, build Sep 9 2009


  command line - cbc -solve -quit (default strategy 1)


  Continuous objective value is 46.6667 - 0.00 seconds


  Cgl0003I 20 fixed, 0 tightened bounds, 0 strengthened rows, 0
  substitutions


  Cgl0003I 5 fixed, 0 tightened bounds, 0 strengthened rows, 8
  substitutions


  Cgl0003I 0 fixed, 0 tightened bounds, 0 strengthened rows, 8
  substitutions


  Cgl0004I processed model has 0 rows, 0 columns (0 integer) and 0 elements


  gdb gives:


  Program received signal SIGSEGV, Segmentation fault.


  0x0000003ffa871f6b in free () from /lib64/libc.so.6


  (gdb) where


  #0 0x0000003ffa871f6b in free () from /lib64/libc.so.6


  #1 0x000000000057bc41 in ~CbcRounding (this=0x7fffec90c080)


  at ../../../Cbc/src/CbcHeuristic.cpp:1552


  #2 0x00000000004ae837 in doHeuristics (model=0x1d1f3e00, type=1)


  at ../../../Cbc/src/CbcSolver.cpp:3479


  #3 0x00000000004c7776 in CbcMain1 (argc=3, argv=0x7fffec9150c0,


  model=@0x7fffec914bb0, callBack=0x4a734c <dummyCallBack>)


  at ../../../Cbc/src/CbcSolver.cpp:6680


  #4 0x00000000004db968 in CbcMain1 (argc=3, argv=0x7fffec9150c0,


  model=@0x7fffec914bb0) at ../../../Cbc/src/CbcSolver.cpp:3099


  Note, if I run it from the command line using cbc executable, the error
  does not occur.


  [magala at orclus71 MMKP]$ ~/COIN/coin-Cbc/build-g/bin/cbc
  subProb.n0.c0.p1.b0.lp


  Coin Cbc and Clp Solver version 1.2trunk, build May 27 2009


  command line - /users/magala/COIN/coin-Cbc/build-g/bin/cbc
  subProb.n0.c0.p1.b0.lp (default strategy 1)


  Continuous objective value is 46.6667 - 0.00 seconds


  Cgl0003I 20 fixed, 0 tightened bounds, 0 strengthened rows, 0
  substitutions


  Cgl0003I 5 fixed, 0 tightened bounds, 0 strengthened rows, 8
  substitutions


  Cgl0003I 0 fixed, 0 tightened bounds, 0 strengthened rows, 8
  substitutions


  Cgl0004I processed model has 0 rows, 0 columns (0 integer) and 0 elements


  Cbc3007W No integer variables - nothing to do


  Cuts at root node changed objective from 46.6667 to -1.79769e+308


  Probing was tried 0 times and created 0 cuts of which 0 were active after
  adding rounds of cuts (0.000 seconds)


  Gomory was tried 0 times and created 0 cuts of which 0 were active after
  adding rounds of cuts (0.000 seconds)


  Knapsack was tried 0 times and created 0 cuts of which 0 were active
  after adding rounds of cuts (0.000 seconds)


  Clique was tried 0 times and created 0 cuts of which 0 were active after
  adding rounds of cuts (0.000 seconds)


  MixedIntegerRounding2 was tried 0 times and created 0 cuts of which 0
  were active after adding rounds of cuts (0.000 seconds)


  FlowCover was tried 0 times and created 0 cuts of which 0 were active
  after adding rounds of cuts (0.000 seconds)


  TwoMirCuts was tried 0 times and created 0 cuts of which 0 were active
  after adding rounds of cuts (0.000 seconds)


  Result - Finished objective 46.66667 after 0 nodes and 0 iterations -
  took 0.00 seconds (total time 0.01)


  Total time 0.01

  _______________________________________________
  Cbc mailing list
  Cbc at list.coin-or.org
  http://list.coin-or.org/mailman/listinfo/cbc
  _______________________________________________
  Cbc mailing list
  Cbc at list.coin-or.org
  http://list.coin-or.org/mailman/listinfo/cbc



  _______________________________________________
  Cbc mailing list
  Cbc at list.coin-or.org
  http://list.coin-or.org/mailman/listinfo/cbc


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://list.coin-or.org/pipermail/cbc/attachments/20090910/7f276608/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: graycol.gif
Type: image/gif
Size: 105 bytes
Desc: not available
Url : http://list.coin-or.org/pipermail/cbc/attachments/20090910/7f276608/attachment-0002.gif 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ecblank.gif
Type: image/gif
Size: 45 bytes
Desc: not available
Url : http://list.coin-or.org/pipermail/cbc/attachments/20090910/7f276608/attachment-0003.gif 


More information about the Cbc mailing list