[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] | 26 | Planar 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
|
---|
| 28 | based on the saturation of nearby cells. If one cell produces n amount of
|
---|
| 29 | proteins, it will initiate a transferring cascade to cells in the vicinity.
|
---|
| 30 | This dissemination of proteins will eventually cease, considering that n is a
|
---|
| 31 | finite variable. There is a gradation in the amount of proteins transferred,
|
---|
| 32 | meaning that neighboring cells get n/2 the amount of proteins of the most
|
---|
| 33 | saturated cell.
|
---|
[11] | 34 |
|
---|
[52] | 35 | We are going to model this into Petri-Nets, since it supports a mathematical
|
---|
| 36 | modeling language as well as a graphical interactive representation, which is
|
---|
| 37 | well suited for this purpose, as we could model the process based on algorithms
|
---|
| 38 | and also used it for automated model tracking and analysis, while having a
|
---|
| 39 | visual representation of the process.
|
---|
[11] | 40 |
|
---|
[52] | 41 | \section{Method}
|
---|
| 42 | Our approach to modeling Planar signaling is firstly construct a biological
|
---|
| 43 | model of the process, one that illustrates the phenomenon taking place (shown
|
---|
| 44 | at figure~\ref{fig:ab-model}). Next we decided to create a conceptual model,
|
---|
| 45 | one that abstracts from the biological model and contains some mathematical
|
---|
| 46 | equations 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 |
|
---|
| 55 | Finally 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 |
|
---|
| 66 | For the conceptual model (Fig.~\ref{fig:model}) we start with a building block
|
---|
| 67 | that is an abstraction of a cell (figure: circle), which can then be coupled to
|
---|
| 68 | other cells (figure: arrows). The abstraction contains two different token
|
---|
| 69 | types. For one the proteins are modeled through red tokens, and secondly the
|
---|
| 70 | proteins generate a second process, the level of posterisation (blue tokens)
|
---|
| 71 | which is also required in the model. We assume a 1:1 mapping between the amount
|
---|
| 72 | of proteins and the posterisation, taking into consideration that when an
|
---|
| 73 | \texttt{INITIAL} protein is âusedâ (e.g. has a posterisation counterpart) in
|
---|
| 74 | this process is called \texttt{ACTIVATED}. We assume that the âproteins to
|
---|
| 75 | posterisationâ process is taking place at the same time as the proteins
|
---|
| 76 | distribution. This is represented in a special format, represented by the
|
---|
| 77 | square B in the figure. It tries to match the posterisation to the same level
|
---|
| 78 | as the proteins present. The moment the protein level lowers, the posterisation
|
---|
| 79 | will remain the same. In pseudo-code:
|
---|
[18] | 80 | \begin{verbatim}
|
---|
| 81 | if numPos < numProteins then
|
---|
[52] | 82 | numPos = numPos + 1
|
---|
[18] | 83 | endif
|
---|
| 84 | \end{verbatim}
|
---|
[52] | 85 |
|
---|
[18] | 86 | \texttt{numProteins} is the proteins available and \texttt{numPos} is the
|
---|
| 87 | posterisation present.
|
---|
[11] | 88 |
|
---|
[52] | 89 | The connectors between the cells (the membranes) have a special property. One
|
---|
| 90 | can see them as pressure valves (like figure~\ref{fig:pressure}) that close
|
---|
| 91 | when the âvolumeâ in the containers (cells) complies with the following
|
---|
| 92 | property $A/2 < B$, or siphons when the property before is not achieved,
|
---|
| 93 | passing volume from $A$ to $B$ at a certain rate (\texttt{flowSpeed}). This
|
---|
| 94 | rate could depend on the difference, actual value present or something else.
|
---|
| 95 | Please keep in mind that negative values could sometimes appear, hence there is
|
---|
| 96 | a 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] | 106 | For this case there exists no standard Petri-Net âcomponentâ, hence this
|
---|
| 107 | requires the creation of a new property, which is described in pseudo-code
|
---|
| 108 | below:
|
---|
[12] | 109 | \begin{verbatim}
|
---|
[18] | 110 | flowSpeed = n
|
---|
[25] | 111 | if A > 2 * B and A => flowSpeed then
|
---|
[12] | 112 | A = A - flowSpeed
|
---|
| 113 | B = B + flowSpeed
|
---|
[25] | 114 | else if B > 2 * A and B => flowSpeed then
|
---|
[12] | 115 | B = B - flowSpeed
|
---|
| 116 | A = A + flowSpeed
|
---|
| 117 | endif
|
---|
| 118 | \end{verbatim}
|
---|
| 119 |
|
---|
[52] | 120 | Planar signaling could theoretically start in every cell, by inserting some
|
---|
| 121 | amount of proteins. In our model this is represented as $n$ \texttt{INITIAL}
|
---|
| 122 | tokens being put in a cell chosen at random.
|
---|
[11] | 123 |
|
---|
| 124 |
|
---|
[52] | 125 | \section{CPNTools implementation}
|
---|
| 126 | CPNTools has some shortcomings when it comes to modeling higher level
|
---|
| 127 | developmental biology. One is the shortcoming of âbalancingâ. It does not allow
|
---|
| 128 | the reading of how many tokens are present in a certain state and base action
|
---|
| 129 | upon them.
|
---|
[11] | 130 |
|
---|
[52] | 131 | As workaround for this (see Fig~\ref{fig:CPNplanar}) we used a âdumpâ gradation
|
---|
| 132 | function. In our case it simply takes 3 tokens and pushes 1 forward while
|
---|
| 133 | converting 2 directly to \texttt{ACTIVATED}. This does not take into
|
---|
| 134 | consideration if some external source changes the amount further up.
|
---|
[11] | 135 |
|
---|
[52] | 136 | Secondly it misses the possibility to easily randomize the initialization. As a
|
---|
| 137 | quick fix we âhackedâ it to choose between starting at the head or the tail. In
|
---|
| 138 | this implementation the protein to gradient process is taking place at cell $A$
|
---|
| 139 | at the same time that the proteins get transferred from cell $A$ to $B$. It
|
---|
| 140 | should be noted that the model avoids the notion of timed firing sequences;
|
---|
| 141 | meaning that the firing sequences will not occur at pre-determined times. This
|
---|
| 142 | could be changed in the future to âtriggerâ a timed activation of the
|
---|
| 143 | \texttt{INITIAL} to \texttt{ACTIVATED} process as modeled in
|
---|
| 144 | figure~\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] | 156 | Using Petri-Nets for modeling biology processes is a powerful framework, one
|
---|
| 157 | which could be well expandable. The proof of concept implementation and
|
---|
| 158 | visualization however is lacking. \emph{CPNTools} does not currently provide a
|
---|
| 159 | powerful enough tool-set for the modeling purposes. This could be improved with
|
---|
| 160 | the support of a programming language that can produce algorithms that can
|
---|
| 161 | replace 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
|
---|
| 168 | Level Developmental Biology: A case study on the AP axis development in Xenopus
|
---|
| 169 | laevis Extended Abstract, 2009
|
---|
[11] | 170 | \end{thebibliography}
|
---|
| 171 | \end{document}
|
---|