Генератор случайных чисел
Изобретение относится к специализированным средствам вычислительной техники и предназначено для использования в стохастических вычислительных устройствах. Целью изобретения является расширение функциональных возможностей устройства за счет формирования случайных выборок с законом распределения произведения двух равномерно распределенных случайных чисел. Цель достигается тем, что в генератор случайных чисел, содержащий пять блоков умножения, сумматор, блок памяти коэффициентов, генератор случайных чисел и блок управления, дополнительно введены блок вычитания, три блока деления, блок возведения в квадрат, блок возведения в куб, генератор случайных чисел позволяет генерировать выборки по закону распределения произведения двух равномерно распределенных случайных чисел. 1 ил.
Изобретение относится к вычислительной технике и может быть использовано для генерирования выборок по закону распределения произведения двух равномерно распределенных случайных чисел.
Известны устройства для генерирования случайных чисел [1 и 2]. Из известных устройств наиболее близким по технической сущности к предлагаемому является генератор случайных чисел [2], содержащий пять блоков умножения, сумматор, блок памяти коэффициентов, генератор случайных чисел и блок управления. Недостатком данного устройства является узкая область его применения из-за отсутствия возможности формирования случайных выборок, подчиняющихся закону распределения формирования случайных выборок, подчиняющихся закону распределения произведения двух равномерно распределенных случайных чисел. Целью изобретения является расширение функциональных возможностей устройства за счет формирования выборок с законом распределения произведения двух равномерно распределенных случайных чисел. Цель достигается тем, что в генератор случайных чисел, содержащий пять блоков умножения, сумматор, блок памяти коэффициентов, генератор случайных чисел и блок управления, дополнительно введены блок вычитания, три блока деления, блок возведения в квадрат, блок возведения в куб и исключены четыре блока умножения, причем первый выход блока 1 управления (см. чертеж) соединен с установочными входами генератора случайных чисел 2, блока 4 вычитания, блоков 5, 8, 9 деления, блока 6 возведения в квадрат, блока 7 возведения в куб, блока 10 суммирования, блока 11 умножения, второй выход блока 1 управления соединен с управляющими входами генератора случайных чисел и блока 3 памяти, третий выход блока 1 управления соединен с управляющим входом блока 4 вычитания, четвертый выход блока 1 управления соединен с управляющими входами блока 5 деления, блока 6 возведения в квадрат, блока 7 возведения в куб, пятый выход блока 1 управления соединен с управляющими входами блоков 8, 9 деления, шестой выход блока 1 управления соединен с управляющим входом блока 10 суммирования, седьмой выход блока 1 управления соединен с управляющим входом блока 11 умножения, выход генератора случайных чисел соединен с первым информационным входом блока 4 вычитания, первый выход блока 3 памяти соединен с вторым информационным входом блока 4 вычитания, второй выход блока 3 памяти соединен с вторым информационным входом блока 5 деления, третий выход блока 3 памяти соединен с вторым информационным входом блока 8 деления, четвертый выход блока 3 памяти соединен с вторым информационным входом блока 9 деления, пятый выход блока 3 памяти соединен с четвертым информационным входом блока 10 суммирования, шестой и седьмой выходы блока 3 памяти соединены соответственно с вторым и третьим информационными входами блока 11 умножения, выход блока вычитания соединен с первым информационным входом блока 5 деления, с информационными входами блока 6 возведения в квадрат и блока 7 возведения в куб, выход блока 5 деления соединен с первым информационным входом блока 10 суммирования, выход блока 6 возведения в квадрат соединен с первым информационным входом блока 8 деления, выход блока 7 возведения в куб соединен с первым информационным входом блока 9 деления, выход блока 8 деления соединен с вторым информационным входом блока 10 суммирования, выход блока 9 деления соединен с третьим информационным входом блока 10 суммирования, выход блока 10 суммирования соединен с первым информационным входом блока 11 умножения, выход блока 11 умножения является выходом устройства. Функциональная схема генератора случайных чисел, позволяющего формирование выборок по закону распределения произведения двух равномерно распределенных случайных величин, представлена на чертеже. Сущность изобретения следует из изложенных ниже соображений. Пусть имеются независимые случайные величины X1 и X2 с равномерными плотностями распределения вероятности f(X1) = 1/a, 0X1a, f(X2) = 1/b, 0X2b. Для нахождения плотности распределения произведения двух случайных величин воспользуемся известной из теории вероятностей формулой С учетом равномерного распределения X1 и X2 получим: В результате замены переменной Z = Y/X2 и интегрирования можно получить Интегральная форма вида закона распределения будет иметь видДанное уравнение трансцендентно, поэтому моделирующий алгоритм можно найти на основе операторного обращения с помощью рядов С.Ли (Мартыщенко Л.А. и Панов В.В. Методы военно-научных исследований в задачах разработки и испытаний вооружения. МО СССР, 1981, 280 с.). Используя оператор преобразования
можно найти значение коэффициентов ряда
Данное количество членов ряда определяется достаточной точностью. Тогда для имитации чисел по закону распределения произведения двух равномерно распределенных случайных величин может быть использован ряд вида
где
k1 = 2 Ln 2 = 1,386;
k2 = Ln3 2 = 0,333;
;
F0(y) = 1/2 (Ln2 + 1) = 0,847 - значение функции в опорной точке
- случайное равномерно распределенное число в интервале (0,1). Работа генератора при моделировании случайных чисел, подчиняющихся закону распределения произведения двух равномерно распределенных случайных величин, осуществляется следующим образом. Перед началом работы в блок 3 памяти вводятся значения F(y), k1, k2, k3, 0,5, a, b. При подаче питания запускается блок 1 управления. Первый тактовый импульс с выхода 1 блока 1 управления обнуляет генератор случайных чисел 2, блок 4 вычитания, блоки 5, 8, 9 деления, блок 6 возведения в квадрат, блок 7 возведения в куб, блок 10 суммирования, блок 11 умножения. Второй тактовый импульс блока 1 управления подается на управляющие входы генератора случайных чисел 2, блока 3 памяти и инициирует их работу. С выхода 8 генератора случайных чисел 2 случайное число подается на первый информационный вход блока 4 вычитания. С выхода 9 блока 3 памяти значение F0(y) подается на второй информационный вход блока 4 вычитания, с выхода 10, 11, 12 числа k1, k2, k3 - на вторые информационные входы соответственно блоков 5, 8, 9 деления, с выхода 13 число 0,5 - на четвертый информационный вход блока 10 суммирования, с выходов 14, 15 числа a и b - на соответственно второй и третий информационные входы блока 11 умножения. Третий тактовый импульс блока 1 управления подается на управляющий вход блока 3 вычитания и инициирует его работу. С выхода блока 3 вычитания число - F0(y) подается на первый информационный вход блока 5 деления, на информационные входы блока 6 возведения в квадрат и блока 7 возведения в куб. Четвертый тактовый импульс блока 1 управления подается на управляющие входы блока 5 деления, блока 6 возведения в квадрат, блока 7 возведения в куб и инициирует их работу. С выхода блока 5 деления число [ - F0(y)]/k1 подается на первый информационный вход блока 10 суммирования. С выхода блока 6 возведения в квадрат число [ - F0(y)]2 поступает на первый информационный вход блока 8 деления. С выхода блока 7 возведения в куб число [ - F0(y)]3 поступает на первый информационный вход блока 9 деления. Пятый тактовый импульс блока 1 управления подается на управляющие входы блоков 8, 9 деления и инициирует их работу. С выхода блока 8 деления число [ - F0(y)]2/k2 поступает на второй информационный вход блока 10 суммирования. С выхода блока 9 деления число [ - F0(y)]3/k3 поступает на третий информационный вход блока 10 суммирования. Шестой тактовый импульс блока 1 управления подается на управляющий вход блока 10 суммирования и инициирует его работу. С выхода блока 10 суммирования число
,
подается на первый информационный вход блока 11 умножения. Седьмой тактовый импульс блока 1 управления подается на управляющий вход блока 11 умножения и инициирует его работу. С выхода блока 11 умножения число
поступает на выход устройства.
Формула изобретения
РИСУНКИ
Рисунок 1