www.wikidata.de-de.nina.az
Eine zufallige Permutation oder Zufallspermutation ist in der Mathematik eine zufallige Anordnung einer Menge von Objekten Beispielsweise ist das Mischen der Karten eines Kartenspiels im Idealfall eine zufallige Permutation der Karten In der Stochastik werden zufallige Permutationen als gleichverteilte Zufallsvariablen aus einem diskreten Wahrscheinlichkeitsraum angesehen deren Werte Permutationen sind So konnen auch Kennzahlen zufalliger Permutationen wie die Anzahl der Fixpunkte Fehlstande oder Zyklen als diskrete Zufallsvariablen angesehen werden deren Verteilungen dann analysiert werden Im Computer konnen pseudozufallige Permutationen effizient mit dem Fisher Yates Verfahren generiert werden Zufallige Permutationen werden unter anderem bei der Analyse von Sortierverfahren in der Kryptographie und Kodierungstheorie sowie im Rahmen randomisierter Algorithmen untersucht Eine Realisierung einer zufalligen Permutation der Spielkarten einer Farbe Inhaltsverzeichnis 1 Definition 2 Beispiel 3 Eigenschaften 3 1 Anzahl der Fixpunkte 3 2 Anzahl der Anstiege 3 3 Anzahl der Fehlstande 3 4 Anzahl der Zyklen 4 Erzeugung 4 1 Direktes Verfahren 4 2 Fisher Yates Verfahren 5 Siehe auch 6 Literatur 7 Weblinks 8 EinzelnachweiseDefinition BearbeitenIst S n displaystyle S n nbsp die symmetrische Gruppe aller Permutationen der Menge 1 n displaystyle 1 ldots n nbsp dann ist eine zufallige Permutation eine auf S n displaystyle S n nbsp gleichverteilte Zufallsvariable P displaystyle Pi nbsp das heisst eine Abbildung P W S n displaystyle Pi colon Omega to S n nbsp von einem Wahrscheinlichkeitsraum W A P displaystyle Omega mathcal A P nbsp sodass P P p 1 n displaystyle P Pi pi frac 1 n nbsp fur alle Permutationen p S n displaystyle pi in S n nbsp gilt Allgemeiner konnen auch Permutationen beliebiger endlicher Mengen beispielsweise Alphabete betrachtet werden Zur Analyse der mathematischen Eigenschaften ist jedoch eine Beschrankung auf die ersten n displaystyle n nbsp naturlichen Zahlen moglich Beispiel BearbeitenDie Menge S 3 displaystyle S 3 nbsp besteht aus den sechs Permutationen der Zahlen 1 2 displaystyle 1 2 nbsp und 3 displaystyle 3 nbsp in Tupeldarstellung S 3 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 displaystyle S 3 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 nbsp Eine zufallige Permutation P displaystyle Pi nbsp realisiert jede dieser sechs Permutationen p S 3 displaystyle pi in S 3 nbsp mit der gleichen Wahrscheinlichkeit P P p 1 6 displaystyle P Pi pi frac 1 6 nbsp Wird als zugrunde liegender Wahrscheinlichkeitsraum S 3 P S 3 P displaystyle S 3 mathcal P S 3 P nbsp mit P p 1 6 displaystyle P pi tfrac 1 6 nbsp fur alle p S 3 displaystyle pi in S 3 nbsp gewahlt so kann P displaystyle Pi nbsp durch die identische Abbildung dargestellt werden Eigenschaften BearbeitenZufalligen Permutationen zugeordnete Grossen wie die Anzahl der Fehlstande oder Zyklen konnen ebenfalls als diskrete Zufallsvariablen X X P displaystyle X X Pi nbsp interpretiert werden Die Wahrscheinlichkeitsverteilung dieser Zufallsvariablen ist allerdings im Allgemeinen nicht mehr gleichverteilt Ein wichtiges Hilfsmittel bei der Analyse dieser Wahrscheinlichkeitsverteilungen sind erzeugende Funktionen Ist P X k P X k displaystyle P X k P X k nbsp die Wahrscheinlichkeitsfunktion dass die Zufallsvariable X displaystyle X nbsp den Wert k N 0 displaystyle k in mathbb N 0 nbsp annimmt dann wird die zugehorige wahrscheinlichkeitserzeugende Funktion durch g x k 0 P X k x k displaystyle g x sum k 0 infty P X k cdot x k nbsp definiert Dabei handelt es sich hier um eine exponentiell erzeugende Funktion Der Erwartungswert der Zufallsvariable X displaystyle X nbsp ist dann durch E X k 0 k P X k g 1 displaystyle operatorname E X sum k 0 infty k cdot P X k g 1 nbsp gegeben und ihre Varianz entsprechend durch Var X k 0 k E X 2 P X k g 1 g 1 1 g 1 displaystyle operatorname Var X sum k 0 infty k operatorname E X 2 cdot P X k g 1 g 1 1 g 1 nbsp Im Folgenden werden Wahrscheinlichkeitsverteilungen Erwartungswerte und Varianzen einiger wichtiger Kenngrossen zufalliger Permutationen angegeben Anzahl der Fixpunkte Bearbeiten nbsp Haufigkeitsverteilung der Anzahl der Fixpunkte in einer zufalligen Permutation der Lange 7Ein Fixpunkt in einer Permutation p displaystyle pi nbsp ist eine Zahl i 1 n displaystyle i in 1 ldots n nbsp fur die p i i displaystyle pi i i nbsp gilt Die Anzahl der Permutationen p S n displaystyle pi in S n nbsp mit genau k displaystyle k nbsp Fixpunkten wird durch die Rencontres Zahlen D n k displaystyle D n k nbsp angegeben Folge A008290 in OEIS Die wahrscheinlichkeitserzeugende Funktion der Anzahl der Fixpunkte einer Permutation p S n displaystyle pi in S n nbsp hat die Form g x k 0 n D n k n x k k 0 n j 0 n k 1 j x k j k displaystyle g x sum k 0 n frac D n k n x k sum k 0 n sum j 0 n k frac 1 j x k j k nbsp Fur den Erwartungswert und die Varianz der Anzahl der Fixpunkte gilt damit E X k 0 n 1 D n 1 k n 1 1 displaystyle operatorname E X sum k 0 n 1 frac D n 1 k n 1 1 nbsp und Var X k 0 n 2 D n 2 k n 2 1 displaystyle operatorname Var X sum k 0 n 2 frac D n 2 k n 2 1 nbsp Die Anzahl der Fixpunkte in einer zufalligen Permutation ist fur n displaystyle n to infty nbsp asymptotisch poisson verteilt mit Intensitat l 1 displaystyle lambda 1 nbsp 1 Anzahl der Anstiege Bearbeiten nbsp Haufigkeitsverteilung der Anzahl der Anstiege in einer zufalligen Permutation der Lange 7Ein Anstieg in einer Permutation p displaystyle pi nbsp ist eine Zahl i displaystyle i nbsp fur die p i 1 gt p i displaystyle pi i 1 gt pi i nbsp gilt Die Anzahl der Permutationen p S n displaystyle pi in S n nbsp mit genau k displaystyle k nbsp Anstiegen analog Abstiegen wird durch die Euler Zahlen A n k displaystyle A n k nbsp angegeben Folge A008292 in OEIS Die wahrscheinlichkeitserzeugende Funktion der Anzahl der Anstiege einer Permutation p S n displaystyle pi in S n nbsp hat die Form g x k 0 n 1 A n k n x k 1 n k 0 n 1 j 0 k 1 j n 1 j k 1 j n x k displaystyle g x sum k 0 n 1 frac A n k n x k frac 1 n sum k 0 n 1 sum j 0 k 1 j binom n 1 j k 1 j n x k nbsp Fur den Erwartungswert und die Varianz der Anzahl der Anstiege gilt damit E X n 1 2 displaystyle operatorname E X frac n 1 2 nbsp und Var X n 1 12 displaystyle operatorname Var X frac n 1 12 nbsp Die Anzahl der Anstiege in einer zufalligen Permutation ist bei entsprechender Normierung fur n displaystyle n to infty nbsp asymptotisch normalverteilt 2 Anzahl der Fehlstande Bearbeiten nbsp Haufigkeitsverteilung der Anzahl der Fehlstande in einer zufalligen Permutation der Lange 7Ein Fehlstand in einer Permutation p displaystyle pi nbsp ist ein Paar i j displaystyle i j nbsp fur das i lt j displaystyle i lt j nbsp und p i gt p j displaystyle pi i gt pi j nbsp gilt Die Anzahl der Permutationen p S n displaystyle pi in S n nbsp mit genau k displaystyle k nbsp Fehlstanden wird durch die McMahon Zahlen M n k displaystyle M n k nbsp angegeben Folge A008302 in OEIS Die Wahrscheinlichkeitsfunktion der Anzahl der Fixpunkte einer Permutation p S n displaystyle pi in S n nbsp hat die Form 3 g x k 0 n n 1 2 M n k n x k 1 n i 1 n j 0 n i x j 1 n i 1 n 1 x i 1 x displaystyle g x sum k 0 n n 1 2 frac M n k n x k frac 1 n prod i 1 n sum j 0 n i x j frac 1 n prod i 1 n frac 1 x i 1 x nbsp Fur den Erwartungswert und die Varianz der Anzahl der Fehlstande gilt damit E X i 1 n i 1 2 n n 1 4 displaystyle operatorname E X sum i 1 n frac i 1 2 frac n n 1 4 nbsp und Var X i 1 n i 2 1 12 n 2 n 5 n 1 72 displaystyle operatorname Var X sum i 1 n frac i 2 1 12 frac n 2n 5 n 1 72 nbsp Die Anzahl der Fehlstande in einer zufalligen Permutation ist bei entsprechender Normierung fur n displaystyle n to infty nbsp asymptotisch normalverteilt 4 Anzahl der Zyklen Bearbeiten nbsp Haufigkeitsverteilung der Anzahl der Zyklen in einer zufalligen Permutation der Lange 7Ein Zyklus in einer Permutation p displaystyle pi nbsp ist eine Folge verschiedener Zahlen i 1 i 2 i k displaystyle i 1 i 2 ldots i k nbsp fur die p i j i j 1 displaystyle pi i j i j 1 nbsp fur j 1 k 1 displaystyle j 1 ldots k 1 nbsp und p i k i 1 displaystyle pi i k i 1 nbsp gilt Jede Permutation kann vollstandig in Zyklen zerlegt werden Die Anzahl der Permutationen p S n displaystyle pi in S n nbsp mit genau k displaystyle k nbsp Zyklen wird durch die Stirling Zahlen der ersten Art s n k displaystyle s n k nbsp angegeben Folge A130534 in OEIS Die wahrscheinlichkeitserzeugende Funktion der Anzahl der Zyklen einer Permutation p S n displaystyle pi in S n nbsp hat die Form g x k 1 n s n k n x k 1 n k 1 n x k 1 displaystyle g x sum k 1 n frac s n k n x k frac 1 n prod k 1 n x k 1 nbsp Fur den Erwartungswert und die Varianz der Anzahl der Zyklen gilt damit E X k 1 n 1 k H n displaystyle operatorname E X sum k 1 n frac 1 k H n nbsp wobei H n displaystyle H n nbsp die n displaystyle n nbsp te harmonische Zahl ist und Var X k 1 n k 1 k 2 H n H n 2 displaystyle operatorname Var X sum k 1 n frac k 1 k 2 H n H n 2 nbsp wobei H n 2 displaystyle H n 2 nbsp die n displaystyle n nbsp te harmonische Zahl zweiter Ordnung ist Die Anzahl der Zyklen in einer zufalligen Permutation ist bei entsprechender Normierung fur n displaystyle n to infty nbsp asymptotisch normalverteilt mit Erwartungswert und Varianz log n displaystyle log n nbsp 5 Erzeugung BearbeitenEine wichtige Aufgabe bei der Untersuchung von Algorithmen beispielsweise Sortierverfahren im Rahmen von Monte Carlo Simulationen ist die Erzeugung zufalliger Permutationen auf dem Computer Die Grundidee ist hierbei die Verwendung uniform verteilter Pseudozufallszahlen mit Hilfe geeigneter Zufallszahlengeneratoren Diese Pseudozufallszahlen werden dann auf geeignete Weise kombiniert sodass eine pseudozufallige Permutation entsteht Direktes Verfahren Bearbeiten Bei einem direkten Ansatz wird zunachst eine aus den Zahlen von 1 displaystyle 1 nbsp bis n displaystyle n nbsp bestehende Liste betrachtet Nach einer Ziehung einer uniform verteilten Zufallszahl zwischen 1 displaystyle 1 nbsp und n displaystyle n nbsp einschliesslich wird das entsprechende Listenelement als die erste Zahl der Ergebnispermutation notiert und dieses Element anschliessend aus der Liste gestrichen Im nachsten Schritt wird dann eine uniform verteilte Zufallszahl zwischen 1 displaystyle 1 nbsp und n 1 displaystyle n 1 nbsp gezogen das entsprechende Listenelement als zweite Zahl der Ergebnispermutation notiert und dieses Element ebenfalls wieder gestrichen Dieses Vorgehen wird fortgesetzt bis schliesslich keine Zahl mehr in der Liste vorhanden und damit die Ergebnispermutation vollstandig ist In Pseudocode kann dieses Verfahren wie folgt implementiert werden function randperm n P zeroes n Ergebnispermutation mit Nullen initialisieren N 1 n Feld mit den Zahlen von 1 bis n for i 1 to n Schleife uber die Eintrage von P z random n i 1 Gleichverteilte Zufallszahl zwischen 1 und n i 1 P i N z Wahle als nachsten Eintrag die z te verbleibende Zahl N setdiff N N z Entferne diese Zahl aus den verbleibenden Zahlen end return P Bereich Zufallszahl Auswahl Ergebnis1 6 5 1 2 3 4 5 6 51 5 3 1 2 3 4 6 5 31 4 4 1 2 4 6 5 3 61 3 1 1 2 4 5 3 6 11 2 2 2 4 5 3 6 1 41 1 1 2 5 3 6 1 4 2Bei diesem Verfahren werden die Platze der Reihe nach durchgegangen wobei jedem Platz eine zufallig aus den jeweils noch verfugbaren Zahlen ausgewahlte Zahl zugewiesen wird Alternativ kann auch der duale Ansatz verfolgt werden bei dem die Zahlen der Reihe nach durchgegangen werden wobei jeder Zahl ein zufallig ausgewahlter noch freier Platz zugewiesen wird In beiden Fallen leidet die Effizienz des Verfahrens darunter dass es aufwandig ist ein bestimmtes Element aus einer Liste zu entfernen beziehungsweise einen bestimmten freien Platz zu finden In einer Standardimplementierung benotigen diese Teilaufgaben im Mittel O n displaystyle O n nbsp Operationen sodass das Gesamtverfahren eine Laufzeitkomplexitat der Ordnung O n 2 displaystyle O n 2 nbsp aufweist In der nebenstehenden Tabelle findet sich ein Beispiel fur die Funktionsweise dieses Verfahrens bei der Erzeugung einer pseudozufalligen Permutation der Lange sechs Die in jedem Schritt ausgewahlte und damit eliminierte Zahl ist dabei durchgestrichen dargestellt Fisher Yates Verfahren Bearbeiten Eine Verbesserung ist das Fisher Yates Verfahren nach Ronald Fisher und Frank Yates Dieses Verfahren arbeitet am Platz das heisst die Zahlen werden im Feld umsortiert und nicht in zusatzlichen Speicher kopiert Sie werden schrittweise umsortiert so dass am Ende eine zufallige Permutation entsteht Um die aufwandige Suche nach einer noch nicht verwendeten Zahl zu vermeiden wird in jedem Schritt die ausgewahlte Zahl ans Ende des aktuell betrachteten Teilfelds gestellt indem sie mit der letzten noch nicht ausgewahlten Zahl vertauscht wird Das Verfahren in Pseudocode function randperm n P 1 n Initialisierung mit der identischen Permutation for i n downto 2 Schleife uber die Eintrage von P ausser dem ersten z random i Gleichverteilte Zufallszahl 1 lt z lt i swap P i P z Vertausche die Zahlen an den Stellen i und z end return P end Bereich Zufallszahl Permutation1 6 5 1 2 3 4 5 61 5 3 1 2 3 4 6 51 4 4 1 2 6 4 3 51 3 1 1 2 6 4 3 51 2 2 6 2 1 4 3 5Die Initialisierung kann dabei wie im Codebeispiel mit der identischen Permutation erfolgen man kann aber auch von einer beliebigen Permutation ausgehen die dann zufallig umsortiert wird Die Permutationsroutine kann somit iterativ aufgerufen werden wobei sie jeweils die vorherige Zufallspermutation umsortiert Da die Vertauschung zweier Elemente eines Felds fester Grosse mit einem konstanten Aufwand erfolgt besitzt das Fisher Yates Verfahren eine Laufzeitkomplexitat der Ordnung O n displaystyle O n nbsp eine erhebliche Verbesserung gegenuber dem direkten Verfahren In der nebenstehenden Tabelle wird das Verfahren anhand eines Beispiels illustriert bei dem eine pseudozufallige Permutation der Lange sechs erzeugt wird Die jeweils miteinander vertauschten Zahlen sind dabei unterstrichen Es kann vorkommen dass eine Zahl mit sich selbst vertauscht wird was keinen Effekt hat Es wurden die gleichen Zufallszahlen verwendet wie in dem Beispiel zum direkten Verfahren allerdings ist die Ergebnispermutation hier eine andere Dieses Verfahren ist beispielsweise in dem numerischen Softwarepaket MATLAB als eingebaute Funktion randperm verfugbar 6 Siehe auch BearbeitenProblem der 100 Gefangenen ein mathematisches Ratsel das auf zufalligen Permutationen basiert RC4 ein Verfahren zur Stromverschlusselung das zufallige Permutationen verwendet Bogosort ein ineffizientes Sortierverfahren das ebenfalls zufallige Permutationen verwendet Linearer Kongruenzgenerator ein Zufallszahlengenerator der bei maximaler Periodenlange eine pseudozufallige Permutation erzeugt Golomb Dickman Konstante der Erwartungswert der relativen Lange des langsten Zyklus in einer zufalligen Permutation fur n displaystyle n to infty nbsp Literatur BearbeitenMiklos Bona Combinatorics of Permutations Discrete Mathematics and Its Applications Nr 72 2 Auflage CRC Press 2012 ISBN 1 4398 5051 8 Philippe Flajolet Robert Sedgewick Analytic Combinatorics Cambridge University Press 2009 ISBN 1 139 47716 1 Donald E Knuth The Art of Computer Programming 3 Auflage Volume 2 Seminumerical Algorithms Addison Wesley 1997 ISBN 0 201 89684 2 Donald E Knuth The Art of Computer Programming 2 Auflage Volume 3 Sorting and Searching Addison Wesley 1998 ISBN 0 201 89685 0 Weblinks BearbeitenEric W Weisstein Random Permutation In MathWorld englisch Einzelnachweise Bearbeiten Alan Camina Barry Lewis An Introduction to Enumeration Springer 2011 ISBN 0 85729 600 0 S 140 Philippe Flajolet Robert Sedgewick Analytic Combinatorics Cambridge University Press 2009 S 658 Donald E Knuth The Art of Computer Programming Volume 3 Sorting and Searching S 15 16 Vladimir Nikolaevic Sackov Probabilistic Methods in Combinatorial Analysis Cambridge University Press 1997 S 30 Hosam M Mahmoud Sorting A Distribution Theory John Wiley amp Sons 2000 ISBN 0 471 32710 7 S 48 randperm In MATLAB Documentation Center The MathWorks archiviert vom Original am 28 Januar 2013 abgerufen am 7 Dezember 2013 Abgerufen von https de wikipedia org w index php title Zufallige Permutation amp oldid 237627157