19.03.2014 Views

# Steiner Graphs worksheet

Steiner Graphs worksheet

### Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

1<br />

1. Suppose there are four cities, located at the corners of a square with<br />

sides of length 4. A network of roads is to connect all four cities. Is it<br />

possible to construct a network of length 12? 11.5? 11(*)?<br />

2. Given a triangle ABC, find a point T such that T A + T B + T C is<br />

minimal.<br />

First suppose that ABC is a triangle with largest angle at most 120 ◦ .<br />

a1. Consider a rotation around A through the angle of 60 ◦ . Suppose<br />

that the rotation sends C to D and T to N. Prove that DN + NT +<br />

T B = T A + T C + T B.<br />

a2. Prove that AT + BT + CT BD. When does the equality hold?<br />

Now suppose that ∠A 120 ◦ .<br />

b1. Let M ∉ ∠A. Prove that MA + MB + MC > AB + AC.<br />

b2. Let M ∈ ∠A. Once again consider the rotation around A through<br />

the angle of 60 ◦ . Suppose that the rotation sends C to D and T to N.<br />

Prove that AB + AC BM + AM + CM<br />

3. Given N points A 1 , . . . , A N in the plane, the goal is to connect them<br />

by a network consisting of line segments of minimum total length. An<br />

example is shown on Figure 1. There can be other points (apart from<br />

A 1 , . . . , A N ) where two or more line segments meet. These are marked<br />

by B i on the figure. They are called <strong>Steiner</strong> points. The initial points<br />

A 1 , . . . , A N are called real points.<br />

Suppose the network of minimal total length is found.<br />

a. Prove that the angle between any two line segments incident to the<br />

common point is greater or equal than 120 ◦ .<br />

b. Prove that there are no more than 3 line segments incident to a<br />

real point.<br />

c. Prove that there are exactly 3 line segments incident to a <strong>Steiner</strong><br />

point, and the angles between them are equal to 120 ◦ .<br />

Define a <strong>Steiner</strong> tree as a network with the properties (a)-(c). We’ve<br />

just proved that a minimal network is a <strong>Steiner</strong> tree.<br />

4. A real point A is called a deadlock vertex, if there’s only one line<br />

segment that connects it to another point B, and B is also real. A<br />

pair of deadlock vertices is a pair of two real points A, B, such<br />

that each of A and B has exactly one line segment incident to it, and<br />

these two line segments are incident to a common <strong>Steiner</strong> point.

2<br />

Figure 1: An example of <strong>Steiner</strong> tree<br />

A<br />

1<br />

A2<br />

A3<br />

B1<br />

A<br />

4<br />

A5<br />

B2<br />

A<br />

6<br />

B<br />

3<br />

A7<br />

B<br />

4<br />

A<br />

8

3<br />

Figure 2: Deleting deadlock vertex A<br />

B C B C<br />

A<br />

(In Figure 1 A 2 , A 4 are deadlock vertices, A 7 and A 8 form a pair of<br />

deadlock vertices.)<br />

Prove that every <strong>Steiner</strong> tree has either a deadlock vertex or a pair of<br />

deadlock vertices.<br />

Hint: Consider a path in the <strong>Steiner</strong> tree consisting of the maximal<br />

number of line segments.<br />

5. Try to guess a minimal network for four points at the corners of a<br />

square.<br />

6. Now we would like to construct all the <strong>Steiner</strong> trees for N given points.<br />

Firstly we will verify that the problem of constructing <strong>Steiner</strong> trees for<br />

N points reduces to the analogous problem for N − 1 points.<br />

For that we will prove that from any given <strong>Steiner</strong> tree S N for N points<br />

one can construct some <strong>Steiner</strong> tree S N−1 for N − 1 points.<br />

Note that S N has either a deadlock vertex or a pair of deadlock vertices.<br />

a. In the first case just delete the deadlock vertex (see Figure 2). The<br />

remainder is a <strong>Steiner</strong> tree for N − 1 points.<br />

b. In the second case everything is a little bit more complicated (see<br />

Figure 3). Let A 1 , A 2 be a pair of deadlock vertices, A 1 B, A 2 B be<br />

the incident line segments, the <strong>Steiner</strong> point B is connected with a<br />

point K. In order to decrease N we could delete the points A 1 , A 2 ,<br />

but the result would consist of N − 2 real points and wouldn’t be a<br />

<strong>Steiner</strong> tree (why?). So we would like to put an additional real point<br />

M somewhere.<br />

Construct the equilateral triangle ADM.<br />

b1. Prove that M belongs to the circle circumscribed about triangle<br />

ADM.<br />

b2. Prove that B ∈ KM. Construct a <strong>Steiner</strong> tree for N − 1 points.<br />

7. We will construct <strong>Steiner</strong> trees by induction.

4<br />

Figure 3: Deleting a deadlock pair A<br />

K<br />

K<br />

A<br />

1<br />

B<br />

A<br />

2<br />

M<br />

M<br />

a. Construct a <strong>Steiner</strong> tree for N = 2<br />

b. Suppose we know how to construct a <strong>Steiner</strong> tree for N − 1 points.<br />

Using the previous problem, think about an algorithm that would<br />

allow us to construct all the <strong>Steiner</strong> trees for N points.<br />

Hint: The first way is to delete an arbitrary point A j temporarily, to<br />

construct a <strong>Steiner</strong> tree S for A i , i = 1, . . . , j −1, j +1, . . . , N. Connect<br />

A j with an arbitrary vertex A k from S. Check whether the result is a<br />

<strong>Steiner</strong> tree. Repeat for all A k , A j possible.<br />

Using the previous problem, think about the second way.<br />

8. Construct all the <strong>Steiner</strong> trees for a triangle.<br />

9. Construct all the <strong>Steiner</strong> trees for a square.