Тема 2. Языки имитационного моделирования

We use cookies. Read the Privacy and Cookie Policy

Языки имитационного моделирования предназначены для разработки соответствующего программного обеспечения, которое может быть использовано для создания множества приложений имитационного моделирования. В некотором смысле эти языки сопоставимы с FORTRAN, C++, Visual Basic или Java, но они также включают определенные функции, облегчающие процесс имитационного моделирования. Некоторые примеры современных языков моделирования: GPSS / H, GPSS / PC, SLX и SIMSCRIPT III. Языки моделирования существуют для дискретной, непрерывной и агентной парадигм имитационного моделирования.

Функции языка ИМ

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

1) симулятор часов или механизм для продвижения моделируемого времени;

2) методы планирования событий;

3) инструменты сбора и анализа статистики использования различных ресурсов и объектов;

4) методы представления ограниченных ресурсов;

5) инструменты для представления результатов;

6) средства отладки и обнаружения ошибок;

7) генераторы случайных чисел и связанные с ними наборы инструментов;

8) общие рамки для создания модели.

Сравнение языков ИМ с традиционными языками программирования

Хотя уже многие имитационные модели разработаны с использованием специальных языков моделирования, некоторые аналитики по-прежнему предпочитают полагаться на традиционные языки программирования для разработки подобных моделей. В других случаях разрабатывают специальные расширения для добавления возможностей традиционному языку программирования. Например, Repast Simphony является бесплатным и открытым источником, агентно-ориентированным инструментарием моделирования, который добавляет функции к языку Java, чтобы упростить создание и использование имитационной модели.

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

– знания и навыки программиста: разработчики уже знают язык программирования общего назначения. У них может не быть времени или желания изучать специальный язык имитационного моделирования;

– гибкость: языки программирования по своей сути являются более гибкими, предоставляя аналитику свободу создавать модель с использованием предпочтительной методологии;

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

– совместимость с «железом»: программное обеспечение общего назначения может быть доступно на любой аппаратной платформе, в то время как для некоторых языков имитационного моделирования могут потребоваться специальные компьютеры и конфигурации памяти;

– недостаток знаний аналитиков. Аналитик может не знать и не понимать язык имитационного моделирования, и может не иметь знаний о его преимуществах;

– обучение. Курсы по использованию традиционных языков программирования, как правило, более доступны, чем обучение специальным языкам имитационного моделирования.

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

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

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

GPSS и SIMSCRIPT

GPSS (система общего назначения для моделирования) была первоначально разработана Джеффри Гордоном из IBM и выпущена в октябре 1961 года. После выпуска GPSS стал довольно распространенным языком имитационного моделирования и с тех пор регулярно используется. В целом, GPSS пользуется широкой популярностью благодаря своему разумному построению и общей мощности.

Основные функции языка GPSS могут быть легко изучены, а дополнительные мощные функции делают его идеальным для моделирования сложных систем. В общем случае GPSS используется для имитации систем очередей, которые состоят из взаимодействующих объектов и клиентов в условиях ограниченных ресурсов. В настоящее время несколько поставщиков предлагают версии GPSS, включая: Wolverine Software, которая производит GPSS/H, мощную, современную версию GPSS, разработанную для создания больших и сложных моделей. Minuteman Software создает дружественную среду моделирования GPSS под названием GPSS World, которая содержит специальные инструменты для разработки имитационных моделей.

SIMSCRIPT III: Этот язык является прямым потомком исходного языка SIMSCRIPT, созданного в Rand Corporation в 1960-х годах. SIMSCRIPT III имеет конструкции, которые позволяют разработчику подходить к проблеме либо на основе процессного подхода, либо на основе объектно-ориентированного мировоззрения. SIMSCRIPT III предлагает уникальные функции, которые добавляют ему привлекательности. Среди них:

• объектно-ориентированное программирование;

• модульность;

• студия развития SIMSCRIPT III (SimStudio);

• объектно-ориентированная графика Simscript III;

• связь с базой данных SDBC.

В общем, SIMSCRIPT III – это язык свободной формы с синтаксисом, похожим на английский язык. Этот синтаксис позволяет коду в системе становиться самодокументированным. Компоненты модели могут быть запрограммированы достаточно четко, чтобы обеспечить представление структуры и логики моделируемой системы. SIMSCRIPT III поддерживается и распространяется компанией CACI Products Company.

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

Симуляторы

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

Примерами программных пакетов симуляторов являются MedModel (симулятор медицинской помощи), PRISM (симулятор полиции) и PX-Sim (фармацевтический симулятор).

Симуляторы обладают рядом преимуществ перед языками имитационного моделирования. К ним относятся:

– простота использования. Симуляторы разработаны специально для пользователя-непрограммиста. Они, как правило, имеют удобные функции, такие как выпадающие меню команд и специальные инструменты для упрощения построения модели. Многие симуляторы продаются с бо?льшим упором на их удобство для пользователя, чем на их возможности моделирования;

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

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

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

Больше книг — больше знаний!

Заберите 30% скидку новым пользователям на все книги Литрес с нашим промокодом

ПОЛУЧИТЬ СКИДКУ

Данный текст является ознакомительным фрагментом.