Алгоритмическое и программное обеспечение для нахождения параметризованных инвариантов сетей Петри

дизъюнктивного Time-графа. Эти структуры не используются, если система работает с точной информацией (когда запрещено внесение дизъюнктивных ограничений). Если же обрабатывается нечеткая информация, то при каждом запросе на поиск реализации множества дизъюнкций в дизъюнктивной модели TL-граф и Time-граф обновляются. Запросы на поиск выполнимого отношения между любыми двумя временными переменными ведутся в дизъюнктивном Time-графе. Внесение в модель данных дополнительного дизъюнктивного TL-графа сделано из соображений повышения эффективности обработки.

СВР реализована на языке C++ Builder 6.0 в виде DLL (Dynamic link library). Для повышения быстродействия системы создана библиотека шаблонов для языка C++, которая включает улучшенную реализацию таких важных для СВР примитивов, как список, стек, массив и граф. На основе списка были созданы шаблонные классы «граф» и

«хеш-таблица». На основе шаблонного класса «граф» были созданы основные контейнеры модели данных - TL-граф, TIME-граф и их дизъюнктивные варианты. Таким образом, структура модели данных органично отражена в объектах системы. Основным управляющим классом, реализующим интерфейс связи и через него доступ к приложениям-клиентам, является словарь временных переменных (vocabulary). Диаграмма классов СВР как компонента ИСППР РВ приведена на рисунке 7.

Данная СВР включена в состав прототипа ИСППР РВ для оперативно-диспетчерского персонала энергоблока.

Список литературы

1. Вагин В.Н., Еремеев А.П. Некоторые базовые принципы построения интеллектуальных систем поддержки принятия решений реального времени // Изв. РАН. Теория и системы управления. - 2001. - № 6. - С.114-123.

2. Еремеев А.П., Троицкий В.В. Модели представления временных зависимостей в интеллектуальных системах поддержки принятия решений // Там же. - 2003. - № 5. - С.75-88.

3. Кандрашина Е.Ю., Литвинцева Л.В., Поспелов Д.А. Представление знаний о времени и пространстве в интеллектуальных системах. / Под ред. Д.А. Поспелова. - М.: Наука. - Гл. ред. физматлит., 1989.

4. Allen J.F., Ferguson G. Actions and Events in Interval Temporal Logic. // Technical Report, S21, 1994.

5. Gereviny A. and Schubert L. Efficient Algorithms for Qualitative Reasoning about Time. Technical report 496, Department of Computer Science, University of Rochester, Rochester, NY, 1993

6. Еремеев А.П. Об интеграции моделей в интеллектуальных системах поддержки принятия решений // Девятая национальная конф. по искусствен. интеллекту с междунар. участ. КИИ-2004 (28 сент.- 2 окт. 2004 г., Тверь): Тр. конф. В 3 т. Т.2. М.: Физматлит, 2004.- С.815-823.

7. Еремеев А.П., Денисенко Л.А. Прототип интеллектуальной системы поддержки принятия решений для управления энергообъектом // Программные продукты и системы. - 2002. -№3.- С.38-41.

АЛГОРИТМИЧЕСКОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ДЛЯ НАХОЖДЕНИЯ ПАРАМЕТРИЗОВАННЫХ ИНВАРИАНТОВ

СЕТЕЙ ПЕТРИ

Н.Е. Демидов

Сети Петри (СП) - одно из современных и наиболее эффективных средств графического и математического моделирования систем самых

различных классов [1]. СП - мощный инструмент для описания систем, использующих параллелизм, синхронизацию и разделяемые ресурсы, и в том

