Frage

 Frage

So dachte der Algorithmus, an den ich dachte, durch die n-Punkte, um durch die n-Punkte zu ieerieren, einen Ball an jedem Punkt zu zentrieren und den Punkt zu verfolgen, an dem wir zentriert sind, dass die meisten Punkte eingekapselt sind.Dann entfernen Sie dann die eingekapselten Punkte von diesem MAX-Ball, den wir gefunden haben, und iterieren Sie dann erneut durch alle Punkte.Fahren Sie fort, bis keine Punkte mehr nicht gekapselt sind.Bringe alle gefundenen Zentren zurück, die wir gefunden haben.

Ich bin nicht sicher, ob dieser Algorithmus korrekt ist.O (1) Annäherungsalgorithmus ist in Bezug auf o ( $ \ frac {\ delta_ {oreS}} {\ delta} $ ).Die Anforderung ist ein Polynomalgorithmus, den ich glaube, dass meine in der Reihenfolge des $ n ^ {2} $ ist.

Ich bin auch nicht sicher, wie er die Richtigkeit eines Annäherungsalgorithmus nachweisen kann.

War es hilfreich?

Lösung

Es gibt einen noch einfacheren Algorithmus, den gierigen Algorithmus. Dieser Algorithmus itert in einiger Reihenfolge durch die Punkte. Zunächst ist der Satz von Zentren leer. Wenn Punkt $ P $ erreicht ist, ist, wenn $ p $ innerhalb der entfernung $ 2 \ Delta $ eines der ausgewählten Zentren, dann tun wir nichts. Andernfalls fügen wir $ P $ an den Satz von Zentren hinzu. Die naive Implementierung dieses Algorithmus läuft in der Zeit $ o (kN) $ , das Polynom ist.

Warum funktioniert das? Angenommen, die Bälle im Radius $ \ Delta $ zentriert an den Punkten $ P_ {i_1}, \ ldots, p_ {i_k} $ decken Sie das gesamte Set ab und nehmen an, dass der ALGORITHM oben ausgewählte Punkte $ P_ {J_1}, \ ldots, p_ {j_k} $ aufweist. Wir müssen zeigen, dass jeder Punkt im Set innerhalb der Entfernung $ 2 \ Delta $ von diesen Punkten ist.

für einen Punkt $ P $ , let $ c (p) $ den Punkt unter < Span-Klasse="Math-Container"> $ P_ {i_1}, \ ldots, p_ {i_k} $ , der dem $ P $ am nächsten ist. Ich behaupte, dass $ C (P_ {J_A}) \ neq c (p_ {j_b}) $ für $ a \ neq B $ . In der Tat mit dem Bau $ \ | P_ {j_a} -p_ {j_b} \ | > 2 \ DELTA $ . Aber wenn $ C (p_ {j_a})= c (p_ {j_b})= q $ , dann $ \ | P_ {j_a} -p_ {j_b} \ | \ leq \ | p_ {j_a} -q \ | + \ | q-p_ {j_b} \ | \ leq 2 \ delta $ .

Renumble die Punkte so, dass $ C (P_ {J_A})= p_ {i_a} $ , und berücksichtigen Sie einen beliebigen Punkt $ p $ im Set. Angenommen, das $ C (p)= p_ {i_a} $ . Dann $ \ | p-p_ {j_a} \ | \ leq \ | p-p_ {i_a} \ | + \ | P_ {i_a} -p_ {j_a} \ | \ leq 2 \ delta $ .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit cs.stackexchange
scroll top