The COIN-OR Branch and Cut (Cbc) solver is an open-source mixed-integer linear programming solver written in C++. Problems for Cbc can be submitted on the NEOS server in AMPL, GAMS, or MPS format.

Cbc is intended to be used primarily as a callable library to create customized branch-and-cut solvers, however, a basic stand-alone executable is used to solve problems submitted to the NEOS Server. Cbc utilizes other COIN-OR projects Cgl (Cut Generation Library) to generate cutting planes and Cpl to solve the linear programs at each node of the tree.

Cbc was developed by John Forrest, now retired from IBM Research. The project is currently managed by John Forrest and Ted Ralphs. For more information on Cbc and the COIN-OR initiative, please visit the Cbc COIN-OR website.

Using the NEOS Server for Cbc/MPS

The user must submit a model in MPS format to solve a mixed-integer linear programming problem. The MPS file may be submitted in gzipped or zipped format; NEOS will uncompress it automatically. A user also may upload a parameter file that includes Cbc commands to customize the optimizer's behavior. The format is one command per line and the available commands are included below. If there is a parameter file, it must include the solve command. To print the solution values, include the line solution - after the solve line in the parameter file.

Format for Help
abcd? gives list of possibilities, if only one + explanation
abcd?? adds explanation, if only one fuller help
abcd without value (where expected) gives current value
abcd value sets value
Double parameters:
  dualB(ound)  dualT(olerance)  primalT(olerance)  primalW(eight)  zeroT(olerance)
Branch and Cut double parameters:
  allow(ableGap)  cuto(ff)  inc(rement)  integerT(olerance)  preT(olerance)  pumpC(utoff)
  ratio(Gap)  sec(onds)
Integer parameters:
  force(Solution)  idiot(Crash)  maxF(actor)  maxIt(erations)  output(Format)  randomS(eed)
  slog(Level)  sprint(Crash)
Branch and Cut integer parameters:
  cutD(epth)  cutL(ength)  depth(MiniBab)  hot(StartMaxIts)  log(Level)  maxN(odes)
  maxSaved(Solutions)   maxSo(solutions)  passC(uts)  passF(easbilityPump)  passT(reeCuts)
  passT(une)  randomC(bcSeed)  slow(cutpasses)  strat(egy)  strong(Branching)  trust(PseudoCosts)
Keyword parameters:
  allC(ommands)  chol(esky)  crash  cross(over)  direction  error(sAllowed)  fact(orization)
  keepN(ames)  mess(ages)  perturb(ation)  presolve  printi(ngOptions)  scal(ing)  timeM(ode)
Branch and Cut keyword parameters:
  clique(Cuts)  combine(Solutions)  combine2(Solutions)  constraint(fromCutoff)  cost(Strategy)
  cplex(Use)  cuts(OnOff)
  Dins  DivingS(ome)  DivingC(oefficient)  DivingF(ractional)  DivingG(uided)  DivingL(ineSearch)
  DivingP(seudoCost)  DivingV(ectorLength)  dw(Heuristic)  feas(ibilityPump)  flow(CoverCuts)
  GMI(Cuts)  gomory(Cuts)  greedy(Heuristic)  heur(isticsOnOff)  knapsack(Cuts)  lagomory(Cuts)
  latwomir(Cuts)  lift(AndProjectCuts)  local(TreeSearch)
  mixed(IntegerRoudingCuts)  node(Strategy)  pivotAndC(omplement)  pivotAndF(ix)  preprocess
  probing(Cuts)  proximity(Search)  randomi(zedRounding) reduce(AndSplitCuts)  reduce2(AndSplitCuts)
  residual(CapacityCuts)  Rens  Rins  round(ingHeuristic)  sos(Options)  two(MirCuts)
  Vnd(VariableNeighborhoodSearch)  zero(HalfCuts)
Actions or string parameters:
  allS(lack)  barr(ier)  basisI(n)  basisO(ut)  directory  dualS(implex)  either(Simplex)
  end  exit  export
  gsolu(tion)  help  import  initialS(olve)  max(imize)  min(imize)  para(metrics)
  primalS(implex)  printM(ask)  quit  restoreS(olution)  saveS(olution) solu(tion) stat(istics)  stop
Branch and Cut actions:
   branch(AndCut) doH(euristc)  mips(tart)  nextB(estSolution) prio(rityIn) solv(e)
Web Submission Form
MPS file
Enter the path to your MPS file
Parameter file
Enter the path to a parameter file
Additional Settings

E-Mail address:
Please do not click the 'Submit to NEOS' button more than once.