Генератор случайных чисел

 

Изобретение относится к вычислительной технике и может быть использовано для генерирования равномерно .распределенных случайных двоичных чисел при решении задач вероятностного моделирования. Целью изобретения является упрощение генератора . Генератор реализует алгоритм суммирования двух равномерно распределенных случайных чисел по модулю 1/2, задержанных на один и К 50 циклов выработки случайных чисел и 7 содержит блок 3 памяти, сумматор 1 , промежуточный регистр 2 памяти, два счетчика 4, 5 и элемент задержки 6. При поступлении сигнала в блок памяти с шины тактовых импульсов считываемое случайное число из блока памяти по адресу, которым служит содержимое первого счетчика, суммируется с ранее выработанным числом, Хранящимся в промежуточном регистре. Вновь выработанное случайное число с выхода сумматора поступает на вход генератора и на входпромежуточного регистра, с выхода которого ранее выработанное случайное число записывается в блок памяти по адресу, которым является содержимое второго счетчика. После считьшания и записи информации в блок памяти состояние счетчиков изменяется на единицу, состояние которых разнесено на К-1 единиц по модулю К, где К - объем блока памяти. 3 ил. (Л

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК (19) (11) 9 А1 (51) 4 G 06 F 7 58

ОПИСАНИЕ ИЗО6РЕТЕНИЯ

Н А BTOPCHOMV СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 411457) /24-24 (22) 04.09.86 (46) 15,04.88. Бюл. Р 14 (72) И. Я. Миронов (53) 681.325(088.8) (56) Авторское свидетельство СССР

N - 1049904, кл. G 06 F 7/58, 1982.

Авторское свидетельство СССР

1(- 1275436, кл, G 06 F 7/58, 1985. (54) ГЕНЕРАТОР СЛУЧАЙНЫХ ЧИСЕЛ (57) Изобретение относится к вычислительной технике и может быть использовано для генерирования равномерно.распределенных случайных двоичных чисел при решении задач вероятностного моделирования. Целью изобретения является упрощение генератора. Генератор реализует алгоритм суммирования двух равномерно распределенных случайных чисел по модулю

1/2, задержанных на один и К 50 циклов выработки случайных чисел и содержит блок 3 памяти, сумматор 1, промежуточный регистр 2 памяти, два счетчика 4, 5 и злемент задержки 6. При поступлении сигнала в блок памяти с шины тактовых импульсов считываемое случайное число из блока памяти по адресу, которым служит содержимое первого счетчика, суммируется с ранее выработанным числом, хранящимся в промежуточном регистре.

Вновь выработанное случайное число с выхода сумматора поступает на вход генератора и на вход промежуточного регистра, с выхода которого ранее выработанное случайное число записывается в блок памяти по адресу, которым является содержимое второго счетчика. После считывания и записи информации в блок памяти состояние счетчиков изменяется на единицу, состояние которых разнесено на К-1 единиц по модулю К, где К вЂ” объем блока памяти. 3 ил.

8859 дующее.

Обозначим

1 138

Изобретение относится к вычислительной технике и может быть использовано для генерирования равномерно распределенных случайных двоичных чисел при решении задач вероятностноrо моделирования„

Цель изобретения — упрощение генератбра.

На фиг. 1 приведена функциональная схема генератора случайных чисел; на фиг. 2 — графики,.поясняющие фор" мирование равномерно распределенных случайных чисел; на фиг. 3 — примеры интерпретации двоичных кодов случайных чисел на выходе генератора, Генератор случайных чисел (фиг. 1) содержит сумматор.l, регистр 2 памяти, блок 3 памяти, первый 4 и второй

5 счетчики, элемент 6 задержки, шину

7 тактовых импульсов.

Генератор случайных чисел реализует следующий алгоритм<

x(n)=I x(n-))+x(n-к)) (пюа -). ())

Выполнение операции суммирования

1 (1) по модулю (mocl -) означает сле2

Y(n) = X(n-1)+Х n-K), (2)

1 I

Если — - 6Y(n) + -„;, то Х(п) =Х(п), 1

Если + — Y(n) c +1„.то X(n)=Y(n)-1е

