In particular, it is an elegant application of the inclusion–exclusion principle to show that the probability that there are no fixed points approaches 1/ e. The probability distribution of the number of fixed points in a uniformly distributed random permutation approaches a Poisson distribution with expected value 1 as n grows. It's easy to verify that any permutation of n elements will be produced by this algorithm with probability exactly 1/ n!, thus yielding a uniform distribution over all such permutations. , x i − 1 have already been chosen), one chooses a number j at random between 1 and n − i + 1 and sets x i equal to the jth largest of the unchosen numbers.Ī simple algorithm to generate a permutation of n items uniformly at random without retries, known as the Fisher–Yates shuffle, is to start with any permutation (for example, the identity permutation), and then go through the positions 0 through n − 2 (we use a convention where the first element has index 0, and the last element has index n − 1), and for each position i swap the element currently there with a randomly chosen element from positions i through n − 1 (the end), inclusive. This can be avoided if, on the ith step (when x 1. This brute-force method will require occasional retries whenever the random number picked is a repeat of a number already selected. One method of generating a random permutation of a set of size n uniformly at random (i.e., each of the n! permutations is equally likely to appear) is to generate a sequence by taking a random number between 1 and n sequentially, ensuring that there is no repetition, and interpreting this sequence ( x 1. Generating random permutations Entry-by-entry brute force method A good example of a random permutation is the shuffling of a deck of cards: this is ideally a random permutation of the 52 cards. The use of random permutations is often fundamental to fields that use randomized algorithms such as coding theory, cryptography, and simulation. Sequence where any order is equally likelyĪ random permutation is a random ordering of a set of objects, that is, a permutation-valued random variable.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |