Part I: Introductory Materials Introduction to Graph Theory

Similar documents
Complexity Classes P and NP

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

The Classes P and NP. mohamed@elwakil.net

1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification)

NP-Completeness. CptS 223 Advanced Data Structures. Larry Holder School of Electrical Engineering and Computer Science Washington State University

Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms

NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

CAD Algorithms. P and NP

On the Relationship between Classes P and NP

V. Adamchik 1. Graph Theory. Victor Adamchik. Fall of 2005

1 Definitions. Supplementary Material for: Digraphs. Concept graphs

Why? A central concept in Computer Science. Algorithms are ubiquitous.

Lecture 7: NP-Complete Problems

Analysis of Algorithms, I

A Fast Algorithm For Finding Hamilton Cycles

Social Media Mining. Graph Essentials

2. (a) Explain the strassen s matrix multiplication. (b) Write deletion algorithm, of Binary search tree. [8+8]

Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs

Practical Graph Mining with R. 5. Link Analysis

One last point: we started off this book by introducing another famously hard search problem:

Part 2: Community Detection

Introduction to Logic in Computer Science: Autumn 2006

CIS 700: algorithms for Big Data

Attacking Anonymized Social Network

Introduction to Algorithms. Part 3: P, NP Hard Problems

On the k-path cover problem for cacti

Community Detection Proseminar - Elementary Data Mining Techniques by Simon Grätzer

Scheduling Shop Scheduling. Tim Nieberg

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Graph/Network Visualization

CSC2420 Spring 2015: Lecture 3

Mathematics for Algorithm and System Analysis

MATHEMATICS: CONCEPTS, AND FOUNDATIONS Vol. III - Logic and Computer Science - Phokion G. Kolaitis

Discuss the size of the instance for the minimum spanning tree problem.

Every tree contains a large induced subgraph with all degrees odd

IE 680 Special Topics in Production Systems: Networks, Routing and Logistics*

Computational complexity theory

Heuristic Methods. Part #1. João Luiz Kohl Moreira. Observatório Nacional - MCT COAA. Observatório Nacional - MCT 1 / 14

An Introduction to APGL

Data Structure [Question Bank]

NP-completeness and the real world. NP completeness. NP-completeness and the real world (2) NP-completeness and the real world

P versus NP, and More

Theoretical Computer Science (Bridging Course) Complexity

Reductions & NP-completeness as part of Foundations of Computer Science undergraduate course

A Working Knowledge of Computational Complexity for an Optimizer

Mining Social-Network Graphs

Data Mining Cluster Analysis: Basic Concepts and Algorithms. Lecture Notes for Chapter 8. Introduction to Data Mining

Tree-representation of set families and applications to combinatorial decompositions

Boulder Dash is NP hard

MapReduce Algorithms. Sergei Vassilvitskii. Saturday, August 25, 12

Finding and counting given length cycles

Protein Protein Interaction Networks

Equilibrium computation: Part 1

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction

The Traveling Beams Optical Solutions for Bounded NP-Complete Problems

Outline 2.1 Graph Isomorphism 2.2 Automorphisms and Symmetry 2.3 Subgraphs, part 1

Zachary Monaco Georgia College Olympic Coloring: Go For The Gold

CHOOSING THE BEST HEURISTIC FOR A NP-PROBLEM

How To Find Local Affinity Patterns In Big Data

OHJ-2306 Introduction to Theoretical Computer Science, Fall

Tutorial 8. NP-Complete Problems

Approximation Algorithms

Approximated Distributed Minimum Vertex Cover Algorithms for Bounded Degree Graphs

Cloud Computing is NP-Complete

Introduction to computer science

DATA ANALYSIS II. Matrix Algorithms

Problem Set 7 Solutions

A Performance Comparison of Five Algorithms for Graph Isomorphism

Discrete Mathematics Problems

SPANNING CACTI FOR STRUCTURALLY CONTROLLABLE NETWORKS NGO THI TU ANH NATIONAL UNIVERSITY OF SINGAPORE

USE OF EIGENVALUES AND EIGENVECTORS TO ANALYZE BIPARTIVITY OF NETWORK GRAPHS

Generalized CHR machines

Small Maximal Independent Sets and Faster Exact Graph Coloring

Subgraph Patterns: Network Motifs and Graphlets. Pedro Ribeiro

GRAPH THEORY LECTURE 4: TREES

A 2-factor in which each cycle has long length in claw-free graphs

Welcome to... Problem Analysis and Complexity Theory , 3 VU

Complex Networks Analysis: Clustering Methods

Quantum and Non-deterministic computers facing NP-completeness

Notes on NP Completeness

Chapter Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Guessing Game: NP-Complete?

Social Network Mining

Graph Theory and Complex Networks: An Introduction. Chapter 06: Network analysis

Distributed Computing over Communication Networks: Maximal Independent Set

Polytope Examples (PolyComp Fukuda) Matching Polytope 1

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

Chapter 6: Graph Theory

Exponential time algorithms for graph coloring

Graph Mining and Social Network Analysis

CSC 373: Algorithm Design and Analysis Lecture 16

A number of tasks executing serially or in parallel. Distribute tasks on processors so that minimal execution time is achieved. Optimal distribution

Network/Graph Theory. What is a Network? What is network theory? Graph-based representations. Friendship Network. What makes a problem graph-like?

High-dimensional labeled data analysis with Gabriel graphs

Technology, Kolkata, INDIA,

5. A full binary tree with n leaves contains [A] n nodes. [B] log n 2 nodes. [C] 2n 1 nodes. [D] n 2 nodes.

A Brief Survey on Anonymization Techniques for Privacy Preserving Publishing of Social Network Data

