Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методическое пособие 620

.pdf
Скачиваний:
5
Добавлен:
30.04.2022
Размер:
2.85 Mб
Скачать

125

В результате классификации получаем формализованные модели типа (27), параметры которых рассчитываются следующим образом:

- устанавливается экспертом для каждой группы;

Z ij - определяется по формуле (6.33).

Критерием адекватности (А) полученных моделей является процент попадания объектов из множества G, имеющих тип ln , в группы с аналогич-

ным значением лингвистического описания модели L j :

 

 

 

 

A

100

 

N

 

 

 

 

 

 

 

 

an ,

 

 

 

 

 

 

 

 

N

 

 

 

 

 

 

 

 

 

 

n 1

 

 

 

 

1,

если

ln

Lj

 

ln

Gj

 

 

 

где an

 

, j 1, J .

0,

если

ln

Lj

 

ln

G j

 

 

 

 

 

Результат классификации в значительной мере зависит от выбранного признакового пространства и меры близости объектов. Для оптимального выбора признакового пространства используется алгоритм исключения параметрической избыточности (рис.6.2). Если отсутствует априорная информация о форме кластеров и требуемой метрике, полезно сделать расчеты несколько раз с разными метриками и найти устойчивые общие черты в разбиениях. Выбирается та мера близости, при которой степень адекватности модели окажется максимальной.

Формализованные модели, построенные как первым, так и вторым способом, полностью зависят от исходной статистической информации. Нет уверенности в том, что исходная информация объективна и достоверна, так как возможны ошибки и погрешности, обусловленные различными объективными и субъективными причинами. Для минимизации вероятности использования недостоверной информации при анализе ситуаций и принятии решений, необходимы ее предварительный отбор или фильтрация (рис. 6.1).

Общая схема алгоритма построения формализованных моделей приведена на рис. 6.4.

После построения предложенной формализованной модели (6.27) появляется возможность идентификации вновь поступившего объекта.

На первом этапе снимается необходимый набор показателей, соответствующий решаемой задаче:

X q1x ,q2x ,...,qix ,...,qIx ,

где qix - значение i-го параметра для объекта Х.

126

Затем решается вопрос о принадлежности вновь поступившего объекта

одной из существующих моделей m j

по правилу:

mj

 

rx j

max rx j

,

 

X

 

 

j

 

 

 

 

0

 

r x j

r0

 

где rx j - степень сходства объекта X с моделью j ;

r0 - минимально допустимая степень сходства (если rx j r0 ,

то данный объект не принадлежит ни одной из моделей). Для расчета rx j используется выражение:

Формирование исходной выборки

N ИСХ

G исх g n n 1

Фильтрация информации

Исключение параметрической избыточности

 

 

 

 

 

 

 

 

N

 

 

 

Формирование множества

G

g n

 

Корректировка исходной

 

 

 

 

 

 

 

 

n

1

 

 

 

 

 

 

 

 

 

 

выборки GИСХ

n:gn Pn

1

2

 

i

I

 

 

 

Pn

,Pn ,...,Pn ,...,Pn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Нормировка параметров

i

 

 

 

Pn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

1,I;n

1,N

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Определение количества классов (J)

Выбор метрики

Формирование кластеров

G j , j 1,J

Расчет параметров модели

Модели адекватно

Есть

описывают объект-

возможность

классификации ?

изменения

127

Рис.6.4. Схема алгоритма построения формализованных моделей.

rx j 1

 

d x j

,

J

 

 

 

d xj

 

 

j

1

 

где d x j - близость, рассчитанная по одной из формул (6.28)-(6.32), ме-

жду объектом Х и эталоном параметров модели J.

После подтверждения выбранной альтернативы набор показателей Х и соответствующая им альтернатива включаются в множества G и L для обучения системы. Производится корректировка моделей (6.27) за счет обновления параметров Zij с учетом показателей поступившего объекта gx .

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

КОНТРОЛЬНЫЕ ВОПРОСЫ

1.В чем заключается суть метода статистических испытаний?

