This document discusses the history and key concepts of graph theory. It begins by describing how Leonhard Euler established the foundations of the field with his solving of the Seven Bridges of Königsberg problem in 1736. Some important graph concepts introduced include vertices, edges, complete graphs, directed graphs, tournaments, Euler paths and circuits, and Hamiltonian circuits. The Chinese Postman problem is also briefly described. Key terms like node, circuit, and edge are then defined based on their Latin and English word origins.
1. Special Graph Problems
The subject we now call graph theory, and perhaps the wider
topic of topology, was founded on the work of Leonhard Euler,
and a single famous problem called the Seven Bridges problem. Probably the first paper
on graph theory was by Euler. In 1736 he wrote Solutio problematis ad geometriam situs
pertinentis, Commetarii Academiae Scientiarum Imperialis Petropolitanae which
translates into English as "The solution of a problem relating to the geometry of
position." Euler was one of the first to expand geometry into problems that were
independent of measurement. In the paper Euler discusses what was then a trendy local
topic, whether or not it is possible to stroll around Konigsberg (now called Kaliningrad)
crossing each of its bridges across the Pregel River exactly once. Euler generalized the
problem and gave conditions which would solve any such stroll. You can see a map of
the actual seven bridges of Konigsberg at this site at St. Andrews Univ.
A graph is a mathematical object with two types of elements, vertices (sometimes
called nodes, see below) and edges. Think of vertices as points and edges as lines
connecting some of the points to one another. You can think of the WWW as a graph.
Each computer is a vertex, and the edges are all the phone lines connecting them. Here
is a simple example, a quadrilateral drawn with edges connecting every possible pair of
points. Such a graph is called a complete 4-graph and is one of a group of similar graphs
of n vertices called compete n-graphs. A complete graph is a graph in which every vertex
is connected to every other vertex. The complete graph with four vertices is called k4. The
complete graph with three vertices, k3, is a triangle. Mathworld has illustrations of k2
through k7. A complete graph with n vertices, kn, has exactly n(n-1)/2 edges. In the recent
past the term universal graph was used for what we now call a complete graph.
Sometimes we want a graph to indicate that we can only move between two nodes in one
direction. To do this the edge segment is replaced with an arrow from one vertex to the
other indicating the acceptable direction of travel. These graphs are called directed
graphs or di-graphs. An example of a digraph is shown here.
A special type of complete directed graph that has a single directed graph between each
pair of vertices is called a tournament graph or a complete oriented graph.
Illustrations of such graphs are here.
Two points are called adjacent if there is an edge connecting them.
Euler path and circuit. If it is possible to start at a vertex and move along each
path so as to pass along each edge without going over any of them more than once the
graph has an Euler path. If the path ends at the same vertex at which you started it is
called an Euler circuit. Some nice problems, explanations, and illustrations are shown at
2. Isaac Reed's wonderful web site. Even some very simple graphs like the one above do
not have an Euler path (try it). The reason can be found at the web site just mentioned.
It is interesting that Euler never published an algorithm for finding an Euler circuit, but
only provided a method of determining if one existed or not. In a note from Ed Sandifer
he states, "In his paper on the Konigsberg Bridge Problem, all he says about finding such
paths is that if you remove all double edges, then it will be easy to find a solution." For a
translation of Euler's original paper and a history of the problem see [N. L. Biggs, E. K.
Lloyd, and R. J. Wilson. Graph Theory 1736-1936. Clarendon Press, Oxford, 1976 ]. The
most common algorithm I have found is credited to a mostly unknown French
mathematician named Fleury which appeared in Fleury, Deux problemes de geometrie de
situation, Journal de mathematiques elementaires 1883, 257-261. Here is an explanation
of Fleury's algorithm.
Hamiltonian Circuit a Hamiltonian circuit, named for Irish mathematician Sir
William Rowan Hamilton, is a circuit (a path that ends where it starts) that visits each
vertex once without touching any vertex more than once. There may be more than one
Hamilton path for a graph, and then we often wish to solve for the shortest such path.
This is often referred to as a traveling salesman or postman problem. Every complete
graph (n>2) has a Hamilton circuit.
Notice that for an Euler path you may visit each vertex more than once and in a Hamilton
path it is not necessary to travel every edge.
In 1962, Chinese mathematician M K Kwan (meigu Guan) posted work on a type of
problem that came to be called the Chinese postman problem. If a circuit does not have
an Euler circuit, it asks for the shortest circuit that covers each path, even if some edges
have to be traversed more than once. At this page from the NIST site I found that Kwan's
"article referred to optimizing a postman's route, was written by a Chinese author and
appeared in a Chinese math journal. Based on this Alan Goldman suggested the name
"Chinese Postman problem" to Jack Edmonds when Edmonds was in Goldman's
Operations Research group at the U.S. National Bureau of Standards (now NIST).
Edmonds appreciated its "catchiness" and adopted it. Goldman was also indirectly
influenced by recalling an Ellery Queen mystery called "The Chinese Orange Mystery".
(Alan Goldman, personal communication, 14 December 2003) "
The term node is from the Latin nodus and is closely related to our words for knot and
knob. The word circuit is from circumire, "to go around", which shares the common
Latin root for circle, and led to the common English word circuitous.
The word edge is also used to describe the lines joining the vertices of a polygon or
polyhedron. It is drawn from a true English word for the sharpened surface of a sword or
spear. It was originally pronouced with a "k" sound in place of the d, something perhaps
like "ekge" and is probaly related to the word acute through the German.