Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
На основе чего вы решили что распределение будет честным? Математические обоснования есть? У меня лично большие сомнения в этом, чисто интуитивно. Когда что-то исключаешь, то результат никак не может быть честным, ибо ты вносишь некую ЗАКОНОМЕРНОСТЬ в процесс генерации. Другое дело, если процесс исключения носил случайный характер, тогда его действие было бы нейтрально.
Теперь мы должны поинтересоваться, что такое процесс исключения. Ведь, так?
На основе чего вы решили что распределение будет честным? Математические обоснования есть? У меня лично большие сомнения в этом, чисто интуитивно. Когда что-то исключаешь, то результат никак не может быть честным, ибо ты вносишь некую ЗАКОНОМЕРНОСТЬ в процесс генерации. Другое дело, если процесс исключения носил случайный характер, тогда его действие было бы нейтрально.
Тут математическое обоснование проще не бывает. Например, генератор выдает числа 0, 1, 2, 3, 4. Нужно получить число 0 или 1 (как остаток от деления на 2). Всего вариантов 5, вероятность выпадания каждого числа 0.2, но четных три, а нечетных 2, поэтому вероятность 0 будет 0.6, а вероятность 1 - 0.4. Делаем так: получаем случайное число, если это 4 - пропускаем и запрашиваем новое число. В итого вероятность получения четного и нечетного чисел выравнивается и соответственно выравнивается вероятность получения 0 и 1 в виде остатка.
Неправда Ваша. Вот, есть бинарные опционы. Предлагаю все наоборот. Если вверх дернулась, то плюс, а если вниз - минус. ГПСЧ.
Минус единицу! Умножай на минус единицу!
Тут математическое обоснование проще не бывает. Например, генератор выдает числа 0, 1, 2, 3, 4. Нужно получить число 0 или 1 (как остаток от деления на 2). Всего вариантов 5, вероятность выпадания каждого числа 0.2, но четных три, а нечетных 2, поэтому вероятность 0 будет 0.6, а вероятность 1 - 0.4. Делаем так: получаем случайное число, если это 4 - пропускаем и запрашиваем новое число. В итого вероятность получения четного и нечетного чисел выравнивается и соответственно выравнивается вероятность получения 0 и 1 в виде остатка.
Да, всё верно. Чё-то я сразу не сообразил... И только сейчас понял, что мои формулы с целочисленными расчётами ошибочны. Странно, что никто не обратил внимание, там же полная хрень получалась )
Более того, даже расчёты с плавающей точкой дают ощутимую погрешность. Ваш упрощённый пример наглядно показывает, что единственно правильный способ - это исключать хвост, как и предлагал SemenTalonov.
Приведу наглядный пример.
Диапазон: 0 - 999
Кол-во бросков: 10 000 000
Верхняя линия - распределение кол-ва всех отданных генератором чисел (с хвостом)
Нижняя линия - распределение кол-ва с исключением из выдачи чисел в последнем некратном диапазоне (без хвоста)
По графикам очевидно, без коррекции, числа больше 760 выпадают реже.
Вот такой код у меня родился. Сорри за растянутость, но так удобнее читается.