ГЕНЕРАТОР СЛУЧАЙНЫХ ЧИСЕЛ

Полезная модель относится к вычислительной технике и может быть использована в специализированных вычислительных устройствах, в частности, в системах, предназначенных для имитационного моделирования.
Известны генераторы случайных чисел, используемые в вычислительной технике для получения чисел, распределенных по различным законам (см. авторские свидетельства СССР №№101255, 1213468, 444176, 1798780, 1817093).
Недостатками данных устройств являются их ограниченные функциональные возможности по моделированию одномодальных симметричных распределений.
Наиболее близким по технической сущности к заявленной полезной модели является устройство, описанное в свидетельстве на полезную модель №24008 (2002 г.), содержащее блок управления, шесть блоков деления, двадцать один блок умножения, десять блоков возведения в n-ю степень, два блока вычисления гамма-функции, три блока вычисления экспоненты, блок извлечения корня, блок определения модуля числа, датчик равномерно распределенных случайных чисел, три блока вычитания, которое принято за прототип.
Недостатком данного устройства является невысокая точность генерации случайных чисел, описываемых семейством симметричных одномодальных распределений, удобных для аппроксимации исходных данных, поскольку генерация осуществляется всего лишь по трем первым членам бесконечного ряда.
Плотность распределения вероятностей для семейства одномодальных симметричных распределений имеет вид [1]:
где ;
α - показатель степени;
σ - среднее квадратическое отклонение;
X
m - математическое ожидание;
F(z) - гамма-функция.
Указанное семейство симметричных распределений позволяет объединить многие известные семейства, при этом, единственным параметром, характеризующим их форму, а следовательно, и их свойства, является показатель степени α.
При α<1 аналитическая модель (1) описывает распределения, близкие по своим свойствам к распределению Коши. При α=1 она соответствует распределению Лапласа, при α=2 - нормальному распределению, при α>2 она описывает распределения, по своим свойствам близкие к трапецеидальным, и, наконец, при α→∞ она соответствует равномерному распределению.
Эта обобщенная модель интересна тем, что обычно в учебниках по теории вероятности распределения Лапласа, нормальное и равномерное распределение рассматриваются разрозненно, без какой-либо взаимосвязи. Соотношение же (1) показывает, что все они являются представителями единого большого класса экспоненциальных распределений [1].
Эксцесс этих распределений выражается через показатель α степени экспоненты единой формулой
,
а контрэксцесс, соответственно,
.
Таким образом, показатель степени α однозначно определяет все параметры формы указанных распределений. Причем значения α могут быть не только целыми положительными числами, но и дробными. Это обобщение позволяет свести большой класс симметричных распределений к единой
аналитической модели с варьируемым показателем степени α, что значительно упрощает создание имитационных алгоритмов, на базе которых построена работа генератора. Согласно [1] можно записать
r
где μ(t) - r-ый центральный момент СлВ t.
3
1
3
2
Учет допущения о симметричности распределений μ(y)=0, μ(y)=0 позволяет записать выражение для значения коэффициента эксцесса суммарного распределения
Если для уменьшения количества варьируемых параметров использовать соотношение , то выражение (2) после несложных преобразований принимает вид
Решение биквадратного уравнения приводит к виду
Представленные теоретические выкладки и анализ результатов проведенного вычислительного эксперимента позволили сделать вывод о том, при помощи набора стандартных генераторов случайных чисел, представленных, например, в Mathcad, а именно:
равномерного распределения с коэффициентом эксцесса ε=1.5;
нормального распределения с коэффициентом эксцесса ε=3;
распределения Лапласа с коэффициентом эксцесса s=6;
распределения, по своим свойствам близкого к Коши с коэффициентом эксцесса ε=28, можно смоделировать, причем несколькими способами, любое симметричное одномодальное распределение (СОР) в интервале эксцесса распределения [1.5, 28]. Для упрощения модели без потери ширины диапазона моделирования используем датчики с крайними значениями экцессов: коэффициентом эксцесса ε=1.5 и коэффициентом эксцесса ε=28.
i
Таким образом, генерация случайного числа х может быть сведена к выбору базовых датчиков, наиболее близко прилегающих к требуемому слева и справа по значению коэффициента эксцесса, вычислению величины s, генерации базовых датчиков и получению искомого генератора по выражению
.
Для повышения точности генератора по первым двум моментам необходимо провести процедуру нормирования по выражению
.
Цель полезной модели - расширение функциональных возможностей прототипа за счет введения новых блоков и организации связей между ними, что делает возможным построение более точного генератора случайных чисел, принадлежащих семейству симметричных одномодальных распределений.
Поставленная цель достигается тем, что в устройство-прототип дополнительно введены блоки генерирования случайных величин, распределенных по Коши и равномерно, а также блоки вычисления математического ожидания и среднеквадратического отклонения.
Функциональная схема генератора случайных чисел представлена на фиг.1.
Работа устройства носит циклический характер и осуществляется в последовательности, задаваемой тактовыми импульсами блока 1 управления.
Поставленная цель достигается тем, что в устройство для генерации случайных чисел, содержащее блок управления, пять блоков умножения, семь блоков вычитания, блок возведения в квадрат, два блока извлечения корня, блок деления, блок суммирования, блок вычисления мат. ожидания,
1
1
2
блок вычисления среднеквадратичного отклонения, отличающееся тем, что с целью расширения его функциональных возможностей по генерации случайных чисел, в него дополнительно введены четыре блока вычитания, блок извлечения корня, блок суммирования, блок вычисления мат.ожидания, блок вычисления среднеквадратичного отклонения, причем вход П устройства соединен с управляющим входом блока 1 управления, вход 2 устройства соединен с первым информационным входом блока 2 умножения и с первым информационным входом блока 6 умножения, вход 6 устройства соединен с первым информационным входом блока 5 вычитания, вход 4 устройства соединен с первым информационным входом блока 9 умножения, вход  устройства соединен с первым информационным входом блока 3 вычитания, вход  устройства соединен со вторым информационным входом блока 2 умножения, вторым информационным входом блока 3 вычитания и вторым информационным входом блока 4 вычитания, вход ε устройства соединен с первым информационным входом блока 4 вычитания, вход у устройства соединен со вторым информационным входом блока 15 умножения, вход у устройства соединен со вторым информационным входом блока 16 суммирования, первый выход блока 1 управления соединен с управляющими входами блока 3 вычитания, блока 4 вычитания, блока 2 умножения, второй выход блока 1 управления соединен с управляющими входами блока 5 вычитания, блока 6 умножения, блока 7 умножения, третий выход блока 1 управления соединен с управляющим входом блока 8 возведения в квадрат, блока 9 умножения, четвертый выход блока 1 управления соединен с управляющим входом блока 10 вычитания, пятый выход блока 1 управления соединен с управляющим входом блока 11 извлечения корня, шестой выход блока 1 управления соединен с управляющим входом блока 12 вычитания, седьмой выход блока 1 управления соединен с управляющим входом блока 13 деления, восьмой выход блока 1 управления соединен с управляющим входом блока 14 извлечения корня, девятый выход блока 1 управления соединен с
управляющим входом блока 15 умножения, десятый выход блока 1 управления соединен с управляющим входом блока 16 суммирования, одиннадцатый выход блока 1 управления соединен с управляющим входом блока 17 вычисления мат.ожидания, блока 18 вычисления среднеквадратического отклонения, двенадцатый выход блока 1 управления соединен с управляющим входом блока 19 вычитания, тринадцатый выход блока 1 управления соединен с управляющим входом блока 20 деления, второй информационный вход блока 5 вычитания соединен с выходом блока 2 умножения, второй информационный вход блока 6 умножения и первый информационный вход блока 7 умножения соединены с выходом блока 3 вычитания, второй информационный вход блока 7 умножения соединен с выходом блока 4 вычитания, информационный вход блока 8 возведения в квадрат соединен с выходом блока 5 вычитания, второй информационный вход блока 9 умножения соединен с выходом блока 7 умножения, первый информационный вход блока 10 вычитания соединен с выходом блока 8 возведения в квадрат, второй информационный вход блока 10 вычитания соединен с выходом блока 9 умножения, информационный вход блока 11 извлечения корня соединен с выходом блока 10 вычитания, первый информационный вход блока 12 вычитания соединен с выходом блока 11 извлечения корня, второй информационный вход блока 12 вычитания соединен с выходом блока 5 вычитания, первый информационный вход блока 13 деления соединен с выходом блока 12 вычитания, второй информационный вход блока 13 деления соединен с выходом блока 6 умножения, информационный вход блока 14 извлечения корня соединен с выходом блока 13 деления, первый информационный вход блока 15 умножения соединен с выходом блока 14 извлечения корня, первый информационный вход блока 16 суммирования соединен с выходом блока 15 умножения, первый информационный вход блока 19 вычитания, информационный вход блока 17 вычисления мат.ожидания, информационный вход блока 18 вычисления среднеквадратичного отклонения соединен с выходом блока 16 суммирования, второй информационный вход блока 19 вычитания соединен с
выходом блока 17 вычисления мат.ожидания, первый информационный вход блока 20 деления соединен с выходом блока 19 вычитания, второй информационный вход блока 20 деления соединен с выходом блока 18 вычисления среднеквадратичного отклонения, выход блока 20 деления соединен с выходным устройством i.
Устройство генерации случайных чисел функционирует следующим образом.
Работа устройства носит циклический характер и осуществляется в последовательности, задаваемой тактовыми импульсами блока 1 управления.
1
2
Начальная установка блоков устройства происходит при подаче импульса на вход П устройства, в результате чего запускается блок 1 управления и происходит обнуление остальных блоков устройства. Одновременно на информационные входы устройства подаются сигналы для установки значений 2, 4, 6, , , , y, y.
1
2
Первый тактовый импульс с 1-го выхода блока 1 управления инициирует работу блока 2 умножения, блока 3 вычитания, блока 4 вычитания. В результате чего на первый информационный вход блока 2 умножения подается значение 2, на второй информационный вход блока 2 умножения подается значение , на первый информационный вход блока 3 вычитания подается значение , на второй информационный вход блока 3 вычитания подается значение , на первый информационный вход блока 4 вычитания подается значение , на второй информационный вход блока 4 вычитания подается значение , на первый информационный вход блока 5 вычитания подается значение 6, на первый информационный вход блока 6 умножения подается значение 2, на первый информационный вход блока 9 умножения подается значение 4, на второй информационный вход блока 15 умножения подается значение y, на второй информационный вход блока 16 суммирования подается значение y.
Второй тактовый импульс со 2-го выхода блока 1 управления инициирует работу блока 5 вычитания, блока 6 умножения, блока 7 умножения. В результате чего, во второй информационный вход блока 5 вычитания с выхода блока 2 умножения поступает значение 2, во второй информационный вход блока 6 умножения с выхода блока 3 вычитания поступает значение , в первый информационный вход блока 7 умножения с выхода блока 3 вычитания поступает значение , во второй информационный вход блока 7 умножения с выхода блока 4 вычитания поступает значение .
Третий тактовый импульс с 3-го выхода блока 1 управления инициирует работу блока 8 возведения в квадрат, блока 9 умножения. В результате чего, в информационный вход блока 8 возведения в квадрат с выхода блока 5 вычитания поступает значение , во второй информационный вход блока 9 умножения с выхода блока 7 умножения поступает значение .
Четвертый тактовый импульс с 4-го выхода блока 1 управления инициирует работу блока 10 вычитания. В результате чего, в первый информационный вход блока 10 вычитания с выхода блока 8 возведения в квадрат поступает значение , во второй информационный вход блока 10 вычитания с выхода блока 9 умножения поступает значение .
Пятый тактовый импульс с 5-го выхода блока 1 управления инициирует работу блока 11 извлечения корня. В результате чего, в информационный вход блока 11 извлечения корня с выхода блока 10 вычитания поступает значение .
Шестой тактовый импульс с 6-го выхода блока 1 управления инициирует работу блока 12 вычитания. В результате чего, в первый информационный вход блока 12 вычитания с выхода блока 11 извлечения корня поступает
значение , во второй информационный вход блока 12 вычитания с выхода блока 5 вычитания поступает значение .
Седьмой тактовый импульс с 7-го выхода блока 1 управления инициирует работу блока 13 деления. В результате чего, в первый информационный вход блока 13 деления с выхода блока 12 вычитания поступает значение , во второй информационный вход блока 13 деления с выхода блока 6 умножения поступает значение .
Восьмой тактовый импульс с 8-го выхода блока 1 управления инициирует работу блока 14 извлечения корня. В результате чего, в информационный вход блока 14 извлечения корня с выхода блока 13 деления поступает значение .
Девятый тактовый импульс с 9-го выхода блока 1 управления инициирует работу блока 15 умножения. В результате чего, в первый информационный вход блока 15 умножения с выхода блока 14 извлечения корня поступает значение s.
1
Десятый тактовый импульс с 10-го выхода блока 1 управления инициирует работу блока 16 суммирования. В результате чего, в первый информационный вход блока 16 суммирования с выхода блока 15 умножения поступает значение sy.
Σ
Σ
Одиннадцатый тактовый импульс с 11-го выхода блока 1 управления инициирует работу блока 17 вычисления мат.ожидания, блока 18 вычисления среднеквадратичного отклонения. В результате чего, в информационный вход блока 17 вычисления мат.ожидания с выхода блока 16 суммирования поступает значение y, в информационный вход блока 18 вычисления среднеквадратичного отклонения с выхода блока 16 суммирования поступает значение y.
Σ
Двенадцатый тактовый импульс с 12-го выхода блока 1 управления инициирует работу блока 19 вычитания. В результате чего, в первый информационный вход блока 19 вычитания с выхода блока 16 суммирования поступает значение y, во второй информационный вход блока 19 вычитания с выхода блока 17 вычисления мат.ожидания поступает значение .
yΣ
Тринадцатый тактовый импульс с 13-го выхода блока 1 управления инициирует работу блока 20 деления. В результате чего, в первый информационный вход блока 20 деления с выхода блока 19 вычитания поступает значение , во второй информационный вход блока 20 деления с выхода блока 18 вычисления среднеквадратичного отклонения поступает значение σ, в результате чего на выходе i устройства формируется значение .
ЛИТЕРАТУРА
1. Новицкий П.В., Зограф И.А. Оценка погрешностей результатов измерений. Л.: Энергоатомиздат, 1991. - 304 с.
2. Мартыщенко Л.А., Филюстин А.Е., Голик Е.С. и др. Военно-научные исследования и разработка вооружения и военной техники. Ч.1. МО СССР, 1993. - 302 с.