2.Чем отличаются аппаратный, табличный и алгоритмический способы генерации последовательностей случайных чисел? В чем их достоинства и недостатки?

128

3.Что представляют собой конгруэнтные методы генерации псевдослучайных последовательностей?

4.Как смоделировать случайную величину с заданным законом распределения?

5.Каким образом моделируются равномерно распределенные на отрезке [a,b] случайные величины?

6.Каким образом моделируются показательно случайные величины?

7.Каким образом моделируются нормально случайные величины?

8.В чем заключается проверка качества случайных чисел, какой критерий для этого используется?

9.Каким образом оценивается точность статистических оценок?

10.Для каких целей используется аппроксимация результатов моделирования? Какие алгоритмы заложены в ее основу?

ГЛАВА 7. GPSS – КАК СРЕДСТВО ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ

7.1. Общие правила построения и способы реализации моделей систем на ЭВМ

В настоящее время метод машинного моделирования нашел широкое применение при разработке обеспечивающих и функциональных подсистем различных АСОИУ (интегрированных АСУ, автоматизированных систем научных исследований и комплексных испытаний, систем автоматизации проектирования и т. д.). При этом, как уже отмечалось, независимо от объекта можно выделить следующие основные этапы моделирования: построение концептуальной модели системы S и ее формализация; алгоритмизация модели системы S и ее машинная реализация; получение результатов машинного моделирования и их интерпретация.

На первом этапе моделирования формулируется модель, строится ее формальная схема и, собственно, решается вопрос об эффективности и целесообразности моделирования системы S (об аналитическом расчете или имитационном моделировании) на вычислительной машине (на ЭВМ, АВМ или ГВК). На втором этапе математическая модель, сформулированная на первом этапе, воплощается в машинную модель, т. е. решается проблема алго-

129

ритмизации модели, ее рационального разбиения на блоки и организации интерфейса между ними; при этом также решается задача обеспечения получения необходимой точности и достоверности результатов при проведении машинных экспериментов. На третьем этапе ЭВМ используется для имитации процесса функционирования системы S, для сбора необходимой информации, ее статистической обработки в интерпретации результатов моделирования.

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

Обобщая полученные результаты в области методологии машинного моделирования, можно условно разделить эвристические принципы моделирования на совокупность основных правил построения моделей систем и способов их машинной реализации. Причем правила определяют общие свойства, которыми должна обладать построенная машинная модель, а способы реализации дают конкретные приемы получения нужных свойств модели системы. Следует отметить, что правила построения и способы их реализации образуют единую систему, так что обособленное их рассмотрение не дает полного представления о методологии машинного моделирования [1, 2].

7.2. Принцип работы системы GPSS

Язык GPSS построен в предположении, что моделью сложной дискретной системы является описание ее элементов и логических правил их взаимодействия в процессе функционирования моделируемой системы. Далее предполагается, что для определенного класса моделируемых систем можно выделить небольшой набор абстрактных элементов, называемых объектами. Причем набор логических правил также ограничен и может быть описан небольшим числом стандартных операций. Комплекс программ, описывающих функционирование объектов и выполняющих логические операции, является основой для создания программной модели системы данного класса. Эта идея и была реализована при разработке языка GPSS.

Объекты GPSS подразделяются на 7 категорий и 14 типов (табл. 1) и позволяют, с одной стороны, описать их взаимодействие сравнительно несложными наборами операций, с другой — достаточно просто и наглядно представить процесс функционирования исследуемой системы S, формализуемой в виде Q-схемы [1, З].

Для облегчения пользователю процесса построения модели в GPSS разработан так называемый язык блок-диаграмм, позволяющий упростить переход от алгоритма к программе модели системы S. Каждый блок GPSS имеет свой графический аналог, с помощью которых отображается пространственная конструкция модели, упрощая дальнейшую линеаризацию программы модели.

130

Основой GPSS являются программы, описывающие функционирование выделенного конечного набора объектов, и специальная диспетчеризирующая программа — симулятор, который выполняет следующие функции: обеспечения заданных программистом маршрутов продвижения динамических объектов, называемых далее транзактами (сообщениями); планирования событий, происходящих в модели, путем регистрации времени наступления каждого события и выполнения их в нарастающей временной последовательности; регистрация статистической информации о функционировании модели; продвижения модельного времени в процессе моделирования системы.

