SlideShare a Scribd company logo
1 of 34
Download to read offline
Algorithmic                  Conclusions
Introduction     Background                    Experiments
                                  Proposal                   & Future Work




  Searching for Liveness Property Violations
      in Concurrent Systems with ACO




                        Francisco Chicano and Enrique Alba

GECCO 2008, Atlanta, USA, July 12-16, 2008                                   1 / 34
Algorithmic                    Conclusions
 Introduction     Background                       Experiments
                                    Proposal                     & Future Work


Motivation

Motivation
  • Concurrent software is difficult to test ...
  • ... and it is in the heart of a lot of critical systems




  • Techniques for proving the correctness of concurrent software are required
  • Model checking → fully automatic
  • In the past the work using metaheuristics focused on safety properties
  • In this work we focus on liveness properties


 GECCO 2008, Atlanta, USA, July 12-16, 2008                                      2 / 34
Algorithmic                            Conclusions
 Introduction             Background                             Experiments
                                            Proposal                             & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

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

          Model M                             LTL formula ¬ f                    Intersection Büchi automaton
                                               (never claim)
                s0
                                                     !p∨q                                                 s0


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

                                                                                                s8
                                                                                                               s9




 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                                              3 / 34
Algorithmic                            Conclusions
 Introduction             Background                             Experiments
                                            Proposal                             & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

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

          Model M                             LTL formula ¬ f                    Intersection Büchi automaton
                                               (never claim)
                s0
                                                     !p∨q                                                 s0


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

                                                                                                s8
                                                                                                               s9




 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                                              4 / 34
Algorithmic                            Conclusions
 Introduction             Background                             Experiments
                                            Proposal                             & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

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

          Model M                             LTL formula ¬ f                    Intersection Büchi automaton
                                               (never claim)
                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


 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                                              5 / 34
Algorithmic                     Conclusions
 Introduction             Background                           Experiments
                                               Proposal                      & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

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

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                  6 / 34
Algorithmic                                        Conclusions
 Introduction     Background                                             Experiments
                                             Proposal                                         & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

Heuristic Model Checking
  • The search for errors can be directed by using heuristic information
                                                               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

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                                        7 / 34
Algorithmic                  Conclusions
 Introduction     Background                    Experiments
                                   Proposal                   & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

Safety and Liveness Properties
                                     Safety property                                              s0


                                                                             s1                              s3
                                                                                            s2
                                                                                                                              s5
                                                                             s7
                                                                                                                 s4
  • Counterexample ≡ path to accepting state                                                     s6

  • Graph exploration algorithms can be used: DFS and BFS                         s8
                                                                                                            s9




                                    Liveness property                                        s0


                                                                        s1                              s3
                                                                                       s2
                                                                                                                         s5
                                                                        s7
  • Counterexample ≡ path to accepting cycle                                                                s4
                                                                                            s6

  • It is not possible to apply DFS or BFS                                   s8
                                                                                                       s9



 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                                           8 / 34
Algorithmic                      Conclusions
 Introduction     Background                           Experiments
                                      Proposal                       & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

Strongly Connected Components



                                                   a             b

                                                                     c
                                             e

                                 f                      g            d




 GECCO 2008, Atlanta, USA, July 12-16, 2008                                          9 / 34
Algorithmic                  Conclusions
 Introduction     Background                    Experiments
                                   Proposal                   & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

Strongly Connected Components




 GECCO 2008, Atlanta, USA, July 12-16, 2008                                   10 / 34
Algorithmic                  Conclusions
 Introduction     Background                    Experiments
                                   Proposal                   & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

Strongly Connected Components




 GECCO 2008, Atlanta, USA, July 12-16, 2008                                   11 / 34
Algorithmic                          Conclusions
 Introduction     Background                        Experiments
                                   Proposal                           & Future Work


Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs

Strongly Connected Components


                                                                               N-SCC


                                                                  a            b

                               P-SCC                                                  c
                                                          e
                                                                                          F-SCC
                                                f                     g               d

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                 12 / 34
Algorithmic                          Conclusions
 Introduction     Background                         Experiments
                                    Proposal                           & Future Work


Metaheuristics ACO ACOhg ACOhg-live

