Top Banner
Journal of VLSI Signal Processing 48, 287–299, 2007 * 2007 Springer Science + Business Media, LLC. Manufactured in The United States. DOI: 10.1007/s11265-007-0072-7 Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation YOSHIKI YAMAGUCHI, TSUTOMU MARUYAMA AND MORITOSHI YASUNAGA Graduate School of Systems and Information Engineering, University of Tsukuba, 1-1-1 Tenoudai, Tsukuba, Ibaraki 305-8573, Japan YOSHIKI YAMAGUCHI, TSUTOMU MARUYAMA, RYUZO AZUMA, AND AKIHIKO KONAGAYA RIKEN Genomic Sciences Center, 1-7-22 Suehiro-cho, Tsurumi-ku, Yokohama, Kanagawa 230-0045, Japan AKIHIKO KONAGAYA Department of Mathematics and Computing Sciences, Tokyo Institute of Technology, 2-21-1 Ookayama, Meguro, Tokyo, 152-8552, Japan Received: 16 March 2007; Accepted: 22 March 2007 Abstract. A mesoscopic-level method for clarifying living cell dynamics is described that uses Monte Carlo simulation of biological molecule interactions. The molecules are described as particles that take a random walk in 3-dimensional discrete space. Many kinds of molecules (including complex forms) are supported, so complex reactions with enzymes can be simulated. Also described is an field programmable gate array system with reconfigurable hardware that that will support complete modeling of an entire cell. Two-phase processing (migration and reaction) is used to simulate the complex reactions, so the method can be implemented in a limited amount of hardware. The migration and reaction circuits are deeply pipelined, resulting in high performance. Estimated performance is 30 times faster than with a 3.2-GHz Pentium 4 computer. This approach should make it possible to eventually simulate cell interactions involving one billion particles. Keywords: Monte Carlo simulation, signal transduction pathways, FPGA 1. Introduction In the field of cell biology, many relationships among biological molecules have been unraveled over the past decade by a number of researchers [17]. Their experimental observations of temporal quantity changes of biological molecules in cells using a set of a mass of cells and extracting molecules from the members of the set at fixed time intervals have revealed that many cell dynamics, such as cell cycle, are controlled by biochemical relationships. Further clarification of the cell dynamics requires a better understanding of the relationships among the molecules. Many approaches, both software [811] and specialized hardware systems using a field programmable gate array (FPGA) [1214], have been proposed for estimating the parameters for the relationships that cannot be directly examined by experiments. These approaches, however, analyze the macroscopic tempo- ral quantity changes of molecules and thus do not help
13

Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

Apr 04, 2023

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

Journal of VLSI Signal Processing 48, 287–299, 2007

* 2007 Springer Science + Business Media, LLC. Manufactured in The United States.

DOI: 10.1007/s11265-007-0072-7

Mesoscopic-level Simulation of Dynamics and Interactions of Biological

Molecules Using Monte Carlo Simulation

YOSHIKI YAMAGUCHI, TSUTOMU MARUYAMA AND MORITOSHI YASUNAGA

Graduate School of Systems and Information Engineering, University of Tsukuba, 1-1-1 Tenoudai,Tsukuba, Ibaraki 305-8573, Japan

YOSHIKI YAMAGUCHI, TSUTOMU MARUYAMA, RYUZO AZUMA, AND AKIHIKO KONAGAYA

RIKEN Genomic Sciences Center, 1-7-22 Suehiro-cho, Tsurumi-ku, Yokohama, Kanagawa 230-0045, Japan

AKIHIKO KONAGAYA

Department of Mathematics and Computing Sciences, Tokyo Institute of Technology, 2-21-1 Ookayama,Meguro, Tokyo, 152-8552, Japan

Received: 16 March 2007; Accepted: 22 March 2007

Abstract. A mesoscopic-level method for clarifying living cell dynamics is described that uses Monte Carlo

simulation of biological molecule interactions. The molecules are described as particles that take a random walk in

3-dimensional discrete space. Many kinds of molecules (including complex forms) are supported, so complex

reactions with enzymes can be simulated. Also described is an field programmable gate array system with

reconfigurable hardware that that will support complete modeling of an entire cell. Two-phase processing

(migration and reaction) is used to simulate the complex reactions, so the method can be implemented in a limited

amount of hardware. The migration and reaction circuits are deeply pipelined, resulting in high performance.

Estimated performance is 30 times faster than with a 3.2-GHz Pentium 4 computer. This approach should make it

possible to eventually simulate cell interactions involving one billion particles.

Keywords: Monte Carlo simulation, signal transduction pathways, FPGA

1. Introduction

In the field of cell biology, many relationships among

biological molecules have been unraveled over the

past decade by a number of researchers [1–7]. Their

