Kleinster umschließender Kreis - ETH Zürich

Man muss nun wissen, dass die Gemeindeleitung die Finanzierung des neuen ... nengelernt, der für n Punkte den kleinsten umschließenden Kreis berechnet.
37KB Größe 108 Downloads 146 Ansichten
42. Algorithmus der Woche – Informatikjahr 2006

http://www.informatikjahr.de/algorithmus/

42. Algorithmus der Woche

Kleinster umschließender Kreis Ein Demokratiebeitrag aus der Schweiz? Autor Emo Welzl, ETH Z¨urich F¨ur die Feuerwehr soll ein neuer Standort gefunden werden, der f¨ur die H¨auser, f¨ur die sie zust¨andig ist, optimal gew¨ahlt ist. Die Qualit¨at des neuen Standorts misst sich an der gr¨oßten Distanz, die zu einem der relevanten H¨auser auftritt, wobei diese gr¨oßte Distanz nat¨urlich m¨oglichst klein sein sollte. Wir idealisieren die H¨auser und den neuen Standort der Feuerwehr zu Punkten in der Ebene und w¨ahlen f¨ur die Distanz zwischen zwei Punkten deren Abstand. Die Eingabe unseres Problems ist also eine Menge P von Punkten in der Ebene. Sei f¨ur einen Punkt s, als potentiellen Standort, r der gr¨oßte Abstand, der zu Punkten in P auftritt. Offensichtlich gilt nun, dass der Kreis mit Mittelpunkt s und Radius r alle Punkte in P umschließt.

s r

Es wird klar, dass der beste Standort der Mittelpunkt des Kreises mit kleinstem Radius ist, der alle Punkte in P umschließt. Ein solcher kleinster Kreis existiert und er ist eindeutig — nehmen wir das als gegeben hin. kleinster umschließender Kreis

optimaler Standort

Kleinster umschließender Kreis

Seite 1 von 3

Emo Welzl

42. Algorithmus der Woche – Informatikjahr 2006

http://www.informatikjahr.de/algorithmus/

Der H¨auser gibt es viele und man u¨ berlegt sich wie man den besten Standort bestimmen soll. Jemand hat die Idee, Vertreter einer kleinen zuf¨alligen Auswahl R1 von, sagen wir, 13 H¨ausern zusammenkommen zu lassen, um den f¨ur sie besten Standort zu ermitteln — ohne jegliche R¨ucksicht auf die anderen H¨auser. Der Vorschlag wird aufgegriffen, das Ergebnis ist ein Standort s1 und ein Radius r1 , sodass der Kreis mit Mittelpunkt s1 und Radius r1 alle ausgew¨ahlten H¨auser umschließt — der kleinste, R1 umschließende Kreis. Ein erster Standort ist gefunden. Obwohl die Menge R1 zuf¨allig gew¨ahlt wurde, ist der Protest gegen diesen neuen Standort groß, vor allem unter den Besitzern der H¨auser, die außerhalb des ermittelten Kreises liegen. Dem Protest wird stattgegeben, man entschließt sich zu einer zweiten Runde, aber nach wie vor hat man keine Ahnung, wie f¨ur die riesige Menge an Punkten der kleinste Kreis berechnet werden soll — f¨ur 13 war es schon schwierig genug. Auch der Vorschlag, alle einzuladen, die außerhalb des ersten Kreises liegen, erscheint nicht realistisch. Es kommt zu folgendem Kompromiss: Bei der Verlosung der 13 Vertreter haben alle, deren H¨auser außerhalb jenes omin¨osen Kreises lagen, zwei Zettel im Lostopf.

s1

Es werden 13 Vertreter gezogen, die Menge R2 , sie treffen sich, bestimmen ihren besten Standort s2 und den entsprechenden Radius r2 des kleinsten Kreises der R2 umschließt. Wenig verwunderlich, auch dies fordert Widerstand heraus, wieder gibt es viele H¨auser, die außerhalb des Kreises der f¨ur R2 ermittelten L¨osung liegen. Man muss nun wissen, dass die Gemeindeleitung die Finanzierung des neuen Geb¨audes f¨ur die Feuerwehr noch nicht gesichert hat. Sie findet daher Gefallen an dem Entscheidungsprozess — d.h. eigentlich Gefallen daran, dass der Prozess wohl nicht so schnell zu einem alle befriedigenden Ergebnis f¨uhren kann, wenn u¨ berhaupt. Die L¨osung der zweiten Runde wird also wieder verworfen. F¨ur die n¨achste Runde werden f¨ur alle, deren Haus in der zweiten Runde außerhalb des Kreises lagen, die Zettel verdoppelt. Liegt ein Haus in beiden bislang ermittelten L¨osungen außerhalb der jeweiligen Kreise, liegen daf¨ur immerhin schon 4 Zettel im Topf! Runde drei verl¨auft wie gehabt. Und so weiter, und so weiter. Es kehrt Routine ein. Die Kreisfindungstreffen entpuppen sich als beliebte Unterhaltung, auch weil die Gemeinde Speis und Trank zur Verf¨ugung stellt. Außerhalb des jeweils ver¨offentlichten Kreises zu liegen, wird gar nicht mehr als Entt¨auschung empfunden, weil der Vorschlag sowieso nicht realisiert wird, und sich so die Chancen f¨ur eine Teilnahme am n¨achsten Treffen vergr¨oßern. Der Lostopf schwillt an, aber Kleinster umschließender Kreis

