- •Предисловие
- •Введение
- •Глава 1. Модели массового обслуживания
- •1.1. Системы массового обслуживания и их характеристики
- •1.2. Системыcодним устройством обслуживания
- •1.3. Основы дискретно-событийного моделированияCmo
- •1.4. Многоканальные системы массового обслуживания
- •2.1. Общие сведения о сетях
- •Переменная vаr1, экспоненциальное распределение
- •Глава 2. Вероятностные сети систем массового обслуживания
- •2.2. Операционный анализ вероятностных сетей
- •2.3. Операционные зависимости
- •2.4. Анализ узких мест в сети
- •Глава 3. Вероятностное моделирование
- •3.1. Метод статистических испытаний
- •3.2. Моделирование дискретных случайных величин
- •3.3. Моделирование непрерывных случайных величин
- •3.4. Сбор статистических данных для получения оценок характеристик случайных величин
- •3.5. Определение количества реализаций при моделировании случайных величин
- •Глава 4. Система моделированияgpss
- •4.1. Объекты
- •4.2. Часы модельного времени
- •4.3. Типы операторов
- •4.4. Внесение транзактов в модель. БлокGenerate
- •4.5. Удаление транзактов из модели. БлокTerminate
- •4.6. Элементы, отображающие одноканальные обслуживающие устройства
- •4.7. Реализация задержки во времени. БлокAdvance
- •4.8. Сбор статистики об ожидании. БлокиQueue,depart
- •4.9. Переход транзакта в блок, отличный от последующего. БлокTransfer
- •4.10. Моделирование многоканальных устройств
- •4.11. Примеры построенияGpss-моделей
- •4.12. Переменные
- •4.13. Определение функции вGpss
- •4.14. Стандартные числовые атрибуты, параметры транзактов. Блоки assign, mark, loop
- •Примеры фрагментов gpss-моделейcиспользованием сча и параметров гранзактов
- •4.15. Изменение приоритета транзактов. БлокPriority
- •4.16. Организация обслуживанияcпрерыванием. Блоки preempt и return
- •4.17. Сохраняемые величины
- •4.18. Проверка числовых выражений. БлокTest
- •4.19. Определение и использование таблиц
- •4.20. Косвенная адресация
- •4.21. Обработка транзактов, принадлежащих одному семейству
- •4.22. Управление процессом моделирования в системеGpss
- •4.23. Списки пользователей
- •4.24. Блоки управления потоками транзактовLogic,gatelr,gatelSиGate
- •4.25. Организация вывода временных рядов изGpss-модели
- •4.26. Краткая характеристика языкаPlus
- •4.27. КомандыGpssWorId
- •4.28. Диалоговые возможностиGpssWorld
- •4.29. Отличия междуGpssWorldиGpss/pc
- •Глава 5. Моделирование вычислительных и операционных систем
- •5.1. Операционные системы компьютеров
- •5.2. Сети и системы передачи данных
- •5.3. Проблемы моделирования компьютеров и сетей
- •Глава 6. Основы моделирования процессов
- •6.1. Производственные процессы
- •6.2. Распределительные процессы
- •6.3. Процессы обслуживания клиентов
- •6.4. Процессы управления разработками проектов
- •Глава 7. Задания для самостоятельной работы Задание 1. Моделирование разливной линии
- •Задание 2 [10]. Моделирование контроля и настройки телевизоров
- •Задание 3. Моделирование работы кафе
- •Задание 4. Моделирование работы обрабатывающего цеха
- •Задание 5. Моделирование работы обрабатывающего цеха
- •Задание 6. Моделирование работы обрабатывающего цеха
- •Задание 7. Моделирование работыCmo
- •Задание 8. Моделирование функций
- •Задание 9 [10]. Моделирование системы обслуживания
- •Задание 10 [16]. Моделирование системы автоматизации проектирования
- •Задание 11 [16]. Моделирование работы транспортного цеха
- •Задание 12 [16]. Моделирование системы передачи разговора
- •Задание 13 [16]. Моделирование системы передачи данных
- •Задание 14 [16]. Моделирование узла коммутации сообщений
- •Задание 15 [16]. Моделирование процесса сборки
- •Задание 16 [16]. Моделирование работы цеха
- •Задание 17 [16]. Моделирование системы управления производством
- •Задание 18. Моделирование производственного процесса
- •Задание 19. Моделирование работы заправочной станции
- •Задание 20. Моделированиеработы станции технического обслуживания
- •Задание 21. Моделирование работы станции скорой помощи
- •Задание 22. Моделирование работы госпиталя
- •Задание 23. Моделирование работы маршрутных такси
- •Задание 24. Моделирование работы печатной системы
- •Задание 25. Моделирование процесса сборки пк
- •Глава8. Проектирование имитационных моделей c помощью интерактивной системы имитационного моделирования
- •8.1. Структура интерактивной системы имитационного моделирования
- •8.2. Построение концептуальной схемы модели
- •8.3. Параметрическая настройка модели
- •8.4. Генератор формул
- •8.5. Управление экспериментом
- •8.6. Запуск эксперимента и обработка результатов моделирования
- •8.7. Управление проектами и общей настройкой системы
- •8.8. Пример построения модели средствамиIss2000
- •Глава 9. Технология имитационного моделирования
- •9.1. Имитационные проекты
- •9.2. Организация экспериментов
- •9.3. Проблемы организации имитационных экспериментов
- •9.4. Оценка точности результатов моделирования
- •9.5. Факторный план
- •9.6. Дисперсионный анализAnovAв планировании экспериментов
- •9.7. Библиотечная процедураAnova
- •9.8. Технология проведение дисперсионного анализа в системеGpssWorld
- •9.9. Особенности планирования экспериментов
- •9.10. Нахождение экстремальных значений на поверхности отклика
- •9.11. Организация экспериментов вGpssWorId
- •9.L2. Выбор наилучшего варианта структуры системы
- •Глава 10. Примеры принятия решенийcпомощью имитационного моделирования
- •10.1. Моделирование производственного участка
- •10.2. Моделирование технологического процесса ремонта и замены оборудования
- •Приложение Системные сча
- •Сча транзактов
- •Сча блоков:
- •Сча одноканальных устройств:
- •Сча очередей
- •Сча таблиц
- •Сча ячеек и матриц ячеек сохраняемых величин:
- •Сча вычислительных объектов
- •Список литературы
- •Срдержание
- •Глава 5. Моделирование вычислительных и операционных систем 132
- •Глава 10. Примеры принятия решений c помощью имитационного моделирования 201
3.2. Моделирование дискретных случайных величин
Моделирование события. Пусть необходимо смоделировать появление некоторого событияА, вероятность наступления которого равняетсяP(A)= Р. Обозначим обращения к генератору, который разыгрывает псевдослучайные, равномерно распределенные на интервале (0, 1) числаri, черезR. СобытиеA при розыгрыше будет наступать тогда, когдаr ≤ P (рис. 3.3), в противном случае происходит событиеA c вероятностьюr > Р.

