SlideShare a Scribd company logo
1 of 28
Download to read offline
Ant Colony                    Conclusions
Introduction    Background                     Experiments
                                Optimization                 & Future Work

                                                                                2007




  Finding Safety Errors with ACO




                       Enrique Alba and Francisco Chicano

  London, United Kingdom, July 7-11, 2007                                    1 / 28
Ant Colony                    Conclusions
 Introduction       Background                  Experiments
                                 Optimization                 & Future Work


Motivation                                                                       2007


Motivation
  • Nowadays software is very complex


  • An error in a software system can imply the loss of lot of money …




                … and even human lifes

  • Techniques for proving the correctness of
    the software are required

  • Model checking → fully automatic

   London, United Kingdom, July 7-11, 2007                                    2 / 28
Ant Colony                             Conclusions
 Introduction             Background                             Experiments
                                           Optimization                          & Future Work


Explicit State MC Safety Properties State Explosion Heuristic MC                                                             2007


Explicit State Model Checking
  • Objective: Prove that model M satisfies the property :
  • SPIN: the property f is an LTL formula

          Model M                              LTL formula ¬ f                   Intersection Büchi automaton

                s0
                                                     !p∨q                                                 s0


    s5
                              s3       ∩        s0                   s2
                                                                                 =         s1                   s3
          s1                                                              p∧!q
                                                            q                                        s2
                     s2                                                                                                     s5
                                                            s1                             s7
                                                                                                                    s4
          s4
                                                                                                          s6

                                                                                                s8
                                                                                                               s9




   London, United Kingdom, July 7-11, 2007                                                                               3 / 28
Ant Colony                             Conclusions
 Introduction             Background                             Experiments
                                           Optimization                          & Future Work


Explicit State MC Safety Properties State Explosion Heuristic MC                                                             2007


Explicit State Model Checking
  • Objective: Prove that model M satisfies the property :
  • SPIN: the property f is an LTL formula

          Model M                              LTL formula ¬ f                   Intersection Büchi automaton

                s0
                                                     !p∨q                                                 s0


    s5
                              s3       ∩        s0                   s2
                                                                                 =         s1                   s3
          s1                                                              p∧!q
                                                            q                                        s2
                     s2                                                                                                     s5
                                                            s1                             s7
                                                                                                                    s4
          s4
                                                                                                          s6

                                                                                                s8
                                                                                                               s9




   London, United Kingdom, July 7-11, 2007                                                                               4 / 28
Ant Colony                             Conclusions
 Introduction             Background                             Experiments
                                           Optimization                          & Future Work


Explicit State MC Safety Properties State Explosion Heuristic MC                                                             2007


Explicit State Model Checking
  • Objective: Prove that model M satisfies the property :
  • SPIN: the property f is an LTL formula

          Model M                              LTL formula ¬ f                   Intersection Büchi automaton

                s0
                                                     !p∨q                                                 s0


    s5
                              s3       ∩        s0                   s2
                                                                                 =         s1                   s3
          s1                                                              p∧!q
                                                            q                                        s2
                     s2                                                                                                     s5
                                                            s1                             s7
                                                                                                                    s4
          s4
                                                                                                          s6

                                                                                                s8
                                                                                                               s9



                                                                                 Using Nested-DFS


   London, United Kingdom, July 7-11, 2007                                                                               5 / 28
Ant Colony                           Conclusions
 Introduction    Background                                   Experiments
                                        Optimization                        & Future Work


Explicit State MC Safety Properties State Explosion Heuristic MC                                            2007


Safety Properties
  • Safety properties are those expressed by an LTL formula of the form:

                               f=□p                     where p is a past formula

  • Finding one counterexample ≡ finding one accepting state

                                        s0
                                             Intersection automaton
                                                                                        Safety Properties
                         s1                    s3
                                   s2                                                   Deadlocks
                                                         s5
                         s7                                                             Invariants
                                                   s4
                                        s6
                                                                                        Assertions
                                                                                        …
                              s8
                                              s9




  • Classical algorithms for graph exploration can be used: DFS and BFS

   London, United Kingdom, July 7-11, 2007                                                             6 / 28
Ant Colony                    Conclusions
 Introduction             Background                         Experiments
                                              Optimization                 & Future Work


Explicit State MC Safety Properties State Explosion Heuristic MC                              2007


State Explosion Problem
  • Number of states very large even for small models
                               s0


                s1                   s3
                          s2
                                                         Memory
                                              s5
                s7
                                         s4
                               s6

                     s8
                                    s9

  • Example: Dining philosophers with n philosophers → 3n states
      20 philosophers → 1039 GB for storing the states


  • Solutions: collapse compression, minimized automaton representation, bitstate
            hashing, partial order reduction, symmetry reduction

  • Large models cannot be verified but errors can be found

   London, United Kingdom, July 7-11, 2007                                                 7 / 28
