ТЕОРЕТИЧЕСКИЕ ОСНОВЫ ПЕТРИОБЪЕКТНОГО МОДЕЛИРОВАНИЯ СИСТЕМ Стеценко Инна Вячеславовна к.т.н., доцент кафедры системного анализа и методов принятия решений Черкасского государственного технологического университета, соискатель доктора технических наук Института проблем математических машин и систем Научный консультант д.т.н., проф. Литвинов В.В. “...И пока у нас нет ни математических инструментов, ни интеллектуальных возможностей для полного моделирования поведения больших дискретных систем...” Гради Буч Актуальность разработки обусловлена возрастающей сложностью задач, которые ставятся перед разработчиками информационных технологий, повышением требований к скорости построения модели и скорости получения результатов моделирования, стремительным развитием электронных средств сбора и хранения данных необходимостью интеграции с другими технологиями, недостатками существующих технологий моделирования: o o o o ограниченность используемых средств формализации, необходимость использования различных средств формализации для моделирования объекта управления и подсистемы управления, недостаточный уровень детализации процессов управления, большая трудоемкость построения моделей сложных систем. Технологии моделирования систем Аналитические: Теория динамических систем (Mathcad, Matlab) Теория автоматического управления (Simulink) Системная динамика (Vensim, Powersim) Теория случайных процессов Логико-динамические системы Теория цифровых автоматов Теория базовых сетей Петри Имитационные: Имитационное моделирование (Simula, GPSS, Arena) Агентное моделирование (AnyLogic) Петри-имитаторы (CPN, POSES++) Непрерывные модели Дискретные модели Технологии Технологии аналитического моделирования Математические методы Численные методы Системы компьютерной математики моделирования Технологии имитационного моделирования Проблемно-ориентированные системы имитационного моделирования Объектноориентированный язык Simula Объектноориентированное программирование Технологии программирования Сети Петри как средство формализации дискретно-событийных процессов управления Преимущества сетей Петри Высокий уровень формализации дискретно-событийных систем Аналитическое исследование свойств модели Возможность применения к немарковским процессам функционирования Murata Т. Petri nets: Properties, Analysis and Applications // Proceedings of the IEEE. - April, 1989. - vol.77, No.44. – P. 541-580. Питерсон Дж. Теория сетей Петри и моделирование систем. - М.: Мир, 1984. – 264 с. Котов В.Е. Сети Петри. - М.: Наука, 1984. - 158 с. Зайцев Д.А. Инварианты временных сетей Петри // Кибернетика и системный анализ. – 2004. - №2. - С.92-106. Haas P. J. Stochastic Petri nets : modelling, stability, simulation / Peter J. Haas — Springer series in operations research. – 2002. -– 529p. Возможность быстрого конструирования алгоритма имитации системы с большим количеством событий Вычислимость алгоритма имитации сети Петри гарантируется эквивалентностью приоритетной сети Петри машине Тьюринга Котов В.Е. Сети Петри. - М.: Наука, 1984. - 158 с. Базовые сети Петри Правило запуска переходов. Конфликтные переходы Маркер символизируе т выполнение условия Позиция представляет условие 1 Переход представляет событие Поступить на обслуживание Занять ресурс 1 Ресурс свободен Освободить ресурс Базовые сети Петри Позиция представляет условие Маркер символизируе т выполнение условия Переход представляет событие 1 Поступить на обслуживание Занять ресурс 1 1 Ресурс свободен Освободить ресурс Базовые сети Петри Маркер символизируе т выполнение условия Позиция представляет условие Переход представляет событие 1 Поступить на обслуживание Занять ресурс 1 Освободить ресурс Ресурс свободен Базовые сети Петри Маркер символизируе т выполнение условия Позиция представляет условие Переход представляет событие 1 Поступить на обслуживание Занять ресурс 1 Освободить ресурс Ресурс свободен Базовые сети Петри Позиция представляет условие Маркер символизируе т выполнение условия Переход представляет событие 1 Поступить на обслуживание Занять ресурс 1 1 Освободить ресурс Ресурс свободен Базовые сети Петри Маркер символизируе т выполнение условия Позиция представляет условие Переход представляет событие 1 Поступить на обслуживание Занять ресурс 1 1 Освободить ресурс Ресурс свободен Базовые сети Петри Позиция представляет условие Маркер символизируе т выполнение условия Переход представляет событие 1 Поступить на обслуживание Занять ресурс 2 1 Освободить ресурс Ресурс свободен Базовые сети Петри Конфликтны й переход Конфликтны й переход 1 Поступить на обслуживание Занять ресурс 1 2 1 Ресурс свободен Освободить ресурсКонфликтны й переход Конфликтны й переход Базовые сети Петри Конфликтны й переход Конфликтны й переход 1 Поступить на обслуживание 1 Занять ресурс 2 1 Ресурс свободен Освободить ресурсКонфликтны й переход Конфликтны й переход Базовые сети Петри Конфликтны й переход Конфликтны й переход 1 Поступить на обслуживание 23 27 Занять ресурс 1 Ресурс свободен 21 Освободить ресурсКонфликтны 19 й переход Конфликтны й переход Совместное использование ресурсов Поступить на обслуживание Занять ресурс 1 Ресурс свободен Освободить ресурс 1 Занять ресурс 1 Освободить ресурс Базовые сети Петри с многоканальными переходами Занять ресурс Освободить ресурс 1 1 Ресурс 1 свободен 1 Ресурс n 1 свободен Занять ресурс Ресурс свободен n Занять ресурс Освободить ресурс Освободить ресурс Базовые сети Петри с многоканальными переходами Занять ресурс Освободить ресурс Занять ресурс 1 1 Ресурс 1 свободен Ресурс n 1 свободен Ресурс свободен n-1 Занять ресурс Освободить ресурс Освободить ресурс Базовые сети Петри с кратными связями Сдана ЛР1 Сдана ЛР2 1 Сдана ЛР3 Кратность дуги 1 Количество сданных ЛР Допуск к экзамену 4 4 Допуск к экзамену 1 Сдана ЛР3 2 1 Сдана КР1 Сдана КР2 Количество сданных КР 1 2 1 Лекции Дисциплина 1 1 Начать семестр 34 17 34 Начало семестра 1 Практические Лабораторные Базовые сети Петри с кратными связями Сдана ЛР1 Сдана ЛР2 1 Сдана ЛР3 1 Количество сданных ЛР Допуск к экзамену 4 Допуск к экзамену 1 Сдана ЛР3 Сдана КР1 Сдана КР2 1 2 1 Количество сданных КР 1 1 Лекции Дисциплина 1 Начать семестр 34 34 17 Практические 17 34 Начало семестра 34 Лабораторные Математическое описание базовой сети Петри [Murata T. Petri Nets: Properties, Analysis and Applications. // Proceedings of IEEE. – 1989. - Vol.77, No.4. - P.541-580.] N ( P, T, A, W ) Базовая сеть Петри W: A - кратности дуг P P - множество позиций T T - множество переходов A P T T P - множество дуг PT Состояние сети Петри: M M P | M P Z , P P - состояние позиций T, T - множество входных и множество выходных позиций перехода Т P, P - множество входных и множество выходных переходов позиции Р Условие запуска перехода Т сети Петри: Запуск перехода Т сети Петри: P T M P WP,T P T M P M P WP,T P T M P M P WT , P Матричные уравнения состояний базовой сети Петри WT , P , T P a 0, T P WP ,T , T P aP ,T 0, T P P ,T M || M P || a aT, P - матрица выходов a aT, P - матрица входов - вектор маркировки a a a - матрица изменений Фундаментальное уравнение состояний базовой сети Петри: Mn M0 a x x - вектор количества запусков переходов a x 0 - Т-инвариант (цикличность функционирования) aT y 0 - S-инвариант (консервативность системы) Теория базовых сетей Петри Классификация сетей Петри: безопасные, ординарные, автоматные и др. Аналитическое исследование свойств модели Murata Т. Petri nets: Properties, Analysis and Applications // Proceedings of the IEEE. - April, 1989. - vol.77, No.44. – P. 541-580. Питерсон Дж. Теория сетей Петри и моделирование систем. - М.: Мир, 1984. – 264 с. Матричные уравнения состояний, исследование свойств через исследование инвариантов поведения и инвариантов состояний Расширения сетей Петри: ингибиторные, приоритетные, синхронные, самомодифицирующиеся, раскрашенные сети Петри Вычислимость сети Петри гарантируется эквивалентностью приоритетной сети Петри и ингибиторной сети Петри машине Тьюринга Котов В.Е. Сети Петри. - М.: Наука, 1984. - 158 с. Временные сети Петри Занять ресурс Освободить ресурс Обработать 3 3 Обработать 1 Ресурс свободен t=2,5 1 Ресурс свободен Переход с временной задержкой Временные сети Петри Освободить ресурс Занять ресурс 2 1 Обработать Ресурс свободен Обработать 2 t=2,5 Ресурс свободен Переход с временной задержкой Временные сети Петри Освободить ресурс Занять ресурс 2 1 Обработать Ресурс свободен Обработать 2 t=2,5 Ресурс свободен Переход с временной задержкой Временные сети Петри Занять ресурс 2 Освободить ресурс 1 Обработать 2 1 Обработать 1 Ресурс свободен t=2,5 1 Ресурс свободен Переход с временной задержкой Временные сети Петри Занять ресурс Освободить ресурс Обработать 30 30 Обработать t=2,5 Переход с временной задержкой Ресурс 1 свободен Ресурс 1 свободен t=10 30 30 Занять Обработать Освободить ресурс ресурс Обработать Временные сети Петри Освободить ресурс Занять ресурс 14 16 Обработать 14 16 Обработать t=2,5 Переход с временной задержкой Ресурс свободен Ресурс свободен t=10 15 1 14 Занять Обработать Освободить ресурс ресурс 25 4 Обработать Теория временных сетей Петри Классификация, исследование свойств Wang J. Timed Petri Nets: Theory and Application / J. Wang. - Kluwer Academic Publishers, USA Octоber, 1998. - 290p. Фундаментальные уравнения состояний детерминированной временной сети Петри, матричные уравнения состояний, исследование свойств через исследование инвариантов поведения и инвариантов состояний Зайцев Д.А. Инварианты временных сетей Петри // Кибернетика и системный анализ. – 2004. - №2. - С.92-106. Применения стохастической сети Петри к немарковским процессам функционирования Haas P. J. Stochastic Petri nets : modelling, stability, simulation / Peter J. Haas — Springer series in operations research. – 2002. -– 529p. Временные сети Петри с многоканальными переходами Многоканальный переход Т0 Р0 Обычный переход Т0 Р0 Р1 99 1 Р1 Многоканальный переход 100 Р0 Т0 Р1 100 Обычный переход Т1 Многоканальный переход Обычный переход Т2 Т0 Р0 Обычный переход Р1 100 Р0 100 Р1 Обычный переход k Тk Ограничитель количества каналов Временные сети Петри с конфликтными переходами С равной вероятностью По значению приоритета Занять ресурс 1 Занять Локальный Выч Ресурс 1 1 Занять ресурс 2 Занять Глобальный Выч Ресурс С заданной вероятностью Принятие решения о допуске к пересдаче 1 Принятие решения о недопуске к пересдаче Временные сети Петри с информационными связями Прибытие авто Контроль задолженностей успешный Переезд перекрестка 1 приоритет Информационная связь 1 3 Есть зеленый свет в направлении движения Формализация процессов управления 3 Количество задолженностей студента Формализация процессов принятия решений t=0 1 Контроль задолженностей неуспешный t=0 1 Сравнение с ингибиторной сетью Петри Т1 Т1 Р1 Р2 Р3 1 1 Р3 приоритет Р2 1 приоритет Р1 Ингибиторна я связь Р4 Т2 Р4 Т2 Информационные сети не мощнее ингибиторных сетей или сетей с приоритетами, но удобнее в использовании и алгоритмической реализации. Также, как, например, сети Петри с многоканальными переходами не мощнее обычных сетей Петри, но удобнее. Пример моделирования стохастической сетью Петри динамического управления распределением ресурсов Подсистема объекта управления Очередь заданий В 1 2 1 Общий ресурс 2 Очередь заданий А 2 Очередь заданий С 1 Количество выполненных заданий В Количество выполненных заданий А Количество выполненных заданий С Пример моделирования стохастической сетью Петри динамического управления распределением ресурсов Подсистема объекта управления Очередь заданий В 1 2 1 Общий ресурс 2 Очередь заданий А 2 Очередь заданий С Разница в количестве выполненных заданий В и других заданий 1 Сравнение количества выполненных заданий Равное количество обработанных заданий А,В,С Подсистема управления Разница в количестве выполненных заданий А и других заданий Пример моделирования стохастической сетью Петри динамического управления распределением ресурсов Подсистема объекта управления Очередь заданий В 1 2 1 Общий ресурс 2 Очередь заданий А 2 Очередь заданий С 1 Разница в количестве выполненных заданий А и других заданий Сравнение количества выполненных заданий Разница в количестве выполненных заданий А и других заданий Принятие решения о блокировании задач А и С Равное количество обработанных заданий А,В,С Р8 Р7 1 Принятие решения о снятии блокирования задач А и С Подсистема управления Пример моделирования стохастической сетью Петри динамического управления распределением ресурсов Подсистема объекта управления Очередь заданий В 1 2 1 Общий ресурс 2 Очередь заданий А 2 Очередь заданий С 1 Разница в количестве выполненных заданий В и других заданий Сравнение количества выполненных заданий Разница в количестве выполненных заданий А и других заданий Принятие решения о блокировании задач А и С Равное количество обработанных заданий А,В,С Р8 Р7 1 Принятие решения о снятии блокирования задач А и С Подсистема управления Уравнения состояний детерминированной временной сети Петри с конфликтными и многоканальными переходами [Зайцев Д.А. Инварианты временных сетей Петри // Кибернетика и системный анализ. – 2004. - №2. - С.92-106.] Временная сеть Петри S(n) (M (n), E(n)) - состояние сети Петри N ( P, T, A, W, R ) - временные задержки R:T M P (n) M p (n 1) WT , P uT (n RT ) T P M (n) M (n) W u n P,T T P P T P M P (n) 0, P P , v (n) & M (n) / W , P T P ,T P T 0 uT (n) vT (n), T T S (0) S 0 , n 1,2... n – номер такта модельного времени М p n - промежуточная маркировка, являющаяся результатом выхода маркеров из переходов uT n - количество каналов перехода T, запущенных в такте n vT n - количество каналов, для которых выполнено условие запуска в такте n Уравнения состояний стохастической временной сети Петри с конфликтными и многоканальными переходами, с информационными связями - информационные связи I P T Стохастическая сеть Петри N (P, T, A, W, K , I, R ) - временные задержки R : T - статус конфликтных переходов S(t ) (M(t ), E(t )) - состояние сети Петри K : T Z Z Определение момента ближайшего события: t n min min ET (t n 1 ) , t n t n 1 q T Выход маркеров из переходов 10.7 Изменение состояния, соответствующее моменту времени tn=10.7 3 T 100000 3 3 3 33.27 10 10 20 33.27 85.51 10.7 Вход маркеров в переходы 100000 10 1000000 q 1000000 127.1 85.51 127.1 ET(t) 10.7 ET(t) 15 33.27 1000000 85.51 127.1 21.7 11.2 22.1 ET(t) Состояние S(tn-1) S ( tn 1 Состояние S+(tn) ) S Состояние S(tn) ( tn ) S ( tn ) Преобразование сети Петри, соответствующее выходу маркеров из переходов D : S(t n 1 ) S(t n ) T T | Y (T , t n ) 1 if sT (tn 1 ) ET (tn 1 ) , E (tn ) ET (tn 1 ) \ ET (tn 1 )q | q sT (tn 1 ) else T P P Y (T , t n ) M P (tn ) M P (tn1 ) Y (T , tn ) WT ,P | sT (tn1 ) | T P - предикат, определяющий множество переходов, для которых осуществляется выход маркеров в момент времени min E (t ) t Y (T , t ) 1 T n 1 q n n q min E (t ) t Y (T , t ) 0 T n 1 q n n q sT (t ) - множество каналов перехода, которым соответствует наименьший из всех моментов выхода маркеров из перехода sT (t ) q | ET (t )q min ET (t )q q Преобразование сети Петри, соответствующее входу маркеров в переходы D : S(t n ) S(t n ) P P M P (tn ) M P (tn ) WP,T X (T , tn ) T P \ P T T | X (T , t n ) 1 tn RT if min ET (tn1 )q , q ET (tn ) ET (tn ) tn RT else X (T , t n ) - предикат, определяющий множество переходов, для которых осуществляется вход маркеров в момент времени tn T (t n ) X (T , t n ) 1, T (t n ) X (T , t n ) 0. (t n ) - подмножество множества переходов с выполненным условием запуска, которое формируется в результате выбора из конфликтных переходов, основывающегося на значениях приоритетов и вероятностей запуска переходов Преобразование сети Петри, соответствующее mкратному входу маркеров в переходы D m : S(t n ) S(t n ) m m : D (S(t n )) : M P (tn ) M P (tn ) P P T Z (T , t n ) 0 WP,T uT (tn ) T P \ P T T | X (T , t n ) 1 tn RT ... tn RT if min ET (tn1 )q , q uT ( t n ) ET (tn ) tn RT ... tn RT else ET (tn ) uT ( t n ) m где uT (t n ) X (T , t n ) i - представляет количество входов маркеров в переход Т i 1 в серии входов маркеров в переходы, соответствующей моменту времени t n Уравнения состояний стохастической временной сети Петри с конфликтными и многоканальными переходами, с информационными связями t n min T (t n 1 ) , t n t n 1 , T S(t1 ) D m S(t 0 ) , m S(t n ) D D (S(t n 1 ) , n 2,3... где T (t ) min ET (t )q m : D Z (T , t n ) P T P T q m (S(t n )) : - ближайший момент выхода маркеров из перехода T Z (T , t n ) 0 - достигается состояние, при котором ни один из переходов сети Петри не запускается - предикат, определяющий множество переходов с выполненным условием запуска в момент времени M P (t n ) WP ,T Z (T , t n ) 1 M P (t n ) WP ,T Z (T , t n ) 0 tn Пример. Исследование параметров динамического управления распределением ресурсов Время выполнения задачи С = 1, задачи А =0,157, задачи В = 0,333. Параметр «a» = кратность дуги, соединяющих позицию «Разница в количестве выполненных заданий А и других заданий» и переход «Сравнение количества выполненных заданий» = кратность дуги, соединяющих позицию «Разница в количестве выполненных заданий А и других заданий» и переход «Принятие решения о блокировании задач А и С» Параметр «b» = кратность дуги, соединяющих позицию «Разница в количестве выполненных заданий С и других заданий» и переход «Сравнение количества выполненных заданий» = кратность дуги, соединяющих позицию «Разница в количестве выполненных заданий С и других заданий» и переход «Принятие решения о блокировании задач А и С» Критерий = сумма значений «количество выполненных заданий» всех классов a 1, b 2 Критерий = сумма значений «разница в количестве выполненных заданий» всех классов a 2, b 1 Критерий = количество выполненных заданий класса С a 2, b 2 Матричные уравнения состояний стохастической временной сети Петри с конфликтными и многоканальными переходами, с информационными связями a P ,T n WP ,T , T P \ P 0, T P \ P a P,T ET (t ) , T , vT (t ) - количество активных каналов 0, T . перехода WT , P , T P 0, T P T (t n ) Z (T , t j ) uT (t j ) j 1 n T (t n ) Y (T , t j ) | sT (t j 1 ) | j 1 M(t ) M P (t ) v(t ) vT (t ) a aT, P γ(t ) T (t ) a aT, P η(t ) T (t ) - общее количество входов в переход в течение всего интервала времени t 0 , t n - общее количество выходов из перехода в течение всего интервала времени t 0 , t n a a a Введем матричную переменную μ(t ) M(t ) a v(t )- вектор расширенной маркировки μ(tn ) μ(t0 ) a γ(tn ) η(t n ) v(t n ) v(t 0 ) γ(t n ) Сравнение матричных уравнений состояний стохастической временной сети Петри с известными уравнениями состояний сети Петри I P T (t n ) min T (t n ), ηT (t n ) Матричные уравнения состояний стохастической временной сети Петри без информационных связей - количество завершенных запусков перехода v(tn ) v(t0 ), η(tn ) γ (tn ) χ (tn ) μ M RT 0 vT (t ) 0 μ(t ) M(t ), η(t n ) γ(t n ) M n M 0 AT x M a χ (t n ) M (t n ) M (t 0 ) a a χ (t n ) Фундаментальное уравнение состояний базовой сети Петри RT const tn t0 n t t 1, t 0 0 t n n M(n) M(0) a a γ (n) a v(n) v(0) M(n) M(0) a η(n) a γ (n) M(n) M(0) a γ (n) v(n) v(0) a γ (n) Фундаментальное уравнение состояний детерминированной временной сети Петри Недостаток сети Петри ООП и сети Петри “При проектировании сложной программной системы необходимо составлять ее из небольших подсистем, каждую из которых можно отладить независимо от других.” Гради Буч Блочная структура сети Петри [Ямпольський Л.С., Лавров О.А. Штучний інтелект у плануванні та управлінні виробництвом. – К.:Вища шк., 1995. - 255с. ] [Стеценко І.В., Бойко О.В. Система імітаційного моделювання засобами сіток Петрі // Математичні машини і системи. – Київ, 2009. – №1. – С.117-124. ] Функциональные подсети [Dmitriy A. Zaitsev Functional Petri net // Universite Paris Paris-Dauphine. - Cahier N 224. – mars 2005. – P.1-62.] Объектно-ориентированные сети Петри [Lakos C. Object Oriented Modeling with Object Petri Nets // Concurrent Object-Oriented Programming and Petri Nets. - 2001. - P. 1-37. ] [Lakos C., Keen C. LOOPN++: a new language for object-oriented Perti nets, Technical Report R94-4, Networking Research Group, Univesity of Tasmania,Australia, April 1994.] Иерархическая объектно-ориентированная сеть Петри [Hue Xu Timed Hierarchical object-oriented Petri net // Petri Net, Theory and Applications, Book edited by: Vedran Kordic. - I-Tech Education and Publishing, Vienna, Austria. - 2008. - P.253-280. ] Высокоуровневые сети Петри для описания ООП [Hong,J.E., Bae D.H. High-level Petri net for incremental specification of object-oriented system requirements // Institution of Engineering and Technology, IEEE Proceedings – Software. - 2001. Vol. 148, No.1 - P.11-18. ] Понятие Петри-объекта PetriSim — name: String — Net: PetriNet — priority: int — timeMod: double — eventMin: PetriT — timeMin: double — STOP: boolean — timeCurr: double + setPriority(int a) + EventMin() + findActiveT() + DoConflikt(ArrayList<Petri_T> TT) + Start() + NextEvent() + DoStatistica() + DoТ() + Go(double time) Класс Петри-имитатор Поле Сеть Петри Поле Время моделирования Поле Момент времени ближайшего события Поле Текущий момент времени Метод Вход маркеров в переходы Метод Выполнить событие: выход маркеров и вход маркеров в переходы, соответствующие текущему моменту времени Метод Выполнить статистические вычисления Метод Выполнить специфические действия, соответствующие переходу Метод Выполнить имитацию до момента времени time Определение. Петри-объектом (PetriObj) называется объект, являющийся наследником объекта Петри-имитатор (PetriSim): PetriObj inherit PetriSim Петри-объект PetriObj PetriSim Понятие Петри-объектной модели Определение. Петри-объектной моделью называется модель, являющаяся результатом агрегирования Петри-объектов: Model ON N где O N inherit PetriSim Model Class С9 Class С8 Class C1 Class C3 Class C2 Class С4 Class С6 Class С5 PetriSim Class С7 Связи между Петри-объектами Петри-объектная модель Петри-объект класса D Общая позиция 1 Петри-объект класса В Петри-объект класса С Общая позиция Инициализация событий Инициализация событий Петри-объект класса С Инициализация событий Петри-объект класса А 1 Общая позиция Петри-объект класса А Утверждение 1 Петри-объектная модель описывается стохастической временной сетью Петри, являющейся объединением сетей Петри-объектов, из которых она состоит: ~ ModelNet ~ N N ~ ~ ~ N (TN , TN , A N , WN , K N , I N , R N ) где ~ ~ N : P TN N N T TN N ~ ~ A AN N ~ TN T P P | T T : (T , P) A N T TN ~ AN AN UN ~ ~ W WN N K K N N I IN N R RN N ~ WN WN w N U N (T , P) | T Tk , P Pl , wk ,l 0 - множество дуг Петри- объекта, соединяющих его с другими объектами посредством инициализации событий Следствие. Петри-объектная модель является вычислимой. Утверждение 2 Преобразование D ~ сети Петри-объектной модели N ~ эквивалентно преобразованию D N сетей Петри-объектов ~ ~ ~ N (TN , TN , A N , WN , K N , I N , R N ) Следствие. Состояние Петри-объектной модели, являющееся результатом выхода маркеров из переходов сети Петри-объектной модели, описывается состоянием ее Петри-объектов: ~ ~ D (S1 (t n 1 )) S1 (t n ) ... ... ~ ~ S (t n ) D S(t n 1 ) D (S N (t n 1 )) S N (t n ) ... ... ~ ~ D ( S ( t )) S ( t ) L n 1 L n Утверждение 3 Преобразование D сети Петри-объектной модели ~ ~ N N эквивалентно преобразованию D сетей Петри-объектов ~ ~ ~ N (TN , TN , A N , WN , K N , I N , R N ), для которых в случае существования общих позиций Петриобъектов решен конфликт Следствие. Состояние Петри-объектной модели, являющееся результатом входа маркеров в переходы сети Петри-объектной модели, описывается состоянием ее Петри-объектов. ~ ~ D (S (t n )) S1 (t n ) 1 ... ... ~ ~ S(t n ) D S (t n ) D (S N (t n )) S N (t n ) ... ... ~ ~ D (S L (t n ))) S L (t n ) Уравнения состояний Петри-объектной модели Следствие. Состояние Петри-объектной модели в каждый момент времени описывается состоянием ее Петри-объектов. ~ ~ D (S1 (t n 1 )) D m D (S 1 (t n 1 )) ... ... m m ~ ~ S(t n ) D D (S(t n 1 )) D D (S N (t n 1 )) D m D (S N (t n 1 )) ... ... ~ m ~ D (S L (t n 1 )) D D (S L (t n 1 )) Уравнения состояний Петри-объектной модели t n min N , t n t n 1 N ~ D m D (S 1 (t n 1 )) ... m ~ S(t n ) D D (S N (t n 1 )) ... m ~ D D (S L (t n 1 )) D m S (t ) 1 0 ... m S(t1 ) D S N (t0 ) ... m D S ( t ) L 0 ~ S N (t n ) : T TN Z (T , t n ) 0 Алгоритм имитации Петри-объектной модели Формировать список Петри-объектов; m Осуществить преобразование D (метод Start()); Пока не достигнут момент окончания моделирования продвинуть время в момент ближайшего события; определить список конфликтных объектов и выбрать объект из списка конфликтных объектов; m для выбранного объекта выполнить преобразование D D (методы NextEvent(), DoT()) ; m для всех других объектов осуществить преобразование D (метод Start()); Вывести результаты моделирования. Анализ вычислительной сложности алгоритма: O T V timeMod mean T V V T mean T V 2 T V K 2 2 T T Среднее количество активных каналов перехода T T Среднее количество конфликтных переходов Точность результатов моделирования t 0=2 К ВИБОР МАРШРУТА ГЕНЕРАТОР 1 t1=0,6 К P12=0,15 1 2 t2=0,3 К P13=0,13 СМО 3 t3=0,4 К P14=0,3 4 К 4 n n t4=0,1 Результаты аналитического моделирования Результаты Петри-объектного моделирования Средняя длина очереди СМО1 = 1,786 Средняя длина очереди СМО2 = 0,003 Средняя длина очереди СМО3 = 0,004 Средняя длина очереди СМО4 = 0,00001 Средняя занятость устройств СМО1 = 0,714 Средняя занятость устройств СМО2 = 0,054 Средняя занятость устройств СМО3 = 0,062 Средняя занятость устройств СМО4 = 0,036 Средняя длина очереди СМО1 = 1,766 Средняя длина очереди СМО2 = 0,0041 Средняя длина очереди СМО3 = 0,0035 Средняя длина очереди СМО4 = 0,00001 Средняя занятость устройств СМО1 = 0,714 Средняя занятость устройств СМО2 = 0,054 Средняя занятость устройств СМО3 = 0,065 Средняя занятость устройств СМО4 = 0,035 СМО Исследование эффективности алгоритма имитации Петри-объектной модели б) переходы со стохастическими задержкамии а) переходы с детерминированными задержками 700 Петри-объектная Петрі-об'єктна модель модель Время выполнения (секунд) 600 Время выполнения (секунд) 1200 Сеть Петри Мережа Петрі 500 400 300 200 100 Сеть Петри Мережа Петрі Петри-объектная Петрі-об'єктна модель модель 1000 800 600 400 200 0 0 100 200 300 400 500 600 700 Сложность модели (количество событий) 800 900 1000 100 200 300 400 500 600 700 800 Сложность модели (количество событий) 900 1000 Исследование эффективности алгоритма имитации Петри-объектной модели при различной сложности объектов Время выполнения (секунд) 700 5 подій 600 10 подій 20 подій 500 50 подій 400 300 200 100 0 100 200 300 400 500 600 700 800 Сложность модели (количество событий) 900 1000 Петри-объектная модель - это средство формального описания систем, которое: 1) имеет математическое описание, а следовательно, имеет большую степень абстракции и наиболее формализованное описание алгоритма имитации; 2) допускает не только имитационные методы исследования, но и аналитические методы; 3) позволяет создавать модели больших и сложных систем с наименьшими затратами времени и труда; 4) основывается на временной стохастической сети Петри, а значит, допускает наиболее детализированное описание дискретно-событийных процессов функционирования; 5) основывается на объектно-ориентированной технологии, а значит, допускает моделирование структуры больших систем и совместимость с другими информационными технологиями. Практическое применение Петри-объектного моделирования • Моделирование систем управления (учебный процесс, транспортные системы) • Моделирование параллельных вычислений (грид-системы) • Моделирование процессов управления организациями и предприятиями (процессно-ориентированный подход к управлению) • Распределенное моделирование (модель большой системы строится с участием коллектива разработчиков). Это идея и концепция, которой придерживались при разработке ООП • Петри-процессор (Петри-машина) и «новая парадигма вычислений» Петри-объектная модель системы управления распределенными вычислительными ресурсами Архитектура двухуровневой грид-системы Метапланировщик Локальный планировщик Поль -зователь Поль -зователь Локальный планировщик Поль -зователь Поль -зователь Часть доступного ресурса: Локальный планировщик Пользователь Поль -зователь xi pi pi i A xi i 1 Пользователь Поль- Пользова- зователь тель Петри-объектная модель системы управления распределенными вычислительными ресурсами ПОЛЬЗОВАТЕЛЬ А Потребность задания в ВР Задание, которое выполняется Количество активных пользователей 1 Нет задания, которое выполняется Петри-объектная модель системы управления распределенными вычислительными ресурсами ПОЛЬЗОВАТЕЛЬ Потребность задания в ВР Задание, которое выполняется Количество активных пользователей 1 Количество свободного виртуального ВР Нет задания, которое выполняется Информация о доступном количестве виртуального ВР пользователя Информация о доступном количестве виртуального ВР узла ЗАДАНИЕ Петри-объектная модель системы управления распределенными вычислительными ресурсами ПОЛЬЗОВАТЕЛЬ Потребность задания в ВР Задание, которое выполняется Количество активных пользователей 1 Количество свободного виртуального ВР Нет задания, которое выполняется Информация о доступном количестве виртуального ВР пользователя Информация о доступном количестве виртуального ВР узла ПЛАНИРОВЩИК ЗАДАНИЕ Петри-объектная модель системы управления распределенными вычислительными ресурсами ПОЛЬЗОВАТЕЛЬ Потребность задания в ВР Задание, которое выполняется Количество активных пользователей 1 Количество свободного виртуального ВР МЕТА-ПЛАНИРОВЩИК Нет задания, которое выполняется Информация о доступном количестве виртуального ВР пользователя Информация о доступном количестве виртуального ВР узла ПЛАНИРОВЩИК ЗАДАНИЕ Сеть Петри-объекта «Планировщик» Новый такт управления Начать распределение Расчет части доступного ресурса Завершить распределение 1 Общее количество предоставленного ВР А Количество свободного виртуального ВР Информация о количестве свободного виртуального ВР Информация о доступном количестве виртуального ВР пользователя А Общее количество предоставленного ВР В Информация о доступном количестве виртуального ВР пользователя В 200 С Информация о доступном количестве виртуального ВР пользователя С D Информация о количестве виртуального ВР пользователя D Общее количество предоставленного ВР Общее количество предоставленного ВР Java-реализация модели системы управления распределенными вычислительными ресурсами Результаты исследования влияния типа управления на эффективность функционирования системы 1 0,8 Динамическое управление Динамічне управ ління 0,6 Статическое управ управление Статичне ління 0,4 0,2 25 00 16 00 12 00 90 0 70 0 50 0 30 0 10 0 0 25 Критерий (относительная пропускная способность системы) 1,2 Количество ресурса пользователя А Заключение Разработаны теоретические основы новой технологии моделирования систем, объединяющей в себе объектноориентированную технологию и технологию имитационного моделирования стохастической сетью Петри. Эффективность Петри-объектной технологии обеспечивается сокращением затрат труда на алгоритмическую реализацию модели системы и значительным повышением скорости вычислений модели. Формализация средствами Петри-объектного моделирования является мощным инструментом исследования сложных дискретно-событийных систем Дальнейшие исследования связаны с усовершенствованием библиотеки Java-классов Петри-объектного моделирования; разработкой графического интерфейса ввода сетей Петриобъектов; разработкой WEB-версии библиотеки java-классов Петриобъектного моделирования поиском эффективных инструментов исследования аналитических свойств модели на основе матричных уравнений; разработкой библиотеки Петри-объектного моделирования распределенных систем. Спасибо за внимание!