Solver for linear, quadratic, and rational programs with linear, quadratic, and rational constraints. A unified interface to different R packages is provided. Optimization problems are transformed into equivalent formulations and solved by the respective package. For example, quadratic programming problems with linear, quadratic and rational constraints can be solved by augmented Lagrangian minimization using package 'alabama', or by sequential quadratic programming using solver 'slsqp'.  Alternatively, they can be reformulated as optimization problems with second order cone constraints and solved with package 'cccp'.

A collection of functions that aid in calculating the optimum
  time to stock hatchery reared fish into a body of water given the growth, 
  mortality and cost of raising a particular number of individuals to a certain 
  length.

The popular population genetic software 'Treemix' by
    'Pickrell and Pritchard' (2012) <DOI:10.1371/journal.pgen.1002967>
    estimates the number of migration edges on a population tree.
    However, it can be difficult to determine the number of migration
    edges to include. Previously, it was customary to stop adding migration
    edges when 99.8% of variation in the data was explained, but 'OptM'
    automates this process using an ad hoc statistic based on the
    second-order rate of change in the log likelihood.  'OptM' also
    has added functionality for various threshold modeling
    to compare with the ad hoc statistic.

Distance based bipartite matching using minimum cost flow, oriented
    to matching of treatment and control groups in observational studies ('Hansen'
    and 'Klopfer' 2006 <doi:10.1198/106186006X137047>). Routines are provided to
    generate distances from generalised linear models (propensity score
    matching), formulas giving variables on which to limit matched distances,
    stratified or exact matching directives, or calipers, alone or in
    combination.

A command line parser inspired by Python's 'optparse' library to
    be used with Rscript to write "#!" shebang scripts that accept short and
    long flag/options.