Research Article: A Boolean network control algorithm guided by forward dynamic programming

Date Published: May 2, 2019

Publisher: Public Library of Science

Author(s): Mohammad Moradi, Sama Goliaei, Mohammad-Hadi Foroughmand-Araabi, Gareth J. Baxter.


Control problem in a biological system is the problem of finding an interventional policy for changing the state of the biological system from an undesirable state, e.g. disease, into a desirable healthy state. Boolean networks are utilized as a mathematical model for gene regulatory networks. This paper provides an algorithm to solve the control problem in Boolean networks. The proposed algorithm is implemented and applied on two biological systems: T-cell receptor network and Drosophila melanogaster network. Results show that the proposed algorithm works faster in solving the control problem over these networks, while having similar accuracy, in comparison to previous exact methods. Source code and a simple web service of the proposed algorithm is available at

Partial Text

A gene regulatory network (GRN) is a mathematical model of genes and their interaction [1]. The purpose of GRN studies is to achieve a new insight toward the important cellular processes. Examples of mathematical modeling of biological processes includes cell cycle [2, 3], oscillations in p53-mdm2 system [4–6], phage-lambda system [7–9], and T-cell large granular lymphocyte (T-LGL) leukemia network [10, 11]. There are different techniques for modeling dynamics of GRNs, including Boolean networks (BNs) [11], Bayesian networks [11], dynamic Bayesian networks [11], linear models [12] and differential equations [12]. Among the above mentioned models, the Boolean network model has received many attentions [13–16]; that is because in addition to the tractability, Boolean networks could be reconstructed by efficient biological experiments [17, 18].

In this paper, we proposed an algorithm for network control problem that improves the running time of previously provided algorithms. The extent of improvements and efficiency of our proposed algorithm depends on the size of the multi-node components of the network and also on the positioning of the control nodes or more generally, on the accessibility of both states of 0 and 1 in the same time steps for branching nodes.