Содержание к диссертации
Введение
1. Последовательное и распределенное имитационное моделирование 26
1.1. Понятие модельного времени 26
1.2. Последовательное имитационное моделирование 28
1.3. Распределенное имитационное моделирование 31
1.3.1. Понятие распределенного имитационного моделирования 31
1.3.2. Выполнение модели при распределенном моделировании 33
1.3.3. Алгоритмы синхронизации модельного времени 41
1.4. Имитационное моделирование высокого уровня 57
1.4.1. Введение в HLA 58
1.4.2. Правила HLA 60
1.4.3. Управление временем в HLA 61
1.5. Направления развития 73
2. Система распределенного имитационного моделирования мера 74
2.1. Цели разработки системы распределенного имитационного моделирования Мера 74
2.2. Архитектура системы распределенного имитационного моделирования Мера 79
2.2.1. Ядро 81
2.2.2. Последовательная имитационная машина 83
2.2.3. Распределенная имитационная машина 84
2.2.4. Коммуникационная машина 87
2.2.5. Однопроцессорная реализация 88
2.2.6. Многопроцессорная реализация 89
2.3. Язык описания моделей 91
2.3.1. Описание структуры модели 93
2.3.2. Передача сообщений 101
2.3.3. Задержка субъектов 102
2.3.4. Исполнение модели 105
2.4. Алгоритмы последовательной имитационной машины 107
2.5. Алгоритмы распределенной имитационной машины ПО
2.5.1. Запуск распределенной имитационной модели ПО
2.5.2. Передача сообщений между системами 111
2.5.3. Алгоритмы синхронизации модельного времени 113
2.5.4. Останов распределенной имитационной модели 119
2.6. Алгоритмы коммуникационной машины 120
2.7. Семейство реализаций системы распределенного имитационного моделирования Мера 123
2.7.1. Пакет имитационного моделирования 123
2.7.2. Специализированный пакет имитационного моделирования 131
2.7.3. Визуально-интерактивная система 136
2.7.4. Реализация для МВС-1000/М 140
2.7.5. Реализация для локальной сети рабочих станций 149
3. Использование имитационного моделирования при разработке АСУ ТП 154
3.1. Типовая структура АСУ ТП 154
3.2. Задачи моделирования 155
3.3. Имитационный стенд 156
3.3.1. Инструментальная среда разработки, отладки и тестирования 157
3.3.2. Тренажер 158
3.3.3. Подсистема АСУ ТП на этапах пусконаладки и опытной эксплуатации 160
3.3.4. Подсистема АСУ ТП на этапе эксплуатации 161
3.3.5. Интеллектуальный эксперт 164
3.4. Краткое описание Северомуйского тоннеля 165
3.5. Краткое описание АСУ ТП Северомуйского тоннеля 167
3.6. Подсистема управления АСУ ТП Северомуйского тоннеля 169
3.7. Имитационный стенд АСУ ТП СМТ 176
3.7.1. Модель технологического объекта управления 178
3.7.2. Модель для имитации внешних сигналов 179
3.7.3. Модель микроклимата тоннеля 181
3.7.4. Схема взаимодействия компонентов имитационного стенда АСУ ТП СМТ 189
3.8. Реализация имитационного стенда АСУ ТП СМТ 199
Заключение 201
Литература
- Распределенное имитационное моделирование
- Имитационное моделирование высокого уровня
- Архитектура системы распределенного имитационного моделирования Мера
- Инструментальная среда разработки, отладки и тестирования
Введение к работе
Имитационное моделирование — один из наиболее распространенных и мощных методов исследования сложных систем.
Имитационное моделирование [129] является экспериментальной и прикладной методологией, имеющей целью:
описать поведение системы;
построить теории и гипотезы, которые могут объяснить наблюдаемое поведение;
использовать эти теории для предсказания будущего поведения и оценки (в рамках ограничений, накладываемых некоторым критерием или совокупностью критериев) различных стратегий, обеспечивающих функционирование данной системы.
Основными понятиями имитационного моделирования являются понятия реальной системы и модели. Реальная система (или просто система) — это совокупность элементов, которая принадлежит ограниченной части реального мира, являющейся объектом исследования. Поэтому система — понятие относительное. В одном случае некоторая совокупность элементов может рассматриваться как система, а в другом случае — как подсистема, то есть часть объемлющей системы.
Модель представляет собой абстрактное описание системы, уровень детализации которого определяет сам исследователь, он принимает решение
о том, является ли данный элемент системы существенным, то есть, будет ли он включен в описание системы. Это решение принимается с учетом цели, лежащей в основе разработки модели.
Далее под имитационной моделью понимается логико-математическое описание системы, которое можно перевести в описание, исполняемое на вычислительной машине — программу. С такой программой проводятся машинные эксперименты, которые позволяют сделать выводы о поведении моделируемой системы:
без ее построения, если эта проектируемая система;
без вмешательства в ее функционирование, если эта действующая система, экспериментирование с которой либо слишком дорого, либо небезопасно;
без ее разрушения, если цель эксперимента состоит в определении пределов воздействия на систему.
В [48] приводится более детальный перечень ситуаций, когда при исследовании реальной системы целесообразно использование имитационного моделирования:
проведение экспериментов с реальной системой невозможно или дорого;
требуется изучить поведение системы при ускоренном или замедленном времени;
аналитическое описание поведения сложной системы невозможно;
поведение системы зависит от случайных воздействий внешней среды;
требуется выявить реакцию системы на непредвиденные ситуации;
должны быть проверены идеи по созданию или модернизации системы;
- требуется подготовить специалистов по управлению реальной системой.
Система характеризуется набором величин, каждая комбинация значений которых описывает ее конкретное состояние. Следовательно, путем изменения этих величин в модели (переменных, структур данных) можно имитировать переход системы из одного состояния в другое. Таким образом, имитационное моделирование — это представление динамического поведения системы посредством продвижения ее от одного состояния к другому во времени. Более кратко — имитационная модель воспроизводит поведение моделируемой системы во времени [94].
Модели систем разделяются на дискретно и непрерывно изменяющиеся модели. Следует отметить, что эти термины относятся к модели, а не к реальной системе.
При дискретном имитационном моделировании зависимые от времени переменные изменяются в определенные моменты модельного времени, называемые моментами наступления событий. В дискретных моделях состояния моделей не изменяются в промежутках между моментами наступления событий.
При непрерывном имитационном моделировании переменные модели изменяются непрерывно, то есть являются непрерывными функциями модельного времени.
Существуют комбинированные имитационные модели, сочетающие элементы как дискретного, так и непрерывного имитационного моделирования. Поскольку дискретное имитационное моделирование более распространено, то дальнейшее изложение будет относиться только к дискретному имитационному моделированию.
В дискретном имитационном моделировании сформировалось несколько основных методологических подходов, в рамках которых описывается структура и поведение реальной системы.
Событийно-ориентированный подход
Суть событийно-ориентированного подхода — моделирование системы с помощью описания изменений состояния системы, происходящих в дискретные моменты времени.
Момент времени, в который может измениться состояние системы, называют моментом наступления события, а соответствующая функция обработки изменений состояния системы называется событием. Имитация функционирования системы осуществляется путем выполнения упорядоченной во времени одной последовательности логически-взаимосвязанных событий.
Процессно-ориентированный подход
Процессно-ориентированный подход заключается в выделении в системе нескольких компонентов и описании функционирования системы с помощью нескольких последовательностей событий.
Каждая последовательность событий (процесс) представляет изменения состояния системы с точки зрения одного компонента (изменения, в которых этот компонент принимает участие). Общая последовательность событий, соответствующих событийному подходу, получается путем комбинации последовательностей событий, соответствующих отдельным процессам.
В результате модель представляется как совокупность взаимодействующих квазипараллельных процессов, что более адекватным образом (чем совокупность событий) отражает структуру и поведение реальной системы. Квазипараллельность заключается в том, что программа, соответствующая процессу, составляется из последовательности программ событий независимо от других процессов (если отсутствуют явные указания взаимодействия), а исполняется с прерываниями, во время которых исполняются другие процессы. Это вызвано тем, что события в модельном
времени происходят "мгновенно", и могут выполняться при событийно-ориентированном подходе последовательно в соответствии с упорядоченностью моментов времени наступления события, а процессы обладают "протяженностью" в модельном времени и не могут исполняться последовательно, так как момент времени наступления события одного процесса может оказаться между моментами времени последовательных событий другого процесса. Таким образом, в каждый момент исполнения модели выполняется только один процесс, называемый активным, остальные процессы находятся в приостановленном состоянии.
Структура программы, соответствующая событию, проста — это подпрограмма, к которой обращается управляющая программа модели в момент модельного времени, на который запланировано событие. По окончанию исполнения подпрограммы, соответствующей событию, управление возвращается управляющей программе модели.
Программа, соответствующая процессу, имеет более сложную структуру. С каждым приостановленным процессом связывается точка реактивации — место в программе процесса, с которого возобновится выполнение процесса, когда процесс снова станет активным.
Одно из неудобств событийно-ориентированного подхода заключается в "дроблении" логики модели на отдельные события. При процессно-ориентированном подходе, наоборот, логика каждого процесса сосредотачивается в одной программе, что облегчает описание динамики системы.
Объектно-ориентированный подход
При объектно-ориентированном подходе объект определяется как некоторая сущность, имеющая атрибуты и методы, определяющие этот объект. Объекты взаимодействуют друг с другом с помощью передачи
сообщений. Сообщение представляет собой требование к объекту выполнить один из своих методов.
Одной из ключевых особенностей объектно-ориентированных систем является организация объектов в иерархические классы. Другая ключевая особенность объектно-ориентированных систем состоит в том, что сообщения специфицируют только метод, который должен быть выполнен, но не то, как этот метод должен быть выполнен.
Разработка моделей при объектно-ориентированном подходе обеспечивает модульность программы и дает разработчику естественную парадигму представления передачи информации, присущую в реальном мире иерархиям принятия решений.
Логический подход
Логический подход — это использование в имитационном моделировании концепций из области искусственного интеллекта — концепций неалгоритмического программирования, поиска по образцу и бэктрекинга. Такой подход дает возможность строить ориентированные на поиск цели или генерирующие цель самоорганизующиеся модели с переменной структурой.
Использование логического подхода в имитационном моделировании привело к развитию мощной ветви базирующихся на знании средств имитационного моделирования [191].
Существуют и другие методологические подходы в имитационном моделировании, например, акторский подход. Наиболее интересными и продуктивными оказались гибридные средства имитационного моделирования, сочетающие в различных комбинациях элементы различных методологических подходов.
Далее будет рассматриваться ветвь имитационного моделирования, сочетающая процессно-ориентированный и объектно-ориентированный подходы.
Имитационное моделирование, как составная часть информатики, прошло более чем 40-летний путь развития. Парадигмы имитационного моделирования, основные подходы, терминология, наиболее известные языки моделирования сложились в первые 20 лет. Со всем разнообразием имитационного моделирования можно познакомиться в классических трудах по имитационному моделированию, переведенных на русский язык [32, 64, 129,131,47,100].
За последние 30 лет по имитационному моделированию было издано множество книг Советских и Российских авторов [28, 132, 16, 17, 29, 11, 58, 18, 111, 4, 56, 54, 43, 113, 2, 115, ПО, 97, 51, 116, 112] и опубликовано множество работ. Одними из последних изданных книг являются [130, 123, 124,55,109,20,35,122,117].
История становления и развития имитационного моделирования в СССР, России и странах СНГ связана с соответствующими этапами в мировой практике в данной области. Признанная хронология развития имитационного моделирования включает следующие этапы [13, 34,49].
Этап 1 (1955 - 1960). Программы для задач моделирования разрабатывались на основе таких общеизвестных универсальных языков как FORTRAN и ALGOL.
Этап 2 (1961 - 1970). Появились языки моделирования: GPSS, SIMSCRIPT, SIMULA, CSL, SOL, SIMULA 67. Была разработана так называемая концепция взгляда на мир (world view).
Наиболее интересна судьба языка GPSS. Специализированный язык имитационного моделирования GPSS (General Purpose Simulation System) был разработан Д. Гордоном из корпорации IBM (США) в 1961г. До сих пор он остается самым распространенным языком имитационного
моделирования дискретных систем, последовательно развиваясь в версиях GPSS II, GPSS/360, GPSS IV, GPSS V, GPSS PC, GPSS/H, GPSS World [34].
Этап 3 (1971 - 1979). Появились языки SIMAN, GASP, SLAM. Осуществлялось развитие уже разработанных языков и средств моделирования, ориентированных на повышение эффективности процессов моделирования и превращение моделирования в более простой и быстрый метод исследования сложных систем.
В это время на развитие имитационного моделирования за рубежом и в СССР оказали большое влияние работы Зиглера (Zeigler) и Ёрена (Огеп).
Этап 4 (1980 - 1984). Годы перехода от программирования к развитию моделей. Основной акцент был перенесен на разработку интегрированных средств имитационного моделирования.
В СССР в 70 - 80 годы имитационное моделирование было одним из наиболее развитых направлений в информатике. Был достигнут своеобразный "паритет" с Западом. Это выражалось в:
наличии собственных разработок средств имитационного моделирования для всех отечественных ЭВМ: М-220, БЭСМ-6, ЕС ЭВМ, МВК "Эльбрус";
широком применении имитационного моделирования для нужд народного хозяйства;
преподавании имитационного моделирования почти во всех вузах страны;
мировом признание передовых отечественных разработок.
Были разработаны следующие отечественные системы имитационного моделирования: АЛСИМ БЭСМ, АЛСИМ 2, ДАСИМ, ДИСМА, Модель 6, НЕДИС, ПМДС, ПМДС 2, СИДМ 2, Симула 67 БЭСМ 6, Симула 67 МВК "Эльбрус", СЛЭНГ, СТАМ-КЛАСС, ТАИС, ФОРОС и др.
В эти годы в СССР сформировались четыре ведущих школы имитационного моделирования: Московская, Киевская, Новосибирская и Ленинградская.
Методологической основой для развития имитационного моделирования явились работы Н.П. Бусленко, В.М. Глушкова, Г.И. Марчука, Н.Н. Моисеева.
К числу наиболее известных специалистов по имитационному моделированию в СССР, России, странах СНГ относятся: Е.Ф. Аврамчук, А.Н. Андрианов, А.А. Бакаев, В.В. Баранюк, В.Б. Бигдан, А.В. Борщев, Н.П. Бусленко, В.Н. Бусленко, СП. Бычков, А.Г. Варжапетян, С.А. Власов, Т.В. Вознесенская, Т.Н. Воскресенская, В.В. Гусев, А.Ф. Дедков, В.В. Девятков, Б.К. Елтышев, СВ. Емельянов, К.Д. Жук, Е.Б. Замятина, В.В. Калашников, Л.А. Калиниченко, Ю.Г. Карпов, И.Н. Коваленко, В.Л. Конюх, Е.М. Кудрявцев, А.А. Летичевский, В.В. Литвинов, В.И. Лутков, Н.Н. Лычкина, Л.Н. Лядова, И.В. Максимей, В.И. Мановицкий, Т.П. Марьянович, Ю.А. Меркурьев, А.И. Миков, Б.В. Немчинов, М.И. Нечепуренко, А.И. Никитин, В.В. Окольнишников, Ю.Н. Павловский, Ю.Г. Полляк, Ю.Б. Пигарев, Н.Я. Ривес, А.С Родионов, Ю.И. Рыжиков, М.А. Сахнюк, Ю.А. Семишин, Б.Я. Советов, Р.Л. Смелянский, Е.М. Сурков, В.А. Сухомлин, Ю.И. Толуев, В.Н. Томашевсий, Б.Ф. Фомин, А.И. Хорошилов, В.Г. Хорошевский, В.М. Черненький, Г.Д. Чинин, В.А. Шапцев, И.М. Якимов, СЯ. Яковлев, Н.В. Яровицкий, А.Ф. Ярославцев и др.
Успехи в области имитационного моделирования были отмечены присуждением в 1986 г. Государственной премии СССР в области науки и техники: "Разработка теории, методов, технологий и универсальных программных средств имитационного моделирования сложных технических систем для отечественных ЭВМ". Государственной премией была награждена группа ученых: В.В. Баранюк, Т.Н. Воскресенская, В.В. Гусев,
В.В. Калашников, Л.А. Калиниченко, В.В. Литвинов, Т.П. Марьянович, М.И. Нечепуренко, М.А. Сахнюк, Г.Д. Чинин, Н.В. Яровицкий, Н.П. Бусленко (посмертно).
Этап 5 (1985 - 1994). Перенос программного обеспечения для имитационного моделирования на персональные ЭВМ с использованием средств графического интерфейса (для визуализации и анимации процессов моделирования).
В этот период произошла смена поколений вычислительных машин, появились и стали широко внедряться персональные компьютеры. Вместо систем моделирования с входным языком имитационного моделирования стали развиваться пакеты имитационного моделирования как универсальные, так и специализированные.
Особенностью таких пакетов является возможность построения имитационной модели с помощью графического интерфейса. Такие пакеты позволяют автоматизировать все этапы разработки и исследования имитационной модели: создание модели, проведение имитационных экспериментов, обработку и интерпретацию результатов моделирования. Причем основное внимание уделяется визуализации процесса построения модели, процесса моделирования и результатов моделирования с помощью средств машинной графики.
Самая распространенная область применения таких пакетов является разработка и оптимизация производственных систем. Список наиболее часто применяемых пакетов (симуляторов), специализированных на моделирование производственных систем, включает в себя следующие пакеты и системы: Arena, AutoMod, eM-Plant, Extend, ProModel, QUEST, SIMFACTORY, Taylor ED, WITNESS и др. [120].
В СССР, России перенос программного обеспечения для имитационного моделирования на персональные ЭВМ с использованием средств графического интерфейса начался на 5 - 10 лет позже Запада, чем
объясняется сегодняшнее отставание России в области имитационного моделирования.
В настоящее время для моделирования производственных систем в России используются преимущественно импортные системы и пакеты. Из отечественных следует упомянуть AnyLogic — разработку ООО "Экс Джей Технолоджис" (Санкт-Петербург) [167, 45].
Этап 6 (1995 - настоящее время). Разработка средств распределенного имитационного моделирования на мультипроцессорных ЭВМ и сетях.
Поскольку основным содержанием диссертационной работы является разработка системы распределенного имитационного моделирования, то описание основных понятий распределенного имитационного моделирования, обзор методов синхронизации модельного времени в распределенном имитационном моделировании, стандарт HLA (High Level Architecture) подробно рассматриваются в отдельной главе.
Наиболее известными специалистами в области распределенного имитационного моделирования являются: R. Ayani, R. Bagrodia, К.М. Chandy, A. Ferscha, Р.А. Fishwick, R.M. Fujimoto, D. Jefferson, D. Nicol, J. Misra, B.R. Preiss и др. Наибольший вклад в развитие и популяризацию распределенного имитационного моделирования внес R.M. Fujimoto [157,160,161].
Доклады по тематике распределенного имитационного моделирования присутствуют в программах практически всех зарубежных конференций по имитационному моделированию. Наиболее известными и престижными по тематике распределенного имитационного моделирования являются журнал "Simulation" и конференция Winter Simulation Conference, проводимая ежегодно в США.
Наиболее известными специалистами в области распределенного имитационного моделирования в России являются: Т.В. Вознесенская, Е.Б.
Замятина, А.И. Миков, Ю.Н. Павловский, А.С. Родионов, Р.Л. Смелянский и
др.
В России с работами по имитационному моделированию кроме книг и трудов конференций можно познакомиться на Internet порталах по имитационному моделированию: и .
На портале . организованным главой ООО "Элина-Компьютер" (Казань) В.В. Девятковым, можно познакомиться с Proceedengs of the Winter Simulation Conference, начиная с 1997 г., и с докладами, сделанными на Первой и Второй Всероссийских научно-практических конференциях по имитационному моделированию и его применению в науке и промышленности "Имитационное моделирование. Теория и практика" (ИММОД 2003 и ИММОД 2005), проходивших в Санкт-Петербурге, соответственно, в 2003 и 2005 гг.
Насколько важно для России развитие мультипроцессорной
вычислительной техники можно судить по докладу комиссии PITAC
президенту США "Вычислительная наука: обеспечение
конкурентоспособности Америки" [168], в котором говорится, что "высокопроизводительные вычисления являются стратегическим направлением развития государства".
Для сравнения состояния дел в этой области на Западе и в России можно привести несколько фактов.
Регулярно публикуются список пятисот самых мощных компьютеров
мира (Список Тор500) и список пятидесяти самых мощных
суперкомпьютеров СНГ (Список Тор50). Соотношение — 500 к 50.
Самый высокопроизводительный суперкомпьютер МВС-15000ВМ, установленный в Межведомственном суперкомпьютерном центре РАН, занимающий первое место в списке Тор50 на сентябрь 2005 г. [170], занимает в списке Тор500 на ноябрь 2005 г. [169] 69-ое место.
Белорусский суперкомпьютер СКИФ К—1000, занимающий второе место в списке Тор50, занимает в списке Тор500 330-ое место. Суперкомпьютер Межведомственного Суперкомпьютерного центра (МСЦ РАН, Москва), занимающий третье место в списке Тор50, в список Тор500 не попал. В то же время самые мощные китайские суперкомпьютеры занимают 25,41, и 93 места в списке Тор500.
Соотношение программного обеспечения для имитационного моделирования является еще более критичным. Число систем распределенного имитационного моделирования за рубежом исчисляется десятками, а в России - единицами. Такими системами распределенного имитационного моделирования являются:
система комплексного моделирования и разработки встроенных систем реального времени Диана [42, 138, 114, 24, 12], разработанная в Лаборатории вычислительных комплексов факультета ВМиК МГУ [171];
система автоматизированного проектирования и имитационного моделирования вычислительных систем и телекоммуникационных сетей [194, 61, 62, 63], разработанная в Пермском Государственном университете.
распределенная среда моделирования систем с дискретными событиями DEJaViev [5], разработанная в ИВМиМГ СО РАН и др.
Вместе с тем, наблюдается стремительный рост суммарной производительности мультипроцессорных систем в России. Например, суммарная производительность первых пяти систем, находящихся в списке Тор50 за 20 сентября 2005г., превышает суммарную производительность всех 50 систем, находящихся в первой редакции списка Тор50 за декабрь 2004 г.
Мультипроцессорные вычислительные системы используются в России для многих приложений, в том числе, и для моделирования. Но, в основном, это математическое [23], а не имитационное моделирование.
Таким образом, с одной стороны, имеется спрос на мультипроцессорные вычислительные ресурсы, а, с другой стороны, имеется предложение таких ресурсов. Однако существующие решения в области имитационного моделирования не позволяют в полной мере использовать преимущества мультипроцессорной архитектуры. Использование имитационного моделирования тормозится из-за отсутствия методов и программной поддержки параллельного исполнения имитационных моделей. В связи с этим задача разработки системы распределенного имитационного моделирования является актуальной.
В 2000 г. был принят стандарт ШЕЕ 1516, более известный как HLA (High Level Architecture). Целью стандарта HLA является обеспечение переносимости (переиспользования) моделей, разработанных в рамках различных систем моделирования, для уменьшения времени и стоимости разработок новых моделей.
Для России более актуальной задачей является переносимость систем моделирования на новые мультипроцессорные и распределенные вычислительные архитектуры для уменьшения времени и стоимости разработок систем моделирования для новых вычислительных архитектур. В связи с этим задача разработки переносимой распределенной системы имитационного моделирования, какой является система Мера, также является актуальной.
Значимость результатов представленной работы заключается в том, что система Мера является первой реализацией системы распределенного имитационного моделирования для МВС-1000/М и третьей в России после Московского и Пермского государственных университетов реализацией систем такого класса.
Новым результатом, полученным в процессе выполнения диссертационной работы, является разработка архитектуры переносимой системы распределенного имитационного моделирования и реализация этой архитектуры.
Архитектура программного обеспечения системы распределенного имитационного моделирования Мера позволяет переносить систему Мера, разработанную для Суперкомпьютера МВС-1000/М, как на однопроцессорные компьютеры, так и на мультипроцессорные и распределенные вычислительные системы. С использованием этой возможности было реализовано совместимое по входному языку семейство реализаций системы Мера для различных операционных сред.
Система Мера была использована в нескольких приложениях, основным из которых является разработка Имитационного стенда Автоматизированной системы управления технологическими процессами Северомуйского тоннеля (АСУ ТП СМТ).
Новым в реализации Имитационного стенда АСУ ТП СМТ является одновременная с разработкой АСУ ТП разработка комплекса имитационных моделей и использование Имитационного стенда на всех фазах жизненного цикла разработки и эксплуатации АСУ ТП СМТ.
Результаты диссертационной работы могут иметь следующее практическое применение:
Система распределенного имитационного моделирования Мера на МВС-1000/М может быть использована для моделирования систем, требующих для своего выполнения большого количества вычислительных ресурсов, систем, моделирование которых на традиционных вычислительных средствах, невозможно или нецелесообразно;
Имитационный стенд АСУ ТП СМТ используется для разработки алгоритмов оптимального управления оборудованием СМТ и может быть
использован в управляющем контуре АСУ ТП СМТ для прогнозирования состояния СМТ в зависимости от внешних событий и действий (или бездействия) диспетчера. Методология использования имитационного моделирования на всех фазах жизненного цикла разработки и эксплуатации АСУ ТП СМТ может быть использована при разработке других АСУ ТП.
3. Визуально-интерактивная система моделирования транспортных потоков, входящая в семейство реализаций системы Мера, может быть использована для моделирования движения автомобильного или железнодорожного транспорта, а также для моделирования систем логистики.
Автор представленной работы более 30-ти лет занимается разработкой систем имитационного моделирования. В 1975 г. им была реализована система имитационного моделирования Модель-6 [69] для БЭСМ-6, являющаяся первой в СССР реализацией языка GPSS.
С помощью системы Модель-6 было осуществлено моделирование ряда систем [70, 46]. В 1979 г. автор защитил кандидатскую диссертацию по теме "Система моделирования Модель-6 и ее приложения" [71].
Автор занимался "реальным временем" и моделированием для МВК "Эльбрус" [72, 73] и разработкой интеллектуальной системы моделирования для ПЭВМ [10, 76, 77].
С 1995 г. автор занимается распределенным имитационным моделированием. Для компьютера с параллельной архитектурой Siemens ЕС RM-600 была сделана прототипная реализация системы распределенного моделирования.
Автором были разработаны входной язык и архитектура программного обеспечения системы распределенного имитационного моделирования Мера. Реализация системы Мера для МВС-1000/М осуществлялась в период с 1997г. по 2005 г. группой студентов и аспирантов под руководством
автора. Наибольший вклад в реализацию внесли: А.И. Винюков, И.В. Пчела, СВ. Рудометов, Д.А. Якимович.
Разработка АСУ ТП СМТ осуществлялась в период с 2001 г. по 2005 г. группой разработчиков в составе: М.В. Богданов, Л.А. Воронцова, В.А. Гурьев, А.Л. Дедух, П.В. Иосифов, В.П. Казаков, А.В. Комаров, Л.В. Лебедева, В.Д. Нескородев, В.В. Новак, В.В. Окольнишников, Т.М. Осокина, Б.Н. Пищик, А.И. Федоров, А.А. Хундоев, Д.В. Чернаков, Д.О. Шевченко. Руководитель работ — заведующий лабораторией КТИ ВТ СО РАН, к.т.н. Б.Н. Пищик.
При разработке АСУ ТП СМТ автором была реализована подсистема управления. Конструктор программ управления разработан аспирантом Д.В. Чернаковым под руководством автора.
Автором была разработана и экспериментально проверена методология использования имитационного моделирования на всех фазах жизненного цикла разработки и эксплуатации АСУ ТП. Экспериментальная проверка этой методологии была осуществлена с помощью Имитационного стенда АСУ ТП СМТ, интегрированного с АСУ ТП СМТ.
В составе Имитационного стенда АСУ ТП СМТ автором разработан комплекс имитационных моделей с помощью системы Мера. Математическая модель микроклимата СМТ разработана автором совместно с к.ф.-м.н. В.В. Тарасевичем и к.т.н. А.А. Морозом.
По тематике диссертации автор участвовал в выполнении следующих грантов РФФИ:
93-01-00461-а "Развитие теории интеллектуального имитационного моделирования" (1993 - 1994 гг.);
95-01-00900-а "Развитие теории, методов и моделей анализа и синтеза надежных программно - аппаратных систем управления" (1995-1996 гг.);
98-01-00720-а "Исследование и разработка систем имитационного моделирования в операционных средах параллельных вычислительных систем" (1998 - 2000 гг.);
02-01-00688-а "Исследование различных форм представления модельного времени в имитационных моделях для вычислительных средств параллельной архитектуры" (2002 - 2004 гг.).
Результаты диссертационной работы докладывались на следующих Российских и международных конференциях:
Пятый международный семинар "Распределенная обработка информации" (РОИ-95), Новосибирск, 1995 [67];
15-th MACS World Congress on Scientific Computation Modelling and Applied mathematics, Berlin, 1997 [80];
Ill Международная конференция "Проблемы управления и моделирования в сложных системах", Самара, 2001 [85];
IASTED International Conference "Automation, Control, and Information Technology", Novosibirsk, 2002 [86];
VIII International Workshop on Advanced Computing and Analysis Techniques in Physics Research, Moscow, 2002 [87];
Пятая международная конференция памяти академика А.П. Ершова "Перспективы систем информатики (PSI 03)". Рабочий семинар "Наукоемкое программное обеспечение", Новосибирск, 2003 [89];
Международная научно-техническая конференция "Новые информационные технологии в нефтегазовой промышленности и энергетике", Тюмень, 2003 [91];
The Second IASTED International Multi-Conference "Automation, Control, and Applications" Novosibirsk, 2005 [95,149];
Вторая Всероссийская научно-практическая конференция по имитационному моделированию и его применению в науке и
промышленности "Имитационное моделирование. Теория и практика" (ИММОД 2005), Санкт-Петербург, 2005 [96].
По теме диссертации опубликовано 39 работ, в том числе 3 статьи в рецензируемых журналах [92, 93, 94], 18 докладов на международных конгрессах, симпозиумах, конференциях, 6 докладов — на Всероссийских конференциях. Остальные публикации — статьи в сборниках научных трудов.
Диссертация состоит из введения, трех глав, заключения и списка литературы.
Распределенное имитационное моделирование
Распределенное имитационное моделирование (Distributed simulation) имеет три источника своего развития: моделирование, требующее для своего выполнения большого количества вычислительных ресурсов, военные приложения и компьютерные игры с использованием Internet. Под распределенным имитационным моделированием, которое в дальнейшем будет называться просто распределенным моделированием, понимается распределенное выполнение единой программы имитационной модели на мультипроцессорной или мультикомпьютерной системе.
Вычисления, требующие для своего выполнения большого количества вычислительных ресурсов
Если критическим ресурсом является процессорное время, то при использовании мультипроцессорной системы или суперкомпьютера с N процессорами можно теоретически ожидать убыстрение выполнения модели в N раз по сравнению с выполнением модели на одном процессоре.
При увеличении суммарной мощности таких систем становятся доступными решения новых задач, которые, в свою очередь, порождают новые потребности в вычислительных ресурсах. Примером масштабов таких задач является заявленная США потребность в машинном времени в количестве 2,7 млн. часов для моделирования взрыва сверхновой звезды [163].
Другим примером использования распределенного моделирования являются имитационные модели большого масштаба (Large-Scale). Такие модели не могут быть исполнены на автономном компьютере из-за ограничений памяти, но могут быть исполнены на вычислительной системе с кластерной архитектурой.
Военные приложения
Целью использования распределенного моделирования для военных приложений является интеграция отдельно разработанных моделей в единое модельное окружение. Примером таких окружений могут быть тренажеры для обучения и имитации гипотетических сценариев военных действий.
Другим примером являются модели инфраструктур, объединяющие экономические, экологические, транспортные и другие подмодели. Такие подмодели могут исполняться на географически распределенных гетерогенных мультикомпьютерных системах. Централизация этих подмоделей может привести к недопустимо большому объему передачи данных из географически распределенных баз данных.
Компьютерные игры с использованием Internet
Методология распределенного моделирования широко используется при реализации распределенных многопользовательских компьютерных игр. Эти работы берут начало в использовании имитационного моделирования для создания анимационных фильмов. Успехи в машинной графике и создании реалистических виртуальных окружений в таких играх сделали более значимым и распределенное моделирование.
Исторически понятие распределенного моделирования относилось к моделированию на компьютерах с MIMD (Multiple Instruction Stream /Multiple Data Stream) архитектурой. Для моделирования на компьютерах с SIMD (Single Instruction Stream I Multiple Data Stream) архитектурой использовался термин "параллельное моделирование".
Поскольку при параллельном и распределенном моделировании используется одна и та же техника, с появлением кластерных вычислительных систем и Grid-вычислений грань между этими двумя видами имитационного моделирования начала стираться. В настоящее время многие авторы [161] используют термин "распределенное моделирование" для обозначения как параллельного, так и собственно распределенного моделирования.
Имитационное моделирование высокого уровня
Следующим этапом развития имитационного моделирования является имитационное моделирование высокого уровня. "Высокий уровень" означает, что компонентами такого моделирования являются не объекты, как в последовательном имитационном моделировании, и не логические процессы, как в распределенном имитационном моделировании, а сами имитационные модели. Целью создания таких проектов является разработка интегрированных окружений, включающих в себя ранее реализованные имитационные модели.
Министерство Обороны США выступило с инициативой создания инструмента, поддерживающего переиспользование и взаимодействие разнородных имитационных моделей для уменьшения времени и стоимости разработок [157]. Эта работа, которая получила название "Архитектура высокого уровня" (HLA — High Level Architecture), началась в 1995 году и привела к принятию серии стандартов IEEE (Institute of Electrical and Electronics Engineers) в 2000 году.
Стандарт HLA имеет два источника своего развития. Первым источником является проект SIMNET (SIMulator NETworking). Целью проекта являлась разработка с помощью распределенного моделирования тренажеров для обучения и тренировки персонала при имитации военных действий [193]. Эти работы привели к созданию стандарта DIS (Distributed Interactive Simulation) [172] для взаимосвязи (interconnection) распределенных тренажеров. Вторым источником является протокол ALSP (Aggregate Level Simulation Protocol) для взаимодействия (interoperability) и переиспользования тренажеров в военных играх [209].
С 1996 года было разработано несколько версий HLA. Развитию HLA способствовали как практические реализации, так и работы по формальному моделированию и анализу описаний интерфейсов, предлагаемых HLA. Примером такого исследования является модель HLA [134], разработанная на языке описания структуры программного обеспечения (Architectural Description Language) Wright [133]. С помощью этой модели были проверены и улучшены семантика и описание HLA.
Ключевыми понятиями HLA являются Federation и Runtime Infrastructure (RTI) [14]. Federation — это объединение (федерация) компонентов имитационного моделирования, называемых "федератами" (Federates).
В отличие от объектов в последовательном имитационном моделировании и логических процессов в распределенном имитационном моделировании федераты в одной федерации могут быть разнородными. Федерат может быть имитационной моделью, управляемым человеком тренажером, программой, осуществляющей сбор данных, интерфейсом с реальным объектом, например, летательным аппаратом.
Взаимодействие федератов осуществляется посредством обмена данными. Обмен данными и исполнение федератов в едином модельном времени осуществляется с помощью программной оболочки (инфраструктуры) RTI. Инфраструктура RTI является, в сущности, распределенной операционной системой для федерации. Взаимодействие федератов с RTI происходит посредством вызова федератами сервисов (servises) RTI.
Стандарт HLA не предъявляет требований к реализации федератов и RTT, а только определяет правила оформления федератов и федерации и интерфейс между федератами и RTI. Стандарт состоит из трех частей: - правила HLA [173], определяющие базисные принципы, лежащие в основе HLA; - шаблон объекта [174], обеспечивающий федерату стандартный формат декларирования общих (доступных другим федератам) данных; - спецификация интерфейса [175] федератов с сервисами RTI. Сервисы RTI делятся на следующие группы: - управление федерацией (Federation management services). Эти сервисы используются для создания и функционирования федерации в целом; - управление декларациями (Declaration management services). Эти сервисы используются федератами для объявления экспортируемых и импортируемых данных; - управление объектами (Object management services). Эти сервисы используются для работы с объектами и их атрибутами; - управление правом доступа (Ownership management services). Эти сервисы используются для передачи прав между федератами на : модификацию значений атрибутов объектов; - управление распределением данных (Data distribution management services). Эти сервисы позволяют уменьшать объем данных, пересылаемых между федератами, за счет более эффективного распределения данных;
Архитектура системы распределенного имитационного моделирования Мера
Структура программного обеспечения системы распределенного имитационного моделирования Мера представлена на рисунке 2.1. Программное обеспечение системы Мера состоит из следующих слоев: - ядро; - последовательная имитационная машина; - распределенная имитационная машина; - коммуникационная машина.
Термин "машина" используется здесь по аналогии с компьютером, операционными системами, некоторыми абстрактными устройствами типа "машины Тьюринга". То есть под "машиной" понимается организованная определенным образом программа, имеющая внутреннее состояние и систему команд. При получении команды машина "исполняет" ее, выполняя некоторые действия, возможно изменяя свое внутреннее состояние и выдавая ответ на команду сразу или через некоторое время.
Каждый слой программного обеспечения системы распределенного имитационного моделирования Мера может послать команду одной из вышестоящей по уровню иерархии машине. Формой посылки команды и получения ответа является вызов интерфейсной функции.
Подробное описание каждого слоя программного обеспечения системы распределенного имитационного моделирования Мера приводится в пунктах 2.3 — 2.6. В этом пункте дается обзор функций, выполняемых каждым слоем программного обеспечения.
Ядро системы Мера — это процессно-ориентированная система дискретного имитационного моделирования, взаимодействие процессов в которой осуществляется с помощью механизма передачи сообщений. Ядро реализовано как объектно-ориентированная библиотека на языках C++ и Java.
Основными функциями ядра являются. - Определение структуры модели. Модель состоит из субъектов (Subject) и систем (System). Субъект — это первичный модельный процесс, имитирующий некоторую сущность. Система — набор субъектов и вложенных систем с заданными между ними связями, воспринимаемая в модели, как единое целое. Имеется возможность задания иерархической структуры модели и динамического изменения структуры модели во время исполнения. - Передача сообщений. Субъекты и системы имеют входные и выходные порты для обмена данными (сообщениями). Связь между входными и выходными портами определяется при определении структуры модели. Имеется возможность посылки и получения сообщения. Внутренняя структура сообщения не формализована и определяется по соглашению между субъектом-отправителем и субъектом-получателем сообщения. - Задержка субъектов. Выполнение субъекта может быть задержано на указанное модельное время или до получения сообщения в указанный входной порт. - Выполнение модели. К этим функциям относятся задание начального и конечного значений модельного времени, запуск модели, взаимодействие с последовательной имитационной машиной в процессе выполнения модели.
Перечисленные выше функции определяют компактный, легко изучаемый, минимально необходимый программный пакет дискретного имитационного моделирования. Этот пакет для практического использования может быть естественным образом расширен библиотеками общего пользования и библиотеками для специализированных приложений.
В системе Мера такими библиотеками общего пользования являются: - генераторы случайных величин с заданным распределением вероятности; - средства сбора и обработки статистической информации; - средства работы с устройствами обслуживания по аналогии с языком GPSS и другие.
Примером специализированных приложений может быть визуально-интерактивная система моделирования транспортных систем, описанная в подпункте 2.7.3, включающая дополнительные средства ввода-вывода и визуализации процесса и результатов моделирования.
Дополнительные возможности, представляемые библиотеками общего пользования, также включены в ядро системы Мера. Но в дальнейшем описании структуры и функционирования программного обеспечения системы распределенного имитационного моделирования Мера ядро системы будет рассматриваться в пределах его основных функций.
Инструментальная среда разработки, отладки и тестирования
Имитационный стенд может использоваться в качестве подсистемы АСУ ТП на этапе эксплуатации. На этапе эксплуатации АСУ ТП все модельные объекты управления заменены на реальные объекты. Наиболее перспективно использование на этом этапе модели внешней среды.
Модель внешней среды выполняется параллельно с работой АСУ ТП. Входными данными модели являются текущие значения наиболее важных параметров, контролируемых АСУ ТП, и текущее состояние объектов управления АСУ ТП. Целью выполнения модели является прогнозирование во времени состояния контролируемых параметров в зависимости от внешних событий и действий (или бездействия) диспетчера.
Для выполнения этой цели исполнение модели должно происходить в темпе, намного превышающем реальное время. Если выполнение модели требует значительных вычислительных ресурсов, то опережающее по сравнению с реальным временем исполнение модели может обеспечить распределенная имитация. Для этого система моделирования должна иметь средства поддержки параллельного и распределенного моделирования. При этом передача информации между подмоделями, выполняемыми на различных узлах сети АСУ ТП, может осуществляться в форме передачи сигналов и быть реализована с помощью подсистемы передачи сигналов АСУТП.
Если выполнение модели внешней среды может осуществляться на любой станции АСУ ТП, то визуализацию результатов моделирования целесообразно осуществлять на отдельном рабочем месте с тем, чтобы диспетчер имел возможность наблюдать как текущее, так и "будущее" состояние ТОУ.
Одной из обязательных подсистем АСУ ТП является подсистема архивирования. В архиве хранится "история" состояния ТОУ, в частности значения параметров, контролируемых АСУ ТП, в дискретные моменты времени или значения параметров, усредненные за некоторые промежутки времени. Модель также может сохранять свои результаты с временными отметками, "будущими" по сравнению с текущим значением реального времени с помощью подсистемы архивирования АСУ ТП.
Поскольку недалекое "будущее" через некоторое время становится "историей", появляется возможность сравнения результатов моделирования с реальными значениями параметров. Ручное выборочное сравнение может оказаться полезным разработчику модели для обнаружения ошибок или улучшения качества моделирования.
Наиболее интересным является автоматическое сравнение результатов моделирования с реальными значениями контролируемых АСУ ТП параметров для продолжительных периодов времени с оценкой меры "близости" моделируемых и реальных значений параметров.
Численное значение меры "близости" может служить: - средством аттестации модели, характеризовать качество моделирования; - "обратной связью" для самой модели для самонастройки и, возможно, самообучения модели.
Часто параметры самой модели, например не измеряемые физические характеристики внешней среды или коэффициенты используемых распределений случайных величин, нельзя указать точно, а можно лишь определить диапазон их изменений. В этом случае обычно используются средние значения таких параметров.
Модель, пользуясь обратной связью, могла бы динамически изменять такие параметры в пределах заданного диапазона. Целевой функцией такого изменения может быть минимизация меры "близости". В качестве примера механизма реализации может служить хорошо изученная теория и практика программного автоматического регулирования. Реализация такой модели облегчается, если используемая система моделирования поддерживает интеллектуальное имитационное моделирование.
Разработка интегрированной с АСУ ТП модели внешней среды имеет следующие преимущества по сравнению с разработкой автономной модели: - возможность использования других подсистем АСУ ТП; - исключение разработки трудоемких, но второстепенных функций модели, таких как ввод входных данных, оперативной визуализации результатов моделирования, обработки и хранения полных результатов моделирования; - возможность сосредоточить усилия на реализации первостепенных функций модели, таких как правильность и быстродействие имитации, интеллектуальных возможностях модели.
Использование интегрированной с АСУ ТП модели, включенной в оперативный контур управления, позволяет: - квалифицировать действия диспетчера; - предупреждать о нежелательном развитии технологического процесса, возникновении нештатных или аварийных ситуаций; - выбирать наиболее оптимальный режим управления, связанный с экономией каких-либо ресурсов, например электроэнергии.
В идеале, для крупномасштабных АСУ ТП любое управляющее действие диспетчера должно проходить предварительную проверку на модели.
Имитационный стенд может использоваться в качестве интеллектуального "эксперта" для наполнения базы знаний. Выполнение модели в оперативном контуре управления АСУ ТП может ответить на вопрос: "Что произойдет?" Но модель не может ответить на вопрос: "Что делать диспетчеру?"
Диспетчер в своей деятельности может руководствоваться: - должностной инструкцией и другими нормативными документами; - личным опытом и квалификацией; - подсказками экспертной системы, разработанной для поддержки принятия решений при эксплуатации ТОУ.
Основой экспертной системы является база знаний по эксплуатации ТОУ. Классическим источником данных для базы знаний являются знания экспертов по эксплуатации ТОУ. Другим источником могут стать результаты выполнения модели.
Для некоторого набора стандартных ситуаций нет необходимости каждый раз запускать выполнение модели в оперативном контуре управления. Выполнение модели может быть сделано предварительно, а статистически обработанные результаты моделирования могут быть включены в базу знаний.
Знания, полученные в результате моделирования, могут быть овеществлены либо в виде подсказок или рекомендаций диспетчеру при возникновении определенных ситуаций, требующих вмешательства диспетчера, либо в виде запуска заранее запрограммированных программ автоматического управления в ситуациях, когда требуется быстрая реакция, на которую человек не способен.