Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
15
Добавлен:
02.05.2014
Размер:
69.63 Кб
Скачать

Министерство Образования

Республики Таджикистан

Таджикский Технический Университет

Кафедра «АСОИ и У»

Лабораторная работа № 2

на тему: «Моделирование датчиков случайных чисел с заданным законом распределения»

Выполнила: ст-ка 3-го курса

гр. 2202 Б1 ИКТ Химухина М.А.

Принял: преп-ль кафедры

Ли И. Р.

Душанбе – 2007

Моделирование датчиков случайных чисел с заданным законом распределения.

Цель работы:

  1. Практическое освоение методов получения случайных чисел с требуемым законом распределения.

  2. Разработка и моделирование на ПВМ датчиков случайных величин с конкретным законом распределения.

  3. Исследование характеристик полученного датчика.

Теоретические сведения:

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

При исследовании и моделировании различных сложных систем в условиях действия помех, очень часто возникает необходимость в использовании датчиков случайных чисел с определенным законом распределения. Исходным материалом для этого служит базовая последовательность X1, X2, … , Xn с равномерным законом распределения в интервале [0,1]. Обозначим случайную величину, распределенную равномерно через ξ (кси). Тогда равномерно распределенные случайные числа будут представлять собой независимые реализации случайной величины ξ, которые можно получить с помощью стандартной функции RND (ξ), - генератора случайных чисел с равномерным законом распределения в интервале [0,1]. Требуется получить последовательность У1, У2, … , Уn независимых реализаций случайной величины η распределенных по заданному закону. Требуемый закон распределения непрерывной случайной величины может быть задан интегральной функцией распределения

F(y) = P (η <= y) (1)

или плотностью вероятности f(y)= F`(y). Функции F(y1, y2, … , yn) могут быть заданы графически или аналитически. Для получения случайной величины η с функцией распределения F(y) из случайной величины ξ равномерно распределенной на интервале [0,1], используют различные методы, основными из которых являются:

- метод обратной функции

- метод отбора или исключения

- метод композиции и другие

Метод обратной функции.

Если ξ – равномерна распределена на [0,1] случайная величина. Искомая величина η может быть получена с помощью преобразования:

η = F`( ξ ) (2)

Где F` - обратная функция по отношению к функции F.

Действие при таком определении случайной величины η имеем:

P(< η <= y) = P <= ( ξ) <= y = P | ξ <= F(y)| = F (y)

В данной цепочки равенства первое равенство следует из (2), второе из неубывающего характера функции F и F’, третье из равномерного распределения величины ξ.

Для некоторых законов распределения, в том числе для нормального закона, обратная функция F не выражается через известные функции. В этом случае ее можно аппроксимировать с любой нужной точностью, какими-либо известными функциями. Если не удается подобрать единой функции для всего промежутка [0,1], то можно аппроксимировать простыми полиномами по отдельным участкам.

Метод отбора.

Данный метод удобней использовать, если требуемый закон распределения задан плотностью вероятности F(y). В отличие от метода обратной функции метод отбора для получения одного требуемого случайного числа требует не одного равномерного случайного числа, а двух, четырех и более. В этом случае область возможных значений η представляет конечный отрезок (a,b), а плотность вероятности F(y) ограничена ступенчатой кривой:

g1 (y) = fm , a <= y <= b (4)

g1 (y) = 0 , y > b ; y < a

Равномерные на интервале (a,b) и (0, fm) независимые величины можно получить по формулам:

η` = a + ( b - a)* ξ1

