Page 1
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
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
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
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
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
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
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
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
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
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
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
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
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