|
Генератор случайных чисел. |
|
|
|
 |
Ответов
|
Jul 22 2007, 13:43
|
Местный
  
Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723

|
Цитата(Stanislav_S @ Jul 22 2007, 12:32)  А можно подробнее о этих методах, или хотя бы какие ключевые слова для поиска? Таблица - тут, думаю, все очевидно. ПСП - это регистр сдвига с обратной связью, формирующий псевдослучайную последовательность максимальной длины (для твоей задачи за глаза хватит длины 15 бит). Делается его программная модель, и выбираются 4 бита из него. Единственная проблема - он двоичный, а тебе нужен диапазон 0...9, придется отбрасывать числа 10-15. При получении следующего числа для уничтожения явной корреляции нужно "прокручивать" регистр не менее, чем на его длину, например, на 16 циклов. Линейный конгруэнтный метод - берем начальное число, следующие генерим из него: x[n+1] = (a*x[n]+ c) mod M, a, c, М - константы. для M = степень двойки , ПСЧ имеет максимальную длину M, когда C - нечётное, а A mod 4 = 1. Вот простая подборка по теме http://www.uni-vologda.ac.ru/students/pm02...eudorandom.html
|
|
|
|
|
Jul 22 2007, 14:04
|

извечный пессимист
    
Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125

|
Цитата(SIA @ Jul 22 2007, 18:43)  Таблица - тут, думаю, все очевидно. ПСП - это регистр сдвига с обратной связью, формирующий псевдослучайную последовательность максимальной длины (для твоей задачи за глаза хватит длины 15 бит). Делается его программная модель, и выбираются 4 бита из него. Единственная проблема - он двоичный, а тебе нужен диапазон 0...9, придется отбрасывать числа 10-15. При получении следующего числа для уничтожения явной корреляции нужно "прокручивать" регистр не менее, чем на его длину, например, на 16 циклов. Линейный конгруэнтный метод - берем начальное число, следующие генерим из него: x[n+1] = (a*x[n]+ c) mod M, a, c, М - константы. для M = степень двойки , ПСЧ имеет максимальную длину M, когда C - нечётное, а A mod 4 = 1. Вот простая подборка по теме http://www.uni-vologda.ac.ru/students/pm02...eudorandom.htmlОК! Спасибо, буду думать.
--------------------
Slaves are those of this world Given freedom to lay chains upon The Master The wolf is no longer free Release the chains and come for me
|
|
|
|
Сообщений в этой теме
Stanislav_S Генератор случайных чисел. Jul 21 2007, 13:34 Alex255 Цитата(SIA @ Jul 22 2007, 02:24) При тако... Jul 23 2007, 05:24  SIA Цитата(Alex255 @ Jul 23 2007, 09:24) А чт... Jul 23 2007, 08:39   -=ВН=- Цитата(SIA @ Jul 23 2007, 12:39) То, что ... Jul 23 2007, 08:56    Alex255 Цитата(-=ВН=- @ Jul 23 2007, 12... Jul 23 2007, 09:35    SIA Цитата(-=ВН=- @ Jul 23 2007, 12... Jul 23 2007, 15:20     -=ВН=- Цитата(SIA @ Jul 23 2007, 19:20) Да ... Jul 24 2007, 04:58      SIA Цитата(-=ВН=- @ Jul 24 2007, 08... Jul 24 2007, 06:05       -=ВН=- Цитата(SIA @ Jul 24 2007, 10:05) 1. Униве... Jul 24 2007, 06:28        alexQ А может быть все проще?
я делаю так:
// функция r... Jul 31 2007, 08:40
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|