Skip to main content
Log in

Using Markov Chain Based Estimation of Distribution Algorithm for Model-Based Safety Analysis of Graph Transformation

  • Regular Paper
  • Published:
Journal of Computer Science and Technology Aims and scope Submit manuscript

Abstract

The ability to assess the reliability of safety-critical systems is one of the most crucial requirements in the design of modern safety-critical systems where even a minor failure can result in loss of life or irreparable damage to the environment. Model checking is an automatic technique that verifies or refutes system properties by exploring all reachable states (state space) of a model. In large and complex systems, it is probable that the state space explosion problem occurs. In exploring the state space of systems modeled by graph transformations, the rule applied on the current state specifies the rule that can perform on the next state. In other words, the allowed rule on the current state depends only on the applied rule on the previous state, not the ones on earlier states. This fact motivates us to use a Markov chain (MC) to capture this type of dependencies and applies the Estimation of Distribution Algorithm (EDA) to improve the quality of the MC. EDA is an evolutionary algorithm directing the search for the optimal solution by learning and sampling probabilistic models through the best individuals of a population at each generation. To show the effectiveness of the proposed approach, we implement it in GROOVE, an open source toolset for designing and model checking graph transformation systems. Experimental results confirm that the proposed approach has a high speed and accuracy in comparison with the existing meta-heuristic and evolutionary techniques in safety analysis of systems specified formally through graph transformations.

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.

Similar content being viewed by others