Ant Colony                                       Conclusions
 Introduction     Background                                               Experiments
                                             Optimization                                    & Future Work


Explicit State MC Safety Properties State Explosion Heuristic MC                                                        2007


Heuristic Model Checking
  • The search for errors can be directed by heuristics using algorithms
           like A*, IDA*, WA* and Best-First
                                                             5
                                                    s0

                          2                                                2                 Heuristic value
                                   s1                3            s3
                                               s2                                        1
                                                                                    s5
                          0
                                   s7
                                                         4
                                                                      s4       0
                                                    s6

                               6
                                        s8                                 7
                                                                 s9



  • Different kinds of heuristic functions have been proposed in the past:
        • Formula-based heuristics                                                 • Deadlock-detection heuristics
        • Structural heuristics                                                    • State-dependent heuristics
   London, United Kingdom, July 7-11, 2007                                                                           8 / 28
Ant Colony                     Conclusions
 Introduction     Background                    Experiments
                                 Optimization                  & Future Work


Metaheuristics ACO ACOhg                                                          2007


Metaheuristic Algorithms
  • Designed to solve optimization problems
           Maximize or minimize a given function: the fitness function
  • They can find “good” solutions with a “reasonable” amount of resources


                                    Metaheuristic Algorithms

                        Single solution                       Population




   London, United Kingdom, July 7-11, 2007                                     9 / 28
Ant Colony                       Conclusions
 Introduction    Background                       Experiments
                                  Optimization                    & Future Work


Metaheuristics ACO ACOhg                                                                            2007


Metaheuristics Classification
                              Single solution
      Greedy Randomized         Iterated Local           Variable
       Adaptive Search              Search             Neighborhood
          Procedure                                       Search

        Tabu       Simulated           Iterative            Guided Local
       Search      Annealing         Improvement              Search


                                                      Population
                               Estimation of                  Evolutionary            Scatter
                               Distribution                   Computation             Search
                                Algorithms

                                             Ant Colony                    Particle Swarm
                                             Optimization                   Optimization


   London, United Kingdom, July 7-11, 2007                                                      10 / 28
Ant Colony                        Conclusions
 Introduction    Background                       Experiments
                                  Optimization                     & Future Work


Metaheuristics ACO ACOhg                                                                            2007


Metaheuristics Classification
                              Single solution
      Greedy Randomized         Iterated Local           Variable
       Adaptive Search              Search             Neighborhood
          Procedure                                       Search
                                                                       Genetic Algorithms
        Tabu       Simulated           Iterative                      Alba & Troya, 1996
                                                            Guided Local
       Search      Annealing         Improvement              Search
                                                                Godefroid & Khurshid, 2002, 2004

                                                      Population
                               Estimation of                 Evolutionary             Scatter
                               Distribution                  Computation              Search
                                Algorithms

                                             Ant Colony                    Particle Swarm
                                             Optimization                   Optimization


   London, United Kingdom, July 7-11, 2007                                                      11 / 28
Ant Colony                    Conclusions
 Introduction    Background                     Experiments
                                 Optimization                 & Future Work


Metaheuristics ACO ACOhg                                                          2007


ACO: Introduction
  • Ant Colony Optimization (ACO) metaheuristic is inspired by the
           foraging behaviour of real ants




  • ACO Pseudo-code




   London, United Kingdom, July 7-11, 2007                                    12 / 28
Ant Colony                        Conclusions
 Introduction    Background                     Experiments
                                 Optimization                     & Future Work


Metaheuristics ACO ACOhg                                                                        2007


ACO: Construction Phase

  • The ant selects its next node stochastically


  • The probability of selecting one node              Trail
                                                                  k
    depends on the pheromone trail and the                  τij
    heuristic value (optional) of the edge
                                                   Heuristic
                                                                       i
                                                      ηij
                                                                                           Ni
  • The ant stops when a complete
    solution is built
                                                                                      m
                                                      j
                                                                                  l
                                                                   k




   London, United Kingdom, July 7-11, 2007                                                13 / 28
Ant Colony                     Conclusions
 Introduction     Background                    Experiments
                                 Optimization                  & Future Work


Metaheuristics ACO ACOhg                                                           2007


ACO: Pheromone Update
  • Pheromone update
           During the construction phase

                                                        with
           After the construction phase

                                                          with

  • Trail limits (particular of MMAS)
           Pheromones are kept in the interval [τmin, τmax]




   London, United Kingdom, July 7-11, 2007                                     14 / 28
Ant Colony                    Conclusions
 Introduction     Background                    Experiments
                                 Optimization                 & Future Work


