Explanation

Monte Carlo simulations for comparing the efficiency of algorithms that may be executed manually without electronics for shuffling a deck of playing cards and for determining how well a shuffle was executed. The starting vector contains the ascending sequence numbered 1..52.

Please see the source code of each algorithm in the following text box for implementation details of each metric and shuffle algorithm. You can modify any argument or constant to see its effect after pressing the `Run` button. You can pick a deterministic random seed (`o.seed`), change the number of cards in a deck (`o.cards`), adjust the dimensions of a chart (`o.columns` and `o.bins`) or increase `o.samples` to trade off variance for speed. References:

Shuffling algorithms

Creates a random permutation by altering the order of elements within the sequence:

Metrics

Each metric estimates on a different scale how much the vector is different from the ascending sequence:

Requirements

You can install a web browser that supports at least JavaScript 1.0 (1995) to run this application or you may consider implementing a GemiWeb0 browser with JavaScript0 yourself according to the following specification:

bkil.gitlab.io/gemiweb0

Shuffle and metrics scripts