ruby-cbc 0.1.9 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (290) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +5 -5
  3. data/Rakefile +0 -2
  4. data/lib/ruby-cbc.rb +1 -1
  5. data/lib/ruby-cbc/problem.rb +6 -8
  6. data/lib/ruby-cbc/version.rb +1 -1
  7. data/ruby-cbc.gemspec +3 -2
  8. metadata +17 -287
  9. data/ext/ruby-cbc/cbc.i +0 -15
  10. data/ext/ruby-cbc/cbc_wrap.c +0 -4618
  11. data/ext/ruby-cbc/extconf.rb +0 -60
  12. data/ext/ruby-cbc/install/bin/cbc +0 -0
  13. data/ext/ruby-cbc/install/bin/clp +0 -0
  14. data/ext/ruby-cbc/install/include/coin/CbcBranchActual.hpp +0 -24
  15. data/ext/ruby-cbc/install/include/coin/CbcBranchAllDifferent.hpp +0 -62
  16. data/ext/ruby-cbc/install/include/coin/CbcBranchBase.hpp +0 -78
  17. data/ext/ruby-cbc/install/include/coin/CbcBranchCut.hpp +0 -183
  18. data/ext/ruby-cbc/install/include/coin/CbcBranchDecision.hpp +0 -129
  19. data/ext/ruby-cbc/install/include/coin/CbcBranchDefaultDecision.hpp +0 -100
  20. data/ext/ruby-cbc/install/include/coin/CbcBranchDynamic.hpp +0 -206
  21. data/ext/ruby-cbc/install/include/coin/CbcBranchLotsize.hpp +0 -242
  22. data/ext/ruby-cbc/install/include/coin/CbcBranchToFixLots.hpp +0 -94
  23. data/ext/ruby-cbc/install/include/coin/CbcBranchingObject.hpp +0 -236
  24. data/ext/ruby-cbc/install/include/coin/CbcClique.hpp +0 -303
  25. data/ext/ruby-cbc/install/include/coin/CbcCompare.hpp +0 -39
  26. data/ext/ruby-cbc/install/include/coin/CbcCompareActual.hpp +0 -14
  27. data/ext/ruby-cbc/install/include/coin/CbcCompareBase.hpp +0 -142
  28. data/ext/ruby-cbc/install/include/coin/CbcCompareDefault.hpp +0 -120
  29. data/ext/ruby-cbc/install/include/coin/CbcCompareDepth.hpp +0 -47
  30. data/ext/ruby-cbc/install/include/coin/CbcCompareEstimate.hpp +0 -48
  31. data/ext/ruby-cbc/install/include/coin/CbcCompareObjective.hpp +0 -49
  32. data/ext/ruby-cbc/install/include/coin/CbcConfig.h +0 -14
  33. data/ext/ruby-cbc/install/include/coin/CbcConsequence.hpp +0 -49
  34. data/ext/ruby-cbc/install/include/coin/CbcCountRowCut.hpp +0 -168
  35. data/ext/ruby-cbc/install/include/coin/CbcCutGenerator.hpp +0 -482
  36. data/ext/ruby-cbc/install/include/coin/CbcCutModifier.hpp +0 -57
  37. data/ext/ruby-cbc/install/include/coin/CbcCutSubsetModifier.hpp +0 -66
  38. data/ext/ruby-cbc/install/include/coin/CbcDummyBranchingObject.hpp +0 -83
  39. data/ext/ruby-cbc/install/include/coin/CbcEventHandler.hpp +0 -245
  40. data/ext/ruby-cbc/install/include/coin/CbcFathom.hpp +0 -137
  41. data/ext/ruby-cbc/install/include/coin/CbcFathomDynamicProgramming.hpp +0 -169
  42. data/ext/ruby-cbc/install/include/coin/CbcFeasibilityBase.hpp +0 -56
  43. data/ext/ruby-cbc/install/include/coin/CbcFixVariable.hpp +0 -67
  44. data/ext/ruby-cbc/install/include/coin/CbcFollowOn.hpp +0 -207
  45. data/ext/ruby-cbc/install/include/coin/CbcFullNodeInfo.hpp +0 -161
  46. data/ext/ruby-cbc/install/include/coin/CbcGeneral.hpp +0 -60
  47. data/ext/ruby-cbc/install/include/coin/CbcGeneralDepth.hpp +0 -279
  48. data/ext/ruby-cbc/install/include/coin/CbcHeuristic.hpp +0 -682
  49. data/ext/ruby-cbc/install/include/coin/CbcHeuristicDINS.hpp +0 -96
  50. data/ext/ruby-cbc/install/include/coin/CbcHeuristicDW.hpp +0 -309
  51. data/ext/ruby-cbc/install/include/coin/CbcHeuristicDive.hpp +0 -192
  52. data/ext/ruby-cbc/install/include/coin/CbcHeuristicDiveCoefficient.hpp +0 -52
  53. data/ext/ruby-cbc/install/include/coin/CbcHeuristicDiveFractional.hpp +0 -52
  54. data/ext/ruby-cbc/install/include/coin/CbcHeuristicDiveGuided.hpp +0 -55
  55. data/ext/ruby-cbc/install/include/coin/CbcHeuristicDiveLineSearch.hpp +0 -52
  56. data/ext/ruby-cbc/install/include/coin/CbcHeuristicDivePseudoCost.hpp +0 -60
  57. data/ext/ruby-cbc/install/include/coin/CbcHeuristicDiveVectorLength.hpp +0 -52
  58. data/ext/ruby-cbc/install/include/coin/CbcHeuristicFPump.hpp +0 -340
  59. data/ext/ruby-cbc/install/include/coin/CbcHeuristicGreedy.hpp +0 -280
  60. data/ext/ruby-cbc/install/include/coin/CbcHeuristicLocal.hpp +0 -271
  61. data/ext/ruby-cbc/install/include/coin/CbcHeuristicPivotAndFix.hpp +0 -58
  62. data/ext/ruby-cbc/install/include/coin/CbcHeuristicRENS.hpp +0 -77
  63. data/ext/ruby-cbc/install/include/coin/CbcHeuristicRINS.hpp +0 -102
  64. data/ext/ruby-cbc/install/include/coin/CbcHeuristicRandRound.hpp +0 -58
  65. data/ext/ruby-cbc/install/include/coin/CbcHeuristicVND.hpp +0 -94
  66. data/ext/ruby-cbc/install/include/coin/CbcLinked.hpp +0 -1406
  67. data/ext/ruby-cbc/install/include/coin/CbcMessage.hpp +0 -94
  68. data/ext/ruby-cbc/install/include/coin/CbcMipStartIO.hpp +0 -26
  69. data/ext/ruby-cbc/install/include/coin/CbcModel.hpp +0 -2952
  70. data/ext/ruby-cbc/install/include/coin/CbcNWay.hpp +0 -166
  71. data/ext/ruby-cbc/install/include/coin/CbcNode.hpp +0 -351
  72. data/ext/ruby-cbc/install/include/coin/CbcNodeInfo.hpp +0 -349
  73. data/ext/ruby-cbc/install/include/coin/CbcObject.hpp +0 -272
  74. data/ext/ruby-cbc/install/include/coin/CbcObjectUpdateData.hpp +0 -64
  75. data/ext/ruby-cbc/install/include/coin/CbcOrClpParam.cpp +0 -4134
  76. data/ext/ruby-cbc/install/include/coin/CbcOrClpParam.hpp +0 -532
  77. data/ext/ruby-cbc/install/include/coin/CbcParam.hpp +0 -324
  78. data/ext/ruby-cbc/install/include/coin/CbcPartialNodeInfo.hpp +0 -110
  79. data/ext/ruby-cbc/install/include/coin/CbcSOS.hpp +0 -279
  80. data/ext/ruby-cbc/install/include/coin/CbcSimpleInteger.hpp +0 -286
  81. data/ext/ruby-cbc/install/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp +0 -564
  82. data/ext/ruby-cbc/install/include/coin/CbcSimpleIntegerPseudoCost.hpp +0 -114
  83. data/ext/ruby-cbc/install/include/coin/CbcSolver.hpp +0 -447
  84. data/ext/ruby-cbc/install/include/coin/CbcStrategy.hpp +0 -258
  85. data/ext/ruby-cbc/install/include/coin/CbcSubProblem.hpp +0 -83
  86. data/ext/ruby-cbc/install/include/coin/CbcTree.hpp +0 -490
  87. data/ext/ruby-cbc/install/include/coin/CbcTreeLocal.hpp +0 -372
  88. data/ext/ruby-cbc/install/include/coin/Cbc_C_Interface.h +0 -381
  89. data/ext/ruby-cbc/install/include/coin/Cgl012cut.hpp +0 -464
  90. data/ext/ruby-cbc/install/include/coin/CglAllDifferent.hpp +0 -115
  91. data/ext/ruby-cbc/install/include/coin/CglClique.hpp +0 -308
  92. data/ext/ruby-cbc/install/include/coin/CglConfig.h +0 -19
  93. data/ext/ruby-cbc/install/include/coin/CglCutGenerator.hpp +0 -121
  94. data/ext/ruby-cbc/install/include/coin/CglDuplicateRow.hpp +0 -189
  95. data/ext/ruby-cbc/install/include/coin/CglFlowCover.hpp +0 -371
  96. data/ext/ruby-cbc/install/include/coin/CglGMI.hpp +0 -364
  97. data/ext/ruby-cbc/install/include/coin/CglGMIParam.hpp +0 -313
  98. data/ext/ruby-cbc/install/include/coin/CglGomory.hpp +0 -204
  99. data/ext/ruby-cbc/install/include/coin/CglKnapsackCover.hpp +0 -310
  100. data/ext/ruby-cbc/install/include/coin/CglLandP.hpp +0 -306
  101. data/ext/ruby-cbc/install/include/coin/CglLandPValidator.hpp +0 -130
  102. data/ext/ruby-cbc/install/include/coin/CglLiftAndProject.hpp +0 -104
  103. data/ext/ruby-cbc/install/include/coin/CglMessage.hpp +0 -50
  104. data/ext/ruby-cbc/install/include/coin/CglMixedIntegerRounding.hpp +0 -429
  105. data/ext/ruby-cbc/install/include/coin/CglMixedIntegerRounding2.hpp +0 -427
  106. data/ext/ruby-cbc/install/include/coin/CglOddHole.hpp +0 -160
  107. data/ext/ruby-cbc/install/include/coin/CglParam.hpp +0 -93
  108. data/ext/ruby-cbc/install/include/coin/CglPreProcess.hpp +0 -492
  109. data/ext/ruby-cbc/install/include/coin/CglProbing.hpp +0 -543
  110. data/ext/ruby-cbc/install/include/coin/CglRedSplit.hpp +0 -448
  111. data/ext/ruby-cbc/install/include/coin/CglRedSplit2.hpp +0 -494
  112. data/ext/ruby-cbc/install/include/coin/CglRedSplit2Param.hpp +0 -495
  113. data/ext/ruby-cbc/install/include/coin/CglRedSplitParam.hpp +0 -272
  114. data/ext/ruby-cbc/install/include/coin/CglResidualCapacity.hpp +0 -240
  115. data/ext/ruby-cbc/install/include/coin/CglSimpleRounding.hpp +0 -174
  116. data/ext/ruby-cbc/install/include/coin/CglStored.hpp +0 -125
  117. data/ext/ruby-cbc/install/include/coin/CglTreeInfo.hpp +0 -180
  118. data/ext/ruby-cbc/install/include/coin/CglTwomir.hpp +0 -565
  119. data/ext/ruby-cbc/install/include/coin/CglZeroHalf.hpp +0 -133
  120. data/ext/ruby-cbc/install/include/coin/ClpAmplObjective.hpp +0 -113
  121. data/ext/ruby-cbc/install/include/coin/ClpCholeskyBase.hpp +0 -294
  122. data/ext/ruby-cbc/install/include/coin/ClpCholeskyDense.hpp +0 -162
  123. data/ext/ruby-cbc/install/include/coin/ClpConfig.h +0 -17
  124. data/ext/ruby-cbc/install/include/coin/ClpConstraint.hpp +0 -125
  125. data/ext/ruby-cbc/install/include/coin/ClpConstraintAmpl.hpp +0 -108
  126. data/ext/ruby-cbc/install/include/coin/ClpConstraintLinear.hpp +0 -110
  127. data/ext/ruby-cbc/install/include/coin/ClpConstraintQuadratic.hpp +0 -119
  128. data/ext/ruby-cbc/install/include/coin/ClpDualRowDantzig.hpp +0 -71
  129. data/ext/ruby-cbc/install/include/coin/ClpDualRowPivot.hpp +0 -129
  130. data/ext/ruby-cbc/install/include/coin/ClpDualRowSteepest.hpp +0 -153
  131. data/ext/ruby-cbc/install/include/coin/ClpDummyMatrix.hpp +0 -183
  132. data/ext/ruby-cbc/install/include/coin/ClpDynamicExampleMatrix.hpp +0 -186
  133. data/ext/ruby-cbc/install/include/coin/ClpDynamicMatrix.hpp +0 -381
  134. data/ext/ruby-cbc/install/include/coin/ClpEventHandler.hpp +0 -187
  135. data/ext/ruby-cbc/install/include/coin/ClpFactorization.hpp +0 -432
  136. data/ext/ruby-cbc/install/include/coin/ClpGubDynamicMatrix.hpp +0 -247
  137. data/ext/ruby-cbc/install/include/coin/ClpGubMatrix.hpp +0 -358
  138. data/ext/ruby-cbc/install/include/coin/ClpInterior.hpp +0 -570
  139. data/ext/ruby-cbc/install/include/coin/ClpLinearObjective.hpp +0 -103
  140. data/ext/ruby-cbc/install/include/coin/ClpMatrixBase.hpp +0 -524
  141. data/ext/ruby-cbc/install/include/coin/ClpMessage.hpp +0 -131
  142. data/ext/ruby-cbc/install/include/coin/ClpModel.hpp +0 -1307
  143. data/ext/ruby-cbc/install/include/coin/ClpNetworkMatrix.hpp +0 -229
  144. data/ext/ruby-cbc/install/include/coin/ClpNode.hpp +0 -349
  145. data/ext/ruby-cbc/install/include/coin/ClpNonLinearCost.hpp +0 -401
  146. data/ext/ruby-cbc/install/include/coin/ClpObjective.hpp +0 -134
  147. data/ext/ruby-cbc/install/include/coin/ClpPackedMatrix.hpp +0 -638
  148. data/ext/ruby-cbc/install/include/coin/ClpParameters.hpp +0 -126
  149. data/ext/ruby-cbc/install/include/coin/ClpPdcoBase.hpp +0 -103
  150. data/ext/ruby-cbc/install/include/coin/ClpPlusMinusOneMatrix.hpp +0 -290
  151. data/ext/ruby-cbc/install/include/coin/ClpPresolve.hpp +0 -299
  152. data/ext/ruby-cbc/install/include/coin/ClpPrimalColumnDantzig.hpp +0 -72
  153. data/ext/ruby-cbc/install/include/coin/ClpPrimalColumnPivot.hpp +0 -155
  154. data/ext/ruby-cbc/install/include/coin/ClpPrimalColumnSteepest.hpp +0 -247
  155. data/ext/ruby-cbc/install/include/coin/ClpQuadraticObjective.hpp +0 -155
  156. data/ext/ruby-cbc/install/include/coin/ClpSimplex.hpp +0 -1797
  157. data/ext/ruby-cbc/install/include/coin/ClpSimplexDual.hpp +0 -300
  158. data/ext/ruby-cbc/install/include/coin/ClpSimplexNonlinear.hpp +0 -117
  159. data/ext/ruby-cbc/install/include/coin/ClpSimplexOther.hpp +0 -277
  160. data/ext/ruby-cbc/install/include/coin/ClpSimplexPrimal.hpp +0 -244
  161. data/ext/ruby-cbc/install/include/coin/ClpSolve.hpp +0 -446
  162. data/ext/ruby-cbc/install/include/coin/Clp_C_Interface.h +0 -525
  163. data/ext/ruby-cbc/install/include/coin/CoinAlloc.hpp +0 -176
  164. data/ext/ruby-cbc/install/include/coin/CoinBuild.hpp +0 -149
  165. data/ext/ruby-cbc/install/include/coin/CoinDenseFactorization.hpp +0 -419
  166. data/ext/ruby-cbc/install/include/coin/CoinDenseVector.hpp +0 -383
  167. data/ext/ruby-cbc/install/include/coin/CoinDistance.hpp +0 -48
  168. data/ext/ruby-cbc/install/include/coin/CoinError.hpp +0 -257
  169. data/ext/ruby-cbc/install/include/coin/CoinFactorization.hpp +0 -2044
  170. data/ext/ruby-cbc/install/include/coin/CoinFileIO.hpp +0 -166
  171. data/ext/ruby-cbc/install/include/coin/CoinFinite.hpp +0 -34
  172. data/ext/ruby-cbc/install/include/coin/CoinFloatEqual.hpp +0 -177
  173. data/ext/ruby-cbc/install/include/coin/CoinHelperFunctions.hpp +0 -1111
  174. data/ext/ruby-cbc/install/include/coin/CoinIndexedVector.hpp +0 -1164
  175. data/ext/ruby-cbc/install/include/coin/CoinLpIO.hpp +0 -805
  176. data/ext/ruby-cbc/install/include/coin/CoinMessage.hpp +0 -96
  177. data/ext/ruby-cbc/install/include/coin/CoinMessageHandler.hpp +0 -666
  178. data/ext/ruby-cbc/install/include/coin/CoinModel.hpp +0 -1054
  179. data/ext/ruby-cbc/install/include/coin/CoinModelUseful.hpp +0 -441
  180. data/ext/ruby-cbc/install/include/coin/CoinMpsIO.hpp +0 -1056
  181. data/ext/ruby-cbc/install/include/coin/CoinOslFactorization.hpp +0 -280
  182. data/ext/ruby-cbc/install/include/coin/CoinPackedMatrix.hpp +0 -947
  183. data/ext/ruby-cbc/install/include/coin/CoinPackedVector.hpp +0 -657
  184. data/ext/ruby-cbc/install/include/coin/CoinPackedVectorBase.hpp +0 -269
  185. data/ext/ruby-cbc/install/include/coin/CoinParam.hpp +0 -644
  186. data/ext/ruby-cbc/install/include/coin/CoinPragma.hpp +0 -26
  187. data/ext/ruby-cbc/install/include/coin/CoinPresolveDoubleton.hpp +0 -73
  188. data/ext/ruby-cbc/install/include/coin/CoinPresolveDual.hpp +0 -85
  189. data/ext/ruby-cbc/install/include/coin/CoinPresolveDupcol.hpp +0 -226
  190. data/ext/ruby-cbc/install/include/coin/CoinPresolveEmpty.hpp +0 -116
  191. data/ext/ruby-cbc/install/include/coin/CoinPresolveFixed.hpp +0 -181
  192. data/ext/ruby-cbc/install/include/coin/CoinPresolveForcing.hpp +0 -61
  193. data/ext/ruby-cbc/install/include/coin/CoinPresolveImpliedFree.hpp +0 -60
  194. data/ext/ruby-cbc/install/include/coin/CoinPresolveIsolated.hpp +0 -51
  195. data/ext/ruby-cbc/install/include/coin/CoinPresolveMatrix.hpp +0 -1842
  196. data/ext/ruby-cbc/install/include/coin/CoinPresolveMonitor.hpp +0 -105
  197. data/ext/ruby-cbc/install/include/coin/CoinPresolvePsdebug.hpp +0 -166
  198. data/ext/ruby-cbc/install/include/coin/CoinPresolveSingleton.hpp +0 -112
  199. data/ext/ruby-cbc/install/include/coin/CoinPresolveSubst.hpp +0 -101
  200. data/ext/ruby-cbc/install/include/coin/CoinPresolveTighten.hpp +0 -55
  201. data/ext/ruby-cbc/install/include/coin/CoinPresolveTripleton.hpp +0 -66
  202. data/ext/ruby-cbc/install/include/coin/CoinPresolveUseless.hpp +0 -63
  203. data/ext/ruby-cbc/install/include/coin/CoinPresolveZeros.hpp +0 -60
  204. data/ext/ruby-cbc/install/include/coin/CoinRational.hpp +0 -44
  205. data/ext/ruby-cbc/install/include/coin/CoinSearchTree.hpp +0 -465
  206. data/ext/ruby-cbc/install/include/coin/CoinShallowPackedVector.hpp +0 -148
  207. data/ext/ruby-cbc/install/include/coin/CoinSignal.hpp +0 -117
  208. data/ext/ruby-cbc/install/include/coin/CoinSimpFactorization.hpp +0 -431
  209. data/ext/ruby-cbc/install/include/coin/CoinSmartPtr.hpp +0 -528
  210. data/ext/ruby-cbc/install/include/coin/CoinSnapshot.hpp +0 -476
  211. data/ext/ruby-cbc/install/include/coin/CoinSort.hpp +0 -678
  212. data/ext/ruby-cbc/install/include/coin/CoinStructuredModel.hpp +0 -247
  213. data/ext/ruby-cbc/install/include/coin/CoinTime.hpp +0 -310
  214. data/ext/ruby-cbc/install/include/coin/CoinTypes.hpp +0 -64
  215. data/ext/ruby-cbc/install/include/coin/CoinUtility.hpp +0 -19
  216. data/ext/ruby-cbc/install/include/coin/CoinUtilsConfig.h +0 -34
  217. data/ext/ruby-cbc/install/include/coin/CoinWarmStart.hpp +0 -58
  218. data/ext/ruby-cbc/install/include/coin/CoinWarmStartBasis.hpp +0 -456
  219. data/ext/ruby-cbc/install/include/coin/CoinWarmStartDual.hpp +0 -166
  220. data/ext/ruby-cbc/install/include/coin/CoinWarmStartPrimalDual.hpp +0 -211
  221. data/ext/ruby-cbc/install/include/coin/CoinWarmStartVector.hpp +0 -488
  222. data/ext/ruby-cbc/install/include/coin/Coin_C_defines.h +0 -115
  223. data/ext/ruby-cbc/install/include/coin/Idiot.hpp +0 -298
  224. data/ext/ruby-cbc/install/include/coin/OsiAuxInfo.hpp +0 -206
  225. data/ext/ruby-cbc/install/include/coin/OsiBranchingObject.hpp +0 -1005
  226. data/ext/ruby-cbc/install/include/coin/OsiCbcSolverInterface.hpp +0 -764
  227. data/ext/ruby-cbc/install/include/coin/OsiChooseVariable.hpp +0 -534
  228. data/ext/ruby-cbc/install/include/coin/OsiClpSolverInterface.hpp +0 -1509
  229. data/ext/ruby-cbc/install/include/coin/OsiColCut.hpp +0 -324
  230. data/ext/ruby-cbc/install/include/coin/OsiCollections.hpp +0 -35
  231. data/ext/ruby-cbc/install/include/coin/OsiConfig.h +0 -19
  232. data/ext/ruby-cbc/install/include/coin/OsiCut.hpp +0 -245
  233. data/ext/ruby-cbc/install/include/coin/OsiCuts.hpp +0 -474
  234. data/ext/ruby-cbc/install/include/coin/OsiPresolve.hpp +0 -252
  235. data/ext/ruby-cbc/install/include/coin/OsiRowCut.hpp +0 -331
  236. data/ext/ruby-cbc/install/include/coin/OsiRowCutDebugger.hpp +0 -187
  237. data/ext/ruby-cbc/install/include/coin/OsiSolverBranch.hpp +0 -152
  238. data/ext/ruby-cbc/install/include/coin/OsiSolverInterface.hpp +0 -2143
  239. data/ext/ruby-cbc/install/include/coin/OsiSolverParameters.hpp +0 -142
  240. data/ext/ruby-cbc/install/include/coin/OsiUnitTests.hpp +0 -374
  241. data/ext/ruby-cbc/install/lib/libCbc.la +0 -35
  242. data/ext/ruby-cbc/install/lib/libCbc.so +0 -0
  243. data/ext/ruby-cbc/install/lib/libCbc.so.3 +0 -0
  244. data/ext/ruby-cbc/install/lib/libCbc.so.3.9.7 +0 -0
  245. data/ext/ruby-cbc/install/lib/libCbcSolver.la +0 -35
  246. data/ext/ruby-cbc/install/lib/libCbcSolver.so +0 -0
  247. data/ext/ruby-cbc/install/lib/libCbcSolver.so.3 +0 -0
  248. data/ext/ruby-cbc/install/lib/libCbcSolver.so.3.9.7 +0 -0
  249. data/ext/ruby-cbc/install/lib/libCgl.la +0 -35
  250. data/ext/ruby-cbc/install/lib/libCgl.so +0 -0
  251. data/ext/ruby-cbc/install/lib/libCgl.so.1 +0 -0
  252. data/ext/ruby-cbc/install/lib/libCgl.so.1.9.7 +0 -0
  253. data/ext/ruby-cbc/install/lib/libClp.la +0 -35
  254. data/ext/ruby-cbc/install/lib/libClp.so +0 -0
  255. data/ext/ruby-cbc/install/lib/libClp.so.1 +0 -0
  256. data/ext/ruby-cbc/install/lib/libClp.so.1.13.9 +0 -0
  257. data/ext/ruby-cbc/install/lib/libClpSolver.la +0 -35
  258. data/ext/ruby-cbc/install/lib/libClpSolver.so +0 -0
  259. data/ext/ruby-cbc/install/lib/libClpSolver.so.1 +0 -0
  260. data/ext/ruby-cbc/install/lib/libClpSolver.so.1.13.9 +0 -0
  261. data/ext/ruby-cbc/install/lib/libCoinUtils.la +0 -35
  262. data/ext/ruby-cbc/install/lib/libCoinUtils.so +0 -0
  263. data/ext/ruby-cbc/install/lib/libCoinUtils.so.3 +0 -0
  264. data/ext/ruby-cbc/install/lib/libCoinUtils.so.3.10.11 +0 -0
  265. data/ext/ruby-cbc/install/lib/libOsi.la +0 -35
  266. data/ext/ruby-cbc/install/lib/libOsi.so +0 -0
  267. data/ext/ruby-cbc/install/lib/libOsi.so.1 +0 -0
  268. data/ext/ruby-cbc/install/lib/libOsi.so.1.12.6 +0 -0
  269. data/ext/ruby-cbc/install/lib/libOsiCbc.la +0 -35
  270. data/ext/ruby-cbc/install/lib/libOsiCbc.so +0 -0
  271. data/ext/ruby-cbc/install/lib/libOsiCbc.so.3 +0 -0
  272. data/ext/ruby-cbc/install/lib/libOsiCbc.so.3.9.7 +0 -0
  273. data/ext/ruby-cbc/install/lib/libOsiClp.la +0 -35
  274. data/ext/ruby-cbc/install/lib/libOsiClp.so +0 -0
  275. data/ext/ruby-cbc/install/lib/libOsiClp.so.1 +0 -0
  276. data/ext/ruby-cbc/install/lib/libOsiClp.so.1.13.9 +0 -0
  277. data/ext/ruby-cbc/install/lib/libOsiCommonTests.la +0 -35
  278. data/ext/ruby-cbc/install/lib/libOsiCommonTests.so +0 -0
  279. data/ext/ruby-cbc/install/lib/libOsiCommonTests.so.1 +0 -0
  280. data/ext/ruby-cbc/install/lib/libOsiCommonTests.so.1.12.6 +0 -0
  281. data/ext/ruby-cbc/install/lib/pkgconfig/cbc.pc +0 -12
  282. data/ext/ruby-cbc/install/lib/pkgconfig/cgl.pc +0 -12
  283. data/ext/ruby-cbc/install/lib/pkgconfig/clp.pc +0 -12
  284. data/ext/ruby-cbc/install/lib/pkgconfig/coindatamiplib3.pc +0 -9
  285. data/ext/ruby-cbc/install/lib/pkgconfig/coindatasample.pc +0 -9
  286. data/ext/ruby-cbc/install/lib/pkgconfig/coinutils.pc +0 -12
  287. data/ext/ruby-cbc/install/lib/pkgconfig/osi-cbc.pc +0 -12
  288. data/ext/ruby-cbc/install/lib/pkgconfig/osi-clp.pc +0 -12
  289. data/ext/ruby-cbc/install/lib/pkgconfig/osi-unittests.pc +0 -12
  290. data/ext/ruby-cbc/install/lib/pkgconfig/osi.pc +0 -12
