source: liacs/pnbm/project/report.tex@ 212

Last change on this file since 212 was 52, checked in by Rick van der Zwet, 15 years ago

Final version of report

File size: 7.0 KB
RevLine 
[11]1%
2% $Id: report.tex 571 2008-04-20 17:31:04Z rick $
3%
4
5\documentclass[12pt,a4paper]{article}
6
7\frenchspacing
[12]8\usepackage[english]{babel}
9\selectlanguage{english}
[11]10\usepackage{graphicx}
11\usepackage{url}
12\usepackage{multicol}
13\usepackage{fancybox}
14\usepackage{amssymb,amsmath}
15
[25]16\title{Modeling planar signalling in AP axis development in \emph{Xenopus laevis}\\
[11]17\large{using Petri Nets in Higher Level Developmental Biology}}
18\author{Rick van der Zwet, Tiago Borges Coelho \\
19 \texttt{<hvdzwet@liacs.nl>,<borges.coelho@gmail.com>}\\
20 LIACS - Leiden University, The Netherlands}
21\date{\today}
22
23\begin{document}
24\maketitle
25\section{Abstract}
[52]26Planar signaling is a process that is part of the development of the AP axis in
27\emph{Xenopus laevis} \cite{Bertens09}, in which cells accumulate proteins
28based on the saturation of nearby cells. If one cell produces n amount of
29proteins, it will initiate a transferring cascade to cells in the vicinity.
30This dissemination of proteins will eventually cease, considering that n is a
31finite variable. There is a gradation in the amount of proteins transferred,
32meaning that neighboring cells get n/2 the amount of proteins of the most
33saturated cell.
[11]34
[52]35We are going to model this into Petri-Nets, since it supports a mathematical
36modeling language as well as a graphical interactive representation, which is
37well suited for this purpose, as we could model the process based on algorithms
38and also used it for automated model tracking and analysis, while having a
39visual representation of the process.
[11]40
[52]41\section{Method}
42Our approach to modeling Planar signaling is firstly construct a biological
43model of the process, one that illustrates the phenomenon taking place (shown
44at figure~\ref{fig:ab-model}). Next we decided to create a conceptual model,
45one that abstracts from the biological model and contains some mathematical
46equations that describe the processes occurring in nature.
[11]47
[52]48\begin{figure}[htp]
49\centering
50\caption{Conceptual abstract model}
51\includegraphics[width=\textwidth]{frog-model.eps}
52\label{fig:ab-model}
53\end{figure}
54
55Finally we are going to construct a Petri-Net model using the software
56\emph{CPNTools} \footnote{http://wiki.daimi.au.dk/cpntools/cpntools.wiki}.
57
[11]58\section{Modeling}
[52]59\begin{figure}[htp]
60\centering
61\caption{Planar signaling model}
62\includegraphics[width=100mm]{planar-signaling-model.eps}
63\label{fig:model}
64\end{figure}
65
66For the conceptual model (Fig.~\ref{fig:model}) we start with a building block
67that is an abstraction of a cell (figure: circle), which can then be coupled to
68other cells (figure: arrows). The abstraction contains two different token
69types. For one the proteins are modeled through red tokens, and secondly the
70proteins generate a second process, the level of posterisation (blue tokens)
71which is also required in the model. We assume a 1:1 mapping between the amount
72of proteins and the posterisation, taking into consideration that when an
73\texttt{INITIAL} protein is ’used’ (e.g. has a posterisation counterpart) in
74this process is called \texttt{ACTIVATED}. We assume that the “proteins to
75posterisation” process is taking place at the same time as the proteins
76distribution. This is represented in a special format, represented by the
77square B in the figure. It tries to match the posterisation to the same level
78as the proteins present. The moment the protein level lowers, the posterisation
79will remain the same. In pseudo-code:
[18]80\begin{verbatim}
81if numPos < numProteins then
[52]82 numPos = numPos + 1
[18]83endif
84\end{verbatim}
[52]85
[18]86\texttt{numProteins} is the proteins available and \texttt{numPos} is the
87posterisation present.
[11]88
[52]89The connectors between the cells (the membranes) have a special property. One
90can see them as pressure valves (like figure~\ref{fig:pressure}) that close
91when the ’volume’ in the containers (cells) complies with the following
92property $A/2 < B$, or siphons when the property before is not achieved,
93passing volume from $A$ to $B$ at a certain rate (\texttt{flowSpeed}). This
94rate could depend on the difference, actual value present or something else.
95Please keep in mind that negative values could sometimes appear, hence there is
96a need to check whether the source is bigger or equal than the
97\texttt{flowSpeed}.
[18]98
[52]99\begin{figure}[htp]
100\centering
101\caption{Pressure valve example}
102\includegraphics[height=60mm]{pressure-valve.eps}
103\label{fig:pressure}
104\end{figure}
[11]105
[52]106For this case there exists no standard Petri-Net ’component’, hence this
107requires the creation of a new property, which is described in pseudo-code
108below:
[12]109\begin{verbatim}
[18]110flowSpeed = n
[25]111if A > 2 * B and A => flowSpeed then
[12]112 A = A - flowSpeed
113 B = B + flowSpeed
[25]114else if B > 2 * A and B => flowSpeed then
[12]115 B = B - flowSpeed
116 A = A + flowSpeed
117endif
118\end{verbatim}
119
[52]120Planar signaling could theoretically start in every cell, by inserting some
121amount of proteins. In our model this is represented as $n$ \texttt{INITIAL}
122tokens being put in a cell chosen at random.
[11]123
124
[52]125\section{CPNTools implementation}
126CPNTools has some shortcomings when it comes to modeling higher level
127developmental biology. One is the shortcoming of ’balancing’. It does not allow
128the reading of how many tokens are present in a certain state and base action
129upon them.
[11]130
[52]131As workaround for this (see Fig~\ref{fig:CPNplanar}) we used a ’dump’ gradation
132function. In our case it simply takes 3 tokens and pushes 1 forward while
133converting 2 directly to \texttt{ACTIVATED}. This does not take into
134consideration if some external source changes the amount further up.
[11]135
[52]136Secondly it misses the possibility to easily randomize the initialization. As a
137quick fix we ’hacked’ it to choose between starting at the head or the tail. In
138this implementation the protein to gradient process is taking place at cell $A$
139at the same time that the proteins get transferred from cell $A$ to $B$. It
140should be noted that the model avoids the notion of timed firing sequences;
141meaning that the firing sequences will not occur at pre-determined times. This
142could be changed in the future to ‘trigger’ a timed activation of the
143\texttt{INITIAL} to \texttt{ACTIVATED} process as modeled in
144figure~\ref{fig:model}.
[12]145
[11]146\begin{figure}[htp]
147\centering
148\caption{CPNTools implementation}
149\advance\leftskip-2cm
150\advance\rightskip+2cm
[52]151\includegraphics[width=1.3\textwidth]{planar-signaling.eps}
[11]152\label{fig:CPNplanar}
153\end{figure}
154
155\section{Conclusion}
[52]156Using Petri-Nets for modeling biology processes is a powerful framework, one
157which could be well expandable. The proof of concept implementation and
158visualization however is lacking. \emph{CPNTools} does not currently provide a
159powerful enough tool-set for the modeling purposes. This could be improved with
160the support of a programming language that can produce algorithms that can
161replace the mathematical functions of arcs.
[11]162
[52]163
164
[25]165\bibliographystyle{amsalpha}
[11]166\begin{thebibliography}{10}
[25]167\bibitem[Bertens09]{Bertens09}Laura M.F. Bertens et al., Using Petri Nets in Higher
168Level Developmental Biology: A case study on the AP axis development in Xenopus
169laevis Extended Abstract, 2009
[11]170\end{thebibliography}
171\end{document}
Note: See TracBrowser for help on using the repository browser.