Abstract
AbstractDynamic flux balance analysis uses a quasi-steady state assumption to calculate an organism’s metabolic activity at each time-step of a dynamic simulation, using the well-know technique of flux balance analysis. For microbial communities, this calculation is especially costly and involves solving a linear constrained optimization problem for each member of the community at each time step. However, this is unnecessary and inefficient, as prior solutions can be used to inform future time steps. Here, we show that a basis for the space of internal fluxes can be chosen for each microbe in a community and this basis can be used to simulate forward by solving a relatively inexpensive system of linear equations at most time steps, instead of the full optimization problem. Using our method, we can use this solution as long as the resulting metabolic activity remains within the optimization problem’s constraints (i.e. the solution remains feasible). As the solution becomes infeasible, it first becomes a feasible but degenerate solution to the optimization problem, and we can solve a different but related optimization problem to choose an appropriate basis to continue forward simulation. We show using an eight species community that this is an efficient and robust method for computing dynamic flux balance analysis simulations, and so is capable of simulating communities of organisms. We demonstrate that the method gives an approximately 85% speed-up per organism over the standard and widely used method. Our method has been implemented in the Python language and source code is available at https://github.com/jdbrunner/surfin_fba and in the Python Package Index (PyPI) as surfinFBA.Author summaryThe standard method in the field for dynamic flux balance analysis carries a prohibitively high computational cost because it requires solving a linear optimization problem at each time-step. We have developed a novel method for producing solutions to this dynamical system which greatly reduces the number of optimization problems that must be solved. We prove mathematically that we can solve the optimization problem once and simulate the system forward as an ordinary differential equation for some time interval, and solutions to this ODE provide solutions to the optimization problem. Eventually, the system reaches an easily checkable condition which implies that another optimization problem must be solved. We compare our method with the classical method to validate that it provides equivalent solutions in much lower computational time.
Publisher
Cold Spring Harbor Laboratory
Cited by
2 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献