- •Предисловие
- •Введение
- •Глава 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. Вероятностное моделирование
3.1. Метод статистических испытаний
В тех случаях, когда при моделировании необходимо учитывать некоторый случайный фактор (элемент или явление), который невозможно описать аналитически, используют метод моделирования, называемый методом статистических испытаний или методом Монте-Карло. C помощью этого метода может быть решена любая вероятностная задача. Однако использовать его целесообразно в том случае, если решить задачу этим методом проще, чем любым другим.
Суть метода состоит в том, что вместо описания случайных явлений аналитическими зависимостями проводится розыгрыш случайного явления c помощью некоторой процедуры, которая дает случайный результат. C помощью розыгрыша получают одну реализацию случайного явления. Осуществляя многократно такой розыгрыш, накапливают статистический материал (то есть множество реализаций случайной величины), который можно обрабатывать статистическими методами. Рассмотрим этот метод на примерах.
Пример 3.1. Пусть четыре стрелка одновременно стреляют по движущейся цели. Вероятность попадания в цель каждым стрелком равняется 0,5 (попал или не попал). Цель считается пораженной, если в нее попало два или более стрелка. Найти вероятность поражения цели.
Эту задачу можно легко решить методами теории вероятности. Вероятность поражения цели Pnop = 1 – Рнепор.
Вероятность непоражения Рнепор определяют как число сочетаний, когда в цель не попал ни один стрелок, плюс попал один из стрелков:
Решим эту задачу методом статистических испытаний. Процедуру розыгрыша реализуем подбрасываниям одновременно четырех монет. Если монета падает лицевой стороной, то считаем, что стрелок попал в цель. Обозначим через т число успешных испытаний. Сделаем N испытании, тогда в соответствии c теоремой Бернулли: Рпор ≈ .
Пример 3.2. Пусть есть некоторая цель, на которую бомбардировщики сбрасывают n бомб. Каждая бомба поражает область в виде круга радиусом r (рис. 3.1). Цель считается пораженной, если одновременно бомбами накрыто К процентов площади S. Найти вероятность поражения цели.
Аналитически решить эту задачу очень трудно. Покажем, как ее можно решить методом статистических испытаний.
Наложим координатную сетку на всю возможную область попадания бомб. Разыграем n точек – координат попадания бомб. Опишем возле каждой точки круг радиусом r (рис. 3.2) и определим заштрихованную площадь поражения. Если заштрихованная площадь будет составлять К процентов и больше всей площади цели S, то цель считается пораженной, А испытание успешным. В противном случае цель не будет поражена и испытание не успешное.
Рис.3.1
Рис.3.2
Выполним N испытаний. Тогда вероятность поражения цели Рпор , где т – количество испытании, при которых цель оыла поражена.
Методом статистических испытаний можно оценить математическое ожидание и другие вероятностные характеристики. Например, оценку математического ожидания площади поражения цели можно определить как . При N→∞ эта оценка будет приближаться к математическому ожиданию в соответствии c законом больших чисел. В этом выражении S1, площадь поражения в i-м испытании.
Алгоритм метода статистических испытаний такой:
1. Определить, что собой будет представлять испытание или розыгрыш.
2. Определить, какое испытание является успешным, А какое – нет.
3. Провести большое количество испытаний.
4. Обработать полученные результаты, статистическими методами и рассчитать статистические оценки искомых величин.
К недостаткам метода можно отнести необходимость проведения большого количества испытаний, чтобы получить результат c заданной точностью.
Таким образом, метод статистических испытаний – это метод математического моделирования случайных величин, в котором сама случайность непосредственно включена в процесс моделирования и является его важным элементом. Каждый раз, когда в ход выполнения некоторой операции вмешивается случайный фактор, его влияние моделируется c помощью розыгрыша.
Для эффективного розыгрыша случайных величин используют генераторы случайных чисел. Такие генераторы строятся аппаратными и программными методами. Наиболее применимыми являются программные методы, которые дают возможность получить последовательности псевдослучайных чисел по рекуррентным формулам. Обычно используется мультипликативный конгруэнтный метод, рекуррентное соотношение для которого имеет вид:
где а и т – некоторые константы. Необходимо взять последнее псевдослучайное число Xi, умножить его на постоянный коэффициент А и взять модуль полученного числа по т, то есть разделить на т и получить остаток. Этот остаток и будет следующим псевдослучайным числом Хi+1. Для двоичного компьютера т = 2g - 1, где g – длина разрядной сетки. Например, для 32-разрядного компьютера т = 231 – 1 = 2147483647, поскольку один разряд задает знак числа.
В языке GPSS World используется мультипликативный конгруэнтный алгоритм Лехмера c максимальным периодом, который генерирует 2147483647 уникальных случайных чисел без повторения. Эти числа генерируют специальные генераторы, которые обозначаются RN<№>, где № – номер генератора случайных чисел (может принимать значения от 1 до 7). При обращении к этим генераторам выдаются целые случайные числа в диапазоне от 0 до 999 включительно. При использовании генераторов в случайных функциях распределений случайные числа генерируются в диапазоне от 0 до 0,999999 включительно.