public static InversionMove[] Apply(Permutation permutation, IRandom random, int sampleSize)
        {
            int length = permutation.Length;

            InversionMove[] moves = new InversionMove[sampleSize];
            for (int i = 0; i < sampleSize; i++)
            {
                moves[i] = StochasticInversionSingleMoveGenerator.Apply(permutation, random);
            }
            return(moves);
        }
 protected StochasticInversionSingleMoveGenerator(StochasticInversionSingleMoveGenerator original, Cloner cloner) : base(original, cloner)
 {
 }
 protected StochasticInversionSingleMoveGenerator(StochasticInversionSingleMoveGenerator original, Cloner cloner) : base(original, cloner) { }