Что означает «посев»? - PullRequest
       42

Что означает «посев»?

14 голосов
/ 25 октября 2009

Очень простой вопрос. Что вообще означает термин «посев»? Я поставлю контекст, то есть вы должны заполнить случайные функции.

Ответы [ 4 ]

27 голосов
/ 25 октября 2009

Это значит: выбрать место для начала.

Думайте о генераторе псевдослучайных чисел как о действительно длинном списке чисел Этот список является круговым, в конце концов он повторяется.

Чтобы использовать его, вам нужно выбрать начальное место. Это называется "семя".

13 голосов
/ 25 октября 2009

Большинство случайных функций, которые распространены на персональных компьютерах, не случайны, а в определенной степени детерминированы. «Семя» для этих псевдослучайных функций является отправной точкой, на которой основываются будущие значения. Это полезно для целей отладки: если вы сохраняете начальное значение одинаковым от исполнения к выполнению, вы получите те же числа.

Чтобы получить числа, которые являются более случайными, часто используется другое начальное число от исполнения к выполнению. Это часто зависит от времени машины.

Этот метод полностью отличается от генерации «истинного» случайного числа на основе какого-то физического свойства в окружающем нас мире. Лавовые лампы и солнечные пятна - два из более «забавных» свойств, которые можно наблюдать, чтобы генерировать «более случайные» числа. Любой может нажать http://www.random.org/, чтобы получить реальное случайное число, если оно действительно необходимо, как для покерного сайта. Если у вас нет хорошего генератора, люди могут попытаться выяснить, как работает генератор, и предсказать будущие числа.

2 голосов
/ 25 октября 2009

Представьте себе карточную игру и разработку игровой программы вместо запуска игры, чтобы играть в нее.

Генераторы псевдослучайных чисел используют начальное или начальное число для определения начальной точки последовательности. Некоторые из них всегда создают одну и ту же последовательность, другие могут создавать разные последовательности в зависимости от семени. Некоторые используют каскад, простому ГСЧ дается простое начальное число, и некоторое время его запускают, чтобы получить более сложное начальное число для шедевра ГСЧ.

Весьма полезно иметь возможность сознательно повторять последовательность действий при разработке программы или при желании воспроизвести предыдущие результаты.

Однако представьте карточную игру. Очевидно, что не стоит всегда раздавать одну и ту же последовательность карт.

2 голосов
/ 25 октября 2009

Функция «Seeding» не позволяет выдавать одинаковую последовательность случайных чисел. Думайте об этом как о супер-случайном запуске вашего генератора случайных чисел.

...