- •Предисловие
- •Введение
- •Глава 1. Модели массового обслуживания
- •1.1. Системы массового обслуживания и их характеристики
- •1.2. Системы c одним устройством обслуживания
- •1.3. Основы дискретно-событийного моделирования cmo
- •1.4. Многоканальные системы массового обслуживания
- •Переменная vаr1, экспоненциальное распределение
- •Глава 2. Вероятностные сети систем массового обслуживания
- •2.1. Общие сведения о сетях
- •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, gate lr, gate ls и gate
- •4.25. Организация вывода временных рядов из gpss-модели
- •4.26. Краткая характеристика языка plus
- •4.27. Команды gpss WorId
- •4.28. Диалоговые возможности gpss World
- •4.29. Отличия между gpss World и 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. Пример построения модели средствами iss 2000
- •Глава 9. Технология имитационного моделирования
- •9.1. Имитационные проекты
- •9.2. Организация экспериментов
- •9.3. Проблемы организации имитационных экспериментов
- •9.4. Оценка точности результатов моделирования
- •9.5. Факторный план
- •9.6. Дисперсионный анализ anova в планировании экспериментов
- •9.7. Библиотечная процедура anova
- •9.8. Технология проведение дисперсионного анализа в системе gpss World
- •9.9. Особенности планирования экспериментов
- •9.10. Нахождение экстремальных значений на поверхности отклика
- •9.11. Организация экспериментов в gpss WorId
- •9.L2. Выбор наилучшего варианта структуры системы
- •Глава 10. Примеры принятия решений c помощью имитационного моделирования
- •10.1. Моделирование производственного участка
- •10.2. Моделирование технологического процесса ремонта и замены оборудования
- •Приложение Системные сча
- •Сча транзактов
- •Сча блоков:
- •Сча одноканальных устройств:
- •Список литературы
- •Глава 9. Технология имитационного моделирования 167
- •Глава 10. Примеры принятия решений c помощью имитационного моделирования 203
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.
Выполним аппроксимацию функции нормального распределения случайной величины Z c параметрами т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].