Umwege in Polygonen - Universität Bonn
Umwege in Polygonen - Universität Bonn
Umwege in Polygonen - Universität Bonn
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Algorithmus 1<br />
Input: e<strong>in</strong> Punkt p ∈ P , e<strong>in</strong>e Randkante e, die Randketten π l und π r des zugehörigen<br />
Trichters, die Länge des zugehörigen Schlauches |π(p, b F )|<br />
Output: e<strong>in</strong> Punkt q ∈ e mit maximalem Umweg, u P (p, q) = max q ′ ∈e u P (p, q ′ )<br />
1. Teste, ob p auf e liegt. Wenn ja, dann gebe p aus. Wenn ne<strong>in</strong>, fahre fort.<br />
2. Teste, ob p auf der Verlängerung von e liegt. Wenn ja, gebe von den<br />
Endpunkten q l und q r der Kante e denjenigen aus, der näher an p liegt.<br />
Wenn ne<strong>in</strong>, fahre fort.<br />
3. Durchlaufe von b F aus erst π l und dann π r . Berechne dabei für jeden<br />
Trichtereckpunkt b die Länge |π(p, b)| := |π(p, b F )| + |π(b F , b)|.<br />
4. Durchlaufe alle Trichtereckpunkte b <strong>in</strong>klusive b F<br />
a) Berechne alle reellen Nullstellen des mit den Werten von p und b<br />
gebildeten Polynoms (49) aus Lemma 7.1. 4 Ist das Polynom identisch<br />
null, dann berücksichtige gar ke<strong>in</strong>e Nullstelle.<br />
b) Teste für jede Nullstelle t, ob q(t) im zu b gehörigen Bereich liegt.<br />
F<strong>in</strong>de e<strong>in</strong> Umwegmaximum der richtig liegenden Nullstellenpunkte<br />
q(t) und der beiden zu b gehörigen Bereichsgrenzen.<br />
5. F<strong>in</strong>de e<strong>in</strong> Maximum der Maxima aus 4. und den zugehörigen Randpunkt q.<br />
Gebe q aus.<br />
Wir zeigen zuerst die Korrektheit dieses Algorithmus. Liegt p selbst auf der Randkante<br />
e, dann kann p ganz e sehen, also ist auf ganz e der Umweg u P (p, .) ≡ 1. Damit ist auch p<br />
selbst e<strong>in</strong> korrekter Rückgabewert.<br />
Liegt p nicht auf e aber auf der Verlängerung von e, dann wird das Umwegmaximum<br />
auf jeden Fall bei dem Endpunkt von e angenommen, der näher an p liegt. Dies sieht man<br />
analog zum Beweis von Lemma 3.1 auf S.10ff. Die gesonderte Betrachtung dieses Falles ist<br />
notwendig, weil er <strong>in</strong> Lemma 7.1 (siehe S. 46) ausgeschlossen werden musste, um im Beweis<br />
das Auftreten e<strong>in</strong>es verschw<strong>in</strong>denden Nenners zu verh<strong>in</strong>dern.<br />
Interessant wird der Algorithmus eigentlich erst, wenn die beiden Spezialfälle nicht e<strong>in</strong>treten.<br />
Dann liegt p nicht auf der Verlängerung von e und Schritt 3 wird ausgeführt. Die<br />
hier berechneten Distanzen |π(p, q)| werden für die Berechnung der Umwegwerte und für die<br />
Anwendung des Polynoms (49) benötigt.<br />
Liegt nun die Stelle q e<strong>in</strong>es Punkt-Kanten-Maximums <strong>in</strong> e<strong>in</strong>em Bereich, <strong>in</strong> dem π(p, q ′ )<br />
von q ′ aus an e<strong>in</strong>em bestimmten Trichtereckpunkt b hängt, dann muss der zugehörige Positionsparameter<br />
t nach Lemma 7.1 e<strong>in</strong>e Nullstelle dieses Polynoms (49) se<strong>in</strong>. Gehen wir<br />
zunächst davon aus, dass das Polynom nicht identisch null ist. q wird also im Schritt 4a)<br />
entdeckt, besteht dann den Bereichstest aus Schritt 4b) und fließt <strong>in</strong> die Maximumberechnung<br />
e<strong>in</strong>. Der Algorithmus gibt dann tatsächlich q aus oder e<strong>in</strong>en anderen Randpunkt, dessen<br />
Umweg aber den gleichen Wert hat. Auf jeden Fall ist die Ausgabe des Algorithmus korrekt.<br />
Liegt die Stelle q e<strong>in</strong>es Punkt-Kanten-Maximums auf e<strong>in</strong>er Bereichsgrenze, wozu auch<br />
die Kantenendpunkte q l und q r zählen, dann fließt der Wert <strong>in</strong> die Maximumberechnung <strong>in</strong><br />
Schritt 4b) e<strong>in</strong>. Der Algorithmus gibt entweder q aus, oder e<strong>in</strong>en Randpunkt mit gleichem<br />
Umweg. Wieder ist die Ausgabe korrekt.<br />
4 Verfahren zur exakten Nullstellenbestimmung von Polynomen vierten Grades <strong>in</strong> konstanter Zeit s<strong>in</strong>d<br />
allgeme<strong>in</strong> bekannt. Siehe z.B. [BSMM95] S.31 oder [Bos93] S.88-91 .<br />
49