experimental observations of temporal quantity

changes of biological molecules in cells using a set

of a mass of cells and extracting molecules from the

members of the set at fixed time intervals have

revealed that many cell dynamics, such as cell cycle,

are controlled by biochemical relationships. Further

clarification of the cell dynamics requires a better

understanding of the relationships among the molecules.

Many approaches, both software [8–11] and specialized

hardware systems using a field programmable gate

array (FPGA) [12–14], have been proposed for

estimating the parameters for the relationships that

cannot be directly examined by experiments. These

approaches, however, analyze the macroscopic tempo-

ral quantity changes of molecules and thus do not help

Page 2: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

clarify the microscopic spatial behaviors of molecules

as do experiments on single-molecule tracking [15–18].

To clarify these microscopic spatial behaviors, novel

approaches based on molecular dynamics have been

proposed [19], and a specialized large hardware system

has been designed [20]. However, even a large system

with petaflop performance cannot simulate a whole

cell because of the enormous amount of computation

required for the molecular dynamics. Therefore, we

need a method for simulating the spatiotemporal

behaviors of the large number of molecules in a cell

at the mesoscopic level. One method for mesoscopic-

level simulation is the cellular automata method

proposed by Weimar [21]. It assumes that only a

small number of particles (molecules) can exist at a

site in the simulation lattice and that the movements of

the particles are determined by their collisions with

particles at neighboring sites. However, there is a huge

number of molecules (including many that are not

targets of the simulation) in a cell, and even the

number of molecules at one site in the lattice is large

(even though this method sets the lattice size so

that the simulation finishes within a reasonable com-

putation time). Therefore, it is unrealistic to simulate

the movements of the molecules by using the

collisions among only the limited number of target

molecules.

We have developed a high-speed mesoscopic-

level method for clarifying cell dynamics that uses

Monte Carlo simulation of biological molecule

interactions [22, 23]. The molecules are described

as particles that take a random walk in 3-dimensional

discrete space. Many kinds of molecules (including

complex forms) are supported, so complex reactions

with enzymes can be simulated. To support complete

modeling of an entire cell, we developed an FPGA

system with reconfigurable hardware. Two-phase

processing (migration and reaction) is used to simu-

late the complex reactions, so our method works with

a limited amount of hardware. The migration and

reaction circuits are deeply pipelined, resulting in

high performance. Estimated performance is 30 times

faster than with a 3.2-GHz Pentium 4 computer.

This paper is organized as follows. Section 2 de-

scribes our mesoscopic-level method using Monte

Carlo simulation. The FPGA system using this

method is described in Section 3, and the details

of its FPGA circuitry are presented in Section 4. We

discuss performance in Section 5 and future work in

Section 6.

2. Mesoscopic-level Method

2.1. Preliminary Experimentation

Mathematical modeling is a useful way to get insights

into the behavior of a network of living cells including

that in the signaling transduction pathways. Kinetic

equations are now widely used in many model

construction processes. However, these pathways in

living cells are not properly described solely by a

deterministic approach-recent experimental and theo-

retical studies have demonstrated that fluctuations in

the signaling have a significant effect. These results

means that we must reconsider the conventional kinetic

approach [24]. We have done this in the development

of our high-speed mesoscopic-level simulation meth-

od. Protein molecules are expressed as particles

undergoing continuous Brownian motion [22].

In a preliminary experiment, we modeled the cell

division cycle with CDC25 and wee1 control systems

(Fig. 1). Cyclin and CDC2 heterodimers have four

forms depending on whether they are phosphorylated

at a threonine-127 or tyrosine-15 site. Those singly phos-

phorylated at a tyrosine-15 site are activated. The

activated dimer M intern activates ubiquitin UbE

and CDC25. In Fig. 1b, the � shows a nonlinear-

dependence relationship that results from the assump-

tion of UbE and CDC25 activation. Thus, the system

can be controlled by adjusting the amounts of UbE

and/or CDC25.

Figure 2 shows the time course of molecules in a

cell division cycle simulation. There is a parameter

space in which the system exhibits oscillations: the

starting values are AA=1,024, C=51, CDC225=512,

and UbE=1,024.

Figure 3 shows a snapshot of the simulation results

for a system with a size of 403. In a dynamic system

with oscillation, periodic patterns are often formed in

the space. In our initial investigation of the cell

division cycle, we are trying to find such spatial pattern

formation.

2.2. Simulation Lattice

In our preliminary experimentation, we used a cubic

lattice structure, meaning that six directions (up,

down, left, right, forward, and backward) are directly

related to particle migrations and reactions. However,

it is difficult to maintain isotropism in the simulation

when there are multiple reactions.

288 Yamaguchi et al.

Page 3: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

We therefore improved the simulation space and

