Finding a Heaviest Triangle is not Harder than Matrix Multiplication Artur Czumaj & Andrzej Lingas.

Slides:



Advertisements
Similar presentations
Algorithms (and Datastructures) Lecture 3 MAS 714 part 2 Hartmut Klauck.
Advertisements

NP-Hard Nattee Niparnan.
Epp, section 10.? CS 202 Aaron Bloomfield
Single Source Shortest Paths
C&O 355 Lecture 23 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
1 NP-completeness Lecture 2: Jan P The class of problems that can be solved in polynomial time. e.g. gcd, shortest path, prime, etc. There are many.
Private Approximation of Search Problems Amos Beimel Paz Carmi Kobbi Nissim Enav Weinreb Ben Gurion University Research partially Supported by the Frankel.
Some Graph Problems. LINIAL’S CONJECTURE Backgound: In a partially ordered set we have Dilworth’s Theorem; The largest size of an independent set (completely.
ALGORITHMS THIRD YEAR BANHA UNIVERSITY FACULTY OF COMPUTERS AND INFORMATIC Lecture eight Dr. Hamdy M. Mousa.
Lecture 17 Path Algebra Matrix multiplication of adjacency matrices of directed graphs give important information about the graphs. Manipulating these.
1 Finding the smallest H-subgraph in real weighted graphs and related problems Raphael Yuster University of Haifa Joint work with: Virginia Vassilevska,
Online Social Networks and Media. Graph partitioning The general problem – Input: a graph G=(V,E) edge (u,v) denotes similarity between u and v weighted.
Approximation Algorithms Chapter 5: k-center. Overview n Main issue: Parametric pruning –Technique for approximation algorithms n 2-approx. algorithm.
 Graph Graph  Types of Graphs Types of Graphs  Data Structures to Store Graphs Data Structures to Store Graphs  Graph Definitions Graph Definitions.
Noga Alon Institute for Advanced Study and Tel Aviv University
Optimization of Pearl’s Method of Conditioning and Greedy-Like Approximation Algorithm for the Vertex Feedback Set Problem Authors: Ann Becker and Dan.
CSL758 Instructors: Naveen Garg Kavitha Telikepalli Scribe: Manish Singh Vaibhav Rastogi February 7 & 11, 2008.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
Graph Clustering. Why graph clustering is useful? Distance matrices are graphs  as useful as any other clustering Identification of communities in social.
All Pairs Shortest Paths and Floyd-Warshall Algorithm CLRS 25.2
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
Shortest Paths Definitions Single Source Algorithms
SubSea: An Efficient Heuristic Algorithm for Subgraph Isomorphism Vladimir Lipets Ben-Gurion University of the Negev Joint work with Prof. Ehud Gudes.
Data Structures, Spring 2004 © L. Joskowicz 1 Data Structures – LECTURE 16 All shortest paths algorithms Properties of all shortest paths Simple algorithm:
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
All-Pairs Shortest Paths
The Shortest Path Problem
The Fundamentals: Algorithms, the Integers & Matrices.
1 Shortest Path Calculations in Graphs Prof. S. M. Lee Department of Computer Science.
Data Structures Using C++ 2E
Approximating the MST Weight in Sublinear Time Bernard Chazelle (Princeton) Ronitt Rubinfeld (NEC) Luca Trevisan (U.C. Berkeley)
Minimal Spanning Trees What is a minimal spanning tree (MST) and how to find one.
Chapter 3: The Fundamentals: Algorithms, the Integers, and Matrices
All-Pairs Bottleneck Paths in Vertex Weighted graphs Asaf Shapira Microsoft Research Raphael Yuster University of Haifa Uri Zwick Tel-Aviv University.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
A Clustering Algorithm based on Graph Connectivity Balakrishna Thiagarajan Computer Science and Engineering State University of New York at Buffalo.
Distance sensitivity oracles in weighted directed graphs Raphael Yuster University of Haifa Joint work with Oren Weimann Weizmann inst.
1 Closures of Relations: Transitive Closure and Partitions Sections 8.4 and 8.5.
Flows in Planar Graphs Hadi Mahzarnia. Outline O Introduction O Planar single commodity flow O Multicommodity flows for C 1 O Feasibility O Algorithm.
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
NP-Complete problems.
Introduction to Algorithms All-Pairs Shortest Paths My T. UF.
Chapter 20: Graphs. Objectives In this chapter, you will: – Learn about graphs – Become familiar with the basic terminology of graph theory – Discover.
1 Assignment #3 is posted: Due Thursday Nov. 15 at the beginning of class. Make sure you are also working on your projects. Come see me if you are unsure.
Network Partition –Finding modules of the network. Graph Clustering –Partition graphs according to the connectivity. –Nodes within a cluster is highly.
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. Fast.
1 Closures of Relations Based on Aaron Bloomfield Modified by Longin Jan Latecki Rosen, Section 8.4.
1 Euler and Hamilton paths Jorge A. Cobb The University of Texas at Dallas.
Section Recursion 2  Recursion – defining an object (or function, algorithm, etc.) in terms of itself.  Recursion can be used to define sequences.
1 Graph theory Outline A graph is an abstract data type for storing adjacency relations –We start with definitions: Vertices, edges, degree and sub-graphs.
All-pairs Shortest paths Transitive Closure
Aaron Bloomfield CS 202 Rosen, section 7.4
Euler Paths and Circuits
Enumerating Distances Using Spanners of Bounded Degree
Parameterised Complexity
Paul Beame in lieu of Richard Anderson
CS 583 Analysis of Algorithms
Connectivity Section 10.4.
Shortest Path Algorithms
Walks, Paths, and Circuits
Shortest Path Algorithms
Problem Solving 4.
Minimum Spanning Tree Algorithms
Richard Anderson Autumn 2016 Lecture 7
All pairs shortest path problem
Richard Anderson Winter 2019 Lecture 7
The Greedy Approach Young CS 530 Adv. Algo. Greedy.
Richard Anderson Autumn 2015 Lecture 7
Closures of Relations Epp, section 10.1,10.2 CS 202.
Presentation transcript:

Finding a Heaviest Triangle is not Harder than Matrix Multiplication Artur Czumaj & Andrzej Lingas

overview The problem Previous solutions New solution –Idea –Flow –Proof Consequences & improvements Summary of results

The Problem Finding a fixed subgraph Finding a triangle - shortest path Known to be no more than matrix multiplication Rectangular matrix mult is O(n^w), w< So: Finding a heaviest triangle

Previous solutions V. Vassilevska and R. Williams. Finding a maximum weight triangle in n 3−δ time, with applications. Proc. 38th Annual ACM Symposium on Theory of Computing (STOC’06), pp. 225–231, [12] V. Vassilevska, R. Williams, R. Yuster. Finding the smallest H-subgraph in real weighted graphs and related problems. To appear in Proc. 33rd International Colloquium on Automata, Languages and Programming (ICALP’06), [13] Maximum witness of Boolean matrix product

appetizer

New solution (HT) – idea Based on triangles having three vertices Generate set of where triangles might be found “potentials” – not set of triangles Cut down set Recursion – set is hierarchically defined Start with set of n^3 potential triangles At each step reduce to O(ξ2) sets of (n/ξ)3 triplets

HT – flow - definition procedure HTξ(G, I,K, J) Input: A graph G = (V,E) with vertex weights (G is given as adjacency matrix) vertices are numbered in non-decreasing weight order from 1 to n subintervals I, K, and J of [1,..., n], of the same length κ assumed to be a power of ξ Output: Maximum-weight triangle (i, j, k), if any, such that i ∈ I, j ∈ J, and k ∈ K

Flow - outline If set is of size 1 and it has a triangle, return it Break down intervals into sections Generate matrixes indicating paths between intervals Find triplets of interval sections which are interconnected Prune set of triplets Recursion on all triplets of interval sections

Flow detail 1 – stopping condition and definitions if κ = 1 then if (i0 + 1, j0 + 1, k0 + 1) is a (non- degenerate) triangle in G then return (i0 + 1, j0 + 1, k0 + 1); stop let i0, j0, and k0 be such that I = [i0 + 1, i0 + κ], K = [k0 + 1, k0 + κ], and J = [j0 + 1, j0 + κ] ℓ = κ/ξ

Flow detail 2 - generate path indication matrices

Flow detail 3 – find triplets of sections

Flow detail 4 – prune set

Flow detail 5 - recursion

HT – Proof of correctness All triangles potentials are added in Only subsumed triangle potentials are removed Note vertex numbering

HT proof of time Define chains Dilworth’s lemma –Largest antichain includes one element from each chain

HT proof of time - cont

HT proof of time cont 2

Consequences – sparse matrixes Sparse matrixes – m is small Can split into two parts, one as above, one m- bound Choose clever splitting point

Consequences - Kh clique How about finding a maximum subgrapgh of more than 3 vertexes? Insight – can make a hierarchy with a new graph where we look fro triangle, and where each vertex is a third of the clique we are looking for What to do when not a multiple of 3

Consequences - more Instead of triangle or general sets of linked vertexes, relate to particular connection patterns – isomorphic graphs Can use fast rectangular matrix multiplication

Consequences – results summary