Генератор случайных чисел
Изобретение относится к вычислительной технике и может быть использовано в качестве приставки к универсальной ЭВМ дли получений чисел, подчиняющихся зако , нам распределения Пирсона и Джонсона. Цель изобретения - расширение функциональных возможностей за счет формирования случайных чисел, подчиняющихся закону распределения Джонсона. Генератор содержит генератор 1 тактовых импульсов , счетчик 2, дешифратор 3, блок 4 памяти, регистр 5, элемент ИЛИ 6, элементы И 7, 13-16, датчик 17 равномерно распределенных случайных чисел, элемент ИЛИ 18, ключ 19, блок 20 сложения и вычитания. элементы ИЛИ 21-25. элемент 26 задержки, элемент ИЛИ 27, элементы 28-30 задержки, ключи 31-37. блок 38 умножения, регистр 39, элементы 8-12 ЗАПРЕТ. Поставленная цель достигается за счет введения новых связей и блоков. 1 ил.. 4 табл. У Ё о чэ 00 со 00
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
ГОСУДАРСТВЕННЫМИ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР (я)ю G 06 F. 7/58 а 7
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
Ф%
Мв
1 (21).4677882/24 (22) 12.04,89 (46) 15.11.91. 6еп. М 42 (72) Л.А.Мартйщенко; А;Е;Филюстин, A.È Лысенков, Р.С.Давлиев и 8;С.Малиновский (53) 681.3(088.8) (56) Авторское свидетельство СССР t4 1363198, m„G 06 F 7/58, 1985.
Авторское свидетельство СССР
М 1405056, кл. G 06 F 7/58, 1986. (54) ГЕНЕРАТОР СЛУЧАЙНЫХ ЧИСЕЛ (57) Изобретение относится к вычислительной технике и может быть использовано в качестве приставки к универсальной ЭВМ для получения чисел, подчиняющихся закоПуск
„„«Ы„„1691838 А1 нам распределения Пирсона и Джонсона.
Цель изобретения — расширение функциональных возможностей за счет формирования случайных чисел, подчиняющихся закону распределения Джонсона. Генератор содержит генератор 1 тактовых импульсов, счетчик 2, дешифратор 3, блок 4 памяти, регистр 5, элемент ИЛИ 6, элементы И 7, 13 — 16, датчик 17 равномерно распределенных случайных чисел, элемент ИЛИ 18, ключ
19, блок 20 сложения и вычитания, элементы
ИЛИ 21-25, элемент 26 задержки, элемент
ИЛИ 27, элементы 28 — 30 задержки, ключи
31-37, блок 38 умножения, регистр 39, элементы 8-12 ЗАПРЕТ. Поставленная цель до- . стигается за счет введения новых связей и блоков. 1 ил., 4 табл.
", 691838
Изобретение относится к вычислительной технике и может быть использовано в приставках к универсальным ЭЦВМ для получения случайных чисел, подчиняющихся законам распределения Пирсона и Джон- 5 сона.
Цель изобретения — расширение функ, циональных возможностей за счет форми, рования случайных чисел, подчиняющихся закону распределения Джонсона. 10
На чертеже показана структурная схема и редла гаемо го устройства.
Генератор случайных чисел содержит генератор 1 тактовых импульсов, счетчик 2, дешифратор 3, блок 4 памяти, регистр 5, 15 элемент ИЛИ 6, элемент И 7, элементы 8-12 запрета, элементы И 13-16, датчик 17 равномерно распределенных случайных чисел, элемент ИЛИ 18, ключ 19, блок 20 сложения и вычитания., элементы ИЛИ 21 — 25, элемент 20
26 задержки, элемент ИЛИ 27, элементы
28 — 30 задержки, ключи 31 — 37, блок 38 умножения и регистр 39.
Генератор 1 тактовых импульсов, счетчик 2, дешифратор 3, элементы ИЛИ 6, 18, 25
21 — 25 и 27, элементы И 7, 13 — I6, элементы
8-.12 запрета, элементы 26, 28 — 30 задержки, ключи 19, 31 — 37. и функциональные связи между ними образуют схему управления работой генератора при моделировании зако- 30 нов Пирсона и Джонсона.
Управляющие сигналы, вырабатываемые схемой управления, приведены в табл. 1.
В табл. 1 переменной F обозначена логическая функция вида 35
F = F4Fg (F< + Р2); (:) где F<, Fz, F3, Fg — переменные, описывающие соответственно состояние первого, второго,.третьего и четвертого выходов регистра 5. 40
Схема, реализующая функцию (1) представлена элементами ИЛИ 6 и И 7 и регистром 5.
Генератрр работает следующим образом. 45
Последовательность выполнения операций приведена в табл. 2.
В регистр 5 записывается код признака закона распределения (коды адресов величин даны в табл. 3 и 4). 50
По сигналу, поступающему на вход
"Пуск" генератора случайных величин, начинается его работа. Код признака закона ðàñпределения и код, определяемый 55 состоянием триггеров счетчика 2, определяет адрес той или иной величины, хранящейся в блоке 4 памяти,. Рассмотрим работу генератора при реализации законов Пирсона (F = О).
Под воздействием сигнала запуска начинает работу генератор 1 тактовых импульсов, который первым импульсом устанавливает на счетчике 2 код 0001, На первом, выходе дешифратора 3 появляется сигнал, который запускает датчик 17 равномерно распределенных случайных чисел.
Сигнал с первого выхода дешифратора, кроме того, проходит через элементы ИЛИ 18 и задержки 30 на блок 4 памяти и запускает
его на считывание величины F(m) для одного из распределений Пирсона. Величина из блока 4 поступает на первый информационный вход блока 20 сложения и вычитания, на второй вход которого с датчика 17 подается случайное число а. Второй импульс. подаваемый с генератора 1, устанавливает в счетчике 2 код 0010, На втором выходе дешифратора 3 появляется сигнал, который запускает блок 20 на выполнение вычитания а- F(m), Одновременно этот сигнал поступает на управляющий вход ключа 19 и через элемент ИЛИ 21 на управляющий вход ключа
33. Кроме того, сигнал с второго выхода дешифратора 3 через элементы ИЛИ 18 и задержки 30 поступает на блок 4 памяти, под действием которого происходит считывание величины Pz и подача ее на второй информационный вход блока 38 умножения. После выполнения вычитания величина 2<= аF(m) через ключ 19 поступает в регистр 39, где запоминается и далее через ключ 33 поступает на первый информационный вход умножителя 35, Сигнал с генератора 1 устанавливает в счетчике 2 код 0011. С третьего выхода дешифратора 3 сигнал поступает через элемент 22 ИЛИ на вход синхронизации блока
38 умножения, под действием которого происходит перемножение величин il1 и i .
Одновременно с этим формируются сигналы (см. табл. 1), которые поступают на управляющий вход ключа 36 и вход чтения блока
4 памяти. С блока 4 величина Р1 поступает на первый вход блока 20, на второй вход которого с блока 38 через ключ 36 подается результат умножения Z>. Под действием четвертого импульса генератора 1 счетчик 2 переводится в состояние 0100. С четвертого выхода дешифратора 3 сигнал поступает через элемент ИЛИ 25 на вход задания режи-. ма сложения блока 20, под действием которого блок 20 проводит операцию сложения. Кроме того, формируются сигналы (см. табл. 1), которые поступают на управляющие входы ключей 32 и 33. Результат сложения Z> через ключ 32 поступает на первый вход информационного блока 38, на второй
1691838 информационный вход которого с регистра
39 через ключ 33 подается величина Л1 . Под действием пятого импульса генератора 1 на пятом выходе дешифратора 3 фор- 5 мируется сигнал, который поступает через элемент ИЛИ 22 на вход синхронизации блока 38, Под действием этого сигнала в блоке 38 происходит перемножение величин Л1 и Zz. Одновременно с этим форми- 10 руется сигнал, который поступает на управляющий вход ключа 33. Кроме того, сигнал с пятого выхода дешифратора 3 через элементы задержки 26 и запрета 11 поступает на управляющий вход ключа 34. 15
Результат перемножения через ключ 34 поступает на первый информационный вход блока 38, на второй информационный вход которого с регистра 39 через ключ 33 поступает величина Л1 .20
Под действием шестого импульса генератора 1 на шестом входе дешифратора 3 формируется сигнал, под действием которого происходит следующее (см. табл. 1 — 4): перемножение в блоке 38 величин Л1 и Ез; подача с блока 4 на первый информационный вход блока 20 величины /3з; подача на второй информационный вход блока 20 через ключ 36 произведения Z4.
Под действием седьмого импульса гене- 30 ратора 1 в блоке 20 проводится операция вычитания (/Зз - Zp) и результат Zg подается через ключ 32 на первый информационный вход блока 38, на второй вход которого с регистра 39 через ключ 33 подается величи- 35 на Л . Под действием восьмого импульса генератора 1 в блоке 38 происходит перемножение величин Л1 и Zg, результат Z6 через ключ 36 подается на второй вход блока 20, на первый вход которого с блока 4 подается величина m.
Под действием девятого импульса гене. ратора 1 на девятом выходе дешифратора 3 формируется сигнал, который поступает на вход остановэ генератора 1 и выключает его. Под действием. этого же сигнала в блоке
20 происходит сложение величин m и Еэ.
Результат Х1 через ключ 31 поступает на выход генератора случайных чисел. Одновременно с этим сигнал с девятого выхода дешифратора 3 через элемент 29 задержки поступает на вход "Сброс" счетчика 2 под действием которого счетчик 2 обнуляется.
Для формирования следующего случайного числа необходимо на вход "Пуск". подать сигнал. Далее работа генератора случайных чисел аналогична.
Рассмотрим работу генератора при реализации законов Джонсона (F =- 1).
Работа генератора случайных чисел по реализации законов Джонсона при выработке генератором 1 четырех тактовых импульсов аналогична работе генератора случайных чисел по реализации законов
Пирсона. Только вместо величин F(m), Д и Р> с блока 4 памяти подаются величины Г(Х,), К4 и Кз. Результаты действий в блоках 32 и 35 обозначены и приведены в табл. 2 для законов распределения Джонсона(Л1 = а- F(X,); Y< = Л К4; Y2 = Кз+ У ), Под действием пятого импульса генератора 1 счетчик 2 переходит в состояние
0101. Под действием сигнала. подаваемого с пятого выхода дешифратора 3 через ключ
32 на вход синхронизации блока 38 умножения, осуществляется перемножение величин Л и Уг. Одновременно с этим вырабатываются управляющие сигналы,.которые поступают на управляющий вход ключа 35 и вход чтения блока 4 памяти. В результате этого результат Уз с блока 38, через ключ 35 подается на второй вход блока 38; на первый вход которого с блока 4 подается величина К1.
Под действием шестого импульса генератор 1 на шестом выходе дешифратора 3 формируется сигнал, который через элемент ИЛИ 22 поступает на управляющий вход блока 38 умножения. Под действием этого сигнала в блоке 38 происходит перемножение величин К1 и Уз. Одновременно с этим формируются сигналы, которые поступают на управляющие входы ключа 36 и блока 4 памяти. Результат перемножения с блока 38 через ключ 36 поступает на второй вход блока 20 сложения и вычитания, на первый вход которого с блока 4 подается величина Кр, Под действием седьмого импульса генератора 1 на седьмом выходе дешифратора 3 формируется сигнал, под действием которого в блоке 20 происходит сложение величин
К2 и У4. Результат Уь через ключ 32 подается на первый вход блока 38 умножения, на второй вход которого с регистра 39 через ключ
33 подается величина k .
Под действием восьмого импул ьса генератора 1 в блоке 38 происходит перемножение величин k u Yg. Результат Ув через ключ.35 поступает на второй вход блока 38, на первый вход которого поступает величина К>. Под действием девятого импульса выключается генератор 1 и в блоке 38 происходит перемножение величин Л1 и У .
Результат Х1 через ключ 37 поступает на выход генератора, 1691838
15 (Ю)
Работа генератора основана на следующих теоретических предпосылках.
Известно, что уравнения
eEP f--}((— 4tP«fx-Е) «, (2) . г } г Ф- tl!}«)i, х °
; } а - Н}2 « "У }} — . }"I "Я ( где y,е у Я вЂ” параметры распределения. являются ура(внениями Джонсона (соответ ственно трехпараметрическое семейство
8(., четырехпараметрические семейства Sou ., Sg распределений Джонсона).
С помощью рядов вида: ге(,.- F(x,))"
» =2272 D I» (E}
ЧрО р и соотношений
1 1 Dx =—
2 1 d 1 F (х . --р.—
p)
° ° (Я вЂ” (F РЗ вЂ” 3FЪР2)
) 7 и т.д. может быть создан алгоритм, позволя,ющий преодолеть трудности моделирова ния распределений, апроксимированных кривыми Джонсона. !
Используя ряд вида (5) и соотношения (6) для распределений Джонсона (2), (3) и (4), : получают соответственно следующие моделирующие зависимости.
Для расп}ределения SL
- 2" (Х -Е3
I х
} 1
3/2 } (гг Б,«г}(« Й, —,;)),I где — и ф = + I()(xo -е)3 )
tl получают
Х =А1К1К2 +ЗВКЗ +4@4 или
Х =ЙК1(К2 +Л1К)(Кз + "1К4)) где
Y, ° ЕКР ((/2Ц,); л,= (,-(:(x,); г(2" (Xe Е ), г хг г г
KI.. (I (2I(4U, 2}(- ГЦ, — ))»
Для распределения Se рг ((2х (}(р-Е)()}-Х44Е) !
Х, . ()(0 1 рглх (У2() ) (йл (ХР Е)(1 Xe Е)х
12
° )(,, 2-2»" 22 .};;}
ОЭ (() (222) (Хр-Е)П-Хрр f ) ( (2}} ° х ()}-2Х4426) ЗР-2х 42Е) Я лагг г 2 2(г.)(г 2
25 У(}(-<>(>-хреЕ) 1 лег)}2 где
30 У2 = (y+МГ-Вт)} получают
X =Л)К (К2+Л)К)(Кз+А)К4)) где
К,р ех р (1(2Ц );
Р е F (Хр) Г2Л (X»2 <) ($ - Хр 4 f)
g )( л ()гр - E)(> - "р Е) (3-2У22428 . О ). а0 р 2р 24 4 2(2
22г« I» -Г)г»-х 2)(22-EII 222 .. Ы буй «22 2
Для распределения SU ()е (2t f(x»2-Я) е 3!4
Ог ) . 222 e}(р ф )) хр 4 (24 Е) +2)ф у«( ххр " г((+ )(, г( (Ю) (2
}}, 2222 22p}222}} }I г. 2> 22 «} (Х - )грие где ((л < « "("" Г"}Ч У
5
20
35
50
55 получают
Х =Л.)К)(К2+АК)(Кз+Л Кэ}2 где
К д акр(<) Ц );
)< «д< -f< x )
-ГЖ 4хд - Е ) < Г
"й"
"fi д t7)«lf fy дИ«,Э О .% ) к (6 д- - М д З«<д-а) Г g <Хд g)< «32 Таким образом определяется структура моделирующего алгоритма, обеспечивающего имитацию распределений Джонсона. X> =kK В прототипе используется зависимость вида X =и) +Афз -4P<+kA}), по которой осуществляется моделирование случайных чисел, распределенных по законам Пирсона ib =а — F(N} Формула изобретения Генератор случайных чисел, содержащий датчик равномерно распределенных случайных чисел, блок памяти, блок сложения и вь)читания„блок умножения, дешифратор, генератор тактовых импульсов, три элемента И, четыре элемента задержки, два регистра, счетчик, выход которого соединен с входом дешифратора, первый выход которого соединен с входом "Пуск" датчика рав. номерно распределенных случайных чисел,первый, второй и третий элементы ИЛИ, выход которого соединен с входом первого элемента зад<ержки, выход соединен с входом задания режима сложения блока сложения и вычитания, пятый, шестой, седьмой и восьмой элементы ИЛИ, выход третьего элемента И соединен первым входом первого элемента ИЛИ, выход которого соединен с входом синхронизации блока умножения, отличающийся тем, что, с целью расширения функциональных возможностей за счет формирования случайных чисел, подчиняющихся законам распреде.ления Джонсона, в него введены два элемента И; восемь ключей и пять элементов запрета, причем вход запуска генератора тактовых импульсов является входом "Пуск" генератора, выход генератора тактовых импульсов соединен со счетным входом счетчика, второй выход дешифратора соединен с входом задания режима вычитания блока сложения и вычитания, вход синхронизации которого соединен с выходом первого элемента запрета, третий выход дешифратора соединен с вторым входом первого элемента ИЛИ и первым входом второго и третьего элементов ИЛИ, четвертый выходдешифратора соединен с первыми входами четвертого, пятого и шестого элементов ИЛИ, пятый выход дешифратора соединен с входом второго элемента запрета, с третьим входом первого элемента ИЛИ и подключен к первому входу первого элемента И, выход которого соединен с вторым входом третьего элемента ИЛИ, пятый выход дешифратора через второй элемент задержки соединен с информационным входом третьего элемента запрета и первым входом седьмого элемента ИЛИ, выход которого соединен с первым входом второго элемента И, выход которого соединен с уп ра вля ющим входом первого ключа, выход которого соединен с первым информационным входом блока умножения, второй информационный вход которого через МОНТАЖНОЕ ИЛИ соединен с выходом второго и третьего ключей, шестой выход дешифратора соединен с четвертым входом первого элемента ИЛИ, вторым входом второго элемента ИЛИ и подключен к третьему входу третьего элемента ИЛИ, выход первого элемента задержки соединен с сходом чтения блока памяти, выход которого соединен с первым входом блока сложения и вычитания и подключен через МОНТАЖНОЕ ИЛИ к выходу третьего ключа, информационный вход которого соединен с информационными входами четвертого и пятого ключей и подключен к выходу. блока сложения и вычитания, второй вход четвертого элемента ИЛИ соединен с выходом пятого элемента И, первый вход которого соединен информационным входом первого элемента запрета и подключен к седьмому выходу дешифратора, восьмой выход которого соединен с пятым и четвертым входом соответственно первого и третьего элементов ИЛИ и информационным входом четвертого элемента запрета, выход которого соединен с третьим входом второго элемента ИЛИ, выход которого соединен с управляющйм входом шестого ключа, выход которого через МОНТАЖНОЕ ИЛИ соединен с входом датчика равномерно распределенных случайных чисел и подключен к второму информационному входу блока сложения и вычитания, девятый выход дешифратора через третий элемент задержки соединен с входом сброса счетчика, девятый выход дешифратора соединен с 1691838 11 Таблица! Состояние выходов Управляоаие сигналы, поступаэхаие на Реализуемые законы рэспределения (знаиенил функции Г) 1 Блок 20 блок Блок 38 4 Клони 3 (3 2 1 19 )1 Выии- Внии- (no 1 танке тание|ые г 39 36 37 0 О О 0 6 О 1 0 О О 1 О О 1 1 6 О О 0 О О О 0 1 1 0 0 6 О 6 1 1 О I 0 О 6 0 О 1 О 6 0 1 G О 1 1 0 1 О О 0 0 1 1 6 6 0 0 6 0 О 0 0 6 I 6 1 G G 1 О 0 G 0 1 6 6 1 0 О 0 0 0 0 1 i! 0 0 0 0 6 6 1 1 0 0 О 6 0 О I 0 1 О 6 0 1 0 О G 0 6 I 1 6 0 0 6 О 0 0 1 О О Законы рас .. пределения Пирсона (F 0) I 1 G 6 1 1 О 6 0 О 0 О 1 1 0 6 6 6 6 6 0 .О 0 1 и 0 0 1 6 6 0 C i) 6 О I О 0 1 G 6 6 a a a G a a G 6 0 6 6 1 0 0 6 I 0 О 0 О 0 О 0 О 0 0 1 О О 0 6 Законы распределения Виансона (е !) 0 I 0 О О 0 1 1 0 6 1 G 1 0 О О О 0 О 0 6 О 1 0 О и Л 1 О . О 0 6 О 1 0 1 0 О О 0 . 6 6 0 I 0 О I 1 О 0 1 1 О О 0 О 0 6 1 1 6 О О 1 1 О О О 1 О 0 0 О О 1 0 6 О О О О 0 6 6 О О 1 О 6 1 0 0 входом останова генератора трактовых импульсов, второй выход дешифратора соединен с управляющим входом четвертого ключа, выход которого соединен с информа" ционным входом первого регистра, выход 5 которого соединен с информационным входом седьмого ключа, выход которого соединен с вторым информационным входом блока умножения, второй выход дешифратора соединен с вторым входом шестого 10 элемента ИЛИ, выход которого соединен с управляющим входом седьмого ключа, выход второго элемента запрета соединен с третьим входом шестога элемента ИЛИ, чет-. вертый вход которого соединен с седьмым 15 выходом дешифратора, выход четвертого элемента И соединен с управляющими входами первого, второго, третьего, четвертого и пятого элементов запрета и вторым входом первого и пятого элементов И, первый 20 выход дешифратора соединен с пятым входом третьего элемента ИЛИ, шестой вход которого соединен с вторым выходом де шифратора, девятый выход которого соеди. нен с первым входом третьего элемента И, 25 выход блока умножения соединен с информационными входами первого, второго, шестоГО и Восымого ключей, Выходы пятоГО и восьмого ключей объединены и являются разрядным выходом генератора, управляющий вход восьмого ключа соединен с выходом третьего элемента И, второй вход которого соединен с выходом четвертого элемента И, восьмой выход дешифратора через третий элемент задержки соединен с вторым входом седьмого элемента ИЛИ, седьмой выход дешифратора соединен с вторым входом третьего элемента ИЛИ, выход которого соединен с управляющим входом третьего ключа, девятый выход дешифратора соединен с информационным входом пятого элемента запрета, выход которого соединен с третьим входом четвертого элемента ИЛИ и подключен к управляющему входу пятого ключа, первый, второй, третий и четвертый разрядные выходы второго регистра соединены соответственно с первым и вторым входами восьмого элемента ИЛИ и с первым и вторым входами четвертого элемента И, третий вход которого соединен с выходом восьмого элемента ИЛИ, первый, второй, третий и четвертый разрядные выходы второго регистра соединены с соответствующими старшими разрядами адресного входа блока памяти, младшие разряды адресного входа которого соединены с соответствующим выходным разрядом счетчика. 169i838 Таблица 2 Резупь- Споже- Вычита- Умноже- Чтение Запись тат ние ние ние Законы рас- 1 Операция пределения j 0С 04-F (m) 33,к Рв P,,+ Z< 93,«Ее 3 в Хв 33; Z4 Aq я 5 Р(ш) pz р A> )33 РЗ Пирсона Х F(X,) % ! 3(4 К ф К! КВ О3, K(Джонсона Х а Л Табли Код адресов величин Выдача Х F(m) 6 Ь 0001аа30 аооЕоо33 ооо1011о 00011001 003 10010 ОЕЕтОВО ЕОЕОООЕО t0110010 11000010 00100011 00110011 03000011 01010013 01100031 01110011 10000011 10010011 10100011 10110011 11000011 01300Т10 100101t0 11000t 10 таблица 4 Распределения 33жонсона F(33 ) Код адресов величин Выдача Х J х, \, S3. S0 110t0110 31011000 1101 30О! 1! 100110 1.1101000 13101003 311101.10 11111000 11! 3 3 003 11010001 11100001 11110001 11010010 11010011 33010303 11100010 1110001! 3 1100301 11110010 11110011 1! 110101 Составитель И.Столяров Редактор Л.Пчолинская Техред М.Моргентал Корректор Э,Лончакова Заказ 3929 Тираж Подписное . ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР 113035, Москва, Ж-35, Раушская наб., 4/5 Производственно-издательский комбинат "Патент", r. Ужгород, ул, Гагарина, 101 : РаспредеЕ ленив ° Пирсоне 2 9 .4 6 1 ь8 l0 11 m+ Хо D(0G — F(X ) )3, в К4 %! в У33 К!к, Тв Ка +.. Т4 )33 яТ 00010001 00100001 00110001 01000001 03010001 01100001 01110001 10000001 10010003 10100001 1013 0001 11000001 06 9« 23 Ха „3 с4 Zg Z3F Х % — Т4 Т0 У4 т Тб 30011000 о!а!оса 13001000 00101001 00111001 01001001 01031001 01101001 03111001 10001003 10011003 1010100t 10111001 11001001