ANT Algorithm for the Graph Matching Problem

  • View
    41

  • Download
    4

Embed Size (px)

DESCRIPTION

5 th European Conference on Evolutionary Computation in Combinatorial Optimization Problems: EvoCOP 2005. ANT Algorithm for the Graph Matching Problem. Olfa Sammoud, Christine Solnon & Khaled Ghédira. EvoCOP – Lausanne 2005. Outline. Graph Matching Problem ANT- Graph Matching (ANT-GM) - PowerPoint PPT Presentation

Text of ANT Algorithm for the Graph Matching Problem

  • ANT Algorithm for the Graph Matching ProblemOlfa Sammoud, Christine Solnon & Khaled Ghdira5th European Conference on Evolutionary Computation in Combinatorial Optimization Problems: EvoCOP 2005

  • 1Outline Graph Matching Problem ANT- Graph Matching (ANT-GM) Experimental study Conclusion

  • Part I: Graph Matching Problem Similarity Graph Matching Problem Existing Graph Matching Problems A generic graph similarity measure

  • Measuring the Similarity of ObjectsIdentify and quantify their common features and their differences

    1Similarity

  • Graph Matching ProblemWhenOBJECTS are modeled by GRAPHS

    Similarity ??Components VerticesRelations between Components EdgesFeatures LabelsGraph Matching Problem

  • Class 1: Exact graph matching (Isomorphism) Usually graphs are not identical (noise, over-segmentation...) Searching for the matching which preserves all vertex and all edge features. To prove graph equivalence or graph inclusionExisting Graph Matching ProblemsSub-graph isomorphism

  • Class 2: Error-Tolerant Graph Matching Searching for the best matching which preserves a maximum number of vertex and edge features. The role of one vertex may be played by a set of vertices Univalent mapping (associating each vertex with at most one vertex in the other graph) becomes insufficient.m { (a,1), (b,2), (c,3), (d,4), (f,5) }

  • Class 3: Multivalent Graph Matching Searching for the best matching which preserves a maximum number of features Possibility to map one vertex to a set of verticesm { (a,1), (b,2), (c,3), (d,4), (f,5), (e,5) }Idea: Similarity of two graphs depends on their common features, Graph features Graph descriptor (descr)

  • Graph similarityGraph Features Graph descriptor (descr)Descr(G) = { (a,beam), (b,beam), (c,beam), (d,beam), (e,wall), (f,wall), (a,b,next to), (b,c,next to), (c,d,next to), (e,f,next to), (a,e,on), (b,e,on), (c,f,on), (d,f,on) } (a,I), (b,I), (c,I), (d,I),

  • A Generic similarity measure [Champin & Solnon 03]

  • 6Exampledescr(G1) descr(G2) { (a,beam), (b,beam), (c,beam), (d,beam), (a,I), (b,I), (c,I), (d,I), (1,beam), (2,beam), (3,beam), (4,beam), (a,U), (2,U), (3,U), (4,U), (e,wall), (f,wall), (5,wall), (a,b,next to), (b,c,next to), (c,d,next to), (a,e,on), (b,e,on), (c,f,on), (d,f,on), (1,2,next to), (2,3,next to), (3,4,next to), (1,5,on), (2,5,on), (3,5,on), (4,5,on) , (e,f,next to) } 34 Featuresdescr(G1) m descr(G2) { }descr(G1) m descr(G2) { (a,beam), (1,beam) }descr(G1) m descr(G2) { (a,beam), (1,beam), (b,beam), (2,beam), (a,b,next to), (1,2,next to) }descr(G1) m descr(G2) { (a,beam), (1,beam), (b,beam), (2,beam), (a,b,next to), (1,2,next to), (e,wall), (5,wall), (a,e,on), (b,e,on), (1,5,on), (2,5,on) }descr(G1) m descr(G2) { (a,beam), (1,beam), (b,beam), (2,beam), (a,b,next to), (1,2,next to), (e,wall), (5,wall), (a,e,on), (b,e,on), (1,5,on), (2,5,on) , (c,beam), (3,beam), (b,c,next to), (2,3,next to), (d,beam), (4,beam), (c,d,next to), (3,4,next to),(f,wall), (c,f,on), (d,f,on), (3,5,on), (4,5,on) } 25 common features + 1 split m { } (a,1),(b,2), (e,5), (c,3), (d,4), (f,5) If we define f and g as cardinality functions simm(G1,G2)=(25-1)/34=0.70

  • Part II: ANT-GM : Ant-Graph Matching ANT-GM: basic idea ANT-GM: algorithm Define construction graph Construction of mapping by an ant Pheromone update

  • 11ANT-GM: basic ideaUse Ant Colony Optimization (ACO) to improve the quality of the constructed matchings Use Pheromone to keep track of the most promising components when constructing new matchings Problem to solve search for a Best path in a graph called Construction Graph Use artificial ants search for Good paths Probabilistic construction of paths guided by pheromone Pheromone laying on best paths Pheromone evaporation

  • 11ANT-GM : algorithm Define a construction graph Initialize pheromone trails of the construction graph to 0 Repeat Each ant constructs a mapping Update pheromone trails Until Optimal mapping is found or Max Cycle is reached

  • 11Construction graph For measuring the similarity of two graphs G1 =(V1,E1) and G2 =(V2,E2), we define the construction graph G=(V,E) :

    Complete and non-directed graph V = V1 V2 (u,u) selected by an ant she prefers to match vertex u of G1 with the vertex u of G2

    pheromone trail between (u,u) and (v,v) learnt desirability of matching together u with u and v with v

  • m Iteratively add a couple (u,u) to m Mapping construction by an antcand { (u,u) V - m / simm {(u,u)}> simm or look_ahead (u,u)> 0 } Choose (u,u) cand with a probability pm(u,u) :

  • , 1 and 2 determine the relative importance of the 3 factors

  • Pheromone update EvaporationFor each edge in E, . Where is the pheromone evaporation rate (0 1) Reward let mk = the best matching built during the current cycle mbest = the best matching built since the beginning of run For each edge in mk 1 /[1+ sim(mbest)-sim(mk) ]

  • Part III:Experimental Study Parameters influence Test suite 1: sub-graph isomorphism problems Test suite 2: multivalent matching problems

  • Parameters influence Pheromone weight =1 Evaporation rate = 0.01 Max number of cycles Maxcycle = 1000 Heuristic Inf. weights 1 = 8 ; 2 = 3 Number of ants NbAnts = 10 Initial Pheromone 0 = 6without pheromone (alpha=0, rho=1)small influence of pheromone (alpha=1, rho=0.01)strong influence of pheromone (alpha=2, rho=0.02)Number of cycles (logscale)Quality of the best matching

  • Considered algorithms Our ACO algorithm: ANT-GM Greedy Search: GS [Champin & Solnon 03] Reactive Tabu Search: RTS [Sorlin & Solnon 05] We fix a same number of moves for each algorithm where :a move in ANT-GM/GS vertex couple addinga move in RTS vertex couple adding/deleting

    Test suite 1: sub-graph isomorphism

    11 Sub-graph isomorphism problems [Foggia & al 01] Each problem, we consider the 30 first instances, so 330 instances (= 11 benchs * 30 instances) are treated Each instance is run 20 times, so, 6600 runs (= 330 instances * 20 runs) are done

    f and g as cardinality functions

  • 6

    Comparison criteria Global Success Rate (GSR): percentage of successful runs over the 6600 runs

    Instance Success Rate (ISR): percentage of instance that have been solved at least once over the 20 runs over the 33O instances

    Number of moves (Mv) (average on successful runs)

    time (t in second) (average on successful runs)

  • Results on sub-graph isomorphism problem [Foggia & al 01]

    Global Success Rate ANT-GM: 94.5 363 runs/6600 have failedRTS: 92.4 501 runs/6600 have failedInstance Success RateANT-GM: 97.6 7 instances/330 not solvedRTS: 99.7 1 instance/330 not solved

    Results obtained by ANT-GM and RTS are rather complementary

    Bench nameANT-GMGS [Champin & Solnon 03]RTS [Sorlin & Solnon 05]GSRISRMvtGSRISRMvtGSRISRMvtsi2r001s10076.886.74049233.233.333.3890.267.510097586.6si2r001s8093.31004224010.133.333.3370.090.010055852.4si2r001s6099.7100221642.846.746.7150.099.210015900.4si4r001s8081.390.011081844.123.323.35070.585.710082927.5si4r001s6099.2100445399.040.040.0490.193.210050662.5si4r001s40100100486340.753.353.3410.099.710017590.4si4r001s201001001660.083.383.390.01001002190.0si4r005s4089.796.7349964.46.76.7670.088.096.746471.0si6r001s6099.71007973821.063.363.31100.194.510069645.2si6r001s40100100165471.986.786.7440.098.310031.01.0si6r001s201001003520.093.393.3240.01001002660.0Average94.597.63642411.651.251.2890.192.499.742952.45

    Bench nameANT-GMRTS [Sorlin & Solnon 05]GSRISRMvtGSRISRMvtAverage94.597.63642411.692.499.742952.45

  • Test Suite 2: results on multivalent graph matching Problems

    Problem nameANT-GMRTSSimilarity degreeMvtSimilarity degreeMvthom-v20-e600.79530316730.90.798177472.2hom-v30-e900.863512746155.00.865141874.4hom-v40-e1200.885685155477.90.8952480113.7hom-v45-e1350.895717767709.50.9046008540.5hom-v50-e1500.8048476991075.60.9135392247.9Average0.848613307489.80.8753414921.7

  • Further Work: Integrate local search within ANT-GM ACO improves the quality of matchings

    Results obtained by ANT-GM and RTS are rather complementary

    For multivalent graph matching, ANT-GM is outperformed by RTSConclusion

  • ANT Algorithm for the Graph Matching ProblemOlfa Sammoud, Christine Solnon & Khaled GhdiraFifth European Conference on Evolutionary Computation of Combinatorial Optimization Problems: EvoCOP 2005

    nnnnnn