09.09.2014 Views

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Fast distributed DFS soluti<strong>on</strong>s for edge-disjoint paths in digraphs<br />

The instantiati<strong>on</strong> of generic rules is <strong>on</strong>ly c<strong>on</strong>ceptual: it explains their highlevel<br />

semantics by mapping it to a simpler lower-level semantics. Moreover, this<br />

instantiati<strong>on</strong> is also ephemeral: the generated lower-level rules are not supposed<br />

to exist past the end of the step. An actual P system implementati<strong>on</strong> does not<br />

need to effectively use rule instantiati<strong>on</strong>, as l<strong>on</strong>g as it can support the same<br />

high-level semantics by other means.<br />

5 P System Specificati<strong>on</strong><br />

In this secti<strong>on</strong>, we present a directly executable P system specificati<strong>on</strong> of Algorithm<br />

D, having the same distributed runtime complexity. We omit Algorithm-C,<br />

which is c<strong>on</strong>tained in its extensi<strong>on</strong>, Algorithm D.<br />

The input digraph is given by the P system structure itself and the system is<br />

fully distributed, i.e. there is no central node and <strong>on</strong>ly local messaging channels<br />

(between structural neighbours) are allowed. Moreover, we c<strong>on</strong>sider that cells<br />

start without any kind of network topology awareness: cells do not know the<br />

identities of their children, not even their numbers.<br />

The P specificati<strong>on</strong> has a challenging task: to fully formalize the informal descripti<strong>on</strong><br />

given by the high-level pseudocodes, completing all important details<br />

ignored by these, all this without increasing the time complexity. The specificati<strong>on</strong><br />

needs to indicate how to build local digraph neighbourhood awareness, how<br />

to build and navigate over virtual residual digraphs, how to transform augmenting<br />

paths into edge-disjoint paths, how to discard “dead” cells, how to manage<br />

c<strong>on</strong>current notificati<strong>on</strong> processes.<br />

In particular, our pseudocodes use structural and virtual arcs between cells:<br />

in the corresp<strong>on</strong>ding P system specificati<strong>on</strong>, parent and child cells record their<br />

corresp<strong>on</strong>ding arc end-points, building a simple form of distributed routing tables<br />

(such as used in networking).<br />

P Specificati<strong>on</strong> 1: Algorithm D<br />

Input: All cells start with the same set of rules and without any topological<br />

awareness (they do not even know their local neighbours or even their numbers).<br />

All cells start in the same initial state, S 0 . Initially, each cell, σ i , c<strong>on</strong>tains an<br />

immutable cell ID symbol, ι i . Additi<strong>on</strong>ally, the source cell, σ s , and the target<br />

cell, σ t , are decorated with symbols, s and t, respectively.<br />

Output: All cells end in the same final state, S 60 . On completi<strong>on</strong>, all cells are<br />

empty, with the following excepti<strong>on</strong>s: (1) The source cell, σ s , and the target cell,<br />

σ t , are still decorated with symbols, s and t, respectively; (2) The cells <strong>on</strong> edgedisjoint<br />

paths c<strong>on</strong>tain path link symbols, for predecessors, d ′ j , and successors,<br />

d ′′<br />

k . Table 1 shows the initial and final cells’ c<strong>on</strong>figurati<strong>on</strong>s for the P system<br />

based <strong>on</strong> the digraph illustrated in Figure 1.<br />

The matrix R of P Specificati<strong>on</strong> 1 c<strong>on</strong>sists of fifteen vectors, informally presented<br />

in five groups, according to their functi<strong>on</strong>ality and applicability. Each<br />

vector implements an independent functi<strong>on</strong>, performed in <strong>on</strong>e step. Symbols i, j<br />

187

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!