Systems biology simulation

Initial problem

  • Parameter fitting of a spatial biochemical reaction model using a particle swarm algorithm suffers from two bottlenecks:
  • Changing the model, parameters or data used in a fit requires tedious and error prone changes to a Python script
  • Running the algorithm on a single cpu core can take too long to converge to a good solution

What we did

  • Wrapped the functionality in a user-friendly Python module: sme_contrib.optimize
  • Made the fitting thread-safe, then enabled multi-threaded fitting using Python multiprocessing
  • Set up a github repository with continuous integration for automated testing and deployment of the code to PyPI
  • Provided access to a HPC node for testing the module and evaluating the multi-threaded performance

Result

  • Faster and simpler process for the user to set up parameter fitting
  • Faster results from multi-threaded implementation
  • This fitting functionality can easily be used and extended by other researchers