All processes that occur inside biological cells are stringently controlled through intricate networks of many interacting components. Feedback is all-pervasive in these networks, which makes assessing their characteristics and predicting their responses to incoming signals or changes in environment extremely difficult. An essential step towards understanding the behaviour of such control systems is the building mathematical models of these systems, then providing the models with varying input (in mathematical form), and analysing their state and output over time.

Building such mathematical models is a specialist task, and the researchers who are investigating the "real" biological - systems (by experimentation) do not necessarily know how to set up and exploit such representations. Therefore, we have developed NetBuilder', a software tool that is intended to help experimentalists creating and manipulating the mathematical representations they need to predict the behaviour of their systems. NetBuilder' has a graphical user interface, which allows its users to create a picture of the (known) components and interactions in the system, and enter quantitative information, such as know or estimated quantities and rates. A (hidden) translator then converts the picture and the other data into the most appropriate mathematical description (there is usually more than one choice), whereupon NetBuilder's "simulation engine" may be used to find out how the modelled system responds to changing input.

Usually, our knowledge about any biological control system has gaps. Sometimes these gaps are so substantial that they prevent the construction of a viable quantitative mathematical model. To deal with the bits that we don't know enough about, we are investigating how to equip NetBuilder' with a device that can automatically generate "artificial" model components. Mathematically speaking, these artificial components will behave in the same way as the "missing" real components (although internally they may work in a completely different way), and can, therefore be used to substitute for the missing components (temporarily, until the gaps in our knowledge have been filled in). We are also investigating if we can apply a particular algebraic technique, "Krohn-Rhodes Holonomy Decomposition", to help us better understand the structure of these complex biological and artificial control networks.

NetBuilder' supports the Systems Biology Markup Language (SBML), and can be displayed in the Systems Biology Graphical Notation format (SBGN).

Snapshot of NetBuilder's graphical user interface

Petri-net model of the Repressilator and the oscillating trajectories of the transcript concentrations


This work was made possible by a grant from the Wellcome Trust, and the allocation of QR funding to this project by the School of Computer Science.

Development team

Dr Maria Schilstra, University of Hertfordshire, UK

Dr Katja Wegner, University of Applied Sciences Albstadt-Sigmaringen, Germany

Marcel Block, University of Applied Sciences Albstadt-Sigmaringen, Germany

Dr Attila Egri-Nagy, University of Hertfordshire, UK

Past contributors

Dr Mark Robinson

Dr Johannes Knabe


Explanatory document (somewhat out of date, but not obsolete - much like Maria)

NetBuilder' class diagram, NetBuilder' UML scheme (both also somewhat out of date)

Tutorial on Genetic Algorithms and their Application to the Artificial Evolution of Genetic Regulatory Networks (pdf, ppt) (for ICSB*2007)

Presentation on the NetBuilder' project (October 2006)

Poster about hybrid simulation (2007 Meeting of the American Biophysical Society, Baltimore)

Poster on NetBuilder' (2005 Genomes to Systems Meeting, Manchester, UK)

Seminar on Modelling and Simulation of Complex Biological Networks (ppt) (University of Mississippi Medical Center, Jackson, October 2007)

Downloads, source code

A Windows installation as well as the source code of the first release (version 0.4) may be found on the SourceForge site of Apostrophe:

The Apostrophe project site:

Whence the Apostrophe?

"The crux of the biscuit is the apostrophe (')" (Fido said)
As the NetBuilder project name on SourceForge was taken (probably by us, but we didn't have any records...),
we had to create a new project name. We chose "Apostrophe", because of what Fido said. Therefore, the new name for NetBuilder is NetBuilder', which you may pronounce NetBuilder-prime, or NetBuilder-apostrophe, if you wish.

Disclaimer | © University of Hertfordshire Higher Education Corporation (2011)