Моделирование случайного события




Цель и задачи работы

 

Работа ориентирована на закрепление теоретического материала и на

выработку практических навыков по программированию действия случайного фактора при моделировании процессов и систем.

 

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

Реальные процессы, связанные с контролем и управлением качества в большей или меньшей степени являются случайными. Нельзя достигнуть высокого качества продукции без учета действие случайных факторов. Особенно это важно для статистического контроля. Для поиска оптимальных вариантов управления качеством надо уметь моделировать технологический процесс с учетом действия случайных факторов на ЭВМ. Модели процессов с учетом случайного фактора называются статистическими. На модели можно проверять любые варианты организации контроля, выбрать из них оптимальный и только после этого применять на практике. В действующем производстве такие эксперименты недопустимы.

Учет случайного фактора в статистических моделях основывается на моделировании случайных величин. Известно несколько методов моделирования случайных величин на ЭВМ по заданному закону распределения. Но во всех случаях, как правило, используется стандартный генератор случайных чисел, имеющийся на всех ЭВМ в различных алгоритмических языках. На самом деле эти числа не являются случайными, так как рассчитываются по специальным алгоритмам, по этому их называют так же псевдослучайными. Но оказывается, что для статистического моделирования это не важно, требуется только, чтобы эти числа имели соответствующие статистические характеристики: равномерность распределения, отсутствие взаимной корреляции соседних чисел, большой период повторяемости и др.

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

Random,

при каждом обращении к которой вырабатывается очередное действительное псевдослучайное число, равномерно распределенное в интервале 0..1.0. Функция

Random(N)

вырабатывает целые псевдослучайные равновероятные числа в интервале

0..N-1.

В предописанной переменной RandSeed хранится некоторое вспомогательное число, начальное значение которого инициирует весь рад псевдослучайных чисел. По умолчанию первое значение RandSeed =0.

Процедура

Randomize

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

Случайные величины с заданным законом распределения моделируются как правило с использованием стандартных псевдослучайных чисел, вырабатываемых функцией Random, преобразуемых с помощью соответствующего алгоритма.

Каждому закону распределения соответствует свой алгоритм, который и нужно разработать, запрограммировать и проверить.

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

Вероятность события P определяется из опыта при его многократном повторении как отношение числа событий M, в которых событие А произошло к общему числу повторений опыта . То есть оценка вероятности события

. (2.1)

Точность оценки растет с ростом , что проиллюстрируем в данной работе численным моделированием на компьютере.

Ошибка оценки

. (2.2)

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

Оценка коэффициента взаимной корреляции определяется по результатам повторения опыта по следующей формуле [Ве]:

. (2.3)

- это случайная величина, значение которой при -ом испытании равно 1 если событие произошло, и равно 0 в противном случае. N – число испытаний в каждом из которых событие может произойти с вероятностью P, или не произойти с вероятностью

Число реализаций события после испытаний

. (2.4)

Моделирование случайного события

Пусть событие А имеет вероятность P. Будем считать, что случайная величина Х принимает значение 1, если произошло А и 0 – если A не произошло. Для моделирования такой случайной величины генерируем стандартное число g. Если , то , то есть произошло событие А, в противном случае и событие А не произошло (см. рис.2.1).

 

Рис.2.1.Блок-схема подпрограммы моделирования случайного события A

 

На Паскале эта подпрограмма запишется так:

Functin X(p:real):integer;

Var g:real;

Begin

g:=random; {генерация случайного числа равномерно распределенного от 0 до 1}

if (g<p) then X:=1else X:=0;

End;

 

Здесь случайное событие А рассматривается как случайная величина , которая принимает значение 1 с вероятностью , если в результате опыта событие происходит, и значение 0 с вероятностью (1-P), если в результате этого опыта событие А не происходит. Математическое ожидание

, (2.5)

а дисперсия

. (2.6)

Если вероятность реализации события при каждом испытании не зависит от предыдущих реализаций, то коэффициент взаимной корреляции

. (2.7)

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

 

 

Задание на работу

Необходимо проверить приведенную выше подпрограмму-функцию моделирования случайного события А, имеющего заданную вероятность P. Подпрограмма - генератор при каждом обращении выдает новое случайное число 1 или 0. Ряд этих чисел надо протестировать путем сравнения статистических оценок вероятности и коэффициента корреляции , рассчитанных по (2.1,2.3) с теоретическими значениями, рассчитанными по (2.5, 2.7).

При этом следует использовать программу, текст которой приведен в приложении, а исполнимый файл имеется на компьютере кафедры в папке Пасько_17 в разделе OAСиП под именем Test_0.exe. Моделирование проводить до N реализаций события А, где N изменяется в цикле от 1000 до 20000. Полученные значения оценки вероятности , ошибки оценки и коэффициента корреляции и теоретические значения выводятся в виде таблицы на экрвн или в файл Test_0.rez. Пример распечатки этого файла приведен на рис. 3.1.

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

Варианты задания на работу приводятся в табл. 3.1

 

