A véletlenszerű permutáció objektumok halmazának véletlenszerű sorrendje, azaz olyan valószínűségi változó , amelynek elemi eseményei permutációk . A véletlenszerű permutációk használata gyakran az alap a véletlenszerű algoritmusokat használó mezőkben . Ilyen területek a kódoláselmélet , a kriptográfia és a modellezés . A véletlenszerű permutáció jó példája a kártyapakli megkeverése .
Az egyik módszer n elemből álló halmaz véletlenszerű permutációjának generálására az , hogy egyenletes eloszlást használunk, amely 1 és n közötti szekvenciális véletlen számokat választ ki , miközben biztosítja, hogy ne legyenek ismétlődések. Az így kapott sorozatot ( x 1 , …, x n ) permutációként értelmezzük
A közvetlen generálási módszer megköveteli egy véletlen szám kiválasztásának megismétlését, ha a kihúzott szám már a sorozatban van. Ez elkerülhető, ha az i - edik lépésben (amikor x 1 , …, x i - 1 már ki van választva) választunk egy j véletlenszámot 1 és n - i + 1 között, majd kiválasztjuk, hogy x i egyenlő a j -edik nem választott szám.
Egy egyszerű algoritmus n elem véletlenszerű permutációjának (egyenletes eloszlású) generálására ismétlődés nélkül, Knuth shuffling néven ismert , tetszőleges permutációval kezdődik (például azonos permutációval az elemek permutációja nélkül), és az 1-es pozícióból az n -1- es pozícióba lép. az elem permutálása i pozíciókkal egy véletlenszerűen kiválasztott elemmel az i -től n - ig terjedő pozíciókban. Könnyen kimutatható, hogy így n elem összes permutációját pontosan 1/ n ! valószínűséggel kapjuk meg.
A fix pontok számának valószínűségi eloszlása egyenletes eloszlású véletlenszerű permutációkban n elemen közelíti a Poisson-törvényt n növekedésével . A fix pontok számának számlálása a befogadás-kizárás formula használatának klasszikus példája , amely azt mutatja, hogy a fix pontok hiányának valószínűsége megközelíti az 1/ e -t . Ebben az esetben a fix pontok számának matematikai elvárása 1-gyel egyenlő a permutáció bármely méretére. [egy]
Mint minden véletlenszerű folyamat esetében, a permutációgeneráló algoritmusok minősége, különösen a Knuth-féle keverőalgoritmus, a mögöttes véletlenszám-generátortól, például az álvéletlenszám- generátortól függ . Számos lehetséges véletlenszerűségi teszt létezik , mint például a kemény tesztek . Egy ilyen teszt tipikus példája az, hogy olyan statisztikát választunk, amelynek eloszlása ismert, és ellenőrizzük, hogy ennek a statisztikának a megoszlása a kapott permutációk halmazán elég közel van-e a valós eloszláshoz.