GPSS WORLD – общецелевая система имитационного моделирования

 
 

Оглавление

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

      2. Компоненты GPSS………………………………………5

      3. Язык моделирования……………………………………8

               4. Новые операторы GPSS…………………………………10

               5. Заключение………………………………………………14

               6. Список литературы……………………………………...15 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ВВЕДЕНИЕ

GPSS WORLD – ОБЩЕЦЕЛЕВАЯ  СИСТЕМА ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ

Система GPSS World, разработанная компанией Minuteman Software (США), – это мощная среда компьютерного  моделирования общего назначения, разработанная для профессионалов в области моделирования. Это комплексный моделирующий инструмент, охватывающий области как дискретного, так и непрерывного компьютерного моделирования, обладающий высочайшим уровнем интерактивности и визуального представления информации.

Использование GPSS World дает возможность оценить  эффект конструкторских решений  в чрезвычайно сложных системах реального мира.

GPSS World основан  на оригинальном языке компьютерного  моделирования GPSS, что означает General Purpose Simulation System – общецелевая система моделирования. В основном этот язык был разработан Джефри Гордоном приблизительно в 1960 году в IBM и привнес множество важных концепций в каждую из коммерческих реализаций языков компьютерного моделирования дискретных событий, разработанных с тех пор. GPSS World – это прямое развитие языка моделирования GPSS/РС, одной из первых реализаций GPSS для персональных компьютеров. После своего появления в 1984 году GPSS/РС и его последующие версии сохранили тысячам пользователей миллионы долларов. В настоящее время версия GPSS World для ОС Windows имеет расширенные возможности, включая пользовательскую среду с интегрированными функциями работы с Интернет.

GPSS World разработан  для оперативного получения достоверных  результатов с наименьшими усилиями. В соответствии с этими целями в GPSS World хорошо проработана визуализация процесса моделирования, а также встроены элементы статистической обработки данных. Сильная сторона GPSS World – это его прозрачность для пользователя.

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

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

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

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

Последняя версия GPSS World 4.3.2. (от 8 ноября 2001 года) включает в себя массу нововведений, позволяющих  проводить более эффективные исследования и сделать работу с системой максимально простой и удобной для пользователя.  

Компоненты GPSS World

Транслятор

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

Архитектура

На уровне интерфейса GPSS World представляет собой реализацию архитектуры “документ-вид”, общей  для всех приложений операционной системы Windows. Объекты могут быть открыты  в нескольких окнах, изменены и сохранены  на постоянных носителях информации. Привычное меню главного окна и блокировка недоступных команд меню, не отвлекая внимания, направляет пользователя к конечной цели. GPSS World был разработан с целью достичь тесной интерактивности даже в многозадачной среде с использованием виртуальной памяти.

Многозадачность

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

Виртуальная память

Процессы моделирования  непосредственно не ограничиваются размером физической памяти с произвольным доступом (ОЗУ), в которой выполняется объект “Процесс моделирования”. Используя механизм виртуальной памяти, модели могут достигать размера до гигабайта. Количество объектов также ограничивается только обеспечиваемым размером файла подкачки. Для достижения оптимальной производительности необходимо использовать значительный объем реальной памяти. Выделение и управление памятью для объектов происходит невидимо для пользователя. Объекты автоматически создаются до тех пор, пока не потребуется дополнительная информация.

Интерактивность

GPSS World поддерживает высокий уровень интерактивности даже во время процесса моделирования. Используя команду главного меню окна модели Command (Команда), ускоряющие клавиши или настройки модели, закрепляя за функциональными клавишами собственные команды, вы можете передавать существующему объекту “Процесс моделирования” любой оператор. Вы можете использовать диалоговое окно “Simulation Command” (“Команда”) для ввода операторов, отсутствующих в выпадающем меню, а с помощью команды INCLUDE вы можете посылать процессу моделирования интерактивные операторы любой сложности.

Визуализация

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

Анимация

В GPSS World существует ряд анимационных возможностей. Уровень их реализма изменяется от абстрактной визуализации, не требующей никаких усилий, до высоко реалистических динамических изображений, включающих в себя сложные элементы, созданные пользователем.

Абстрактная анимация