Таблица 3.1.

Варианты задания на лабораторную (контрольную) работу

Вариант задания Р -вероятность события А
  0.10
  0.15
  0.20
  0.25
  0.30
  0.35
  0.40
  0.45
  0.50
  0.55
  0.60
  0.65
  0.70
  0.75
  0.80
  0.85
  0.90
  0.95
  0.05
  0.13
  0.17
  0.23
  0.27
  0.37
  0.47

 

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

После получения задания студент знакомится с основными теоретическими положениями и формулами. Расчет ведется на компьютере с использованием программы Test_0.exe.. Результаты расчета выводятся на экран или в файл Test_0.rez. Пример распечатки приведен на рис.4.1.

Исходная вероятность события А вводится при запуске программы Test_0.exe с клавиатуры в диалоговом режиме.

Результаты тестирования подпрограммы-генератора представляются в виде таблицы, пример которой представлен на рис.4.1.

 

Результаты тестирования генератора события с вероятностью

p= 0.43

┌───────┬────────┬──────┬──────┬

│ N │ P* │ dP* │ r* │

├───────┼────────┼──────┼──────┤

│ 1000 │ 0.4300 │ 0.000│ 0.042│

│ 2000 │ 0.4320 │ 0.002│ 0.022│

│ 3000 │ 0.4377 │ 0.008│ 0.005│

│ 4000 │ 0.4380 │ 0.008│ 0.005│

│ 5000 │ 0.4300 │ 0.000│ 0.005│

│ 6000 │ 0.4285 │-0.001│ 0.009│

│ 7000 │ 0.4276 │-0.002│ 0.013│

│ 8000 │ 0.4252 │-0.005│ 0.008│

│ 9000 │ 0.4271 │-0.003│ 0.004│

│ 10000 │ 0.4295 │-0.000│ 0.005│

│ 11000 │ 0.4290 │-0.001│ 0.004│

│ 12000 │ 0.4284 │-0.002│ 0.005│

│ 13000 │ 0.4282 │-0.002│ 0.005│

│ 14000 │ 0.4271 │-0.003│ 0.004│

│ 15000 │ 0.4275 │-0.002│ 0.005│

│ 16000 │ 0.4257 │-0.004│ 0.006│

│ 17000 │ 0.4269 │-0.003│ 0.006│

│ 18000 │ 0.4266 │-0.003│ 0.008│

│ 19000 │ 0.4273 │-0.003│ 0.008│

│ 20000 │ 0.4263 │-0.004│ 0.007│

└───────┴────────┴──────┴──────┘

 

Рис.4.1. Пример распечатка файла Test_0.rez,

 

По данным файла Test_0.rez следует построить графики зависимости оценок вероятности и коэффициента корреляции от числа испытаний N. Пpимеры этих графиков приведены ниже..

 

Рис. 4.2. Зависимость оценки вероятности от числа испытаний N

 

Рис. 4.3. Зависимость оценки коэффициента взаимной корреляции от числа испытаний N.

 

 

Оформление отчета

 

Отчет состоит из:

-титульного листа, форма которого приведена в прил.1;

-текста задания;

-блок-схемы подпрограммы-генератора и описания алгоритма;

-распечатки результатов тестирования (таблицы типа рис.4.1);

-графиков и , подобных рис.4.2, 4.3.

-выводов о качестве испытанного генератора.

 

6.Контрольные вопросы

1.Какие числа выдает стандартная функция Random?

2.Какие числа выдает стандартная функция Random(N)?

3.Для чего нужна стандартная процедура Randomize?

4.Как получить заданное распределение из стандартного?

5.В чем состоит метод обратных функций?

6.В чем состоит метод Неймана?

7.Какие вы знаете методы преобразования стандартной случайной величины в случайную величину с другим распределением?

8.Почему числа, вырабатываемые функцией Random, называют псевдослучайными?

9.Как проверить качество псевдослучайных чисел?

10.Какие вы знаете способы генерации случайных чисел?

11.Какие преимущества и недостатки имеет метод Монте-Карло?

12.Какие задачи можно решать с использованием метода Монте-Карло?

 

Литература

 

1.Пасько Н.И., Иноземцев А.Н., Зайков С.Г. Статистическое моделирование процессов и систем. Учебное пособие.-Тула:Издательство ТулГУ, 2008.-112 c.

2.Пасько Н.И., Иноземцев А.Н., Зайков С.Г. Статистическое моделирование процессов и систем. Моделирование случайных событий, величин, процессов. Приложения.- Palmarium academic publishing, ISBN 978-3-659-98896-7. 2014. 125 c.

3. Пасько Н.И., Анцев А.В. Статистические методы в управлении качеством: учебное пособие. -Тула: Изд-во ТулГУ,2014, 173 с.

4.Ермаков С.М.,Михайлов Г.А. Курс статистического моделирования. М.:Наука,1976,-220 с.

5.Соболь И.М. Метод Монте-Карло.-М.:Наука, 1985.- 80 с.




Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-12-19 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: