УДК 519.179.2
ОБЪЕКТНОЕ ПРЕДСТАВЛЕНИЕ ИМИТАЦИОННЫХ МОДЕЛЕЙ ПОДСИСТЕМ СЛОЖНОЙ ТЕХНИЧЕСКОЙ СИСТЕМЫ В ТЕРМИНАХ Е-СЕТИ
С.Г. Цапко, И.В. Цапко
Томский политехнический университет E-mail: [email protected]
Выделены основные признаки, определяющие сложность технической системы. Дано определение объекта. Предложено использование аппарата Е-сетевого имитационного моделирования для описания структуры объекта и его взаимодействия с внешним окружением. Показан пример представления объекта в терминах Е-сети. Предложено использование атрибутивной маркировки Е-сети для имитации физического взаимодействия компонентов сложной системы. Доказана возможность использования динамической Е-сети для имитации функционирования любой сложной системы, представленной в виде обособленного объекта.
Построение математической модели непосредственно для сколько-нибудь сложного объекта требует немалого искусства. Зачастую «барьер сложности», когда человек не в состоянии мысленно охватить всевозможные переплетения событий и явлений процесса функционирования моделируемой системы, или соображения рентабельности приводят к тому, что создание модели оказывается практически нецелесообразным [1]. Основные способы преодоления «барьера сложности» - это расчленение объекта на достаточно простые части и изучение частей с учетом их взаимодействия.
Любая сложная техническая система предполагает наличие следующих пяти основных признаков.
1. Сложность часто представляется в виде иерархии. Сложная система обычно состоит из почти взаимонезависимых подсистем, которые, в свою очередь, также могут быть разделены на подсистемы, и т. д., вплоть до самых низших уровней абстракции. Под абстракцией в данном случае понимаются фокусирование внимания на существенных, неотъемлемых аспектах сущности и игнорирование ее случайных или второстепенных для заданной цели рассмотрения свойств.
2. Сложные системы не просто иерархичны: уровни их иерархии отражают различные уровни абстракции, вытекающие друг из друга, но обладающие при этом определенной степенью автономности.
3. Все составляющие одного уровня абстракции взаимодействуют друг с другом вполне определенным способом. На каждом уровне существуют четкие границы между внешней и внутренней средой. Все подсистемы работают вместе для обеспечения функционирования всей системы как целого и почти не осуществляют взаимодействия с отдельными элементами других подсистем. Т. е. существует четкое разделение функций между элементами на различных уровнях абстракции.
4. Иерархические системы обычно состоят из нескольких подсистем разного типа, реализованных в различном порядке и в разнообразных комбинациях.
5. Работающая сложная система неизбежно является результатом развития работающей простой системы. В процессе развития системы объекты, которые сначала считаются сложными, начинают рассматриваться как элементы низших уровней абстракции, из которых затем строятся более сложные системы.
Понятие сложной системы интуитивно ассоциируется с объектом, состоящим из большого числа элементов и подсистем с разветвленными многоуровневыми связями и сложным взаимодействием между ними. Кроме того, представляется достаточно очевидным, что сложная система способна выполнять сложную функцию. Для того, чтобы задать сложную систему, необходимо представить описание всех ее элементов и описание взаимодействия между элементами [2-4].
Под объектом понимается активный процесс, получающий сообщения и изменяющий свое внутреннее состояние в зависимости от полученного сообщения, специфицирующего выполняемую объектом операцию [1]. Модельное описание какой-либо подсистемы определяется в данном случае как объект или логическое единство, определяемое, в свою очередь, содержанием выполняемых операций обработки в соответствии с принятым уровнем детализации рассмотрения данной части предметной области. Считается, что объект состоит из внутренней памяти и набора операций, причем над внутренней памятью могут выполняться операции только этого набора.
Объект может реагировать на определенную совокупность сообщений. Сообщение выражает запрос на выполнение указанных в нем операций. При этом указываются вид операций и необходимые для выполнения аргументы, а каким образом они должны выполняться - в сообщении не отражается. Характер выполнения операций определяется объектом, получающим сообщение. Сообщение является единственным средством инициирования операций над объектом. Принимающий данное сообщение объект должен содержать механизм, который будет опознавать сообщение, выбирать соответствующие ему операции и передавать содержащиеся в сообщении аргументы для выпол-
нения. Набор выполняемых операций объекта можно менять в зависимости от условий применения объектов. Состояние объекта (значения переменных экземпляра) запоминается после того, как объект перестает быть активным, и может быть использовано в дальнейшем.
Из вышеизложенного следует, что объект - это логически законченный модуль, изменяющий свое внутренне состояние, отражаемое вектором выходных параметров и зависящее от вектора входных воздействий. Для достижения целей математического моделирования требуется представить объекты материального мира в виде их логико-математического описания для последующего использования в ходе модельного эксперимента. В качестве аппарата математического моделирования предложено использовать аппарат Е-сетей как наиболее подходящий для описания семантики строения и взаимодействия объектов.
Качественные свойства аппарата Е-сетей, определяющие его выбор, обеспечивают хранение и модификацию информационной составляющей моделируемого физического процесса в ходе динамического эксперимента. Эти свойства опираются на механизмы маркировки и динамического измене-
ния маркировки в процессе исполнения модели. Любая фишка, присущая начальной маркировке, обладает атрибутивным свойством и несет информационную составляющую. При срабатывании переходов Е-сетевого графа информация распространяется последовательно из позиции в позицию в соответствии с логикой срабатывания переходов.
Важной особенностью маркировки Е-сети является наличие информационной части в маркированной позиции [5]. В данном случае маркированную позицию называют просто позицией, а маркировку позиции - фишкой. Следовательно, изменение маркировки Е-сети сопровождается перемещением фишки из одной позиции в последующую, что характеризует передачу информации. Кроме этого срабатывание разрешенных переходов характеризует выполнение математических преобразований над информационной частью фишек, вызвавших срабатывание перехода. Информационная часть фишек представляется в виде атрибутов, количество которых определяется пользователем аппарата Е-сетевого моделирования.
Из вышеизложенных свойств объекта и аппарата Е-сетевого моделирования следует доказательство возможности использования аппарата Е-сете-
Ъ
ъ,
8[\].агг[\]=Х1
8[\].агг[1+\]=Ъ1 8[\\.а1г[}+]]=Ъ,
к>
8[к].агг[\]=Е1(8[к-\].агг[\], 8[к-\].агг[2], ..., 8[к-\].агг[)]) s[k].atr[j]=F](s[k-1].atr[1], s[k-\].atr[2], ..., s[k-\].atr[j])
У., = У s[l].atr[r ]
О
к>
•он
б
¥п = у s[n].atr[r ]
Рис. 1. Представление объекта материального мира: а) структурное; б) в терминах Е-сети
т
1
вого моделирования для объектного представления компонент сложной системы в терминах Е-сети.
Любая сложная система может быть декомпозирована на более простые подсистемы, характеризующие элементарные функции в соответствии с выбранным уровнем детализации [1].
Элементарные функции можно описать в виде математических преобразований, которые легко описываются аппаратом Е-сетевого моделирования, где параметрическая часть, отражающая хранение и передачу информации, представляется позициями, а математическая, отражающая преобразование параметрической части, представляется переходами [6].
Имитируемый объект можно представить в виде взаимосвязанного набора элементарных функций, отражающих логическую модель реального объекта. В качестве входных воздействий можно представить набор атрибутов входной фишки, а в качестве выходных параметров - выходной фишки.
На рис. 1, б, показано представление физического объекта в терминах Е-сети. Объект (рис. 1, а) имеет набор входных параметров (X), внешних воздействий (¿) и выходных параметров (У).
В Е-сетевой модели объект характеризуется набором элементарных математических операций, выполняемых в переходах Е-сети над вектором атрибутов фишек, являющихся входными для данного перехода и определяющих функцию срабатывания данного перехода. Вектор входных и внешний воздействий задается в виде атрибутов входной фишки, а вектор выходных параметров формируется из вектора атрибутов выходной фишки. На рис. 1 з[к].Шг[{] означает г-й атрибут фишки в к-й позиции.
Следовательно, в терминах Е-сети сложную систему можно представить в виде программного объекта, который будет описываться следующими сущностями:
- вектор входных воздействий;
- набор логико-математических операций для каждого перехода Е-сети;
- вектор атрибутов фишки для каждой маркированной позиции Е-сети;
- вектор выходных параметров.
Кроме того, любая модель в терминах Е-сети должна иметь начальную маркировку, которая отражает начальное состояние модели в момент запуска. Считая Е-сетевую модель программно-логическим отображением физического объекта, можно определить загрузку текущего состояния объекта как набор атрибутов фишек начальной маркировки Е-сети, а для сохранения состояния объекта использовать обновленную информацию в позициях начальной маркировки.
Для этой цели требуется организовать граф и математического описание преобразований в переходах Е-сетевой модели таким образом, чтобы маркировка имитационной модели в процессе ее
функционирования всегда возвращалась к начальной через N тактов моделирования. Значение N определяется как цикл работы Е-сетевой модели. Под циклом работы Е-сетевой модели будем понимать количество модельных тактов, требуемых для возврата к начальной маркировке в процессе последовательного изменения маркировки Е-сети, определяемого логикой срабатывания разрешенных переходов. Цикл работы модели может быть различен в различные моменты времени, но в соответствии с логикой функционирования модели, представленной на рис. 2, можно сделать вывод, что выходная фишка модели будет определять окончание цикла работы модели. Следовательно, считывание состояния модели можно организовать при появлении фишки на выходе Е-сети, описывающей моделируемый объект.
к>
к>
о
•гн
о
51
Т1 _ Т2
52
Рис. 2. Использование атрибутов фишки для хранения информации
Информация в Е-сети распространяется посредством атрибутов фишки, движущейся по Е-се-тевому графу в процессе последовательного изменения маркировки Е-сети. Таким образом, информация в Е-сети хранится в виде атрибутов фишек. Для считывания и записи состояния модели требуется организовать Е-сетевой граф так, чтобы маркировки до и после цикла работы модели были идентичны, а также позиции, определяющие состояние модели, были промаркированы. Данная задача решается введением обратных связей на участках, определяющих состояние модели (рис. 2).
Например, требуется определить количественную составляющую скорости движения жидкости по трубе. Предположим, что данная составляющая может изменяться в процессе функционирования модели.
На рис. 2 позиция £2 является маркированной, а атрибуты фишки в данной позиции определяют составляющую скорости движения жидкости. В процессе функционирования Е-сети возможно срабатывание перехода Т1. При этом маркированная позиция £2 станет немаркированной. Срабатывание перехода Т1 обязательно приведет к срабатыванию перехода Т2, так как условием срабатывания перехода Т2 является наличие фишки в позиции £1, а постусловием срабатывания перехода Т1 является появление фишки в позиции £1. Срабатывание пе-
рехода Т2 приведет к появлению фишки в позиции £2, так как постусловием срабатывания перехода Т2, в соответствии с принципами работы Е-сети, является появление фишек во всех позициях, являющихся выходными для данного перехода. Появление фишки в позиции £2 является возвратом к начальной маркировке и сохранением измененного значения скорости движения жидкости по трубе.
Следовательно, аппарат Е-сетевого моделирования позволяет сохранять и восстанавливать со-
стояние объекта каждые N тактов моделирования, загружать вектор входных воздействий, а также формировать вектор выходных параметров объекта. Такой набор свойств позволяет разработать Е-сетевую модель, отвечающую основным требованиям объектно-ориентированного моделирования. Данная модель может быть построена на основе принципов функциональной декомпозиции, реализующей концепцию построения сложной системы из набора простых подсистем.
СПИСОК ЛИТЕРАТУРЫ
1. Буч Г. Объектно-ориентированное проектирование с примерами применения. - Киев: Диалектика; М.: АО «ИВК», 1992. -519 с.
2. Основы моделирования сложных систем / Л.И. Дыхненко, И.В. Кузьмин и др. - Киев: Высшая школа, 1981. - 359 с.
3. Советов Б.Я., Яковлев С.А. Моделирование систем. - М.: Высшая школа, 1998. - 319 с.
4. Советов Б.Я. Моделирование систем. - М.: Высшая школа, 2001. - 343 с.
5. Андрюшков Ю.Т., Пранявичус Г.И. Е-сети, как средство формализованного описания вычислительных систем // Вычислительные сети коммутации пакетов: Труды Всес. конф. - Рига, 1978. - С. 170-175.
6. Цапко С.Г. Объектно-ориентированный подход к модельному представлению блочной структуры космического аппарата // Современные техника и технологии: Труды VII Междунар. на-учно-практ. конф. молодых ученых. - Томск, 2005. - Т. 1. -С. 170-172.
УДК 681.3.068
ПОДСИСТЕМА ВИЗУАЛИЗАЦИИ НАУЧНЫХ ДАННЫХ ДЛЯ СИСТЕМНОЙ ОБОЛОЧКИ BRAINSTORM
В.П. Зимин, Е.А. Хомяков
Томский политехнический университет E-mail: [email protected]
Обсуждается проблема визуализации научных данных при проведении вычислительных экспериментов с помощью пакетов прикладных программ, поддерживаемых системной оболочкой BrainStorm, разработанной в ТПУ. Предлагается ее решение, состоящее в разработке специализированных модулей визуализации, позволяющих отображать и анализировать в графическом виде данные как во время проведения численных экспериментов, так и после их завершения.
Визуализация научных данных является важным и необходимым этапом, а так же актуальной задачей процесса интерпретации результатов как физического, так и вычислительного экспериментов. Актуальность данной задачи значительно возрастает при необходимости интеграции отдельных программ в пакеты прикладных программ (ППП). Эта задача может быть решена, по крайней мере, двумя способами. Первый - это использование подсистемы визуализации каких-либо пакетов программ, например, МаШсаё или 81аИ811еа. Второй способ - это программирование отрисовки всех деталей графиков зависимостей, возможно, с использованием имеющихся графических библиотек.
Имеющиеся подсистемы визуализации математических пакетов и графические библиотеки визуализации позволяют эффективно решать задачу графического представления разнообразных зависимостей. Но при интеграции этих подсистем визуа-
лизации с системным и функциональным обеспечением вновь создаваемых ППП возникают определенные трудности. Их анализ показывает, что большая часть вычислительных возможностей имеющихся подсистем визуализации (или их компонент) оказывается избыточной, а связанная с этим внутренняя логика и способы визуализации и обмена данными представляют собой препятствие для интеграции программ, иногда - практически непреодолимое. В результате уникальные подсистемы визуализации универсальных пакетов становятся недоступными разработчику ППП. Например, чтобы получить доступ к графическим возможностям специализированного пакета, требуется создавать файл в специальном формате, который этот пакет сможет прочитать. Затем команда «Импортировать», в том или ином виде присутствующая во многих пакетах, позволяет пакету прочитать этот файл и добавить в собственный документ данные,