Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Автоматы и сети Петри. Учебное пособие
.pdf
1) генерирование и уничтожение транзактов GENERATE, SPLIT,
TERMINATE, ASSEMBLE;
2) временная задержка ADVANCE;
3) синхронизация движения двух или нескольких транзактов
MATCH, GATHER;
4) изменение параметров транзактов ASSIGN, INDEX;
5) изменение приоритета транзакта PRIORITY.
2. Блоки, изменяющие последовательность движения транзактов
DISPLACE, TRANSFER, LOOP, TEST.
3. Блоки, описывающие объекты аппаратной категории:
1) одноканальные устройства SEIZE, RELEASE, RETURN;
2) многоканальные устройства ENTER, LEAVE;
3) логические переключатели LOGIC.
4. Блоки, обеспечивающие получение статистических результатов:
1) очереди QUEUE, DEPART;
2) таблицы TABULATE.
Всего среда GPSS содержит 53 типа блоков.
Аппаратные объекты являются аналогами обслуживающих
приборов и другого оборудования реальной системы. К ним относятся
одноканальные, многоканальные устройства и логические
переключатели. Одноканальные и многоканальные устройства
соответствуют обслуживающим приборам в СМО. Логические
переключатели используются для моделирования двоичных состояний
логического или физического характера и могут находиться в двух
состояниях: включено и выключено.
Статистические объекты служат для сбора и обработки
статистических данных о функционировании модели. К ним относятся
очереди и таблицы. Каждый объект типа очередь обеспечивает сбор и
51

обработку данных о транзактах, задержанных в какой-либо точке
модели, например перед одноканальным устройством. Таблицы
используются для получения распределений случайных величин,
например, времен ожидания и пребывания транзактов в модели.
К вычислительным объектам относятся переменные
(арифметические, булевские) и функции. Они используются для
вычисления некоторых величин, заданных арифметическими,
логическими выражениями или в табличном виде. Переменные и
функции не связаны с определенными блоками программы. К
переменным относятся и так называемые системные числовые атрибуты
(СЧА). Атрибуты есть у каждого объекта модели. Они характеризуют его
состояние в определенные моменты времени. Значения атрибутов всех
объектов модели по окончании моделирования выводятся в стандартный
отчет GPSS/PC.
Запоминающие объекты обеспечивают хранение в памяти
компьютера отдельных величин, используемых в модели, а также
массивов таких величин. К ним относятся так называемые сохраняемые
величины и их матрицы.
К группирующим объектам относятся списки пользователя и
группы. Списки пользователя используются для организации очередей с
дисциплинами, отличными от дисциплины FIFO (от англ. First In – First
Out).
Прогон текущей модели, т.е. собственно моделирование,
выполняется с помощью специальной управляющей программы,
называемой симулятором (от английского слова SIMULATE –
моделировать, имитировать) и работает в режиме интерпретации. Прогон
GPSS-модели под управлением симулятора-интерпретатора заключается
в перемещении транзактов от одного блока к другому, имитируя
52

перемещение заявок в моделируемой системе.
В процессе моделирования интерпретатор GPSS/PC генерирует
транзакты в определенные моменты времени (подобным же образом и
уничтожает их) в соответствии с логикой функционирования модели. В
общем случае в модели одновременно находится большое число
транзактов, однако в каждый момент времени интерпретатор
осуществляет продвижение только одного транзакта.
Основы синтаксиса языка GPSS
Исходная программа на языке GPSS/PC представляет собой
последовательность операторов. В общем случае операторы GPSS имеют
следующий формат:
номер имя операция операнды ; комментарии
Все операторы должны начинаться с номера – целого
положительного числа от 1 до 9999999. После ввода операторы
располагаются в исходной программе в соответствии с присвоенными
номерами. Обычно нумерация производится с некоторым шагом,
отличным от 1, чтобы иметь возможность добавления операторов в
нужное место программы.
Отдельные операторы в программе могут иметь имя для ссылки на
эти операторы из других операторов.
В поле операции записывается ключевое слово-глагол (название
оператора), указывающее конкретную функцию, выполняемую данным
оператором. Это поле оператора является обязательным.
В полях операндов записывается информация, которая
конкретизирует выполнение функции, определенной в поле операции.
Эти поля в зависимости от типа операции могут содержать до семи
операндов, расположенных в определенной последовательности и
53

