Портал GPSS.RU

В. В. Девятков

РАЗРАБОТКА ПРИЛОЖЕНИЙ В СРЕДЕ GPSS WORLD


 

 

        

Инструментальные средства исследования сложных дискретных систем, как впрочем и все информационные технологии, непрерывно развиваются и совершенст-вуются. Сейчас для внедрения имитационного моделирования (далее ИМ) в практиче-ские исследования недостаточно просто написать модель на одном из языков ИМ и пе-редать ее пользователю. Обязательным условием ее реального внедрения является то, насколько органично и полно она вписана в технологический процесс имитационного исследования. Обеспечены ли методически и программно все этапы исследования – от сбора и обработки статистической информации до анализа результатов. Причем весь интерфейс, информационное и функциональное наполнение должны быть максимально приближены к проблемной области исследования. Таким образом, сейчас необходима разработка приложений, обеспечивающих полномасштабное имитационное исследова-ние в той или иной области в рамках одной программной системы.
Наиболее подробно этапы ИМ были описаны Нейлором. Мы рассмотрим эти этапы в более обобщенном виде:

Возможно и другое разбиение на этапы или отличное от данной трактовка их содержание. Целью статьи не является детальное описание этапов, а лишь констатация их наличия и выделение того, что наступил момент, когда мы практически приблизи-лись – технически, технологически и программно к возможности реализации этих эта-пов в рамках одного программного комплекса.
По этому пути давно и достаточно успешно идут разработчики известных ком-мерческих симуляторов и современных языков ИМ. Например, в симуляторе eMPlant , системах AUTOMOD, ARENA, AnyLogic и т.д. уже реализован ряд поддающихся фор-мализации и наиболее критичных, с точки зрения трудоемкости, этапов ИМ.
Это применение визуализации на этапах конструирования, разработки и отладки модели, а также при анализе результатов. Активно используется иерархический подход для формализованного описания структуры и логики моделируемой системы. Также используются технологии реляционных баз данных при хранении и обработке данных об имитационном проекте и т. д. Но даже в таких мощных симуляторах некоторые эта-пы ИМ пока не охвачены.
Достаточно сложно и, наверное, невозможно сделать симулятор универсальным для всех дискретных систем. Потому что всегда находятся нюансы и особенности, и для каждого конкретного приложения требуются уникальные доработки.
Но в то же время можно существенно обобщить порядок и форму взаимодейст-вия исследователя с системой. Причем не нужно для этого каждому разработчику «изо-бретать велосипед» и для решения каждой задачи создавать собственную программу. Существует множество уникальных, проверенных временем и практикой разработок для каждого этапа ИМ. Применение уже готовых программных продуктов (или их ком-понент) позволит существенно снизить стоимость разработки, увеличить доверие ис-следователя к ней и повысить мощность и эффективность имитационного исследования в целом.
Хотя и сложно технически объединить самостоятельные программные продук-ты, например, обработки статистики, имитационного моделирования, планирования экспериментов, оптимизации и анимации – в единый и эффективный программный комплекс. Еще сложнее добиться объединения программных продуктов от различных разработчиков и обеспечить разумное сочетание их экономических интересов, автор-ских прав и стоимости интегрированного продукта. Обычно разработчики обходят эти сложности за счет разработки собственных компонент, порой в ущерб функционально-сти. Можно привести только единичные примеры, когда разработчик успешно исполь-зовал программные продукты сторонних фирм. Например, это использование системы анимации ProofAnimaton в системе ИМ ARENA.
В нашей компании в течение трех последних лет активно ведутся работы в дан-ном направлении. К сожалению, мощные и эффективные коммерческие симуляторы доступны достаточно ограниченному количеству потенциальных пользователей имита-ционных технологий, в силу своей высокой цены – от $50000 и выше. Поэтому была поставлена цель – разработать технологию имитационных исследований на базе ши-роко используемых и достаточно доступных по цене программных продуктов с воз-можностями собственной доработки недостающих компонент. Итоговая стоимость использования такой технологии в конкретных приложениях, включая лицензионное программное обеспечение, не должна превышать $15000-25000.
В целом структуру программного комплекса имитационных исследований в са-мом общем виде можно изобразить следующим образом:

