Skip to main content
Log in

A simple detection and generation algorithm for simple circuits in directed graph based on depth-first traversal

  • Special Issue
  • Published:
Evolutionary Intelligence Aims and scope Submit manuscript

Abstract

This paper proposes a new algorithm for detecting and generating simple circuits within a directed graph. Before generating all simple circuits in a directed graph, the algorithm first detects whether there is a simple circuit in directed graph, and the detection can divide the directed graph into trivial graphs or strongly connected components. In the process of detecting the existence of simple circuit, the algorithm repeatedly reduces the number of vertices in vertex set along with edge pruning. Based on depth-first traversal, we can get all simple circuits of the directed graph. Especially, instead of proceeding depth-first traversals based on all vertices, the algorithm starts with a random vertex in a strongly connected component to reduce the number of depth-first traversals, and obtain all simple circuits of this strongly connected component. The difficulty of the algorithm is to detect and delete the repeated circuits in the process of generating all simple circuits, which can reduce both the storage space and time complexity. As a result, the output of the algorithm does not contain any repeated circuits. The algorithm simplifies the edge set of directed graphs and greatly reduces the number of depth-first traversals, thereby reducing the computational complexity and improving the computational efficiency.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

References

  1. Biggs N, Lloyd E, Wilson R (1986) Graph theory. Oxford University Press, Oxford, pp 1736–1936

    Google Scholar 

  2. Chu K et al (2015) Real-time path planning of autonomous vehicles for unstructured road navigation. Int J Automot Technol 16(4):653–668

    Article  Google Scholar 

  3. Aytac A, Turaci T (2015) Vulnerability measures of transformation graph G(xy)+. Int J Found Comput Sci 26(6):667–675

    Article  MathSciNet  MATH  Google Scholar 

  4. Marsden A, Berry RS (2015) Enrichment of network diagrams for potential surfaces. J Phys Chem C 119(26):14702–14705

    Article  Google Scholar 

  5. Tang M, Guan J, Deng GQ et al (2012) A new algorithm and application of solving maximum matching problem of bipartite graph. Comput Syst Appl 21(03):72–75

    Google Scholar 

  6. Tellache NEH, Boudhar M (2018) Flow shop scheduling problem with conflict graphs. Ann Oper Res 261(1–2):339–363

    Article  MathSciNet  MATH  Google Scholar 

  7. Kouider A et al (2017) Mixed graph colouring for unit-time scheduling. Int J Prod Res 55(6):1720–1729

    Article  Google Scholar 

  8. Wang F, Xing KY, Zhou MC, Xu XP, Han LB (2016) A robust deadlock prevention control for automated manufacturing systems with unreliable resources. Inf Sci 345:243–256

    Article  Google Scholar 

  9. Lima CVGC et al (2018) And/or-convexity: a graph convexity based on processes and deadlock models. Ann Oper Res 264(1–2):267–286

    Article  MathSciNet  MATH  Google Scholar 

  10. Chang X, Yang Y (2017) Semisupervised feature analysis by mining correlations among multiple tasks. IEEE Trans Neural Netw Learn Syst 28(10):2294–2305

    Article  MathSciNet  Google Scholar 

  11. Chang X et al (2017) Bi-level semantic representation analysis for multimedia event detection. IEEE Trans Cybern 47(5):1180–1197

    Article  Google Scholar 

  12. Li Z et al (2017) Beyond trace ratio: weighted harmonic mean of trace ratios for multiclass discriminant analysis. IEEE Trans Knowl Data Eng 29(10):2100–2110

    Article  Google Scholar 

  13. Chen WK (2015) Graph theory and its engineering applications. World Scientific Publishing, Singapore, pp 2–10

    Google Scholar 

  14. Bu YH, Wang WF, Lv XZ (2015) Graph theory and its applications. Southeast University Press, Nanjing, pp 2–3

    Google Scholar 

  15. Wang HM, Hu M, Wang T (2017) Data structures in C++. Tsinghua University Press, Beijing, pp 144–145

    Google Scholar 

  16. Mark AW (2017) Data structures and algorithm analysis in C, 2nd edn. Addison Wesley, Boston, pp 283–284

    Google Scholar 

  17. Pang C et al (2015) Topological sorts on DAGs. Inf Process Lett 115(2):298–301

    Article  MathSciNet  MATH  Google Scholar 

  18. Qi JH, Zhu XJ, Zhang ZB (2014) Study on circuits determination algorithm in directed graph. Comput Program Skills Maint 24:124–125

    Google Scholar 

  19. Xiong DY (1987) An efficient vector space algorithm of generating all elementary circuits in directed graph. J Electron 9(6):481–489

    Google Scholar 

  20. Wang YY, Chen P, Su Y (2008) A new algorithm to find all elementary circuits of a directed graph. J Shaanxi Norm Univ (Nat Sci Ed) 36(4):12–15

    MathSciNet  MATH  Google Scholar 

  21. Wang YY, Chen P, Su Y (2009) An efficient algorithm of generating all elementary circuits in directed graph. Comput Appl Softw 26(12):27–29

    Google Scholar 

  22. Stepkin AV (2015) Using a collective of agents for exploration of undirected graphs. Cybern Syst Anal 51(2):223–233

    Article  MATH  Google Scholar 

  23. Xu B, Jia RA (2002) Matrix calculation of directed cycles and relative properties of digraph. J Nanchang Univ (Nat Sci) 26(1):5–11

    Google Scholar 

  24. Yang HG, Shen DR, Kou Y, Nie TZ, Yu G (2017) Strongly connected components based efficient PPR algorithms. Chin J Comput 40(3):584–600

    MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiaoyan Gongye.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Gongye, X., Wang, Y., Wen, Y. et al. A simple detection and generation algorithm for simple circuits in directed graph based on depth-first traversal. Evol. Intel. 15, 2411–2420 (2022). https://doi.org/10.1007/s12065-020-00416-6

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12065-020-00416-6

Keywords

Navigation