Exact Polynomial-time Algorithm for the Clique Problem and P = NP for Clique Problem

Why Study NP- hardness. NP Hardness/Completeness Overview. P and NP. Scaling 9/3/13. Ron Parr CPS 570. NP hardness is not an AI topic

Transcription:

Part I: Introductory Materials Introduction to Graph Theory Dr. Nagiza F. Samatova Department of Computer Science North Carolina State University and Computer Science and Mathematics Division Oak Ridge National Laboratory

Graphs Graph with 7 nodes and 16 edges Undirected Nodes / Vertices Edges G = ( V, E) V = { v, v,..., v } 1 2 n E = { e = ( v, v ) v, v V, k = 1,..., m} k i j i j Directed ( v, v ) = ( v, v ) i j j i ( v, v ) ( v, v ) i j j i 2

Types of Graphs Undirected vs. Directed Attributed/Labeled (e.g., vertex, edge) vs. Unlabeled Weighted vs. Unweighted General vs. Bipartite (Multipartite) Trees (no cycles) Hypergraphs Simple vs. w/ loops vs. w/ multi-edges 3

Labeled Graphs and Induced Subgraphs Labeled graph w/ loops Bold: A subgraph induced by vertices b, c and d 4

Graph Isomorphism (A) (B) (C) C Which graphs are isomorphic? 5

Graph Automorphism Automorphism is isomorphism that preserves the labels. (A) (B) (C) B Which graphs are automorphic? 6

Vertex degree, in-degree, out-degree tail In-degree of the vertex is the number of in-coming edges head Out-degree of the vertex is the number of out-going edges t h Directed Degree of the vertex is the number of edges (both in- & out-degree) 7

Graph Representation and Formats Adjacency Matrix (vertex vs. vertex) Incidence Matrix (vertex vs. edge) Sparse vs. Dense Matrices DIMACS file format In R: igraph object 8

Adjacency Matrix Representation Representation is NOT unique. Algorithms can be order-sensitive. A(1) B (5) A(2) B (6) B (7) B (8) A(3) A(2) B (7) A(4) A(1) B (6) B (5) B (8) A(3) A(4) Src: Introduction to Data Mining by Kumar et al A(1) A(2) A(3) A(4) B(5) B(6) B(7) B(8) A(1) 1 1 1 0 1 0 0 0 A(2) 1 1 0 1 0 1 0 0 A(3) 1 0 1 1 0 0 1 0 A(4) 0 1 1 1 0 0 0 1 B(5) 1 0 0 0 1 1 1 0 B(6) 0 1 0 0 1 1 0 1 B(7) 0 0 1 0 1 0 1 1 B(8) 0 0 0 1 0 1 1 1 A(1) A(2) A(3) A(4) B(5) B(6) B(7) B(8) A(1) 1 1 0 1 0 1 0 0 A(2) 1 1 1 0 0 0 1 0 A(3) 0 1 1 1 1 0 0 0 A(4) 1 0 1 1 0 0 0 1 B(5) 0 0 1 0 1 0 1 1 B(6) 1 0 0 0 0 1 1 1 B(7) 0 1 0 0 1 1 1 0 B(8) 0 0 0 1 1 1 0 1 9

Families of Graphs Cliques Path and simple path Cycle Tree Connected graphs Read the book chapter for definitions and examples. 10

Complete Graph, or Clique Each pair of vertices is connected. Clique 11

The CLIQUE Problem CLIQUE = { < G, k > G has a clique of size k} Clique: a complete subgraph Maximal Clique: a clique cannot be enlarged by adding any more vertices Maximum Clique: the largest maximal clique in the graph Maximum Clique of Size 5 12

Does this graph contain a 4-clique? Indeed it does! But, if it had not, what evidence would have been needed? 13

Problem: Decision, Optimization or Search Problem Decision Optimization Search Enumeration (self-reduction) Yes - No Parameter k max/min Actual solution All solutions Which problem is harder to solve? If we solve Decision problem, can we use it for the others? Formulate each version for the CLIQUE problem. 14

Refresher: Class P and Class NP Definition: P (NP) is the class of languages/problems that are decidable in polynomial time on a (non-)deterministic single-tape Turing machine. Class P P NP k = U k DTIME( n ) NP = UNTIME( n ) k k non-polynomial???? Nondeterministic polynomial Polynomially verifiable 15

P vs. NP The Classic Complexity Theory View: easy forget about it P NP 2 P PSPACE hard About ten years ago some computer scientists came by and said they heard we have some really cool problems. They showed that the problems are NP-complete and went 16 away!

Classical Graph Theory Problems CSC505:Algorithms, CSC707 :Complexity Theory, CSC5??:Graph Theory Longest Path Maximum Clique Minimum Vertex Cover Hamiltonian Path/Cycle Traveling Salesman (TSP) Maximum Independent Set Minimum Dominating Set Graph/Subgraph Isomorphism Maximum Common Subgraph NP-hard Problems 17

Graph Mining Problems CSC 422/522 and Our Book Many graph mining problems have to deal with classical graph problems as part of its data mining pipeline. Clustering + Maximal Clique Enumeration Classification Association Rule Mining +Frequent Subgraph Mining Anomaly Detection Similarity/Dissimilarity/Distance Measures Graph-based Dimension Reduction Link Analysis 18

Dealing with Computational Intractability Exact Algorithms: Small graph problems Small parameters to graph problems Special classes of graphs (e.g., bounded tree-width) Approximation Polynomial-Time Algorithms (O(n c )) Guaranteed error-bar on the solution Heuristic Polynomial-Time Algorithms No guarantee on the quality of the solution Low degree polynomial solutions Our focus 19