Home CCR Home Papers Teaching Software Links
OSTRICH - Optimization Software Toolkit
    OSTRICH implements numerous model-independent optmization and calibration (parameter estimation) algorithms, including:

      DDS Algorithms
    • Dynamically Dimensioned Search (DDS)
    • Asynchronous Parallel Dynamically Dimensioned Search (PDDS)
    • Discrete Dynamically Dimensioned Search (DDDS)
    • Pareto Archived Dynamically Dimensioned Search (PADDS)
    • Parallel Pareto Archived Dynamically Dimensioned Search (ParaPADDS)
    • Dynamically Dimensioned Search - Approximation of Uncertainty (DDS-AU)
    • Note: PADDS and ParaPADDS are multi-objective optimizers

      PSO Algorithms
    • Particle Swarm Optimization (PSO)
    • Asynchronous Parallel Particle Swarm Optimization (APPSO)
    • PSO with GML 'polishing' (PSOGML)

    • Other Evolutionary or Heuristic Algorithms
    • Shuffled Complex Evolution (SCE)
    • Genetic Algorithm (real- and binary-coded) (RGA, BGA)
    • Simulated Annealing (3 variants) (SA, VSA, CSA)
    • Big Bang-Big Crunch (BBBC)
    • Balanced Exploration-Exploitation Random Search (BEERS)
    • Simple Multi-Objective Optimization Test Heuristic (SMOOTH)

    • Gauss-Marquardt-Levenberg (GML) Algorithms
    • Gauss-Marquardt-Levenberg (GML) non-linear regression
    • Multi-Start GML with Trajectory Repulsion (MSGML)

    • Other Gradient-based or Deterministic Algorithms
    • Powell's Method
    • Fletcher-Reeves
    • Steepest Descent
    • Exhaustive (Grid) Search

    • Uncertainty-based Search Algorithms
    • Generalized Likelihood Uncertainty Estimation (GLUE)
    • Metropolis-Hastings Markov Chain Monte Carlo (MCMC)
    • DDS-AU

    • Utilities for Sensitivty and Uncertainty Analysis
    • Regression Statistics (Local Sensitivity Analysis)
    • User-specified Model Evaluations

    NEW! OSTRICH v16.02.10 now available!

    With this release OSTRICH versions will be tagged according to their build date. The naming convention for OSTRICH versions is YY.MM.DD (YEAR.MONTH.DATE). Thus, v16.02.10 was built February 10th, 2016.

    OSTRICH supports MPI-based parallel processing on both Windows and Linux machines! The parallel version of OSTRICH is called OstrichMPI and can be launched using mpirun. A file-based Windows version of mpirun is provided in the OSTRICH download below. Linux users should use the launcher of a separate package like openmpi or intel-mpi.

    The download also contains some working examples that illustrate a variety of OSTRICH features.


    The official (i.e. well-documented and tested) OSTRICH release is version 16.02.10!

      Click on the icon at left to download the user manual, demos, source code, and executables for Windows and Linux. (updated 02/10/16)