Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Доррер Методы моделирования дискретных систем.doc
Скачиваний:
60
Добавлен:
12.09.2019
Размер:
3.95 Mб
Скачать

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)≥0 - число появлений (кратность) элемента s в мультимножестве m.

Пример. Пусть S = {a,b,c,d} - множество элементов и т = (2ха,ГЬ, (i + l)"d) - мультимножество на S. Последняя запись означает, что т состоит из двух элементов a, одного элемента b, нуля (ни одного) элементов c и i+1 элементов d , где i переменная типа int eqer.

Рассмотрим операции над мультимножествами.

  1. Сложение мультимножеств.

Пусть m1 = i(s)s, m2 = Uμ2 (s)s,

Тогда m, + m2 = U(μ1(s) + μ2(s))s.

  1. Умножение мультимножества на скаляр.

Пусть m – мультимножество, к – скаляр типа int eqer.

Тогда k * m =

3. Сравнение мультимножеств. Мы будем говорить, что т, ≤ т?,

если \-/s Є S: μ1 (s) ≤ μ2 (s).

4. Вычитание мультимножеств. Если т,т, , то можно определить разность мультимножеств:

т2m2 = U(μ2{s)-μ1{s)}s

5. Мощность мультимножества - суммарное число элементов в мультимножестве

|m | = Σ μ(s)