Hy3S -- Hybrid Stochastic Simulation for Supercomputers
Home | Examples | Download | Developers | Publications | SF Project Page

Hy3S superceded by SynBioSS

Hy3S is now a part of a larger project, SynBioSS, a software suite for synthetic biology. SynBioSS utilizes Hy3S to conduct the simulations, but wraps a cross-platform user interface around it. SynBioSS also includes two web-based pieces of software to help design and create model files for simulation. Continued development of SynBioSS and Hy3S will be documented at the SynBioSS web site.

What is Hy3S?

Hy3S (pronounced hi-three-ess) is an open-source project aimed at developing, integrating, and disseminating software that simulates a chemical or biochemical system as quickly as possible, using hybrid or other approximate algorithms to greatly reduce the computational time, but still retain accuracy. We are interested in the computational design of interesting biological devices, especially ones that rely on regulated gene expression to produce useful behavior. By combining quantitatively predictive simulations and design algorithms, one will eventually be able to use computers to identify the exact DNA sequence that produces a desired function, greatly reducing the amount of necessary experimental work. Of course, that goal requires mature simulation algorithms and this project seeks to provide them.

When using this software, please cite the following reference: H. Salis, V. Sotiropoulos, Y.N. Kaznessis, BMC Bioinformatics, v7 p93 (2006)

Getting Started

Download the GUI and simulation programs, licensed under the GNU GPL.

To run the GUI, you will need the following:

To run the simulation programs, you will need the following:
The Matlab GUI files, simulation programs, and source code are available
on the Sourceforge official download site.

The latest source code is available at our SourceForge project CVS.


  • More efficiently simulates the stochastic dynamics by describing the system as a hybrid coupled jump/continuous Markov process
  • Solves the resulting system of chemical Langevin and differential Jump equations using either fixed or adaptive stochastic numerical integrators
  • Automatic and dynamic partitioning of the system of bio/chemical reactions
  • No a priori knowledge of separation of time-scales needed
  • Accuracy of solution governed by well-characterized stochastic numerical integrators of SDEs
  • Supports many rate laws. Additional rate laws are easily added
  • Supports non-Markovian events, such as gamma or Gaussian distributed transitions
  • Cell replication is included as a discrete event occurring at Gaussian distributed replication times
  • Combinatorial exploration of kinetic parameters and initial conditions
  • System perturbations of both kinetic parameters and species concentrations
  • Uses the NetCDF file format: Enables fast write/read of extremely large model and solution data sets
  • Targetted production platforms: MPI-capable clusters running Linux (other platforms supported on demand)
  • An easy-to-use (but simple) Graphical User Interface is available to quickly define systems of bio/chemical reactions
  • Solution data may be directly read into MATLAB or other scientific softwares, analyzed, and plotted for high research productivity


Developers' Corner

Questions, comments, suggestions? Email me. (Address is below)

Bug Alerts!

  • Attempting to use the GUI's Plot solution window when the solution variable exists, but contains no data, results in a Matlab Java exception (crash!). I suggest using the NetCDF Toolbox to analyze solution data.


  • February 26th, 2006: The article "Multiscale Hy3S: Hybrid stochastic simulation for supercomputers" appears in BMC Bioinformatics. We hope that this article provides a detailed explanation of how the HyJCMSS methods work. We expect, though, that the Hy3S project will continue to evolve, adding more advanced algorithms and useful features. And, remember, this is an open source project: feel free to reuse code, but please reference this project if you do. Feel free to contact us with any questions about the code or the algorithms. Thank you!

  • October 20th, 2005: Massive additions: Added three additional ways to numerical integrate the SDEs, including the fixed time step Milstein method (1st order strong accuracy) and adaptive time step methods using Brownian bridges with either the Euler-Maruyama or Milstein integrators. There's now a total of 5 different algorithms for computing the stochastic dynamics of reaction networks (10 if you include MPI parallelized versions). In order to accommodate all of the different methods, we went back to using compiler declarative statements within the source that turns on/off different parts of the code instead of creating many different versions of the source code. Consequently, the Makefile only works for the Intel Fortran compiler for Linux. Many other compilers support simple declarative statements so adapting the code for other systems should not be too difficult. The changes are in the CVS tree, but binaries for x86 and ia64 will be released shortly.

  • More News!

Examples -- Natural and Synthetic Systems

List of Examples
  • Update: The examples from the BMC Bioinformatics paper have been added.


Maintained by Howard Salis
Kaznessis Research Group
Dept. of Chemical Engineering & Materials Science
University of Minnesota (spam is evil)

Site last modified at Friday, 18-Jul-2008 18:49:38 UTC