Metaheuristics ACO ACOhg                                                                    2007


ACOhg: Motivation
  • Existing ACO models cannot be applied to the search for errors in concurrent
            programs
           The graph is very large, the construction of a complete solution could require
             too much time and memory
           In some models the number of nodes of the graph is used for computing the
             initial pheromone values


  • We need a new model for tackling these problems: ACOhg (ACO for Huge Graphs)
           Constructs the ant paths and updates the pheromone values in the same way as
            the traditional models
           Allows the construction of partial solutions
           Allows the exploration of the graph using a bounded amount of memory
           The pheromone matrix is never completely stored

   London, United Kingdom, July 7-11, 2007                                            15 / 28
Ant Colony                    Conclusions
 Introduction    Background                     Experiments
                                 Optimization                 & Future Work


Metaheuristics ACO ACOhg                                                                       2007


ACOhg: Huge Graphs Exploration
 The length of the ant
 paths is limited by λant                                                      What if…?
                                                              λant
                                                                              Objective node

        Initial node




   London, United Kingdom, July 7-11, 2007                                                 16 / 28
Ant Colony                         Conclusions
 Introduction    Background                          Experiments
                                  Optimization                      & Future Work


Metaheuristics ACO ACOhg                                                                               2007


ACOhg: Huge Graphs Exploration
 The length of the ant
 paths is limited by λant                                                            What if…?
                                                                    λant
                                                                                    Objective node

        Initial node                                                                Two alternatives




                               Expansion Technique: λant changes


                              After σi steps



                                                 λant = λant + δl
   London, United Kingdom, July 7-11, 2007                                                       17 / 28
Ant Colony                        Conclusions
 Introduction      Background                           Experiments
                                     Optimization                     & Future Work


Metaheuristics ACO ACOhg                                                                                 2007


ACOhg: Huge Graphs Exploration
 The length of the ant
 paths is limited by λant                                                              What if…?
                                                                      λant
                                                                                      Objective node

        Initial node                                                                  Two alternatives




                Missionary Technique: starting nodesλant changes
                             Expansion Technique: for path construction change


                                After σsi steps




                                                    Second ant + δl
                                                    λant = λstage                 Third stage
   London, United Kingdom, July 7-11, 2007                                                         18 / 28
Ant Colony                                Conclusions
 Introduction              Background                    Experiments
                                          Optimization                             & Future Work


Metaheuristics ACO ACOhg                                                                                 2007


ACOhg: Pheromones
  • The number of pheromone trails increases during the search
  • This leads to memory problems




                                                                              Pheromones
  • We must remove some pheromone
      trails from memory

                                                                                          Steps
                        Remove pheromone trails τij                   In the missionary technique,
                         below a given threshold τθ                   remove all pheromone trails
                                                                             after one stage
           Pheromones




                                                         Pheromones
                                                                      Stage



                                  Steps                                             Steps
   London, United Kingdom, July 7-11, 2007                                                           19 / 28
Ant Colony                     Conclusions
 Introduction    Background                     Experiments
                                 Optimization                  & Future Work


Metaheuristics ACO ACOhg                                                                        2007


ACOhg: Fitness Function
  • The fitness function must be able to evaluate partial solutions
  • Penalties are added for partial solutions and solutions with cycles




                                       Partial solution                  Partial solution
     Complete solution
                                        without cycle                      with cycle



 Total penalty           Penalty constant for
                                                          Penalty constant for      Path length
                           partial solutions
                                                          solutions with cycles
   London, United Kingdom, July 7-11, 2007                                                  20 / 28
Ant Colony                        Conclusions
 Introduction       Background                      Experiments
                                   Optimization                     & Future Work


Models Parameters Results Previous Results                                                         2007


Promela Models
  • We selected 5 Promela models for the experiments

                                                                                     Safety
                Model            LoC              States          Processes
                                                                                    Property
        giop22                         717         unknown                  11 Deadlock

        marriers4                      142         unknown                    5 Deadlock

        needham                        260           18242                    4 LTL formula

        phi16                           34        43046721*                 17 Deadlock

        pots                           453         unknown                    8 Deadlock

        * Theoretical result
  • For all except needham, the states do not fit into the main memory of the computer


   London, United Kingdom, July 7-11, 2007                                                     21 / 28
Ant Colony                    Conclusions
 Introduction        Background                  Experiments
                                  Optimization                 & Future Work


Models Parameters Results Previous Results                                                 2007


