Department of Electrical and Computer Engineering, University of Alberta, Edmonton, AB T6G 2V4, Canada

Abstract

Background

Various computational models have been of interest due to their use in the modelling of gene regulatory networks (GRNs). As a logical model, probabilistic Boolean networks (PBNs) consider molecular and genetic noise, so the study of PBNs provides significant insights into the understanding of the dynamics of GRNs. This will ultimately lead to advances in developing therapeutic methods that intervene in the process of disease development and progression. The applications of PBNs, however, are hindered by the complexities involved in the computation of the state transition matrix and the steady-state distribution of a PBN. For a PBN with ^{2n
}) or ^{
n
}) for a sparse matrix.

Results

This paper presents a novel implementation of PBNs based on the notions of stochastic logic and stochastic computation. This stochastic implementation of a PBN is referred to as a stochastic Boolean network (SBN). An SBN provides an accurate and efficient simulation of a PBN without and with random gene perturbation. The state transition matrix is computed in an SBN with a complexity of ^{
n
}), where

Conclusions

Stochastic Boolean networks (SBNs) are proposed as an efficient approach to modelling gene regulatory networks (GRNs). The SBN approach is able to recover biologically-proven regulatory behaviours, such as the oscillatory dynamics of the p53-Mdm2 network and the dynamic attractors in a T cell immune response network. The proposed approach can further predict the network dynamics when the genes are under perturbation, thus providing biologically meaningful insights for a better understanding of the dynamics of GRNs. The algorithms and methods described in this paper have been implemented in Matlab packages, which are attached as Additional files.

Background

Biological systems are inherently noisy, yet robust in the presence of noise. The function and malfunction of a system are regulated through the interactions among genes, proteins and other molecules in the cellular network. For instance, the tumour suppressor gene p53 controls cell growth and plays an important role in preventing the development and progression of tumour cells

These models can be classified into three broad categories: logical models, continuous models and stochastic models at the single-molecule level

Albeit simplistic, BNs have been shown to be efficient in the modelling of GRNs by taking advantages of low complexity and a minimum requirement on the quality (and quantity) of experimental data

The computation of the steady-state distribution of a PBN, however, presents a challenge. In a PBN with ^{2n
})
^{
n
}) for a sparse state transition matrix

Although synchronicity is usually assumed in the state transitions of PBNs, asynchronous PBNs have been considered by accounting for different updating periods of genes in the constituent BNs. Asynchronous PBNs are potentially more accurate in describing the regulatory behaviour of genetic networks and may provide a better vehicle for investigating intervention strategies that lead to optimal therapeutic methodologies

As an application of BNs, logic circuits have been used to simulate genetic networks

In this paper, a stochastic computational model is presented for an efficient representation and simulation of PBNs; this implementation of a PBN is referred to as a stochastic Boolean network (SBN). It is shown that in an SBN, the complexity to compute the state transition matrix is ^{
n
}), where

Methods

Probabilistic Boolean networks (PBNs)

In a PBN, genes are represented by a set of binary-valued nodes and the state transitions of genes are described by a list of Boolean functions. Following
_{
1
}, _{
2
}, … _{
n
}}, a set of binary-valued nodes, _{
1
}, _{
2
}, … _{
n
}), a list of sets of Boolean functions:
_{
i
} represents the state of gene _{
i
} and _{
i
} = 1 (or 0) indicates that gene _{
i
} contains the rules that determine the next state of gene

Due to the noise in genetic networks, the functions in a PBN occur with certain probabilities. The next state of gene _{
i
}, i.e., by

A PBN is independent if the functions from _{
i
} are independent. This means that the selection of Boolean functions for gene

For the

where

where each entry is a conditional (transition) probability that the genes transfer from a given present state into a next state. Since each BN results in a unique next state, the matrix **
A
** can be obtained by

