Problems with Networks

Problems with Networks
AMA presentation 18/08/2012
A graph is a collection of vertices (nodes) with edges between them. A network is a graph with
positive weights assigned to the edges. (Note that various books use widely varying terminology).
Sources of Real Data
Good sources of data for networks





Driving times, driving distances from maps.google.co.nz or similar
Walking times within a school or neighbourhood
Air travel times, distances, (costs?) between some cities
Local street maps
Floor plans (rooms are nodes, doors are edges)
Connectedness
If there is a path between every pair of vertices we say a graph is connected. Although this is easy
to “see” for small graphs, it isn’t a trivial problem, and is a good place to start.
Traversability
(Distances between nodes are not required for this problem.)
Is it possible to move from room to room, using every door exactly once?
If all rooms have an even number of doors, and the rooms are connected, then yes, and you will end
where you started.
If two rooms have an odd number of doors, and the rooms are connected, then yes, starting at one
‘odd’ room and ending at the other ‘odd’ room.
Otherwise, it isn’t possible.
Euler path – Fleury’s algorithm (on Wikipedia).
Minimum Spanning Tree
Which roads should be maintained to connect the towns? Which streets should have lighting?
Either: Add edges to a spanning tree, from smallest to largest, without creating cycles.
Or: delete edges from the network, from largest to smallest, without disconnecting the network.
The order the edges are added/deleted from the network should be shown in working.
Prim’s, Kruskal’s, Reverse-Delete algorithms (on Wikipedia).
Shortest Path
What is the best way to drive from Auckland to Taupo?
Starting at Auckland, construct shortest paths by labelling other nodes with the shortest path to that
node.
It is very important to show the working that builds to the shortest path construction.
Dijkstra’s algorithm (on Wikipedia).
Deeper Questions







Why does the network not contain all possible edges? (E.g. no distance shown from Taupo
to Hastings).
How would the minimum spanning tree change if:
o The road between Tokoroa and Taupo was removed?
o A road was added between Taupo and Gisborne?
o Te Kuiti was added as a node on the Te Awamutu-New Plymouth road?
o The network no longer included Whakatane?
o What can we say about how the minimum spanning tree would change for
unspecified additions/removals?
How would the shortest paths from Hamilton change if:
o The road between Tauranga and Hamilton was removed?
o A road was added between Taupo and Gisborne?
o Wairoa was added as a node on the Napier-Gisborne road?
o The network no longer included Whakatane?
o What can we say about how the shortest paths would change for unspecified
additions/removals?
Which nodes could be removed from the network to make it traversable?
How ‘close to’ traversable is the network? All but one edge? Two edges?
Which roads could be added to (or removed from) the network to make it traversable?
If a single node can be removed from a network to make it traversable, what does the
network look like?
Some notes




A tree with N nodes has N–1edges.
A graph has an even number of ‘odd’ vertices.
Networks are not particularly interesting if they are ‘nearly’ trees or ‘nearly’ cycles.
Networks need not be planar (drawn without edges crossing) but often are.
Eight to ten nodes make a sufficiently interesting network; too many more nodes become laborious
and time-consuming to deal with; also, there is a lot of data to collect for all those edges.
With N nodes, around 2(N–1) edges is about right.
Email me: [email protected]