Таблица 1

Категория

Типы объектов

 

 

Динамическая

Транзакты

 

 

Операционная

Блоки

 

 

Аппаратная

Устройства

 

Памяти

 

Ключи

 

 

Вычислительная

Переменные: арифметические,,булевские

 

Функции

 

 

Статистическая

Очереди

 

Таблицы

 

 

Запоминающая

Матрицы ячеек

 

Ячейки

 

 

Группирующая

Списки пользователя

 

Группы

 

 

Динамическими объектами являются транзакты (сообщения), которые представляют собой единицы исследуемых потоков и производят ряд определенных действий, продвигаясь по фиксированной структуре, представляющей собой совокупность объектов других категорий.

Операционные объекты, т. е. блоки, задают логику функционирования модели системы и определяют пути движения транзактов между объектами аппаратной категории.

131

Объекты аппаратной категории — это абстрактные элементы (уст-

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

Вычислительная категория служит для описания таких ситуаций в процессе моделирования, когда связи между компонентами моделируемой системы 5 наиболее просто и компактно выражаются в виде математических (аналитических и логических) соотношений. Для этих целей в качестве объектов вычислительной категории введены арифметические и булевские переменные и функции.

К статистическим объектам относятся очереди и таблицы, вводимые для оценки характеристик поведения системы.

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

зываются событиями.

7.3. Основные объекты GPSS

В GPSS имеется два основных типа объектов: транзакты и блоки, относящиеся соответственно к динамической и операционной категории. Практически все изменения состояний модели системы S происходят в результате входа транзактов в блоки и выполнения блоками своих функций. С блоками непосредственно связаны: операционные блоки, изменяющие процесс моделирования; блоки вывода на печать промежуточных результатов моделирования; карты, управляющие процессом моделирования; карты, управляющие редактированием результатов моделирования. Всем блокам GPSS присваиваются порядковые номера, карты не нумеруются.

Транзакты представляют собой описание динамических процессов в реальных системах. Они могут описывать реальные физические объекты.

Кроме того, транзакты могут описывать и нефизические (программные) объекты, например канальные программы, порядок выбора в коммутационных схемах и т. д. Транзакты можно «генерировать» и «уничтожать» в процессе моделирования системы S.

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

132

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

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

В зависимости от назначения блоки подразделяются на несколько групп:

1. Блоки, осуществляющие модификацию атрибутов транзактов:

а) временная задержка ADVANCE; б) генерирование и уничтожение транзактов GENERATE, TERMINATE, SPLIT, ASSEMBLE; в) синхронизация движения нескольких транзактов МАТСН, GATHER; г) изменение параметров транзактов ASSIGH, INDEX, MARK; д) изменение приоритета

PRIOPITY.

2.Блоки, изменяющие последовательность передвижения транзактов

(блоки передачи управления): TRANSFER, LOOP, TEST, GATE.

3.Блоки, связанные с группирующей категорией: JOIN, REMOVE, EXEMINE, SCAN, ALTER.

4.Блоки, организующие использование объектов аппаратной категории: а) устройства (технические средства) SEIZE, RELEASE, FAVAIL, PREEMPT, RETURN, FUNAVAIL, б) памяти (запоминающие устройства)

ENTER, LEAVE, SAVAIL, SUNAVAIL, в) ключи (логические переключате-

ли) LOGIC.

5.Блоки, сохраняющие необходимые значения для дальнейшего ис-

пользования: SAVEVALUE, MSAVEVALUE.

6.Блоки, обеспечивающие получение статистических результатов;

а) очереди QUEUE, DEPART; б) статистические таблицы TABULATE, TABLE.

7.Специальные блоки BUFFER, PRINT, EXECUTE, COUNT’X’, CHANGE, TRACE, UNTRACE, SELECT’X’, HELP.

8.Блоки для организации цепей: LINK, UNLINK.