Если -1 « Y (n) (— -., то X(n) =Y (n)+ !

1 (3) Реализация соотношений (3) упрощается для дополнительного кода представления двоичных чисел. Цифровая вычислительная техника обрабатывает двоичные числа в дополнительном коде, поэтому реализацию. формулы (1) рассматриваем для дополнительного кода.

В этом случае суммирование по алгоритму (1) производится путем выполнения операции сложения двух чисел без учета переполнения при условии, «ro максимально возможное абсолютное значение машинного числа равно 1/2. Это связано с тем, что для дополнительного кода при переполнении положительного результата сложения автоматически вычитается величина 1,0, а при переполнении отрицательного числа — прибавляется 1,0.

На фиг. 2а показана плотность вероятности случайных чисел X(n-1);

1, 1

X(n-К) в пределах (- — —, + -) . Тогда

2 2 число Y(n) имеет плотность распределения вероятностей треугольной формы (фиг. 2б) в пределах (-1, 0 +

+!,О). Введение поправок по соотношениям (3) переводит плотность распределения вероятностей (2) в величины распределения вероятностей значений чисел X(n) прямоугольной формы (фиг. 2в) т.е. получается новое равномерно распределенное случайное число X(n), вычисленное по алгоритму (1) . Для хранения чисел X(n-1), 1,2. ..К, достаточно иметь блок

3 памяти объемом К 50 ячеек. Для удобства аппаратурной реализации генератора случайных чисел (счетчики) целесообразно выбрать К=2 =2 =64

6 ячейкам, Однако это условие не обязательно, так как известны счетчики, вырабатывающие коды по произвольному модулю К.

Вырабатываемые равномерно распределенные случайные числа по алгоритму (!) имеют период цикличности

Р 2, где m — разрядность двоичных чисел, Так при m=32 (числа с фиксированной занятой в ЭВ!! серии ЕС, АСВТ, CM) период P 0 4 ° 10 чисел.

Измерения статистических свойств образуемых генератором случайных чисел показывают, что их распределения близки к равномерному, причем их энергетический спектр тоже почти равномерный, т ° е, генерируемый шум близок к белому. Рассмотренный генератор можно с успехом использовать для цифровой обработки сигналов, а также при решении задач вероятностного моделирования.

В блоке 3 памяти хранится К равномерно распределенных случайных чи сел, и блок памяти в процессе генерации чисел самообновляется. Для первоначального запуска генератора равномерно распределенные случайные числа можно взять из таблиц.

На фиг. 3 приведены примеры интерпретации двоичных кодов вырабатываемых тч=16-разрядных случайных чисел X(n) на выходе генератора. При представлении двоичных чисел в дополнительном коде фиксированая запятая

1388859 может находиться в произвольном месте. Обычно запятая размещается сразу после старшего (знакового) разряда (абсолютные значения изменяются в пределах (Π†. 1) или после младшего разряда (целые числа в пределах (-21 1 —;(+2(1 — 1)) ..

При расположении запятой сразу после старшего (знакового) разряда имеем следующее. При раздвоении содержимого знакового разряда случайные числа изменяются (см. фиг. 3a) в

1 . 1 пределах (- — —, + -). На фиг. Зб

2 2 представлены случайные числа в пределах (-1,0 †: +1,0). Если ввести дополнительный разряд с состоянием

11 t l

О, считая его старшим, то получим случайные числа (см, фиг. Зв) в пределах (О-:1).

При расположении запятой после младшего разряда (целые числа) имеем следующее: на фиг. Зб — числа в пределах ((-2 1 —;(+2 -1)); на фиг ° Зв — числа в пределах ((01-: +2 - lg ) . I

Генератор случайных чисел работает следующим образом.

При первоначальном запуске в блоке 3 памяти хранится К равномерно распределенных случайных тп-разрядных двоичных чисел с фиксированной запятой в дополнительном коде, взятых из любой таблицы равномерно распределенных чисел, Первый и второй счетчики находятся в начальном состоянии, при этом коды их состояний различаются на К-1 единиц по модулю а (mod К), например при K= 2 =64 можно установить начальное состояние: первый счетчик 4 — код 000000, второй счетчик — код 11111, Перед генерированием очередного случайного числа X(n) по алгоритму (1) в блоке 3 памяти хранится К равномерно распределенных случайных чисел, состояние первого счетчика 4 произвольное, состояние счетчика 5 отличается от состояния первого счетчика 4 на К-1 единиц .по модулю К.

В промежуточном регистре 2 хранится ранее выработанное случайное число

X(n-1).

Генерация очередного равномерно распределенного случайного числа по алгоритму X(n) -(X(n-1)+Х(п-K))

1 (mod -) начинается с поступлением

2 по шине 7 тактового импульса, который поступает на вход элемента 6 задержки и на управляющий вход блока

3 памяти.

Ло этому тактовому импульсу на первый вход сумматора 1 с выхода бло ка 3 памяти поступает число X(n-К) по адресу, которым служит код содержимого первого счетчика 4. Число

X(n-1) с выхода промежуточного регистра 2 поступает по информационному входу в блок 3 памяти и записывается в нем по адресу, которым служит код содержимого второго счетчика 5..

Число X(n-1) с выхода промежуточного регистра 2 также поступает на второй вход сумматора 1, на выходе которого вырабатывается очередное случайное число X(n ) по алгоритму (1). Выработанное случайное число X(n) поступает на вход генератора и в промежуточнь|й регистр 2 ° Тактовый импульс задерживается в элементе 6 задержки на время считывания и записи в блок 3 памяти соответственно чисел X(n"K) и X(n-1) по адресам, которыми являются коды состояний соответственно

30 первого 4 и второго 5 счетчиков. Задержанный в элементе 6 задержки импульс поступает на счетные входы первого 4 и второго 5 счетчиков, состояния которых изменяются на единицу по модулю К.

35 Сумматор 1 представляет собой обычный сумматор, предназначенный

; для сложения двух двоичных чисел в

: дополнительном коде, при этом факт переполнения разрядной сетки сумма40 тора не учитывается. Пределы изменений значений случайных чисел интерпретируются, как показано на фиг, 3. После выработки случайного . числа X(n) генератор находится в сос4 тоянии готовности к выработке оче45 редного случайного числа X(n-1).

Так как адреса считывания и записи случайных чисел разнесены на К-1

50 единиц, а выработанное на предыдущем цикле генерирования случайное число поступает с выхода промежуточного регистра 2, то число X(n) участвует при генерировании только случайного

55 числа Х(п+К) и предлагаемый генератор реализует алгоритм (1), который также реализуется известным устройством-прототипом.

1388859 ормулаиз обретения р ) ) Х1

Составитель А. Карасов

Техред M.Äèäûê Корректор Н. Король

Редактор Е. Копча.

Заказ j580/49 Тираж 704 Подписное

ВНИИПЙ Государственного комитета СССР по делам изобретений и открытий

113035, Иосква, Ж35, Раушская наб., д. 4/5

Производственно-полиграфическое предприятие, r. Ужгород, ул. Проектная, 4

Генератор случайных чисел, содержащий элемент задержки, два счетчика, блок памяти, о т л и ч а ю— шийся тем, что, с целью упрощения, он содержит регистр памяти и сумматор, выход которого является выходом генератора и соединен с информационным входом регистра памяти, выход которого соединен с информационным входом блока памяти и с первым входом сумматора, второй вход которого подключен к выходу блока памяти, синхронизирующий вход которого подключен к выходу источника тактовых импульсов и к входу элемента задержки, выход которого соединен со счетными входами первого и второго счетчиков, информационные выходы которых соединены соответственно с адресным входом считывания и с адресным входом записи блока памяти.

Генератор случайных чисел Генератор случайных чисел Генератор случайных чисел Генератор случайных чисел 

 

Похожие патенты:

Изобретение относится к области вычислительной техники и предназначено для формирования потока импульсов произвольной формы со случайными параметрами для решения задач оптимизации структуры систем

Изобретение относится к вычислительной технике и может быть использовано при моделировании систем с учетом влияния взаимосвязанных внешних воздействий

Изобретение относится к вычислительной технике и может быть использовано при решении задач статистического моделирования

Изобретение относится к вычислительной технике, может быть использовано при решении широкого круга задач вероятностного моделирования

Изобретение относится к области вычислительной техники и может быть использовано при построении различных моделирующих устройств

Изобретение относится к вычислительной технике и может быть использовано при построении .имитационных моделей систем, работающих в условиях случайных возмущений, и для моделироиания различных физических процессов с дискретным фазовым пространством

Изобретение относится к вычислительной технике и может быть использовано при моделировании систем с учетом влияния взаимосвязанных случайных внешних факторов, при построении вычислительных и моделирзгющих ; устройств, а также при построении автоматизированных испытательных комплексов

Изобретение относится к вычислительной технике

Изобретение относится к вычислительной технике и может быть использовано при статистическом моделировании

Изобретение относится к импульс-- ной технике и может быть использовано для генерирования импульсных последовательностей со случайным периодом следования при исследованиях или испытаниях систем связи, радиолокации и навигации, а также систем автоматического регулирования

Изобретение относится к вычислительной технике и может использоваться при статистических исследованиях

Изобретение относится к вычислительной технике и может использоваться при статистических исследованиях

Изобретение относится к специализированным средствам вычислительной техники и предназначено для использования в стохастических вычислительных устройствах

Изобретение относится к вычислительной технике и может быть использовано в вычислительных и моделирующих устройствах, использующих вероятностные принципы представления и обработки информации

Изобретение относится к области контроля качества работы генераторов низкочастотных сигналов и может быть использовано в качестве генератора маскирующих помех

Изобретение относится к области вычислительной техники и может быть использовано в качестве зашумляющих устройств в различных каналах связи

Изобретение относится к радиотехнике и может быть использовано в компьютерной технике, технике связи и локации

Изобретение относится к области вычислительной техники и может быть использовано в устройствах, моделирующих случайные процессы

Изобретение относится к области вычислительной техники и может быть использовано в системах для обработки информации
Наверх