УДК 004.94
СПЕЦИАЛИЗИРОВАННАЯ СИСТЕМА МОДЕЛИРОВАНИЯ ДЛЯ ИМИТАЦИИ ФУНКЦИОНИРОВАНИЯ МНОГОСТАДИЙНЫХ ОБСЛУЖИВАЮЩИХ КОМПЛЕКСОВ
© 2017 С.А. Олейникова
Одной из ключевых задач при анализе функционирования многостадийных обслуживающих комплексов является оценка времени выполнения заявки. Взаимная зависимость между работами, а также стохастический характер их длительности не позволяет гарантировать необходимую точность при получении соответствующих оценок искомой случайной величины. Имитация процесса обслуживания позволит не только оценить числовые характеристики такой величины, но и собрать подробные сведения о законе ее распределения, рассчитать риски задержки обслуживания и решить целый ряд других необходимых задач. Исследование специфики решаемой задачи позволило выдвинуть ряд требований, предъявляемых к системе, предназначенной для моделирования многостадийного обслуживания. Анализ существующих систем имитационного моделирования, в частности таких, как Anylogic, обусловил необходимость разработки собственной такой системы. С учетом специфики функционирования исследуемых комплексов, а также на основании требований, предъявляемых к системе, была разработана ее структура и определены назначения основных подсистем. Таким образом, разработана система имитационного моделирования, предназначенная для моделирования процесса функционирования многостадийных обслуживающих комплексов и обеспечивающая возможность сбора и анализа статистических данных о случайной величине, описывающей длительность проекта
Ключевые слова: система имитационного моделирования, многостадийный обслуживающий комплекс, закон распределения, числовые характеристики
Введение
Исследование процесса
функционирования многостадийных
обслуживающих стохастических систем сопряжено с целым рядом сложностей. В первую очередь они вызваны случайным характером величины, описывающей длительности выполнения отдельных работ. Эта особенность наряду со сложной зависимостью между работами обусловливает необходимость поиска новых подходов, позволяющих получить полное описание случайной величины, определяющей время обслуживания, с требуемой точностью [1, 2]. В настоящее время наиболее распространенным подходом для решения данной задачи является метод PERT. Однако исследования показывают, что расчетные формулы этого метода не всегда точны [3]. В частности, если отдельные работы необходимо описать асимметричными случайными величинами и случайные величины, описывающие множество работ, лежащих на критическом пути, будут обладать одинаковым знаком асимметрии, то итоговая погрешность может быть недопустимо высокой [3]. В связи с этим возникает необходимость в моделировании процесса обслуживания в таких системах с целью получения выборки, на основании которой можно получить исчерпывающую информацию о времени выполнения заявки.
Олейникова Светлана Александровна - ВГТУ, д-p техн. наук, доцент, e-mail: [email protected]
Анализ специфики исследуемых обслуживающих комплексов, а также существующих готовых сред имитационного моделирования обусловил необходимость в собственной разработке подобной системы.
В работы приведены требования к разрабатываемой системе, определена ее структура, а также приведен пример ее функционирования.
1. Постановка задачи и ее особенности
Рассматривается функционирование многостадийного обслуживающего комплекса, состоящего из нескольких центров обслуживания. На вход поступает поток заявок, требующих для своего обслуживания выполнения множества последовательно-параллельных работ. Каждая работа закреплена за определенным центром. Длительность обслуживания является случайной величиной. Ставится задача разработки приложения, позволяющего моделировать процесс функционирования такого комплекса. На выходе система должна сформировать выборку, каждый элемент которой представляет собой длительность обслуживания заявки. Кроме того, система должна быть снабжена инструментарием, позволяющим автоматически выполнять необходимый статистический анализ выборки. В частности, необходимо знать статистические оценки случайной величины, описывающей длительность обслуживания (математическое ожидание, дисперсия, асимметрия, эксцесс и
т.д.). Система должна обеспечивать возможность автоматического построения гистограммы по выборке, а также проверке гипотез о законе распределения полученной выборки разными критериями. Кроме того, должна быть предусмотрена возможность импорта данных из базы данных и экспорта данных в базу или в Excel.
Таким образом, для имитации моделирования многостадийного
обслуживающего комплекса и анализа полученных результатов необходима система, отвечающая следующим требованиям:
- ориентация системы на моделирование обслуживания взаимно-зависимых работ заявки со случайной длительностью выполнения (при наличии нескольких центров обслуживания, а также возможных ограничений на ресурсы);
- обеспечение достаточного функционала для проведения разнообразных экспериментов, связанных с анализом характеристик заявки, а также исследованием рисков, возникающих из-за возможности его несвоевременного завершения;
- минимизация сложности разработки с точки зрения конечного пользователя.
Перечисленные выше условия требуют обеспечения следующих возможностей:
- задания заявки наиболее простым для пользователя способом (в данном случае это будет графический способ, позволяющий задать заявку в виде связного графа, ребра которого обозначают отдельные работы);
- импорта исходных данных из базы данных и экспорта результатов моделирования в нее;
- экспорта результатов моделирования в Excel.
Проанализируем существующие
системы имитационного моделирования с точки зрения предъявляемых требований [4, 5, 6]. В настоящее время для моделирования систем используются такие программные продукты, как Anylogic, Arena, Simulink, GPSS и ряд других. Система GPSS не имеет встроенного графического редактора, не позволяет осуществлять взаимодействие с внешними файлами (такими, как Excel, база данных и т.д.), следовательно, абсолютно не подходит для решения данной задачи. Программный комплекс Arena предназначен для построения сложных алгоритмов имитации на основании агентного подхода. Анимации процесса моделирования в Arena уделяется большое внимание. Однако данная
система была реализована в первую очередь для исследования бизнес-процессов для различных коммерческих организаций. Еще одним программным средством,
предназначенным для построения
имитационных, а также аналитических моделей для динамических систем, является специализированная система Simulink. Она входит в состав многофункционального математического пакета MatLab. В отличие от Arena, Simulink имеет встроенный объектно-ориентированный язык и обширную библиотеку системных функций. Однако встроенный язык не является в полной мере языком высокого уровня, что создаёт дополнительные трудности при описании алгоритмов различных элементов. Кроме того, изначальная ориентация пакета в первую очередь на аналитический подход не позволяет в достаточной мере использовать все преимущества имитационного исследования. Все эти недостатки устранены в системе Anylogic. Это программное средство, предназначенное для создания имитационных моделей любой сложности. К несомненным достоинствам данного продукта следует отнести удобный графический редактор, позволяющий быстро создавать модели для широкого спектра задач, возможность расширения моделей средствами Java, возможность экспорта и импорта данных из базы данных и ряд других. Тем не менее, в виду отсутствия ориентации системы на исследуемую предметную область,
потребуется надстройка, которая будет создаваться фактически «с нуля». В частности, необходимо полностью реализовывать графическую часть, математическую модель, собирать статистику, реализовывать проверку гипотез и т.д.
Исходя из проведенного анализа, можно сделать вывод о целесообразности разработки собственного программного продукта, специализирующегося в моделировании многостадийных обслуживающих комплексов и отвечающего всем вышеперечисленным требованиям.
2. Структура разрабатываемой системы
Исходя из целей проектирования, а также требований, предъявляемых к системе, были сформулированы принципы, положенные в основу разрабатываемой СИМ. Они заключаются в возможности задания план-графика графическим способом, задания взаимной зависимости работ путем
перемещения их по графическому полю, отсутствии специализированного языка как излишнего средства, возможности импорта и экспорта данных, а также предоставлении пользователю расширенной основы для проведения экспериментов. Исходя из этого, была сформирована структура системы, общий вид которой представлен на рис. 1.
Рассмотрим более подробно
функционирование некоторых подсистем. Одной из главных подпрограмм математической модели является
подпрограмма, позволяющая генерировать случайные числа, распределенные по закону бета. В качестве основы для этого взят метод Йонка, основанный на исключении.
За формирование структуры модели отвечают, в первую очередь, подсистемы взаимодействия с пользователем и работы с графикой. На основании требований к графической части выделены следующие действия пользователя, реакции на которые реализованы в виде подпрограмм системы:
- выделение работы/ события;
- удаление работы/события;
- добавление работы/ события;
- перемещение по холсту работы/ события;
- соединение работ.
Алгоритмы подсистемы подробно описаны в [7]. Одной из важнейших подсистем является подсистема прогона модели. Ее функционирование основано на принципе особых состояний. В [8] выделены все события, приводящие систему в особые состояния, и описана реакция на каждое из этих событий. Остальные системы более подробно рассмотрены в [7].
Таким образом, разработана структура системы моделирования, отвечающая всем вышеперечисленным требованиям и обеспечивающая возможность имитации процесса функционирования исследуемых комплексов со случайной длительностью выполнения работ.
3. Результаты работы системы
Рассмотрим процесс функционирования разработанной системы имитационного моделирования на следующем примере. Без ограничения общности, пусть заявка не требует использования ресурсов. Сама заявка задана следующим сетевым графиком (рис. 2).
Рис. 1. Структура системы имитационного моделирования
Рис. 2. Пример заявки в виде сетевого графика
На данном рисунке веса ребер обозначают идентификаторы работ.
Характеристики длительности работ приведены в табл. 1.
Таблица 1
Характеристики длительности работ проекта
№ min max Мат. ож.
работы
1 5 10 9
2 3 6 4
3 6 8 7
4 4 7 6
5 4 7 5
6 2 5 3
7 4 8 6
8 4 6 5
9 6 8 7
10 2 6 4
11 9 13 12
12 2 6 3
13 5 7 6
Продолжение табл. 2
3 7 0 7 7
4 б 9 9 0
5 5 9 15 6
6 3 4 12 8
7 6 4 18 14
8 5 4 16 12
9 7 7 17 10
10 4 7 17 10
11 12 15 15 0
12 3 14 24 10
13 6 11 20 10
Проанализируем введенные значения, а потом сравним ожидаемые результаты с полученной выборкой. Рассчитаем временные характеристики работ (табл. 2).
Таблица 2 Временные характеристики работ
№ ра- Мат. Тш R
боты ож.
1 9 0 0 0
2 4 0 8 8
Критическое время составляет 27 единиц. Из рассчитанных значений видно, что у проекта один ярко выраженный критический путь.
Зададим в качестве числа прогонов 10000 и запустим модель с помощью подменю «Прогон». После завершения процесса моделирования пользователю открывается форма с результатами.
На первой вкладке приведены выборочные значения случайной величины, описывающей длительность проекта. Как можно видеть из табл. 2, расчетное время ожидаемой длительности проекта совпадает со временем, полученным в результате моделирования (27.0030). Однако асимметрия -0.58 говорит о возможном несоответствии случайной величины, описывающей длительность проекта, нормальному закону распределения. Проанализируем полученную гистограмму этой величины (рис. 3).
Рис. 3. Гистограмма проекта
Как можно видеть из гистограммы, длительность обладает весьма выраженной асимметрией. Все это свидетельствует о целесообразности использования
разработанной системы, поскольку
существующие методы предлагают оценивать исследуемую случайную величину
нормальным (т.е. симметричным)
распределением [2].
Выводы
Целью работы являлась реализация системы, позволяющей осуществлять моделирование процесса функционирования многостадийных обслуживающих комплексов со случайной длительностью выполнения отдельных работ. В результате можно сделать следующие выводы:
1. Анализ специфики функционирования исследуемого комплекса позволил сформулировать требования, предъявляемые к системе имитационного моделирования.
2. Анализ существующих систем имитационного моделирования с точки зрения предъявляемых требований обусловил необходимость собственной разработки программного продукта.
3. На основании предъявляемых требований, а также с учетом специфики исследуемых комплексов была разработана структура системы имитационного моделирования.
4. Представленный пример работы системы, а также другие результаты ее функционирования подтверждают
целесообразность ее разработки.
Литература
1. Бурков В.Н. Теория активных систем: Состояние и перспективы / В.Н. Бурков, Д.А. Новиков. -М.: Синтег, 1999. - 128 с.
2. Голенко-Гинзбург Д.И. Стохастические сетевые модели планирования и управления разработками: монография / Д.И. Голенко-Гинзбург. - Воронеж: «Научная книга», 2010. - 284 с.
3. Олейникова С.А. Критический анализ метода PERT решения задачи управления проектами со случайной длительностью выполнения работ / С.А. Олейникова // Системы управления и информационные технологии. - 2013. - № 1(51). - С. 20-24.
4. Сирота А.А. Компьютерное моделирование сложных систем / А.А. Сирота. - Воронеж: Изд-во ВГУ, 2006. - 248 с.
5. Советов Б.Я. Моделирование систем / Б.Я. Советов, С.А. Яковлев. - М.: Высшая школа, 2001. -275с.
6. Аверилл М.Л. Имитационное моделирование / М.Л. Аверилл, В.Д. Кельтон. - СПб.: Питер, 2004. - 846 с.
7. Олейникова С.А. Математические модели и методы оптимизации функционирования сложных обслуживающих систем со стохастическими параметрами: дис. ... д-р техн. наук. - Воронеж, 2016. -364 с.
8. Олейникова С.А. Реализация процесса имитации выполнения проектов со случайной длительностью отдельных работ / С.А. Олейникова // Вестник Воронежского государственного технического университета. - 2015. - Т. 11. - № 4. - С. 51-55.
Воронежский государственный технический университет
SPECIALIZED SIMULATION SYSTEM FOR IMITATION OF FUNCTIONING OF MULTISTAGE SERVICE COMPLEXES
S.A. Oleynikova
Full Doctor, Associate Professor, Voronezh State Technical University, Voronezh, Russian Federation,
e-mail: [email protected]
One of the key tasks in analyzing the functioning of multi-stage service complexes is evaluation of the execution time of an application. The mutual dependence between operations, as well as the stochastic nature of their duration, does not allow to guarantee the necessary accuracy in obtaining the corresponding estimates of the desired random variable. Simulation of the service process will allow not only to estimate the numerical characteristics of such a value, but also to gather detailed information about its distribution law, to calculate the risks of service delays and to solve a number of other necessary tasks. The study of the specifics of the problem solved made it possible to put forward a number of requirements for a system designed for modeling multi-stage maintenance. Analysis of existing simulation systems, Anylogic in particular, necessitated development of our own such system. Taking into account the specifics of the functioning of the complexes under investigation, and also on the basis of the requirements for the system, the system's structure was developed and the assignments of the main subsystems were determined.
Thus, a simulation system designed to simulate the process of functioning of multi-stage service complexes, providing
the ability to collect and analyze statistical data on a random variable describing the duration of the project
Key words: simulation system, multi-stage service complex, distribution law, numeric characteristics
References
1. Burkov V.N., Novikov D.A. "Theory of active systems: State and prospects" ("Teoriya aktivnykh sistem: Sostoyanie I perspektivy"), Moscow, Sinteg, 1999, 128 p.
2. Golenko-Ginzburg D.I. "Stochastic network models for planning and managing developments. Monography" ("Stohasticheskie setevye modeli planirovaniya I upravleniya razrabotkami. Monografiya"), Voronezh, 2010, 284 p.
3. Oleynikova S.A. "Critical analysis of the PERT method for solving the project management task with a random duration of operation execution", Control Systems and Information Technology, 2013, no. 1(51), pp. 20-24.
4. Sirota A.A. "Computer modeling of complex systems" ("Komp'yuternoe modelirovanie slozhnykh sistem"), Voronezh, 2006, 248 p.
5. Sovetov B.Ya., Yakovlev S.A. "Modeling of systems" ("Modelirovanie system"), Moscow, Vysshaya Shkola, 2001, 275 p.
6. Averill M.L., Kel'ton V.D. "Simulation modeling" ("Imitatsionnoe modelirovanie"), Saint-Petersburg, Piter, 2004, 846 p.
7. Oleynikova S.A. "Mathematical models and methods for optimizing the functioning of complex service systems with stochastic parameters. Dr. tech. sci. diss." ("Matematicheskie modeli I metody optimizatsii funktsionirovaniya slozhnykh obsluzhivaushchikh sistem so stokhasticheskimi parametrami. Diss. dokt. tekhn. nauk"), Voronezh State Technical University, Voronezh, 2016, 364 p.
8. Oleynikova S.A. "Implementation of imitation projects execution with a random duration of separate operations", The Bulletin of Voronezh State Technical University, 2015, vol.11, no 4, pp. 51-55.