Содержание к диссертации
Введение
Глава I. Анализ целей, задач и методов моделирования систем массового обслуживания 8
1.1. Основы моделирования систем массового обслуживания 9
1.2. Аналитический подход к моделированию. Трудности практического применения аналитического подхода 11
1.3. Имитационный подход к моделированию. Проблемы использования имитационных моделей 25
1.4. Постановка задачи исследования 37
1.5. Основные результаты 39
Глава II. VI - метод моделирования СМО с сетевой структурой 41
2.1. Основы концепции Vi - метода 41
2.2. Основы формализации модели в рамках Vi-метода 47
2.3. Оценка параметров эффективности функционирования моделируемой системы 71
2.4. Основные результаты 75
Глава III. Программный комплекс имитационного моделирования систем массового обслуживания «КИМСМО» 76
3.1. Организация информационного фонда. Выбор структуры хранения данных 76
3.2. Основные концепции графического пакета визуального моделирования 82
3.3. Структура системы «КИМСМО». Формализация основных модулей системы 88
3.4. Проведение модельного эксперимента 97
3.5. Методика обработки статистической информации 102
3.6. Встроенные функции комплекса «КИМСМО». Законы распределения 112
3.7. Основные результаты 116
Глава IV. Имитационное моделирование функционирования систем на основе концепции Vi-метода 117
4.1. Имитационная модель «Управление грузоперевозками» 117
4.2. Имитационная модель «Управление шлюзованием» 131
4.3. Имитационная модель «Функционирование центра занятости населения» 144
4.4. Основные результаты 154
Заключение 155
Библиографический список
- Аналитический подход к моделированию. Трудности практического применения аналитического подхода
- Оценка параметров эффективности функционирования моделируемой системы
- Структура системы «КИМСМО». Формализация основных модулей системы
- Имитационная модель «Управление шлюзованием»
Аналитический подход к моделированию. Трудности практического применения аналитического подхода
Моделирование является одним из основных методов исследования окружающей действительности и инструментов в научной и практической деятельности специалистов многих отраслей деятельности человека.
Цель моделирования - понять и изучить качественную и количественную природу явления, отразить существенные для исследования черты явления в форме, пригодной для использования в практической деятельности.
Процесс моделирования представляет собой построение модели и исследование характеристик системы с целью прогнозирования поведения системы при изменении различных параметров.
Моделирование как процесс будем рассматривать состоящим из следующих этапов [9,72, 98]: постановка задачи и выделение свойств (характеристик, признаков) системы, подлежащих исследованию; констатация затруднительности или невозможности исследования системы массового обслуживания в реальности; выбор модели, достаточно хорошо фиксирующей существенные свойства оригинала и легко поддающейся исследованию; исследование модели в соответствии с поставленной задачей; перенос результатов исследования модели на оригинал. проверка достоверности результатов, полученных в модели. Выбор модели определяется постановкой задачи и особенностями оригинала. Выделим два основных вида моделей (М): физические и математические [72, 86, 106] . Физические модели основаны на использовании эффекта масштаба в слу чае возможности пропорционального изменения всего комплекса изучаемых свойств. Физическая модель воспроизводит функционирование реальной сис темы с помощью механических, электрических, пневматических и других фи зических устройств, действия которой имитируют управляющие и возмущаю 10 щие воздействия на систему.
При физическом моделировании оригинал и модель имеют одинаковую физическую природу и отличаются обычно количественными соотношениями.
Математические модели представляют собой формальное описание функционирования реальной системы на языке математических уравнений. При математической моделировании оригинал и модель могут иметь самую разную физическую природу, но они должны иметь сходственные математические описания. Математические модели подразделим на два вида: - аналитические модели; - имитационные модели. Аналитическая модель - такая модель, математическое описание которой позволяет аналитическими методами найти искомые параметры. При моделировании экономических систем аналитические модели обычно связаны с использованием методов математического программирования (линейное, нелинейное, динамическое и т.д.), теории массового обслуживания и управления запасами, методов сетевого планирования и управления.
Имитационная модель - машинный аналог сложного реального явления, позволяющий заменить эксперимент над реальной системой массового обслуживания экспериментом с математической моделью на ЭВМ.
В соответствии с рассмотренными видами математических моделей выделим два вида моделирования:
Аналитическое моделирование является классическим подходом к изучению систем массового обслуживания [19, 24, 42, 81, 87]. В течение продолжительного времени именно этот подход считался единственно приемлемым и верным. В основе этого метода лежит представление системы массового обслуживания в виде конкретной математической модели, описываемой конечным числом дифференциальных уравнений. Решение этих уравнений и позволяет найти основные характеристики системы.
Имитационное моделирование является альтернативным подходом к изучению систем массового обслуживания. Этот подход получил свое развитие с появлением быстродействующих ЭВМ. Суть подхода заключается в попытке построения имитационных моделей реальных систем, позволяющих воспроизвести (имитировать) реальные процессы, протекающие в системах массового обслуживания, при этом описание модели задается в виде алгоритма поведения и взаимосвязи элементов моделируемой системы массового обслуживания (оригинала), отраженных в модели с учетом постановки задачи. Такой алгоритм позволяет имитировать поведение элементов системы и системы в целом, а также определять требуемые параметры системы.
Оценка параметров эффективности функционирования моделируемой системы
Схему анализа и обработки результатов моделирования построим не на выделении каких-либо отдельных результирующих характеристик системы, а на анализе динамики изменений различных параметров системы, позволяющих подойти к рассмотрению системы с различных точек зрения.
При этом анализ проведем на основании статистической информационной модели, формируемой в процессе моделирования и отражающей все многообразие процессов, протекающих в моделируемой системе.
Подобная структура организации статистических данных позволит получить полномасштабную картину проводимого машинного эксперимента, отражающую все изменения параметров системы в процессе моделирования, а также произвести анализ моделируемой системы по различным срезам статистических данных. 2.2. Основы формализации модели в рамках Vi-метода 2.2.1. Методика формализации моделируемого объекта
В соответствии с концепцией Vi - метода для разработки методики формализации моделируемой системы используем подход, ориентированный на использование в качестве элементов модели объектов системы.
В соответствии с классификацией СМО, а также с учетом направленности на моделирование СМО с сетевой структурой, в структуре имитационной модели (IM) выделим микромодели четырех типов.
Потоки в модели представляют собой алгоритм, по которому вычисляются моменты появления заявок на входе и выходе, то есть выступают в качестве источников входных и выходных потоков заявок. Такие источники могут быть зависимыми и независимыми. В зависимых источниках моменты появления заявок зависят от наступления определенных событий, например, от прихода другой заявки на вход некоторого устройства. Типичной моделью независимого источника является алгоритм выработки значений случайной величины. Кроме того, источник входного потока заявок задает определенные свойства заявок, такие как, приоритет, необходимое количество каналов для обслуживания и др., учитываемые при последующей обработке заявок.
Устройства-накопители в имитационной модели представляют собой алгоритмы выработки значений интервалов (длительностей) обслуживания. Чаще всего это алгоритмы генерации значений случайных величин с заданным законом распределения. Кроме того, модель устройства отражает заданную дисциплину обслуживания, поскольку в модель входит алгоритм, управляющий очередями и приоритетами на входах устройства.
Таймер представляет собой алгоритм выработки, в соответствии с которым определяются условия окончания моделирования. 4. Микромодели узлов (U). В имитационной модели узлы выполняют связующие, управляющие и вспомогательные функции, связанные с поведением заявок в многоуровневой иерархической структуре и обусловленные: неоднозначностью определения маршрутов продвижения заявок; наличием схем взаимодействия заявок между собой; возможностью динамического изменения характеристик заявок.
С помощью микромоделей этих четырех типов формализованы основные классы объектов, необходимые для адекватного представления СМО с сетевой структурой. Эти классы представлены в табл. 2.1.
Поток - микромодели, отвечающие за генерацию в системе заявок на обслуживание и вывод этих заявок из системы; соответственно имеют имена Вход и Выход. Устройство-Накопитель - микромодель, представляющая собой механизм обслуживания заявок, отвечает за организацию очереди заявок, выбор заявок из очереди и постановку их на обслуживание, осуществление обслуживания; представлена одним классом Сервис. Таймер - микромодель, отвечающая за формирование условий окончания (продолжительности) моделирования; представлена классом Старт. Узел - микромодели, связанные с дополнительными операциями над заявками; представлены классами Путь, Копия, Слияние, Встреча, Изменить.
Каждый класс объектов имеет набор атрибутов (свойств), присущих всем объектам данного класса. В соответствии с рассмотренными в предыдущей главе характеристиками СМО, каждый из рассмотренных девяти классов, имеет определенный набор свойств, присущих только объектам данного класса и отражающих их функциональное назначение. Полный список свойств рассмотренных ранее классов представлен в табл. 2.2. С каждым классом связана определенная микромодель соответствующего типа, содержащая конкретную процедуру обработки. При таких исходных условиях процесс моделирования представим как алгоритм, состоящий из упорядоченных обращений к этим процедурам. Моменты обращения к конкретной процедуре обработки будут определяться событиями, связанными с продвижением заявок в модели.
Структура системы «КИМСМО». Формализация основных модулей системы
Опыт применения компьютерных технологий для построения моделей информационных систем показывает, что наиболее эффективными являются не универсальные алгоритмические языки высокого уровня, а специализированные языки для создания систем управления базами данных (СУБД). СУБД дают пользователям возможность осуществить непосредственное управление данными, а программистам - быстро разрабатывать более совершенные программные средства их обработки.
После проведения соответствующего анализа для разработки программного комплекса «КИМСМО» была выбрана новая версия одной из популярных систем разработки приложений баз данных для персональных компьютеров и небольших локальных вычислительных сетей - Visual FoxPro 6.0. Visual FoxPro 6.0 предоставляет широкий спектр возможностей разработки приложений баз данных, среди которых можно выделить следующие:
Использование базы данных. Наряду с традиционным хранением данных в виде отдельных DBF-файлов (свободных таблиц) поддерживается хранение данных в базе данных, которая содержит все включенные в нее таблицы, их индексы, связи между таблицами, длинные имена таблиц, комментарии и заголовки полей, правила проверки правильности ввода данных и т.д., что существенно упрощает обработку данных.
Триггеры и правила проверки. Триггеры и правила проверки полей и таблиц позволяют перенести многократно повторяемые в приложениях правила проверки ввода данных в базу данных и хранить правила проверки совместно с данными. Действия, предусматриваемые триггерами, обеспечивают высокий уровень контроля на уровне базы данных за операциями вставки, удаления и изменения записей таблиц данных. Транзакции. Транзакция представляет собой интервал времени, в течение которого любые изменения данных могут быть полностью отменены и по завершении которого все выполненные изменения фиксируются.
Объектно-ориентированное программирование. Одновременно с сохранением возможности процедурного пошагового программирования используются средства разработки объектно-ориентированных приложений, позволяющие реализовать полноценную модель управления событиями, включая обработку событий Windows.
Визуальное программирование. Дальнейшее развитие графического интерфейса привело к созданию гибкого и мощного инструментария, обеспечивающего в любой момент времени взаимно однозначное соответствие программного кода и разрабатываемых экранных форм. Совершенно новый подход к организации проекта с применением диспетчера проекта, представляющего весь проект в виде иерархического дерева, позволяет легко переключаться между различными компонентами приложений и средств разработки.
В соответствии с предложенной концепцией Vi - метода выделим спектр подсистем, обеспечивающих реализацию соответствующих функций программного комплекса «КИМСМО»:
Взаимодействие между подсистемами программного комплекса «КИМСМО» и графическим пакетом визуального моделирования осуществляется посредством имитационных моделей. Рассмотрим более подробно структуру имитационной модели.
В соответствии с предложенными концепциями Vi - метода имитационную модель представим в виде ориентированного графа общего вида (G), в котором качестве вершин О выступают объекты модели, а в качестве ребер (дуг) С связи между ними: G = (0,C), (3.1.)
Под объектом, определяемым в данном случае вершиной Ot, будем понимать экземпляр некоторого класса микромодели, в целом описывающий один из элементов проектируемой системы и созданный ранее при помощи библиотеки микромоделей.
Под ребрами Cj этого графа, представляющими собой линии, соединяющие два объекта модели между собой, будем понимать в данном случае только указание маршрутов следования заявок. Подобному описанию имитационной модели соответствует структура, представленная в табл. 3.1. Пример описания атрибутов имитационной модели в терминах реляционных отношений отразим нарис. 3.2.
Имитационная модель «Управление шлюзованием»
Для анализа статистической модели (SM) разработана система обработки статистической информации - многофункциональный инструментарий по обработке и документированию статистической данных (таблиц, диаграмм, графиков и т.д.) моделируемой системы. Описание основных модулей системы обработки и анализа результатов моделирования представлено в п. 3.3. Рассмотрим основные правила работы со статистикой.
Работа со статистикой начинается с представления статистической модели таблицей, столбцами которой являются атрибуты статистической модели, а строками - события моделируемой системы. На рис. 3.14. представим окно результатов моделирования, демонстрирующее табличное представление статистических данных и обеспечивающее доступ к режимам их обработки.
Рассмотрим основные правила работы с таблицей. Все характеристики события расположены в горизонтальном порядке слева направо. Однако, на экране всегда видны только некоторые характеристики. Остальные пункты находятся за левой и (или) правой границей экрана. Доступ к просмотру этих полей можно получить, нажимая на кнопки прокрутки влево и право (метка 1 на рис. 3.14.). Аналогично, на экране по вертикали всегда помещается порядка 10-15 строк. Соответственно, доступ к просмотру документов, находящихся выше или ниже по каталогу, можно получить нажатием на кнопки прокрутки вверх и вниз (метка 2 на рис. 3.14.). Нажатие на кнопку прокрутки приводит к небольшому смещению окна каталога в указанном направлении. Для доступа к последним столбцам или строкам иногда может потребоваться многократное нажатие на кнопки прокрутки, что не всегда удобно. Поэтому предусмотрены две специальные кнопки для быстрой прокрутки окна каталога (метка 6 на рис. 3.14.). Нажав на одну из них и не отпуская эту кнопку, можно быстро смещать окно каталога вправо-влево (вверх-вниз) соответствующими движениями «мыши» на рабочем столе.
Предусмотрена возможность расширения или сжатия столбцов в окне просмотра. Для расширения или сжатия любого столбца необходимо нажать на линию разграничения справа от столбца (метка 3 на рис.3.14.) и движением «мыши» вправо расширить столбец (движением влево - сжать).
Предоставлена возможность изменения порядка следования столбцов в окне каталога. Для этого необходимо нажать на название интересующего столбца (метка 4 на рис. 3.14.) и движением «мыши» вправо сдвинуть этот столбец вправо до нужной позиции (движением влево - влево до нужной позиции).
Предусмотрена возможность пометки отдельных событий. Установка или снятие пометки осуществляется нажатием на поле строки с названием « », подлежащего пометке (метка 5 на рис. 3.14.). Пометка устанавливается или снимается селективно, после чего курсор автоматически смещается вниз на следующий документ, а при невозможности движения вниз - вверх на предыдущую строку. Повторное нажатие на поле, содержащее пометку « », приводит к ее снятию и автоматическому смещению курсора.
Рассмотрим функциональные возможности, связанные с обработкой статистической информации. Доступ к ним осуществляется посредством выбора режима в нижней части экрана рис. 3.14. Всего двенадцать режимов, перечислим их и отметим, что они расположены парами, подразумевающими схожесть осуществляющихся ими действий: Первая запись - переход на первую строку в таблице; Последняя запись - переход на последнюю строку в таблице; Пометить все - пометка всех строк символом « ». Аналогичного эффекта можно достичь, нажатием на столбец, при этом если запись была помечена, то пометка будет снята, если нет - то поставлена. Снять пометки - снятие пометок. Упорядочить - упорядочивание данных по значениям соответствующего столбца (упорядочивание производится по столбцу, на котором находится курсор). Повторное нажатие при нахождении курсора на этом поле снимает упорядочивание.
Уникальность - действия аналогичные режиму «упорядочить» с тем отличием, что не включаются повторяющиеся данные.
Подобная организация схемы обработки и анализа результатов моделирования позволяет провести анализ динамики изменений различных параметров моделируемой системы, подойти к рассмотрению результатов моделирования с различных точек зрения, выделить из всех результатов моделирования определенное подмножество и провести его углубленный анализ, сформировать соответствующие формы отчетных документов и получить графическое представление результатов моделирования.