Parameters for ACOhg
  • The ACOhg model was implemented inside the MALLBA library and then
          included into the HSF-SPIN model checker

                Parameter         Value            Parameter         Value
                Steps             100              ξ                 0.5
                Colony size       10               a                 5
                λant              10               ρ                 0.8
                σs                2                α                 1.0
                s                 10               β                 2.0


  • Fitness function: length of the path + heuristic + penalty for partial solutions
  • Two variants: using no heuristic (ACOhg-b) and using it (ACOhg-h)
  • Machine: Pentium 4 at 2.8 GHz with 512 MB


   London, United Kingdom, July 7-11, 2007                                             22 / 28
Ant Colony                    Conclusions
 Introduction    Background                     Experiments
                                 Optimization                 & Future Work


Models Parameters Results Previous Results                                             2007


Results I: Efficacy
  • We compare the results of ACOhg algorithms against state-of-the-art model checker
          algorithms: DFS, BFS, A*, and BF
                                  Which algorithm finds errors?




  • ACOhg algorithms are the only ones that are able to find errors in very large models
         (marriers20).

   London, United Kingdom, July 7-11, 2007                                         23 / 28
Ant Colony                    Conclusions
 Introduction    Background                     Experiments
                                 Optimization                 & Future Work


Models Parameters Results Previous Results                                        2007


Results II: Details




   London, United Kingdom, July 7-11, 2007                                    24 / 28
Ant Colony                    Conclusions
 Introduction    Background                     Experiments
                                 Optimization                 & Future Work


Models Parameters Results Previous Results                                                  2007


Results III: Graphical Comparison
  • Error trail length vs. memory graph




                                                                 ACOhg algorithms require
                                                                  less memory than BFS


                                                                They also get shorter (better)
                                                                   error trails than DFS




  • In general, unlike exhaustive algorithms, ACOhg algorithms keep all the results in a
            good performance region (high accuracy and efficiency)

   London, United Kingdom, July 7-11, 2007                                              25 / 28
Ant Colony                    Conclusions
 Introduction    Background                     Experiments
                                 Optimization                 & Future Work


Models Parameters Results Previous Results                                                2007


Previous Results with Metaheuristics
  • GA is the previous metaheuristic algorithm applied to this problem
  • Godefroid & Khurshid (2002), found errors in phi17 and needham models with GA
  • To the best of our knowledge, this is the most recent result for this problem using
            metaheuristics




  • The results state that ACOhg has higher efficacy and efficiency than GA (even taking
           into account the differences in the machines)
  • But we cannot do a fair comparison because the models and the model checkers are
           different (Verisoft against HSF-SPIN)


   London, United Kingdom, July 7-11, 2007                                            26 / 28
Ant Colony                    Conclusions
 Introduction    Background                     Experiments
                                 Optimization                 & Future Work


Conclusions and Future Work                                                                 2007


Conclusions and Future Work
                                         Conclusions
  • ACOhg is able to outperform state-of-the-art algorithms used nowadays in current
          model checkers for finding safety errors
  • ACOhg is able to explore really large concurrent models for which traditional model
          checking techniques fail
  • This represents a promising starting point for the use of metaheuristic algorithms in
            model checking and an interesting subject in SBSE


                                        Future Work
  • Combine ACOhg algorithms with other techniques for reducing the amount of
          memory: Partial Order Reduction and Symmetry Reduction (in progress)
  • Include ACOhg into JavaPathFinder for finding errors in Java programs (in progress)
  • Parallel implementation of ACOhg for this problem (parallel model checkers)

   London, United Kingdom, July 7-11, 2007                                           27 / 28
Finding Safety Errors with ACO
                                                             2007


Thanks for your attention !!!



                                            Questions?




  London, United Kingdom, July 7-11, 2007                28 / 28

More Related Content

More from jfrchicanog

Seminario-taller: Introducción a la Ingeniería del Software Guiada or Búsqueda
Seminario-taller: Introducción a la Ingeniería del Software Guiada or BúsquedaSeminario-taller: Introducción a la Ingeniería del Software Guiada or Búsqueda
Seminario-taller: Introducción a la Ingeniería del Software Guiada or Búsquedajfrchicanog
 
Combinando algoritmos exactos y heurísticos para problemas en ISGB
Combinando algoritmos exactos y heurísticos para problemas en ISGBCombinando algoritmos exactos y heurísticos para problemas en ISGB
Combinando algoritmos exactos y heurísticos para problemas en ISGBjfrchicanog
 
Quasi-Optimal Recombination Operator
Quasi-Optimal Recombination OperatorQuasi-Optimal Recombination Operator
Quasi-Optimal Recombination Operatorjfrchicanog
 
Uso de CMSA para resolver el problema de selección de requisitos
Uso de CMSA para resolver el problema de selección de requisitosUso de CMSA para resolver el problema de selección de requisitos
Uso de CMSA para resolver el problema de selección de requisitosjfrchicanog
 
