- •Разработка и исследование нестандартного программного генератора случайных величин для имитационной модели Введение
- •1.Цель работы
- •2.Содержание
- •3.Теоретическая (расчетная) часть
- •1.Метод обратного преобразования (моп).
- •2.Универсальный метод н.П.Бусленко.
- •Проверка качества генератора
- •4.Программная реализация
- •Варианты
- •Отчетность
1.Метод обратного преобразования (моп).
В этом методе значение интегральной функции распределения выбирается случайным образом с помощью базовой случайной величины (функцииrnd(1)).
F(x)=x2/a2=
Отсюда находим простую формулу разыгрывания случайной величины х с линейно возрастающей функцией плотности распределения:
Здесь отрицательное значение корня отброшено как не имеющее смысла, поскольку моделируемая функция определена в положительном диапазоне значений.
2.Универсальный метод н.П.Бусленко.
В этом методе моделируемая функция заменяется на кусочно-постоянную функцию из условия обеспечения одинаковой вероятности попадания СВ в любой из s интервалов неравной длины.Одинаковая вероятность означает равнуюплощадьпод каждым участком кусочно-постоянной функции. Очевидно, по мере роста ординаты кусочно-постоянной функции будет уменьшаться ширина интервала. На предварительном этапе следует найти общую формулу для вычисления границ каждогоj-го интервала из условия равенства площадей прямоугольников.
При наличии qинтервалов одинаковая вероятность попадания в каждый из них равна 1/q. С другой стороны вероятность попадания СВ х в интервал с границами (аj-1, aj) равна соответствующей разности значений интегральной функции распределения:
Отсюда, зная значение аj-1,можно найти значениеаj.
Обратимся к рисунку. Проведем рекуррентные вычисления границ аj. Примем
j=1 и определима1.
Так как а0= 0, находим:. Напомним, что здесь значение
Запишем аналогичное соотношение для j=2:
Заметим, что второй член в левой части уравнения выражает вероятность попадания СВ в предыдущий интервал, которая в данном случае также равна 1/q. Получим
, откуда
Аналогично на следующем шаге, заменяя 2-й член в левой части на 2/q, можно найти, что. В итоге получаем простую формулу для вычисления любой границы:
дляj =
(Примечание. Не следует путать только что найденные границы интервалов неравной длины аjс границами интервалов равной длиныаi, для которых определяются теоретические и экспериментальны частоты попадания согласно п.5 независимо от метода моделирования. Если попытаться использоватьаjдля анализа частот попадания в эти интервалы, получим не линейно-возрастающий, а равномерный график функции распределения, что не удивительно, так как из условия равной вероятности и определялиаj. в методе Бусленко).
Все рассмотренное в данном пункте касается предварительных расчетов для получения формулы вычисления границ. Сам процесс разыгрывания СВ универсальным методомвключает в себя две операции:
1.Случайным образом выбирается j-й номер интервала с использованием базовой СВ, которая преобразуется целое число номера интервала по формуле масштабирования:
j= [1 +q*],
где операция [ ] означает отбрасывание дробной части выражения в скобках. При изменении =rnd(1) в диапазонезначениеjбудет изменяться в диапазонекак целое.
2.Разыгрывается значение хiкак равномерно-распределенной СВ в интервалеjс известными расчетными границами (аj-1, аj) с использованием формулы масштабирования:
i =
Для рассматриваемого типа графика формула разыгрывания примет вид:
, гдеа=3ps/2.