Indexing Large Permutations in Hardware

Files
TR Number
Date
2019-06-07
Journal Title
Journal ISSN
Volume Title
Publisher
Virginia Tech
Abstract

Generating unbiased permutations at run time has traditionally been accomplished through application specific optimized combinational logic and has been limited to very small permutations. For generating unbiased permutations of any larger size, variations of the memory dependent Fisher-Yates algorithm are known to be an optimal solution in software and have been relied on as a hardware solution even to this day. However, in hardware, this thesis proves Fisher-Yates to be a suboptimal solution. This thesis will show variations of Fisher-Yates to be suboptimal by proposing an alternate method that does not rely on memory and outperforms Fisher-Yates based permutation generators, while still able to scale to very large sized permutations. This thesis also proves that this proposed method is unbiased and requires a minimal input. Lastly, this thesis demonstrates a means to scale the proposed method to any sized permutations and also to produce optimal partial permutations.

Description
Keywords
permutations, combinatorics, hardware acceleration, Fisher-Yates, Knuth-Shuffle
Citation
Collections