lattice. Figure 4a shows the whole target simulation

space. A living cell has an almost spherical shape, so

we use a regular icosahedron as the simulation space.

Figure 4b shows a clipped regular tetrahedron taken

from the icosahedron.

While a four-dimensional face centered hyper-cubic

(FCHC) lattice is more suitable than a regular icosahe-

dron for simulation, its use complicates the particle

movements. Thus, as the first step toward an FCHC

lattice, we used regular tetrahedrons for the sites.

Figure 4c shows a cross-sectional view of a regular

icosahedron, and the gray triangle corresponds to the

surface of a regular tetrahedron, like that in Fig. 4b.

2.3. Molecular Behavior

In our method using Monte Carlo simulation of the

dynamics and interaction of biological molecules

[22], many kinds of molecules and many of each

kind can exist at every site in the simulation lattice.

The behaviors of these molecules is simulated by

repeating two phases: migration and reaction. In the

migration phase, the particles (molecules) at each site

take random walks with given probabilities. In the

reaction phase, the particles at each site react with the

other particles at that site with given probabilities.

2.3.1. Particle Migration. Each particle at a site

takes a random walk without being affected by the

number of particles at the neighboring sites, except

for the two cases described at the end of this

subsection. This is because Brownian motion can

be expressed as stochastic movements in a discrete

3-dimensional space. Moreover, it better approxi-

mates actual movements because of the many

particles in a cell, including those that are not the

targets of the simulation.

0

100

200

300

400

500

600

700

0 2000 4000 6000 8000 10000

# o

f p

art

icle

s

steps

YCRS

MN

CPPC

PCPCdc25

Cdc25PINHUbE

UbE*Y

Figure 2. Time course of molecules in cell division cycle.

Figure 1. Model of CDC2–Cyclin trigger mechanism [29]. a Activated form. b Mitosis and cell division.

Simulation of Biological Molecules Using Monte Carlo 289

Page 4: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

With random walks, each particle migrates to a

neighboring site with equal probability. Figure 5a

shows the neighbors of site F0_. In our lattice, each

site has 12 neighbors. Therefore, each particle

randomly migrates to 1 of 12 sites. Random number

rm (0 � rm < 1 ) indicates one of the neighboring

sites). Figure 5b shows an example trajectory of a

particle.

As mentioned, there are two exceptions to the

random walk. They are the result of the electrical

characteristics of the molecules.

1. When there are some species (the type of which is

determined by the kind of particle is going to take

the walk) at the target site of the random walk,

the walk is not taken. The probability of this is

represented by 1� pa.

2. When there are some species of particles at a

single lattice site together, the particles may

remain at the current site. The probability of this

is represented by 1� pd.

2.3.2. Particle Reaction. Each particle at a site

reacts with the other particles at the same site. A

typical catalytic reaction is a reversible process in

which

1. enzyme E and substrate S react at rate k1 to form

complex ES;

2. the ES breaks down into E and S at rate k�1; and

3. the ES also changes to product P at rate k2.

That is,

Eþ Sk1Ð

k 1

ESk2!Eþ P: ð1Þ

2.4. Simulation Size

It is estimated that there are more than 1010 protein

particles in a living cell. The number of particles in a

prokaryotic cell (Escherichia coli), for instance, is

about 1013�14 , including those of unknown species.

Simulation of the cell dynamics thus requires a huge

amount of computational power. For instance, it would

take 40 days of computation to simulate a MAPK

cascade, which is not so complicated, if we used a

simulation size of 3203, a computer with 32 POWER4

processors, and 256 GB of physical memory.

The number of particles is closely related to the

simulation size, i.e. the volume of the simulation box,

since the density of molecules in the box must be almost

uniform. Suppose that the simulation box is 1/20 of a

sphere (Fig. 4). Figure 4 shows a regular icosahedron,

a clipped regular tetrahedron, and a cross-sectional

view of a regular icosahedron. The lattice of a clipped

regular tetrahedron has 2563 � 5123 sites. If the

Figure 3. Particle distribution in cell division cycle.

290 Yamaguchi et al.

Page 5: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

radius, R, is 100 nm, the average number of particles at

each site is at least 4:8 � 0:60.

There is a limit to the number of particles in

biological simulation. If the limit is less than 1 �M,

the number of same-type particles is generally less

than 14 when the simulation box is 20�2563 , as

estimated using a Poisson distribution. We can thus

use 20�5123 coordinates in the simulation, meaning

that the upper limit can be relaxed. Therefore, we

used 4bit wide data structure for expressing the

number of many species of particles (Fig. 6b).

We simulated two types of data structures: a

particle-based structure (Fig. 6a) and a lattice-based

structure (Fig. 6b). In the former, each particle in the

lattice has the information of its ðx; y; zÞ coordinates,