Optimization/Search Techniques

                          OPTIMIZATION/SEARCH TECHNIQUES
                          OPTIMIZATION/SEARCH TECHNIQUES



                 EXACT
                EXACT                                               APPROXIMATED
                                                                   APPROXIMATED



                                                   Ad Hoc Heuristics
                                                  Ad Hoc Heuristics             METAHEURISTICS
                                                                               METAHEURISTICS




  Based on Calculus
 Based on Calculus          Enumeratives
                           Enumeratives                    Trayectory-based
                                                          Trayectory-based              Population-based
                                                                                       Population-based

 • Newton                  • Depth First Search            • SA                        • EA
 • Gradient                • Branch and Bound              • VNS                       • ACO
                                                           • TS                        • PSO

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                          13 / 34
Algorithmic                  Conclusions
 Introduction    Background                    Experiments
                                  Proposal                   & Future Work


Metaheuristics ACO ACOhg ACOhg-live

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




  • ACO Pseudo-code




GECCO 2008, Atlanta, USA, July 12-16, 2008                                   14 / 34
Algorithmic                       Conclusions
 Introduction    Background                    Experiments
                                  Proposal                        & Future Work


Metaheuristics ACO ACOhg ACOhg-live

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/node
                                                   Heuristic
                                                                       i
                                                      ηij
                                                                                           Ni
  • The ant stops when a complete
    solution is built
                                                                                      m
                                                      j
                                                                                  l
                                                                   k




GECCO 2008, Atlanta, USA, July 12-16, 2008                                                15 / 34
Algorithmic                   Conclusions
 Introduction     Background                   Experiments
                                  Proposal                    & Future Work


Metaheuristics ACO ACOhg ACOhg-live

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]




GECCO 2008, Atlanta, USA, July 12-16, 2008                                    16 / 34
Algorithmic                     Conclusions
 Introduction    Background                         Experiments
                                    Proposal                      & Future Work


Metaheuristics ACO ACOhg ACOhg-live

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

        Initial node




                            Starting nodes for path construction change


                              After σs steps




                                                 Second stage                 Third stage
GECCO 2008, Atlanta, USA, July 12-16, 2008                                                     17 / 34
Algorithmic                  Conclusions
 Introduction     Background                   Experiments
                                  Proposal                   & Future Work


Metaheuristics ACO ACOhg ACOhg-live

ACOhg-live
  • The search is an alternation of two phases


           First phase: search for accepting states
           Second phase: search for cycles from the accepting states


                   ACOhg-live Pseudocode




                                                                         First phase
GECCO 2008, Atlanta, USA, July 12-16, 2008                                             18 / 34
Algorithmic                  Conclusions
 Introduction     Background                   Experiments
                                  Proposal                   & Future Work


Metaheuristics ACO ACOhg ACOhg-live

ACOhg-live
  • The search is an alternation of two phases


           First phase: search for accepting states
           Second phase: search for cycles from the accepting states


                   ACOhg-live Pseudocode




                                                                             Second phase
GECCO 2008, Atlanta, USA, July 12-16, 2008                                                  19 / 34
Algorithmic                  Conclusions
 Introduction     Background                   Experiments
                                  Proposal                   & Future Work


Metaheuristics ACO ACOhg ACOhg-live

ACOhg-live
  • The search is an alternation of two phases


           First phase: search for accepting states
           Second phase: search for cycles from the accepting states


                   ACOhg-live Pseudocode



                                                                             Tabu list




GECCO 2008, Atlanta, USA, July 12-16, 2008                                       20 / 34
Algorithmic                  Conclusions
 Introduction     Background                   Experiments
                                  Proposal                   & Future Work


Metaheuristics ACO ACOhg ACOhg-live

ACOhg-live
  • The search is an alternation of two phases


           First phase: search for accepting states
           Second phase: search for cycles from the accepting states


                   ACOhg-live Pseudocode                     • Improvement
                                                                                      Tabu list
                                                               using SCCs


                                                                     First phase: accepting
                                                                  states in N-SCC are
                                                                  ignored
                                                                     Both phases: cycle
                                                                  detected in F-SCC is a
                                                                  violation