Рис. 3.3
Действительно:
![]()
Данный метод используется в языке GPSSдля блокаTRANSFER в статистическом режиме работы, когда транзакты следуют по двум разным направлениям в зависимости от вероятности (см. параграф 4.9).
Моделирование
группы несовместных событий. Пусть
есть группа несовместимых событийA1,
A2,…,Ak.
Известны вероятности наступления
событийP(A1)
P(A2)...,P(Ak).
Тогда из-за несовместности событий
.
Пусть Pi
=P(Ai),
p0=0.
На отрезке (0,l)
отложим эти вероятности (рис. 3.4).

Рис. 3.4
Если полученное
число попало в интервал от
до
,
то произошло событиеAi.
Такую процедуру называют определением
результата испытание по жребию, и
она основывается на формуле
![]()
где p0 = 0.
Моделирование случайной дискретной величины. Моделирование случайной дискретной величины выполняется аналогично моделированию группы несовместимых событий. Дискретная случайная величина Х задается в соответствииcтабл. 3.1.
Случайную величину Х можно представить как полную группу событий:
![]()
Таблица 3.1
|
Возможное значение |
X1 |
Х2 |
… |
хп |
|
Вероятность |
P1 |
P2 |
… |
Рn |
Данный метод используется в языке GPSSдля моделирования дискретных случайных функций распределения (см. параграф 4.13).
Моделирование
условного события. Моделирование
условного событияА, которое
происходит при условии, что наступило
событиеВ cвероятностьюP(A/B),
показано на рис. 3.2.3. Сначала моделируем
событиеВ. Если событиеВ происходит,
то моделируем наступление событияА, если имеем
,
то не моделируем наступление событияА.

