Abstract
Literature study reveals the existence of many algorithms for detecting cycles (also known as circuits) in directed graphs. Majority of these algorithms can be classified into two groups: (1) traversal algorithms (e.g. variants of depth-first-search algorithms), and (2) matrix-based algorithms (manipulation of the adjacency matrix and its power series). Adjacency matrix based algorithms are computationally simple and more compact than the traversal algorithms. However, a Petri net, due to its bipartite nature, possesses sparse matrix as adjacency matrix. Hence, the matrix based algorithms become inefficient as the algorithm work through redundant data most of its running time. In this paper, we take a closer look into the structure of the adjacency matrix of a Petri net and then propose an algorithm for detecting existence of cycles; the proposed algorithm is computationally efficient as its works through non-redundant data only, as well as simple, easy to understand and easy to implement.
References
GPenSIM V9. User Manual (2016). http://davidrajuh.net/gpensim/
Cormen, T.H.: Introduction to algorithms. MIT Press, Cambridge (2009)
Tarjan, R.: Enumeration of the elementary circuits of a directed graph. SIAM J. Comput. 2(1973), 211–216 (1973)
Teirnan, J.C.: An efficient search algorithm to find the elementary circuits of a graph. Commun. ACM 13(1970), 722–726 (1970)
Johnson, D.B.: Finding all the elementary circuits of a directed graph. SIAM J. Comput. 4(1), 77–84 (1975)
Hruz, B., Zhou, M.C.: Modeling and Control of Discrete-event Dynamic Systems. Springer, Heidelberg (2007)
Yamada, T., Kataoka, S.: On some LP problems for performance evaluation of timed marked graphs. IEEE Trans. Autom. Control 39, 696–698 (1994)
GPenSIM code for Job Scheduling in Grid Computing: http://www.davidrajuh.net/gpensim/2016-SOCO-Cycle-Detection
Davidrajuh, R.: Developing a new petri net tool for simulation of discrete event systems. In: Proceedings of the Second Asia International Conference on Modeling & Simulation (AMS), pp. 861–866. IEEE (2008)
Buluç, A., Gilbert, J.R., Shah, V.B.: Implementing sparse matrices for graph algorithms. In: Graph Algorithms in the Language of Linear Algebra, pp. 22, 287 (2011)
Buluç, A., and Gilbert, J. R.: New ideas in sparse matrix-matrix multiplication. In: Graph Algorithms in the Language of Linear Algebra, pp. 22, 315 (2011)
Slavakis, K., Giannakis, G.B., Mateos, G.: Modeling and optimization for big data analytics: (statistical) learning tools for our era of data deluge. IEEE Signal Process. Mag. 31(5), 18–31 (2014)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Davidrajuh, R. (2017). Detecting Existence of Cycles in Petri Nets. In: Graña, M., López-Guede, J.M., Etxaniz, O., Herrero, Á., Quintián, H., Corchado, E. (eds) International Joint Conference SOCO’16-CISIS’16-ICEUTE’16. SOCO CISIS ICEUTE 2016 2016 2016. Advances in Intelligent Systems and Computing, vol 527. Springer, Cham. https://doi.org/10.1007/978-3-319-47364-2_36
Download citation
DOI: https://doi.org/10.1007/978-3-319-47364-2_36
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-47363-5
Online ISBN: 978-3-319-47364-2
eBook Packages: EngineeringEngineering (R0)