@@ -1,372 +0,0 @@
1
- /* $Id: CbcTreeLocal.hpp 1573 2011-01-05 01:12:36Z lou $ */
2
- // Copyright (C) 2004, International Business Machines
3
- // Corporation and others. All Rights Reserved.
4
- // This code is licensed under the terms of the Eclipse Public License (EPL).
5
-
6
- #ifndef CbcTreeLocal_H
7
- #define CbcTreeLocal_H
8
-
9
- //#############################################################################
10
- /* This implements (approximately) local branching as in the 2002 paper by
11
- Matteo Fischetti and Andrea Lodi.
12
-
13
- The very simple version of the algorithm for problems with
14
- 0-1 variables and continuous is as follows:
15
-
16
- Obtain a feasible solution (one can be passed in).
17
-
18
- Add a cut which limits search to a k neighborhood of this solution.
19
- (At most k 0-1 variables may change value)
20
- Do branch and bound on this problem.
21
-
22
- If finished search and proven optimal then we can reverse cut so
23
- any solutions must be at least k+1 away from solution and we can
24
- add a new cut limiting search to a k neighborhood of new solution
25
- repeat.
26
-
27
- If finished search and no new solution then the simplest version
28
- would reverse last cut and complete search. The version implemented
29
- here can use time and node limits and can widen search (increase effective k)
30
- .... and more
31
-
32
- */
33
-
34
- #include "CbcTree.hpp"
35
- #include "CbcNode.hpp"
36
- #include "OsiRowCut.hpp"
37
- class CbcModel;
38
-
39
-
40
- class CbcTreeLocal : public CbcTree {
41
-
42
- public:
43
-
44
- // Default Constructor
45
- CbcTreeLocal ();
46
-
47
- /* Constructor with solution.
48
- If solution NULL no solution, otherwise must be integer
49
- range is initial upper bound (k) on difference from given solution.
50
- typeCuts -
51
- 0 means just 0-1 cuts and will need to refine 0-1 solution
52
- 1 uses weaker cuts on all integer variables
53
- maxDiversification is maximum number of range widenings to try
54
- timeLimit is seconds in subTree
55
- nodeLimit is nodes in subTree
56
- refine is whether to see if we can prove current solution is optimal
57
- when we fix all 0-1 (in case typeCuts==0 and there are general integer variables)
58
- if false then no refinement but reverse cuts weaker
59
- */
60
- CbcTreeLocal (CbcModel * model, const double * solution , int range = 10,
61
- int typeCuts = 0, int maxDiversification = 0,
62
- int timeLimit = 1000000, int nodeLimit = 1000000, bool refine = true);
63
- // Copy constructor
64
- CbcTreeLocal ( const CbcTreeLocal & rhs);
65
-
66
- // = operator
67
- CbcTreeLocal & operator=(const CbcTreeLocal & rhs);
68
-
69
- virtual ~CbcTreeLocal();
70
-
71
- /// Clone
72
- virtual CbcTree * clone() const;
73
- /// Create C++ lines to get to current state
74
- virtual void generateCpp( FILE * fp) ;
75
-
76
- /*! \name Heap access and maintenance methods */
77
- //@{
78
-
79
- /// Return the top node of the heap
80
- virtual CbcNode * top() const;
81
-
82
- /// Add a node to the heap
83
- virtual void push(CbcNode * x);
84
-
85
- /// Remove the top node from the heap
86
- virtual void pop() ;
87
-
88
- //@}
89
- /*! \name Other stuff */
90
- //@{
91
-
92
- /// Create cut - return -1 if bad, 0 if okay and 1 if cut is everything
93
- int createCut(const double * solution, OsiRowCut & cut);
94
-
95
- /// Test if empty *** note may be overridden
96
- virtual bool empty() ;
97
-
98
- /// We may have got an intelligent tree so give it one more chance
99
- virtual void endSearch() ;
100
- /// Other side of last cut branch (if bias==rhs_ will be weakest possible)
101
- void reverseCut(int state, double bias = 0.0);
102
- /// Delete last cut branch
103
- void deleteCut(OsiRowCut & cut);
104
- /// Pass in solution (so can be used after heuristic)
105
- void passInSolution(const double * solution, double solutionValue);
106
- // range i.e. k
107
- inline int range() const {
108
- return range_;
109
- }
110
- // setrange i.e. k
111
- inline void setRange(int value) {
112
- range_ = value;
113
- }
114
- // Type of cuts - 0=just 0-1, 1=all
115
- inline int typeCuts() const {
116
- return typeCuts_;
117
- }
118
- // Type of cuts - 0=just 0-1, 1=all
119
- inline void setTypeCuts(int value) {
120
- typeCuts_ = value;
121
- }
122
- // maximum number of diversifications
123
- inline int maxDiversification() const {
124
- return maxDiversification_;
125
- }
126
- // maximum number of diversifications
127
- inline void setMaxDiversification(int value) {
128
- maxDiversification_ = value;
129
- }
130
- // time limit per subtree
131
- inline int timeLimit() const {
132
- return timeLimit_;
133
- }
134
- // time limit per subtree
135
- inline void setTimeLimit(int value) {
136
- timeLimit_ = value;
137
- }
138
- // node limit for subtree
139
- inline int nodeLimit() const {
140
- return nodeLimit_;
141
- }
142
- // node limit for subtree
143
- inline void setNodeLimit(int value) {
144
- nodeLimit_ = value;
145
- }
146
- // Whether to do refinement step
147
- inline bool refine() const {
148
- return refine_;
149
- }
150
- // Whether to do refinement step
151
- inline void setRefine(bool yesNo) {
152
- refine_ = yesNo;
153
- }
154
-
155
- //@}
156
- private:
157
- // Node for local cuts
158
- CbcNode * localNode_;
159
- // best solution
160
- double * bestSolution_;
161
- // saved solution
162
- double * savedSolution_;
163
- // solution number at start of pass
164
- int saveNumberSolutions_;
165
- /* Cut. If zero size then no solution yet. Otherwise is left hand branch */
166
- OsiRowCut cut_;
167
- // This cut fixes all 0-1 variables
168
- OsiRowCut fixedCut_;
169
- // Model
170
- CbcModel * model_;
171
- // Original lower bounds
172
- double * originalLower_;
173
- // Original upper bounds
174
- double * originalUpper_;
175
- // range i.e. k
176
- int range_;
177
- // Type of cuts - 0=just 0-1, 1=all
178
- int typeCuts_;
179
- // maximum number of diversifications
180
- int maxDiversification_;
181
- // current diversification
182
- int diversification_;
183
- // Whether next will be strong diversification
184
- bool nextStrong_;
185
- // Current rhs
186
- double rhs_;
187
- // Save allowable gap
188
- double savedGap_;
189
- // Best solution
190
- double bestCutoff_;
191
- // time limit per subtree
192
- int timeLimit_;
193
- // time when subtree started
194
- int startTime_;
195
- // node limit for subtree
196
- int nodeLimit_;
197
- // node count when subtree started
198
- int startNode_;
199
- // -1 not started, 0 == stop on first solution, 1 don't stop on first, 2 refinement step
200
- int searchType_;
201
- // Whether to do refinement step
202
- bool refine_;
203
-
204
- };
205
-
206
- class CbcTreeVariable : public CbcTree {
207
-
208
- public:
209
-
210
- // Default Constructor
211
- CbcTreeVariable ();
212
-
213
- /* Constructor with solution.
214
- If solution NULL no solution, otherwise must be integer
215
- range is initial upper bound (k) on difference from given solution.
216
- typeCuts -
217
- 0 means just 0-1 cuts and will need to refine 0-1 solution
218
- 1 uses weaker cuts on all integer variables
219
- maxDiversification is maximum number of range widenings to try
220
- timeLimit is seconds in subTree
221
- nodeLimit is nodes in subTree
222
- refine is whether to see if we can prove current solution is optimal
223
- when we fix all 0-1 (in case typeCuts==0 and there are general integer variables)
224
- if false then no refinement but reverse cuts weaker
225
- */
226
- CbcTreeVariable (CbcModel * model, const double * solution , int range = 10,
227
- int typeCuts = 0, int maxDiversification = 0,
228
- int timeLimit = 1000000, int nodeLimit = 1000000, bool refine = true);
229
- // Copy constructor
230
- CbcTreeVariable ( const CbcTreeVariable & rhs);
231
-
232
- // = operator
233
- CbcTreeVariable & operator=(const CbcTreeVariable & rhs);
234
-
235
- virtual ~CbcTreeVariable();
236
-
237
- /// Clone
238
- virtual CbcTree * clone() const;
239
- /// Create C++ lines to get to current state
240
- virtual void generateCpp( FILE * fp) ;
241
-
242
- /*! \name Heap access and maintenance methods */
243
- //@{
244
-
245
- /// Return the top node of the heap
246
- virtual CbcNode * top() const;
247
-
248
- /// Add a node to the heap
249
- virtual void push(CbcNode * x);
250
-
251
- /// Remove the top node from the heap
252
- virtual void pop() ;
253
-
254
- //@}
255
- /*! \name Other stuff */
256
- //@{
257
-
258
- /// Create cut - return -1 if bad, 0 if okay and 1 if cut is everything
259
- int createCut(const double * solution, OsiRowCut & cut);
260
-
261
- /// Test if empty *** note may be overridden
262
- virtual bool empty() ;
263
-
264
- /// We may have got an intelligent tree so give it one more chance
265
- virtual void endSearch() ;
266
- /// Other side of last cut branch (if bias==rhs_ will be weakest possible)
267
- void reverseCut(int state, double bias = 0.0);
268
- /// Delete last cut branch
269
- void deleteCut(OsiRowCut & cut);
270
- /// Pass in solution (so can be used after heuristic)
271
- void passInSolution(const double * solution, double solutionValue);
272
- // range i.e. k
273
- inline int range() const {
274
- return range_;
275
- }
276
- // setrange i.e. k
277
- inline void setRange(int value) {
278
- range_ = value;
279
- }
280
- // Type of cuts - 0=just 0-1, 1=all
281
- inline int typeCuts() const {
282
- return typeCuts_;
283
- }
284
- // Type of cuts - 0=just 0-1, 1=all
285
- inline void setTypeCuts(int value) {
286
- typeCuts_ = value;
287
- }
288
- // maximum number of diversifications
289
- inline int maxDiversification() const {
290
- return maxDiversification_;
291
- }
292
- // maximum number of diversifications
293
- inline void setMaxDiversification(int value) {
294
- maxDiversification_ = value;
295
- }
296
- // time limit per subtree
297
- inline int timeLimit() const {
298
- return timeLimit_;
299
- }
300
- // time limit per subtree
301
- inline void setTimeLimit(int value) {
302
- timeLimit_ = value;
303
- }
304
- // node limit for subtree
305
- inline int nodeLimit() const {
306
- return nodeLimit_;
307
- }
308
- // node limit for subtree
309
- inline void setNodeLimit(int value) {
310
- nodeLimit_ = value;
311
- }
312
- // Whether to do refinement step
313
- inline bool refine() const {
314
- return refine_;
315
- }
316
- // Whether to do refinement step
317
- inline void setRefine(bool yesNo) {
318
- refine_ = yesNo;
319
- }
320
-
321
- //@}
322
- private:
323
- // Node for local cuts
324
- CbcNode * localNode_;
325
- // best solution
326
- double * bestSolution_;
327
- // saved solution
328
- double * savedSolution_;
329
- // solution number at start of pass
330
- int saveNumberSolutions_;
331
- /* Cut. If zero size then no solution yet. Otherwise is left hand branch */
332
- OsiRowCut cut_;
333
- // This cut fixes all 0-1 variables
334
- OsiRowCut fixedCut_;
335
- // Model
336
- CbcModel * model_;
337
- // Original lower bounds
338
- double * originalLower_;
339
- // Original upper bounds
340
- double * originalUpper_;
341
- // range i.e. k
342
- int range_;
343
- // Type of cuts - 0=just 0-1, 1=all
344
- int typeCuts_;
345
- // maximum number of diversifications
346
- int maxDiversification_;
347
- // current diversification
348
- int diversification_;
349
- // Whether next will be strong diversification
350
- bool nextStrong_;
351
- // Current rhs
352
- double rhs_;
353
- // Save allowable gap
354
- double savedGap_;
355
- // Best solution
356
- double bestCutoff_;
357
- // time limit per subtree
358
- int timeLimit_;
359
- // time when subtree started
360
- int startTime_;
361
- // node limit for subtree
362
- int nodeLimit_;
363
- // node count when subtree started
364
- int startNode_;
365
- // -1 not started, 0 == stop on first solution, 1 don't stop on first, 2 refinement step
366
- int searchType_;
367
- // Whether to do refinement step
368
- bool refine_;
369
-
370
- };
371
- #endif
372
-
@@ -1,381 +0,0 @@
1
- /* $Id: Cbc_C_Interface.h 2091 2014-10-03 00:46:49Z mlubin $ */
2
- /*
3
- Copyright (C) 2004 International Business Machines Corporation and others.
4
- All Rights Reserved.
5
-
6
- This code is licensed under the terms of the Eclipse Public License (EPL).
7
- */
8
- #ifndef CbcModelC_H
9
- #define CbcModelC_H
10
-
11
- /* include all defines and ugly stuff */
12
- #include "Coin_C_defines.h"
13
- #include <stddef.h>
14
-
15
- /*
16
- * Original verison contributed by Bob Entriken,
17
- * significantly updated by Miles Lubin.
18
- */
19
-
20
-
21
- #ifdef __cplusplus
22
- extern "C" {
23
- #endif
24
-
25
- /**@name Constructors and destructor
26
- This is a "C" interface to Cbc.
27
- The user does not need to know structure of Cbc_Model.
28
- */
29
- /*@{*/
30
-
31
- /** Default Cbc_Model constructor */
32
- COINLIBAPI Cbc_Model * COINLINKAGE
33
- Cbc_newModel(void)
34
- ;
35
- /** Cbc_Model Destructor */
36
- COINLIBAPI void COINLINKAGE
37
- Cbc_deleteModel(Cbc_Model * model)
38
- ;
39
- /** Current version of Cbc */
40
- COINLIBAPI const char* COINLINKAGE Cbc_getVersion(void)
41
- ;
42
- /*@}*/
43
-
44
- /**@name Getting and setting model data
45
- Note that problem access and modification methods,
46
- such as getColLower and setColLower,
47
- are *not valid* after calling Cbc_solve().
48
- Therefore it is not recommended to reuse a Cbc_Model
49
- object for multiple solves. A workaround is to call Cbc_clone()
50
- before solving.
51
- * */
52
- /*@{*/
53
- /** Loads a problem (the constraints on the
54
- rows are given by lower and upper bounds). If a pointer is NULL then the
55
- following values are the default:
56
- <ul>
57
- <li> <code>colub</code>: all columns have upper bound infinity
58
- <li> <code>collb</code>: all columns have lower bound 0
59
- <li> <code>rowub</code>: all rows have upper bound infinity
60
- <li> <code>rowlb</code>: all rows have lower bound -infinity
61
- <li> <code>obj</code>: all variables have 0 objective coefficient
62
- </ul>
63
-
64
- The constraint matrix is
65
- given in standard compressed sparse column (without gaps).
66
- <ul>
67
- <li> <code>start[i]</code> stores the starting index of the ith column
68
- <li> <code>index[k]</code> stores the row index of the kth nonzero element
69
- <li> <code>value[k]</code> stores the coefficient of the kth nonzero element
70
- </ul>
71
- */
72
- COINLIBAPI void COINLINKAGE
73
- Cbc_loadProblem (Cbc_Model * model, const int numcols, const int numrows,
74
- const CoinBigIndex * start, const int* index,
75
- const double* value,
76
- const double* collb, const double* colub,
77
- const double* obj,
78
- const double* rowlb, const double* rowub)
79
- ;
80
- /** Read an mps file from the given filename */
81
- COINLIBAPI int COINLINKAGE
82
- Cbc_readMps(Cbc_Model * model, const char *filename)
83
- ;
84
- /** Write an mps file from the given filename */
85
- COINLIBAPI void COINLINKAGE
86
- Cbc_writeMps(Cbc_Model * model, const char *filename)
87
- ;
88
- /** Provide an initial feasible solution to accelerate branch-and-bound
89
- Note that feasibility of the solution is *not* verified.
90
- */
91
- COINLIBAPI void COINLINKAGE
92
- Cbc_setInitialSolution(Cbc_Model *model, const double * sol)
93
- ;
94
- /** Fills in array with problem name */
95
- COINLIBAPI void COINLINKAGE
96
- Cbc_problemName(Cbc_Model * model, int maxNumberCharacters, char * array)
97
- ;
98
- /** Sets problem name.
99
-
100
- \p array must be a null-terminated string.
101
- */
102
- COINLIBAPI int COINLINKAGE
103
- Cbc_setProblemName(Cbc_Model * model, const char * array)
104
- ;
105
-
106
- /** Number of nonzero elements in constraint matrix */
107
- COINLIBAPI int COINLINKAGE
108
- Cbc_getNumElements(Cbc_Model * model)
109
- ;
110
- /** "Column start" vector of constraint matrix. Same format as Cbc_loadProblem() */
111
- COINLIBAPI const CoinBigIndex * COINLINKAGE
112
- Cbc_getVectorStarts(Cbc_Model * model)
113
- ;
114
- /** "Row index" vector of constraint matrix */
115
- COINLIBAPI const int * COINLINKAGE
116
- Cbc_getIndices(Cbc_Model * model)
117
- ;
118
- /** Coefficient vector of constraint matrix */
119
- COINLIBAPI const double * COINLINKAGE
120
- Cbc_getElements(Cbc_Model * model)
121
- ;
122
-
123
- /** Maximum lenght of a row or column name */
124
- COINLIBAPI size_t COINLINKAGE
125
- Cbc_maxNameLength(Cbc_Model * model)
126
- ;
127
- /** Fill in first maxLength bytes of name array with a row name */
128
- COINLIBAPI void COINLINKAGE
129
- Cbc_getRowName(Cbc_Model * model, int iRow, char * name, size_t maxLength)
130
- ;
131
- /** Fill in first maxLength bytes of name array with a column name */
132
- COINLIBAPI void COINLINKAGE
133
- Cbc_getColName(Cbc_Model * model, int iColumn, char * name, size_t maxLength)
134
- ;
135
- /** Set the name of a column */
136
- COINLIBAPI void COINLINKAGE
137
- Cbc_setColName(Cbc_Model * model, int iColumn, const char * name)
138
- ;
139
- /** Set the name of a row */
140
- COINLIBAPI void COINLINKAGE
141
- Cbc_setRowName(Cbc_Model * model, int iRow, const char * name)
142
- ;
143
- /** Number of constraints in the model */
144
- COINLIBAPI int COINLINKAGE
145
- Cbc_getNumRows(Cbc_Model * model)
146
- ;
147
- /** Number of variables in the model */
148
- COINLIBAPI int COINLINKAGE
149
- Cbc_getNumCols(Cbc_Model * model)
150
- ;
151
- /** Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore) */
152
- COINLIBAPI void COINLINKAGE
153
- Cbc_setObjSense(Cbc_Model * model, double sense)
154
- ;
155
- /** Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore) */
156
- COINLIBAPI double COINLINKAGE
157
- Cbc_getObjSense(Cbc_Model * model)
158
- ;
159
- /** Constraint lower bounds */
160
- COINLIBAPI const double* COINLINKAGE
161
- Cbc_getRowLower(Cbc_Model * model)
162
- ;
163
- /** Set the lower bound of a single constraint */
164
- COINLIBAPI void COINLINKAGE
165
- Cbc_setRowLower(Cbc_Model * model, int index, double value)
166
- ;
167
- /** Constraint upper bounds */
168
- COINLIBAPI const double* COINLINKAGE
169
- Cbc_getRowUpper(Cbc_Model * model)
170
- ;
171
- /** Set the upper bound of a single constraint */
172
- COINLIBAPI void COINLINKAGE
173
- Cbc_setRowUpper(Cbc_Model * model, int index, double value)
174
- ;
175
- /** Objective vector */
176
- COINLIBAPI const double * COINLINKAGE
177
- Cbc_getObjCoefficients(Cbc_Model * model)
178
- ;
179
- /** Set the objective coefficient of a single variable */
180
- COINLIBAPI void COINLINKAGE
181
- Cbc_setObjCoeff(Cbc_Model * model, int index, double value)
182
- ;
183
- /** Variable lower bounds */
184
- COINLIBAPI const double * COINLINKAGE
185
- Cbc_getColLower(Cbc_Model * model)
186
- ;
187
- /** Set the lower bound of a single variable */
188
- COINLIBAPI void COINLINKAGE
189
- Cbc_setColLower(Cbc_Model * model, int index, double value)
190
- ;
191
- /** Variable upper bounds */
192
- COINLIBAPI const double * COINLINKAGE
193
- Cbc_getColUpper(Cbc_Model * model)
194
- ;
195
- /** Set the upper bound of a single variable */
196
- COINLIBAPI void COINLINKAGE
197
- Cbc_setColUpper(Cbc_Model * model, int index, double value)
198
- ;
199
- /** Determine whether the ith variable is integer restricted */
200
- COINLIBAPI int COINLINKAGE
201
- Cbc_isInteger(Cbc_Model * model, int i)
202
- ;
203
- /** Set this variable to be continuous */
204
- COINLIBAPI void COINLINKAGE
205
- Cbc_setContinuous(Cbc_Model * model, int iColumn)
206
- ;
207
- /** Set this variable to be integer */
208
- COINLIBAPI void COINLINKAGE
209
- Cbc_setInteger(Cbc_Model * model, int iColumn)
210
- ;
211
- /** Add SOS constraints to the model using row-order matrix */
212
- COINLIBAPI void COINLINKAGE
213
- Cbc_addSOS(Cbc_Model * model, int numRows, const int * rowStarts,
214
- const int * colIndices, const double * weights, const int type)
215
- ;
216
- /** Print the model */
217
- COINLIBAPI void COINLINKAGE
218
- Cbc_printModel(Cbc_Model * model, const char * argPrefix)
219
- ;
220
- /** Return a copy of this model */
221
- COINLIBAPI Cbc_Model * COINLINKAGE
222
- Cbc_clone(Cbc_Model * model)
223
- ;
224
- /*@}*/
225
- /**@name Solver parameters */
226
- /*@{*/
227
- /** Set parameter "name" to value "value". Note that this
228
- * translates directly to using "-name value" as a
229
- * command-line argument to Cbc.*/
230
- COINLIBAPI void COINLINKAGE
231
- Cbc_setParameter(Cbc_Model * model, const char * name, const char * value)
232
- ;
233
-
234
-
235
- /*@}*/
236
- /**@name Message handling. Call backs are handled by ONE function */
237
- /*@{*/
238
- /** Pass in Callback function.
239
- Message numbers up to 1000000 are Clp, Coin ones have 1000000 added */
240
- COINLIBAPI void COINLINKAGE
241
- Cbc_registerCallBack(Cbc_Model * model,
242
- cbc_callback userCallBack)
243
- ;
244
- /** Unset Callback function */
245
- COINLIBAPI void COINLINKAGE
246
- Cbc_clearCallBack(Cbc_Model * model)
247
- ;
248
-
249
- /*@}*/
250
-
251
-
252
- /**@name Solving the model */
253
- /*@{*/
254
- /* Solve the model with Cbc (using CbcMain1).
255
- */
256
- COINLIBAPI int COINLINKAGE
257
- Cbc_solve(Cbc_Model * model)
258
- ;
259
- /*@}*/
260
-
261
-
262
- /**@name Accessing the solution and solution status */
263
- /*@{*/
264
-
265
- /** Sum of primal infeasibilities */
266
- COINLIBAPI double COINLINKAGE
267
- Cbc_sumPrimalInfeasibilities(Cbc_Model * model)
268
- ;
269
- /** Number of primal infeasibilities */
270
- COINLIBAPI int COINLINKAGE
271
- Cbc_numberPrimalInfeasibilities(Cbc_Model * model)
272
- ;
273
-
274
- /** Just check solution (for external use) - sets sum of
275
- infeasibilities etc */
276
- COINLIBAPI void COINLINKAGE
277
- Cbc_checkSolution(Cbc_Model * model)
278
- ;
279
-
280
- /** Number of iterations */
281
- COINLIBAPI int COINLINKAGE
282
- Cbc_getIterationCount(Cbc_Model * model)
283
- ;
284
- /** Are there a numerical difficulties? */
285
- COINLIBAPI int COINLINKAGE
286
- Cbc_isAbandoned(Cbc_Model * model)
287
- ;
288
- /** Is optimality proven? */
289
- COINLIBAPI int COINLINKAGE
290
- Cbc_isProvenOptimal(Cbc_Model * model)
291
- ;
292
- /** Is infeasiblity proven (or none better than cutoff)? */
293
- COINLIBAPI int COINLINKAGE
294
- Cbc_isProvenInfeasible(Cbc_Model * model)
295
- ;
296
- /** Was continuous solution unbounded? */
297
- COINLIBAPI int COINLINKAGE
298
- Cbc_isContinuousUnbounded(Cbc_Model * model)
299
- ;
300
- /** Node limit reached? */
301
- COINLIBAPI int COINLINKAGE
302
- Cbc_isNodeLimitReached(Cbc_Model * model)
303
- ;
304
- /** Time limit reached? */
305
- COINLIBAPI int COINLINKAGE
306
- Cbc_isSecondsLimitReached(Cbc_Model * model)
307
- ;
308
- /** Solution limit reached? */
309
- COINLIBAPI int COINLINKAGE
310
- Cbc_isSolutionLimitReached(Cbc_Model * model)
311
- ;
312
- /** Are there numerical difficulties (for initialSolve) ? */
313
- COINLIBAPI int COINLINKAGE
314
- Cbc_isInitialSolveAbandoned(Cbc_Model * model)
315
- ;
316
- /** Is optimality proven (for initialSolve) ? */
317
- COINLIBAPI int COINLINKAGE
318
- Cbc_isInitialSolveProvenOptimal(Cbc_Model * model)
319
- ;
320
- /** Is primal infeasiblity proven (for initialSolve) ? */
321
- COINLIBAPI int COINLINKAGE
322
- Cbc_isInitialSolveProvenPrimalInfeasible(Cbc_Model * model)
323
- ;
324
- /** "row" solution
325
- * This is the vector A*x, where A is the constraint matrix
326
- * and x is the current solution. */
327
- COINLIBAPI const double * COINLINKAGE
328
- Cbc_getRowActivity(Cbc_Model * model)
329
- ;
330
- /** Best feasible solution vector */
331
- COINLIBAPI const double * COINLINKAGE
332
- Cbc_getColSolution(Cbc_Model * model)
333
- ;
334
- /** Objective value of best feasible solution */
335
- COINLIBAPI double COINLINKAGE
336
- Cbc_getObjValue(Cbc_Model * model)
337
- ;
338
- /** Best known bound on the optimal objective value */
339
- COINLIBAPI double COINLINKAGE
340
- Cbc_getBestPossibleObjValue(Cbc_Model * model)
341
- ;
342
- /** Number of nodes explored in B&B tree */
343
- COINLIBAPI int COINLINKAGE
344
- Cbc_getNodeCount(Cbc_Model * model)
345
- ;
346
- /** Print the solution */
347
- COINLIBAPI void COINLINKAGE
348
- Cbc_printSolution(Cbc_Model * model)
349
- ;
350
- /** Final status of problem
351
- Some of these can be found out by is...... functions
352
- -1 before branchAndBound
353
- 0 finished - check isProvenOptimal or isProvenInfeasible to see if solution found
354
- (or check value of best solution)
355
- 1 stopped - on maxnodes, maxsols, maxtime
356
- 2 difficulties so run was abandoned
357
- (5 event user programmed event occurred)
358
- */
359
- COINLIBAPI int COINLINKAGE
360
- Cbc_status(Cbc_Model * model)
361
- ;
362
- /** Secondary status of problem
363
- -1 unset (status_ will also be -1)
364
- 0 search completed with solution
365
- 1 linear relaxation not feasible (or worse than cutoff)
366
- 2 stopped on gap
367
- 3 stopped on nodes
368
- 4 stopped on time
369
- 5 stopped on user event
370
- 6 stopped on solutions
371
- 7 linear relaxation unbounded
372
- 8 stopped on iteration limit
373
- */
374
- COINLIBAPI int COINLINKAGE
375
- Cbc_secondaryStatus(Cbc_Model * model)
376
- ;
377
- /*@}*/
378
- #ifdef __cplusplus
379
- }
380
- #endif
381
- #endif