its species type, and so on. Therefore, the total data

size is proportional to the number of particles in the

lattice. In the lattice-based structure, there is data for

each site, and only the numbers of particles at each

site are stored in 4N bits data structure. The total

data size is proportional to the number of sites � thenumber species.

To achieve higher performance, the data structure

should be chosen on the basis of the density of

molecules in the cells. The particle-based structure is

more efficient when the number of particles in the

lattice is much fewer than the number of sites in the

lattice (that is, most sites are empty). With this data

structure, for each particle, we need to identify the

particles at the neighboring sites, and this scanning

(indexing) creates a bottleneck. The lattice-based

structure is more efficient when the number of

particles is much larger than the number of the sites

in the lattice (that is, most sites are not empty).

Therefore, in our simulation, we use the lattice-based

structure.

a

b

cFigure 4. Simulation lattice. a Entire target simulation space. b Clipped regular tetrahedron. c Cross-sectional view of a regular icosahedron.

Simulation of Biological Molecules Using Monte Carlo 291

Page 6: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

3. FPGA System

3.1. Overview

Our FPGA system using the proposed mesoscopic-

level method is illustrated in Fig. 7. The FPGA board

(Xilinx Virtex-II Pro XC2VP100) has six external

memory banks and the circuitry for migration and

reaction. It is connected to a host computer by a PCI

bus. External memory banks on the board are used to

store computed results by the FPGA. During simu-

lation, Migration circuits and Reaction circuits are

configured in turn, which host has the circuit data

and controls the circuit reconfiguration.

1. The migration circuit is configured, and particles at

all sites migrate to a neighboring site on the basis

of the probabilities given by random number

generator in the migration circuit.

1

2

3

45

6

7

8

9

1011

12

0

a 1/12

1/12

1/12

1/12

1/12

1/121/121/12

1/12

1/12

1/12

1/12

b

R

Figure 5. a Each site has 12 neighbors and each particle randomly migrates from site to site. b An example of trajectory of a migrating

particle.

292 Yamaguchi et al.

Page 7: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

2. The reaction circuit is configured, and the particles

at each site react with each other on the basis of

the probabilities given by the reaction circuit.

We use two circuits that operate in turn because a

circuit that could handle both functions would be too

large to implement on one FPGA. Moreover, even if

more hardware resources were available, we would

rather use them to support more complex reactions

among the molecules. In our current implementation,

one site can be processed in one clock cycle due to

the use of deeply pipelined migration and reaction

circuits. Therefore, the computation time is roughly

proportional to the size of the lattice. Our target

lattice size is 2563 , so reconfiguration accounts for

about 30% of the total computation time.

The maximum number of particles that can exist at

one site is less than 16 for each particle type (the

maximum number differs with the type of particle),

as discussed in Section 2.4. In our current implemen-

tation, 12 kinds of particles can be simulated (this

limitation reflects the limitations of the FPGA).

Therefore, the data width of the lattice-based data

structure (Fig. 6b) is 64 bits, and there can be up to

240 particles at one site (the number depends on the

type of particle). It is estimated that there are more

than 10,000 kinds of molecules in a living cell. Al-

though our system can simulate only 12 kinds, it can

simulate the mitogen-activated protein kinase cascade

[27], which is highly conserved series of three protein

kinases implicated in diverse biological processes.

3.2. Two-circuit Processing

The lattice-based data structures are stored in the

external memory banks of the FPGA board and read

out every clock cycle by the FPGA circuitry. The

new results are stored in other memory banks. As

mentioned, the migration and reaction circuits in the

FPGA are deeply pipelined and can process the data

for one site every clock cycle.

Nine steps are performed each cycle (Fig. 8).

1. The migration circuit is configured in the FPGA.

2. The migration circuit reads out data for one site

from DDR-SDRAM(A) every clock cycle.

x y

z

XILINXXC2VP100

DDR-SDRAM(A),8Mx64bit

DDR-SSRAM,512Kx36bit

64

PCI Bus

(66MHz/64bit)

DDR-SSRAM,512Kx36bit

DDR-SSRAM,512Kx36bitDDR-SSRAM,512Kx36bit

36

3636

64DDR-SDRAM(B),16Mx64bit

36

Migration

Circuit

Reaction

Circuit

loading control

(in host memory)

reconfigure

(x2)

Figure 7. FPGA system using mesoscopic-level method.

x species

A ...

(9bit)y

(9bit)z

(9bit) (8bit)complex

(20bit)

(4bit)B

(4bit)C

(4bit)D

(4bit)E

(4bit)

a particle-based structure (55bit)

b lattice-based structure (4Nbit)

Figure 6. a Particle-based data structure. b Lattice-based data structure.

Simulation of Biological Molecules Using Monte Carlo 293