числе промышленных производств, с целями координации процессов и принятия оперативных решений по управлению ими. Алгоритмы исследования свойств СП подразделяют на предназначенные для построения множества достижимых маркировок, декомпозиции СП на подсети и поиска инвариантов СП. S- и T-инварианты СП широко используются для функционального диагностирования, уравнивания (балансировки) химических реакций и во многих других приложениях [1,2]. Нахождение S-инвариантов СП формально заключается в вычислении m-k целочисленных линейнонезависимых решений уравнения Ax=0, в котором целочисленная матрица (ЦМ) A размеров пхш (n<m) может иметь неполный строчный ранг k (к<п). Теоретические и практические проблемы решения подобных задач рассматриваются в так называемом направлении безошибочных вычислений современной вычислительной математики [2].

Общее решение уравнения Ax=0 определяется зависимостью x=(I-A+A)y, в котором I - единичная матрица; A+ - обобщенная обратная матрица (ООМ), соответствующая условию AA+A=A; у -любой произвольный вектор [2]. Если A - ЦМ, то вектор x будет целочисленным при любом целочисленном векторе у, только если B=I-A+A - ЦМ. Основные вычислительные проблемы нахождения S-инвариантов связаны с определением ЦМ B, поскольку обычно в качестве таких инвариантов используются m-k линейнонезависимых столбцов этой ЦМ. В [2] показано, что при этом матрица A+ не обязательно должна быть ЦМ, однако она должна обладать определенными целочисленными свойствами.

При решении реальных задач, особенно большого размера, представляется целесообразным вычисление S-инвариантов с использованием развитого алгоритмического и программного обеспечения, предназначенного для нахождения нецелочисленных ООМ [3].

Проблема нахождения целочисленных S-инва-риантов была решена с использованием ранее обоснованного автором параметризованного представления нецелочисленной ООМ [3] и его модификации для ЦМ.

Специальное разложение ЦМ A, называемое диагональной редукцией [2], имеет следующий вид:

А = " Ац А12 , SAQ = 1к 0"

_ А21 А22. . 0 0_

А—1 0

"А21АП ^ —к

Q = Ql2

Q

12

0 I

ш—k

-АиА12»

где подматрица Ац имеет полный ранг к (что при необходимости достигается предварительной перестановкой строк и столбцов А), а подматрицы Би, §21 и Q12 отличаются от ЦМ скалярным сомножителем 1/г, причем г - целое и г>1.

Параметризованные ООМ АР+ и ортогональные проекции-матрицы АР+А и ВР имеют вид:

А Р = Q

1к Р12

Р21 Р22

»Г 1к 0"

-Рп 0

Вр

Б,

Q

—1

^^21 Ql2

— Р

21

P2lQl2 + I

ш—к

При Р21=0 ш-к линейнонезависимых (базовых) Б-инвариантов СП формируются из столбцов подматриц Ql2 и 1ш-к матрицы Q и приводятся к целочисленному представлению умножением на г, при этом отметим, что существуют линейные комбинации исходных нецелочисленных базовых инвариантов, дающие целочисленные решения. Для их получения в линейных комбинациях целочисленных базовых инвариантов должны использоваться сомножители, кратные 1/г.

По известной матрице В, рассчитанной для нецелочисленной ООМ А+, подматрицу Q12 можно найти с использованием соотношения Q12=B12B22"1 (с предварительным выполнением необходимых перестановок столбцов и строк в В).

Возможности и особенности предлагаемого подхода рассматриваются на примере из [4] с ЦМ А размером 6 х 10 и строчным рангом, равным 5:

—1 1 —1 0 0 0 1 0 0 0

А=

Нецелочисленная ООМ по Муру-Пенроузу А+ [3], являющаяся единственной для матрицы А:

1 —1 0 —1 0 0 0 1 0 0

0 0 1 0 —1 1 0 0 —1 0

0 0 0 1 1 —1 0 0 0 —1

0 0 0 0 0 0 —1 —1 1 1

0 0 0 0 0 0 0 0 1 —1

А+=-1

870

—150 150 —30 30 0 —30

150 —150 30 —30 0 30

—205 —85 220 70 0 75

—85 —205 70 220 0 —75

—30 30 —180 180 0 —180

30 —30 180 —180 0 180

191 41 —14 —44 —174 15

41 191 —44 —14 —174 —15

29 29 —116 —116 174 435

