Unendlich große, aber lokal begrenzte Rechenprobleme

14

Diese Frage wurde durch einen Kommentar von Jukka Suomela zu einer anderen Frage inspiriert .

Was sind Beispiele für unendlich große, aber lokal begrenzte Rechenprobleme (und Algorithmen)?

Mit anderen Worten, was sind Beispiele für Berechnungen, die in endlicher Zeit anhalten, in denen jede Turing-Maschine nur endliche Daten liest und verarbeitet, aber insgesamt löst die Berechnung ein Problem mit unendlicher Größe, wenn unendlich viele Turing-Maschinen miteinander vernetzt sind?

Aaron Sterling
quelle
Ich wollte kommentieren, dass diese Idee mit einem einzelnen TM mit unendlich vielen Bändern identisch zu sein scheint, von dem ich dachte, dass ich es zuvor gesehen habe, aber jetzt kann ich keine Referenz finden. Träume ich oder ist das eine erforschte Idee? Gewiss wurden andere Hypercomputer-Erweiterungen wie Endloszeit-TMs untersucht. Fügt die Idee der TM-Vernetzung etwas zu diesem Modell hinzu?
Huck Bennett
@HuckBennett: Ich weiß es nicht; es könnte dasselbe sein. Ich habe das Gefühl, dass Jukkas ursprüngliche Bemerkung Probleme wie das Färben von Diagrammen in einem unendlichen Diagramm von begrenztem Ausmaß zum Gegenstand hatte (obwohl ich nicht weiß, ob dieses spezielle Problem eine Antwort auf diese Frage sein würde). Jedes TM würde den gleichen Algorithmus ausführen und mit einer begrenzten Anzahl von Nachbarn sprechen. Es scheint, dass ein TM mit unendlich vielen Bändern in der Lage sein könnte, einen Graphen mit unendlich vielen Kanten zwischen zwei Knoten zu simulieren, was sich im Prinzip von dem unterscheidet, was ich vorhabe. Ich weiß allerdings sehr wenig über solche Modelle.
Aaron Sterling

Antworten:

13

Nur um einige Ideen zu geben, was möglich ist (aber etwas nicht trivial), hier ein Beispiel: Ein verteilter Algorithmus, der a findet maximale Kantenpackung auf einem Graphen mit begrenztem Grad findet.

Problem Definition

Wenn ein einfacher ungerichteter Graph , ordnet eine Kantenpackung (oder eine fraktionelle Übereinstimmung) jeder Kante e E ein Gewicht w ( e ) zu, so dass für jeden Knoten v V das Gesamtgewicht der Kanten gilt, auf die einfällt v ist höchstens 1 . Ein Knoten ist gesättigt, wenn das Gesamtgewicht der einfallenden Kanten gleich 1 ist . Eine Randverpackung istG=(V,E)w(e)eEvVv11 Kantenpackung maximal, wenn alle Kanten mindestens einen gesättigten Endpunkt haben (dh keine der Gewichte kann gierig verlängert werden).

Man beachte, dass eine maximale Übereinstimmung eine maximale Kantenpackung definiert (setze w ( e ) = 1, wenn e M ist ); daher ist es einfach, in einer klassischen zentralisierten Umgebung zu lösen (vorausgesetzt, G ist endlich).MEw(e)=1eMG

Kantenpackungen haben tatsächlich einige Anwendungen, zumindest wenn man eine Anwendung im üblichen TCS-Sinne definiert: Die Menge der gesättigten Knoten bildet eine Approximation einer minimalen Scheitelbedeckung (natürlich macht dies nur im Fall eines endlichen G Sinn ). .2G

Modell der Berechnung

Wir nehmen an, dass es eine globale Konstante so dass der Grad von v V höchstens Δ beträgt .ΔvVΔ

Um dies so nah wie möglich an der ursprünglichen Frage zu halten, definieren wir das Berechnungsmodell wie folgt. Wir nehmen an, dass jeder Knoten eine Turing-Maschine ist und eine Kante { u , v } E ein Kommunikationskanal zwischen u und v ist . Das Eingabeband von v codiert den Grad deg ( v ) von v . Für jedes v V werden die auf v einfallenden Kanten (in beliebiger Reihenfolge) mit ganzen Zahlen 1 , 2 , … gekennzeichnet.vV{u,v}Euvvdeg(v)vvVv ; Diese werden alslokale Kantenbeschriftungen bezeichnet(die Beschriftung von { u , v } E kann für u und v unterschiedlich sein ). Das Gerät verfügt über Anweisungen, mit denen es Nachrichten über jede dieser Kanten senden und empfangen kann. Eine Maschine kann ihre Nachbarn über die lokalen Kantenbeschriftungen ansprechen.1,2,,deg(v){u,v}Euv

Wir fordern, dass die Maschinen eine gültige Kantenpackung für G berechnen . Genauer gesagt, jedes v V weist auf seiner Ausgabeband eine Codierung von zu druck w ( e ) für jede Kante e Vorfall v , die von den lokalen Kanten Etiketten geordnet und dann zu stoppen.wGvVw(e)ev