ξ` = fm * ξ2

ξ1, ξ2 – равномерно распределенные числа на интервале [0,1];

a,b – границы возможных значений случайной величины η;

fm – максимальное значение функции f(y)

Если ξ` < f(η`) , то η` - принимается в качестве очередной реализации случайной величины η. В противном случае η` отбрасывается и берется следующая пара равномерных случайных чисел. Так процедура повторяется n раз до получения всей последовательности.

Метод композиции.

Метод композиции основывается на представлении плотности вероятности fη(x) по формуле полной вероятности

fη(x) = ∫(x/z) dH(z) (6)

где H(z) = P (η ≤ z) – интегральная функция распределения случайной величины η;

P (x,z) – условная плотность вероятности.

Переходя к дискретной форме, интеграл заменим на сумму, тогда получим

fη(x) = Σ pi* fi(x) (7)

где Σ pi = 1;

f(x) – условная плотность вероятности.

Таким образом, для любой заданной плотности вероятности ее фигура единичной площади, ограниченной осью х и кривой fη(x), разбивается на произвольное число не пересекающихся частей η, с площадями Pi.

Координаты условных плотностей fi(x) получаются формирование (деление на Pi) отрезков вертикальных прямых x = const лежащих в области g1. Имитация случайной последовательности η сводится к имитации случайной величины ξ с плотностями вероятности fi(x) одним из методов рассмотренных ранее.

Содержание исследования.

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

  1. По 20 числам, выведенным на печать, строится статистическая функция распределения F*(y). На этом же графике строится интегральная функция распределения F(y) для заданного закона и приводится сопоставление F*(y) и F(y). Согласие проверяется по критерию Колмогорова

Вычисляется статистика:

Dn = max | F*(y) - F(y) | ,

если гипотеза верна, то статистика Dn . n имеет и пределы при n – распределении Колмогорова. Для конечных значений n распределения статистика D – получена численными методами и имеется в виде таблиц. Правила принятия и отклонения гипотезы аналогично указанным для критерия X2 Пирсона.

  1. Составляется блок схема и программа на ПВМ, в которой предусматривается построение статистического ряда и наличие статистики по критерию Колмогорова, а также оценка математического ожидания и дисперсии.

Порядок проведения работы.

  1. Получить у преподавателя задание на моделирование программного датчика случайных чисел с требуемым законом распределения.

  2. Разработать алгоритм получения случайных чисел с заданным законом распределения, составить блок – схему и программу исследования.

  3. Отладить и решить задачу на ПВМ.

  4. Оформить отчет.

Код программы:

Private Sub Command1_Click()

Text1 = ""

Text2 = ""

Text3 = ""

Form1.Cls

List1.Clear

End Sub

Private Sub Command2_Click()

Dim i As Integer, p1 As Integer, p2 As Integer

Dim x As Double, p3 As Integer

Dim Y_1 As Single, Y_2 As Integer, Y_3 As Integer

x = 0.5

For i = 1 To 20

x = Rnd(x)

If x >= 0 And x <= 0.4 Then

p1 = p1 + 1

Y_1 = 2.5 * x

End If

If x >= 0.4 And x <= 0.8 Then

p2 = p2 + 1

Y_2 = 2

End If

If x >= 0.8 And x <= 1 Then

p3 = p3 + 1

Y_3 = 4

End If

Next i

Form1.ScaleLeft = -700

Form1.ScaleTop = -3350

Form1.Line (0.1 * 2000, 0)-(0.2 * 2000, -0.4 * 2000)

Form1.Line (0.2 * 2000, -0.4 * 2000)-(0.2 * 2000, -0.8 * 2000)

Form1.Line (0.2 * 2000, -0.8 * 2000)-(0.4 * 2000, -0.8 * 2000)

Form1.Line (0.4 * 2000, -0.8 * 2000)-(0.4 * 2000, -1 * 2000)

Form1.Line (0.4 * 2000, -1 * 2000)-(2800, -2000)

Form1.Line (0, -0.1 * 2000)-(0.4 * 2000, -0.2 * 2000), RGB(0, 0, 255)

Form1.Line (0.4 * 2000, -0.2 * 2000)-(0.8 * 2000, -0.2 * 2000), RGB(0, 0, 255)

Form1.Line (0.8 * 2000, -0.2 * 2000)-(0.8 * 2000, -0.4 * 2000), RGB(0, 0, 255)

Form1.Line (0.8 * 2000, -0.4 * 2000)-(1 * 2000, -0.4 * 2000), RGB(0, 0, 255)

Form1.Line (1 * 2000, -0.4 * 2000)-(2000, -2800), RGB(0, 0, 255)

Text1 = p1 / 20

Text2 = p2 / 20

Text3 = p3 / 20

List1.AddItem p1 & " " & "точки с вероятностью 0,2"

List1.AddItem p2 & " " & "точки с вероятностью 0,3"

List1.AddItem p3 & " " & "точки с вероятностью 0,5"

Form1.Line (10, -2600)-(10, 400)

Form1.Line (-440, 0)-(3000, 0)

End Sub

Private Sub Command3_Click()

End

End Sub