Оценить:
 Рейтинг: 0

Имитационное моделирование

Год написания книги
2018
<< 1 2 3 >>
На страницу:
2 из 3
Настройки чтения
Размер шрифта
Высота строк
Поля

2) эвристика и правила принятия решений;

3) адаптивное поведение или обучение;

4) правила взаимодействия или топология;

5) среда для взаимодействия.

Краткая история имитационного моделирования

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

Ранние попытки применения моделирования можно обнаружить еще до начала Второй мировой войны, когда Джон фон Нейман и Станислав Улам разработали метод моделирования Монте-Карло, чтобы помочь в создании атомного оружия. Современная эра имитационного моделирования началась в 1950-х годах, когда новые концепции и методы для создания имитационных моделей были реализованы с помощью программ на доступных компьютерных языках, таких как машинный код, язык ассемблера или FORTRAN. Компьютерная техника в то время была дорогой, медленной и не всегда надежной. Имеющиеся языки программирования в полной мере не подходили для создания имитационных моделей.

В начале 1960-х годов Джеффри Гордон из IBM представил компьютерный язык под названием GPSS (General Purpose Simulation System). Этот новый язык впервые был использован в компании IBM для анализа сложных систем, но быстро получил широкое признание среди различных организаций, в том числе военных. В 1962 году Герберт Карр разработал язык моделирования SIMSCRIPT. Это программное обеспечение было создано в качестве инструмента моделирования запасов для военно-воздушных сил США. Примерно в это же время норвежские ученые Даль и Ньюгард разработали язык SIMULA, который, помимо того что был языком имитационного моделирования, был первым объектно-ориентированным языком программирования.

В марте 1964 года в Стэнфордском университете состоялся семинар по языкам имитационного моделирования, который стал первым официальным местом для разработчиков и пользователей имитационного моделирования для обмена идеями. Необходимость проведения ежегодной конференции была очевидной, и в 1967 году состоялась первая Зимняя конференция по имитационному моделированию. К 1968 году «Общество имитационного моделирования» стало официальным спонсором регулярных конференций и получило широкую известность как ведущая организация для практиков имитационного моделирования.

В начале 1980-х годов появление персонального компьютера привело к дальнейшим изменениям в сфере имитационного моделирования. Два новых языка имитационного моделирования были разработаны в это время: язык SLAM, разработанный в корпорации Pritsker в 1980 году, и язык SIMAN, разработанный компанией Systems Modeling Corporation в 1983 году. В 1980-е годы также появились многочисленные инструменты для имитационного моделирования. В то же время производители программного обеспечения продолжили расширять свои линейки продуктов с помощью пакетов анимации, инструментальных средств разработки моделирования и усовершенствования существующих языков.

К 1990-м годам рынок имитационного моделирования стал более коммерческим и сегментированным. Программное обеспечение (ПО) для имитационного моделирования было разбито на восемь основных категорий с многочисленными предложениями в каждой области (табл. 1.1).

Таблица 1.1

Виды ПО для ИМ

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

Кроме того, появилось сетевое моделирование. Такой подход к разработке средств моделирования реализуется через сеть Интернет, в частности, с помощью веб-браузера. Интернет все больше становится средой для разработки приложений в сфере имитационного моделирования. Еще одна развивающаяся область моделирования, агентное моделирование, начала набирать популярность в 1990-х годах и нашла применение в различных сферах бизнеса, социальной и технической областях. Агентные модели были разработаны для решения проблем: формирования цепочки поставок, оценки поведения потребителей, социального взаимодействия, управления трудовыми ресурсами, анализа фондового рынка, структуры транспортных потоков и т.д. Модели, основанные на агентах, позволяли проверить, как изменения в локальном поведении влияют на поведение, возникающее в больших масштабах.

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

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

Языки имитационного моделирования предназначены для разработки соответствующего программного обеспечения, которое может быть использовано для создания множества приложений имитационного моделирования. В некотором смысле эти языки сопоставимы с 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.
<< 1 2 3 >>
На страницу:
2 из 3