References

  1. Rausand M. Reliability of Safety-Critical Systems: Theory and Applications. John Wiley & Sons, 2014. https://doi.org/10.1002/9781118776353.

  2. Lahtinen J, Valkonen J, Björkman K, Frits J, Niemelä I, Heljanko K. Model checking of safety-critical software in the nuclear engineering domain. Reliab. Eng. Syst. Saf., 2012, 105: 104-113. https://doi.org/10.1016/j.ress.2012.03.021.

    Article  Google Scholar 

  3. Yousefian R, Rafe V, Rahmani M. A heuristic solution for model checking graph transformation systems. Appl. Soft Comput., 2014, 24: 169-180. https://doi.org/10.1016/j.asoc.2014.06.055.

    Article  Google Scholar 

  4. Francesca G, Santone A, Vaglini G, Villani M L. Ant colony optimization for deadlock detection in concurrent systems. In Proc. the 35th Annual IEEE International Computer Software and Applications Conference, July 2011, pp.108-117. https://doi.org/10.1109/COMPSAC.2011.22.

  5. Alba E, Chicano F. Finding safety errors with ACO. In Proc. the 9th Annual Conference on Genetic and Evolutionary Computation, July 2007, pp.1066-1073. https://doi.org/10.1145/1276958.1277171.

  6. Rafe V, Moradi M, Yousefian R, Nikanjam A. A metaheuristic solution for automated refutation of complex software systems specified through graph transformations. Appl. Soft Comput., 2015, 33: 136-149. https://doi.org/10.1016/j.asoc.2015.04.032.

    Article  Google Scholar 

  7. Pira E, Rafe V, Nikanjam A. Deadlock detection in complex software systems specified through graph transformation using Bayesian optimization algorithm. J. Syst. Softw., 2017, 131: 181-200. https://doi.org/10.1016/j.jss.2017.05.128.

    Article  Google Scholar 

  8. Pira E, Rafe V, Nikanjam A. EMCDM: Efficient model checking by data mining for verification of complex software systems specified through architectural styles. Appl. Soft Comput., 2016, 49: 1185-1201. https://doi.org/10.1016/j.asoc.2016.06.039.

    Article  Google Scholar 

  9. Pira E, Rafe V, Nikanjam A. Searching for violation of safety and liveness properties using knowledge discovery in complex systems specified through graph transformations. Inf. Softw. Technol., 2018, 97: 110-134. https://doi.org/10.1016/j.infsof.2018.01.004.

    Article  Google Scholar 

  10. Bicarregui J, Matthews B. Proof and refutation in formal software development. In Proc. the 3rd Irish Workshop on Formal Methods, July 1999.

  11. Koller D, Friedman N. Probabilistic Graphical Models: Principles and Techniques (1st edition). MIT Press, 2009.

  12. Pelikan M, Goldberg D E, Cantú-Paz E. Linkage problem, distribution estimation, and Bayesian networks. Evol. Comput., 2000, 8(3): 311-340. https://doi.org/10.1162/10636560075-0078808.

    Article  Google Scholar 

  13. Lahtinen J, Kuismin T, Heljanko K. Verifying large modular systems using iterative abstraction refinement. Reliab. Eng. Syst. Saf., 2015, 139: 120-130. https://doi.org/10.1016/j.ress.2015.03.012.

    Article  Google Scholar 

  14. Rozenberg G. Handbook of Graph Grammars and Computing by Graph Transformation, Volume 1: Foundations. World Scientific, 1997. https://doi.org/10.1142/3303.

  15. Kastenberg H, Rensink A. Model checking dynamic states in GROOVE. In Proc. the 13th International SPIN Workshop on Model Checking of Software, March 30–April 1, 2006, pp.299-305. https://doi.org/10.1007/11691617_19.

  16. Staunton J, Clark J A. Searching for safety violations using estimation of distribution algorithms. In Proc. the 3rd International Conference on Software Testing, Verification, and Validation, April 2010, pp.212-221. https://doi.org/10.1109/ICSTW.2010.24.

  17. Staunton J, Clark J A. Finding short counterexamples in promela models using estimation of distribution algorithms. In Proc. the 13th Annual Conference on Genetic and Evolutionary Computation, July 2011, pp.1923-1930. https://doi.org/10.1145/2001576.2001834.

  18. Staunton J, Clark J A. Applications of model reuse when using estimation of distribution algorithms to test concurrent software. In Proc. the 3rd International Symposium on Search Based Software Engineering, September 2011, pp.97-111. https://doi.org/10.1007/978-3-642-23716-4_12.

  19. Pira E, Rafe V, Nikanjam A. Using evolutionary algorithms for reachability analysis of complex software systems specified through graph transformation. Reliab. Eng. Syst. Saf., 2019, 191: Article No. 106577. https://doi.org/10.1016/j.ress.2019.106577.

  20. Yousefian R, Aboutorabi S, Rafe V. A greedy algorithm versus metaheuristic solutions to deadlock detection in graph transformation systems. J. Intell. Fuzzy Syst., 2016, 31(1): 137-149. https://doi.org/10.3233/IFS-162127.

    Article  Google Scholar 

  21. Yang X S. A new metaheuristic bat-inspired algorithm. In Proc. the 2010 Nature Inspired Cooperative Strategies for Optimization, May 2010, pp.65-74. https://doi.org/10.1007/978-3-642-12538-6_6.

  22. Baier C, Katoen J P. Principles of Model Checking. MIT Press, 2008.

  23. Sivanandam S N, Deepa S N. Introduction to Genetic Algorithms. Springer, 2008. https://doi.org/10.1007/978-3-540-73190-0.

  24. Groce A, Visser W. Heuristics for model checking Java programs. Int. J. Softw. Tools Technol. Transf., 2004, 6(4): 260-276. https://doi.org/10.1007/s10009-003-0130-9.

    Article  MATH  Google Scholar 

  25. Edelkamp S, Lafuente A L, Leue S. Protocol verification with heuristic search. In Proc. the 2001 Spring Symposium Series, March 2001.

  26. Schmidt Á. Model checking of visual modeling languages. Bp Univ Technol Hung. 2004.

  27. Bellovin S M, Cheswick W R. Network firewalls. IEEE Commun. Mag., 1994, 32(9): 50-57. https://doi.org/10.1109/35.312843.

    Article  MATH  Google Scholar 

  28. Azim M R S, Mahmud K, Das C K. Automatic train track switching system with computerized control from the central monitoring unit. International Journal of u- and e-Service, Science and Technology, 2014, 7(1): 201-212. https://doi.org/10.14257/ijunesst.2014.7.1.18.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Einollah Pira.

Supplementary Information

ESM 1

(PDF 180 kb)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Pira, E. Using Markov Chain Based Estimation of Distribution Algorithm for Model-Based Safety Analysis of Graph Transformation. J. Comput. Sci. Technol. 36, 839–855 (2021). https://doi.org/10.1007/s11390-020-1003-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11390-020-1003-3

Keywords

Navigation