• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Baocaoseminar2012
 

Baocaoseminar2012

on

  • 1,590 views

 

Statistics

Views

Total Views
1,590
Views on SlideShare
549
Embed Views
1,041

Actions

Likes
1
Downloads
4
Comments
0

3 Embeds 1,041

http://tuongphuongtn.wordpress.com 1038
http://webcache.googleusercontent.com 2
http://ww35.tuongphuongtn.wordpress.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Baocaoseminar2012 Baocaoseminar2012 Presentation Transcript

    • Introduction Algorithms Application Conclusion The Maximum Clique Problem Dam Thanh Phuong, Ngo Manh Tuong November, 2012Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionMotivation How to put as much left-over stuff as possible in a tasty meal before everything will go off? Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionMotivation Find the largest collection of food where everything goes together! Here, we have the choice: Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionMotivation Find the largest collection of food where everything goes together! Here, we have the choice: Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionMotivation Find the largest collection of food where everything goes together! Here, we have the choice: Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionMotivation Find the largest collection of food where everything goes together! Here, we have the choice: Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionOutline 1 Introduction 2 Algorithms 3 Applications 4 Conclusion Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionGraph (G): a network of vertices (V(G)) and edges (E(G)).Graph Complement (G ): the graph with the same vertex setof G but whose edge set consists of the edges not present in G.Complete Graph: every pair of vertices is connected by anedge.A Clique in an undirected graph G=(V,E) is a subset of thevertex set C ⊆ V ,such that for every two vertices in C, thereexists an edge connecting the two. Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionDam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionMaximum Clique: A Clique of the largest possible size in agiven graph. The clique number, ω (G ), is the cardinality ofthe maximum clique.Maximal Clique: A Clique that cannot be extended byincluding one more adjacent vertex.Independent Set: a subset of the vertices such that no twovertices in the subset are connected by an edge of G.Vertex cover: a subset of the vertices of G which contains atleast one of the two endpoints of each edge. Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionDam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionMaximum Clique Problem Does there exist an integer k such that G contains an clique of cardinality k? What is the clique in G with maximum cardinality? What is the clique number of G? Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionEquivalent Problems Maximum Independent Set Problem in G Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionEquivalent Problems Minimum Vertex Cover Problem in G Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-Bound NP-hardA problem is NP-hard if solving it in polynomial time wouldmake it possible to solve all problems in the class of NPproblems in polynomial time.All 3 versions of the Maximum Clique problem are known tobe NP-hard for general graphs. Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundNP : the class of decision problem which can be solved by anon-deterministic polynomial algorithm.P: the class of problems which can be solved by adeterministic polynomial algorithm.NP-hard: the class of problems to which every NP problemreduces.NP-complete (NPC): the class of problems which are NP-hardand belong to NP. Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-Bound Method to Solve Maximum Clique ProblemNon polynomial-time algorithms.Polynomial-time algorithms providing approximate solutions.Polynomial-time algorithms providing exact solutions tographs of special classes.Two effective algorithms for dealing with NP-completeProblems: backtracking, branch and bound Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundIntroduction Bron Kerbosch Algorithm The Algorithm was Designed and Published in 1973 by the Dutch scientists Joep Kerbosch and Coenradd Bron. Bron Kerbosch Algorithm is for Finding the Maximal Cliques in undirected graph. It is known to be one of the most efficient algorithm which uses recursive backtracking to find Cliques is practically proven. The Bron Kerbosch Algorithm uses the vertex in graph and its neighbour with few functions to generate some effective results. Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundWithout Pivoting Strategy BronKerbosch(R, P, X ) if {P = X = ∅} Report R as the Maximal Clique for each vertex v in P BronKerbosch(R ∪ {v } , P ∩ N {v } , X ∩ N {v }) P := P {v } X := X ∪ {v } Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundWith Pivoting Strategy BronKerbosch(R, P, X ) if {P = X = ∅} Report R as the Maximal Clique Choose Pivot Vertex u in P ∪ X for each vertex v in P BronKerbosch(R ∪ {v } , P ∩ N {v } , X ∩ N {v }) P := P {v } X := X ∪ {v } Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundExample Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundR = X = ∅, P = (1, 2, 3, 4, 5, 6)Choosing the pivot element u as 4.4 in PN(v ) = (1, 2, 3, 4, 5, 6) (1, 2, 3, 5, 6) = 4 in 4Finds the values of Rnew , Pnew , XnewPnew = P ∩ N (v ); Rnew = R ∪ v ; Xnew = X ∩ N (v )Rnew = 4; Pnew = (1, 2, 3, 5, 6) ; Xnew = ∅BronKerbosch(4,(1,2,3,5,6),∅)BronKerbosch((4,1),(2,3),∅)BronKerbosch((4,1,2),∅,∅)Report (4,1,2) as one of the Maximal Clique Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-Bound BronKerbosch(4,(1,2,3,5,6),∅)BronKerbosch((4,3),(1),∅)BronKerbosch((4,3,1),∅,∅)Report (4,3,1) as one of the other Maximal Clique. BronKerbosch(4,(1,2,3,5,6),∅)BronKerbosch((4,2),(1,5),∅)BronKerbosch((4,2,5),∅,∅)Report (4,2,5) as an other Maximal Clique. BronKerbosch(4,(1,2,3,5,6),∅)BronKerbosch((4,6),∅,∅)Report (4,6) as the Maximal Clique. Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundThis backtracking algorithm is a method for finding all thesub sets in an undirected graph G.Given a graph G with V vertices and E edges, G=(V,E)Let us take an integer variable k.This algorithm is used in scientific and engineeringapplications.This algorithm is a Depth First Search algorithm.The algorithm for finding k-clique in an undirected graph is aNP-complete problem. Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundExample Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundDam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundDam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundList out all the possibilities in the subgraph and check for eachand every edge.Check for a subgraph in which every node is connected toevery other node.Check for all possible Cliques in the graphs.Check the size of clique whether it is equal to k or not. Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-BoundAny n-vertex graph has at most 3n/3 Maximal CliquesThe worst-case running time of the BronKerbosch algorithm(with a pivot strategy that minimizes the number of recursivecalls made at each step) is O(3n/3 )This Backtracking algorithm runs in polynomial time if size ofk is fixed. If k is varying then it is in exponencial timeRunning time of the algorithm is O (nk), where k = O(log n) Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Bron Kerbosch Algorithm Algorithms Backtracking Algorithm Application Time Complexity Conclusion Brand-and-Bound n f (x) = − xi → min i=1 xi + xj ≤ 1, ∀ (i, j) ∈ E x ∈ {0, 1}n f (x) = x T Ax → min x ∈ {0, 1}n , whereA = AG − IDam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionSchedulingCoding Theory: Hamming and Johnson GraphsMap LabelingComputer Vision and Pattern Recognition Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionProblem: finding maximum cliques of a graph efficientlyHard task (in terms of memory and runtime)Bron-Kerbosch algorithm is one efficient solutionSeveral applications Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application ConclusionReferences 1. D.-Z. Du and P.M.Pardalos ”Handbook of Combinatorial Optimization”. Kluwer Academic Publishers, 1999 2. http : //en.wikipedia.org/wiki/Clique - problem. Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem
    • Introduction Algorithms Application Conclusion Thank you for your attention!Dam Thanh Phuong, Ngo Manh Tuong The Maximum Clique Problem