Usually, synchronicity is assumed in the state transitions of PBNs. However, a gene-level asynchronous model considers different updating periods of genes in the constituent BNs. In a deterministic-asynchronous Boolean network (DA-BN), a gene is assumed to have a fixed updating period
_{
i
} represents the expression level of the _{
i
} and
_{
i
}(t) can be used to indicate whether the state of gene _{
i
}(t + 1), is then determined by:

where

Stochastic Boolean networks (SBNs)

1. An SBN without perturbation

In stochastic computation, real numbers are represented by random binary bit streams and information is carried in the statistics of the binary streams

Figure
_{a}(1 − P_{c}) + P_{b}P_{c} = 0.34, which means that approximately 340 1’s are expected in the output sequence. Note that this number is only approximate due to the stochastic fluctuations inherent in the representation of the random binary bit streams. This is an important feature in stochastic computation as probabilistic values are propagated rather than deterministic ones, which results in inevitable random fluctuations in the representation of probabilities. It has been shown, however, when non-Bernoulli sequences of random permutations of fixed numbers of 1’s and 0’s are used for representing initial probabilities, these fluctuations are significantly smaller than using Bernoulli sequences, which is equivalent to a random sampling based simulation

Stochastic logic

**Stochastic logic. **(**a**) a NOT gate, (**b**) an AND gate, (**c**) a buffer, (**d**) an OR gate, (**e**) an XOR gate and (**f**) a multiplexer. Stochastic logic performs arithmetic operations on the input probabilities encoded in the random binary bit streams. A probability is represented by a proportional number of bits, i.e., the mean number of 1’s in a binary sequence. For illustration, a sequence length of 10 bits is used from (a) to (d); however longer sequences are typically needed in a practical application, as shown in (e) and (f).

**Stochastic Logic using Non-Bernoulli Sequences.**

Click here for file

**mux2.m. ‘mux2.m’ is a Matlab program, which implements the function of a two-input stochastic multiplexer (MUX, with one control input) for an SBN.**

Click here for file

**mux4.m. ‘mux4.m’ is a Matlab program, which implements the function of a four-input stochastic multiplexer (MUX, with two control inputs) for an SBN.**

Click here for file

A general structure of the stochastic Boolean network (SBN) is defined as follows. As shown previously, the next state of genes in a PBN is updated by a set of Boolean functions according to their occurring probabilities. In an SBN, these probabilities are represented by random binary bit sequences and the selection of the Boolean functions is implemented by a stochastic multiplexer with properly generated control sequences. A general structure of an SBN for a single gene is shown in Figure

A stochastic Boolean network (SBN) without perturbation (for a single gene)

**A stochastic Boolean network (SBN) without perturbation (for a single gene).** Only the Boolean functions for a single gene _{1} ~ S_{m}’ to the multiplexer (MUX) probabilistically determine the selection of Boolean functions for gene

Generally, if a total number of _{1} ~ S_{m}, as shown in Figure

2. An SBN with perturbation

While a switch of Boolean functions may indicate a structural change in the network, a random perturbation could cause a transient change of a gene’s state under external stimuli. In a PBN with perturbation, a gene may change its value with a small probability

