оглавление   ДМ   экономическая информатика   визуальные среды - 4GL   Теория и практика обработки информации

Имитационная модель системы массового обслуживания

Рассмотрим имитационную модель СМО следующего вида:

СМО такого вида показана на рис. 3.29.

На рис. 3.29:

- источники потоков заявок на обслуживание;

- каналы обслуживания;

- число фаз;

- число каналов в каждой фазе;

- очереди заявок на входах соответствующих фаз.

Рис. 3.29.  Многофазная СМО

Такой СМО может быть, например, сборочный цех радиоэлектронного предприятия. Из нескольких цехов ( ) поступают готовые блоки для сборки изделия. Сначала они поступают на диспетчерские посты, на которых происходит оформление соответствующей документации. После этого блоки направляются на сборочные участки.

Диспетчеризация - первая фаза обслуживания.

Сборка изделий - вторая фаза обслуживания.

Затем идет стендовый контроль и регулировка - это третья фаза обслуживания.

Четвертая фаза - приемка готового изделия (например, военная приемка)

Далее может быть упаковка изделия - пятая фаза.

Упакованные изделия поступают в транспортное подразделение для отправки - это шестая фаза.

На каждом из этих шести участков работают инженеры, техники, наладчики, контролеры, упаковщики. В силу различного рода случайностей на входе каждой фазы могут образовываться очереди комплектующих блоков, непроверенных изделий, готовых изделий. А также могут быть простои работников, что в терминах СМО трактуется как очереди свободных каналов.

Вернемся к общей постановке задачи.

Целью моделирования является определение показателей исхода операции массового обслуживания на временном интервале . Например, оценка относительной пропускной способности СМО, среднее количество заявок в очередях, коэффициент использования каналов в каждой фазе и др.

Проанализируем элементы СМО.

  1. Входные потоки заявок на обслуживание

    Поступление заявок на вход первой фазы - событие активное.

    Следовательно, в модели должны быть предусмотрены модули реакции на это событие. Каждый поток обслуживает свой модуль реакции, значит, модулей реакции этого типа должно быть столько, сколько имеется потоков заявок, то есть . Моменты поступления заявок имитируются соответствующими генераторами (датчиками) случайных интервалов между заявками потоков .

  2. Каналы обслуживания

    Каждый канал имеет два состояния: свободен или занят. Переход в состояние "занят" - событие пассивное, так как определяется поступлением заявки. Переход в состояние "свободен" - событие активное, оно определяется внутренними свойствами канала, например, производительностью. Следовательно, в модели должны быть модули реакции на освобождение каналов. И этих модулей должно быть столько, сколько имеется в нашей СМО каналов:

  3. Очереди заявок на обслуживание на входах фаз

    Эти элементы СМО - пассивные, число состояний неограниченно.

  4. Очереди свободных каналов в каждой фазе обслуживания

    Эти элементы СМО также пассивные, число состояний равно числу каналов в каждой фазе.

  5. Обобщенный элемент "СМО в целом"

    Характеризуется одним активным событием - завершение интервала исследования . Следовательно, для обработки этого события в модели предусматривается один специальный модуль реакции.

Изменения состояний считаем мгновенными. Общее число модулей реакции в рассматриваемой модели должно быть:

При большом числе входных потоков и каналов обслуживания количество модулей реакции будет значительным, и модель будет труднообозримой, громоздкой. Однако структуру модели можно существенно упростить, назначив однородным активным событиям по одному модулю реакции. Или: освобождение любого канала вызывает обращение к другому общему модулю реакции. Естественно, на входе таких универсальных модулей реакции должен присутствовать блок настройки на конкретное активное состояние объединенной группы.

Строить же общий модуль реакции на освобождение всех каналов СМО нецелесообразно, так как освобождение каналов последней фазы СМО требует действий, заметно отличающихся от тех, которые необходимо выполнить при освобождении каналов не последней фазы.

Таким образом, имитационная модель СМО будет иметь всего четыре модуля реакции:

Блок-схема имитационной модели СМО состоит из общей части и модулей реакции. Общая часть имеет стандартный вид и была рассмотрена ранее. Структура общей части определяется способом продвижения модельного времени по событиям. Она показана на рис. 3.30.

