УДК 519.179.2
ПАРАЛЛЕЛИЗМ ФУНКЦИОНИРОВАНИЯ ЛОГИЧЕСКИ РАЗДЕЛЕННЫХ ПОДСИСТЕМ СЛОЖНОЙ СИСТЕМЫ ПРИ Е-СЕТЕВОМ МОДЕЛИРОВАНИИ
С.Г. Цапко, И.В. Цапко
Томский политехнический университет E-mail: [email protected]
Рассмотрены принципы объектно-ориентированного моделирования. Показана применимость аппарата математического моделирования для описания логики взаимодействия внутренних компонент сложной системы. Проведен сравнительный анализ методов описания параметрического взаимодействия компонент сложной системы. Приведены основные положения метода Е-сетевого моделирования взаимодействующих процессов. Показан пример формирования схемы преобразования атрибутов фишек на основе Е-сетевого графа модели и функций, описывающих преобразования параметрической информации.
В соответствии с основными принципами объектно-ориентированного моделирования, изложенными в [1, 2], любая сложная система состоит из конечного набора логически законченных модулей, называемых подсистемами рассматриваемой сложной системы и имеющих межмодульные логические и параметрические связи. В свою очередь, каждый модуль, на более низком уровне абстракции, также может быть представлен в виде набора подсистем. Следовательно, любая сложная система может быть изображена в виде совокупно-стьи небольших автономных подсистем, имеющих внешние и внутренние связи, свою внутреннюю структуру, свое внутреннее состояние, наборы входных воздействий и выходных параметров. Каждую подсистему можно представить как объект, описанный в терминах Е-сети. Е-сетевая модель выбранной сложной системы может быть получена на основе метода компоновки полученных объектов.
С помощью аппарата математического моделирования можно получить модель, адекватно описывающую внутренние процессы любой системы. Если пользователь взаимодействует со сложной системой через интерфейс, реализованный с помощью ПЭВМ, существует возможность создания программного имитатора динамики функционирования исследуемой системы. Рассматривая структуру физического объекта с позиций четырехмерной системы координат, где одной из координат является координата времени, можно предположить одновременное параллельное функционирование простых подсистем, входящих в состав сложной системы. Очевидно, что любая простая подсистема существует в каждый момент времени и имеет свое внутреннее состояние, изменяемое в зависимости от координаты времени.
Однопроцессорные вычислительные средства не могут одновременно выполнять несколько процессов, имитирующих функционирование простых подсистем сложной системы, т. к. каждый процесс подразумевает отслеживание условий изменения состояния имитируемых объектов, а также собственно изменение их состояния. Существует множество программных продуктов, позволяющих вы-
полнять несколько процессов псевдопараллельно. Каждый процесс занимает процессор некоторое фиксированное время, а затем останавливается с сохранением текущего состояния и помещается в очередь процессов, ожидающих своего исполнения. Таким образом, каждый процесс будет иметь доступ к вычислительным средствам процессора обратно пропорционально числу процессов, выполняемых одновременно в ПЭВМ.
Для осуществления параметрической связи двух параллельных процессов, как правило, применяют общие поля памяти. Осуществление данного механизма требует глубоких знаний функционирования операционной системы, а также использования дополнительных программных средств для организации параметрической связи процессов. Аппарат Е-сетевого моделирования предназначен для моделирования процессов, протекающих параллельно во времени, и позволяет в терминах Е-сети разработать библиотеку простых подсистем. Используя основные подходы, изложенные в методологии Е-сетевого информационно-логического проектирования [3], можно из совокупности моделей, соединенных параллельно-последовательны-ми связями получить Е-сетевую модель сложной системы.
Проблемой реализации Е-сетевой модели является построение логической цепочки передачи атрибутивной информации в процессе ее циклического функционирования. Динамическое функционирование имитационных моделей отдельных подсистем не позволяет сформировать полную параметрическую модель их взаимодействия. Существует множество подходов к решению данной задачи [1]. Авторами статьи предложено добавить в Е-сетевой граф обратную параметрическую связь и ввести понятие вектора мгновенного состояния сложной технической системы. Под вектором состояния сложной технической системы подразумевается параметрический массив данных, элементы которого адекватно характеризуют состояние сложной технической системы. При этом поля массива сгруппированы в подмножество, каждое из которых по отдельности характеризует состояние одной из подсистем.
Основным достоинством аппарата Е-сетевого моделирования, позволяющего организовать процесс имитационного моделирования параллельно функционирующих подсистем, является тактирование и деление на циклы функционирования Е-сетевой модели в динамике [4,5]. За такт принимается время, требуемое для срабатывания каждого из разрешенных переходов, активизированных однократным появлением фишек в выходных позициях переходов-генераторов. Следовательно, за определенное количество модельных тактов будет достигнута конечная маркировка Е-сетевого графа в результате последовательного изменения маркировок Е-сетевых позиций. Маршрут движения фишек зависит от логики срабатывания разрешенных переходов в соответствии с заложенными математическими выражениями. Процесс последовательного изменения маркировок будет определять цикл функционирования Е-сетевой модели.
Для моделирования параллельно функционирующих взаимодействующих подсистем предложен метод Е-сетевого моделирования взаимодействующих процессов, который заключается в следующем:
1. На первом этапе любая сложная система разбивается на ряд простых подсистем, логика функционирования которых поддается простому описанию с помощью Е-сетевого графа. Для каждой подсистемы определяется внутренняя структура, представленная Е-сетевым графом и программной моделью, характеризующей ха-
рактер преобразований в процессе изменения маркировки Е-сетевого графа. Кроме этого выбирается начальное состояние маркировки, характеризующее текущее состояние моделируемой подсистемы. Также для каждой подсистемы определяется вектор возможных входных воздействий и вектор выходных параметров. Из полученных Е-сетевых моделей формируется базовая библиотека Е-сетевых моделей для имитационного моделирования выбранной сложной системы.
2. На втором этапе проводится анализ векторов входных воздействий и выходных параметров Е-сетевых моделей из базового набора. На основе проведенного анализа формируются объединенные векторы входных воздействий и выходных параметров. Далее производится анализ объединенных векторов для выявления идентичных параметров, характеризующих взаимодействие параллельно функционирующих подсистем. В качестве примера, иллюстрирующего данный пункт, можно привести моделирование движения жидкости в трубе за счет работы лопастей, приводимых в движение электрическим двигателем. Здесь скорость, зависящая от частоты вращения крыльчатки двигателя, одновременно является выходным параметром для модели двигательной установки и входным - для модели трубы с водой. Следовательно, данный параметр характеризует взаимодействие двух параллельно функционирующих подсистем.
Вектор состояния сложной системы
Сигнал
управления
Внешние
воздействия
О
& О
¿'з Т,
он
«4
к>н
«5
к>
«6
Е-сетевая модель первой подсистемы
к>
$к+1
Е-сетевая модель второй подсистемы
КОН
$к+ 2
Е-сетевая модель А'-ой подсистемы
-*Сн
К>
^и+1
Яп Т4
Рис. 1. Связь Е-сетевых моделей из базовой библиотеки
3. Третий этап характеризуется объединением Е-сетевых моделей из библиотеки, полученной в соответствии с пунктом 1. Вход каждой Е-се-тевой модели из библиотеки объединяется с переходом, размножающим фишку, а каждый выход - с переходом, объединяющим входные фишки. Размножающий и объединяющий переходы соединяются обратной связью, рис. 1.
В данном случае размножающим переходом является переход Ть а объединяющим - переход Г4. На вход перехода Г4 поступают выходные фишки всех параллельно функционирующих подсистем. В переход Г4 добавляется функция, которая формирует фишку в позиции ¿1+1, атрибутами которой будут атрибуты фишек, поступивших на вход перехода Г4. Данная фишка характеризует состояние сложной системы, а ее атрибуты характеризуют параметры векторов входных воздействий параллельно функционирующих подсистем. Фишка, сформированная на выходе перехода Г4, поступает через переход Т{ на вход размножающего перехода Т2. В переходе Т2 вводится функция формирования векторов входных воздействий для каждой из параллельно функционирующих подсистем. Параметры векторов входных воздействий, в параллельно функционирующие Е-сетевые модели, будут пере-
даваться с атрибутами входных фишек (^Д,... Д). На рис. 1 введен переход Тъ который позволяет вводить в функционирующую модель внешние воздействия, а также влиять на работу Е-сетевой модели посредством управляющих сигналов.
Каждая фишка в процессе динамического функционирования Е-сетевой модели обладает параметрическими атрибутами, характеризующими состояние каждой из подсистем. В соответствии с общепринятым обозначением ссылка на атрибут фишки состоит из двух частей: обозначения позиции в сетевом графе и номера используемого атрибута. Например, 1Ч-ый атрибут К-ой фишки будет представлен записью типа б[К] .а!г[К]. Обобщенно передачу информации в процессе модельного эксперимента можно представить в виде схемы преобразования атрибутов, рис. 2.
На рис. 2 в группу векторов Д входят векторы выходных параметров каждой из параллельно функционирующих подсистем. Далее параметры векторов группы Д объединяются в единый вектор, характеризующий состояние сложной системы в текущий такт моделирования. Полученный вектор относиться к группе векторов В|. Группа векторов В| характеризует суммарное воздействие, оказываемое на сложную систему. Она объединяет внутрен-
Группа векторов А! Атрибуты фишек на выходе моделей параллельных
Группа векторов Д Атрибуты фишки на выходе модели всей системы
э[к+1].а1х[1]
8[к+11.а1т[21
вРс+Ца^гп!!
э[к+2].а1х[1]
8[к+21.аЬ-[21
8[к+21.а1г|т21
8[п1.а1г[11
8[п1.а1т[21
sfnl.atrfmn.kl
8[п+1].а1т[1]
8[п+11.а1т[21
в^+^.а^т^!]
8[п+11.а1г|т1+21
вГп+ЦаЬ'Гт!-!-!!^!
8[п+11.а1г[т1+п^+11
в[п+1 ]. а1г[т1+п%+2]
8[п+11.а1г|т1+п^+... +гПп-к1
Команды управления
зГ21.аДгГ11
Внешние воздействия 5[3].а^[1]
Вектор С Атрибуты фишки на входе модели всей системы
8[41.а1х[11
8[4].а1х[21
8[41.а1х|т11
8[41.а1х|т1+21
8[4].а1т[т1+т21
8[4].а1т[т1+т2+11
8[4].а1т[т1+т2+21
8[4].а1т[т1+т2+.. .+тп-к|
Группа векторов Б! Атрибуты фишек на входе моделей параллельных подсистем
8[41.а1х|т1+т2+.. .+тп_к+11
э[4] ,а1г[т1+т2+... +тп_к“Нг1] 8[41.а1г|т1+т2+.. .+^-^1+11
8[4].а1т[т1+т2+.. .+тп-к~Н21~Нг21
Рис. 2. Передача информации в процессе моделирования
8[5].а1г[1]
8[51.аЬ-[21
8[51.а1г[и!1
8[61.аЬ-[11
8[61.аЬ-[21
8[61.а1г[и21
8[к|.а1г[11
8[к|.а1г[21
8[к|.а1г|1]к^1
ние воздействия, отражающие взаимосвязи внутренних подсистем, а также внешние воздействия и команды управления. Из группы векторов В| формируется вектор С, который является объединенным вектором векторов внешних воздействий параллельно функционирующих подсистем. На рис. 1 атрибуты фишки в позиции £4 будут содержать значения параметров вектора С. На рис. 2 схематично показан пример формирования векторов группы Ц из вектора С. Данная функция формирования векторов входных воздействия параллельно функционирующих подсистем должна быть описана в переходе Т2 (рис. 1) как передача значений атрибутов фишки из входной позиции атрибутам фишек выходных позиций.
Таким образом, полученная Е-сетевая модель сложной системы будет состоять из параллельно функционирующих моделей простых подсистем. Параллелизм функционирования Е-сетевых моделей обеспечивается механизмом тактирования, а взаимосвязь - возможностью передачи параметров посредством атрибутов движущейся фишки. Из рис. 1 видно, что на вход любой Е-сетевой модели из параллельно расположенных поступит фишка в момент срабатывания перехода Тг. Данный факт можно считать фактом запуска объекта на исполнение. Входная фишка содержит набор параметров, заданных в виде атрибутов, который можно считать вектором входных воздействий. Каждая из параллельных моделей находиться в одном из своих определенных состояний, которое в свою очередь определяется значениями атрибутов маркированных позиций. Фишка, активизировавшая процесс срабатывания объекта, представленного
СПИСОК ЛИТЕРАТУРЫ
1. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С+: пер. с англ. - 2-е изд. - М.: Бином, 2000. - 560 с.: ил.
2. Казимир В.В., Демшевская Н.В. Формальный объектно-ори-ентированный подход к моделированию сложных систем // В сб.: Перша М1жнародна науково-практична конференщя з програмування УкрПрог’98. - Киев: Кибернетический центр НАН Украины, 1998. - С. 593-598.
3. Цапко С.Г. Е-сетевые средства моделирования и имитации процессов функционирования сложных динамически реконфигурируемых систем в задачах построения компьютерных тренажеров: Дис.... к.т.н. - Томск, 2003. - 192 с.
Е-сетевой моделью, порождает появление фишки на выходе Е-сетевой модели через время, равное циклу работы данной Е-сетевой модели.
Срабатывание переходов в Е-сетевой модели происходит последовательно, но окончание модельного цикла характеризуется отсутствием разрешенных переходов. Следовательно, все, что выполняется в промежутке времени от начала цикла до его конца, для пользователя считается выполненным параллельно. В данном случае переход Г4 (рис. 1) будет запущен только тогда, когда все его входные позиции будут промаркированы, т. е. содержать фишку. Данная ситуация возможно только при появлении фишек на выходе всех Е-сетевых моделей, имитирующих работу простых подсистем. Значит переход Г4 будет запущен через интервал времени, определяемый как наибольший цикл работы из представленных параллельно расположенных Е-сетевых моделей. Переход Г4 в данном случае является тактирующим и определяющим параллельность функционирования Е-сетевых моделей простых подсистем, входящих в состав сложной системы.
Из рассмотренного следует вывод о возможности использования аппарата Е-сетевого моделирования для разработки и эксплуатации имитационных моделей, функционирующих параллельно и имеющих параметрические взаимосвязи. Предложенный метод и алгоритм его реализации позволяют создать сколь угодно сложную имитационную модель, описанную в терминах аппарата Е-сетево-го моделирования. Данный метод был апробирован при создании программного имитатора логики функционирования и динамического взаимодействия подсистем космического аппарата.
4. Цапко Г.П., Цапко С.Г., Тараканов Д.В. Базовые принципы построения Е-сетевой модели сложной технической системы // Известия Томского политехнического университета. - 2006. -Т. 309. - № 4. - С. 152-157.
5. Цапко С.Г., Цапко И.В. Объектное представление имитационных моделей подсистем сложной технической системы в терминах Е-сети // Известия Томского политехнического университета. - 2006. - Т. 309. - № 5. - С. 167-170.
Поступила 25.06.2007г.