Рис. 3.5
3.3. Моделирование непрерывных случайных величин
В данном случае используется метод обратной функции. Пусть есть некоторая функция распределения случайной величины (рис.3.6). Разыграем на оси ординат точку r, используя функциюF(х).Тогда можем получить значение величины Х такое, чтоF(x)=r.

Рис. 3.6
Найдем функцию распределения F(x) случайной величиныX. По определению она равна вероятностиP(X<x). Из рис. 3.7 очевидно, что
![]()

Рис. 3.7
Таким образом, последовательность r1, r2, r3, ... , принадлежащаяR(0,1), преобразуется в последовательностьx1, х2, x3,…,которая имеет заданную функцию плотности распределенияf(x).
Моделирование равномерного распределения в интервале (a, b) случайной величины. Для моделирования воспользуемся методом обратной функции. На рис. 3.8 показана функция плотности равномерного распределения.

Рис. 3.8
Находим функцию распределения и приравниваем ее к случайному числу
![]()
Отсюда Х = (b – a)R + а.
Моделирование
экспоненциального распределения
случайной величины. Функция
плотности экспоненциального распределения
случайной величиныf(x)
=
и функция распределения показаны
на рис. 1.1.
Воспользуемся методом обратной функции:
![]()
Из выражения (3.6) находим x:
![]()
Можно показать, что случайная величина (1-R) распределена так же, как и величинаR. Тогда, сделав замену(1-R) наR, получаем
![]()
Покажем, как, используя метод обратной функции, можно моделировать случайную величину, распределенную по экспоненциальному закону. Подобный подход принят в языке GPSS[10].
Пусть λ = 1. Выполним аппроксимацию функции экспоненциального распределения линейными участками, чтобы можно было использовать ее для моделирования методом обратной функции. Для аппроксимации достаточно 24 точек. В табл. 3.2 занесены соответствующие значения аргумента Х и функцииF(x), значения которой генерируютcпомощью генератора случайных чисел.
Таблица 3.2
|
X |
0 |
0,1 |
0,2 |
0,3 |
0,4 |
0,5 |
0,6 |
0,7 |
0,75 |
0,8 |
0,84 |
0,88 |
|
F(X) |
0 |
0,1 |
0,222 |
0,355 |
0,509 |
0,69 |
0,915 |
1,2 |
1,38 |
1,6 |
1,83 |
2,12 |
|
X |
2,3 |
2,52 |
2,81 |
2,99 |
3,2 |
3,5 |
3,9 |
4,6 |
5,3 |
6,2 |
7 |
8 |
|
F(X) |
0,9 |
0,92 |
0,94 |
0,95 |
0,96 |
0,97 |
0,98 |
0,99 |
0,995 |
0,998 |
0,999 |
0,9998 |
На рис. 3.9 и 3.10 показаны графики двух функций. На рис. 3.9 изображена аппроксимация экспоненциальной функции cпараметром λ = 1, А на рис. 3.10 – функция, обратная к аппроксимированной. Первая функция воспроизводит заданные в табл. 3.2 значения. Вторая функция используется для розыгрыша экспоненциального распределения, поскольку удобнее задавать значениеx, А получать значение функции.
Если необходимо
моделировать случайные величины X,
распределенные по экспоненциальному
законуcпараметромёх
≠1, которые используется как
задержка во времениcпараметром
, например, для моделирования
пуассоновского потока поступления
требований, то поступают таким
образом:
– генерируют значения случайной величины, распределенной по экспоненциальному закону cλ = 1 (рис. 3.10);
– находят
произведение полученного значения и
математического ожидания случайной
величины Т =
.