Enhancing Partition Crossover with Articulation Points Analysis
Enhancing Partition Crossover with Articulation Points AnalysisEnhancing Partition Crossover with Articulation Points Analysis
Enhancing Partition Crossover with Articulation Points Analysisjfrchicanog
 
Search-Based Software Project Scheduling
Search-Based Software Project SchedulingSearch-Based Software Project Scheduling
Search-Based Software Project Schedulingjfrchicanog
 
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...jfrchicanog
 
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization ProblemsEfficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization Problemsjfrchicanog
 
Efficient Hill Climber for Multi-Objective Pseudo-Boolean Optimization
Efficient Hill Climber for Multi-Objective Pseudo-Boolean OptimizationEfficient Hill Climber for Multi-Objective Pseudo-Boolean Optimization
Efficient Hill Climber for Multi-Objective Pseudo-Boolean Optimizationjfrchicanog
 
Mixed Integer Linear Programming Formulation for the Taxi Sharing Problem
Mixed Integer Linear Programming Formulation for the Taxi Sharing ProblemMixed Integer Linear Programming Formulation for the Taxi Sharing Problem
Mixed Integer Linear Programming Formulation for the Taxi Sharing Problemjfrchicanog
 
Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...
Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...
Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...jfrchicanog
 
Optimización Multi-objetivo Basada en Preferencias para la Planificación de P...
Optimización Multi-objetivo Basada en Preferencias para la Planificación de P...Optimización Multi-objetivo Basada en Preferencias para la Planificación de P...
Optimización Multi-objetivo Basada en Preferencias para la Planificación de P...jfrchicanog
 
Resolviendo in problema multi-objetivo de selección de requisitos mediante re...
Resolviendo in problema multi-objetivo de selección de requisitos mediante re...Resolviendo in problema multi-objetivo de selección de requisitos mediante re...
Resolviendo in problema multi-objetivo de selección de requisitos mediante re...jfrchicanog
 
On the application of SAT solvers for Search Based Software Testing
On the application of SAT solvers for Search Based Software TestingOn the application of SAT solvers for Search Based Software Testing
On the application of SAT solvers for Search Based Software Testingjfrchicanog
 
Elementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
Elementary Landscape Decomposition of the Hamiltonian Path Optimization ProblemElementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
Elementary Landscape Decomposition of the Hamiltonian Path Optimization Problemjfrchicanog
 
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...jfrchicanog
 
Recent Research in Search Based Software Testing
Recent Research in Search Based Software TestingRecent Research in Search Based Software Testing
Recent Research in Search Based Software Testingjfrchicanog
 
Problem Understanding through Landscape Theory
Problem Understanding through Landscape TheoryProblem Understanding through Landscape Theory
Problem Understanding through Landscape Theoryjfrchicanog
 
Elementary Landscape Decomposition of Combinatorial Optimization Problems
Elementary Landscape Decomposition of Combinatorial Optimization ProblemsElementary Landscape Decomposition of Combinatorial Optimization Problems
Elementary Landscape Decomposition of Combinatorial Optimization Problemsjfrchicanog
 
Elementary Landscape Decomposition of the Quadratic Assignment Problem
Elementary Landscape Decomposition of the Quadratic Assignment ProblemElementary Landscape Decomposition of the Quadratic Assignment Problem
Elementary Landscape Decomposition of the Quadratic Assignment Problemjfrchicanog
 

More from jfrchicanog (20)

Seminario-taller: Introducción a la Ingeniería del Software Guiada or Búsqueda
Seminario-taller: Introducción a la Ingeniería del Software Guiada or BúsquedaSeminario-taller: Introducción a la Ingeniería del Software Guiada or Búsqueda
Seminario-taller: Introducción a la Ingeniería del Software Guiada or Búsqueda
 
Combinando algoritmos exactos y heurísticos para problemas en ISGB
Combinando algoritmos exactos y heurísticos para problemas en ISGBCombinando algoritmos exactos y heurísticos para problemas en ISGB
Combinando algoritmos exactos y heurísticos para problemas en ISGB
 
Quasi-Optimal Recombination Operator
Quasi-Optimal Recombination OperatorQuasi-Optimal Recombination Operator
Quasi-Optimal Recombination Operator
 
Uso de CMSA para resolver el problema de selección de requisitos
Uso de CMSA para resolver el problema de selección de requisitosUso de CMSA para resolver el problema de selección de requisitos
Uso de CMSA para resolver el problema de selección de requisitos
 
Enhancing Partition Crossover with Articulation Points Analysis
Enhancing Partition Crossover with Articulation Points AnalysisEnhancing Partition Crossover with Articulation Points Analysis
Enhancing Partition Crossover with Articulation Points Analysis
 