Блок 1 - установка начальных условий на весь процесс моделирования. Вводятся константы , , указываются число источников заявок, число каналов. Счетчик числа реализаций устанавливается в нуль (или в - в зависимости от того, как организован счет реализаций модели). Указываются данные планирования эксперимента с моделью и др.

Блок 2 - установка начальных условий на очередную реализацию модели. Текущее время, счетчики числа поступивших и обслуженных заявок устанавливаются в нуль. Каналы обслуживания и очереди к ним устанавливаются в исходные состояния (установки исходных состояний определяются требованиями к исследованию) и др.

Блок схема имитационной модели СМО

Рис. 3.30.  Блок схема имитационной модели СМО

Наборы исходных данных и определяются конкретным назначением моделируемой СМО и характером последующих экспериментов.

Блоки 3, 4 реализуют продвижение времени по событиям.

Блок 5 - выбор модуля реакции. В зависимости от индекса пространственно временной точки передает управление соответствующему модулю реакции - , , или

В рассматриваемой модели элементы СМО имеют только два состояния, одно из которых является начальным. Поэтому индекс не имеет смысла.

Рассмотрим состав и функционирование модулей реакции.

Допустим, что в рассматриваемый момент времени свершилось активное событие - поступление заявки от одного из источников. Блок 5 передает управление модулю реакции А.

Блок-схема алгоритма модуля реакции приведена рис. 3.31.

Блок А5 - блок настройки. Обеспечивает доступ к ДСЧ, ячейкам и т. д. модуля, предназначенным для обслуживания конкретного потока заявок, которому принадлежит поступившая заявка.

Блок-схема алгоритма модуля реакции А

Рис. 3.31.  Блок-схема алгоритма модуля реакции А

Блок А6 - проверка наличия свободных каналов первой фазы. Количество свободных каналов в очереди обозначено: .

Если все каналы заняты , управление передается блоку А7. Если свободные каналы есть , управление передается блоку А9.

Блок А7 - размещение поступившей заявки в соответствующей очереди первой фазы . Текущее содержимое этой очереди обозначено как .

Блок А8 - запоминание времени постановки заявки в очередь и передача управления блоку А13.

Правая ветвь алгоритма (см. рис. 3.30) выполняет действия, связанные с постановкой заявки на обслуживание.

Блок А9 - имитация загрузки одного из свободных каналов поступившей заявкой. Очередь свободных каналов уменьшается на ( ) . Выбранному каналу присваивается признак занятости - . У свободных каналов этот признак равен .

Блок А10 - определение и запоминание длительности простоя канала. Накопление времени простоя необходимо, например, для определения коэффициента занятости канала на интервале исследования.

Блок А11 - имитация времени обслуживания заявки.

Случайное время обслуживания формируется обращением к соответствующему датчику случайных чисел.

Блок А12 - прогноз времени окончания обслуживания и занесение новой пространственно-временной точки в список событий.

Блок А13 - прогноз момента времени поступления очередной заявки. Соответствующий датчик случайных чисел выдает длительность случайного временного интервала между заявками данного типа. Момент поступления очередной заявки вычисляется как . Полученная таким образом пространственно-временная точка заносится в список событий.

Управление передается в точку Е - блоку 3 для определения очередного ближайшего события.

Если очередным ближайшим событием окажется освобождение канала не последней фазы, то блок 5 передает управление модулю реакции В, имитирующему действия в СМО при свершении этого активного события.

Блок-схема алгоритма модуля реакции В представлена на рис. 3.32.

Модуль В имеет две функции. Во-первых, попытаться загрузить освободившийся канал заявкой из очереди на входе фазы, в которой находится освободившийся канал. Во-вторых, имитировать продвижение заявки, освободившей канал, в следующую фазу обслуживания.

Блок-схема алгоритма модуля реакции В

Рис. 3.32.  Блок-схема алгоритма модуля реакции В

Блок В5 - настройка модуля на освободившийся канал конкретной фазы.

