Math in Scheduling

advertisement
Math in Scheduling
BY: MIKE BASHAM,
The Bridges of Konigsberg

In Konigsberg, Germany there was a
river that ran through the city with an
island in the middle of the river. Seven
bridges were built on the river so
people could easily get from one part to
another. The people had wondered
whether or not it was possible to get
around the city in a way that would
allow them to cross each of the seven
bridges only once.
Euler’s Solution

Euler approaches this problem by labeling the sections of land
separated by the water with capital letters. Mathematicians call this
process, “labeling the vertices.” Vertices are the plural form of
vertex, which is a point where two or more straight lines meet. In the
figure shown below, the vertices are labeled by red dots and the
edges are represented by the black lines. Euler solves this problem
by drawing a figure similar to the one below without retracing any
line, and making sure to keep his writing utensil on the paper.
Graph Theory
 Eu l e r u s e s t h is w ay o f t h in k in g t o l ay t h e f o u n d at io n f o r
t h e Gr ap h Th e o r y . Be lo w w e h av e l is t e d t h e t h r e e
d e f in it io n s t h at p r o v e t h at t h e o r y .
DEFINITION: A NETWORK IS A FIGURE MADE UP OF POINTS
(VERTICES) CONNECTED BY NON-INTERSECTING CURVES
(ARCS).
DEFINITION: A VERTEX IS CALLED ODD IF IT HAS AN ODD
N U M B E R O F A R C S L E A D I N G T O I T, O T H E R W I S E I T I S C A L L E D
EVEN.
D E F I N I T I O N : A N E U L E R P AT H I S A C O N T I N U O U S P AT H T H AT P A S S E S
T H R O U G H E V E R Y A R C O N C E A N D O N LY O N C E .
Graph Theory Continued…
Euler also provides these two rules.
 Theorem: If a network has more than two odd vertices,
it does not have an Euler path.
 Theorem: If a network has two or zero odd vertices, it
has at least one Euler path. In particular, if a network
has exactly two odd vertices, then its Euler paths can
only start on one of the odd vertices, and end on the
other.
Circuits
 WHAT IS A CIRCUIT?
 WHAT IS THE DIFFERENCE BETWEEN EULER AND
HAMILTON’S CIRCUITS?
 IS THE KONIGSBERG PROBLEM UNSOLVABLE?
What is a Circuit?
 Circuit- a circuit is a closed, simple path.
 Paths- a path in a graph is a sequence of vertices
such that from each of its vertices there is an edge to
the next vertex in the sequence.
 Edges- An edge is a line segment that joins two
vertices.
 Vertices- A vertex (plural: vertices) is a point
where two or more straight lines meet. Basically it’s
a corner.
Euler’s Circuit
 A Eulerian circuit or Eulerian cycle is a path on a
graph that starts and ends of the same vertex.
 A Eulerian Circuit uses each edge exactly once.
 Leonhard Euler first explored this idea in 1736 with
his Seven Bridges of Konigsberg Problem.
 It is not a Eulerian Circuit unless all of it’s vertices
have an even degree.
Fleury and Hierholzer’s Algorithm
 Leonhard Euler never developed an algorithm for his
mathematical theory however there were two
mathematicians that did.
 Hierholzer established his algorithm first in 1873. It
is said to be the more efficient of the two.
 Fleury developed his algorithm in 1883, and
although it recieves criticism, it is still a method that
works.
Fleury’s Algorithm
 Consider a graph known to have all edges in the
same component and at most two vertices of odd
degree. We start with a vertex of odd degree—if the
graph has none, then start with any vertex. At each
step we move across an edge whose deletion would
not disconnect the graph, unless we have no choice,
then we delete that edge. At the end of the algorithm
there are no edges left, and the sequence of edges we
moved across forms an Eulerian cycle if the graph
has no vertices of odd degree; or an Eulerian trail if
there are exactly two vertices of odd degree.
Hierholzer’s Algorithm
• Choose any starting vertex v, and follow a trail of edges from that vertex
until returning to v. It is not possible to get stuck at any vertex other than v,
because the even degree of all vertices ensures that, when the trail enters
another vertex w there must be an unused edge leaving w. The tour formed
in this way is a closed tour, but may not cover all the vertices and edges of
the initial graph.
• As long as there exists a vertex v that belongs to the current tour but that
has adjacent edges not part of the tour, start another trail from v, following
unused edges until returning to v, and join the tour formed in this way to
the previous tour.
 By using a data structure such as a doubly linked list to maintain the set of
unused edges incident to each vertex, to maintain the list of vertices on the
current tour that have unused edges, and to maintain the tour itself, the
individual operations of the algorithm (finding unused edges exiting each
vertex, finding a new starting vertex for a tour, and connecting two tours
that share a vertex) may be performed in constant time each, so the overall
algorithm takes linear time
Hamilton Circuit
 Hamilton circuits are named after the renowned Irish
mathematician (and astonomer) Sir William Rowan Hamilton
who lived from 1805 to 1865. Hamilton was a child prodigy.
He could read English, Hebrew, Greek, and Latin by time he
was four years old. In addition, he wrote poetry and
maintained close friendships with Wordsworth and Coleridge.
Hamilton became Professor of Astronomy at Trinity College in
Dublin, Ireland when he was twenty-three years old.
 A circuit that starts at a vertex of a graph, passes through every
vertex exactly once, and returns to the starting vertex is a
HAMILTON CIRCUIT.
 If a graph contains a Hamiltonian circuit is it considered
a Hamiltonian graph.
Dodecahedron (Hamiltonian Circuit)
The Difference Between Euler Circuits and
Hamiltonian Circuits
Euler Circuits
 All edges of graph are
traversed exactly once.
 All vertices HAVE to be
of even degree.
Hamiltonian Circuits
 In these circuits you only
have to pass through
every vertex once and
end on the same vertex
on which you started.
 The vertices do not need
to be of even degree.
 The “Optimal
Hamiltonian Path,” is
that in which the least
slides are used.
Quick Examples to Practice
Can you take a walk through the town, visiting each part of the town
and crossing each bridge only once?
To "visit each part of the town" the person taking the walk should
visit the points A, B, C and D.
And they should cross each bridge p, q, r, s, t, u and v just once.
It can be further simplified in a graph like this. See if you can solve it.
Why is the Konigsberg Problem
Unsolvable?
Vertices A, B and D have degree 3 and
vertex C has degree 5, so this graph has
four vertices of odd degree. Therefore, it
does not have an Euler Path. However,
it does have a Hamiltonian Path.
Download