Page 8: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

3. The circuit decides whether each particle at the

site moves to a neighboring site or remains at the

site current using random numbers. (Uniform

random numbers on domain ½0; 1Þ are generated

using the Tausworthe method [25, 26].)

4. Once the migrations have finished, the new data

for the site are stored in DDR-SDRAM(B).

5. The reaction circuit is configured in the FPGA.

6. The reaction circuit reads out data for one site

from DDR-SDRAM(B) every clock cycle.

7. The data are decoded to 240-bit data (240 is the

maximum number of particles that can exist at a

site). These data are then shuffled using a multi-

stage network to produce reactions among the

particles with fair probabilities.

8. Pairs of particles react with each other on the basis

of the given probabilities. The pairs are changed so

that all reaction possibilities are tested.

9. The result are stored to DDR-SDRAM(A).

Repetition of these steps simulates the behaviors

of molecules in a cell.

4. Details of FPGA Circuitry

Generally, to simulate the mitogen-activated protein

kinase cascade with a limited amount of hardware

resources, the number of circuits is minimized by

eliminating those not necessary for the simulation

[27]. We do not discuss this elimination here.

Instead, we explain our elimination strategy by

describing the cascade in detail.

4.1. Particle Migration Circuit

As described above, the migration circuit controls

the random walking of each particle. Some particles

do not move on the basis of the given probabilities

due to their electrical characteristics (Section 2.3.1).

Calculating the migrations of the particles at one site

requires having access to the data for all neighboring

sites. Completing the calculation within one clock

cycle requires having immediate access to the data

for two x–y layers and three lines along the x axis of

the FPGA, as illustrated in Fig. 9a. Holding these

data in the FPGA enables the migration phase to be

finished in N þ P� 1 clock cycles (where N is the

total number of the lattice sites in the simulation box,

and P is the depth of the pipeline stages of the

circuit). Our FPGA is large enough to store the data

for a lattice with 2563 sites, but not enough for one

with 5123 sites.

Processing of lattices larger than 2563 requires

dividing them into K rectangular parallelepipeds, as

illustrated in Fig. 9b. The light gray part represents

3

DDR-SDRAM(A)2

6

9

51

migrationcircuit

4DDR-SDRAM(B)

reactioncircuit

8 reaction

7 shuffling

FPGA

FPGA board

Figure 8. Steps during one simulation cycle.

294 Yamaguchi et al.

Page 9: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

the one currently being processed; the two adjacent

dark gray parts represent the previous and subse-

quent ones processed. The data for both are read out

twice, and the reading time is the overhead. It is

close to negligible when the lattice size is 5123.

As shown in Fig. 10, the migration circuits has five

main components: random walk circuits, a load

particle unit, random number generators, temporary

data storage (block RAM array and DDR-SSRAMs),

and simulation data storage (DDR-SDRAMs). The

Simulation Lattice

x

y

z

Simulation Lattice

x

y

z

current scanning linea

b

1st 2nd 3rd

Figure 9. Locations of data in FPGA used for calculating migration. a Access to the data for two x-y layers and three lines along the x axis

of the FPGA. b Dividing lattices into K rectangular parallelepipeds.

Simulation of Biological Molecules Using Monte Carlo 295

Page 10: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

random walk circuits produce Brownian motion, as

described in Section 2.3.1, and the random number

generators use the Tausworthe method [25, 26].

In our implementation, each species is encoded

using 4 bits, so we need a decoder in the load particle

unit. The maximum width is 64 bits, so the maxi-

mum number of particles is 240 (=15�64/4) at each

lattice site. Since the system supports DDR, the

number can be expanded to 480 (32 species).

We use a block RAM array and DDR-SSRAM

modules for storing temporary data. Since the

computation for one site requires having access to

the data for 12 sites, we must store in the FPGA the

data for 12 neighboring sites or read one clock cycle

from memory modules that have the data. Since we

cannot implement temporary data storage in a single

FPGA, and an SRAM module does not support dual-

port access, we store upper the data for the region of

a computation site in BRAMs and that for the lower

region in DDR-SSRAM. The DDR-SSRAM is divided

into two modules, DDR-SSRAM.A and DDR-

SSRAM.B (Fig. 10); the data in module A and

module B is read when z is even and odd respectively.

4.2. Particle Reaction Circuit

As described above, the reaction circuit causes the

particles at a site to react with the other particles at the

site. The most difficult problem in implementing this

circuit is obtaining reactions with fair probabilities.

We accomplish this in software. To select one particle

from N particles with fair probability, a uniform

random number, r, on ½0;NÞ is generated, and the r-thparticle is selected. Then, to select the next particle,

another uniform random number, s, on ½0;N � 1Þ is

