Раздел 5 Автоматика. Энергетика. Управление УДК 004.4 Исследование систем массового обслуживания с помощью имитационных моделей Г.Т. ДАНЕНОВА, к.т.н., доцент, Б.Х. ШОДЫРОВА, ст. преподаватель, Н.Р. РАЙЦ, ст. преподаватель, Карагандинский государственный технический университет, кафедра САПР Ключевые слова: модель, процесс, автоматизированная система, программа, комплекс, моделирование, программирование, автоматизация, проектирование, обслуживание. сегодняшний день метод имитационного Н амоделирования является одним из самых эффективных методов исследования процессов и систем самой различной природы и степени сложности. Сущность этого метода состоит в написании компьютерной программы, имитирующей процесс функционирования системы, и в проведении экспериментов с этой программой с целью получения статистических характеристик моделируемой системы. Используя результаты имитационного моделирования, можно описать поведение системы, оценить влияние различных параметров системы на ее характеристики, выявить преимущества и недостатки предлагаемых изменений, прогнозировать поведение системы [1]. Лучшей иллюстрацией области применения имитационного моделирования являются системы массового обслуживания. В терминах систем массового обслуживания описываются многие 4 2012 реальные системы: вычислительные системы, узлы сетей связи, магазины, производственные участки – любые системы, где возможны очереди и отказы в обслуживании. Системы массового обслуживания отличаются высокой наглядностью отображения моделируемых объектов и вследствие этого сравнительной простотой перехода от реальных объектов к соответствующим СМО. Построение имитационных моделей больших систем и проведение машинных экспериментов с этими моделями представляют собой достаточно трудоемкий процесс. Традиционным подходом к созданию имитационных моделей является использование языков программирования, что приводит к написанию запутанных и сложных моделирующих программ. Использование языков моделирования требует от пользователей специальных знаний и навыков, а подобные системы моделирования либо не предоставляют никаких 74 Раздел «Автоматика. Энергетика. Управление» средств наглядного отображения модели, либо стоят очень дорого. Таким образом, получение знаний в области имитационного моделирования требует навыков программирования с помощью какого-либо универсального или специального языка. Эффективным способом снижения трудоемкости при изучении и исследовании различных систем является автоматизация процедур, охватывающих построение, реализацию и оценку правильности имитационных моделей [3]. В настоящее время создан ряд систем моделирования, который избавляет исследователя от программирования. Явно проявляется тенденция изменения технологий разработки моделей в направлениях, максимально ориентированных на проектирование систем, что позволяет пользователю не задумываться о структуре и синтаксисе программы имитации, уделяя все внимание структуре и параметрам самой модели и ее узлов [1]. На сегодняшний день это наиболее перспективное направление развития средств имитационного моделирования. При этом автоматизации должен подлежать не только этап программирования имитационной модели. Технология имитационного моделирования должна охватывать весь цикл моделирования – от формирования концептуальной модели до анализа результатов вычислительного эксперимента [2]. Основная цель разработки автоматизированной системы имитационного моделирования СМО – реализация современных подходов к проведению имитационного моделирования и обеспечение простой и доступной среды для проектирования имитационных моделей СМО. Программа обеспечивает поддержку основных этапов имитационного моделирования: – проектирование концептуальной схемы модели; – настройка свойств отдельных элементов модели; – планирование эксперимента с построенной моделью; – запуск и выполнение эксперимента; – оценка и интерпретация результатов эксперимента. Конструирование модели СМО осуществляется в соответствии с принципами объектно-ориентированного проектирования. Для этого каждый элемент модели определяется как некоторый объект, описывается каждая связь между элементами, определяются свойства объектов и связей. В целях формализации представления модели концептуальная структура СМО задается в виде ориентированного графа, вершины которого представляют множество возможных узлов обслуживания. Ниже приведены четыре типа узлов, реализованных в комплексе: – генератор предназначен для моделирования входящего потока заявок. Он создает новые заявки и передает их в другие узлы модели; – канал состоит из одного или нескольких обслуживающих устройств, которые работают параллельно и осуществляют обслуживание заявок; – накопитель служит для организации очереди, в которой заявки ожидают обслуживания; – сток предназначен для уничтожения заявок. 4 2012 Заявка, попавшая в сток, покидает систему. Связи между вершинами графа определяют пути движения заявок внутри системы. Возможны ситуации, когда один узел имеет несколько выходов, тогда путь заявки определяется условиями, заданными в узле-источнике (в соответствии с дисциплиной выбора приемника). Переход заявки из одного узла в другой осуществляется мгновенно. Если в графе определена дуга (v,w), то будем говорить, что объект v является источником заявок для объекта w, а объект w является приемником заявок для объекта v. Для задания графа каждый объект модели имеет список приемников. Процесс создания концептуальной структуры модели состоит в определении узлов сети обслуживания и установлении связей между ними. При этом должны быть учтены следующие требования: – модель обязательно должна содержать в своем составе хотя бы один генератор заявок; – модель обязательно должна содержать в своем составе хотя бы один сток; – генератор заявок не может быть приемником заявок ни для какого узла сети; – сток не может быть источником заявок ни для какого узла сети. Параметрическая настройка отдельных элементов сети состоит в определении свойств узлов и их связей. Каждый объект модели имеет определенный набор функций и параметров, которые в совокупности описывают логику и закономерности его поведения. Параметры узлов могут быть как общими для всех типов узлов (уникальное наименование, дисциплина выбора приемника), так и специфическими, определяемыми типом узла. Специфические параметры узлов перечислены в таблице 1. Таблица 1 – Параметры узлов СМО Тип узла Список параметров Закон распределения интервала времени между моментами генерации заявок, Генератор закон распределения числа заявок при генерации, время задержки первой генерации Дисциплина постановки заявки в очередь (FIFO, LIFO), предельная Накопитель емкость накопителя, предельное время ожидания Канал Дисциплина выбора источника заявок, (совокупность закон распределения времени обслуживающи обслуживания, количество х устройств) обслуживающих устройств в канале Функционирование СМО происходит в условиях действия различных случайных факторов, поэтому некоторые параметры модели заданы в виде закона распределения. Программа позволяет выбрать один из трех видов закона распределения: равномерный, показательный и нормальный. Основное свойство связи между узлами – дисциплина выбора приемника (правило, в соответствии с которым узел выбирает, куда дальше 75 Раздел «Автоматика. Энергетика. Управление» отправить заявку). Выбор приемника осуществляется в соответствии с одним из следующих правил: – по порядку следования в списке (приоритет приема заявок имеют узлы, расположенные ближе к началу списка); – выбор объекта осуществляется случайно в соответствии с заданными вероятностями выбора; – по количеству заявок в приемнике (в качестве приемника выбирается узел, содержащий наименьшее число заявок, при равенстве количества заявок действует первое правило). Если ни один из узлов-приемников не может принять заявку, то заявка получает отказ и переходит в сток отказов. Похожим образом задается дисциплина выбора источника для канала. Планирование эксперимента заключается в настройке условий проведения эксперимента. На этом этапе задается критерий остановки моделирования (по времени моделирования или количеству поступивших заявок), тип эксперимента и определяется набор показателей, для которых нужно построить распределения. Среднестатистические и предельные показатели функционирования модели рассчитываются автоматически. Программа поддерживает выполнение двух типов экспериментов: простой прогон модели во времени с текущими параметрами и однофакторный эксперимент. Однофакторный эксперимент заключается в проведении некоторого количества прогонов модели при разных значениях одного из параметров модели, который в этом случае называется фактором. В качестве фактора можно выбрать любой количественный параметр узлов модели, в том числе один из параметров законов распределения. Для установки фактора необходимо выполнить следующее: – выбрать объект, которому принадлежит фактор (параметром какого объекта является); – указать тип фактора (например, число устройств в канале, интенсивность закона распределения времени обслуживания и т.д.); – указать начальное значение фактора; – указать шаг изменения значения фактора при однофакторном эксперименте; – указать число уровней фактора (количество точек, которые будут получены в результате однофакторного эксперимента). Настройка распределений заключается в указании необходимости строить то или иное распределение и установке параметров распределения: нижней (левой) и верхней (правой) границ области значений исследуемой случайной величины, а также числа интервалов, на которое разбивается данная область значений. Процесс моделирования СМО представляет собой последовательность изменения состояния узлов сети, которые определенным образом реагируют на события и осуществляют передачу заявок в другие узлы модели, выполняя расчет своих статистических характеристик. В качестве показателей эффективности СМО программа оценивает распределения, а также средние и предельные значения характеристик СМО (таблица 2). Результаты однофакторного эксперимента представляют собой графики зависимостей количественных характеристик СМО от выбранного фактора. Интерпретация результатов эксперимента включает в себя оценку эффективности функционирования системы (справляется ли с потоком заявок или много простаивает и т.д.), идентификацию законов распределения, определение оптимальных значений параметров системы с использованием графиков однофакторного эксперимента. Разрабатываемый программный комплекс предназначен для функционирования под управлением операционных систем Windows и активного использования удобных диалоговых средств, предоставляемых графическим интерфейсом этих операционных систем. Для реализации процесса построения графа модели предполагается использование конструктора, позволяющего визуализировать сетевую структуру модели, осуществлять операции добавления, удаления, модификации узлов СМО, устанавливать связи между узлами модели. При таком подходе размещение узлов модели на рабочей области и связь их между собой будет осуществляться с помощью соответствующих кнопок на панели инструментов. Также предполагается создание панели свойств узловых элементов. Выбрав необходимый узел модели, можно будет изменить любой из его параметров. Разумеется, предполагается наличие контроля корректности вводимых данных. Также планируется создание некоторого числа диалоговых окон, позволяющих изменять такие характеристики модели, как критерии остановки моделирования, тип проводимого эксперимента и тип фактора, набор данных, по которому необходимо вести статистику. Результаты моделирования предполагается выдавать в виде графической и текстовой информации с возможностью сохранения в виде файлов и вывода на печать. Пользователь автоматизированной системы моделирования располагает возможностями абсолютного контроля над своей моделью, может варьировать по Таблица 2 – Характеристики СМО, определяемые программой Характеристика Число заявок в системе Время пребывания заявки в системе Число поступивших заявок 4 2012 Объект по всей СМО Метод оценки характеристики Среднестатистическое и максимальное значения, распределение Среднестатистическое, минимальное и максимальное значения, сток распределение для всех типов объектов Число заявок, поступивших на вход объекта 76 Раздел «Автоматика. Энергетика. Управление» Время ожидания в очереди Длина очереди Доля заявок, получивших отказ Время простоя Коэффициент загрузки (использования) накопитель накопитель канал Среднестатистическое и максимальное значения, распределение Среднестатистическое и максимальное значения, распределение Отношение числа заявок, не дождавшихся обслуживания, к числу поступивших в накопитель заявок Среднестатистическое и максимальное значения, распределение канал Доля суммарного времени простоя от всего времени работы канала накопитель желанию любой параметр и судить о поведении модели по наблюдаемым результатам. Разрабатываемый комплекс может использоваться для решения таких задач, как: – формализация представления модели СМО в лаконичном и понятном виде; – описание логики и закономерностей поведения моделируемого объекта; – оценка основных показателей эффективности функционирования СМО; – построение и проверка гипотез, которые могут объяснить наблюдаемое поведение; – анализ чувствительности СМО к изменению параметров отдельных элементов; – поиск оптимальных вариантов реализации СМО. Использование среды моделирования позволяет избежать программирования имитационной модели вручную, существенно повысить скорость создания моделей, легко модифицировать их в дальнейшем. Таким образом, пользователь получает возможность рассмотреть и проанализировать несколько моделей различных СМО и выявить специфику моделирования СМО в различных прикладных областях. С использованием среды моделирования можно быстро оценить адекватность той или иной программы, реализующей имитационную модель, что практически невозможно сделать на интуитивном уровне или с помощью аналитических методов. Универсальность и гибкость моделей СМО обусловливает широкую область применения данного программного обеспечения: исследование производственных бизнес-процессов, анализ функционирования сетей связи, транспортных систем, различных организаций сферы обслуживания и т.д. Дальнейшее развитие данной системы моделирования связано с решением задач автоматического поиска оптимальных параметров исследуемых объектов и использование имитационных моделей в составе математического обеспечения автоматизированных систем обработки информации и управления. 4 2012 77 Раздел «Автоматика. Энергетика. Управление» СПИСОК ЛИТЕРАТУРЫ 1. Емельянов А.А., Власова Е.А., Дума Р.В. Имитационное моделирование экономических процессов. М.: Финансы и статистика, 2002. 2. Лычкина Н.Н. Современные тенденции в имитационном моделировании // Вестник университета. Сер. «Информационные системы управления». № 1. ГУУ. М., 2001. C. 135-141. 3. Бусленко В.Н. Автоматизация имитационного моделирования сложных систем. М.: Наука, 1977. 4 2012 78