Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

230700_Имитационное_моделирование_Прохоров.doc / Теория / Основы имитационного моделирования_1

.doc
Скачиваний:
46
Добавлен:
06.02.2016
Размер:
46.59 Кб
Скачать

4

  1. Основы имитационного моделирования в системе PILGRIM

    1. Понятие имитационной модели

В процессе управления различными процессами постоянно возникает необходимость прогнозирования результатов в тех или иных условиях. Для ускорения принятия решения о выборе оптимального варианта управления и экономии средств на эксперимент используются модели процессов.

Можно дать следующее определение: объект А есть модель объекта В, если:

1) А и В не идентичны друг другу;

2) А отвечает на вопросы относительно В.

Все многообразие моделей можно разделить на следующие группы (рис.1). По своему назначению модели делятся на статические и динамические. Статические модели демонстрируют структуру объекта. С точки зрения данного определения они отвечают на вопросы типа “Как устроено...”. Динамические модели демонстрируют поведение объекта во времени. Они отвечают на вопросы типа “Что будет, если...”.

Рис.1. Схема классификации моделей.

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

    1. Моделирование систем массового обслуживания

Настоящее пособие посвящено имитационному моделированию систем, относящихся к классу систем массового обслуживания (СМО).

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

Заявка - это требование какого-либо обслуживания, выполняемого в течение некоторого промежутка времени (возможно, нулевого).

Обслуживающий прибор (ОП) - это устройство (подразделение, исполнитель и т.д.), которое реализует процесс обслуживания заявки.

Поток заявок - это перемещение заявок от одного ОП к другому.

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

Рис.2 . Общая схема структуры СМО

Очевидно, что маршруты заявок в системе могут быть достаточно сложными, содержать в себе циклы, ветвления, участки параллельного обслуживания. Кроме того, система может быть замкнутого типа, когда она обслуживает постоянный контингент заявок. Таким образом, при построении модели необходимо тщательно проанализировать структуру процесса.

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

    1. Влияние разброса в значениях параметров обслуживания на задержку в очередях. Формула Поллачека-Хинчина.

Рассмотрим простейшую систему массового обслуживания, состоящую из одного обслуживающего прибора. Параметры обслуживания являются случайными величинами (имеет место разброс значений). При этом входной поток заявок является простейшим. Это значит, что заявки поступают по одной и появление каждой следующей заявки не зависит от предыдущей.

Введем следующие обозначения:

ta - среднее значение интервала времени между двумя последовательными заявками, поступающими в очередь;

ts - средняя длительность обслуживания в канале обслуживающего прибора;

s - среднеквадратическое отклонение длительности обслуживания;

cs - коэффициент вариации времени обслуживания, который определяется из соотношения сs = s/ ts ;

- коэффициент использования обслуживающего прибора, определяемый из соотношения = ts / ta;

tq- средняя длительность ожидания заявки в очереди по причине занятости канала обслуживания.

Если выполняется условие установившегося режима ts < ta, то среднюю длительность ожидания в очереди можно определить с помощью формулы Поллачека - Хинчина:

.

Если время обслуживания и интервал поступления являются детерминированными величинами (то есть не имеют разброса), то очереди к обслуживающему прибору не будет. Если же они являются величинами случайными, то может образовываться очередь. В этом случае работает формула Поллачека-Хинчина, и среднее за весь период моделирования время ожидания в очереди не будет равно нулю.

Из формулы также видно, что чем ближе среднее время обслуживания к среднему интервалу поступления заявок, тем больше время задержки в очереди. В пределе (при равных значениях этих величин) мы получим очередь бесконечной длины (в знаменателе будет ноль). То есть в процессе работы такой системы очередь к обслуживающему прибору неограниченно растет. А в системе с детерминированными значениями параметров обслуживания в этом случае очереди вообще не будет (обслуживание будет идти в режиме “один вышел - один вошел” без ожидания).

1.4. Технология моделирования в системе PILGRIM

Средством построения моделей в системе PILGRIM является графический конструктор Gem (от «Generator models»), представляющий собой набор узлов различного типа. На схеме имитационной модели узел есть графическое изображение некоторого типового процесса, или можно сказать, что внутри узла работает процесс. При этом элементарный процесс может быть, вообще говоря, представлен несколькими узлами имитационной модели, если этого требует логика его работы.

Таким образом, схема имитационной модели представляет собой направленный граф, вершины которого представляют собой компоненты элементарных процессов, а дуги определяют направление потоков заявок и управляющих воздействий в моделируемой системе.

Конструктор Gem генерирует программу на языке С++, которая в дальнейшем должна быть скомпилирована в составе проекта в среде MS Developer Studio, где предварительно должен быть установлен Visual C++ с библиотеками Pilgrim.

Таким образом, процесс построения модели в системе PILGRIM включает в себя следующие этапы:

  1. Анализ структуры моделируемого процесса

  2. Определение входных и выходных параметров модели

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

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

  5. Определение условий выбора узла, если в модели имеются ветвления.

  6. Компиляция модели.