В GPSS World встроена функция комплексной стилизованной анимации. Эта функция обеспечивается большим количеством окон, которые динамически отображают объекты GPSS в процессе моделирования по мере изменения их состояния. Для создания такой анимации не требуется дополнительных усилий. Графические изображения могут быть сохранены для включения в отчеты и/или распечатаны.

Пост-процессорная анимация

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

Оперативная анимация

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

Язык  моделирования 

GPSS World является реализацией GPSS, общецелевой системы моделирования, улучшенной встроенным языком программирования PLUS – языком программирования низкого уровня моделирования.

Эта версия GPSS включает в себя 53 типа блоков и 25 команд, а  также более чем 35 системных числовых атрибутов, которые обеспечивают текущие переменные состояния, доступные в любом месте модели.

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

В GPSS World модель определяется как последовательность операторов. Это операторы GPSS, операторы PLUS-процедур или операторы PLUS-экспериментов. За исключением списков данных функции, все операторы GPSS должны состоять из одной текстовой строки длиной до 250 символов. Любой оператор GPSS может входить в модель и сохраняться в файле модели или может быть передан процессу моделирования в интерактивном режиме.

Нововведения

В языке моделирования  было сделано множество изменений. Было исключено понятие управляющих  операторов. Теперь все операторы, не являющиеся операторами блоков GPSS, называются просто командами. Номера строк игнорируются в GPSS World. Если же они используются, то должны начинаться в первом столбце текстовой строки.

Также в GPSS World не применяется автоматическое округление. Теперь необходимо явно использовать процедуру Int() или какой-либо другой метод, если требуется округлять промежуточные числовые результаты. Это справедливо для всех выражений, а также для операторов VARIABLE и BVARIABLE. Теперь значения, возвращаемые системными числовыми атрибутами (СЧА), в зависимости от конкретного СЧА могут быть целого, вещественного или строчного типа. Даже СЧА, возвращающие значения в тысячных долях, выполняют это с помощью вещественных чисел двойной точности, лежащих в интервале от 0 до 1000 включительно. “Старые” округления и целочисленные СЧА могут быть использованы в коммерческой версии GPSS World в режиме совместимости с GPSS/PC, который рассматривается далее.

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

Математические  выражения, заключенные в скобки, теперь могут использоваться почти  везде, где используются СЧА. Выражения  являются неотъемлемой частью языка PLUS, но они также используются для расширения возможностей операндов в операторах GPSS. Если выражения используются в операндах операторов GPSS, они должны быть заключены в скобки. Также были добавлены новые типы операторов.

К студенческой и коммерческой версии GPSS World были добавлены новые возможности:

• Автоматический генератор отсеивающего эксперимента;

• Автоматический генератор оптимизирующего эксперимента;

• Теперь в студенческой версии доступны кадры состояния;

• Библиотечная процедура дисперсионного анализа (ANOVA);

• Переменное количество аргументов в процедуре PolyCatenate();

• Библиотечные процедуры динамического вызова внешних функций;

• Возможность трассировки PLUS;

• Пакетный режим работы;

• Команда EXIT с различными режимами сохранения файлов;

• Диалоговые окна создания блоков;

• Настраиваемые интервалы табуляции;

• PLUS-процедуры для операций с потоками данных.

Новые операторы GPSS

Новые блоки

Были добавлены  следующие новые блоки:

• ADOPT – Изменяет номер семейства.

• DISPLACE – Меняет транзакту следующий по порядку блок в последовательности блоков.

• PLUS – Вычисляет значение PLUS-выражения и сохраняет результат в параметре.

• INTEGRATION – Включает/выключает интегрирование переменной пользователя.

• OPEN – Инициализирует поток данных.

• CLOSE – Закрывает поток данных.

• READ – Считывает следующую строку данных из потока данных.

• WRITE – Передает значение величины в поток данных.

• SEEK – Изменяет указатель строки в потоке данных.

Новые команды

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

• CONDUCT – Выполняет зарегистрированный PLUS-эксперимент.

• EXIT – Завершает сеанс работы с GPSS World, при этом может сохранять объекты .

• INTEGRATE – Автоматически вычисляет интеграл для переменной пользователя.