9.Вспомогательные блоки: WRITE, SAVE, LOAD, REPORT, UPDATE.

7.4.Описание моделей с помощью языка GPSS

133

В программе на языке GPSS каждый оператор (блок) записывается в следующем формате:

Поле метки

Поле операции

Поле операндов

Символический адрес Наименование типа Аргумент А, аргумент В и т.д.

блока

блока

Запись начинается с I позиции, а поля разделяются пробелами. Отсутствие метки также обозначается пробелом.

Методы структурного программирования требуют наличия комментариев к каждому оператору (группе операторов). В GPSS имеется ряд средств для внесения комментариев в тело программы. Во-первых, наличие символов (*) в первой колонке указывает на то, что карта содержит только комментарии и не будет просматриваться транслятором. Во-вторых, появление пробела в списке операндов означает окончание списка и начало комментария. Информация, следующая после пробела в поле операндов, может содержать любые символы русского и латинского алфавитов и не подлежит просмотру транслятором.

Вид блока указывается в «поле операции», где записываются аргументы блока. Это поле состоит из девяти частичных полей, помеченных буквами А, В, ..., I и разделенных друг от друга запятыми. Если некоторое частичное поле остается пустым, т. е. не нужен соответствующий аргумент, это отмечается еще одной запятой, например: PRINT, MOV. Здесь используется только аргумент МОV в частичном поле С (А и В пустые).

Карта SIMULATE. Если нужно провести счет по составленной модели системы, то должна быть карта SIMULATE. Допускается две формы заполнения этой карты: SIMULATE и SIMULATE т, где т — число минут машинного времени, по истечении которого моделирование будет прекращено. Например, оператор SIMULATE5 определяет длительность счета модели, равную 5 мин. По истечении этого времени моделирование прекращается и на печать выдается накопленная к этому моменту статистическая информация. Если карты SIMULATE нет, то работа (JOB) будет закончена после окончания ассемблирования.

Карта START. Эта карта показывает симулятору GPSS, что все входные данные уже получены и можно начинать счет.

Поле А определяет число транзактов, которые должны пройти через систему до выдачи окончательной статистики, называемой счетчиком числа завершений и обозначаемой TG1. Счет заканчивается в тот момент, когда TG1< 0. Значение TG1 уменьшается на величину, заданную в поле А блока TERMINATE, при каждом входе сообщения в этот блок. Если требуется за-

134

кончить моделирование после прохождения через модель 1000 транзактов, выводимых с помощью карты TERMINATE с единицей в поле А, то в поле А карты START записывается число 1000.

Например:

START 1000

Пример 1. Построить программу модели процесса прохождения 500 деталей, поступающих в промежутке времени 11 ± 5 единиц, распределенном по равномерному закону. Детали обрабатываются одним рабочим в течение 10 ± 7 единиц времени, распределенного по равномерному закону. После прохождения 300 деталей требуется выдавать статистику с интервалом в 25 деталей. Программа имеет вид (здесь и в других примерах моделирования справа дается комментарий):

SIMULATE

 

Начать имитацию

GENERATE

11,5

Поступление деталей

SEIZE

1

Запуск

ADVANCE

10,7

Обработка

RELEASE

1

Выпуск

TERMINATE

1

 

START

275, NP Прогон без статистики

START

225,,25

Интервальные статистики

END

 

 

Пользователю может понадобиться провести серию просчетов, т. е. несколько просчетов один за другим. Для облегчения задания такого режима введены три типа управляющих карт, в различной степени возвращающих модель к исходному состоянию: карта RESET, стирающая всю накопленную статистику, карта CLEAR, которая стирает всю статистику и все транзакты, и карта JOB, стирающая всю статистику, все транзакты и все блоки.

Карта RESET. Результатом действия этой карты является то, что стирается вся статистическая информация, накопленная в процессе моделирования.

Карта СLEAR. В результате действия этой карты стирается вся накопленная в процессе моделирования статистика и из системы удаляются все транзакты.

Карта JOB. Эта карта должна помещаться между последовательными рабочими вычислениями, являющимися частями одной работы. Она выпол-