GECCO 2008, Atlanta, USA, July 12-16, 2008                                             21 / 34
Algorithmic                         Conclusions
 Introduction       Background                            Experiments
                                        Proposal                          & Future Work


Models & parameters Results Discussion

Promela Models
  • We used 11 Promela models for the experiments
           Model       LoC           Scalable        Processes              LTL formula (liveness)
        alter             64                 no                    2 □(p → ◊q) ^ □(r → ◊s)
        giopj           740                 yes                   j+6 □(p → ◊q)
        phij              57                yes                   j+1 □(p → ◊q)
        elevj           191                 yes                   j+3 □(p → ◊q)
        sgc            1001                  no                   20 ◊p
  • Parameters for ACOhg-live
        Parameter         msteps        colsize      λant    σs     ξ        a       ρ    α     β
        1st phase                           10       20            0.7
                               100                            4              5      0.2   1.0   2.0
        2nd phase                           20        4            0.5

  • Formula-based and finite state machine heuristics
  • ACOhg-live implemented in HSF-SPIN
  • 100 independent executions and statistical validation
 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                          22 / 34
Algorithmic                         Conclusions
 Introduction       Background                            Experiments
                                        Proposal                          & Future Work


Models & parameters Results Discussion

Promela Models
  • We used 11 Promela models for the experiments
           Model       LoC           Scalable        Processes              LTL formula (liveness)
        alter             64                 no                    2 □(p → ◊q) ^ □(r → ◊s)
                                 j=10,15,20
        giopj           740                 yes                   j+6 □(p → ◊q)
        phij              57             yes
                                 j=20,30,40                       j+1 □(p → ◊q)
        elevj           191                 yes                   j+3 □(p → ◊q)
        sgc            1001
                                 j=10,15,20
                                          no                      20 ◊p
  • Parameters for ACOhg-live
        Parameter         msteps        colsize      λant    σs     ξ        a       ρ    α     β
        1st phase                           10       20            0.7
                               100                            4              5      0.2   1.0   2.0
        2nd phase                           20        4            0.5

  • Formula-based and finite state machine heuristics
  • ACOhg-live implemented in HSF-SPIN
  • 100 independent executions and statistical validation
 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                          23 / 34
Algorithmic                  Conclusions
 Introduction     Background                    Experiments
                                   Proposal                   & Future Work


Models & parameters Results Discussion

Results I: Influence of the SCC Improvement




                                                                              SD
                                    SD




 GECCO 2008, Atlanta, USA, July 12-16, 2008                                        24 / 34
Algorithmic                   Conclusions
 Introduction     Background                       Experiments
                                     Proposal                    & Future Work


Models & parameters Results Discussion

Results I: Influence of the SCC Improvement




                                                                                 SD
                                     SD

                                     SD                SD
                               SD                 SD
                  SD                        SD




 GECCO 2008, Atlanta, USA, July 12-16, 2008                                           25 / 34
Algorithmic                   Conclusions
 Introduction     Background                       Experiments
                                     Proposal                    & Future Work


Models & parameters Results Discussion

Results I: Influence of the SCC Improvement




                                                                                  SD
                                     SD                SD                        SD
                        SD
                                     SD                SD
                               SD                 SD
                  SD                        SD




 GECCO 2008, Atlanta, USA, July 12-16, 2008                                            26 / 34
Algorithmic                   Conclusions
 Introduction     Background                       Experiments
                                     Proposal                    & Future Work


Models & parameters Results Discussion

Results I: Influence of the SCC Improvement


                                                        SD


                                                                 575192
                               SD SD              SD
                                                                                  SD
                        SD
                                     SD                SD                        SD
                        SD                   SD
                                     SD                SD
                   SD          SD                 SD
                  SD                        SD




 GECCO 2008, Atlanta, USA, July 12-16, 2008                                            27 / 34
Algorithmic                  Conclusions
 Introduction     Background                     Experiments
                                    Proposal                   & Future Work


Models & parameters Results Discussion

Results II: ACOhg-live+ vs. NDFS and INDFS
                          Models       ACOhg-live+     NDFS      INDFS
                          alter
                          giop10
                          giop15
                          giop20
                          phi20
                          phi30
                          phi40
                          elev10
                          elev15
                          elev20
                          sgc

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                    28 / 34
Algorithmic                          Conclusions
 Introduction     Background                          Experiments
                                    Proposal                           & Future Work


