Graphs, relations and matrices

advertisement
Graphs, relations
and matrices
Section 7.4
Overview
Graph structures are valuable because
they can represent relationships
among pairs of objects, and they
remain simple in structure even when
the number of objects is large. In
application problems, it becomes
important to use a computer to
analyze graph properties, so we need
a representation of a graph that a
computer can understand.
One representation for a
graph
Example
Practice Problem 1
Write the adjacency matrices of each of the following graphs. Make clear
which vertex corresponds to which row/column. In each graph, what is
the value of M12? Of M34? Of M21?
Directed Graphs
Note that all of our examples involve
“symmetric” matrices because the
number in Mab and Mba must be the
same for any graph. However, in
some applications, this is not the
case.
Directed Graphs



A directed graph, like a graph, consists of a set V of vertices and
a set E of edges. Each edge is associated with an ordered pair of
vertices called its endpoints. In other words, a directed graph is
the same as a graph, but the edges are described as ordered
pairs rather than unordered pairs.
If the endpoints for edge e are a and b in that order, we say e is
an edge from a to b, and in the diagram we draw the edge as a
straight or curved arrow from a to b.
For a directed graph, we use (a, b) rather than [a, b] to indicate
an edge from a to b. This emphasizes that the edge is an
ordered pair, by using the usual notation for ordered pairs.
More definitions and terms

A walk in a directed graph is a sequence v1e1v2e2 . . .
vnenvn+1 of alternating vertices and edges that begins
and ends with a vertex, and where each edge in the
list lies between its endpoints in the proper order. If
there is no chance of confusion, we omit the edges
when we describe a walk.

The adjacency matrix for a directed graph with vertices
{v1, v2, . . . , vn} is the n × n matrix where Mij (the entry
in row i , column j) is the number of edges from vertex
vi to vertex vj.
Example
Consider a two-player game where
there is a single pile of 10 stones and
each player may remove one or two
stones at a time on his or her turn. If
we use a node for each state of the
game and an edge to denote a move,
we get the directed graph below:
Questions
1.
2.
Why is it important to use a directed graph
in modeling this game?
Find the adjacency matrix for this directed
graph.
Matrix arithmetic
Matrices can be multiplied and added
using some standard mathematical
rules. The surprising thing is that
these standard operations, when
applied to the adjacency matrix of a
graph, have a real interpretation in
terms of the graph properties we
already know.
What does M2 represent?
Given the adjacency matrix M for a directed
graph G, the arithmetic operation M × M has
an interpretation in G. Let’s see if we can
figure out what it is in this example.
Matrix multiplication
To compute the (2,3)-entry in M2, we multiply Row 2 of M times
Column 3 of M as follows:
Matrix multiplication
If we complete the multiplication
(every row times every column),
we get the result at the right.
What do these numbers mean
in terms of the original graph?
Interpretation of Mk
Theorem. Let M be the adjacency matrix
of a directed graph G with vertex set
{1, 2, 3, . . . , n}. The row i, column j
entry of Mk counts the number of kstep walks from node i to node j in the
graph G.
Interpretation of the sum
M + M2 + … + Mk
We find the sum of two matrices by adding
entries in the same position. This gives us
the following extension of our theorem.
Corollary. Let M be the adjacency matrix of
a directed graph G with vertex set
{1, 2, 3, . . . , n}. The row i, column j entry
of M + M2 + … + Mk counts the number of
walks from node i to node j in the graph G
of length k or less.
Example
Connection to Relations
Note that a directed graph looks exactly
the same as a one-set arrow diagram
for a relation R on a set A. This is no
coincidence!!
Binary Relations, Directed Graphs,
and Adjacency Matrices
For a relation R on the set
A = {1, 2, 3, . . . , n}, the following statements
are equivalent for all a, b  A:
 (a, b)  R (which we write sometimes as aRb).
 There is a directed edge from node a to node
b in the graph of R.
 There is a 1 in the row a, column b entry of the
adjacency matrix for R.
Examples
Solutions
Boolean Operations and
Composition of Relations
We can find a connection between matrix
arithmetic and composition of relations
as long as we use “Boolean arithmetic”
in our computations:
Boolean matrix multiplication
In this example, we multiply A × A in the same way
as before, except we use the Boolean addition
and multiplication among the entries. To
distinguish this from A2, we denote this A(2). Try
it before checking the next slide for the answer!
Boolean matrix multiplication
Take a moment to find
the composition
R ◦ R, and write the
adjacency matrix for
this new relation.
Compare to A(2)!
Composition and Boolean
matrix multiplication
Theorem. If R is a binary relation on a set
A with adjacency matrix M, then the
matrix M(2) is the adjacency matrix for the
relation R ◦ R on the set A.
Download