
- •Москва, 2004
- •Введение
- •1. Основные понятия теории моделирования
- •1.1 Понятие модели. Виды моделей
- •Цель (человека)
- •1.2. Общие вопросы моделирования систем
- •1.3. Основные требования к моделям
- •1.4. Принципы моделирования
- •1.5 Вопросы для самоконтроля
- •5. Основные требования к моделям.
- •6. Принципы моделирования.
- •2. Компьютерное моделирование
- •2.1 Этапы моделирования
- •2.2 Определение цели моделирования.
- •Определение типа системы;
- •Описание рабочей нагрузки;
- •Декомпозиция системы.
- •2.3 Определение типа системы
- •2.4 Описание рабочей нагрузки.
- •2.5 Декомпозиция системы
- •2.6 Выбор между имитационной или аналитической моделью
- •2.7 Вопросы для самоконтроля
- •6. Декомпозиция системы.
- •3.Формализация модели.
- •3.1 Классификация схем построения имитационной модели
- •3.2. Представление динамики системы
- •3.3. Генераторы случайных чисел
- •3.4 Моделирование случайных факторов
- •3.5 Управление модельным временем
- •3.5.1 Виды представления времени в модели
- •3.5.2 Изменение времени с постоянным шагом
- •3.5.3 Моделирование по особым состояниям
- •3.6. Моделирование параллельных процессов
- •3.6.1. Виды параллельных процессов
- •3.6.2. Механизм реализации параллельных процессов в языках моделирования
- •3.7 Вопросы для самоконтроля
- •8. Виды представления времени в модели.
- •4. Программная реализация модели
- •5.Планирование модельных экспериментов
- •5.1 Задачи планирования экспериментов. Стратегическое и тактическое планирование.
- •5.2. Стратегическое планирование имитационного эксперимента
- •5.2.1. Цель стратегического планирования эксперимента
- •5.2.2. Способы построения стратегического плана
- •5.3. Тактическое планирование экспериментов
- •5.4 Вопросы для самоконтроля
- •6. Обработка и анализ результатов моделирования
- •6.1 Основная идея регрессионного анализа
- •6.2 Общая схема проведения расчетов
- •6.3 Оценка качества имитационной модели
- •6.3.1 Адекватность модели
- •6.3.2 Оценка устойчивости
- •6.3.3 Оценка чувствительности
- •6.4 Калибровка модели
- •6.5 Вопросы для самоконтроля
- •6. Оценка чувствительности.
- •7.1 Основные понятия теории массового обслуживания
- •7.2 Марковский процесс
- •7.2.1 Понятие марковского процесса
- •7.2.2 Потоки событий
- •7.3 Уравнения Колмогорова для вероятностей состояний. Финальные вероятности состояний
- •7.4 Схема гибели/размножения.
- •7.5 Формула Литтла.
- •7.6 Моделирование смо как Марковского процесса
- •7.7. Моделирование смо по событиям
- •Заключение
7.4 Схема гибели/размножения.
Итак, имея в распоряжении размеченный граф состояний, можно легко написать уравнения Колмогорова для вероятностей состояний, а также написать и решить уравнения для финальных вероятностей. Для некоторых случаев удается последние уравнения решить заранее, в буквенном виде. В частности, это удается сделать, если граф состояний системы представляет собой так называемую «схему гибели/размножения».
Особенность этого графа в том, что все состояния системы можно вытянуть в одну цепочку, в которой каждое из соседних состояний связано прямой и обратной стрелкой с каждыми из соседних состояний – правым и левым, а крайние состояния S0 и Sn только с одним соседним состоянием (рис.7.9).
01
12
n-1n
10 21 n n-1
Рис. 7.9. Граф состояний схемы гибели/размножения
Термин «схема гибели/размножения» ведет начало от биологических задач, где подобной схемой описывается изменение численности популяции.
Такая схема часто встречается в теории массового обслуживания.
Предположим, что все потоки, переводящие систему по стрелкам графа – простейшие. Составим и решим алгебраические уравнения для финальных вероятностей (их существование вытекает из того, что из каждого состояния можно перейти в каждое другое и число состояний – конечно).
Для первого состояния S0 имеем: 01*p0 = 10*p1 (7.4)
Для второго состояния S1: (12+10)*p1 = 01*p0+21*p2 (7.5)
Подставляя (7.4) в (7.5), получим: 12*p1 = 21*p2
Далее, совершенно аналогично 23*p2 = 32*p3, и вообще
k-1 k*pk-1 = k k-1*pk, где k=0,1…n .
И
тоговая
система уравнений имеет вид (7.6):
01*p0 = 10*p1
12*p1 = 21*p2
…………………… (7.6)
k-1 k*pk-1 = k k-1*pk
n-1 k*pn-1 = n n-1*pn
Кроме этого, учтем нормировочное условие р0+р1+р2+….+рn=1.
Решив эту систему, получаем, что для любого k (от 1…n)
рk= * * … * * р0
В числителе стоит произведение всех интенсивностей, стоящих у стрелок, ведущих слева – направо (с начала и до данного состояния Sk), а в знаменателе – произведение всех интенсивностей, стоящих у стрелок, ведущих справа налево (с начала и до Sk).
Таким образом, все вероятности состояний выражены через одну из них – р0. Подставим эти выражения в нормировочное условие:
р0*(1+ + + + … … ) = 1 (7.7).
Отсюда р0 = (1+ + + + … + … ) – 1
Все остальные вероятности выражены через р0 (коэффициенты в них при р0 уже вычислены при расчете р0 – последовательные члены ряда, стоящего после 1.
7.5 Формула Литтла.
Выведем важную формулу, связывающую для предельного стационарного режима среднее число заявок Lсист, находящихся в системе массового обслуживания, и среднее время пребывания заявки в системе Wсист.
П
усть
дана любая система массового обслуживания
и связанные с ней два потока событий:
поток заявок, прибывающих в систему, и
поток заявок, покидающих СМО. Если в
системе установился предельный
стационарный режим, то среднее число
заявок, прибывающих в систему за единицу
времени, равно среднему числу заявок,
покидающих ее: оба потока имеют одну и
ту же интенсивность .
Пусть Х(t) – число заявок, прибывших в СМО до момента t, Y(t) – число заявок, покинувших систему до момента t. И та, и другая функция являются случайными и меняются скачком: в моменты прихода заявок Х(t) увеличивается на 1, Y(t) уменьшается на 1 в моменты ухода заявки.
На графике рис.7.10 изображены функции Х, Y. Обе линии – ступенчатые; верхняя – Х(t), нижняя – Y(t). Очевидно, что для любого момента времени их разность Z(t) = Х(t) – Y(t) – есть не что иное, как число заявок, находящихся в СМО.
Рассмотрим очень большой промежуток времени Т и вычислим для него среднее число заявок, находящихся в СМО. Оно будет равно интегралу от функции Z(t) на этом промежутке, деленному на длину интервала Т:
Lсист=
Но этот интеграл есть не что иное, как площадь фигуры, заштрихованной на графике (7.10). Фигура состоит из прямоугольников, высота которых равна 1, а основание – равно времени пребывания соответствующей заявки в системе. Обозначим эти времена t1, t2, t3… Правда, в конце промежутка Т некоторые прямоугольники не войдут полностью в заштрихованную фигуру, но при больших значениях Т эти мелочи не будут играть роли.
Таким образом, можно считать, что = ti , где сумма распространяется на все заявки, пришедшие за время Т. Разделим правую и левую часть данного выражения на Т и получим Lсист= ti (*). Разделим и умножим правую часть выражения (*) на и получим Lсист= ti. Но Т -- есть не что иное, как среднее число заявок, пришедшее за время Т. Если мы разделим сумму всех времен ti на среднее число заявок, то получим среднее время пребывания заявки в системе Wcист. Итак,
Lсист= Wcист Wcист= Lсист
Это и есть формула Литтла: для системы массового обслуживания, при любом характере потока заявок, при любом распределении времени обслуживания, при любой дисциплине обслуживания среднее время пребывания заявки в системе равно среднему числу заявок в системе, деленному на интенсивность потока заявок.