обозначаемых первыми буквами латинского алфавита A, B, C, D, E, F, G.
Некоторые операторы вообще не имеют операндов, а в некоторых
операнды могут быть не заданы и при этом устанавливаются их значения
по умолчанию (стандартные значения). Если в операторе какой-нибудь
необязательный операнд не используется, то его отсутствие в
соответствующем поле отмечается запятой.
Необязательные комментарии, в случае их присутствия в
программе, отделяются от поля операндов точкой с запятой.
Комментарии не могут содержать буквы русского алфавита.
6. ЛАБОРАТОРНЫЕ РАБОТЫ
Лабораторная работа №1
Конечные автоматы Мили и Мура
Задание
Изучить работу конечных автоматов Мили и Мура. Представить
конечные автоматы Мили и Мура таблицей переходов и выходов с
одним входом и таблицей переходов с двумя входами. Составить для
автомата Мили таблицу выходов с двумя входами, построить
отмеченную таблицу переходов автомата Мура. Построить таблицу
выходов интерпретирующего автомата Мили для автомата Мура,
представить конечные автоматы матрицами соединений. Для
моделирования работы автоматов и составления таблиц следует написать
программу на любом языке программирования. Программа должна
наглядно демонстрировать принципы работы конечных автоматов Мили
и Мура и выводить в текстовый файл все таблицы, которыми
описываются автоматы.
Варианты заданий к лабораторной работе представлены в таблице
54

П1. Для каждого варианта данные приведены в порядке, указанном в
таблице П2.
Содержание отчета
1. Название работы.
2. Цель работы.
3. Содержание работы.
4. Результаты выполнения программы на ЭВМ, включающие:
таблицы переходов и выходов с одним и двумя входами;
отмеченную таблицу переходов;
таблицу выходов интерпретирующего автомата;
матрицы соединений.
5. Листинг программы.
Контрольные вопросы
1. Назовите отличие конечных автоматов Мура и Мили.
2. Как определяется полный набор сочетаний входов, выходов или
состояний?
3. Чем отличаются таблицы с одним и двумя входами?
4. В чем отличие отмеченной таблицы переходов автомата Мура от
таблицы переходов Мили?
5. Какие принципы используются при составлении таблицы выходов
интерпретирующего автомата?
6. Что служит элементами матрицы соединений?
7. Как строятся графы конечного автомата?
55

Лабораторная работа №2
10,...,1t
10,...,1t
44
[ 1, ]tt
P
10,...,1t
[ 1, ]tt
P
10,...,1t
10,...,1t
Вероятностные конечные автоматы
Задание
Изучить работу вероятностного конечного автомата на примере
неоднородной марковской цепи. Построить переходные матрицы для
каждого момента времени
ностей состояний автомата для моментов времени
, определить распределения вероят-
. Для
вычисления переходных матриц, их нормирования и расчета
распределения вероятностей состояний автомата необходимо написать
программу.
Законы изменения вероятности перехода из состояния / в каждое
состояние в последующий момент времени представлены в таблице
П3, из которой нужно выбрать вариант. С использованием данных
законов высчитываются переходные матрицы, имеющие размер
Варианты начального распределения вероятностей состояний
представлены в таблице П4.
Содержание отчета
.
1. Название работы.
2. Цель работы.
3. Содержание работы.
4. Закон изменения переходной матрицы неоднородной марковской
цепи.
5. Результаты выполнения программы на ЭВМ, включающие:
переходные матрицы
нормированные переходные матрицы
времени
;
распределение вероятностей в моменты времени
для моментов времени
для моментов
.
;
56