Search-Based Software Project Scheduling
Search-Based Software Project SchedulingSearch-Based Software Project Scheduling
Search-Based Software Project Scheduling
 
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
Dos estrategias de búsqueda anytime basadas en programación lineal entera par...
 
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization ProblemsEfficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
 
Efficient Hill Climber for Multi-Objective Pseudo-Boolean Optimization
Efficient Hill Climber for Multi-Objective Pseudo-Boolean OptimizationEfficient Hill Climber for Multi-Objective Pseudo-Boolean Optimization
Efficient Hill Climber for Multi-Objective Pseudo-Boolean Optimization
 
Mixed Integer Linear Programming Formulation for the Taxi Sharing Problem
Mixed Integer Linear Programming Formulation for the Taxi Sharing ProblemMixed Integer Linear Programming Formulation for the Taxi Sharing Problem
Mixed Integer Linear Programming Formulation for the Taxi Sharing Problem
 
Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...
Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...
Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...
 
Optimización Multi-objetivo Basada en Preferencias para la Planificación de P...
Optimización Multi-objetivo Basada en Preferencias para la Planificación de P...Optimización Multi-objetivo Basada en Preferencias para la Planificación de P...
Optimización Multi-objetivo Basada en Preferencias para la Planificación de P...
 
Resolviendo in problema multi-objetivo de selección de requisitos mediante re...
Resolviendo in problema multi-objetivo de selección de requisitos mediante re...Resolviendo in problema multi-objetivo de selección de requisitos mediante re...
Resolviendo in problema multi-objetivo de selección de requisitos mediante re...
 
On the application of SAT solvers for Search Based Software Testing
On the application of SAT solvers for Search Based Software TestingOn the application of SAT solvers for Search Based Software Testing
On the application of SAT solvers for Search Based Software Testing
 
Elementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
Elementary Landscape Decomposition of the Hamiltonian Path Optimization ProblemElementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
Elementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
 
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
 
Recent Research in Search Based Software Testing
Recent Research in Search Based Software TestingRecent Research in Search Based Software Testing
Recent Research in Search Based Software Testing
 
Problem Understanding through Landscape Theory
Problem Understanding through Landscape TheoryProblem Understanding through Landscape Theory
Problem Understanding through Landscape Theory
 
Elementary Landscape Decomposition of Combinatorial Optimization Problems
Elementary Landscape Decomposition of Combinatorial Optimization ProblemsElementary Landscape Decomposition of Combinatorial Optimization Problems
Elementary Landscape Decomposition of Combinatorial Optimization Problems
 
Elementary Landscape Decomposition of the Quadratic Assignment Problem
Elementary Landscape Decomposition of the Quadratic Assignment ProblemElementary Landscape Decomposition of the Quadratic Assignment Problem
Elementary Landscape Decomposition of the Quadratic Assignment Problem
 

Recently uploaded

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 