29 29 —116 —116 174 —435

Матрица В и рассчитанное по ней множество X целочисленных линейнонезависимых инвариантов для данного примера:

1

к

B = -

870

570 300 -120 120 - 60 60 150 -150 0 0 1 -1 1 -1 1

300 570 120 -120 60 - 60 -150 150 0 0 1 0 0 0 0

-120 120 445 -155 150 -150 205 85 145 145 0 1 -1 0 1

120 -120 -155 445 -150 150 85 205 145 145 0 -1 1 0 1

- 60 60 150 -150 510 360 30 - 30 0 0 , X = 0 1 0 0 0

60 - 60 -150 150 360 510 - 30 30 0 0 0 0 1 0 0

150 -150 205 85 30 - 30 505 - 215 145 145 0 0 0 -1 2

-150 150 85 205 - 30 30 - 215 505 145 145 0 0 0 1 0

0 0 145 145 0 0 145 145 145 145 0 0 0 0 1

0 0 145 145 0 0 145 145 145 145 0 0 0 0 1

1

При решении реальных задач, особенно большого размера, представляется целесообразным вычисление и использование единого параметризованного Б-инварианта СП с получением конкретных инвариантов путем задания целочисленных значений параметров и базового инварианта в случае задания всех нулевых значений параметров.

Применение инвариантов СП с минимальным или заданным числом параметров открывает качественно новые возможности в решении многих задач, например, в функциональном диагностировании - оперативной реконфигурации схем диагностирования и улучшения дополнительных характеристик (робастности, нечувствительности и др.).

Поставленная проблема была решена с использованием ранее предложенного автором параметризованного представления обобщенных обратных матриц [3] и расширением его для целочисленных матриц.

Для формирования параметризованного Б-ин-варианта хР с минимальным числом параметров, определяемым рангом к=5, в качестве Р12 использована диагональная матрица с параметрами -элементами главной диагонали а, Ь, с, и -е, а также последний столбец ЦМ Q"1.

Окончательные результаты (инвариант хР и множество X из пяти полученных из хР при значениях параметров 0 или 1 обычных Б-инвариантов,

в том числе и базового инварианта) имеют следующий вид:

-1 1 -1 1" 0 0 0 0 1 -10 1 -110 1 10 0 0 0 1 0 0Г 0 0 -12 0 0 10 0 0 0 1 0 0 0 1

Комплекс программных модулей, решающих задачи нахождения S- и T-инвариантов СП с использованием параметризованных ООМ, оформлен в виде M-файлов системы для математических расчетов MATLAB, обладающей достаточными базовыми средствами для вычисления ООМ. Для нахождения решения рассмотренного примера использованы матричные функции линейной алгебры MATLAB pinv, rank и rats.

Список литературы

1. Питерсон Д. Теория сетей Петри и моделирование систем. -М.: Мир, 1984. - 264 с.

2. Грегори Р., Кришнамурти Е.М. Безошибочные вычисления: методы и приложения. - М.: Мир, 1988. - 208 с.

3. Демидов Н.Е. Параметризация обобщенных обратных матриц: алгоритмическое и программное обеспечение // Программные продукты и системы. - 1998. - №2. - С. 33 - 36.

4. Murthy V.K., Schroder H.S. Systolic arrays for parallel matrix g-inversion and finding Petri net invariants // Parallel computing. -1989. - 11, №3. - P. 349 - 359.

1 + a - b + c - d - e a

1 + b - c - e 1 - b + c - e b c

2 - d - 2e d

1 - e 1 - e

X =

Xn =

p

МЕТОДЫ. ВОССТАНОВЛЕНИЯ ПРОПУСКОВ В МАССИВАХ ДАННЫХ

И.В. Абраменкова, В.В. Круглое

С проблемой обработки пропусков в массивах данных приходится сталкиваться при проведении разнообразных социологических, экономических

и статистических исследований [1]. Традиционными причинами, приводящими к появлению пропусков, являются невозможность получения