Рис. 3.10

Рис. 3.9
В результате получают искомую последовательность значений реализации случайной величины X.
Моделирование
нормального закона распределения
случайной величины. Для моделирования
нормального закона распределения
случайной величины нельзя непосредственно
воспользоваться методом обратной
функции, поэтому используем центральную
предельную теорему. Пусть случайная
величина Х имеет математическое
ожиданиеmxи среднеквадратичное отклонение
,aслучайная величинаZимеет математическое ожиданиеmz
= 0 и среднеквадратичное отклонение
σz= 1. Легко показать,
что
![]()
Сформулируем центральную предельную теорему.
Если X1
..., Хп – независимые
случайные величины со средним значениемE[Xi]
=a,
и дисперсиейD[Xi]
= σ2,
,
то при неограниченном увеличенииn
функция распределения случайной
величины
приближается
к функции распределения стандартного
нормального закона Ф(z) при всех значениях
аргумента, то есть
![]()
![]()
Для получения нормального закона распределения случайной величины достаточно суммировать шесть случайных величин, полученных cпомощью генератора случайных чиселR, и, пронормировав полученные значения так, чтобы определитьZ, по формуле (3.8) найти значениеX.
Обычно суммируют
12 случайных величин Ri,
,
тогда дисперсияD(Z)
будет равняться единице.
Рассмотрим, как моделируются нормально распределенные случайные величины в системе моделирования GPSS.
Выполним аппроксимацию
функции нормального распределения
случайной величины Zcпараметрамитz
=0 и
=1.
Для этого достаточно 25 точек. В табл.
3.3 занесенные соответствующие значения
аргумента Х и функцииF
(x).
Для того, чтобы
получить функцию нормального распределения
cматематическим ожиданиемmx
≠ 0 и среднеквадратичным отклонением
≠
1, необходимо сделать вычисления по
формуле (3.8).
На рис. 3.11 изображен график функции, полученной в результате аппроксимации функции нормального распределения Ф(z), а на рис. 3.12 – более удобный для моделирования график функции (как аргумент используют генератор случайных чисел и получают значение функции).
Таблица 3.3
|
X |
-5 |
-4 |
-3 |
-2,5 |
-2 |
-1,5 |
|
F(x) |
0 |
0,00003 |
0,00135 |
0,00621 |
0,02275 |
6,06681 |
|
X |
-1,2 |
-1 |
-0,8 |
-0,6 |
-0,4 |
-0,2 |
|
F(x) |
0,11507 |
0,15866 |
0,21186 |
0,2742 |
0,34458 |
0,42074 |
|
X |
0 |
0,2 |
0,4 |
0,6 |
0,8 |
1 |
|
F(x)_ |
0,5 |
0,57964 |
0,65542 |
0,72575 |
0,78814 |
0,84134 |
|
X |
1,2 |
1,5 |
2 |
2,5 |
3 |
4 |
5 |
|
F(x) |
0,88493 |
0,93319 |
0,97725 |
0,99379 |
0,99865 |
0,99997 |
1 |
Если необходимо
обеспечить положительные разыгрываемые
значения, то нужно выполнить условие
тx ≥ 5
.

Рис. 3.11

Рис. 3.12
В рассмотренных приближенных методах «хвосты» нормального распределения оказываются неточными. Существуют и более точные методы моделирования нормального распределения случайной величины [11].
