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 />

70<br />

60<br />

Speed-up<br />

gains<br />

50<br />

40<br />

30<br />

20<br />

10<br />

A* over A<br />

B over A<br />

C over A<br />

C* over A<br />

D over A<br />

0<br />

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29<br />

Test case<br />

Fig. 3. Speed-up gains of Algorithms A ∗ , B, C, C ∗ and D over A for thirty test cases.<br />

is 38.0% faster than Algorithm A; (4) Algorithm D is 42.1% faster than Algorithm<br />

A.<br />

Analysing results (1–3), we found that the “dead” cells detected by Algorithms<br />

C and C ∗ do cover all “dead” cells detected by Algorithm B, and even<br />

a few more. However, not all detected “dead” cells can be effectively discarded<br />

in “real-time”, unless we allow these two algorithms to run l<strong>on</strong>ger (which we do<br />

not want). Thus, we can find (1) scenarios, such as shown in Figure 2, where<br />

Algorithms C and C ∗ (and, of course, Algorithm D) outperform Algorithm B,<br />

and (2) scenarios, such as shown in Figure 4, where Algorithm B runs faster<br />

than Algorithms C and C ∗ (but not than D).<br />

2 10<br />

0 1<br />

9<br />

8<br />

7<br />

6<br />

3 4 5<br />

Fig. 4. An example, in which Algorithm B performs better than Algorithm C.<br />

In Figure 4, Algorithm C does detect all “dead” cells detected by Algorithm<br />

B, but, because of pruning propagating delays, does not effectively discard<br />

them in “real-time”; briefly, it does not show the same runtime performance.<br />

For Algorithm C, when round #1 search path τ = σ 0 .σ 1 .σ 3 .σ 4 .σ 5 .σ 6 .σ 7 .σ 8 .σ 9 ,<br />

backtracks to the source cell, σ 0 , cells σ i , i ∈ {1}∪[3, 9] can be discarded, because<br />

their reach-numbers are greater than σ 0 .depth = 0. Cell σ 0 triggers a discarding<br />

notificati<strong>on</strong>, which follows the same path as the backtracked search τ. In round<br />

#2, the new search path τ ′ , τ ′ = σ 0 .σ 2 visits σ 6 before this cell receives its<br />

due discarding notificati<strong>on</strong> and then c<strong>on</strong>tinues to σ 7 and further. Later, cell σ 6<br />

receives its due discarding notificati<strong>on</strong> (started in round #1), discards itself and<br />

sends an overdue backtrack token to σ 2 , which starts looking for other directi<strong>on</strong>s<br />

to c<strong>on</strong>tinue path τ ′ . However, several steps have been lost exploring “dead” nodes<br />

193

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

Saved successfully!

Ooh no, something went wrong!