Finding Safety Errors with ACO

  • 1. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work 2007 Finding Safety Errors with ACO Enrique Alba and Francisco Chicano London, United Kingdom, July 7-11, 2007 1 / 28
  • 2. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Motivation 2007 Motivation • Nowadays software is very complex • An error in a software system can imply the loss of lot of money … … and even human lifes • Techniques for proving the correctness of the software are required • Model checking → fully automatic London, United Kingdom, July 7-11, 2007 2 / 28
  • 3. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Explicit State MC Safety Properties State Explosion Heuristic MC 2007 Explicit State Model Checking • Objective: Prove that model M satisfies the property : • SPIN: the property f is an LTL formula Model M LTL formula ¬ f Intersection Büchi automaton s0 !p∨q s0 s5 s3 ∩ s0 s2 = s1 s3 s1 p∧!q q s2 s2 s5 s1 s7 s4 s4 s6 s8 s9 London, United Kingdom, July 7-11, 2007 3 / 28
  • 4. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Explicit State MC Safety Properties State Explosion Heuristic MC 2007 Explicit State Model Checking • Objective: Prove that model M satisfies the property : • SPIN: the property f is an LTL formula Model M LTL formula ¬ f Intersection Büchi automaton s0 !p∨q s0 s5 s3 ∩ s0 s2 = s1 s3 s1 p∧!q q s2 s2 s5 s1 s7 s4 s4 s6 s8 s9 London, United Kingdom, July 7-11, 2007 4 / 28
  • 5. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Explicit State MC Safety Properties State Explosion Heuristic MC 2007 Explicit State Model Checking • Objective: Prove that model M satisfies the property : • SPIN: the property f is an LTL formula Model M LTL formula ¬ f Intersection Büchi automaton s0 !p∨q s0 s5 s3 ∩ s0 s2 = s1 s3 s1 p∧!q q s2 s2 s5 s1 s7 s4 s4 s6 s8 s9 Using Nested-DFS London, United Kingdom, July 7-11, 2007 5 / 28
  • 6. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Explicit State MC Safety Properties State Explosion Heuristic MC 2007 Safety Properties • Safety properties are those expressed by an LTL formula of the form: f=□p where p is a past formula • Finding one counterexample ≡ finding one accepting state s0 Intersection automaton Safety Properties s1 s3 s2 Deadlocks s5 s7 Invariants s4 s6 Assertions … s8 s9 • Classical algorithms for graph exploration can be used: DFS and BFS London, United Kingdom, July 7-11, 2007 6 / 28
  • 7. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Explicit State MC Safety Properties State Explosion Heuristic MC 2007 State Explosion Problem • Number of states very large even for small models s0 s1 s3 s2 Memory s5 s7 s4 s6 s8 s9 • Example: Dining philosophers with n philosophers → 3n states 20 philosophers → 1039 GB for storing the states • Solutions: collapse compression, minimized automaton representation, bitstate hashing, partial order reduction, symmetry reduction • Large models cannot be verified but errors can be found London, United Kingdom, July 7-11, 2007 7 / 28
  • 8. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Explicit State MC Safety Properties State Explosion Heuristic MC 2007 Heuristic Model Checking • The search for errors can be directed by heuristics using algorithms like A*, IDA*, WA* and Best-First 5 s0 2 2 Heuristic value s1 3 s3 s2 1 s5 0 s7 4 s4 0 s6 6 s8 7 s9 • Different kinds of heuristic functions have been proposed in the past: • Formula-based heuristics • Deadlock-detection heuristics • Structural heuristics • State-dependent heuristics London, United Kingdom, July 7-11, 2007 8 / 28
  • 9. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 Metaheuristic Algorithms • Designed to solve optimization problems Maximize or minimize a given function: the fitness function • They can find “good” solutions with a “reasonable” amount of resources Metaheuristic Algorithms Single solution Population London, United Kingdom, July 7-11, 2007 9 / 28
  • 10. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 Metaheuristics Classification Single solution Greedy Randomized Iterated Local Variable Adaptive Search Search Neighborhood Procedure Search Tabu Simulated Iterative Guided Local Search Annealing Improvement Search Population Estimation of Evolutionary Scatter Distribution Computation Search Algorithms Ant Colony Particle Swarm Optimization Optimization London, United Kingdom, July 7-11, 2007 10 / 28
  • 11. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 Metaheuristics Classification Single solution Greedy Randomized Iterated Local Variable Adaptive Search Search Neighborhood Procedure Search Genetic Algorithms Tabu Simulated Iterative Alba & Troya, 1996 Guided Local Search Annealing Improvement Search Godefroid & Khurshid, 2002, 2004 Population Estimation of Evolutionary Scatter Distribution Computation Search Algorithms Ant Colony Particle Swarm Optimization Optimization London, United Kingdom, July 7-11, 2007 11 / 28
  • 12. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 ACO: Introduction • Ant Colony Optimization (ACO) metaheuristic is inspired by the foraging behaviour of real ants • ACO Pseudo-code London, United Kingdom, July 7-11, 2007 12 / 28
  • 13. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 ACO: Construction Phase • The ant selects its next node stochastically • The probability of selecting one node Trail k depends on the pheromone trail and the τij heuristic value (optional) of the edge Heuristic i ηij Ni • The ant stops when a complete solution is built m j l k London, United Kingdom, July 7-11, 2007 13 / 28
  • 14. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 ACO: Pheromone Update • Pheromone update During the construction phase with After the construction phase with • Trail limits (particular of MMAS) Pheromones are kept in the interval [τmin, τmax] London, United Kingdom, July 7-11, 2007 14 / 28
  • 15. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 ACOhg: Motivation • Existing ACO models cannot be applied to the search for errors in concurrent programs The graph is very large, the construction of a complete solution could require too much time and memory In some models the number of nodes of the graph is used for computing the initial pheromone values • We need a new model for tackling these problems: ACOhg (ACO for Huge Graphs) Constructs the ant paths and updates the pheromone values in the same way as the traditional models Allows the construction of partial solutions Allows the exploration of the graph using a bounded amount of memory The pheromone matrix is never completely stored London, United Kingdom, July 7-11, 2007 15 / 28
  • 16. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 ACOhg: Huge Graphs Exploration The length of the ant paths is limited by λant What if…? λant Objective node Initial node London, United Kingdom, July 7-11, 2007 16 / 28
  • 17. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 ACOhg: Huge Graphs Exploration The length of the ant paths is limited by λant What if…? λant Objective node Initial node Two alternatives Expansion Technique: λant changes After σi steps λant = λant + δl London, United Kingdom, July 7-11, 2007 17 / 28
  • 18. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 ACOhg: Huge Graphs Exploration The length of the ant paths is limited by λant What if…? λant Objective node Initial node Two alternatives Missionary Technique: starting nodesλant changes Expansion Technique: for path construction change After σsi steps Second ant + δl λant = λstage Third stage London, United Kingdom, July 7-11, 2007 18 / 28
  • 19. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 ACOhg: Pheromones • The number of pheromone trails increases during the search • This leads to memory problems Pheromones • We must remove some pheromone trails from memory Steps Remove pheromone trails τij In the missionary technique, below a given threshold τθ remove all pheromone trails after one stage Pheromones Pheromones Stage Steps Steps London, United Kingdom, July 7-11, 2007 19 / 28
  • 20. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Metaheuristics ACO ACOhg 2007 ACOhg: Fitness Function • The fitness function must be able to evaluate partial solutions • Penalties are added for partial solutions and solutions with cycles Partial solution Partial solution Complete solution without cycle with cycle Total penalty Penalty constant for Penalty constant for Path length partial solutions solutions with cycles London, United Kingdom, July 7-11, 2007 20 / 28
  • 21. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Models Parameters Results Previous Results 2007 Promela Models • We selected 5 Promela models for the experiments Safety Model LoC States Processes Property giop22 717 unknown 11 Deadlock marriers4 142 unknown 5 Deadlock needham 260 18242 4 LTL formula phi16 34 43046721* 17 Deadlock pots 453 unknown 8 Deadlock * Theoretical result • For all except needham, the states do not fit into the main memory of the computer London, United Kingdom, July 7-11, 2007 21 / 28
  • 22. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Models Parameters Results Previous Results 2007 Parameters for ACOhg • The ACOhg model was implemented inside the MALLBA library and then included into the HSF-SPIN model checker Parameter Value Parameter Value Steps 100 ξ 0.5 Colony size 10 a 5 λant 10 ρ 0.8 σs 2 α 1.0 s 10 β 2.0 • Fitness function: length of the path + heuristic + penalty for partial solutions • Two variants: using no heuristic (ACOhg-b) and using it (ACOhg-h) • Machine: Pentium 4 at 2.8 GHz with 512 MB London, United Kingdom, July 7-11, 2007 22 / 28
  • 23. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Models Parameters Results Previous Results 2007 Results I: Efficacy • We compare the results of ACOhg algorithms against state-of-the-art model checker algorithms: DFS, BFS, A*, and BF Which algorithm finds errors? • ACOhg algorithms are the only ones that are able to find errors in very large models (marriers20). London, United Kingdom, July 7-11, 2007 23 / 28
  • 24. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Models Parameters Results Previous Results 2007 Results II: Details London, United Kingdom, July 7-11, 2007 24 / 28
  • 25. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Models Parameters Results Previous Results 2007 Results III: Graphical Comparison • Error trail length vs. memory graph ACOhg algorithms require less memory than BFS They also get shorter (better) error trails than DFS • In general, unlike exhaustive algorithms, ACOhg algorithms keep all the results in a good performance region (high accuracy and efficiency) London, United Kingdom, July 7-11, 2007 25 / 28
  • 26. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Models Parameters Results Previous Results 2007 Previous Results with Metaheuristics • GA is the previous metaheuristic algorithm applied to this problem • Godefroid & Khurshid (2002), found errors in phi17 and needham models with GA • To the best of our knowledge, this is the most recent result for this problem using metaheuristics • The results state that ACOhg has higher efficacy and efficiency than GA (even taking into account the differences in the machines) • But we cannot do a fair comparison because the models and the model checkers are different (Verisoft against HSF-SPIN) London, United Kingdom, July 7-11, 2007 26 / 28
  • 27. Ant Colony Conclusions Introduction Background Experiments Optimization & Future Work Conclusions and Future Work 2007 Conclusions and Future Work Conclusions • ACOhg is able to outperform state-of-the-art algorithms used nowadays in current model checkers for finding safety errors • ACOhg is able to explore really large concurrent models for which traditional model checking techniques fail • This represents a promising starting point for the use of metaheuristic algorithms in model checking and an interesting subject in SBSE Future Work • Combine ACOhg algorithms with other techniques for reducing the amount of memory: Partial Order Reduction and Symmetry Reduction (in progress) • Include ACOhg into JavaPathFinder for finding errors in Java programs (in progress) • Parallel implementation of ACOhg for this problem (parallel model checkers) London, United Kingdom, July 7-11, 2007 27 / 28
  • 28. Finding Safety Errors with ACO 2007 Thanks for your attention !!! Questions? London, United Kingdom, July 7-11, 2007 28 / 28