<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Timed Transition System Programming Physarum Models for Machines</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Extended Abstract</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Andrew Schumann</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Information Technology and Management Sucharskiego Str.</institution>
          <addr-line>2, 35-225 Rzeszow</addr-line>
          ,
          <country country="PL">Poland</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>University of Management and Administration Akademicka Str.</institution>
          <addr-line>4, 22-400 Zamosc</addr-line>
          ,
          <country country="PL">Poland</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In the paper, we show that timed transition system models can be used as a high-level model of behavior of Physarum machines. A Physarum machine is a programmable amorphous biological computer experimentally implemented in the vegetative state of Physarum polycephalum. Timed transition system models have been used in our new object-oriented programming language for Physarum polycephalum computing.</p>
      </abstract>
      <kwd-group>
        <kwd>Physarum polycephalum</kwd>
        <kwd>unconventional computing</kwd>
        <kwd>objectoriented programming language</kwd>
        <kwd>timed transition systems</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Models
A Physarum machine is a programmable amorphous biological computer,
experimentally implemented in the vegetative state of Physarum polycephalum (also
called slime mould) [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] that is a one-cell organism belonging to the species of
order Physarales, subclass Myxogastromycetidae, class Myxomycetes, and division
Myxostelida. The plasmodium of Physarum polycephalum spread by networks
can be programmable. The ability to perform useful computational tasks, in
propagating and foraging behaviour of the plasmodium, was rstly emphasized
by T. Nakagaki et al. (cf. [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]). In Physarum Chip Project: Growing Computers
from Slime Mould [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] funded by the Seventh Framework Programme (FP7), we
are going to construct an unconventional computer on programmable behavior
of Physarum polycephalum. The Physarum machine comprises an amorphous
yellowish mass with networks of protoplasmic veins, programmed by spatial
con gurations of attracting and repelling stimuli. The plasmodium looks for
attractants, propagates protoplasmic veins towards them, feeds on them and goes
on. As a result, a transition system is built up. Therefore, Physarum motions
can be treated as a kind of natural transition systems with states presented by
attractants and events presented by plasmodium transitions between attractants
[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. We can de ne the following three basic forms of Physarum transitions
(motions): direct (direction: a movement from one place, where the plasmodium is
located, towards another place, where there is a neighbouring attractant), f use
(fusion of two plasmodia at the place, where they meet the same attractant),
split (splitting plasmodium from one active place into two active places, where
two neighbouring attractants with a similar power of intensity are located).
      </p>
      <p>
        Formally, a transition system is a quadruple T S = (S; E; T; s0) [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], where
S is the non-empty set of states, E is the set of events, T S E S is the
transition relation, s0 is the initial state. Usually transition systems are based on
actions which may be viewed as labelled events. If (s; e; s0) 2 T then the idea is
that T S can go from s to s0 as a result of the event e occurring at s. A transition
system can be presented as a graph structure with nodes corresponding to states
and edges corresponding to transitions.
      </p>
      <p>
        To program computation tasks for amorphous biological computers, we are
developing a new object-oriented programming language (cf. [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]). The proposed
language can be used for developing programs for Physarum polycephalum by
the spatial con guration of stimuli. This con guration of stimuli can be identi ed
with a low-level programming language for Physarum machines. To program
behavior of Physarum polycephalum, we have also proposed to use some
highlevel models, e.g., ladder diagrams, Petri nets, and transition systems [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
      </p>
      <p>
        We can consider some other operations (instructions) in Physarum machines
like: add node, remove node, add edge, remove edge [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Adding and removing
nodes can be implemented through activation and deactivation of attractants,
respectively. Adding and removing edges can be implemented by means of
repellents put in proper places in the space. An activated repellent can avoid
a plasmodium transition between attractants. Adding and removing edges can
change dynamically over time. To model such behavior, we propose to add
another high-level model, based on timed transition systems [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], to our language.
It is assumed, in transition systems mentioned earlier, that all events happen
instantaneously. In timed transition systems, timing constraints restrict the times
at which events may occur. The timing constraints are classi ed into two
categories: lower-bound and upper-bound requirements.
      </p>
      <p>Let N be a set of nonnegative integers. Formally, a timed transition
system T T S = (S; E; T; s0; l; u) consists of an underlying transition system T S =
(S; E; T; s0) as well as a minimal delay function (a lower bound) l : E ! N
assigning a nonnegative integer to each event and a maximal delay function (an
upper bound) u : E ! N [ f1g assigning a nonnegative integer or in nity to
each event.</p>
      <p>Let us consider a simple timed transition system shown as a graph structure
in Figure 1 with the following timing constraints: l(e1) = 0, u(e1) = 1, l(e2) = 0,
u(e2) = 1, l(e3) = 5, u(e3) = 10. The code in our created language has the
following form:
#TRANSITION_SYSTEM
s1=new TS.State("s1");
s1.setAsInitial;
s2=new TS.State("s2");
s3=new TS.State("s3");
e1=new TS.Event("e1");
t1=new TS.Transition(s1,e1,s2);
e2=new TS.Event("e2");
t2=new TS.Transition(s1,e2,s3);
e3=new TS.Event("e3");
e3.setTimingConstraints(5,10);
t3=new TS.Transition(s2,e3,s3);
The default timing constraints are 0 as a lower bound and 1 as an upper bound.</p>
      <p>As a result of programming the Physarum machine, we obtain spatial con
gurations of stimuli presented in Figure 2, (a) for the time instant = 4, (b) for
the time instant = 8, where P is Physarum, As1 , As2 , As3 are attractants, and
R is a repellent. It is easy to see that the event e3 is allowed only if actual time
t 2 f5; 6; : : : ; 10g. Therefore, in the model in Figure 2 (a), a repellent, avoiding
the transition between states s2 and s3 as a result of the event e3, is present,
i.e., it is activated.</p>
      <p>In a real-life implementation of Physarum machines, attractants are sources
of nutrients or pheromones, on which the plasmodium feeds whereas in case of
repellents the fact that plasmodium of Physarum avoids light and some
thermoand salt-based conditions is used. Repellents can be activated or deactivated for
proper time periods, especially in case of light.</p>
      <p>
        Modelling dynamically changed structures over time is important in some
cases of abstract machines used in non-classical computations. One of them is a
Kolmogorov-Uspensky machine. In [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], there was shown that the plasmodium of
Physarum polycephalum is a biological substrate that implements a
KolmogorovUspensky machine (at the beginning called a Kolmogorov complex) - a concept of
an abstract machine de ned on a dynamically changing graph-based structure
outlined by A.N. Kolmogorov and V.A. Uspensky [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. The
KolmogorovUspensky machine is a process on a nite undirected connected graph with
distinctly labelled nodes. A computational process travels on the graph, activates
nodes and removes and adds edges. There is only one active node at any step of
development.
      </p>
      <p>Acknowledgments
This research is being ful lled by the support of FP7-ICT-2011-8.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Adamatzky</surname>
            ,
            <given-names>A.:</given-names>
          </string-name>
          <article-title>Physarum machine: Implementation of a Kolmogorov-Uspensky machine on a biological substrate</article-title>
          .
          <source>Parallel Processing Letters</source>
          <volume>17</volume>
          (
          <issue>4</issue>
          ),
          <volume>455</volume>
          {
          <fpage>467</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Adamatzky</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Physarum Machines: Computers from Slime Mould</article-title>
          . World Scienti c (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Adamatzky</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Erokhin</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grube</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schubert</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schumann</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Physarum Chip Project: Growing computers from slime mould</article-title>
          .
          <source>International Journal of Unconventional Computing</source>
          <volume>8</volume>
          (
          <issue>4</issue>
          ),
          <volume>319</volume>
          {
          <fpage>323</fpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Henzinger</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Manna</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pnueli</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Timed transition systems</article-title>
          . In: de Bakker, J.,
          <string-name>
            <surname>Huizing</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>de Roever</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rozenberg</surname>
            ,
            <given-names>G</given-names>
          </string-name>
          . (eds.)
          <source>Real-Time: Theory in Practice, Lecture Notes in Computer Science</source>
          , vol.
          <volume>600</volume>
          , pp.
          <volume>226</volume>
          {
          <fpage>251</fpage>
          . Springer Berlin Heidelberg (
          <year>1992</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Kolmogorov</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Uspensky</surname>
          </string-name>
          , V.:
          <article-title>On the de nition of an algorithm</article-title>
          .
          <source>Uspekhi Mat. Nauk</source>
          <volume>13</volume>
          (
          <issue>4</issue>
          ),
          <volume>3</volume>
          {
          <fpage>28</fpage>
          (
          <year>1958</year>
          ), in Russian
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Kolmogorov</surname>
            ,
            <given-names>A.N.</given-names>
          </string-name>
          :
          <article-title>On the concept of algorithm</article-title>
          .
          <source>Uspekhi Mat. Nauk</source>
          <volume>8</volume>
          (
          <issue>4</issue>
          ),
          <volume>175</volume>
          {
          <fpage>176</fpage>
          (
          <year>1953</year>
          ), in Russian
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Nakagaki</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yamada</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Toth</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Maze-solving by an amoeboid organism</article-title>
          .
          <source>Nature</source>
          <volume>407</volume>
          ,
          <volume>470</volume>
          {
          <fpage>470</fpage>
          (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Nielsen</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rozenberg</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Thiagarajan</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Elementary transition systems</article-title>
          .
          <source>Theoretical Computer Science</source>
          <volume>96</volume>
          (
          <issue>1</issue>
          ),
          <volume>3</volume>
          {
          <fpage>33</fpage>
          (
          <year>1992</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Pancerz</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schumann</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Principles of an object-oriented programming language for Physarum polycephalum computing</article-title>
          .
          <source>In: Proceedings of the 10th International Conference on Digital Technologies (DT</source>
          '
          <year>2014</year>
          ). pp.
          <volume>273</volume>
          {
          <fpage>280</fpage>
          .
          <string-name>
            <surname>Zilina</surname>
          </string-name>
          , Slovak
          <string-name>
            <surname>Republic</surname>
          </string-name>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Schumann</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pancerz</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Towards an object-oriented programming language for Physarum polycephalum computing</article-title>
          . In: Szczuka,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Czaja</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Kacprzak</surname>
          </string-name>
          , M. (eds.) Proceedings of the Workshop on Concurrency,
          <article-title>Speci cation and Programming (CS&amp;P'</article-title>
          <year>2013</year>
          ). pp.
          <volume>389</volume>
          {
          <fpage>397</fpage>
          . Warsaw, Poland (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>