generated, and the s -th particle is selected (N � 1

particles are left due to the first selection). As a result,

the particles at a site reacted with each other with fair

probabilities. Since this procedure requires strong

sequentiality, is not suitable for parallel processing.

There are four steps in this process.

1. Data for one site is decoded to 240-bit binary

data. Each of the bits represents one particle (240

at most at one site).

2. The 240 bits are shuffled on a multi-stage

network (a random number is given for each

if((i%12)==n) 1, else 0

e

(x-1,y+1,z+1)

(x,y,z+1)

(x-1,y,z+1)

Block RAM(y,z+1)

Block RAM(y-1,z+1)

(x-1,y+1,z)

(x+1,y,z)

(x,y,z)

(x-1,y,z)Block RAM(y-1,z)

(x+1,y-1,z)

(x,y-1,z) DDR-SSRAM.A(2ζ)

(x,y,z-1)

(x-1,y,z-1)

DDR-SSRAM.B(2ζ+1)

Block RAM(y-1,z-1)

DDR-SDRAM(B)

DDR-SDRAM(A)

64

64

64(x,y+1,z)

Block RAM(y+1,z)

(x,y-1,z-1)

64

Block RAM(y,z)

64

64

64

64

64

64

64

64

64

64

Block RAM Array (x*(y+3))

64

(x+2,y,z)64

240

Random Number Generators

Encoder

e

Decoder

d

*16

4+

64

464

240

and

240 Random WalkCircuit

Flags

Particles

RW Circuit64

RW Circuit64

RW Circuit64

RW Circuit64

RW Circuit64

RW Circuit64

RW Circuit64

RW Circuit

64

64

RW Circuit

64

64

RW Circuit

64

64

RW Circuit

64

64

RW Circuit64

(n=0) (n=1)

(n=2)(n=3)

(n=4)

(n=5)

(n=6)

(n=7)(n=8)

(n=9)(n=10)

(n=11)

240

flags

LoadParticlesUnit particles

if(z=2ζ)

if(z=2ζ+1)

d

Figure 10. Migration circuit.

296 Yamaguchi et al.

Page 11: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

switch in the network). The network for the

shuffling is illustrated in Fig. 11a. If the number

of inputs is 2k , fair probability shuffling can be

achieved by using a 2k -stage network. Since we

had 240 inputs, we added extra stages to make the

probabilities as fair as possible (48 stages in total).

3. After the 240 particles are shuffled, they are sent to

a reaction unit (Fig. 11b). In this unit, the inputs

are shifted down each clock cycle, and all possible

reactions are tried for each particle. (We used an

advanced Ireko algorithm; the basic one is de-

scribed elsewhere [28].) For example, in Fig. 11b,

particle 1 is paired with particle 2 in the first stage,

and it is paired with particle 5 in the second stage

while particle 2 is paired with particle 3.

4. After all reactions among particles are tested

using random numbers, the 240 bits of date are

encoded back into a 64-bit data structure.

21

DDR-SDRAM(B)64

(x+2,y,z)64

240loadparticlesUnit particles

A B

RNABR X000 0001 0010 0011 1100 1101 0110 1111 1

ABR Y000 0001 0010 1011 0100 0101 1110 1111 1

X Y

a Shuffling

Unit

RandomNumber

Generators

240

43 65 xw zy

2 3 45 7 1 zxv s

3 5 74 6 2 zxv s

17 42 63 qa scb Reaction

Unit

x1 x0 y1 y0 z1 z2X 0 X X 0 00 1 X 0 0 10 1 0 1 1 10 1 1 1 0 11 1 X X 1 10 0 0 0 0 0

α[2]

χ[2]

β[2]

240

d

DDR-SDRAM(A)

64

(x+2,y,z)64

StorageParticles

d

Figure 11. Reaction circuit. a Shuffling unit. b Reaction unit.

Simulation of Biological Molecules Using Monte Carlo 297

Page 12: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

5. Discussion

To be able to simulate a complete cell, our FPGA

system must be ten times faster than the latest high-

performance personal computer. We compared the

performance of our FPGA system with that of a

Pentium 4 3.2-GHz processor. The FPGA system runs

at 66 MHz and was 30 times faster than the Pentium 4

processor when the lattice size was 2563 . The

migration circuit is 30% smaller than the XC2VP100,

and the reaction circuit is about 90% smaller than the

XC2VP100. The time for configuring the two circuits

was about 30% of the total computation time. This is

because both circuits take almost 2563 clock cycles

(and the depth of the pipeline stages, which can be

ignored) to update data of all sites once; the recon-

figuration took about 100 ms.

This system can be easily accelerated by using more

FPGA chips and partitioning the simulation lattice into

rectangular parallelepiped, as illustrated in Fig. 9b,

because the particles at each site react only with other

