From kingaj at us.ibm.com Thu Mar 10 17:23:59 2005 From: kingaj at us.ibm.com (Alan King) Date: Thu, 10 Mar 2005 17:23:59 -0500 Subject: [Coin-SMI] Coin-SMI discussions Message-ID: Hi Folks, Some of you are starting to investigate SMI -- that's great news! So I started a list server for SMI. Please signup to the list server and submit your SMI questions there -- I will monitor the SMI discussion. http://list.coin-or.org/mailman/listinfo/coin-smi Thanks! Alan King www.coin-or.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050310/5c96d73b/attachment.html From fmargot at andrew.cmu.edu Fri Mar 11 09:22:58 2005 From: fmargot at andrew.cmu.edu (Francois Margot) Date: Fri, 11 Mar 2005 09:22:58 -0500 (EST) Subject: [Coin-SMI] Smi unitTest crashes Message-ID: Hi: Note that the information on the coin-smi mailing list does not appear on the main page at: http://www.coin-or.org/mail.html It only appears on: http://list.coin-or.org/mailman/listinfo/ The following is a repost of the message I sent to coin-discuss yesterday. All COIN and Smi code are compiled with -g, lapack, and blas installed. The unitTest of Smi fails on an assert related to upper bounds on variables. This comes from the fact that ClpModel::gutsOfLoadModel readjusts the upper bounds to COIN_DBL_MAX when the upper bound is > 1e27. In the unitTest code, infinity is set to 1e31 and the assert fails since the expected value of the upper bound is 1e31 when it is COIN_DBL_MAX. The easiest way to fix this is to set INF = 1e25 in Smi/unitTest.cpp (Note that INF is defined at two places in Smi/UnitTest.cpp). After this change, the program still crashes on line 820 (initialSolve()). I could not figure out why, but valgrind detects an error in CoinMpsIO. The allocation of hash_ (in startHash()) is done with a new and the memory is freed with a free() instead of a delete in releaseRedundantInformation(). Also, the destructor in SmiScnModel.cpp does not free memory correctly: several delete must be replace by delete[] to get: SmiScnModel::~SmiScnModel() { delete osiStoch_; if (core_) delete core_; if (drlo_) delete[] drlo_; if (drup_) delete[] drup_; if (dclo_) delete[] dclo_; if (dcup_) delete[] dcup_; if (dobj_) delete[] dobj_; if (matrix_) delete matrix_; Even after correcting all the above, it still crashes. The first error detected by valgrind is: ==28062== Invalid write of size 4 ==28062== at 0xD558C6: ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) (ClpNo nLinearCost.cpp:108) ==28062== by 0xDBBAA3: ClpSimplex::startup(int, int) (ClpSimplex.cpp:5622) ==28062== by 0xDD6081: ClpSimplexPrimal::primal(int, int) (ClpSimplexPrimal.c pp:191) ==28062== by 0xDB3DB5: ClpSimplex::primal(int, int) (ClpSimplex.cpp:3632) ==28062== by 0x647A85: OsiClpSolverInterface::initialSolve() (OsiClpSolverInt erface.cpp:169) ==28062== by 0x8054059: SmiScnModelScenarioUnitTest() (unitTest.cpp:820) ==28062== by 0x8055797: main (unitTest.cpp:1467) ==28062== by 0x674BFB: __libc_start_main (in /lib/libc-2.3.2.so) ==28062== by 0x804D730: (within /home/fmargot/COIN/Smi/Test/Linux-g/unitTest) ==28062== Address 0x49085FC is 0 bytes after a block of size 300504 alloc'd ==28062== at 0x507886: __builtin_vec_new (vg_replace_malloc.c:203) ==28062== by 0x5078DD: operator new[](unsigned) (vg_replace_malloc.c:216) ==28062== by 0xD5580D: ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) (ClpNo nLinearCost.cpp:96) ==28062== by 0xDBBAA3: ClpSimplex::startup(int, int) (ClpSimplex.cpp:5622) ==28062== by 0xDD6081: ClpSimplexPrimal::primal(int, int) (ClpSimplexPrimal.c pp:191) ==28062== by 0xDB3DB5: ClpSimplex::primal(int, int) (ClpSimplex.cpp:3632) ==28062== by 0x647A85: OsiClpSolverInterface::initialSolve() (OsiClpSolverInt erface.cpp:169) ==28062== by 0x8054059: SmiScnModelScenarioUnitTest() (unitTest.cpp:820) ==28062== by 0x8055797: main (unitTest.cpp:1467) ==28062== by 0x674BFB: __libc_start_main (in /lib/libc-2.3.2.so) ==28062== ==28062== Invalid write of size 4 I hope someone knowing a little bit more about Smi than I do can fix this. Francois From kingaj at us.ibm.com Fri Mar 11 16:36:16 2005 From: kingaj at us.ibm.com (Alan King) Date: Fri, 11 Mar 2005 16:36:16 -0500 Subject: [Coin-SMI] Smi unitTest crashes In-Reply-To: Message-ID: Hi Francois, I will make the fixes. Thanks! The remaining problem appears to emanate from CLP. I'll post it to the lpsolver discussion list and check it out. Alan Francois Margot Sent by: coin-smi-bounces at list.coin-or.org 03/11/2005 09:22 AM To coin-smi at list.coin-or.org cc Subject [Coin-SMI] Smi unitTest crashes Hi: Note that the information on the coin-smi mailing list does not appear on the main page at: http://www.coin-or.org/mail.html It only appears on: http://list.coin-or.org/mailman/listinfo/ The following is a repost of the message I sent to coin-discuss yesterday. All COIN and Smi code are compiled with -g, lapack, and blas installed. The unitTest of Smi fails on an assert related to upper bounds on variables. This comes from the fact that ClpModel::gutsOfLoadModel readjusts the upper bounds to COIN_DBL_MAX when the upper bound is > 1e27. In the unitTest code, infinity is set to 1e31 and the assert fails since the expected value of the upper bound is 1e31 when it is COIN_DBL_MAX. The easiest way to fix this is to set INF = 1e25 in Smi/unitTest.cpp (Note that INF is defined at two places in Smi/UnitTest.cpp). After this change, the program still crashes on line 820 (initialSolve()). I could not figure out why, but valgrind detects an error in CoinMpsIO. The allocation of hash_ (in startHash()) is done with a new and the memory is freed with a free() instead of a delete in releaseRedundantInformation(). Also, the destructor in SmiScnModel.cpp does not free memory correctly: several delete must be replace by delete[] to get: SmiScnModel::~SmiScnModel() { delete osiStoch_; if (core_) delete core_; if (drlo_) delete[] drlo_; if (drup_) delete[] drup_; if (dclo_) delete[] dclo_; if (dcup_) delete[] dcup_; if (dobj_) delete[] dobj_; if (matrix_) delete matrix_; Even after correcting all the above, it still crashes. The first error detected by valgrind is: ==28062== Invalid write of size 4 ==28062== at 0xD558C6: ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) (ClpNo nLinearCost.cpp:108) ==28062== by 0xDBBAA3: ClpSimplex::startup(int, int) (ClpSimplex.cpp:5622) ==28062== by 0xDD6081: ClpSimplexPrimal::primal(int, int) (ClpSimplexPrimal.c pp:191) ==28062== by 0xDB3DB5: ClpSimplex::primal(int, int) (ClpSimplex.cpp:3632) ==28062== by 0x647A85: OsiClpSolverInterface::initialSolve() (OsiClpSolverInt erface.cpp:169) ==28062== by 0x8054059: SmiScnModelScenarioUnitTest() (unitTest.cpp:820) ==28062== by 0x8055797: main (unitTest.cpp:1467) ==28062== by 0x674BFB: __libc_start_main (in /lib/libc-2.3.2.so) ==28062== by 0x804D730: (within /home/fmargot/COIN/Smi/Test/Linux-g/unitTest) ==28062== Address 0x49085FC is 0 bytes after a block of size 300504 alloc'd ==28062== at 0x507886: __builtin_vec_new (vg_replace_malloc.c:203) ==28062== by 0x5078DD: operator new[](unsigned) (vg_replace_malloc.c:216) ==28062== by 0xD5580D: ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) (ClpNo nLinearCost.cpp:96) ==28062== by 0xDBBAA3: ClpSimplex::startup(int, int) (ClpSimplex.cpp:5622) ==28062== by 0xDD6081: ClpSimplexPrimal::primal(int, int) (ClpSimplexPrimal.c pp:191) ==28062== by 0xDB3DB5: ClpSimplex::primal(int, int) (ClpSimplex.cpp:3632) ==28062== by 0x647A85: OsiClpSolverInterface::initialSolve() (OsiClpSolverInt erface.cpp:169) ==28062== by 0x8054059: SmiScnModelScenarioUnitTest() (unitTest.cpp:820) ==28062== by 0x8055797: main (unitTest.cpp:1467) ==28062== by 0x674BFB: __libc_start_main (in /lib/libc-2.3.2.so) ==28062== ==28062== Invalid write of size 4 I hope someone knowing a little bit more about Smi than I do can fix this. Francois _______________________________________________ Coin-SMI mailing list Coin-SMI at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-smi -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050311/f6e2dc6a/attachment.html From kingaj at us.ibm.com Sat Mar 12 00:11:38 2005 From: kingaj at us.ibm.com (Alan King) Date: Sat, 12 Mar 2005 00:11:38 -0500 Subject: [Coin-SMI] Fw: Another user wants documentation on SMI (Fw: [Coin-lpsolver] running time) Message-ID: OK -- What more documentation is needed? Alan ----- Forwarded by Alan King/Watson/IBM on 03/12/2005 12:08 AM ----- Robin Lougee-Heimer/Watson/IBM 03/10/2005 09:21 AM To Alan King/Watson/IBM at IBMUS cc cristian.popa at univie.ac.at Subject Another user wants documentation on SMI (Fw: [Coin-lpsolver] running time) Alan: >1. I could not find any documentation on Smi interface, is there any? I know you were working on it. Any progress? Robin ---------------------------------------------------------------------------------- Robin Lougee-Heimer IBM TJ Watson Research Center ph: 914-945-3032 fax: 914-945-3434 robinlh at us.ibm.com http://www.coin-or.org ----- Forwarded by Robin Lougee-Heimer/Watson/IBM on 03/10/2005 09:19 AM ----- "Cristian Popa" Sent by: coin-lpsolver-bounces at list.coin-or.org 03/10/2005 07:16 AM To cc Subject [Coin-lpsolver] running time Hi again, I do not know where I should post questions about Smi and Clp, so I will do it here. If I am in the wrong place please let me know what is the email list for it. I am interested in few questions: 1. I could not find any documentation on Smi interface, is there any? My problem is a stoch one with 2 decision stages, 4 r.v and for each I consider 100x100 tree.To solve this one it takes around 40 min. After the interface reads the data from stoch, time, core file I have the following output on the screen Coin0001I At line 1 NAME SDAA_V27 Coin0001I At line 2 ROWS Coin0001I At line 16 COLUMNS Coin0001I At line 145 RHS Coin0001I At line 158 BOUNDS Coin0001I At line 187 ENDATA Coin0002I Problem SDAA_V27 has 12 rows, 28 columns and 117 elements Coin0001I At line 1 TIME SDAA_V27 Coin0001I At line 2 PERIODS LP Coin0001I At line 6 ENDATA Coin0001I At line 1 STOCH SDAA_V27 Coin0001I At line 2 SCENARIOS DISCRETE REPLACE Coin0001I At line 410403 ENDATA and then the calculations start. 2. Is this a normal time for a such problem? Can this be improved working on the input files? Thanks cheers, Cristian_______________________________________________ Coin-lpsolver mailing list Coin-lpsolver at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-lpsolver -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050312/79d1ca8f/attachment.html From fmargot at andrew.cmu.edu Sat Mar 12 07:19:31 2005 From: fmargot at andrew.cmu.edu (Francois Margot) Date: Sat, 12 Mar 2005 07:19:31 -0500 (EST) Subject: [Coin-SMI] Fw: Another user wants documentation on SMI (Fw: [Coin-lpsolver] running time) Message-ID: Alan: What about a simple 2 periods, 3 scenarios example? What is missing now is a description of a (trivial) problem and its implementation using Smi. Granted, unitTest.cpp might contain examples, but it would be easier to understand what is going on if a description of the problems were available. Francois From bkh at member.fsf.org Sat Mar 12 15:51:16 2005 From: bkh at member.fsf.org (Brady Hunsaker) Date: Sat, 12 Mar 2005 15:51:16 -0500 Subject: [Coin-SMI] added coin-smi to mailing lists page Message-ID: <42335644.9080702@member.fsf.org> I just added the coin-smi list to the mailing lists page. Alan, if you'd prefer a different description of the list then just email it to me or edit the page yourself. Brady From kingaj at us.ibm.com Sun Mar 13 14:26:16 2005 From: kingaj at us.ibm.com (Alan King) Date: Sun, 13 Mar 2005 14:26:16 -0500 Subject: [Coin-SMI] Re: [Coin-lpsolver] Coin-SMI Benders? In-Reply-To: <200503122311.j2CNBgQC030720@iol-b.informs.org> Message-ID: This is correct -- except Brady and I didn't even get a chance to talk about it before we got too busy with other things. David Jensen thinks that we could reuse the BCP stuff. Laci and I spoke about it but that's as far as things have gotten that I'm aware of. "Trevon Fuller" Sent by: coin-lpsolver-bounces at list.coin-or.org 03/12/2005 06:11 PM To cc Subject [Coin-lpsolver] Coin-SMI Benders? Just wanted to verify that Benders decomposition hasn't been implemented in SMI yet -- Brady Hunsaker and Alan King talked about this on the list last June. _______________________________________________ Coin-lpsolver mailing list Coin-lpsolver at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-lpsolver -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050313/a85e5783/attachment.html From kingaj at us.ibm.com Sun Mar 13 15:46:27 2005 From: kingaj at us.ibm.com (Alan King) Date: Sun, 13 Mar 2005 15:46:27 -0500 Subject: Fw: [Coin-SMI] Fw: Another user wants documentation on SMI (Fw: [Coin-lpsolver] running time) Message-ID: Hi Francois, Somone suggested doing the first model in Birge and Louveaux. I think that would be a good idea. Does anyone have some code to donate? :-) Alan ----- Forwarded by Alan King/Watson/IBM on 03/13/2005 03:43 PM ----- Francois Margot Sent by: coin-smi-bounces at list.coin-or.org 03/12/2005 07:19 AM To coin-smi at list.coin-or.org cc Subject Re: [Coin-SMI] Fw: Another user wants documentation on SMI (Fw: [Coin-lpsolver] running time) Alan: What about a simple 2 periods, 3 scenarios example? What is missing now is a description of a (trivial) problem and its implementation using Smi. Granted, unitTest.cpp might contain examples, but it would be easier to understand what is going on if a description of the problems were available. Francois _______________________________________________ Coin-SMI mailing list Coin-SMI at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-smi -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050313/482f8112/attachment.html From kingaj at us.ibm.com Sun Mar 13 22:38:34 2005 From: kingaj at us.ibm.com (Alan King) Date: Sun, 13 Mar 2005 22:38:34 -0500 Subject: [Coin-lpsolver] Fw: [Coin-SMI] Smi unitTest crashes ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) In-Reply-To: Message-ID: Hi John, Someone on coin-smi said they had run it with #define INF COIN_DBL_MAX in both places and still triggered a bug. Let me try to post the obvious fixes first and lets see what happens. I'll try to be sure that my libraries are freshly built. ;-) Alan John J Forrest/Watson/IBM at IBMUS Sent by: coin-lpsolver-bounces at list.coin-or.org 03/13/2005 05:14 PM To coin-smi at list.coin-or.org cc coin-lpsolver at list.coin-or.org Subject Re: [Coin-lpsolver] Fw: [Coin-SMI] Smi unitTest crashes ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) With INF at 1.0e31 the assert fails. With INF at 1.0e25 ClpNonlinearCost.cpp writes beyond the end of array. I will look into that but if I change INF to COIN_DBL_MAX my unitTest succeeds. John Forrest Alan King/Watson/IBM at IBMUS Sent by: coin-lpsolver-bounces at list.coin-or.org 03/11/2005 04:41 PM To coin-lpsolver at list.coin-or.org cc Subject [Coin-lpsolver] Fw: [Coin-SMI] Smi unitTest crashes ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) Hi CLP folks, See below. I'll check the SMI/unitTest but it looks as if it is triggering some strange behavior in Clp. Alan ----- Forwarded by Alan King/Watson/IBM on 03/11/2005 04:39 PM ----- Alan King/Watson/IBM at IBMUS Sent by: coin-smi-bounces at list.coin-or.org 03/11/2005 04:36 PM To coin-smi at list.coin-or.org cc Subject Re: [Coin-SMI] Smi unitTest crashes Hi Francois, I will make the fixes. Thanks! The remaining problem appears to emanate from CLP. I'll post it to the lpsolver discussion list and check it out. Alan Francois Margot Sent by: coin-smi-bounces at list.coin-or.org 03/11/2005 09:22 AM To coin-smi at list.coin-or.org cc Subject [Coin-SMI] Smi unitTest crashes Hi: Note that the information on the coin-smi mailing list does not appear on the main page at: http://www.coin-or.org/mail.html It only appears on: http://list.coin-or.org/mailman/listinfo/ The following is a repost of the message I sent to coin-discuss yesterday. All COIN and Smi code are compiled with -g, lapack, and blas installed. The unitTest of Smi fails on an assert related to upper bounds on variables. This comes from the fact that ClpModel::gutsOfLoadModel readjusts the upper bounds to COIN_DBL_MAX when the upper bound is > 1e27. In the unitTest code, infinity is set to 1e31 and the assert fails since the expected value of the upper bound is 1e31 when it is COIN_DBL_MAX. The easiest way to fix this is to set INF = 1e25 in Smi/unitTest.cpp (Note that INF is defined at two places in Smi/UnitTest.cpp). After this change, the program still crashes on line 820 (initialSolve()). I could not figure out why, but valgrind detects an error in CoinMpsIO. The allocation of hash_ (in startHash()) is done with a new and the memory is freed with a free() instead of a delete in releaseRedundantInformation(). Also, the destructor in SmiScnModel.cpp does not free memory correctly: several delete must be replace by delete[] to get: SmiScnModel::~SmiScnModel() { delete osiStoch_; if (core_) delete core_; if (drlo_) delete[] drlo_; if (drup_) delete[] drup_; if (dclo_) delete[] dclo_; if (dcup_) delete[] dcup_; if (dobj_) delete[] dobj_; if (matrix_) delete matrix_; Even after correcting all the above, it still crashes. The first error detected by valgrind is: ==28062== Invalid write of size 4 ==28062== at 0xD558C6: ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) (ClpNo nLinearCost.cpp:108) ==28062== by 0xDBBAA3: ClpSimplex::startup(int, int) (ClpSimplex.cpp:5622) ==28062== by 0xDD6081: ClpSimplexPrimal::primal(int, int) (ClpSimplexPrimal.c pp:191) ==28062== by 0xDB3DB5: ClpSimplex::primal(int, int) (ClpSimplex.cpp:3632) ==28062== by 0x647A85: OsiClpSolverInterface::initialSolve() (OsiClpSolverInt erface.cpp:169) ==28062== by 0x8054059: SmiScnModelScenarioUnitTest() (unitTest.cpp:820) ==28062== by 0x8055797: main (unitTest.cpp:1467) ==28062== by 0x674BFB: __libc_start_main (in /lib/libc-2.3.2.so) ==28062== by 0x804D730: (within /home/fmargot/COIN/Smi/Test/Linux-g/unitTest) ==28062== Address 0x49085FC is 0 bytes after a block of size 300504 alloc'd ==28062== at 0x507886: __builtin_vec_new (vg_replace_malloc.c:203) ==28062== by 0x5078DD: operator new[](unsigned) (vg_replace_malloc.c:216) ==28062== by 0xD5580D: ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) (ClpNo nLinearCost.cpp:96) ==28062== by 0xDBBAA3: ClpSimplex::startup(int, int) (ClpSimplex.cpp:5622) ==28062== by 0xDD6081: ClpSimplexPrimal::primal(int, int) (ClpSimplexPrimal.c pp:191) ==28062== by 0xDB3DB5: ClpSimplex::primal(int, int) (ClpSimplex.cpp:3632) ==28062== by 0x647A85: OsiClpSolverInterface::initialSolve() (OsiClpSolverInt erface.cpp:169) ==28062== by 0x8054059: SmiScnModelScenarioUnitTest() (unitTest.cpp:820) ==28062== by 0x8055797: main (unitTest.cpp:1467) ==28062== by 0x674BFB: __libc_start_main (in /lib/libc-2.3.2.so) ==28062== ==28062== Invalid write of size 4 I hope someone knowing a little bit more about Smi than I do can fix this. Francois _______________________________________________ Coin-SMI mailing list Coin-SMI at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-smi _______________________________________________ Coin-SMI mailing list Coin-SMI at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-smi_______________________________________________ Coin-lpsolver mailing list Coin-lpsolver at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-lpsolver _______________________________________________ Coin-lpsolver mailing list Coin-lpsolver at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-lpsolver -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050313/da0514ea/attachment.html From jjforre at us.ibm.com Sun Mar 13 17:14:30 2005 From: jjforre at us.ibm.com (John J Forrest) Date: Sun, 13 Mar 2005 17:14:30 -0500 Subject: [Coin-lpsolver] Fw: [Coin-SMI] Smi unitTest crashes ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) In-Reply-To: Message-ID: With INF at 1.0e31 the assert fails. With INF at 1.0e25 ClpNonlinearCost.cpp writes beyond the end of array. I will look into that but if I change INF to COIN_DBL_MAX my unitTest succeeds. John Forrest Alan King/Watson/IBM at IBMUS Sent by: coin-lpsolver-bounces at list.coin-or.org 03/11/2005 04:41 PM To coin-lpsolver at list.coin-or.org cc Subject [Coin-lpsolver] Fw: [Coin-SMI] Smi unitTest crashes ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) Hi CLP folks, See below. I'll check the SMI/unitTest but it looks as if it is triggering some strange behavior in Clp. Alan ----- Forwarded by Alan King/Watson/IBM on 03/11/2005 04:39 PM ----- Alan King/Watson/IBM at IBMUS Sent by: coin-smi-bounces at list.coin-or.org 03/11/2005 04:36 PM To coin-smi at list.coin-or.org cc Subject Re: [Coin-SMI] Smi unitTest crashes Hi Francois, I will make the fixes. Thanks! The remaining problem appears to emanate from CLP. I'll post it to the lpsolver discussion list and check it out. Alan Francois Margot Sent by: coin-smi-bounces at list.coin-or.org 03/11/2005 09:22 AM To coin-smi at list.coin-or.org cc Subject [Coin-SMI] Smi unitTest crashes Hi: Note that the information on the coin-smi mailing list does not appear on the main page at: http://www.coin-or.org/mail.html It only appears on: http://list.coin-or.org/mailman/listinfo/ The following is a repost of the message I sent to coin-discuss yesterday. All COIN and Smi code are compiled with -g, lapack, and blas installed. The unitTest of Smi fails on an assert related to upper bounds on variables. This comes from the fact that ClpModel::gutsOfLoadModel readjusts the upper bounds to COIN_DBL_MAX when the upper bound is > 1e27. In the unitTest code, infinity is set to 1e31 and the assert fails since the expected value of the upper bound is 1e31 when it is COIN_DBL_MAX. The easiest way to fix this is to set INF = 1e25 in Smi/unitTest.cpp (Note that INF is defined at two places in Smi/UnitTest.cpp). After this change, the program still crashes on line 820 (initialSolve()). I could not figure out why, but valgrind detects an error in CoinMpsIO. The allocation of hash_ (in startHash()) is done with a new and the memory is freed with a free() instead of a delete in releaseRedundantInformation(). Also, the destructor in SmiScnModel.cpp does not free memory correctly: several delete must be replace by delete[] to get: SmiScnModel::~SmiScnModel() { delete osiStoch_; if (core_) delete core_; if (drlo_) delete[] drlo_; if (drup_) delete[] drup_; if (dclo_) delete[] dclo_; if (dcup_) delete[] dcup_; if (dobj_) delete[] dobj_; if (matrix_) delete matrix_; Even after correcting all the above, it still crashes. The first error detected by valgrind is: ==28062== Invalid write of size 4 ==28062== at 0xD558C6: ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) (ClpNo nLinearCost.cpp:108) ==28062== by 0xDBBAA3: ClpSimplex::startup(int, int) (ClpSimplex.cpp:5622) ==28062== by 0xDD6081: ClpSimplexPrimal::primal(int, int) (ClpSimplexPrimal.c pp:191) ==28062== by 0xDB3DB5: ClpSimplex::primal(int, int) (ClpSimplex.cpp:3632) ==28062== by 0x647A85: OsiClpSolverInterface::initialSolve() (OsiClpSolverInt erface.cpp:169) ==28062== by 0x8054059: SmiScnModelScenarioUnitTest() (unitTest.cpp:820) ==28062== by 0x8055797: main (unitTest.cpp:1467) ==28062== by 0x674BFB: __libc_start_main (in /lib/libc-2.3.2.so) ==28062== by 0x804D730: (within /home/fmargot/COIN/Smi/Test/Linux-g/unitTest) ==28062== Address 0x49085FC is 0 bytes after a block of size 300504 alloc'd ==28062== at 0x507886: __builtin_vec_new (vg_replace_malloc.c:203) ==28062== by 0x5078DD: operator new[](unsigned) (vg_replace_malloc.c:216) ==28062== by 0xD5580D: ClpNonLinearCost::ClpNonLinearCost(ClpSimplex*) (ClpNo nLinearCost.cpp:96) ==28062== by 0xDBBAA3: ClpSimplex::startup(int, int) (ClpSimplex.cpp:5622) ==28062== by 0xDD6081: ClpSimplexPrimal::primal(int, int) (ClpSimplexPrimal.c pp:191) ==28062== by 0xDB3DB5: ClpSimplex::primal(int, int) (ClpSimplex.cpp:3632) ==28062== by 0x647A85: OsiClpSolverInterface::initialSolve() (OsiClpSolverInt erface.cpp:169) ==28062== by 0x8054059: SmiScnModelScenarioUnitTest() (unitTest.cpp:820) ==28062== by 0x8055797: main (unitTest.cpp:1467) ==28062== by 0x674BFB: __libc_start_main (in /lib/libc-2.3.2.so) ==28062== ==28062== Invalid write of size 4 I hope someone knowing a little bit more about Smi than I do can fix this. Francois _______________________________________________ Coin-SMI mailing list Coin-SMI at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-smi _______________________________________________ Coin-SMI mailing list Coin-SMI at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-smi _______________________________________________ Coin-lpsolver mailing list Coin-lpsolver at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-lpsolver -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050313/8228f853/attachment.html From robinlh at us.ibm.com Mon Mar 14 10:12:07 2005 From: robinlh at us.ibm.com (Robin Lougee-Heimer) Date: Mon, 14 Mar 2005 10:12:07 -0500 Subject: [Coin-SMI] Coin-SMI Benders? Message-ID: ----- Forwarded by Robin Lougee-Heimer/Watson/IBM on 03/14/2005 10:02 AM ----- "Trevon Fuller" Sent by: coin-lpsolver-bounces at list.coin-or.org 03/12/2005 06:11 PM To cc Subject [Coin-lpsolver] Coin-SMI Benders? Just wanted to verify that Benders decomposition hasn't been implemented in SMI yet -- Brady Hunsaker and Alan King talked about this on the list last June. _______________________________________________ Coin-lpsolver mailing list Coin-lpsolver at list.coin-or.org http://list.coin-or.org/mailman/listinfo/coin-lpsolver -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050314/de3190e8/attachment.html From kingaj at us.ibm.com Tue Mar 15 20:54:56 2005 From: kingaj at us.ibm.com (Alan King) Date: Tue, 15 Mar 2005 20:54:56 -0500 Subject: [Coin-SMI] Smi unitTest works for me Message-ID: I have checked this for myself on CYGWIN. It appears as if John Forrest's posted fix #define INF COIN_DBL_MAX works fine. Alan -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050315/fbdb15af/attachment.html From kingaj at us.ibm.com Tue Mar 15 21:01:02 2005 From: kingaj at us.ibm.com (Alan King) Date: Tue, 15 Mar 2005 21:01:02 -0500 Subject: [Coin-SMI] Fw: Another user wants documentation on SMI (Fw: [Coin-lpsolver] running time) Message-ID: Hi Folks There is an example posted. Look at COIN/Examples/Stoch/stoch.cpp Does this help you understand what is going on? Not that I am trying to get out of doing documentation :-) ...but at this low level of abstraction I think that coding samples are more helpful. Alan -------------- next part -------------- An HTML attachment was scrubbed... URL: http://list.coin-or.org/pipermail/smi/attachments/20050315/a15e9e4f/attachment.html From fmargot at andrew.cmu.edu Wed Mar 16 12:05:52 2005 From: fmargot at andrew.cmu.edu (Francois Margot) Date: Wed, 16 Mar 2005 12:05:52 -0500 (EST) Subject: [Coin-SMI] Fw: Another user wants documentation on SMI (Fw:> [Coin-lpsolver] running time) In-Reply-To: <200503161700.j2GH02tf018916@iol-b.informs.org> References: <200503161700.j2GH02tf018916@iol-b.informs.org> Message-ID: Alan: What I am missing is the mathematical description of the models implemented in the code. It would be much easier to understand the code if I knew what is implemented beforehand. I also noticed that INF is still defined as 1e31 in the example. I did not try to run it, but it might be a good idea to use COIN_DBL_MAX there too. Using COIN_DBL_MAX in unitTest indeed does the trick. Francois > > Message: 2 > Date: Tue, 15 Mar 2005 21:01:02 -0500 > From: Alan King > Subject: [Coin-SMI] Fw: Another user wants documentation on SMI (Fw: > [Coin-lpsolver] running time) > To: coin-smi at list.coin-or.org > Message-ID: > > Content-Type: text/plain; charset="us-ascii" > > Hi Folks > > There is an example posted. Look at COIN/Examples/Stoch/stoch.cpp > Does this help you understand what is going on? > > Not that I am trying to get out of doing documentation :-) > ...but at this low level of abstraction I think that coding samples are > more helpful. > > Alan