Каждая фаза обслуживания имеет свою очередь заявок на входе, свою очередь свободных каналов и, возможно, свои датчики случайных чисел. Поэтому не будем вводить для них новые обозначения, оставим те, которые были использованы при описании модуля А.

Блок В6. Проверка: есть ли в очереди на входе фазы заявки, ожидающие обслуживания ( ) ? Если есть, то освободившийся

канал должен быть немедленно загружен (блоки 10: 13). Если нет, то канал должен быть переведен в режим ожидания (блоки В7:В9).

Блок В7. Очередь свободных каналов увеличивается на ( ) . Признак занятости канала устанавливается в нуль.

Блок В8. Запоминание момента освобождения канала.

Блок В9. Перевод освободившегося канала в пассивное состояние. Для этого пространственно-временной точке , относящейся к освободившемуся каналу, присвоить значение времени,

превышающего интервал исследования , то есть . Это значение заносится в список событий. Управление передается блоку В14.

Блоки В14:В20 моделируют размещение заявки, освободившей канал, в следующей фазе обслуживания. Функции и взаимные связи этих блоков аналогичны блокам А6 : А12, рассмотренным ранее:

Блок 20 передает управление блоку 3 для идентификации очередного активного события. Этим событием может быть поступление заявки от какого-либо источника на вход первой фазы или окончание обслуживания заявки каким-либо каналом. В этих случаях управление будет снова передано модулям реакции или .

Если же очередным активным событием окажется освобождение канала последней фазы, то управление передается модулю реакции С (рис. 3.33).

Блок С5 - настройка на соответствующий канал последней фазы. Аналогичен блоку В5.

Блоки С6:С13 - загрузка освободившегося канала ожидающей заявкой, если таковая есть на входе последней фазы. Функции и взаимосвязи блоков аналогичны блокам В6:В13. Блок С6 соответствует блоку В6, блок С7 - блоку В7 и т. д. по одинаковым номерам.

Блок С14 формирует числовые атрибуты заявок, покидающих СМО. Такими атрибутами могут быть: суммарное время обслуживания заявки на всех фазах, суммарное время ожидания в очередях, число обслуживаний без ожидания и др. Атрибуты запоминаются и управление передается блоку 2.

Блок-схема алгоритма модуля реакции С

Рис. 3.33.  Блок-схема алгоритма модуля реакции С

Если очередное значение , что означает окончание интервала исследования работы СМО, управление передается модулю реакции (рис. 3.34).

Блок-схема алгоритма модуля реакции \Theta

Рис. 3.34.  Блок-схема алгоритма модуля реакции \Theta

Построить имитационную модель с продвижением времени можно и по-другому. Однако рассмотренная структура модели обладает важными достоинствами:

  1. Моделирующий алгоритм нагляден и прост, что существенно упрощает программирование и, особенно, отладку модели, а также изучение готовых моделей.
  2. Рассмотренная структура алгоритма позволяет параллельно разрабатывать модель по отдельным модулям и, следовательно, сокращать время на ее создание.

Облегчены корректировка и развитие модели. Например, в рассмотренной модели СМО легко учесть выход из строя и восстановление каналов обслуживания. Для этого надо добавить два модуля реакции: один - на возникновение отказа, другой - на восстановление работоспособности. Оба эти события рассматриваются как активные, если неисправность возникает из-за внутренних дефектов оборудования, а восстановление является результатом усилий обслуживающего персонала, входящего в состав СМО.