Assume **
x
** = (

where ⊕ is the modulo 2 of additions and _{
k
}(·) represents the function of the

However, the effect of perturbation can be readily accounted for in an SBN. Figure

which is equivalent to (4). This indicates that a PBN with perturbation can be accurately implemented by an SBN with perturbation.

An SBN with perturbation

**An SBN with perturbation.** A perturbation network is implemented by the stochastic XOR logic of the perturbation vector and the present state. The probability that either a Boolean function works or a perturbation works is given by the output sequence of a stochastic

3. An SBN for asynchronous PBNs

In contrast to synchronous PBNs, each gene in an asynchronous PBN has a different period of updating time. Mathematically, this is described by (3) for the so-called deterministic-asynchronous probabilistic Boolean networks (DA-PBNs). In a DA-PBN, the state of each gene is independently updated according to its own updating period.

While the deterministic asynchronicity changes the temporal sequence of state transitions, it has no impact on the logic relationships among genes, so the Boolean functions are preserved for each gene in a DA-PBN. To model this asynchronicity, an SBN can be constructed by considering the timing information as follows:

(1) Construct the Boolean functions for each gene using the proposed SBN structure.

(2) Sort the genes by the updating period and record the sequence. For example, a sequence can be created as

(3) Consider the current first gene, i.e., the gene with the smallest updating period in _{
t
}, denoted by _{
t
}
^{(i)}. Since the state of _{
t
}
^{(i)} will first be updated while the states of the other genes remain unchanged, the BNs at this stage consist of the Boolean functions of _{
t
}
^{(i)} and buffers for the other genes. A buffer is a logic element with a delayed input as its output. In this structure, a buffer is used to preserve the state of a gene that is not being updated.

(4) Delete _{
t
}
^{(i)} from _{
t
}.

(5) Repeat steps (3) and (4) until _{
t
} is empty.

An SBN for a DA-PBN is shown in Figure

An SBN for a deterministic asynchronous PBN

**An SBN for a deterministic asynchronous PBN.** Buffers are used to preserve the states of the genes that are not being updated.

Applications of SBNs

1. Computation of the state transition matrix

In an SBN, each input combination yields output sequences that contain information about the transition probability from this input state to an output state. Therefore, the statistics, i.e., the proportions of the number of each state encoded in the output sequences return the transition probabilities in a row in the state transition matrix. This row corresponds to the given input state and thus all the transition probabilities from this input can be generated in a single run. For a PBN with ^{
n
} input states and an

The accuracy in the computed state transition probabilities is determined by the sequence length of the random binary bit streams. In general, longer sequences are required in a larger network for achieving an evaluation accuracy. To consider the overhead incurred in the use of a larger sequence length, a factor, ^{
n
}) results for computing all the entries in the state transition matrix for a desired accuracy.

It has been shown that the required sequence length is related to the reliability and thus the size of a combinational network
^{
n
}), is significantly smaller than the analytical result of ^{
n
}), especially for a network with a large number of genes. This is demonstrated later by simulations using several measures to determine the minimum sequence length required for certain accuracy.

The procedure of computing the state transition matrix using an SBN is summarized as follows:

(1) Construct an SBN by inserting a multiplexer for each gene in a PBN;

(2) For each input state, generate initial random binary streams encoding the control signal probabilities for each multiplexer;

(3) Propagate the binary streams from the present state (inputs) to the next state (outputs) and obtain a random bit sequence for each output;

(4) Obtain the statistics, i.e., the proportions of the number of each state encoded in the output sequences as the transition probabilities for this input state;

(5) Repeat steps (2), (3) and (4) for all 2^{n} input states to compute all the entries in the state transition matrix.

For an SBN with perturbation, the state transition matrix can be similarly computed using the procedure outlined above with an exception in the construction of the SBN in step (1).

2. Estimation of the steady-state distribution

Given the size of the state transition matrix of a PBN, the analysis of the steady-state distribution is challenging for using both analytical and simulative approaches. The Markovian nature of a PBN makes its analysis similar to that of a finite state machine (FSM). An FSM is equivalent to a sequential circuit implementation. By a time-frame expansion, a sequential circuit can be unrolled into a series of identical combinational modules connected in the spatial domain. Using a similar technique, the temporal operation of an SBN can be transformed into a spatial operation of identical SBNs connected in series. This is shown in Figure

A time-frame extended SBN

