Имя материала: Моделирование экономических процессов

Автор: Власов М. П.

13.4. основные принципы построения имитационной модели

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

на методы с приращением временного интервала;

методы с продвижением времени до особых состояний.

В первом случае модельное время продвигается на некоторую величину At. Далее определяются изменения состояния элементов системы, которые произошли за это время. После этого модельное время снова продвигается на величину At и т. д. до конца периода моделирования Тм. Шаг приращения выбирается, как правило, постоянным, но в общем случае он может быть и переменным. Этот метод носит название «принцип Дг».

Во втором случае в текущий момент модельного времени ґ сначала анализируются будущие особые состояния системы (иногда их называют события), которые изменяют динамику функционирования исследуемой системы. В общем случае в качестве особых состояний можно выделить:

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

начало обслуживания заявки;

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

завершение моделирования.

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

После анализа событий выбирается наиболее раннее и модельное время продвигается до момента наступления этого события. При этом считается, что состояние системы не изменяется между двумя соседними событиями. Затем определяется реакция системы на выбранное событие, в частности определяется характер и момент наступления нового особого состояния (события), и т. д. Процедура повторяется до завершения периода моделирования Гм. Данный принцип называют «принципом особых состояний». Модель в этом случае работает, «перепрыгивая» от одного события к другому, значительно экономя машинное время моделирования. Очевидно, что между реальным временем и временем работы модели в процессе имитации функционирования исследуемой системы нет ничего общего. Поскольку имитационный эксперимент выполняется на ЭВМ, как правило, с очень высоким быстродействием, время работы модели весьма незначительно (минуты). Такое отражение в ЭВМ реального процесса называют «сжатием времени», преимущества которого становятся очевидными, если попытаться получить эту же информацию, используя реальную моделируемую систему.

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

Степень детализации элементов моделируемой системы в условиях многократной реализации модели требует своего оптималъного решения: с одной стороны, желательно до минимума сократить объем вычислений, с другой — не потерять при этом требуемой точности расчетов. Например, в имитационной модели вычислительной системы, где установлена группа однотипных вычислительных машин, данную группу вычислительных машин желательно рассматривать как отдельный объект. Но при этом мы должны сделать допущение, что данная группа вычислительных машин загружается из одной очереди заявок на обслуживание (обработку данных), что может не соответствовать реальной системе. Насколько допустимы последствия подобных «огрублений» имитационной модели (конечно, с учетом соответствующих упрощений), должны решать вместе исследователь и пользователь модели.

С учетом вышесказанного обобщенный (укрупненный) алгоритм имитационного моделирования системы массового обслуживания будет следующим:

Определяется событие с минимальным текущим временем — наиболее раннее событие.

Модельному времени присваивается значение времени наступления наиболее раннего события.

Определяется тип события.

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

Перечисленные действия повторяются до истечения периода моделирования Гм (до достижения заданной глубины моделирования).

По результатам работы имитационной модели рассчитываются необходимые характеристики исследуемой системы массового обслуживания.

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

Пример 1

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

 

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

Очередь заявок

 

т

 

 

Рис. 13.5. Однофазная многоканальная СМО

 

Пример 2

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

Здесь к процессору с оперативной памятью подсоединены через селекторный канал (СК) и устройства управления (УУ) два накопителя на магнитных лентах и три накопителя на магнитных дисках. На устройствах внешней памяти располагаются наборы данных — файлы.

Поток запросов от пользователей на решение задач представляется неограниченным источником заявок.

Процесс решения одной задачи заключается в выполнении случайной последовательности этапов счета (обработки данных в про

цессоре) и обращений к файлам (обмена данными между внешней и оперативной памятью системы). Решение задачи начинается и завершается этапом счета.

Заявки считаются однородными в смысле одинакового распределения времени их обслуживания различными устройствами системы и отсутствия приоритетов. Заявки обслуживаются любым свободным устройством в порядке их поступления. Времена обслуживания заявок отдельными устройствами определяются по заданным законам распределения.

В этом случае рассматриваемая модель может быть представлена следующим образом (рис. 13.7).

Модель состоит из двух одноканальных СМО {Sx — процессор, 54 — селекторный канал) и двух многоканальных СМО (52 — внешняя память на магнитных лентах, 53 — внешняя память на магнитных дисках).

Предполагается наличие общей очереди заявок в группе однотипных устройств, что отражает наличие групповых устройств управления.

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

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

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

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

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

В качестве критерия оптимальности рассматриваемой модели может быть взят следующий функционал:

 

где 30 — текущие затраты, связанные с содержанием оборудования (компьютеры); Зп — заработная плата специалистов-ремонтников; Q — стоимость работ, выполненных на компьютерах; V — количество ремонтного персонала.

Оптимизация такого функционала аналитическими методами практически невозможна вследствие его нелинейности. В то же самое время, построив имитационную модель (алгоритм) изучаемой системы, можно рассчитать значения функционала для различных значений величины V: (1, 2, 3, ...) и выбрать рациональное (здесь в силу дискретности модели — оптимальное) решение (рис. 13.8).

Динамика функционирования рассматриваемой системы характеризуется следующими состояниями обслуживаемого оборудования:

начало работы компьютера после его обслуживания;

выход компьютера из строя (поступление заявки).

начало обслуживания компьютера.

