19. Приложения Приложение 1 и/или граф
Специальный тип графа, широко используемый в искусственном интеллекте и программировании,а также в задачахтеории принятия решений, исследовании операцийи системном анализе, получил название И/ИЛИ граф. Граф такого типа описывает развитие некоторого процесса от начальной вершины графа (см. рис. ) к множеству конечных вершин. Все остальные (не начальные и не конечные) вершины делятся на два типа: вершины И и вершины ИЛИ.
х2
Входная вершина
х1х3
И ИЛИ
х4
И
И
ИЛИ
И
z1z2z3
Выходные вершины
Рис.
Вершина первого типа возбуждаются только при наличии сигналов активизации на всех ее входах, а вершина ИЛИ —при появлении хотя бы одного сигнала активизации на любом из ее входов. Активизированная вершина передает сигналы активизации на все сопряженные с ней вершины. Внешние сигналы активизации порождаются внешними источниками, которыми, в частности, могут быть выходные вершины других И/ИЛИ графов. Используя обозначения, принятые валгебре логики, можно записать, что:
z1 =х2(х1 Vх3);
z2 =x1x2x3х4;
z3 =(x2 Vх3)х4.
Приложение 2 Сеть Петри
При формальном описании совокупности процессов, протекающих одновременно, важно уметь не только описать течение каждого процесса, но и формализовать связи и взаимодействия между различными процессами. В информатике эта проблема возникает при описании параллельных процессов, связанных с обработкой информации. В параллельных вычисленияхили впараллельном программированииэта проблема —одна из важнейших.
Известно немало различных формальных моделей, созданных для описания поведения взаимодействующих параллельно протекающих процессов. Наиболее популярная модель такого типа —сеть Петри.
Сеть Петри —это ориентированныйграф, содержащий вершины двух видов —позиции и переходы. Позиции принято изображать кружками, переходы —черточками или планками. Из позиций дуги ведут только в переходы, из переходов —только в позиции. В позициях могут размещаться фишки, или маркеры, которые изображаются точками. Размещение фишек в позициях называется маркировкой сети. Маркировка сети с n позициями представляется последовательностью n чисел, в которой на i-м месте стоит число фишек в i-й позиции. Пример сети Петри приведен на рис.
р2
t1t3
р1
t4
t2р3
Рис.
Сеть на рис. содержит три позиции, обозначенные р1,р2,р3, и четыре перехода, обозначенные t1,t2,t3,t4. Позиция р1содержит одну фишку; в остальных позициях фишек нет. Маркировка этой сети имеет вид (1, 0, 0),или, короче, 100.
Позиция р называется входной для перехода t, если из р в t, ведет дуга, и выходной для t,если из tв р ведет дуга; аналогично определяются входные и выходные переходы для любой позиции. На рис. переход t2имеет одну позицию р1и две выходные позиции —р2и р3; позиция р2 имеет два входных перехода t1,t2 и два выходных перехода —t3 и t4.
Сети Петри предназначены для описания функционирования процессов во времени. При этом позиции рассматриваются как действия, или работы, а переходы —как события, в результате которых завершаются одни работы и начинаются другие. Функционирование сети Петри выражается в том, что в ней срабатывают переходы и изменяются маркировки. Это происходит следующим образом. Если во всех входных позициях перехода имеются фишки, переход называется возбужденным. В результате срабатывания перехода из всех его входных позиций отнимается по фишке, а во все выходные позиции добавляется по фишке. Таким образом, каждое срабатывание перехода, вообще говоря, изменяет маркировку сети (однако маркировка может и не измениться, если выходные позиции перехода совпадают с его входными позициями и фишки добавляются в те же позиции, откуда они отнимались). Если возбуждены несколько переходов, срабатывает только один из них; какой именно — это зависит от внешних условий и самой сетью Петри не определяется. Поэтому при анализе функционирования сети Петри рассматриваются все возможные варианты срабатываний переходов.
Рассмотрим возможные варианты функционирования сети на рис. .Начальное состояние —маркировка 100;возбуждены переходыt1иt2. Если срабатывает t1, то фишка забирается из р1и передается в р2. Получаем маркировку 010,при которой возбужден только переход t3; после его срабатывания сеть возвращается к начальной маркировке100.Если срабатывает t2, то фишки появляются в р2и р3. Получаем маркировку 011,при которой возбуждены переходы t3и t4,каждый из которых может сработать. Если срабатывает t4, то сеть возвращается к начальной маркировке; срабатывание t3приводит к маркировке 101.Дальнейший анализ возможных срабатываний приводит к бесконечной диаграмме, начало которой изображено на рис..
010 t1
t3 t2 t3 t2 t3 t2
100 011 101 012 102 013 ...
t4 t1 t4 t1 t4
Рис.
Диаграмма на рис. представляет собой бесконечный граф, вершины которого —возможные маркировки сети Петри, изображенной на рис. Дуга диаграммы —это переход от одной маркировки к другой в результате срабатывания перехода, который указан на этой дуге.
Приложение 3