particles at that site. Moreover, in the migration

phase, only the adjacent surfaces (the previous and

subsequent parallelepipeds) are used, and the data

they contain can be easily transferred to other FPGAs.

As a result, we should be able to speed up the

system almost 30-fold.

6. Conclusion

Our final goal is the simulation of cell interactions

involving one billion particles. In the present system,

due to the tradeoff between computation efficiency

and accuracy, the upper limit is one million particles.

We are now improving the system to increase the

limit to 10 million. Since the system is scalable, we

should be able to achieve a more than 1,000-fold

speedup by using large FPGA clusters, which makes

our final goal possible.

References

1. M. Kanehisa, BToward Pathway Engineering: A New Data-

base of Genetic and Molecular Pathways,^ Sci. Technol. Jpn.,

vol. 59, 1996, pp. 34–38.

2. G. Michal, Biochemical Pathways: An Atlas of Biochemistry

and Molecular Biology, John Wiley & Sons, 1998.

3. STKE_s connection map database. http://stke.sciencemag.org/

cm/, 2007.

4. KEGG: Kyoto Encyclopedia of Genes and Genomes. http://

www.genome.jp/kegg, 2007.

5. Signaling Pathway Database. http://www.grt.kyushu-u.ac.jp/

grt-docs/mogt/sub_study_contents_06.html, 2007.

6. Metabolic Pathways of Biochemistry. http://www.gwu.edu/

~mpb/, 1998.

7. Encyclopedia of Escherichia coli K12 Genes and Metabolism.

http://www.ecocyc.org/, 2007.

8. P. Mendes and D.B. Kell, BNon-linear Optimization of

Biochemical Pathways: Applications to Metabolic Engineering

and Parameter Estimation,^ Bioinformatics, vol. 14, no. 10,

1998, pp. 869–883.

9. I. Goryanin, T.C. Hodgman, and E. Selkov, BMathematical

Simulation and Analysis of Cellular Metabolism and Regu-

lation,^ Bioinformatics, vol. 15, no. 9, 1999, pp. 749–758.

10. K. Takahashi, N. Ishikawa, Y. Sadamoto, H. Sasamoto, S.

Ohta, A. Shiozawa, F. Miyoshi, Y. Naito, Y. Nakayama and

M. Tomita, BE-Cell 2: Multi-platform E-cell Simulation

System,^ Bioinformatics, vol. 19, no. 13, 2003, 1727–1729.

11. L.M. Loew and J.C. Schaff, BThe Virtual Cell: A Software

Environment for Computational Cell Biology,^ Trends Bio-

technol., vol. 19, no. 10, 2001, pp. 401–406.

12. J.F. Keane, C. Bradley and C. Ebeling, BA Compiled

Accelerator for Biological Cell Signaling Simulations,^ in

Proc. FPGA2004, 2004, pp. 233–241.

13. L. Salwinski and D. Eisenberg, BIn Silico Simulation of

Biological Network Dynamics,^ Nat. Biotechnol., vol. 22, no.

8, 2004, pp. 1017–1019.

14. M. Yoshimi, Y. Osana, T. Fukushima and H. Amano,

BStochastic Simulation for Biochemical Reactions on FPGA,^Proc. FPL2004, LNCS3203, 2004, pp. 105–114.

15. F. Daumas, N. Destainville, C. Millot, A. Lopez, D. Dean, and

L. Salome, BConfined Diffusion without Fences of a G-

protein-coupled Receptor as Revealed by Single Particle

Tracking,^ Biophys. J., vol. 84, no. 1, 2003, pp. 356–366.

16. K. Ritchie and A. Kusumi, BSingle-particle Tracking Image

Microscopy,^ Methods Enzymol., vol. 360, 2003, pp. 618–634.

17. Y. Shav-Tal, X. Darzacq, S.M. Shenoy, D. Fusco, S.M.

Janicki, D.L. Spector, and R.H. Singer, BDynamics of Single

mRNPs in Nuclei of Living Cells,^ Science, vol. 304, no.

5678, 2004, pp. 1797–1800.

18. D. Fusco, N. Accornero, B. Lavoie, S.M. Shenoy, J.M. Blanchard,

R.H. Singer, and E. Bertrand, BSingle mRNA Molecules

Demonstrate Probabilistic Movement in Living Mammalian

Cells,^ Curr. Biol., vol. 13, no. 2, 2003, pp. 161–167.

19. A. Suenaga, M. Hatakeyama, M. Ichikawa, X. Yu, N.

Futatsugi, T. Narumi, K. Fukui, T. Terada, M. Taiji, M.

Shirouzu, S. Yokoyama, and A. Konagaya, BMolecular

Dynamics, Free Energy, and SPR Analyses of the Interactions

