Язык моделирования GPSS
Одним из наиболее эффективных и распространенных языков моделирования сложных дискретных систем является в настоящее время язык GPSS (General Purpose System Simulator) [12,13]. Он может быть с наибольшим успехом использован для моделирования систем, формализуемых в виде систем массового обслуживания (СМО).
Широкий набор компонентов этого языка позволяет конструировать сложные имитации модели с сохранением терминологии СМО. В качестве объектов языка используются аналоги таких стандартных компонентов СМО, как заявки, обслуживающие приборы, очереди и т.п. Достаточный набор подобных компонентов позволяет конструировать сложные имитационные модели, сохраняя привычную терминологию СМО.GPSS работает с объектами, которые можно классифицировать следующим образом:
1 класс — транзакты и блоки, непосредственно связанные
с транзакциями;
2 класс — объекты оборудования: устройства, накопители,
логические ключи;
3 класс — вычислительные объекты: арифметические опера
ции, переменные и функции;
4 класс — статистические объекты: очереди и таблицы;
5 класс — ссылочные объекты: ячейки и матрицы ячеек;
6 класс — создаётся пользователем.
Основным объектом является транзакт. Транзакт — это активный динамический объект, характеризуемый некоторым количеством атрибутов, называемых параметрами. Транзакты (процессы) продвигаются по маршруту и, проходя через другие объекты, подвергаются воздействию, которое меняет его атрибуты. Транзакты «создаются» и «уничтожаются» так, как это необходимо по логике модели в процессе моделирования. С каждым транзактом может быть связано произвольное число параметров, несущих в себе необходимую информацию об этом транзакте. Кроме того, транзакты могут иметь различные приоритеты. В начальный момент времени в GPSS-модели нет ни одного транзакта. В процессе моделирования симулятор генерирует транзакты в определённые моменты времени в соответствии с теми логическими потребностями, которые возникают в моделируемой системе. Подобным же образом транзакты покидают модель в определённые моменты времени, в зависимости от специфики моделируемой системы.
В общем случае в модели одновременно существует большое число транзактов, однако в каждый момент времени симулятор осуществляет продвижение только какого-либо одного транзакта. Если транзакт начал свое движение, он перемещается от блока к блоку по пути, предписанному блок-схемой. Такое продвижение транзакта продолжается до тех пор, пока не произойдёт одно из следующих возможных событий:1) транзакт входит в блок, функцией которого является удаление транзакта из модели;
2) транзакт входит в блок, функцией которого является задержка транзакта на некоторое определённое в модели время;
3) транзакт «пытается» войти в следующий блок, однако блок «отказывается» принять его; в этом случае транзакт будет повторять свою попытку войти в следующий блок; когда условия в модели изменятся, такая попытка может оказаться успешной и транзакт сможет продолжить свое перемещение по блок-схеме.
Если возникло одно из описанных выше условий, обработка данного транзакта прекращается и начинается перемещение другого транзакта. Таким образом, выполнение моделирования симулятором продолжается постоянно. Проходя через блоки модели, каждый транзакт вносит вклад в содержимое счётчиков блоков. Каждое продвижение транзакта в модели является событием, которое должно произойти в определённый момент модельного времени. Для того чтобы поддерживать правильную временную последовательность событий, симулятор имеет таймер модельного времени, который автоматически корректируется в соответствии с логикой, предписанной моделью.
Симулятор GPSS/PC помещает транзакты, в зависимости от условий в модели, в тот или иной список и переносит транзакты из списка в список, просматривает списки, выбирая следующий транзакт для обработки, корректирует таймер модельного времени после обработки всех транзактов в списке текущих событий.
Еще по теме Язык моделирования GPSS:
- Современные голоса в психологии Язык определяет мышление или мышление определяет язык?
- Влияние мышления на язык
- Универсальный язык или протокол?!
- 7. Язык, общение и речевая деятельность.
- ЯЗЫКОВЫЕ ОБОЛОЧКИ И ЭКСПЕРТНЫЕ СИСТЕМЫ ЗЛ. Язык логического программирования ДЕКЛ
- ЛИСАН - ЯЗЫК
- МЕДИЦИНСКИЙ ЯЗЫК
- ЧАСТЬ ШЕСТАЯ О СОСТОЯНИЯХ РТА И ЯЗЫК
- 29. Язык общения животных в ассоциациях. Видовые особенности.
- Как язык может определять мышление: языковая относительность и языковой детерминизм
- Экспериментальное моделирование болезни Пакринсона
- Компьютерное моделирование
- Моделирование потоков работ конечными автоматами
- Экспериментальное моделирование химиолучевого орального мукозита
- Моделирование потоков работ сетями Петри
- Применение имитационного моделирования
- Функция остановки моделирования
- Моделирование ушиба сердца
- 3.7.2.1. Моделирование развития высшей школы