Models & parameters Results Discussion

Results II: ACOhg-live+ vs. NDFS and INDFS
                          Models       ACOhg-live+          NDFS           INDFS
                         alter
                        SD                                          1069
                         giop10
                          giop15              10001                              1059
                          giop20
                          10001
                          phi20                                                         9999
                          phi30
                          phi40
                          elev10
                          elev15
                          elev20
                          sgc

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                    29 / 34
Algorithmic                       Conclusions
 Introduction     Background                       Experiments
                                    Proposal                        & Future Work


Models & parameters Results Discussion

Results II: ACOhg-live+ vs. NDFS and INDFS
                          Models       ACOhg-live+       NDFS           INDFS
                         alter
                        SD                                       1069
                         giop10
                          392192
                         giop15               388096                         1059
                                                                            15360
                                              10001
                          giop20
                          10001
                          phi20                                                     9999
                          phi30
                          phi40
                          elev10
                          elev15
                          elev20
                          sgc

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                30 / 34
Algorithmic                       Conclusions
 Introduction     Background                       Experiments
                                    Proposal                        & Future Work


Models & parameters Results Discussion

Results II: ACOhg-live+ vs. NDFS and INDFS
                          Models       ACOhg-live+       NDFS           INDFS
                         alter
                        SD                                       1069
                         giop10
                          392192
                         giop15                15320
                                              388096                         1059
                                                                            15360
                                              10001
                          15670
                         giop20
                          10001
                         phi20                                                      9999
                          phi30
                          phi40
                          elev10
                          elev15
                          elev20
                          sgc

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                                31 / 34
Algorithmic                     Conclusions
 Introduction     Background                     Experiments
                                    Proposal                      & Future Work


Models & parameters Results Discussion

How to use ACOhg-live
  • ACOhg-live should be used in the first/middle stages of the software development,
         when software errors are expected
  • ACOhg-live can also be used in other phases of the software development for testing
         concurrent software


                                   Large model or
                               a short couterexample
                                      is needed                ACOhg-live

                         Model


                                 Small model and                (I)NDFS
                                any counterexample
                                   is needed fast

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                        32 / 34
Algorithmic                  Conclusions
 Introduction     Background                    Experiments
                                   Proposal                   & Future Work


Conclusions & Future Work

Conclusions & Future Work
                                         Conclusions
  • ACOhg-live is the first algorithm based on metaheuristics (to the best of our
         knowledge) applied to the search for liveness errors in concurrent models
  • The improvement based on the SCCs of the never claim outperforms the efficacy of
           ACOhg-live
  • ACOhg-live is able to outperform (Improved) Nested-DFS in efficacy and efficiency
         in the search for liveness errors


                                        Future Work
  • Analysis of parameterization for reducing the parameters
  • Include ACOhg-live into JavaPathFinder for finding liveness errors in Java programs
  • Combine ACOhg-live with techniques for reducing the memory required for the search
          such as partial order reduction (work in progress)

 GECCO 2008, Atlanta, USA, July 12-16, 2008                                      33 / 34
Searching for Liveness Property Violations
     in Concurrent Systems with ACO
Thanks for your attention !!!




GECCO 2008, Atlanta, USA, July 12-16, 2008    34 / 34

More Related Content

Viewers also liked

Adam lu trip advisor bl_en
Adam lu trip advisor bl_enAdam lu trip advisor bl_en
Adam lu trip advisor bl_enAdam Lü
 
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
 
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 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
 
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
 
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
 
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
 
Exact Computation of the Expectation Curves of the Bit-Flip Mutation using La...
Exact Computation of the Expectation Curves of the Bit-Flip Mutation using La...Exact Computation of the Expectation Curves of the Bit-Flip Mutation using La...
Exact Computation of the Expectation Curves of the Bit-Flip Mutation using La...jfrchicanog
 

Viewers also liked (12)

Adam lu trip advisor bl_en
Adam lu trip advisor bl_enAdam lu trip advisor bl_en
Adam lu trip advisor bl_en
 
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
 
Green energy
Green energy Green energy
Green energy
 
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 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
 
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...
 
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
 
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
 