Wir sagen, dass ein verteilter Algorithmus eine maximale Kantenpackung in der Zeit T findet , wenn für einen Graphen G mit maximalem Grad Δ und für eine lokale Kantenbeschriftung von G gilt : Wenn wir jeden Knoten von G durch eine identische Kopie von ersetzen Die Turing-Maschine A und die Maschinen starten, dann nach T Schritten haben alle Maschinen eine gültige (global konsistente) Lösung gedruckt und angehalten.ATGΔGGAT

Unendlichkeiten

Nun ergibt all das Sinn, auch wenn die Menge der Knoten unendlich ist.V

Die Problemformulierung und das Berechnungsmodell enthalten keine Verweise auf , direkt oder indirekt. Die Länge der Eingabe für jede Turingmaschine ist durch eine Konstante begrenzt.|V|

Was bekannt ist

Das Problem kann in endlicher Zeit gelöst werden, auch wenn unendlich ist.G

Das Problem ist in dem Sinne nicht trivial, dass eine gewisse Kommunikation erforderlich ist. Darüber hinaus hängt die Laufzeit von . Für jedes feste Δ kann das Problem jedoch unabhängig von der Größe von G in konstanter Zeit gelöst werden ; Insbesondere ist das Problem bei unendlich großen Graphen lösbar.ΔΔG

Ich habe nicht überprüft, welche Laufzeit in dem oben definierten Modell die bekannteste ist (was nicht das auf dem Gebiet übliche Modell ist). Trotzdem sollte eine Laufzeit, die in polynomisch ist, ziemlich einfach zu erreichen sein, und ich halte eine Laufzeit, die in Δ sublinear ist, für unmöglich.ΔΔ

Jukka Suomela
quelle
3

Die nächste Generation eines Zellularautomaten finden .

Dies kann wie beschrieben in konstanter Zeit gelöst werden. (dh unabhängig von der Eingabe)


quelle
Ich denke, es ist mehr Sorgfalt erforderlich, um tatsächlich ein (nicht triviales, interessantes) Rechenproblem zu formulieren, das mit Hilfe von Zellularautomaten in endlicher Zeit lösbar ist.
Jukka Suomela
1
Ich bin mit @Jukka einverstanden. Ich betrachte die aktuelle Version dieser Antwort als kommentarlos und nicht als informativ. Es wird weder ein Rechenproblem noch ein Algorithmus beschrieben. Abgestimmt.
Aaron Sterling
2

Grundsätzlich erfordert jedes mindestens so schwierige Problem wie das Einfärben einen Algorithmus, dessen Laufzeit von der Anzahl der Knoten im Netzwerk abhängt und daher nicht in einem unendlichen, aber lokal endlichen Graphen funktioniert. Dies folgt aus Linials wegweisendem Protokoll * n Untergrenze.

Peter
quelle
2
Aber was genau ist Ihr Berechnungsmodell hier? Linial geht davon aus, dass alle Knoten eindeutige numerische Bezeichner haben. Wenn wir versuchen, es der in der ursprünglichen Frage vorgeschlagenen Einstellung zuzuordnen, haben wir Turing-Maschinen, die ihre numerischen Kennungen auf ihren Eingabebändern haben. Aber jetzt ist die Größe des Bezeichners unbegrenzt; Das bloße Warten, bis alle Maschinen ihre eigenen Kennungen gelesen haben, dauert unendlich lange. Ich würde argumentieren, dass das Hindernis nicht die untere Grenze von Linial ist, sondern das Rechenmodell: Eindeutige Bezeichner sind das falsche Modell, wenn wir mit Unendlichkeiten umgehen.
Jukka Suomela
1
@Jukka: Ich hatte mir ein System vorgestellt, bei dem alle Prozessoren anonym waren, als ich die Frage schrieb, genau um zu vermeiden, dass IDs ohne Grenzen wachsen. Aber es scheint mir jetzt, dass es hier ein nicht triviales Problem geben könnte. Wenn Sie eine Programmgröße und eine berechenbare Funktion auswählen, die die Größe der Umgebung eines Prozessors begrenzt, kann der allmächtige Gegner möglicherweise eine große, aber endliche Menge von IDs auswählen, sodass das Limit von Linial immer noch ein Faktor ist. Der Gegner muss möglicherweise in der Lage sein, eine Funktion zu berechnen, die schneller wächst als jede berechenbare Funktion, um dies zu tun.
Aaron Sterling
0

Das passt nicht ganz zu Ihrer Definition, aber ich denke nur wegen der Uneinheitlichkeit. Vor dem Zeigen der Parität war nicht inEINC0, Sipser (ich glaube es war) hat gezeigt, dass jede unendliche Paritätsfunktion (eine Funktion für zählbar viele Variablen, die die Ausgabe ändert, wenn eine einzelne Eingabe geändert wird) nicht in "infinitary" gelöst werden kann EINC0. "

Joshua Grochow
quelle