Вопросы для самоконтроля

  1. Что такое имитационная статистическая модель? Сравните ее с аналитической моделью.
  2. Назначение датчиков случайных чисел (генераторов) в имитационном моделировании.
  3. Принцип формирования случайных чисел в алгоритмических датчиках случайных чисел.
  4. Почему случайные числа, формируемые в компьютере, являются псевдослучайными квазиравномерными?
  5. Формирование случайных величин с произвольными законами распределения вероятностей методом обратной функции.
  6. Формирование равномерно распределенных случайных чисел на произвольном отрезке .
  7. Формирование нормально распределенных случайных чисел с произвольными значениями и .
  8. Найти методом обратной функции процедуру розыгрыша непрерывной случайной величины, распределенной по закону Ре-лея, заданного плотностью вероятности при ; при .
  9. Найти процедуру розыгрыша случайной величины, распределенной по закону Вейбулла, заданного плотностью вероятности при ; при .
  10. Создать программу мультипликативного датчика равномерно распределенных случайных чисел для 64-разрядной сетки:

    Определить период повторения случайных чисел.

  11. Усовершенствуйте алгоритм имитационной модели (рис. 3.5) так, чтобы можно было определять не только оценку математического ожидания вероятности поражения объекта, но оценку математического ожидания расхода ракет.
  12. Способ моделирования единичных событий.
  13. Способы моделирования полной группы несовместных событий.
  14. Три способа моделирования совместных независимых событий.
  15. Моделирование совместных зависимых событий.
  16. Стационарный и нестационарный случайные процессы.
  17. Эргодический и неэргодический случайные процессы.
  18. Способы продвижения модельного времени в имитационной модели.
  19. Какие виды времени различают при имитационном моделировании?
  20. Что понимается под распределенным имитационным моделированием? Сравните его с последовательным имитационным моделированием.
  21. Что значит квазипараллельное моделирование?
  22. Модель противоборства, назначение блоков. Признаки окончания одной реализации.
  23. Поясните прием моделирования противоборства двух сторон методом "блуждания по решетке".
  24. Понятие активного и пассивного элемента в модели СМО.
  25. Блок-схема имитационной модели СМО.
  26. Модули реакции в модели СМО.
  27. Достоинства структуры модели СМО.

Ссылки

Боев В.Д., Сыпченко Р.П. Компьютерное моделирование

оглавление   ДМ   экономическая информатика   визуальные среды - 4GL   Теория и практика обработки информации

Знаете ли Вы, что алгоритм - это набор инструкций, описывающих порядок действий исполнителя для достижения результата решения задачи за конечное число действий. В старой трактовке вместо слова "порядок" использовалось слово "последовательность", но по мере развития параллельности в работе компьютеров слово "последовательность" стали заменять более общим словом "порядок". Это связано с тем, что работа каких-то инструкций алгоритма может быть зависима от других инструкций или результатов их работы. Таким образом, некоторые инструкции должны выполняться строго после завершения работы инструкций, от которых они зависят. Независимые инструкции или инструкции, ставшие независимыми из-за завершения работы инструкций, от которых они зависят, могут выполняться в произвольном порядке, параллельно или одновременно, если это позволяют используемые процессор и операционная система.

НОВОСТИ ФОРУМА

Форум Рыцари теории эфира


Рыцари теории эфира
 10.11.2021 - 12:37: ПЕРСОНАЛИИ - Personalias -> WHO IS WHO - КТО ЕСТЬ КТО - Карим_Хайдаров.
10.11.2021 - 12:36: СОВЕСТЬ - Conscience -> РАСЧЕЛОВЕЧИВАНИЕ ЧЕЛОВЕКА. КОМУ ЭТО НАДО? - Карим_Хайдаров.
10.11.2021 - 12:36: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от д.м.н. Александра Алексеевича Редько - Карим_Хайдаров.
10.11.2021 - 12:35: ЭКОЛОГИЯ - Ecology -> Биологическая безопасность населения - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ПРАВОСУДИЯ.НЕТ - Карим_Хайдаров.
10.11.2021 - 12:34: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вадима Глогера, США - Карим_Хайдаров.
10.11.2021 - 09:18: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> Волновая генетика Петра Гаряева, 5G-контроль и управление - Карим_Хайдаров.
10.11.2021 - 09:18: ЭКОЛОГИЯ - Ecology -> ЭКОЛОГИЯ ДЛЯ ВСЕХ - Карим_Хайдаров.
10.11.2021 - 09:16: ЭКОЛОГИЯ - Ecology -> ПРОБЛЕМЫ МЕДИЦИНЫ - Карим_Хайдаров.
10.11.2021 - 09:15: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Екатерины Коваленко - Карим_Хайдаров.
10.11.2021 - 09:13: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вильгельма Варкентина - Карим_Хайдаров.
Bourabai Research - Технологии XXI века Bourabai Research Institution