**A time-frame extended SBN.** Each module is an implementation of the original SBN without or with perturbation (as in Figure

A steady-state analysis using a time-frame expanded SBN starts with an initial input state, generates the random bit sequences for the inputs and control bits of multiplexers, and then propagates the stochastic signals through the expanded SBN structure. This process is equivalent to an analytical procedure of multiplying the input probabilities with the powers of the state transition matrix. Finally, a small variance threshold is used to determine whether the system has reached a steady state. The steady-state distribution is then obtained from the output sequences at the end of the operation.

In the above process, the speed of convergence to a steady state is dependent on a number of factors, including the length of random bit sequences, the variance threshold value and the perturbation rate. In practice, a sequence length that is long enough to have a resolution of at least two magnitudes smaller than the threshold value, is used to guarantee that the convergence is not dominated by stochastic fluctuations. It is shown later that the analysis using an extended SBN structure provides an alternative and efficient way of estimating the steady-state distribution of a PBN without resorting to the state transition matrix.

Example: the p53-Mdm2 network

In a p53 network, signaling pathways are triggered by DNA damages and external factors such as chemotherapeutic drugs and ultraviolet light. For instance, DNA double strand breaks (DSBs) activate pathways that involve the p53 and Mdm2 genes (Figure
_{1}, _{2}) with the function classes

The p53-Mdm2 network (adapted from [3])

**The p53-Mdm2 network (adapted from ****).** Under DNA damage, p53 promotes the expression of the Mdm2 gene, which in turn causes the degradation and destruction of p53.

**Present State**

**Next State Probability**

**p53, Mdm2**

**p53**

**Mdm2**

(or, **
x
**

0

1

0

1

00

0.01

0.99

0.99

0.01

01

0.1

0.9

0.9

0.1

10

0.9

0.1

0.1

0.9

11

0.5

0.5

0.5

0.5

**x**
_{
1
}**x**
_{
2
}

00

1

1

1

0

0

0

0

1

01

1

1

0

0

0

0

1

1

10

0

0

1

1

1

1

0

0

11

0

1

1

1

1

0

0

0

0.5

0.4

0.09

0.01

0.5

0.4

0.09

0.01

In Table

For this PBN, an SBN can be constructed using stochastic multiplexers and random binary bit streams as information carriers, as shown in Figure

An SBN for the p53-Mdm2 network (without perturbation)

**An SBN for the p53-Mdm2 network (without perturbation).** This SBN implements the truth table of the PBN defined in Table

The difference between (6) and (7) is evaluated using the following norms:

With random gene perturbation, an SBN with perturbation can be constructed, as shown in Figure

An SBN for the p53-Mdm2 network (with perturbation)

**An SBN for the p53-Mdm2 network (with perturbation).**

A similar procedure can be used to compute the state transition matrix of the SBN with perturbation—the result is shown in (8) for a perturbation probability of 0.01:

Compared to the analytical result by a method based on (4):

the differences between (8) and (9) are revealed in the measures of

An SBN for an asynchronous p53-Mdm2 network can also be constructed, as in Figure

Results and discussion

Simulations with randomly generated networks

The state transition matrices of several randomly generated PBNs have been computed using the proposed SBN structure. The Boolean functions of each network are generated for a given number of genes (

**Number of genes (****
n
**

**2**

**3**

**4**

**5**

**6**

**Error**

**Length (bits)**

1000

0.0070

0.0330

0.0420

0.0477

0.0649

10000

0.0027

0.0052

0.0105

0.0179

0.0186

1000

0.0100

0.0314

0.0408

0.0287

0.0405

10000

0.0038

0.0047

0.0102

0.0109

0.0099

1000

0.0160

0.0640

0.0908

0.0735

0.1293

10000

0.0056

0.0096

0.0248

0.0303

0.0248

In general, a smaller sequence length leads to a shorter run time in the computation of state transition matrices. However, the error incurred due to stochastic fluctuations increases with the size of the network under evaluation. Subsequently, therefore, a minimum accuracy requirement is given and the length of the stochastic sequence is increased for a larger network in order to meet this requirement. Tables

**n**

**N**

**SBN (Norm 2 = 0.04)**

**SBN (Norm 2 = 0.02)**

**Method**

**Sequence length**

**Std. deviation**

**Avg. time (s)**

**Std. deviation**

**Sequence length**

**Std. deviation**

**Avg. time (s)**

**Std. deviation**

**Avg. time (s)**

**Std. deviation**

(no perturbation,

2

6

150

46

0.006324

0.003315

480

84

0.013655

0.007568

0.005468

0.004100

3

8

460

89

0.019755

0.008942

800

122

0.017634

0.009536

0.011655

0.007036

4

16

520

109

0.024337

0.009108

1120

84

0.043844

0.010102

0.031391

0.009388

5

32

860

134

0.052112

0.017356

1540

182

0.118927

0.036943

0.157794

0.020922

6

64

1240

270

0.209416

0.030298

2460

241

0.548156

0.042366

0.532971

0.037483

7

128

1340

167

0.453192

0.048960

3680

239

1.208252

0.060325

2.441066

0.163347

8

256

2260

378

2.030217

0.171125

5480

335

4.110083

0.326308

9.368184

0.863544

9

512

2580

303

4.751360

0.421918

6820

471

12.81050

2.061854

39. 26049

4.208466

10

1024

3920

923

16.06112

4.252810

8760

1135

38.60258

6.377620

201.5433

10.90932

11

2048

4700

836

40.44380

5.742303

10400

1140

95.40610

7.547263

811.6358

15.88395

12

4096

5660

882

118.3426

9.031772

13000

1000

286.5043

12.37633

3501.744

86.66141

**n**

**N**

**SBN (Norm 2 = 0.04)**

**SBN (Norm 2 = 0.02)**

**Method**

**Sequence length**

**Std. deviation**

**Avg. time (s)**

**Std. deviation**

**Sequence length**

**Std. deviation**

**Avg. time (s)**

**Std. deviation**

**Avg. time (s)**

**Std. deviation**

(perturbation probability = 0.01,

2

6

180

45

0.008052

0.005219

340

55

0.017285

0.010683

0.050477

0.010140

3

8

460

114

0.020473

0.011034

920

130

0.027358

0.010944

0.026389

0.014326

4

16

660

152

0.032089

0.023041

1220

148

0.055602

0.022138

0.053726

0.021034

5

32

880

130

0.071256

0.020862

1620

130

0.162794

0.047719

0.161462

0.039981

6

64

1320

228

0.235628

0.038845

2460

288

0.443522

0.056302

0.613840

0.047252

7

128

1480

130

0.574352

0.062129

4240

261

1.540875

0.071316

2.663523

0.180211

8

256

2420

319

2.124709

0.228612

5620

319

4.411751

0.413352

11.90834

1.412206

9

512

3220

650

7.248265

2.301722

6940

498

14.36077

3.253704

61.45203

6.881528

10

1024

4140

882

18.09032

4.112405

9400

1140

41.41356

5.289815

261.3189

12.29343

11

2048

4860

606

47.37403

5.822926

11800

837

120.3839

6.107372

975.3821

33.25207

12

4096

5820

782

132.8137

10.90686

14600

1342

373.7601

13.64551

4022.140

78.42531

**n**

**N**

**SBN (s) (Length = 10000 bits)**

**Method**
**(s) (lower bound = 10**
^{
-4
}**)**

**(SBN)**

(no perturbation,

11

2048

92.367577

183.617225

0.2031

0.0268

0.1209

0.2416

0.0463

0.0221

12

4096

221.849183

1125.969347

0.3448

0.0301

0.1540

0.6387

0.0929

0.0386

13

8192

489.265478

4395.954714

0.4581

0.0552

0.2249

1.6583

0.1414

0.0874

14

16384

1063.892415

9415.812415

1.0152

0.0825

0.4287

2.1642

0.2283

0.1895

As revealed in the tables, while an analytical approach is fast in computing the state transition matrices of small networks, it becomes cumbersome to use for larger networks. This is because an analytical approach is limited by the number of BNs (

The state transition matrix computed using an SBN can be used to obtain the steady state distribution of a network. However, the size of the network that can be evaluated is restricted due to the exponential increase of the size of the matrix. As an alternative and efficient approach, the time-frame expansion technique can be used to evaluate much larger networks under perturbation. Recently, several BN models have been developed for GRNs with tens of genes

**Number of genes**

**Sequence length (bits)**

**Threshold value (Norm infinity)**

**Perturbation rate**

**SBN (results from five experiments with different initial values)**

**Average number of periods for convergence**

**Standard deviation of the number of periods**

**Run time (s)**

**Standard deviation of the run time (s)**

20

100,000

0.001

0.0001

1648

278.3

1477.8

125.1

100,000

0.001

0.001

202

21.3

182.65

18.62

10,000

0.01

0.01

20

4.9

2.5878

0.5663

30

1,000,000

0.01

0.0001

1128

173.2

15536

3121

1,000,000

0.1

0.001

66

26.2

904.04

395.6

Experiments on a T-cell time series dataset

A network inferred from a time series gene expression dataset

1. Inference of Boolean dynamics of the GRN

PBNs have been inferred from steady-state data using the coefficient of determination

For the T-cell time series dataset, a total of 161,558 networks were discovered by the inference algorithm [43]. The inference algorithm further explores the dynamics of the inferred networks. This is based on the fact that finite BNs are expected to exhibit a cyclic pattern of expression

A T cell immune response network inferred from a time series gene expression dataset (adapted from [43])

**A T cell immune response network inferred from a time series gene expression dataset (adapted from ****).** Solid arrows indicate relationships occurring in all of the 901 networks, while the numbers associated with the dashed arrows indicate the fraction of networks having that relationship. The green lines represent activation relationships and the red lines represent inhibition relationships.

The resulting network is not unique in that the occurrence of different Boolean functions results in different BNs. In Figure

**Truth Table of the PBN Inferred from the T Cell Microarray Time Series Data.**

Click here for file

2. Modeling the network with SBN

To build an SBN for the inferred network of Figure
^{12} or 4096 states, each of which is indexed by the state of each gene as follows:

where

**Gene**

**E-Jun-Fos**

**L-Nsbp1**

**L-Foxm1**

**I-BIc3**

**I-Myc**

**L-Myb12**

**E-Cdkn2c**

**E-Stat1-6**

**I-Rpol-hnr**

**E-stat5a**

**E-stat5b**

**L-Mcmd**

Symbol

g(1)

g(2)

g(3)

g(4)

g(5)

g(6)

g(7)

g(8)

g(9)

g(10)

g(11)

g(12)

Since solid arrows in Figure

An SBN is constructed for the genetic network of Figure

(1) An inhibited signal is considered logical “low” while an activated signal is considered logical “high.” Therefore, an inverter or a buffer is applied to represent an inhibition or an activation relationship between genes. For example, L-Myb12 inhibits E-Jun-Fos, so an inverter is used to simulate this relationship between _{
t
}(6) and _{
t+1
}(1). For the activation of L-Foxm1 by L-Nsbp1, a buffer is applied between _{
t
}(2) and _{
t+1
}(3).

(2) An OR gate is applied to model multiple activations while a NOR (inverted OR) gate is applied to model multiple inhibitions on the same gene. For example, L-Myb12 can be activated by any one of E-Jun-Fos, I-Rpol-Hnr, E-stat5b and L-Mcmd, so in Figure
_{
t
}(1), _{
t
}(9), _{
t
}(11) and _{
t
}(12) are used as the four inputs to an OR gate. However, due to the inhibition of L-Myb12 by E-stat5a, an inverter is applied and its output is ANDed with the output of the 4-input OR gate to produce the output of _{
t+1
}(6). The use of the AND is dictated by the priority rule of the inhibition over the activation of L-Myb12, as explained as follows.

(3) When an inhibition and activation occur on the same gene, the logic gate is determined by the priority of the two functions: an AND gate is applied if the inhibition has a higher priority, whereas an OR gate is used if the activation has a higher priority. For instance, an AND gate is used to model the relationship between the activation and inhibition of L-Myb12 in the example of (2), as shown in Figure

(4) A solid arrow indicates a relationship that exists in all 901 networks and therefore is considered to occur with a probability of 1. The corresponding function then exists in every Boolean function that produces an input to a MUX. For example, E-stat5a inhibits L-Myb12 in all the networks, so inverters are present in both of the two Boolean functions that lead to _{
t+1
}(6).

An SBN for the GRN in Figure 9

**An SBN for the GRN in Figure**

3. Steady-state evaluation

For this SBN, the state transition matrix **
A
**

**T_cell_SBN.m. ‘T_cell_SBN.m’ is a Matlab program, which describes the structure of an SBN for the T-cell genetic network and computes its state transition matrix for both without and with perturbation.** The programs ‘mux2.m’ and ‘mux4.m’ are needed to run ‘T_cell_SBN.m.’

Click here for file

Given an initial input, **
I
**

A clock cycle here corresponds to the time interval between two discrete time points as a period of biological response. It has been shown that the network exhibits a steady-state dynamics consisting of three time points

As shown in Table

**Number of cycles**

**States with highest probabilities**

**Attractors found in**

28

1224

Attractor 1

711

Attractor 3

1768

Attractor 2

29

1768

Attractor 2

1224

Attractor 1

711

Attractor 3

30

711

Attractor 3

1768

Attractor 2

1224

Attractor 1

Alternatively, and more efficiently, the aforementioned time-frame expansion technique can be used to estimate the attractors with a greatly reduced complexity. The results are shown in Figure

State distributions of the SBN in Figure 10 after 28, 29 and 30 clock cycles obtained using the time-frame expansion technique

**State distributions of the SBN in Figure****after 28, 29 and 30 clock cycles obtained using the time-frame expansion technique.** Our simulation shows that the output distribution starts to oscillate after 20 clock cycles.

4. Perturbation and prediction

When the genes in a network are perturbed with a small probability, an SBN with perturbation can be constructed (as in Figure

Steady state distribution of the T cell network with perturbation rate of 0.01

**Steady state distribution of the T cell network with perturbation rate of 0.01: (a) computed using state transition matrices and (b) obtained using the time frame expansion technique.**

It can be seen that the steady states in Figure

**State Number**

**Probability**

**Closest attractor**

**Difference**

(perturbation probability = 0.01; state 1224 with probability 0.1901, state 1768 with probability 0.1804 and state 711 with probability 0.1750).

1736

0.1099

Attractor 2

g(6) (L-Myb12)

967

0.0203

Attractor 3

g(9) (I-Rpol-hnr)

199

0.0164

Attractor 3

g(10) (E-stat5a)

3816

0.0147

Attractor 2

g(12) (L-Mcmd)

3866

0.0135

Different from all the attractors by more than 3 genes

743

0.0120

Attractor 3

g(6) (L-Myb12)

1352

0.0101

Attractor 1

g(8) (E-Stat1-6)

g(9) (I-Rpol-hnr)

1256

0.0100

Attractor 1

g(6) (L-Myb12)

Application of the time-frame expansion technique yields similar predictions for the network under perturbation. For a perturbation rate of 0.01 and a threshold value of 0.01 for Norm infinity, it only takes 3.7 seconds to obtain the steady state distribution using a sequence length of 10,000 bits, in contrast to 212.1 seconds using the matrix-based SBN method and 2532.9 seconds using the analytical method in

**time_frame_expansion.m. ‘time_frame_expansion.m’ is a Matlab program, which evaluates the steady state distribution using the time frame expansion technique for the T-cell genetic network.** The programs ‘mux2.m’ and ‘mux4.m’ are needed to run ‘time_frame_expansion.m.’

Click here for file

The proposed SBN technique is more efficient than a random sampling approach, due to the use of non-Bernoulli sequences of random permutations of fixed numbers of 1’s and 0’s in the representation of initial probabilities

Relationship to other GRN models

1. Continuous models

Continuous models based on linear or ordinary differential equations can potentially be implemented using SBNs, provided that the underlying principles of the differential equations can be formulated in state transition matrices. In this case, a network of

where _{
i
}, (**
T
** is a matrix of

In an SBN, the next state of genes, **
X
**

where **
A
** is a 2

where **
P
**

In the limit, we obtain:

where **
I
** is the identity matrix. Finally, (13) and (17) lead to

which describes the relationship between the transition matrices in a continuous model and an SBN.

2. Single-molecule level models

In a single-molecule level model, significant stochastic effects of biochemical reactions are accounted for each molecular species. The stochastic simulation algorithm (SSA) tracks the number of molecular species in a biochemical system, so it accurately simulates the discrete, random biochemical reactions specified by the chemical master equation (CME)

Due to the same underlying Markov models in the SSA and PBNs, the SSA can, in principle, be implemented using SBNs. However, this implementation is not straightforward as the SSA simulates the function of the CME while the SBN implements the state transitions of Boolean functions. A challenge is therefore to formulate the underlying principles of the CME in the form of state transition matrices. Nevertheless, it is possible for the SSA and SBN to be used in a hybrid method. In this method, a logical model is first used to simulate a large network and to identify the sensitive nodes in the network. Then, a single-molecule level model such as the SSA can be used to find out more details of the identified sensitive genes. In this way, this hybrid method leverages the efficiency of a logical model and the accuracy of a single-molecule level model, so it may provide an effective means to model large gene regulatory networks.

Application on GRN analysis

In summary, for a GRN inferred from microarray time series data, an SBN can be constructed to analyze the dynamics of the network with or without gene perturbation. This provides the biologists an efficient tool to evaluate the steady state distribution of a genetic network. A general procedure for applying the proposed SBN approach in a GRN analysis is given in the flowchart of Figure

A flowchart for the application of the SBN approach in GRN analysis

**A flowchart for the application of the SBN approach in GRN analysis.**

Conclusions

This paper proposes a novel structure of stochastic Boolean networks (SBNs) for an accurate and efficient implementation of probabilistic Boolean networks (PBNs). The application of an SBN is demonstrated through the computation of the state transition matrix and the steady-state analysis of a PBN. The state transition matrix can be accurately and efficiently computed in an SBN with a complexity of ^{
n
}), where ^{2n
}) and ^{
n
}). The steady state distribution can be estimated using the obtained state transition matrix or a time-frame expansion technique. The latter approach has shown a significant speedup in the computation of the steady state distribution.

SBNs have been constructed for the p53-Mdm2 network and an inferred T cell immune response network. Simulations of the SBNs have recovered state dynamics that have been experimentally demonstrated for these two networks. The proposed approach is able to discover network dynamics when the genes are under perturbation, which is a difficult task to implement in experiments or by other modeling approaches due to its complexity. So in this case, the SBN technique can be used to provide biologically meaningful insights for a first understanding of the dynamics of a GRN. The relationship between an SBN and continuous/stochastic models has also been discussed and a hybrid approach may be useful in a more efficient modelling of a large GRN. Finally, the SBN approach is able to account for signalling pathway information

Competing interests

The authors declare that they have no competing interests.

Authors’ contributions

JL and JH conceived the study and participated in its design. JL carried out the GRN studies, performed the statistical analysis and drafted the manuscript. JH participated in the GRN studies and revised the manuscript. All authors read and approved the final manuscript.

Acknowledgements