Changeset 1907
 Timestamp:
 Jan 16, 2013 9:48:15 AM (9 years ago)
 Location:
 stable/1.14/Clp/src
 Files:

 2 edited
Legend:
 Unmodified
 Added
 Removed

stable/1.14/Clp/src/CbcOrClpParam.cpp
r1905 r1907 50 50 #define CBC_THREAD 51 51 #endif 52 #endif 53 #if CLP_HAS_ABC 54 #include "AbcCommon.hpp" 52 55 #endif 53 56 static bool doPrinting = true; … … 608 611 case CLP_PARAM_INT_SPECIALOPTIONS: 609 612 model>setSpecialOptions(value); 613 break; 610 614 case CLP_PARAM_INT_RANDOMSEED: 611 615 { … … 931 935 break; 932 936 #endif 933 #endif 934 #if defined(COIN_HAS_CBC) && ((CBC_VERSION_MAJOR > 2)  (CBC_VERSION_MINOR > 7)) 937 #ifdef CBC_AFTER_2_8 935 938 case CBC_PARAM_INT_RANDOMSEED: 936 939 oldValue = model.getRandomSeed(); 937 940 model.setRandomSeed(value); 938 941 break; 939 942 #endif 940 943 #endif 941 944 default: … … 987 990 case CBC_PARAM_INT_THREADS: 988 991 value = model.getNumberThreads(); 989 break; 990 #endif 991 #endif 992 #if defined(COIN_HAS_CBC) && ((CBC_VERSION_MAJOR > 2)  (CBC_VERSION_MINOR > 7)) 992 #endif 993 #ifdef CBC_AFTER_2_8 993 994 case CBC_PARAM_INT_RANDOMSEED: 994 995 value = model.getRandomSeed(); 995 996 break; 997 #endif 996 998 #endif 997 999 default: … … 1131 1133 #else 1132 1134 if (CbcOrClpReadCommand == stdin) { 1133 fprintf(stdout, coin_prompt);1135 fputs(coin_prompt,stdout); 1134 1136 fflush(stdout); 1135 1137 } … … 1356 1358 CbcOrClpParam("", "From stdin", 1357 1359 CLP_PARAM_ACTION_STDIN, 3, 0); 1360 #ifdef ABC_INHERIT 1361 parameters[numberParameters++] = 1362 CbcOrClpParam("abc", "Whether to visit Aboca", 1363 "off", CLP_PARAM_STR_ABCWANTED, 7, 0); 1364 parameters[numberParameters1].append("one"); 1365 parameters[numberParameters1].append("two"); 1366 parameters[numberParameters1].append("three"); 1367 parameters[numberParameters1].append("four"); 1368 parameters[numberParameters1].append("five"); 1369 parameters[numberParameters1].append("six"); 1370 parameters[numberParameters1].append("seven"); 1371 parameters[numberParameters1].append("eight"); 1372 parameters[numberParameters1].append("on"); 1373 parameters[numberParameters1].append("decide"); 1374 parameters[numberParameters1].setLonghelp 1375 ( 1376 "Decide whether to use A Basic Optimization Code (Accelerated?) \ 1377 and whether to try going parallel!" 1378 ); 1379 #endif 1358 1380 parameters[numberParameters++] = 1359 1381 CbcOrClpParam("allC!ommands", "Whether to print less used commands", … … 1602 1624 parameters[numberParameters1].append("so!low_halim"); 1603 1625 parameters[numberParameters1].append("lots"); 1604 // parameters[numberParameters1].append("4"); 1605 // parameters[numberParameters1].append("5"); 1626 #ifdef ABC_INHERIT 1627 parameters[numberParameters1].append("dual"); 1628 parameters[numberParameters1].append("dw"); 1629 parameters[numberParameters1].append("idiot"); 1630 #endif 1606 1631 parameters[numberParameters1].setLonghelp 1607 1632 ( … … 1972 1997 #ifdef COIN_HAS_CBC 1973 1998 parameters[numberParameters++] = 1974 CbcOrClpParam("exp !eriment", "Whether to use testing features",1999 CbcOrClpParam("exper!iment", "Whether to use testing features", 1975 2000 1, 200, CBC_PARAM_INT_EXPERIMENT, 0); 1976 2001 parameters[numberParameters1].setLonghelp … … 1980 2005 ); 1981 2006 parameters[numberParameters1].setIntValue(0); 2007 #ifdef CBC_AFTER_2_8 2008 parameters[numberParameters++] = 2009 CbcOrClpParam("expensive!Strong", "Whether to do even more strong branching", 2010 0, COIN_INT_MAX, CBC_PARAM_INT_STRONG_STRATEGY, 0); 2011 parameters[numberParameters1].setLonghelp 2012 ( 2013 "Strategy for extra strong branching \n\ 2014 \t0  normal\n\ 2015 \twhen to do all fractional\n\ 2016 \t1  root node\n\ 2017 \t2  depth less than modifier\n\ 2018 \t4  if objective == best possible\n\ 2019 \t6  as 2+4\n\ 2020 \twhen to do all including satisfied\n\ 2021 \t10  root node etc.\n\ 2022 \tIf >=100 then do when depth <= strategy/100 (otherwise 5)" 2023 ); 2024 parameters[numberParameters1].setIntValue(0); 2025 #endif 1982 2026 #endif 1983 2027 parameters[numberParameters++] = … … 2029 2073 parameters[numberParameters1].setLonghelp 2030 2074 ( 2075 #ifndef ABC_INHERIT 2031 2076 "The default is to use the normal CoinFactorization, but \ 2032 2077 other choices are a dense one, osl's or one designed for small problems." 2078 #else 2079 "Normally the default is to use the normal CoinFactorization, but \ 2080 other choices are a dense one, osl's or one designed for small problems. \ 2081 However if at Aboca then the default is CoinAbcFactorization and other choices are \ 2082 a dense one, one designed for small problems or if enabled a long factorization." 2083 #endif 2033 2084 ); 2034 2085 parameters[numberParameters++] = … … 2433 2484 you intend to override the behavior of a particular message. This only affects Clp not Cbc." 2434 2485 ); 2486 parameters[numberParameters++] = 2487 CbcOrClpParam("miplib", "Do some of miplib test set", 2488 CBC_PARAM_ACTION_MIPLIB, 3, 1); 2435 2489 #ifdef COIN_HAS_CBC 2436 2490 parameters[numberParameters++] = … … 2444 2498 text file format used is the same of the solutions saved by CBC, but \ 2445 2499 not all fields are required to be filled. First line may contain the \ 2446 solution status and will be ignored, rema ning lines contain column \2500 solution status and will be ignored, remaining lines contain column \ 2447 2501 indexes, names and values as in this example:\n\ 2448 2502 \n\ … … 2462 2516 user provides one. Feasibility Pump (FP) is a heuristic which tries to \ 2463 2517 overcome the problem of taking too long to find feasible solution (or \ 2464 not finding at all), but it not always suc eeds. If you provide one \2518 not finding at all), but it not always succeeds. If you provide one \ 2465 2519 starting solution you will probably save some time by disabling FP. \ 2466 2520 \n\n\ … … 2494 2548 ); 2495 2549 parameters[numberParameters1].setIntValue(0); 2496 parameters[numberParameters++] =2497 CbcOrClpParam("miplib", "Do some of miplib test set",2498 CBC_PARAM_ACTION_MIPLIB, 3, 1);2499 2550 #ifdef CBC_AFTER_2_8 2500 2551 parameters[numberParameters++] = … … 2509 2560 then it is number of threads to use (otherwise uses threads setting) and \ 2510 2561 cc is number of times to do root phase. Yet another one from the Italian idea factory \ 2511 (Andrea Lodi , Matteo Fischetti , Michele Monaci , Domenico Salvagnin , and Andrea Tramontani3)" 2562 (This time  Andrea Lodi , Matteo Fischetti , Michele Monaci , Domenico Salvagnin , \ 2563 and Andrea Tramontani)" 2512 2564 ); 2513 2565 #endif … … 2885 2937 parameters[numberParameters1].append("rhs!ranging"); 2886 2938 parameters[numberParameters1].append("objective!ranging"); 2939 parameters[numberParameters1].append("stats"); 2887 2940 parameters[numberParameters1].setLonghelp 2888 2941 ( … … 2936 2989 but strong options do more probing" 2937 2990 ); 2938 #if (CBC_VERSION_MAJOR > 2)  (CBC_VERSION_MINOR > 7)2939 2991 parameters[numberParameters++] = 2940 2992 CbcOrClpParam("proximity!Search", "Whether to do proximity search heuristic", … … 2953 3005 The ones at end have different maxNode settings (and are 'on'(on==30))." 2954 3006 ); 2955 #endif2956 3007 parameters[numberParameters++] = 2957 3008 CbcOrClpParam("pumpC!utoff", "Fake cutoff for use in feasibility pump", … … 2997 3048 ); 2998 3049 #ifdef COIN_HAS_CBC 3050 #ifdef CBC_AFTER_2_8 2999 3051 parameters[numberParameters++] = 3000 3052 CbcOrClpParam("randomC!bcSeed", "Random seed for Cbc", … … 3006 3058 ); 3007 3059 parameters[numberParameters1].setIntValue(1); 3008 parameters[numberParameters++] = 3009 CbcOrClpParam("rand!omizedRounding", "Whether to try randomized rounding heuristic", 3060 #endif 3061 parameters[numberParameters++] = 3062 CbcOrClpParam("randomi!zedRounding", "Whether to try randomized rounding heuristic", 3010 3063 "off", CBC_PARAM_STR_RANDROUND); 3011 3064 parameters[numberParameters1].append("on"); … … 3275 3328 ); 3276 3329 #else 3277 // allow solve as synonym for dual3278 parameters[numberParameters++] = 3279 CbcOrClpParam("solv!e", "Solve problem using dual simplex",3280 C BC_PARAM_ACTION_BAB);3330 // allow solve as synonym for possible dual 3331 parameters[numberParameters++] = 3332 CbcOrClpParam("solv!e", "Solve problem using dual simplex (probably)", 3333 CLP_PARAM_ACTION_EITHERSIMPLEX); 3281 3334 parameters[numberParameters1].setLonghelp 3282 3335 ( … … 3347 3400 parameters[numberParameters++] = 3348 3401 CbcOrClpParam("strong!Branching", "Number of variables to look at in strong branching", 3349 0, 999999, CBC_PARAM_INT_STRONGBRANCHING);3402 0, COIN_INT_MAX, CBC_PARAM_INT_STRONGBRANCHING); 3350 3403 parameters[numberParameters1].setLonghelp 3351 3404 ( 
stable/1.14/Clp/src/CbcOrClpParam.hpp
r1905 r1907 139 139 CBC_PARAM_INT_RANDOMSEED, 140 140 CBC_PARAM_INT_MULTIPLEROOTS, 141 CBC_PARAM_INT_STRONG_STRATEGY, 141 142 142 143 CLP_PARAM_STR_DIRECTION = 201, … … 164 165 CLP_PARAM_STR_ALLCOMMANDS, 165 166 CLP_PARAM_STR_TIME_MODE, 167 CLP_PARAM_STR_ABCWANTED, 166 168 167 169 CBC_PARAM_STR_NODESTRATEGY = 251,
Note: See TracChangeset
for help on using the changeset viewer.