Changeset 1907 for stable


Ignore:
Timestamp:
Jan 16, 2013 9:48:15 AM (7 years ago)
Author:
forrest
Message:

more options

Location:
stable/1.14/Clp/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • stable/1.14/Clp/src/CbcOrClpParam.cpp

    r1905 r1907  
    5050#define CBC_THREAD
    5151#endif
     52#endif
     53#if CLP_HAS_ABC
     54#include "AbcCommon.hpp"
    5255#endif
    5356static bool doPrinting = true;
     
    608611          case CLP_PARAM_INT_SPECIALOPTIONS:
    609612               model->setSpecialOptions(value);
     613               break;
    610614          case CLP_PARAM_INT_RANDOMSEED:
    611615            {
     
    931935               break;
    932936#endif
    933 #endif
    934 #if defined(COIN_HAS_CBC) && ((CBC_VERSION_MAJOR > 2) || (CBC_VERSION_MINOR > 7))
     937#ifdef CBC_AFTER_2_8
    935938          case CBC_PARAM_INT_RANDOMSEED:
    936939               oldValue = model.getRandomSeed();
    937940               model.setRandomSeed(value);
    938941               break;
    939                
     942#endif
    940943#endif
    941944          default:
     
    987990     case CBC_PARAM_INT_THREADS:
    988991          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
    993994     case CBC_PARAM_INT_RANDOMSEED:
    994995          value = model.getRandomSeed();
    995996          break;
     997#endif
    996998#endif
    997999     default:
     
    11311133#else
    11321134          if (CbcOrClpReadCommand == stdin) {
    1133                fprintf(stdout, coin_prompt);
     1135               fputs(coin_prompt,stdout);
    11341136               fflush(stdout);
    11351137          }
     
    13561358          CbcOrClpParam("-", "From stdin",
    13571359                        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[numberParameters-1].append("one");
     1365     parameters[numberParameters-1].append("two");
     1366     parameters[numberParameters-1].append("three");
     1367     parameters[numberParameters-1].append("four");
     1368     parameters[numberParameters-1].append("five");
     1369     parameters[numberParameters-1].append("six");
     1370     parameters[numberParameters-1].append("seven");
     1371     parameters[numberParameters-1].append("eight");
     1372     parameters[numberParameters-1].append("on");
     1373     parameters[numberParameters-1].append("decide");
     1374     parameters[numberParameters-1].setLonghelp
     1375     (
     1376          "Decide whether to use A Basic Optimization Code (Accelerated?) \
     1377and whether to try going parallel!"
     1378     );
     1379#endif
    13581380     parameters[numberParameters++] =
    13591381          CbcOrClpParam("allC!ommands", "Whether to print less used commands",
     
    16021624     parameters[numberParameters-1].append("so!low_halim");
    16031625     parameters[numberParameters-1].append("lots");
    1604      //  parameters[numberParameters-1].append("4");
    1605      //  parameters[numberParameters-1].append("5");
     1626#ifdef ABC_INHERIT
     1627     parameters[numberParameters-1].append("dual");
     1628     parameters[numberParameters-1].append("dw");
     1629     parameters[numberParameters-1].append("idiot");
     1630#endif
    16061631     parameters[numberParameters-1].setLonghelp
    16071632     (
     
    19721997#ifdef COIN_HAS_CBC
    19731998     parameters[numberParameters++] =
    1974           CbcOrClpParam("exp!eriment", "Whether to use testing features",
     1999          CbcOrClpParam("exper!iment", "Whether to use testing features",
    19752000                        -1, 200, CBC_PARAM_INT_EXPERIMENT, 0);
    19762001     parameters[numberParameters-1].setLonghelp
     
    19802005     );
    19812006     parameters[numberParameters-1].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[numberParameters-1].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[numberParameters-1].setIntValue(0);
     2025#endif
    19822026#endif
    19832027     parameters[numberParameters++] =
     
    20292073     parameters[numberParameters-1].setLonghelp
    20302074     (
     2075#ifndef ABC_INHERIT
    20312076          "The default is to use the normal CoinFactorization, but \
    20322077other 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 \
     2080other choices are a dense one, osl's or one designed for small problems. \
     2081However if at Aboca then the default is CoinAbcFactorization and other choices are \
     2082a dense one, one designed for small problems or if enabled a long factorization."
     2083#endif
    20332084     );
    20342085     parameters[numberParameters++] =
     
    24332484 you intend to override the behavior of a particular message.  This only affects Clp not Cbc."
    24342485     );
     2486     parameters[numberParameters++] =
     2487          CbcOrClpParam("miplib", "Do some of miplib test set",
     2488                        CBC_PARAM_ACTION_MIPLIB, 3, 1);
    24352489#ifdef COIN_HAS_CBC
    24362490      parameters[numberParameters++] =
     
    24442498text file format used is the same of the solutions saved by CBC, but \
    24452499not all fields are required to be filled. First line may contain the \
    2446 solution status and will be ignored, remaning lines contain column \
     2500solution status and will be ignored, remaining lines contain column \
    24472501indexes, names and values as in this example:\n\
    24482502\n\
     
    24622516user provides one. Feasibility Pump (FP) is a heuristic which tries to \
    24632517overcome the problem of taking too long to find feasible solution (or \
    2464 not finding at all), but it not always suceeds. If you provide one \
     2518not finding at all), but it not always succeeds. If you provide one \
    24652519starting solution you will probably save some time by disabling FP. \
    24662520\n\n\
     
    24942548     );
    24952549     parameters[numberParameters-1].setIntValue(0);
    2496      parameters[numberParameters++] =
    2497           CbcOrClpParam("miplib", "Do some of miplib test set",
    2498                         CBC_PARAM_ACTION_MIPLIB, 3, 1);
    24992550#ifdef CBC_AFTER_2_8
    25002551     parameters[numberParameters++] =
     
    25092560then it is number of threads to use (otherwise uses threads setting) and \
    25102561cc 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 , \
     2563and Andrea Tramontani)"
    25122564     );
    25132565#endif
     
    28852937     parameters[numberParameters-1].append("rhs!ranging");
    28862938     parameters[numberParameters-1].append("objective!ranging");
     2939     parameters[numberParameters-1].append("stats");
    28872940     parameters[numberParameters-1].setLonghelp
    28882941     (
     
    29362989but strong options do more probing"
    29372990     );
    2938 #if (CBC_VERSION_MAJOR > 2) || (CBC_VERSION_MINOR > 7)
    29392991     parameters[numberParameters++] =
    29402992          CbcOrClpParam("proximity!Search", "Whether to do proximity search heuristic",
     
    29533005The ones at end have different maxNode settings (and are 'on'(on==30))."
    29543006     );
    2955 #endif
    29563007     parameters[numberParameters++] =
    29573008          CbcOrClpParam("pumpC!utoff", "Fake cutoff for use in feasibility pump",
     
    29973048     );
    29983049#ifdef COIN_HAS_CBC
     3050#ifdef CBC_AFTER_2_8
    29993051     parameters[numberParameters++] =
    30003052          CbcOrClpParam("randomC!bcSeed", "Random seed for Cbc",
     
    30063058     );
    30073059     parameters[numberParameters-1].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",
    30103063                        "off", CBC_PARAM_STR_RANDROUND);
    30113064     parameters[numberParameters-1].append("on");
     
    32753328     );
    32763329#else
    3277      // allow solve as synonym for dual
    3278      parameters[numberParameters++] =
    3279           CbcOrClpParam("solv!e", "Solve problem using dual simplex",
    3280                         CBC_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);
    32813334     parameters[numberParameters-1].setLonghelp
    32823335     (
     
    33473400     parameters[numberParameters++] =
    33483401          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);
    33503403     parameters[numberParameters-1].setLonghelp
    33513404     (
  • stable/1.14/Clp/src/CbcOrClpParam.hpp

    r1905 r1907  
    139139     CBC_PARAM_INT_RANDOMSEED,
    140140     CBC_PARAM_INT_MULTIPLEROOTS,
     141     CBC_PARAM_INT_STRONG_STRATEGY,
    141142
    142143     CLP_PARAM_STR_DIRECTION = 201,
     
    164165     CLP_PARAM_STR_ALLCOMMANDS,
    165166     CLP_PARAM_STR_TIME_MODE,
     167     CLP_PARAM_STR_ABCWANTED,
    166168
    167169     CBC_PARAM_STR_NODESTRATEGY = 251,
Note: See TracChangeset for help on using the changeset viewer.