Ant Colony Optimization for Model Checking
Model Checking is a well-known and fully automatic technique for checking software properties, usually given as temporal logic formulae on the program variables. Most model checkers found in the literature use exact deterministic algorithms to check the properties. These algorithms usually require huge amounts of computational resources if the checked model is large. We propose here the use of Ant Colony Optimization (ACO) to refute safety properties in concurrent systems. ACO algorithms are stochastic techniques belonging to the class of metaheuristic algorithms and inspired by the foraging behaviour of real ants. The results state that ACO algorithms find optimal or near optimal error trails in faulty concurrent systems with a reduced amount of resources, outperforming algorithms that are the state-of-the-art in model checking. This fact makes them suitable for checking safety properties in large concurrent systems, in which traditional techniques fail to find errors because of the model size.
KeywordsModel Check Linear Temporal Logic Safety Property Depth First Search Concurrent System
Unable to display preview. Download preview PDF.
- 1.Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. The MIT Press, Cambridge (2000)Google Scholar
- 3.Holzmann, G.J.: The SPIN Model Checker. Addison-Wesley, Reading (2004)Google Scholar
- 6.Manna, Z., Pnueli, A.: The temporal logic of reactive and concurrent systems. Springer, New York (1992)Google Scholar
- 7.Holzmann, G.J., Peled, D., Yannakakis, M.: On nested depth first search. In: Proc. Second SPIN Workshop, American Mathematical Society, pp. 23–32 (1996)Google Scholar
- 9.Alba, E., Troya, J.: Genetic Algorithms for Protocol Validation. In: Proceedings of the PPSN IV International Conference, pp. 870–879. Springer, Berlin (1996)Google Scholar
- 10.Godefroid, P., Khurshid, S.: Exploring very large state spaces using genetic algorithms. Intl. Jnl. on Software Tools for Technology Transfer 6(2), 117–127 (2004)Google Scholar
- 11.Leguizamón, G., Michalewicz, Z.: A new version of Ant System for subset problems. In: Angeline, P., Michalewicz, Z., Schoenauer, M., Yao, X., Zalzala, A. (eds.) Proceedings of the 1999 Congress on Evolutionary Computation, pp. 1459–1464. IEEE Computer Society Press, Piscataway, New Jersey (1999)CrossRefGoogle Scholar