Моделирование ИС в CPN Tools

Автор работы: Пользователь скрыл имя, 20 Января 2013 в 17:53, реферат

Краткое описание

CPN Tools – это специальная моделирующая система, которая использует язык сетей Петри для описания моделей. Система была разработана в Университете Орхуса в Дании и свободно распространяется для некоммерческих организаций через сайт Уровень предоставляемого сервиса позволяет классифицировать CPN Tools как промышленную моделирующую систему. Она была использована в большом количестве реальных проектов, особенно в области телекоммуникаций. В последнее время корпорация Nokia применяет CPN Tools для управляемой моделью разработки нового поколения мобильных телефонов.

Содержание

Введение…………………………………………………………………….5
1. Класс сетей Петри, реализованный в CPN Tools……………………... 5
1.1. Граф сети Петри и язык CPN ML.………..…………………….. 6
1.2. Пример моделирования …………….…………..………………. 7
2. Назначение и основные функции CPN Tools…………………………. 10
2.1. Назначение CPN Tools…………………………………………... 10
2.2. Основные функции CPN Tools…………………….…………… 1
3.Литература………………………………………..

Прикрепленные файлы: 1 файл

tools.doc

— 354.50 Кб (Скачать документ)

           Министерство  образования и науки, молодежи и

                                         спорта Украины

                Национальный аэрокосмический университет

                              им. М.Е.Жуковского «ХАИ»

                           Факультет заочного обучения

                                

 

                                     РЕФЕРАТ

 

            на тему: Моделирование ИС в CPN Tools

 

по дисциплине:____________________________________

                            ____________________________________

                           

 

 

                                                    Выполнил:  студент гр.96Т1

                                                                                 Лысогор В.С                                                   

                                                           Проверил:

                                                                                ________________

                            

 

                        

                                             Харьков – 2013г.

 

 

Содержание

 

Введение…………………………………………………………………….

 

 

 

5

1. Класс сетей Петри, реализованный в CPN Tools……………………...

5

1.1. Граф сети Петри и язык CPN ML.………..……………………..

6

1.2. Пример моделирования …………….…………..……………….

7

2. Назначение и основные функции CPN Tools………………………….

10

2.1. Назначение CPN Tools…………………………………………...

10

2.2. Основные функции CPN Tools…………………….……………

11

 

 


3.Литература………………………………………..

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Введение

 

CPN Tools – это специальная моделирующая система, которая использует язык сетей Петри для описания моделей. Система была разработана в Университете Орхуса  в Дании  и свободно распространяется для некоммерческих  организаций через сайт Уровень предоставляемого сервиса позволяет классифицировать CPN Tools как промышленную моделирующую систему. Она была использована в большом количестве реальных проектов, особенно в области телекоммуникаций. В последнее время корпорация Nokia применяет CPN Tools для управляемой моделью разработки нового поколения мобильных телефонов.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Класс сетей Петри, реализованный в CPN Tools

 

CPN Tools предлагает очень мощный класс сетей Петри для описания моделей.  Согласно стандартной  классификации такие сети называют иерархическими временными раскрашенными сетями Петри. Было доказано, что они эквивалентны машине Тьюринга и составляет  универсальную алгоритмическую систему. Таким образом, произвольный объект может быть описан с помощью этого класса сетей.

Простейшая концепция раскрашенной сети Петри использует различные типы фишек. Тип фишки  определен натуральным числом и  визуально представлен как цвет: 1 – красный, 2–синий, 3–зеленый, и т.д. Концепция раскрашенной сети  Петри CPN Tools  более сложная. Такие сети часто

называют обобщенными раскрашенными сетями, так как тип фишки представлен абстрактным типом данных, как в языках программирования. Термин «раскрашенная» сохраняется исторически, но теперь очень трудно представить такие «цвета» визуально.

Временные сети Петри используют понятие модельного времени для описания продолжительности действий в реальных объектах. В отличие от классических сетей Петри, где срабатывание перехода происходит мгновенно, срабатывание перехода во временной сети связано с определенной