6. Листинг программы.
Контрольные вопросы
1. В чем отличия вероятностного конечного автомата от конечного
автомата?
2. Что такое переходная матрица вероятностного автомата?
3. Назовите отличия вероятностных конечных автоматов Мили и
Мура.
4. Какой вероятностный конечный автомат называется марковской
цепью?
5. В чем отличие однородной и неоднородной марковской цепи?
6. Как определяется распределение вероятностей состояний в любой
момент времени?
Лабораторная работа №3
Клеточные конечные автоматы
Задание
Изучить работу клеточного конечного автомата на примере
автономного клеточного конечного автомата без выхода с одномерным
состоянием и двоичным внутренним алфавитом. Так как состояние в
любой момент времени в любой клетке зависит от состояния в
предыдущий момент времени в этой клетке и четырех других клетках
шаблона соседства, то для описания функции переходов необходимо
рассмотреть все возможные комбинации значений внутреннего алфавита
во всех пяти клетках шаблона соседства. Каждой комбинации
соответствует свое значение состояния клетки в следующий момент
времени. Таблица П6 содержит 32 значения состояния, которые
соответствуют всем возможным комбинациям, представленным в
57

таблице П5. Из этих таблиц необходимо получить коэффициенты
10,...,1t
10,...,1t
Жегалкина и составить многочлен, соответствующий переходной
функции клеточного автомата.
После получения многочлена Жегалкина необходимо рассчитать
конфигурацию клеточного автомата в моменты времени
. Для
расчета конфигурации следует написать программу. Конфигурация
клеточного автомата в каждый момент времени может быть
представлена в виде наборов нулей и единиц в каждой клетке заданного
клеточного пространства.
Содержание отчета
1. Название работы.
2. Цель работы.
3. Содержание работы.
4. Переходная функция клеточного конечного автомата в табличной
форме.
5. Многочлен Жегалкина.
6. Результаты выполнения программы на ЭВМ, включающие:
начальную финитную конфигурацию автомата в виде сетки
из нулей и единиц;
конфигурацию автомата в моменты времени
7. Листинг программы.
Контрольные вопросы
1. В чем отличие конечного автомата от клеточного конечного
автомата?
2. Что такое шаблон соседства?
3. Что представляет собой финитная конфигурация клеточного
конечного автомата?
.
58

4. Как определяется многочлен Жегалкина?
5. Как определяется состояние клетки в определенный момент
времени?
Лабораторная работа №4
Сети Петри
Задание
Изучить правила функционирования сети Петри и различные
способы их задания. По немаркированному графу из приложения 7
определить структуру сети Петри, кратности входных и выходных
позиций для каждого перехода, расширенные функции входов и
выходов. Построить матрицу сети Петри.
Самостоятельно задать маркировку сети Петри. Проверить для нее
разрешенность каждого перехода. Затем просчитать маркировки сети на
пять шагов вперед для каждого перехода. Задать любые две маркировки
и проверить достижимость каждой из какой-нибудь третьей маркировки.
Для проверки разрешенности переходов, расчета маркировок и проверки
достижимости маркировок следует написать программу.
Содержание отчета
1. Название работы.
2. Цель работы.
3. Содержание работы.
4. Граф сети Петри, структура сети Петри, матрица сети Петри.
5. Начальная маркировка сети Петри.
6. Результаты выполнения программы на ЭВМ, включающие:
список переходов, разрешенных и неразрешенных для
заданной начальной маркировки;
маркировки сети на пять шагов вперед;
59

проверку достижимости двух заданных маркировок.
7. Листинг программы.
Контрольные вопросы
1. Функционирование сети Петри.
2. Способы задания сети Петри.
3. Кратность позиций, расширенные входные и выходные
функции.
4. Маркированная сеть Петри.
5. Условие разрешенности перехода, правило расчета новой
маркировки.
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
