The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Directed explicit model checking with HSF-SPIN
SPIN '01 Proceedings of the 8th international SPIN workshop on Model checking of software
Genetic Algorithms for Protocol Validation
PPSN IV Proceedings of the 4th International Conference on Parallel Problem Solving from Nature
Metaheuristics in combinatorial optimization: Overview and conceptual comparison
ACM Computing Surveys (CSUR)
Ant Colony Optimization
Directed explicit-state model checking in the validation of communication protocols
International Journal on Software Tools for Technology Transfer (STTT)
Exploring very large state spaces using genetic algorithms
International Journal on Software Tools for Technology Transfer (STTT) - Special section on tools and algorithms for the construction and analysis of systems
Parallel Metaheuristics: A New Class of Algorithms
Parallel Metaheuristics: A New Class of Algorithms
Information Processing Letters
Survey: A survey on search-based software design
Computer Science Review
Search-based software engineering: Trends, techniques and applications
ACM Computing Surveys (CSUR)
Hi-index | 0.00 |
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.