SYMPHONY(1)

✨ SYMPHONY(1) β€” the symphony manual page, bestie edition ✨

okay so. this is the manual page for symphony, from the General Commands Manual section of your friendly neighbourhood man pages. it's giving solver. it's giving MILP. let's GO πŸ’…


🌸 NAME 🌸

symphony β€” mixed-integer linear program (MILP) solver


πŸŽ€ SYNOPSIS πŸŽ€

symphony [ -hagrtbd ] [ -u ub ] [ -p procs ] [ -n rule ] [ -v level ] [
-s cands ] [ -c rule ] [ -k rule ] [ -m max ] [ -l pools ] [ -i iters ]
[ -f parameter_file_name ] [-j 0/1] [-o tree_out_file]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so this manual page briefly documents the symphony command. key word: briefly. it's not gonna write your thesis for you, it's just gonna tell you what's up 🫢

symphony is a generic MILP solver that you can invoke from the command line (whether that's through an interactive shell or in a batch mode), or by linking to the provided callable library. main character behaviour honestly.

the way it works is: when no options are given, symphony just drops you straight into the interactive shell mode. but the second you pass options, it switches into batch mode, and for batch mode there's a summary of options included below. slay ✨


πŸ’– OPTIONS πŸ’–

at a minimum, bestie, you gotta specify the name of the file to be read and solved. like. that's the whole point. no file no solve no nothing 😭

  • -h β€” help
  • -a β€” no cut timeout
  • -d β€” enable graph drawing
  • -g β€” use cut generator
  • -r β€” do repricing in root
  • -t β€” trim the tree
  • -b β€” don't perform branch and cut
  • -u ub β€” use upper bound ub
  • -p procs β€” allow procs active nodes
  • -n i β€” use node selection rule i
  • -v i β€” set verbosity to level i
  • -s cands β€” use cands candidates for strong branching
  • -k i β€” use rule i to select child
  • -m n β€” allow a max of n cuts to enter per iteration
  • -e n β€” allow a max of n cut pools
  • -l n k β€” load balance level n and iterations k
  • -i n β€” allow a max of n iterations in presolve
  • -f file β€” read parameters from parameter file file
  • -j 0/1 β€” whether or not to generate cgl cuts
  • -z n β€” set diving threshold to n
  • -o file β€” output vbc-like tree information to file file

πŸ‘‘ Solver-specific switches πŸ‘‘

these ones are the solver's own little special menu, iykyk:

symphony [ -H ] [ -FL file ]
  • -H β€” help (solver-specific switches)
  • -F model β€” model should be read in from file model (MPS format is assumed unless -D is also present)
  • -L model β€” LP format model should be read in from file model
  • -D data β€” model is in AMPL format and data is in file data

🌈 SEE ALSO 🌈

for a complete description, go look at:

/usr/share/doc/coinor-libsymphony-doc/user-guide.pdf.gz

which lives in the coinor-libsymphony-doc package. go read it, it's thorough πŸ’œ


πŸ’€ AUTHOR πŸ’€

symphony was written by Ted Ralphs et.al. 🫑

this manual page was written by Aramian Wasielak <aramian.wasielak@gmail.com>, based on "symphony -h" and clp.1, for the Debian project (but may be used by others). so iconic of them honestly πŸŽ€


and that's the whole page bestie!! this one's from the General Commands Manual, SYMPHONY(1), and it's dated Jan 21, 2010 β€” a vintage queen, periodt ⭐ πŸ’– 🌸