between the SH2 Domain of Grb2 and ErbB Phosphotyrosyl

Peptides,^ Biochemistry, vol. 42, 2003, pp. 5195–5200.

20. M. Taiji, T. Narumi, Y. Ohno, N. Futatsugi, A. Suenaga, N.

Takada, and A. Konagaya, BProtein Explorer: A Petaflops

Special-purpose Computer System for Molecular Dynamics

Simulations,^ in Proc. Supercomputing 2003, 2003, CD-ROM.

21. J.R. Weimar, BCellular Automata Approaches to Enzymatic

Reaction Networks,^ in Proc. Fifth International Conferenceon Cellular Automata for Research and Industry, LNCS2493,

2002, pp. 294–303.

22. R. Azuma, K. Tetsuji, H. Kobayashi, and A. Konagaya,

BParticle Simulation Approach for Subcellular Dynamics and

298 Yamaguchi et al.

Page 13: Mesoscopic-level Simulation of Dynamics and Interactions of Biological Molecules Using Monte Carlo Simulation

Interactions of Biological Molecules,^ BMC Bioinformatics,

vol. 7, Suppl. 4, 2006, pp. S20–1–S20–13.

23. D.P. Landau and K. Binder, A Guide to Monte Carlo Simulations

in Statistical Physics, Cambridge University Press, 2000.

24. T.C. Meng, S. Somani, and P. Dhar, BModeling and

Simulation of Biological Systems with Stochasticity,^ In

Silico Biol., vol. 4, no. 3, 2004, pp. 293–309.

25. P.D. Coddington, BRandom Number Generators for Parallel

Computers^, in Proc. Supercomputing 1996, NHSE Review

1996(2), 1997.

26. M. Barel, BFast Hardware Random Number Generator for the

Tausworthe Sequence,^ in Proc. the 16th Annual Symposiumon Simulation, 1983, pp. 121–135.

27. C.-Y.F. Hung and J.E. Ferrell Jr. BUltrasensitivity in the

Mitogen-activated Protein Kinase Cascade,^ Proc. Natl. Acad.

Sci. U. S. A., vol. 93, 1996, pp. 10078–10083.

28. Y. Yamaguchi, T. Maruyama, and T. Hoshino, BHigh Speed

Hardware Computation of Co-evolution Models,^ in Proc.

European Conference on Artificial Life, LNCS1674, 1999,

pp. 566–574.

29. B. Novak and J.J. Tyson, BModeling the Cell Division Cycle:

M-phase Trigger, Oscillations, and Size Control,^ J. Theor.

Biol., vol. 165, 1993, pp. 101–134.

Yoshiki Yamaguchi received his Dr.Eng. from the University

of Tsukuba in 2003, and joined as a Research Scientist at

RIKEN GSC. From 2005, he is an Assistant Professor of

Graduate School of Systems and Information Engineering,

University of Tsukuba. His primary research topics include

reconfigurable computing, dependable computing, bioinfor-

matics and high performance computing.

Tsutomu Maruyama received his Doctor of Engineering

from the University of Tokyo in 1987. He is an Associate

Professor of Graduate School of Systems and Information

Engineering, University of Tsukuba. His primary research

interests include reconfigurable computing, bioinformatics and

parallel processing.

Ryuzo Azuma is a Research Scientist of RIKEN, an

independent administrative institution for researches in Sci-

ence and Technology. He investigates biological topics

covering Systems Biology, Molecular Biology, Biochemistry,

and Biophysics, mostly from the standpoint of computational

scientist. Prior to his current position, he received his Ph.D. at

Physics Department of Tokyo University.

Konagaya Akihiko is a Project Director of Advanced

Genome Information Technology Research Group, RIKEN

Genomic Sciences Center. He received his B.S. and M.S.

degrees from Tokyo Institute of Technology in 1978 and 1980

in Informatics Science, and joined NEC Corporation in 1980,

Japan Advanced Institute of Science and Technology in 1997,

RIKEN GSC in 2003. He is interested in large scale

bioinformatics with advanced information technologies such

as ontology, mathematical simulation and grid computing.

Moritoshi Yasunaga received his B.E., M.E. and Dr.Eng. degrees

from University of Tsukuba, Japan, in 1981, 1983, and 1993,

respectively. From 1983 to 1994, he was a researcher of the Central

Research Laboratory, Hitachi Ltd., Japan. He joined University of

Tsukuba in 1994. Currently, he is a Professor in the Graduate School

of System and Information Engineering, University of Tsukuba. His

research interests include VLSI technology, reconfigurable computer,

evolvable systems, evolutionary computation, genome informatics,

and artificial neural networks. Dr. Yasunaga is a member of IEEE,

IPSJ, and IEICE.

Simulation of Biological Molecules Using Monte Carlo 299