продолжительностью или временной задержкой. Это позволяет анализировать временные характеристики реальных объектов, например, время отклика как характеристику качества обслуживания сети.

Иерархические сети обеспечивают построение сложных моделей. В таких сетях элемент может быть представлен другой сетью. В CPN Tools переход может быть замещен дополнительной сетью. Таким  образом, получается вложенная конструкция: сеть внутри сети. Количество уровней иерархии не имеет принципиальных ограничений. Отметим, что, такой подход широко

распространен в языках программирования, где процедуры используются для управления сложностью.

 

 

1.1. Гpаф сети Петри и язык CPN ML

 

 

В CPN Tools язык описания моделей представляет собой сочетание графа сети Петри и языка программирования CPN ML.

Граф сети Петри – двудольный ориентированный граф. Он состоит из вершин двух типов: позиций, представленных кругами или овалами и переходов, представленных прямоугольниками:

 

Позиция Переход


 

 

 

 

 

Дуги соединяют позиции и переходы:

 

 

p1  Дуга


 

 

 

 

Дуга 


t1  p3

 

Дуга


 

 

p2

 

 

 

В сетях Петри также используется понятие фишки. Фишка – динамический элемент, расположенный в  позициях, который перемещается в результате срабатывания перехода:

 

 

2`token 

2`token

 

 

 

p1  2  2`token x

t

x

t1  p3

 

x



p1  1 1`token x

t

 

t1 x 

 

 

 

x


p3  1 1`token


 

t

 

3`token 

3`token

 

 

 

p2  3  3`token 

p2  2 2`token

 

 

t  t

 

В классических сетях Петри все фишки одинаковые и элементарные. В раскрашенных сетях Петри фишки различные. Рассмотрим пример студентов, обедающих пирогами. Имеется две фишки: student (студент), pasty (пирог). Голодный студент становится сытым после того, как съедает пирог:

 

7

 

 

 

food 

5`pasty

5`pasty y

p

 


x

3`student 

 

 

 

x eat 

 

 

 

replete student


 

food

 

 

 

 

hungry 

5`pasty

4 4`pasty y

p

 

x

3`student 

 

 


x eat 

 

 

 

replete student 

 

 

 

 

1 1`student s

 

hungry student 

3`student

 


student 

2   2`student

 

s

 

 

В CPN Tools включен специальный язык программирования для описания атрибутов элементов сети. Этот язык обеспечивает описание множеств цветов, переменных, констант, функций и процедур. В вышеуказанном примере используются следующие описания:

 

colset s=unit with student; colset p=unit with pasty; var x:s;

var y:p;

 

Определены два множества цветов: множество s с элементом student и множество p с элементом pasty. Позиции «hungry student» (голодный студент) и «replete student» (сытый студент) имеют множество цветов s с фишкой student. Позиция food (пища) имеет множество цветов p с фишкой pasty. Чтобы запустить переход eat (кушать), необходимо наличие двух фишек: student и pasty. Переменные x и y используются, чтобы извлечь фишки из входных позиций и поместить новую фишку в выходную позицию.

Пример иллюстрирует способ, с помощью которого могут быть обработаны различные типы фишек. В моделях телекоммуникационных систем множества цветов могут быть более сложными и представлять, например, для случая Ethernet, кадры, строки таблицы коммутации, и т.д.

В отличие от классических сетей Петри, в раскрашенных сетях у позиций,

переходов и дуг есть свои атрибуты. В вышеуказанном примере позиция имеет

имя – «hungry student», множество цветов – s, начальную маркировку –

3`student и конечную маркировку 2` student после того, как один из

студентов  съел пирог. Переменная x позволяет  выбрать произвольного студента согласно множеству цветов переменной; переменная y позволяет выбрать произвольный пирог. Студент, который был извлечен переменной x из позиции «hungry student», будет помещен в позицию «replete student», так как выходная дуга перехода eat, подписана именем той же самой переменной x.

 

 

1.2. Пример моделирования

 