Совершенно очевидно при этом, что событиями здесь по сделанному выше определению являются все три перечисленные состояния, т. к., хотя на момент выхода компьютера из строя обслуживаю

ср(П

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

Для практического осуществления имитационного эксперимента с рассматриваемой системой должны быть заданы (известны) законы распределения времени работы [/■ и времени обслуживания Г, (ремонта) каждой единицы оборудования. Рассматриваемый аппарат имитационного моделирования позволяет ограничиться получением гистограмм распределения, что значительно упрощает процесс подготовки данных для модели (рис. 13.9).

 

0,45

0,35

0,3

0,25

0,2

0,15

0,15

0,1

0,05

 

Рис. 13.9. Гистограммы исходных данных для моделирования

По данным гистограммам строятся соответствующие им кумуля-ты (рис. 13.10).

Тогда для определения случайных величин U{ и Т( с помощью датчика случайных чисел в диапазоне 0-1 вырабатываются случайные числа, определяющие случайным образом соответствующие величины U{ и Tt.

Прежде чем приступить к разработке моделирующего работу изучаемой системы алгоритма, рассмотрим рисунок, иллюстрирующий начальный фрагмент моделирования системы обслуживания трех компьютеров (i = 1, 2, 3) одним специалистом-ремонтником (V= 1) — рис. 13.11.

Логика работы моделирующего алгоритма будет следующей.

Выполнение действий, связанных с началом работы модели: генерация моментов времени, в которые поступят требования на обслуживание компьютера (U{), расчет текущего времени t{: = tj+ U{.

Определение ближайшего момента изменения состояния системы. Формально это реализуется просмотром величин г,- и определением минимальной из них (т. е. min £,•).

Определение типа события: поступление заявки на обслуживание или окончание обслуживания.

Выполнение действий, определяемых характером текущего события:

а)         действия, связанные с поступлением заявки

Проверка состояния канала обслуживания (простой или работа по обслуживанию). Если канал обслуживания простаивает, то необходимо начать обслуживание поступившей заявки: сгенерировать время обслуживания компьютера і (Щ, рассчитать время окончания обслуживания (t{ :=tj + Т{), изменить состояние компьютера г на рабочее. Если канал обслуживания занят обслуживанием, поставить поступившую заявку в очередь на обслуживание и увеличить длину очереди наї (1:=1 + 1).

б)        действия, связанные с окончанием обслуживания

Проверка состояния очереди (пустая или непустая). Если

очередь пуста, объявить простой канала обслуживания. Если

очередь не пуста, то в соответствии с принятой дисциплиной

 

 

о

 

CD Si

 

 

Яис. 33.33. Принципиальная схема моделирования СМО: і,— текущее время состояние /-й единицы оборудования; (1+7) — моменты изменения состояния системы (события) "2 — работа оборудования ((У);

            | — обслуживание оборудования (Г);

|Q/\^/S] — простой в ожидании обслуживания (w!)

диспетчеризации начать обслуживание конкретного компьютера, стоящего в очереди, уменьшить длину очереди на единицу, рассчитать время простоя оборудования в очереди. Далее необходимо сгенерировать время работы компьютера і (Uj) и рассчитать t{ := t{ + U( — время поступления очередной заявки на обслуживание компьютера і. Сделаем некоторые пояснения к моделирующему алгоритму.

Для того чтобы отличать рабочее состояние компьютера от состояния обслуживания ее, в первом случае величина t{ записывается в памяти моделирующей ЭВМ со знаком «минус», т. е. — t,-, во втором случае — со знаком «плюс», т. е. t{.

Ближайший момент изменения состояния системы в этом случае должен определяться следующим образом: а = min

У оборудования, ожидающего обслуживания в очереди, состояние может измениться лишь тогда, когда закончится обслуживание какой-нибудь другой единицы оборудования. Поэтому, чтобы при определении а = min не рассматривать компьютеры, ожидающие обслуживания, их текущее время (время постановки в очередь) запоминается в памяти моделирующей ЭВМ (tiQ), а вместо t{ записывается наибольшее из чисел, с которыми может оперировать моделирующая ЭВМ (математически это °°).

В результате в памяти ЭВМ (в поле tj0) будет фиксирована очередь заявок на обслуживание и время их поступления в нее, которое необходимо знать для практической реализации выбранной дисциплины диспетчеризации. В нашем случае возьмем для конкретности дисциплину: «первым пришел — первым обслужен», формально реализуемую в алгоритме по формуле p = min |у.

После «изъятия» г-й единицы оборудования из очереди в соответствующую ячейку памяти ti0 заносится максимально большое для данной моделирующей ЭВМ число (математически — <»). Алгоритм, моделирующий рассматриваемую систему, представлен на рис. 13.12. Результаты имитационного моделирования целесообразно оформить в виде таблицы, которая может иметь, например, следующий вид (табл. 13.1)

Подпись: til-
Подпись: 12L-.-L + 1

Подготовка программы к работе

о->5Й-»5#->Хч

і        і і 1->У,; —>tj_; 0 ->1

 

Получение Uj, Vi

і і

 

tj-.-Uj.4l

~~т~

a:-mm|t,-| Запись со знаком Запомнить і"

t,:-4-(|a| + r,) f

V-.-V-1

~т~

 

Рис. 13.12. Моделирующий алгоритм: Гм — глубина моделирова ния; I — длина очереди на обслуживание

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

Страница: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 |