Seite 2 von 3

Emo Welzl

42. Algorithmus der Woche – Informatikjahr 2006

http://www.informatikjahr.de/algorithmus/

der Gemeindesekret¨ar hat schnell ein elektronisches Losverfahren eingerichtet (animiert durch den 38. Algorithmus der Woche u¨ ber Zufallszahlen). Doch dann, nachdem sich wieder einmal 13 Vertreter getroffen haben und die f¨ur sich, und nur f¨ur sich, beste L¨osung vorschlagen, geschieht das eigentlich Unerwartete. Kein Haus liegt außerhalb des berechneten Kreises. Schnell macht die Kunde die Runde, ein eilig bestelltes Gutachten best¨atigt, was alle vermutet haben: Das muss jetzt der kleinste alle Punkte umschließende Kreis sein. Schließlich kann der kleinste Kreis, der alle umschließt, nicht kleiner sein, als der, der nur 13 der Punkte umschließt. Der optimale Standort ist gefunden! War es Gl¨uck, dass das gew¨ahlte Verfahren zum Erfolg f¨uhrte, oder war es zu erwarten? Letzteres: Wir haben einen von Kenneth Clarkson entwickelten randomisierten (d.h. zufallsbasierten) Algorithmus kennengelernt, der f¨ur n Punkte den kleinsten umschließenden Kreis berechnet. Man kann zeigen, dass das Verfahren mit Wahrscheinlichkeit 1 diesen Kreis berechnet, die erwartete Anzahl von Runden ist sogar nur logarithmisch in n. Dabei ist es wichtig, dass man die Gr¨oße der jeweils zuf¨allig gezogenen Teilmenge, in unserer Geschichte 13, nicht zu klein w¨ahlt — aber 13 gen¨ugt, unabh¨angig davon, wie groß n ist. Auch kann man genau so kleinste Kugeln um Punkte im 3-dimensonalen Raum, oder auch in h¨oheren Dimensionen berechnen (nur die zuf¨allige Auswahl muss man abh¨angig von der Dimension etwas gr¨oßer w¨ahlen). Wer verwegen genug ist, dem sei noch in groben Z¨ugen verraten, warum das wirklich so klappt. Dazu m¨ussen wir erst die Struktur des Problems etwas besser verstehen. Der kleinste, die Punktemenge P umschließende Kreis — h¨ochste Zeit, dass er einen Namen bekommt: K(P) — ist durch h¨ochstens 3 der Punkte in P bestimmt. Genauer gesagt, es gibt eine Menge B von h¨ochstens 3 Punkten in P, f¨ur die K(B) = K(P) gilt. Beachte: wenn f¨ur eine Teilmenge R von P nicht schon K(R) = K(P) gilt, dann muss einer der Punkte in B außerhalb von K(R) liegen. In unserem Verfahren heißt das, dass in jeder Runde mindestens einer der Punkte in B seine Zettel im Lostopf verdoppelt und folglich hat nach k Runden mindestens einer von ihnen mindestens 2k/3 ≈ 1.26k Zettel im Topf. Das w¨achst also ganz ordentlich an. Andererseits kann man zeigen, dass durch die zuf¨allige Auswahl im Durchschnitt nicht zu viele neue Zettel in den Topf kommen. Es ist ja so, dass genau die Zettel von den H¨ausern außerhalb des aktuellen Kreises verdoppelt werden. Diese Anzahl ist im Durchschnitt etwa 3z/13, wenn gerade z Zettel im Topf sind (den Beweis f¨ur diese Behauptung bleiben wir schuldig). Das heißt, wir erwarten in der n¨achsten Runde etwa (1 + 3/13)z ≈ 1.23z Zettel im Topf. (Richtig geraten: die 3“ kommt von der Gr¨oße von B und die 13“ ” ” von der Auswahlgr¨oße, f¨ur die wir uns entschieden hatten). Einerseits vermehrt sich also die Anzahl der Zettel pro Runde etwa um den Faktor 1.23, d.h. es gibt etwa n · 1.23k Zettel nach k Runden (n ist die Anzahl der Punkte). Andererseits gibt es einen Punkt, der nach k Runden mindestens 1.26k Zettel im Topf hat. Egal wie groß n ist, das ist wegen 1.26 > 1.23 fr¨uher oder sp¨ater mehr als es insgesamt eigentlich geben d¨urfte. Es gibt eine einzige M¨oglichkeit, dieses Paradoxon aufzul¨osen: Das Verfahren ist vorher zu einem Ende gekommen. Das ist vielleicht verwirrend. Aber so sind sie nun einmal, die randomisierten Algorithmen: an sich einfach — und zugleich verbl¨uffend, dass es klappt. Autoren: • Prof. Dr. Emo Welzl http://www.inf.ethz.ch/~emo/

Kleinster umschließender Kreis

Seite 3 von 3

Emo Welzl