Einleitung
Seit den Anfängen der Informatik – einem Gebiet, das für seinen methodischen Ansatz zur Problemlösung bekannt ist – spielt der Zufall eine wichtige Rolle. Das erste Programm, das auf dem weltweit ersten elektronischen Allzweckcomputer lief, nutzte den Zufall, um nukleare Prozesse zu simulieren. Ähnliche Ansätze wurden seitdem in der Astrophysik, den Klimawissenschaften und den Wirtschaftswissenschaften verwendet. In all diesen Fällen einstecken zufällige Zahlen bei bestimmten Schritten im Algorithmus hilft Forschern, die Unsicherheit über die vielen Möglichkeiten zu berücksichtigen, wie sich komplexe Prozesse abspielen können.
Aber das Hinzufügen von Zufälligkeit zu einem Algorithmus kann Ihnen auch dabei helfen, die richtige Antwort auf eindeutige Wahr-oder-Falsch-Fragen zu berechnen. „Du sagst einfach ‚OK, lass mich aufgeben, lass es mich nicht versuchen, lass mich einfach zufällig etwas auswählen'“, sagte er Erich Blais, Informatiker an der University of Waterloo. „Für viel zu viele Probleme ist das ein erfolgreicher Ansatz.“
Angenommen, Sie möchten feststellen, ob eine bestimmte Zahl eine Primzahl (nur durch 1 und sich selbst teilbar) oder eine zusammengesetzte Zahl (auch durch andere ganze Zahlen teilbar) ist. Sie könnten einfach versuchen, es durch alle möglichen Faktoren zu teilen, aber für große Zahlen sind diese „Brute-Force“-Methode und andere Faktorisierungsalgorithmen unerträglich langsam. Und wenn sich herausstellt, dass die Zahl zusammengesetzt ist, teilen Ihnen Faktorisierungsalgorithmen die Werte ihrer Teiler mit – mehr Informationen, als Sie wollten. Wenn Sie sich nur für die „Primzahl“ einer Zahl interessieren, gibt es einen effizienteren Algorithmus?
Es gibt, wenn Sie Zufälligkeit verwenden. Die Grundidee geht auf ein Ergebnis des französischen Mathematikers Pierre de Fermat aus dem 17. Jahrhundert zurück, bekannt als sein „kleiner Satz.“ Fermat betrachtete zwei ganze Zahlen – nenne sie N machen x. Er hat bewiesen, dass wenn N ist dann eine Primzahl xN - x ist immer ein Vielfaches von N, unabhängig vom Wert von x. Äquivalent, wenn xN - x ist kein Vielfaches von N und dann N kann keine Primzahl sein. Aber die umgekehrte Aussage ist nicht immer wahr: Wenn xN - x ist ein Vielfaches von N und dann N ist normalerweise, aber nicht immer eine Primzahl.
Um den kleinen Satz von Fermat in einen Primzahltest umzuwandeln, nehmen Sie einfach die N die Sie interessieren, wählen Sie aus x zufällig, und stecken Sie die beiden Zahlen in xN - x. Wenn das Ergebnis kein Vielfaches von ist N, dann bist du fertig: Das kennst du N ist definitiv zusammengesetzt. Wenn das Ergebnis ein Vielfaches von ist N und dann N ist wahrscheinlich prim. Wählen Sie jetzt zufällig eine andere aus x und versuche es erneut. In den meisten Fällen können Sie dies nach einigen Dutzend Versuchen mit ziemlicher Sicherheit feststellen N ist eine Primzahl. „Du machst das ein paar Mal“, sagte Blais, „und irgendwie ist deine Wahrscheinlichkeit, einen Fehler zu machen, jetzt geringer als die Wahrscheinlichkeit, dass ein Asteroid die Erde zwischen jetzt und dem Zeitpunkt, an dem du dir die Antwort ansiehst, trifft.“
Der Erste Primalität Tests Die Verwendung randomisierter Algorithmen (basierend auf Verfeinerungen des kleinen Satzes von Fermat) leitete eine neue Ära ein. Es stellte sich heraus, dass ein Problem nach dem anderen mit Zufälligkeit viel einfacher zu lösen war als mit nicht zufälligen oder deterministischen Algorithmen. Der Schlüssel bestand darin, jedes Problem so umzugestalten, dass es schnell gelöst werden konnte, wenn man einen geeigneten Wert für eine Zahl hatte x, und beweisen Sie dann, dass so ziemlich jeder x würdest du. Die Lösung funktioniert, obwohl die Forscher keine Ahnung haben, wie sie feststellen können, ob eine bestimmte Wahl eine gute ist. Mathematiker haben scherzhaft gesagt, dass diese ungewöhnliche Herausforderung verwandt ist Heu im Heuhaufen finden.
Aber diese Erfolge ließen die Forscher sich fragen, warum Zufälligkeit bei Problemen wie Primzahltests helfen sollte, bei denen es darum geht, versteckte, nicht zufällige Muster zu finden. „Das hat etwas Paradoxes“, sagte er Raul Santhanam, Informatiker an der University of Oxford. „Reine Zufälligkeit hilft Ihnen, die Struktur in den Griff zu bekommen, die das Problem löst.“
1994 haben die Informatiker Noam Nisan u Avi Wigderson hat dazu beigetragen, diese Verwirrung zu lösen, indem gezeigt wurde, dass Zufälligkeit zwar nützlich, aber wahrscheinlich nicht notwendig ist. Sie erwies sich dass eines von zwei Dingen zutreffen muss: Entweder haben alle Probleme, die mit Zufällen effizient gelöst werden können, auch schnelle deterministische Algorithmen, oder viele notorisch schwierige Probleme sind insgeheim einfach. Informatiker halten die zweite Möglichkeit für sehr unwahrscheinlich.
Tatsächlich finden es Informatiker oft einfacher, einen deterministischen Algorithmus zu entwickeln, indem sie mit einer randomisierten Version beginnen und diese dann „derandomisieren“. „Sobald ich es habe, sehe ich plötzlich einen sehr offensichtlichen Weg, es deterministisch zu machen“, sagte er Eli Upfal, Informatiker an der Brown University. „Aber wenn ich nicht randomisiert als probabilistische Frage darüber nachdenken würde, würde ich wahrscheinlich nicht daran denken.“
Fast 30 Jahre nach dem bahnbrechenden Beweis von Nisan und Wigderson sind randomisierte Algorithmen nach wie vor beliebt, da Derandomisierung schwierig sein kann und deterministische Algorithmen oft nur im Prinzip effizient sind. Erst 2002 fanden drei Forscher einen Weg, Primzahltests zu derandomisieren, und zwar in der Praxis ihr Algorithmus ist viel langsamer als die besten randomisierten Algorithmen. Bei anderen Problemen weiß man gar nicht, wo man anfangen soll – der bekannteste Algorithmus hat ein Henne-Ei-Problem, dem man nur durch Zufälligkeit entkommen kann.
Das ist der Fall für einen kürzlichen Durchbruch in der Graphentheorie. Im vergangenen Jahr entwickelten sich drei Informatiker ein schneller Algorithmus um den kürzesten Pfad durch einen Graphen zu finden – ein Netz von Knoten, die durch Liniensegmente verbunden sind – das funktioniert auch dann, wenn einige Segmente von der Gesamtpfadlänge subtrahieren, anstatt sie zu addieren. Ihr Algorithmus bestand darin, den Graphen in einen einfacheren umzuwandeln, indem bestimmte Segmente gelöscht, das Problem für den vereinfachten Graphen gelöst und dann die gelöschten Segmente berücksichtigt wurden. Sie konnten nachweisen, dass der Algorithmus schnell ablaufen würde, wenn kein kürzester Weg durch zu viele gelöschte Segmente führen würde – sonst würde der letzte Schritt zu lange dauern.
Aber wie entscheidet man überhaupt, welche Segmente gelöscht werden sollen? Es ist nicht nur schwierig, den idealen Satz von Segmenten deterministisch zu finden – es ist unmöglich. Die Menge hängt davon ab, welche Wege am kürzesten sind, genau das Problem, das die drei Forscher zu lösen versuchten. Aber obwohl sie nicht die besten Segmente zum Löschen finden konnten, konnten sie beweisen, dass die meisten zufälligen Entscheidungen ziemlich gut wären, und das war genug, um die selbstreferenzielle Schleife zu durchbrechen. In den seltenen Fällen, in denen der Algorithmus eine unglückliche Wahl trifft und beim letzten Schritt stecken bleibt, könnten sie einfach anhalten und ihn erneut ausführen.
„Zufälligkeit ist im Grunde ein Weg, um sicherzustellen, dass etwas über die optimale Lösung wahr ist, ohne die optimale Lösung zu kennen“, sagte er Aaron Bernstein, einer der Autoren des neuen Algorithmus.
Zufälligkeit hat unzählige andere Anwendungen in der Informatik gefunden, von der Kryptografie über die Spieltheorie bis hin zum maschinellen Lernen. Die Chancen stehen gut, es ist hier, um zu bleiben.
- SEO-gestützte Content- und PR-Distribution. Holen Sie sich noch heute Verstärkung.
- Platoblockkette. Web3-Metaverse-Intelligenz. Wissen verstärkt. Hier zugreifen.
- Quelle: https://www.quantamagazine.org/how-randomness-improves-algorithms-20230403/
- :Ist
- ][P
- $UP
- 1
- 1994
- a
- Über uns
- darüber
- AC
- Konto
- Buchhaltung
- Nach der
- Algorithmus
- Algorithmen
- Alle
- immer
- machen
- Ein anderer
- beantworten
- Ansatz
- Ansätze
- angemessen
- SIND
- AS
- Asteroid
- At
- Autoren
- Zurück
- basierend
- basic
- Grundsätzlich gilt
- BE
- weil
- beginnen
- Sein
- BESTE
- zwischen
- Bit
- steckengeblieben
- Break
- Durchbruch
- by
- Berechnen
- rufen Sie uns an!
- CAN
- österreichische Unternehmen
- Häuser
- Fälle
- sicher
- Sicherheit
- challenges
- Chancen
- Wahl
- Entscheidungen
- Auswählen
- Klimaschutz
- Komplex
- Computer
- Computerwissenschaften
- Schluss
- Verwirrung
- Sie
- Geht davon
- betrachtet
- könnte
- Geheimschrift
- Tage
- entscheidet
- definitiv
- demonstrieren
- hängt
- Bestimmen
- entwickeln
- entwickelt
- schwer
- nach unten
- Dutzend
- jeder
- Erde
- einfacher
- Wirtschaftskunde
- effizient
- effizient
- entweder
- elektronisch
- endet
- genug
- gewährleisten
- Era
- Fehler
- Sogar
- ÜBERHAUPT
- Faktoren
- FAST
- wenige
- Feld
- Finden Sie
- Suche nach
- Vorname
- Aussichten für
- gefunden
- Französisch
- für
- Spiel
- allgemeiner Zweck
- bekommen
- ABSICHT
- gegeben
- Goes
- gut
- Graph
- Griff
- hart
- Haben
- mit
- Hilfe
- dazu beigetragen,
- Unternehmen
- hilft
- hier
- versteckt
- schlagen
- Ultraschall
- Hilfe
- HTTPS
- i
- Idee
- ideal
- wichtig
- unmöglich
- in
- Information
- interessiert
- beteiligt
- IT
- SEINE
- selbst
- jpg
- Wesentliche
- Wissen
- Wissend
- bekannt
- Wahrzeichen
- grosse
- Nachname
- Letztes Jahr
- lernen
- Länge
- Gefällt mir
- Line
- wenig
- Lang
- aussehen
- Maschine
- Maschinelles Lernen
- gemacht
- um
- MACHT
- viele
- Mathe
- Methode
- methodisch
- mehr
- effizienter
- vor allem warme
- mehrere
- In der Nähe von
- notwendig,
- Neu
- Fiber Node
- Kernenergie
- Anzahl
- Zahlen
- offensichtlich
- of
- on
- EINEM
- optimal
- Andere
- Andernfalls
- Oxford
- Bestanden
- Weg
- Muster
- wählen
- Pierre
- Ort
- Plato
- Datenintelligenz von Plato
- PlatoData
- Play
- gespielt
- Stecker
- Beliebt
- Möglichkeit
- möglich
- Praxis
- ziemlich
- Prime
- Prinzip
- wahrscheinlich
- Aufgabenstellung:
- Problemlösung
- Probleme
- anpassen
- Programm
- Beweis
- Belegen
- erwies sich
- Quantamagazin
- Frage
- Fragen
- schnell
- zufällig
- Zufällig
- Zufälligkeit
- RARE
- lieber
- kürzlich
- Ungeachtet
- bleiben
- Forscher
- Folge
- Rollen
- Führen Sie
- Said
- Wissenschaft
- Wissenschaftler
- Wissenschaftler
- Zweite
- Segmente
- kompensieren
- sollte
- siam
- ähnlich
- vereinfachte
- einfach
- da
- langsam
- klein
- Lösung
- LÖSEN
- Löst
- Auflösung
- einige
- etwas
- spezifisch
- Beginnen Sie
- Erklärung
- bleiben
- Schritt
- Shritte
- Stoppen
- Struktur
- erfolgreich
- Nehmen
- Test
- Testen
- zur Verbesserung der Gesundheitsgerechtigkeit
- Das
- Der Graph
- ihr
- Sie
- Diese
- nach drei
- Durch
- mal
- zu
- auch
- Gesamt
- Transformieren
- was immer dies auch sein sollte.
- WENDE
- Turned
- Unsicherheit
- Universität
- University of Oxford
- -
- gewöhnlich
- Wert
- Werte
- Version
- Weg..
- Wege
- Netz
- ob
- welche
- mit
- ohne
- Werk
- weltweit
- würde
- Jahr
- Jahr
- Du
- Ihr
- Zephyrnet