Exact Computation of the Expectation Curves of the Bit-Flip Mutation using La...
Exact Computation of the Expectation Curves of the Bit-Flip Mutation using La...Exact Computation of the Expectation Curves of the Bit-Flip Mutation using La...
Exact Computation of the Expectation Curves of the Bit-Flip Mutation using La...
 
Proverb
ProverbProverb
Proverb
 
twelfth night
twelfth night twelfth night
twelfth night
 

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
 
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
 
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
 
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
 
Problem Understanding through Landscape Theory
Problem Understanding through Landscape TheoryProblem Understanding through Landscape Theory
Problem Understanding through Landscape Theoryjfrchicanog
 

More from jfrchicanog (12)

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
 
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...
 
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...
 
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
 
Problem Understanding through Landscape Theory
Problem Understanding through Landscape TheoryProblem Understanding through Landscape Theory
Problem Understanding through Landscape Theory
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 

Recently uploaded (20)

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

Searching for Liveness Property Violations in Concurrent Systems with ACO

  • 1. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Searching for Liveness Property Violations in Concurrent Systems with ACO Francisco Chicano and Enrique Alba GECCO 2008, Atlanta, USA, July 12-16, 2008 1 / 34
  • 2. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Motivation Motivation • Concurrent software is difficult to test ... • ... and it is in the heart of a lot of critical systems • Techniques for proving the correctness of concurrent software are required • Model checking → fully automatic • In the past the work using metaheuristics focused on safety properties • In this work we focus on liveness properties GECCO 2008, Atlanta, USA, July 12-16, 2008 2 / 34
  • 3. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs Explicit State Model Checking • Objective: Prove that model M satisfies the property : • HSF-SPIN: the property f is an LTL formula Model M LTL formula ¬ f Intersection Büchi automaton (never claim) s0 !p∨q s0 s5 s3 ∩ s0 s2 = s1 s3 s1 p∧!q q s2 s2 s5 s1 s7 s4 s4 s6 s8 s9 GECCO 2008, Atlanta, USA, July 12-16, 2008 3 / 34
  • 4. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs Explicit State Model Checking • Objective: Prove that model M satisfies the property : • HSF-SPIN: the property f is an LTL formula Model M LTL formula ¬ f Intersection Büchi automaton (never claim) s0 !p∨q s0 s5 s3 ∩ s0 s2 = s1 s3 s1 p∧!q q s2 s2 s5 s1 s7 s4 s4 s6 s8 s9 GECCO 2008, Atlanta, USA, July 12-16, 2008 4 / 34
  • 5. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs Explicit State Model Checking • Objective: Prove that model M satisfies the property : • HSF-SPIN: the property f is an LTL formula Model M LTL formula ¬ f Intersection Büchi automaton (never claim) 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 GECCO 2008, Atlanta, USA, July 12-16, 2008 5 / 34
  • 6. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs 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 GECCO 2008, Atlanta, USA, July 12-16, 2008 6 / 34
  • 7. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs Heuristic Model Checking • The search for errors can be directed by using heuristic information 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 GECCO 2008, Atlanta, USA, July 12-16, 2008 7 / 34
  • 8. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs Safety and Liveness Properties Safety property s0 s1 s3 s2 s5 s7 s4 • Counterexample ≡ path to accepting state s6 • Graph exploration algorithms can be used: DFS and BFS s8 s9 Liveness property s0 s1 s3 s2 s5 s7 • Counterexample ≡ path to accepting cycle s4 s6 • It is not possible to apply DFS or BFS s8 s9 GECCO 2008, Atlanta, USA, July 12-16, 2008 8 / 34
  • 9. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs Strongly Connected Components a b c e f g d GECCO 2008, Atlanta, USA, July 12-16, 2008 9 / 34
  • 10. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs Strongly Connected Components GECCO 2008, Atlanta, USA, July 12-16, 2008 10 / 34
  • 11. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs Strongly Connected Components GECCO 2008, Atlanta, USA, July 12-16, 2008 11 / 34
  • 12. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Explicit State MC State Explosion Heuristic MC Safety & Liveness SCCs Strongly Connected Components N-SCC a b P-SCC c e F-SCC f g d GECCO 2008, Atlanta, USA, July 12-16, 2008 12 / 34
  • 13. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Metaheuristics ACO ACOhg ACOhg-live Optimization/Search Techniques OPTIMIZATION/SEARCH TECHNIQUES OPTIMIZATION/SEARCH TECHNIQUES EXACT EXACT APPROXIMATED APPROXIMATED Ad Hoc Heuristics Ad Hoc Heuristics METAHEURISTICS METAHEURISTICS Based on Calculus Based on Calculus Enumeratives Enumeratives Trayectory-based Trayectory-based Population-based Population-based • Newton • Depth First Search • SA • EA • Gradient • Branch and Bound • VNS • ACO • TS • PSO GECCO 2008, Atlanta, USA, July 12-16, 2008 13 / 34
  • 14. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Metaheuristics ACO ACOhg ACOhg-live ACO: Introduction • Ant Colony Optimization (ACO) metaheuristic is inspired by the foraging behaviour of real ants • ACO Pseudo-code GECCO 2008, Atlanta, USA, July 12-16, 2008 14 / 34
  • 15. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Metaheuristics ACO ACOhg ACOhg-live 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/node Heuristic i ηij Ni • The ant stops when a complete solution is built m j l k GECCO 2008, Atlanta, USA, July 12-16, 2008 15 / 34
  • 16. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Metaheuristics ACO ACOhg ACOhg-live 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] GECCO 2008, Atlanta, USA, July 12-16, 2008 16 / 34
  • 17. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Metaheuristics ACO ACOhg ACOhg-live ACOhg: Huge Graphs Exploration The length of the ant paths is limited by λant What if…? λant Objective node Initial node Starting nodes for path construction change After σs steps Second stage Third stage GECCO 2008, Atlanta, USA, July 12-16, 2008 17 / 34
  • 18. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Metaheuristics ACO ACOhg ACOhg-live ACOhg-live • The search is an alternation of two phases First phase: search for accepting states Second phase: search for cycles from the accepting states ACOhg-live Pseudocode First phase GECCO 2008, Atlanta, USA, July 12-16, 2008 18 / 34
  • 19. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Metaheuristics ACO ACOhg ACOhg-live ACOhg-live • The search is an alternation of two phases First phase: search for accepting states Second phase: search for cycles from the accepting states ACOhg-live Pseudocode Second phase GECCO 2008, Atlanta, USA, July 12-16, 2008 19 / 34
  • 20. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Metaheuristics ACO ACOhg ACOhg-live ACOhg-live • The search is an alternation of two phases First phase: search for accepting states Second phase: search for cycles from the accepting states ACOhg-live Pseudocode Tabu list GECCO 2008, Atlanta, USA, July 12-16, 2008 20 / 34
  • 21. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Metaheuristics ACO ACOhg ACOhg-live ACOhg-live • The search is an alternation of two phases First phase: search for accepting states Second phase: search for cycles from the accepting states ACOhg-live Pseudocode • Improvement Tabu list using SCCs First phase: accepting states in N-SCC are ignored Both phases: cycle detected in F-SCC is a violation GECCO 2008, Atlanta, USA, July 12-16, 2008 21 / 34
  • 22. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Promela Models • We used 11 Promela models for the experiments Model LoC Scalable Processes LTL formula (liveness) alter 64 no 2 □(p → ◊q) ^ □(r → ◊s) giopj 740 yes j+6 □(p → ◊q) phij 57 yes j+1 □(p → ◊q) elevj 191 yes j+3 □(p → ◊q) sgc 1001 no 20 ◊p • Parameters for ACOhg-live Parameter msteps colsize λant σs ξ a ρ α β 1st phase 10 20 0.7 100 4 5 0.2 1.0 2.0 2nd phase 20 4 0.5 • Formula-based and finite state machine heuristics • ACOhg-live implemented in HSF-SPIN • 100 independent executions and statistical validation GECCO 2008, Atlanta, USA, July 12-16, 2008 22 / 34
  • 23. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Promela Models • We used 11 Promela models for the experiments Model LoC Scalable Processes LTL formula (liveness) alter 64 no 2 □(p → ◊q) ^ □(r → ◊s) j=10,15,20 giopj 740 yes j+6 □(p → ◊q) phij 57 yes j=20,30,40 j+1 □(p → ◊q) elevj 191 yes j+3 □(p → ◊q) sgc 1001 j=10,15,20 no 20 ◊p • Parameters for ACOhg-live Parameter msteps colsize λant σs ξ a ρ α β 1st phase 10 20 0.7 100 4 5 0.2 1.0 2.0 2nd phase 20 4 0.5 • Formula-based and finite state machine heuristics • ACOhg-live implemented in HSF-SPIN • 100 independent executions and statistical validation GECCO 2008, Atlanta, USA, July 12-16, 2008 23 / 34
  • 24. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Results I: Influence of the SCC Improvement SD SD GECCO 2008, Atlanta, USA, July 12-16, 2008 24 / 34
  • 25. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Results I: Influence of the SCC Improvement SD SD SD SD SD SD SD SD GECCO 2008, Atlanta, USA, July 12-16, 2008 25 / 34
  • 26. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Results I: Influence of the SCC Improvement SD SD SD SD SD SD SD SD SD SD SD GECCO 2008, Atlanta, USA, July 12-16, 2008 26 / 34
  • 27. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Results I: Influence of the SCC Improvement SD 575192 SD SD SD SD SD SD SD SD SD SD SD SD SD SD SD SD SD GECCO 2008, Atlanta, USA, July 12-16, 2008 27 / 34
  • 28. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Results II: ACOhg-live+ vs. NDFS and INDFS Models ACOhg-live+ NDFS INDFS alter giop10 giop15 giop20 phi20 phi30 phi40 elev10 elev15 elev20 sgc GECCO 2008, Atlanta, USA, July 12-16, 2008 28 / 34
  • 29. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Results II: ACOhg-live+ vs. NDFS and INDFS Models ACOhg-live+ NDFS INDFS alter SD 1069 giop10 giop15 10001 1059 giop20 10001 phi20 9999 phi30 phi40 elev10 elev15 elev20 sgc GECCO 2008, Atlanta, USA, July 12-16, 2008 29 / 34
  • 30. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Results II: ACOhg-live+ vs. NDFS and INDFS Models ACOhg-live+ NDFS INDFS alter SD 1069 giop10 392192 giop15 388096 1059 15360 10001 giop20 10001 phi20 9999 phi30 phi40 elev10 elev15 elev20 sgc GECCO 2008, Atlanta, USA, July 12-16, 2008 30 / 34
  • 31. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion Results II: ACOhg-live+ vs. NDFS and INDFS Models ACOhg-live+ NDFS INDFS alter SD 1069 giop10 392192 giop15 15320 388096 1059 15360 10001 15670 giop20 10001 phi20 9999 phi30 phi40 elev10 elev15 elev20 sgc GECCO 2008, Atlanta, USA, July 12-16, 2008 31 / 34
  • 32. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Models & parameters Results Discussion How to use ACOhg-live • ACOhg-live should be used in the first/middle stages of the software development, when software errors are expected • ACOhg-live can also be used in other phases of the software development for testing concurrent software Large model or a short couterexample is needed ACOhg-live Model Small model and (I)NDFS any counterexample is needed fast GECCO 2008, Atlanta, USA, July 12-16, 2008 32 / 34
  • 33. Algorithmic Conclusions Introduction Background Experiments Proposal & Future Work Conclusions & Future Work Conclusions & Future Work Conclusions • ACOhg-live is the first algorithm based on metaheuristics (to the best of our knowledge) applied to the search for liveness errors in concurrent models • The improvement based on the SCCs of the never claim outperforms the efficacy of ACOhg-live • ACOhg-live is able to outperform (Improved) Nested-DFS in efficacy and efficiency in the search for liveness errors Future Work • Analysis of parameterization for reducing the parameters • Include ACOhg-live into JavaPathFinder for finding liveness errors in Java programs • Combine ACOhg-live with techniques for reducing the memory required for the search such as partial order reduction (work in progress) GECCO 2008, Atlanta, USA, July 12-16, 2008 33 / 34
  • 34. Searching for Liveness Property Violations in Concurrent Systems with ACO Thanks for your attention !!! GECCO 2008, Atlanta, USA, July 12-16, 2008 34 / 34