Рассмотрим более сложный пример для предварительного изучения CPN Tools. Пример взят из хорошо известной сказки о Золушке. Мачеха приказала Золушке отсортировать зерна; Фея послала мышей сортировать зерна,  в то время как Золушка едет на балл.

 

8

 

 

go home 

u

tranport

p

 

 

 

x  u

 

 

 

1`Cinderella

Cinderella home


 

x x

1`pumpkin 

 

 

 

go to ball 

 

 

 

x

ball

c

 

 

 

 

1    1`Fairy 

x

 

Fairy 

sack of rice

g

 

 

supernature


z  12`mouse magic 


mice


if y=rice then 1`rice else empty

 

 

sack of wheat

 

 

v

1000`rice++2000`wheat++3000`oat

 

 

 

1000`rice++

6000  2000`wheat++

3000`oat 

 

 

sack with y mixture

 


 

 

sort 

 

if y=wheat then 1`wheat else empty

 

 

if y=oat then 1`oat else empty

 

 

 

sack of oat

g

 

В этой раскрашенной сети Петри используются следующие описания множеств цветов и переменных:

 

colset

p=unit

with

pumpkin;

colset

c=unit

with

Cinderella;

colset

g=with

rice

| wheat | oat;

colset

m=unit

with

mouse;

colset

f=unit

with

Fairy;

var x:

c;

   

var y:

g;

   

var z:

f;

   

var u:

p;

   

var v:

m;

   

В примере есть четыре множества цветов: f с фишками под названием Fairy (Фея), c с фишками под названием Cinderella (Золушка), p с фишками под названием Pumpkin (Тыква) и g с тремя видами фишек (сортами зерен) под названием rice  (рис),  wheat (пшеница),  oat (овес).   В  начальной маркировке   разрешен один  переход Magic (Волшебство), который  подсвечен   зеленым   цветом.   Разговаривая с Золушкой, Фея создает 12 мышей и 1 тыкву переходом Magic и исчезает. Путешествие Золушки на балл и сортировка зерен – параллельные события, и они могут происходить одновременно в любом порядке. Тыква используется для обеспечения  возможности срабатывания переходов  «go to ball» (ехать на  балл) и «go home» (ехать  домой),  чтобы перенести Золушку  на  балл и обратно.  Мыши используются  для обеспечения

 

9

 

возможности срабатывания перехода Sort (Сортировка), чтобы выбирать зерна различных сортов.

Обсудим направления   дуг и надписи на   них. В переходе Magic Cinderella  не изменяется, так же как Pumpkin в переходах «go to ball» и  «go home»,  поэтому  используются двунаправленные   дуги. Остальные  дуги  – однонаправленные. Дуга,  соединяющая  позицию  с переходом, извлекает фишку соответствующего  множества цветов. Фишка извлекается в соответствии с надписью входной дуги перехода. В этом примере все надписи представлены переменными соответствующего множества цветов. Например, у входной дуги перехода   sort есть надпись y; y – переменная множества цветов g; таким образом, из позиции «sack with mixture» (мешок  со    смесью зерен) извлекается произвольное зерно.  Более сложные атрибуты входных дуг переходов будут изучены далее.

Выходные дуги переходов создают новые фишки. Новая фишка может быть создана (заново) или может совпадать с любой фишкой, извлеченной из входной позиции. Например, в переходе «go to ball» фишка Cinderella извлекается из позиции home (дом) переменной x по атрибуту входной дуги и та же самая фишка Cinderella будет помещена в позицию ball (балл) в соответствии с атрибутом x на  выходной дуге. Переход Magic более сложный: Fairy исчезает после срабатывания этого перехода, потому что она извлечена  входной дугой с надписью z, и переменная  z не используется в атрибутах выходных дуг; Cinderella в позиции home не изменяется переходом Magic, так как используется двунаправленная дуга с надписью x, то есть, проверяется только наличие фишки в позиции home; 12 mice (мышей) и 1 pumpkin создаются, соответствующие константы подписаны на выходных дугах. Теперь рассмотрим модель после 5000 шагов моделирования:

 

 

go home 

u

tranport 

1`pumpkin p

Информация о работе Моделирование ИС в CPN Tools