
- •Моделирование дискретных систем
- •13022012 Лекция 2
- •Модель.
- •20022012 Лекция 3 Математическое моделирование дискретных систем
- •Функция распределения f(X) сама является случайной величиной, распределенной равномерно на отрезке [0,1].
- •27022012 Лекция 4
- •Законы распределения
- •05032012 Лекция 5
- •Числовые характеристики случайных величин
- •12032012 Лекция 6 Системы массового обслуживания
- •Параметры
- •19032012 Лекция 7
- •3) Дисциплина обслуживания (до fifo).
- •Многоканальные смо
- •26032012 Лекция 8
- •2. Характеристики функционирования смо
- •2.1.Характеристики одноканальных смо (ок смо) с однородной нагрузкой
- •Формулы Литлла: Число время
- •02042012 Лекция 9
- •2.1.Характеристики одноканальной смо с неоднородной нагрузкой
- •2.3.Характеристики многоканальной смо с однородной нагрузкой
- •09042012 Лекция 10 Имитационное моделирование смо
- •16042012 Лекция 11
- •23042012 Лекция 12
- •05052012 Лекция 13 Общецелевая система моделирования General Purpose Simulation System (gpss)
- •14052012 Лекция 14 Теория Марковских случайных процессов
- •21052012 Лекция 15 Марковские процессы с непрерывным временем
- •Процессы размножения и гибели
23042012 Лекция 12
Действия по обработке основных событий
Наступления основных событий вызывают определённые изменения в системе, и при моделировании системы эти изменения должны быть учтены.
Прибытие заявки:
Планирование прихода следующей заявки;
Проверка состояния обслуживающего прибора. При этом:
Если прибор свободен, то заявка поступает на обслуживание. Что вызывает переход прибора из свободного состояния в занятое. Планирование события окончания обслуживания.
Если прибор занят, то заявка поступает в очередь, а значит, длина очереди увеличивается на единицу.
Окончание обслуживания:
Проверка состояния очереди. При этом:
Если в очереди нет заявок, то прибор переходит из состояния занятого в свободное.
Если в очереди есть заявки, то в соответствии с дисциплиной облуживания из очереди выбирается заявка на обслуживания. Длина очереди уменьшается на единицу.
Продвижение заявок в очереди, в результате уменьшения её длины, приводит/обязывает к планированию события окончания обслуживания.
Определение ближайшего события
Для выбранного способа коррекции значения таймера модельного времени, оно каждый раз сдвигается на момент ближайшего события. А затем модель будет обрабатывать наступившее событие с учётом его типа.
Для этого составляется список всех основных событий в порядке возрастания моментов времени, в которые они запланированы. И каждый раз модельное время будет сдвигаться на момент поступления ближайшего события. Такой список для моделирования СМО G\G\1 выглядит так:
[Tin, "прибытие заявки" ]; (присутствует всегда)
[Tout, "окончание обслуживания"]; (не всегда)
[T, "завершение моделирования"]; (всегда).
Здесь предполагается, что Tin Tout T.
Очевидно, что роль такого списка может быть отведена просто трем переменным Tin, Tout, T , а очередную коррекцию модельного времени выполнить согласно равенству:
.
В списке событий событие окончания обслуживания присутствует невсегда, соответственно значение времени Tout имеет место, только если оно запланированное.
Чтобы
не отказаться от равенства для определения
модельного времени tM
(если прибор занят обслуживанием),
вводится в список событий псевдо-событие
"окончание обслуживания" с моментом
наступления
,
например,
.
Очевидно, что такое псевдо-событие
никогда не наступит (скорее наступит
событие "окончание моделирования").
Изложенные здесь положения обобщены в блок-схеме алгоритма имитационной модели, которая представлена на рис.4.3.
Приведем необходимые пояснения по отдельным блокам.
Блок 1. Ввод исходных данных, в качестве которых рассматриваются функции распределения A(t), B(t) и время моделирования Т.
Блок 2. В этом блоке обнуляются все переменные и массивы, которые предназначены для следующих целей:
F — задает состояние приборы: F = 0, если прибор свободен и F = 1, если занят.
Nin — счетчик входов (определяет число вошедших в модель заявок).
Nout — счетчик выходов.
Nq — текущая длина очереди.
Nqmax — максимальная длина очереди.
Tin — момент прихода заявки.
Tout — момент окончания обслуживания.
Stв, St, Stu — переменные для накопления суммарных значений времен обслуживания, ожидания и пребывания соответственно.
Mtq[...] — массив, который фиксирует моменты становления заявок в очередь.
tм — модельное время.
N0 — счетчик заявок, которые проходят очередь без ожидания.
Блок
3. Равенство
означает розыгрыш случайной величины,
распределенной по закону A(t),
где A-1(x)
— обратная функция.
Рис. 4.3. Блок-схема логики работы имитационной модели.