В настоящее время у нас имеется практический опыт реализации подобных про-граммных комплексов для различных приложений. Например, для исследования сбо-рочных производств, систем коллективной обработки данных высокой доступности, организации WEB-служб предприятий и т. д. В каждой конкретной реализации есть множество особенностей, прежде всего, в плане интерфейса и данных. Но в то же время можно выделить и множество общих для всех моментов.
Управляющая программа. Это основная программа комплекса. Основное ее назначение – объединение всех других программных компонент в единый программ-ный комплекс, обеспечение универсального подхода к языку диалога системы, реали-зация первого уровня диалога – справочно-информационного и интеграционного, воз-можность перехода на любой из этапов исследования. Визуально интерфейс с про-граммой индивидуален для каждой реализации. Это диктуется сутью проблемы иссле-дования, сложившейся терминологией, особыми требованиями Заказчика. Управляю-щая программа может быть реализована на любом общецелевом языке программирова-ния. Для каждого приложения она уникальна. Но опыт показывает, что при ее реализа-ции существует много общих методических и программных приемов. Это и единый подход к технологии ИМ, и стандартная реализация элементов диалога – окна, меню, скроллинг и т.д.. Поэтому ряд программных компонент могут быть использоваться во многих приложениях.
Подсистема задания структуры и логики системы. Реализует этапы поста-новки задачи, ее формализации и задание структуры и логики системы системе. Учи-тывая современное состояние и возможности интерактивных технологий и вследствие этого большие ожидания пользователей, данная программа должна обеспечивать высо-кий уровень визуализации и графики. Для более полного описания требуется реализа-ция трех форм (уровней) представления структуры и логики: абстрактно-математический (условные обозначения элементов), на базе типовых 2D-объектов, на базе типовых 3D-объектов. Можно в ее качестве использовать уже готовые системы визуализации. Мы провели самостоятельную разработку и создали визуальную систему моделирования (VSM). Графические компоненты данной системы достаточно универ-сальны и при минимальных усилиях позволяют охватить широкий круг приложений.
Подсистема ввода, хранения и управления данными. Это специализирован-ная база данных, в которой все данные объединены в проекты. Они содержат: общие сведения о системе: ее структуру и логику; данные о конфигурации и параметрах сис-темы, планы экспериментов и результаты их реализации. Для каждой модели и пользо-вателя – свой проект. Здесь также много общих моментов и типовых операций и, есте-ственно, идентичных фрагментов программ. Это существенно ускоряет создание новых приложений. Для реализации функций статистической обработки данных можно в ка-честве готовой компоненты использовать любую систему статистической обработки, в частности, ППП СТАТИСТИКА. В разработанных нами приложениях для ввода дан-ных в модель мы использовали соответствующие компоненты VSM. Логика создания и хранения данных о проектах реализуется в виде реляционной СУБД. Пока получены опытные результаты. Наработка общих методов и программных решений в данной подсистеме продолжается.
Подсистема моделирования. В качестве моделирующего ядра (подсистемы мо-делирования) нами выбран язык GPSS World. Мы считаем его одним из наиболее мощ-ных и проверенных временем языков ИМ и чрезвычайно популярным в мире. Совре-менная версия GPSS World имеет большое количество возможностей интерфейса с дру-гими языками и системами программирования. Например, процедуры динамического вызова, операторы обработки входных и выходных файловых потоков данных, воз-можности встроенного в GPSS языка PLUS. В состав подсистемы, кроме моделирую-щего ядра, должен входить генератор моделей. Принцип его работы в первых реализа-циях представляет собой создание кода GPSS для автоматического и корректного объе-динения шаблонов моделей в соответствии с выбранной пользователем структурой и введенными параметрами. Пользователю предоставляется возможность ручной дора-ботки моделей. Функции генератора моделей также реализованы в VSM. Простые и понятные настройки, возможности встроенного языка PascalScript , библиотека ранее наработанных шаблонов позволяют эффективно использовать во многих приложениях.
Подсистема вывода и анализа информации. Возможно три способа вывода результатов имитации – табличный, графический и анимированный. Для табличного представления данных разработан универсальный конвертор стандартных отчетов GPSS. Для построения графиков, в рамках единой концепции диалога и дизайна, ис-пользовался богатый набор стандартных компонент Дельфи. Анимация результатов в формате 2D осуществлялась с помощью системы Flash MX и языка Action Script, вхо-дящего в ее состав. Для 3-D анимации используются модели, разработанные в системах 3-D Max и VRML представлении. Работы в данном направлении еще не вышли на «промышленное» применение.
Подсистема планирования экспериментов и оптимизации. В настоящее вре-мя мы используем как процедуры GPSS World по планированию эксперимента и опти-мизации, так и программы собственной разработки. Например, по задаваемому количе-ству факторов они генерирует планы: полного факторного эксперимента; дробного факторного эксперимента. Которые, в свою очередь, позволят представить результаты моделирования степенными полиномами первого порядка. Ортогональные композици-онные планы позволяют представить результаты моделирования полиномами второго порядка.
Примером практического применения вышеизложенной технологии могут слу-жить разработанные нашей компанией приложения: имитационное моделирование сбо-рочного производства персональных компьютеров; моделирование WEB служб; анализ функционирования коллективных центров обработки информации и др. Ниже приведе-ны примеры изображений при работе с этими приложениями.


 


Распечатано с портала GPSS.RU (c) В. В. Девятков , 2005 г.