• INCLUDE – Считывает и транслирует дополнительные файлы модели.

Новые СЧА

Новый системный  числовой атрибут А1 возвращает семейство  активного транзакта. Его удобно использовать совместно с новым блоком ADOPT, который позволяет изменять семейство активного транзакта.

Полиморфные типы данных

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

Преобразования  типов происходит автоматически. Процедуры, которые требуют в качестве аргумента значение определенного типа данных, принудительно преобразуют аргумент к соответствующему типу. Например, если вы передаёте строку процедуре, которая требует числовое значение, будет использован числовой эквивалент этой строки. Точно так же, если вы пытаетесь записать (WRITE) числовое значение, оно будет автоматически преобразовано в текстовую строку.

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

Теперь ячейкам  и матрицам может быть присвоено  значение UNSPECIFIED (неопределенный тип  данных). Команда INITIAL позволяет присваивать это значение ячейкам, элементам матрицы и даже целым матрицам. Если элемент данных UNSPECIFIED был использован в операции, которая требует некоторого значения, произойдет останов по ошибке. Библиотечная процедура дисперсионного анализа (ANOVA) теперь распознает элементы UNSPECIFIED в матрице результатов как недоступные результаты прогонов эксперимента.

Многомерные матрицы

Матрицы могут  иметь до 6 измерений. Динамические окна “Matrix” (“Матрица”) позволяют  просматривать любые поперечные сечения матрицы, одновременно можно открыть любое количество таких окон. Для использования во время исполнения процедуры могут быть созданы временные матрицы. Для инициализации матрицы с тремя и более измерениями используются присваивающие PLUS-операторы.

Выражения

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

Совместимость

GPSS World совместим с GPSS/PC и обычно выдаёт результаты, которые статистически неотличимы от результатов, выдаваемых GPSS/PC. Этот уровень совместимости может быть достигнут исправлением некоторых отличий и запуском процесса моделирования.

Кроме того, доступен ещё более высокий уровень совместимости, называемый режимом совместимости с GPSS/PC. В большинстве случаев можно достигнуть точного повторения результатов. Тем не менее, GPSS World использует новую исполняемую библиотеку. Применяемый в нём метод округления чисел с плавающей запятой немного отличается от используемого в GPSS/PC. Но даже в этом случае большинство моделей GPSS/PC с небольшими изменениями могут давать идентичные результаты при выполнении под управлением коммерческой версии GPSS World в режиме совместимости с GPSS/PC.

    
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Заключение

На сегодняшний  день GPSS World является приложением семейства  операционных систем Windows и использует их очевидные преимущества — графический  интерфейс пользователя и архитектуру  «документ-вид». ПО представляет собой полноэкранный текстовый редактор, позволяющий работать сразу с несколькими объектами (текст модели, журнал, отчет и т. д.) Кроме того, графический интерфейс дает возможность интерактивно взаимодействовать с выполняющимися процессами моделирования, а также применять наглядные графические окна для отображения их работы.

GPSS World выполняется  под управлением любых ОС семейства  Windows, начиная с Windows 95, и позволяет  реализовать многозадачность и  использовать виртуальную память. Использование механизма виртуальной памяти устраняет один из главных недостатков предыдущих версий GPSS — жесткое ограничение объема памяти, занимаемого моделью. Теперь он может измеряться гигабайтами.

Кроме того, в GPSS World применяется более высокопроизводительный транслятор по сравнению с GPSS/PC. Имеется возможность ввода и вывода данных в процессе моделирования. Пользователь может прервать выполнение процесса моделирования и сохранить его, чтобы в дальнейшем продолжить выполнение с той же точки. Еще одно новшество — пакетный режим с контролируемой процедурой выхода из приложения. Это позволяет производить многократные прогоны с сохранением всех необходимых файлов.

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

Список  литературы:

    1. http://gpss.h11.ru/c1004.htm#c1
    2. Карпов, Ю. ГИмитационное моделирование систем. Введение в моделирование с AnyLogic 5. — СПб: БХВ-Петербург, 2006.
    3. Портал gpss.ru
    4. http://www.kinnet.ru/cterra/496/27500_2.html
GPSS WORLD – общецелевая система имитационного моделирования