+Graphs

Intro

Graph G=(V,E)
E annotated with weights. If G unweighted, all weights are 1.

Vertex properties

Degree of v: deg(i)=jei,j. Neighbors of v: Γ(v).

Measure size of A{V}: |A| or vol(A)=iAdeg(i).

Associated objects

Special vertex sets

Node cover of G=(V,E): subset of V which touches all e in E.

Proper vertex coloring; chromatic number.

Independent set of verteces: don’t share edge: a clique in G¯.

Walks

A sequence of edges (ei) such that ei shares an end-point with ei+1.

A walk may have a cycle. If it does not have a cycle, you have a path.

Also see random walks.

Alternating walks are defined and studied in combinatorial optimization problems over graphs; in these sequences even and odd edges are colored differently.

Cut

k-way cut: cut((Vi)) is a partitioning of V into k parts. Cutsets is a set of edges which, when removed from G, divides V into k partitions.

Weight of a cut

Weight of a cut is the sum of weights of edges in the cutset.

Minimum 2-way cut is a cut with the minimum weight. This is useful in partitioning nodes in a graph.

Subgraphs

A general subgraph: G’=(V’, E’). Subgraph induced by A{V}. Connected components of a graph. Clique: a complete subgraph.

Spanning trees

Spannning tree. MST spanning a certain node set N: Aka Steiner tree. MST spanning with support over node set N: Aka Group Steiner tree.

Subtypes

Multigraphs: multiple edges allowed.

Tree

G sans cycle. Forest F: set of trees.

Biconnected graph

2 paths between any node pair.

Based on degree

d-regular G: v:|N(v)|=d. Complete graph Kn.

Perfect graph G

Chromatic number = size of the largest clique in G.

A graph is perfect iff its complement is perfect.

Bipartite graph

E = cutset. Complete bipartite graph: All v in A has edge to all u in B. Complete bipartite graph Ki,j. Can have A vs B adj matrix M. Thence get usual adj matrix for G: [0M\MT0].

Chordal graph G

Aka triangulated graph. Every cycle in G has a chord. G has a junction tree iff it is chordal.

Planar graphs

(Kuratowski) G planar iff K5 and K3,3 are in G.

Directred graph, networks

Digraph or directed graph. Networks: digraph with edge weights.

Directed acyclic graphs (DAG)

Very useful in designing algorithms: can do recursion easily.

Topological numbering t of nodes

Number nodes so that if there is a path from u to v, then p(u)<p(v). Cyclic graphs don’t have a topological numbering.

Singly connected directed graph

Useful in probabilistic graphical models.

A tree underlies the graph: only 1 undirected path between any node pair.

Generalizations

Hypergraphs

Edges connect k-sets of verices, not just pairs.

Properties

Hop plot

For h, let g(h) be number of node pairs with path h. Hop plot plots this.

Diameter

Diameter of G. q effective diameter: q fraction of V×V have path length d.

Single source (s) shortest paths

Consider a weighted graph with weight e(a,b) between two nodes. Suppose that you want to find the shortest path to every vertex vV from s.

One can use a bottom-up programming approach. (Dijkstra) Start with current node c=s. Initially set d(s)=0 and, vs:d(v)=.

Define f(c): For every vΓ(c), do the update: dt+1(v):=min(dt(c)+e(c,v),dt(v)). Also, simultaneously update the ‘backpointer’ to point to c (representing the optimal subsolution) if necessary.

Do f(c)vs .

Time: O(n2) in case of a complete graph.

Associated matreces

Edge incidence matrix J (m×n); for weighted G: edge ei,j terminii (i, j) are marked ±ei,j.

Vertex incidence/ adjacency matrix W: presence of edge ei,j indicated by weight at Wi,j,Wj,i.

Connectivity matrix A.

Degree matrix: D = diag(deg(i)).

Graph Laplacian of no-self-loop undirected graph

L = (D-W). L=JJT. As L is |V||V|, it is an operator on the functions with domain V.

+ve semidefiniteness

L is symmetric, +ve semidefinite: xTLx=xTJJTx. So λ0.

Smoothness of vectors from quadratic form

xTLx=xTDxxTWx=i,jWi,j(xi2xjxi)=21i,jWi,j(xixj)2=ei,jEei,j(xixj)2. This is a measure of the degree of oscillations/ smoothness among x, where edges occur.

Eigenvectors

L1=01,λ1(L)=0; so L singular.

If G has c connected components: λ1=..λc=0: construct ev with 1 in the appropriate spots!

Smoothness of ev

Take ev x. Then xTLx=ei,jEei,j(xixj)2 measures smoothness of x where edges occur in the graph. But, ew are stationary points of R(x)=xTLx/(xTx). So, ev corresponding to lower ew tend to be smoother.

Smoothening functions

Consider the subspace spanned by the p bottom (smooth) ev. Any function on V, ie a |V|-dim vector can be projected on to this subspace in order to smoothen it according to the graph structure. Labelling of nodes is an example of such a function.

Applications

This property is useful when using ev x for classification of nodes - one doesn’t want neighboring nodes to have disparate values in x. This is useful in both spectral clustering and label propogation in semisupervised learning.

Normalized graph Laplacian

Take N=ID1/2WD1/2 : this is the normalized version, D1/2LD1/2 of L, using the normalized adjacency matrix D1/2WD1/2.

N0 as L0, ie xTDxxTWx0x: taking D1/2x=y, see that y:yTNy0.

Normalized adjacency matrix has norm 1.

As yTyyTD1/2WD1/2y 0\(,seethat\)1D1/2WD1/22\(;Also,using\)y=D1/21, get \ D1/2WD1/22=1.

Another way to see this: D1/2WD1/2 is obtained by a similarity transformation to D1W, which has ew in the range [-1, 1] due to Gerschgorin thm, and which has σmax=|λmax|=1 using the ev 1.

Quadratic form: Normalized smoothness measure

yTNy=yTD1/2LD1/2y= (i,j)EWij(yidiiyjdjj)2\(:fromtheform\)xTLx\(beingasmoothnessmeasure.Punishesdeviationbetween\){yi} corresponding to edges emanating from high degree vertices less.

Expanders

A sparse graph with high connectivity properties. Connectivity quantified as edge expansion or vertex expansion. Let E(S): edges with exactly one end point in S.

Edge expansion of G

Aka isoparametric number. \ h(G)=min1|S|n/2|E(S)||S|.

α vertex expansion of G

gα(G)=min1|S|nα|Γ(S)||S|.

Other Examples

Most graphs are expanders. Kn has good expansion properties, but it is not sparse.

Random graphs

Common Varieties: Gn,p,Gn,|E|

G(n,p)

A static model: every edge is present or absent independent of other edges. p controls edge density. As ndiam(G)2. Size of the largest cluster is O(logn).