- •Введение
- •Глава 1. Основные понятия теории моделирования
- •1.1. Классификация видов моделирования
- •1.2. Жизненный цикл компьютерной модели
- •1.3. Вычислительный эксперимент
- •1.4. Наиболее известные методологии и системы компьютерного моделирования
- •1.4.1. Универсальные системы моделирования
- •1.4.2.Системы моделирования бизнес-процессов
- •1.5. О моделировании вычислительных систем
- •Глава 2. Введение в сети Петри
- •2.1. Обыкновенные сети Петри
- •2.1.1. Формальное определение
- •2.1.2. Графы сетей Петри
- •2.1.3. Пространство состояний сети Петри
- •2.1.4. Основные свойства сетей Петри
- •2.1.5. Некоторые обобщения сетей Петри
- •Инварианты сетей Петри
- •2.2. Раскрашенные (цветные) сети Петри
- •2.2.1. Мультимножества
- •2 2.2. Формальное определение cpn
- •2.2.3. Функционирование cpn
- •2.2.4. Расширения cpn
- •2.2.5. Сравнение формализмов обыкновенных и раскрашенных сетей Петри
- •2.2.6. О моделирующих возможностях сетей Петри.
- •2.3. Моделирование дискретных систем
- •2.3.1. Моделирование вычислительных систем
- •1. Простейшая система массового обслуживания.
- •2.3.2. Моделирование программ
- •1. Последовательная модель программирования
- •2. Модель параллелизма данных
- •3. Моделирование некоторых структур параллельного программирования. Семафоры
- •4. Метод асинхронного программирования
- •3 Моделирование протоколов передачи данных
- •1. Описание работы протокола
- •3. Временной механизм работы cpn
- •4. Описание работы cpn
- •2.3.4. Об исследовании сетей Петри с помощью эвм
- •Глава 3. Моделирование вычислительных Процессов с помощью цепей Маркова
- •3.1. Определение цепи Маркова
- •3.3. Классификация состояний цепей Маркова
- •3.4. Оценка длительности пребывания процесса в множестве невозвратных состояний
- •3.5. Исследование динамики цепей Маркова при большом числе шагов
- •4.1. Задачи и упражнения по главе 2
- •4.2. Задачи и упражнения по главе 3
- •1. Запуск программы и построение графа сети Петри
- •2. Задание цветовых множеств, переменных и начальной маркировки
- •Библиографический список
- •Глава 1.Основные понятия теории моделирования 5
- •Глава 2 Введение в сети Петри 21
- •Глава 4. Задания для самостоятельной работы 148
- •Глава 5. Лабораторный практикум 162
2.2. Раскрашенные (цветные) сети Петри
В последние годы широко используется методология моделирования дискретных систем, основанная на использовании раскрашенных (цветных) сетей Петри - Coloured Petri Nets (CPN). Эта методология является обобщением формализма обыкновенных сетей Петри па случай многих видов ресурсов и позволяет более эффективно моделировать сложные системы. На базе методологии CPN разработан специальный язык моделирования - Coloured Petri Net Modelling Language (CPN ML), и созданы соответствующие программные средства.
Правила функционирования CPN сложнее правил для обыкновенных сетей Петри. В то же время структура сети – двудольный ориентированный мультиграф и основной шаг работы – изменение маркировок при срабатывании переходов- принципально не различаются.
Ниже рассмотрено несколько упрощенное и по возможности неформализованное описание CPN, ориентированное на синтаксис языка Паскаль. Полное и строгое описание CPN содержится в книге Курта Йенсена [10].
2.2.1. Мультимножества
Одним из важных понятий, используемых в теории раскрашенных сетей Петри, раскрашенных сетей Петри, является понятие мультимножества.
Формально мультимножеством m на непустом множестве S называется функция m : S->N , где N - множество натуральных чисел.
Иными словами, мультимножество т состоит из элементов множества S, каждый из которых может быть повторен п раз (п - переменная целого типа). Мультимножество может быть представлено в виде кортежа, в котором перечислены входящие в него элементы с указанием их кратности. Указатель кратности - выражение целого типа - ставится перед названием элемента множества и отделяется от него кавычкой. Отсутствие какого-либо элемента из S в мультимножестве эквивалентно его присутствию с нулевой кратностью. Формальномультимножество на S можно представить суммой
Пример. Пусть S = {a,b,c,d} - множество элементов и т = (2ха,ГЬ, (i + l)"d) - мультимножество на S. Последняя запись означает, что т состоит из двух элементов a, одного элемента b, нуля (ни одного) элементов c и i+1 элементов d , где i переменная типа int eqer.
Рассмотрим операции над мультимножествами.
Сложение мультимножеств.
Пусть m1 = Uμi(s)s, m2 = Uμ2 (s)s,
Тогда m, + m2 = U(μ1(s) + μ2(s))s.
Умножение мультимножества на скаляр.
Пусть m – мультимножество, к – скаляр типа int eqer.
Тогда k * m =
3. Сравнение мультимножеств. Мы будем говорить, что т, ≤ т?,
если \-/s Є S: μ1 (s) ≤ μ2 (s).
4. Вычитание мультимножеств. Если т, ≤ т, , то можно определить разность мультимножеств:
т2 – m2 = U(μ2{s)-μ1{s)}s ■
5. Мощность мультимножества - суммарное число элементов в мультимножестве
|m | = Σ μ(s)