Основные свойства языков имитационного моделирования
1. Возможность моделирования стохастических факторов.
2. Управление модельным временем.
3. Возможность описания сложных динамических процессов, происходящих в реальной системе.
4. Наличие средств управления имитационным экспериментом.
5. Наличие средств для сбора статистики о характеристиках исследуемой системы с последующим статистическим анализом их значений.
Классификация языков имитационного моделирования
ЯИМ
Универсальные алгоритмические языки Проблемно-ориентированные языки
Специализированные языки
Моделирование Моделирование
непрерывных дискретных
процессов процессов
Dynamo-III
CSMP Схема Схема Схема
DIHYSYS событий активностей процессов
|
|
SIMSCRIPT-II CSL SIMULA
SLAM-II ESL ASPOL
GASP-V GPSS
Использование общеалгоритмических языков для программирования имитационных моделей возможно, но неэффективно, т.к. необходимо обеспечивать свойства, которые в языки имитационного моделирования уже встроены. Специализированные ЯИМ подразделяются на две самостоятельные группы, в соответствии с двумя независимыми видами имитации.
В языках моделирования непрерывных процессов для их описания используются дифференциальные уравнения. Изменение состояния системы описывается с помощью переменных состояний и выходных переменных, динамика изменения которых задается уравнениями уровней и скоростей соответственно. Переменные состояний (уровни) описывают состояние системы в данный момент времени. Уравнения скоростей описывают, как изменяется состояние системы за некоторый отрезок времени.
Языки моделирования дискретных процессов реализуют одну из трех основных схем функционирования дискретно-событийных мониторов.
В языках, ориентированных на схему активностей, реализована схема интеррогативного управления. Программа состоит из двух частей: проверка условий и выполнение активностей. Перед очередным сдвигом модельного времени проверяются все контролирующие условия. В зависимости от того, какие из них выполняются, происходит исполнение команд изменения состояния, связанных с выполнением определенной активности, и сдвиг модельного времени.
|
|
В языках, ориентированных на схему событий, реализовано императивное управление. Каждое событие происходит мгновенно в модельном времени в тот момент, когда динамическое состояние модели показывает, что сложились условия для его наступления.
В основе языков, ориентированных на процессы, лежит понятие процесса как совокупности событий, описывающих поведение системы. Написанная на таком языке программа работает так же, как несколько программ, управляемых независимо одна от другой, либо посредством просмотра активностей, либо посредством регламентирования событий. Особенностью программирования по схеме процессов является использование точек реактивации и механизмов синхронизации. Частным случаем схемы процессов является схема транзактов.
При выборе того или иного из специализированных языков моделирования необходимо произвести их сравнение с позиций эффективности реализации, возможности разрешения динамических коллизий (синхронизация, временные узлы), адекватности декомпозиции предметной области.
В настоящее время существует несколько десятков специализированных систем имитационного моделирования и их число растет. В таблице приведены известные зарубежные системы имитационного моделирования и их краткая характеристика.
№ | Название | Краткая характеристика | Ориент. цена, $ |
1 | CSSL-IV (Continious System Simulation Language) | Для моделирования непрерывных систем, описанных дифференциальными уравнениями | 12500 |
2 | DESCTOP | Непосредственная симуляция, экранный редактор, цветная графика | 2400 |
3 | DSL (Dynamic Simulation Language) | Для моделирования непрерывных систем, описанных дифференциальными уравнениями | 10000 |
4 | DYNAMO III | Язык непрерывного моделирования | 10000 |
5 | GASP V (General Activity Simulation Program) | Язык дискретного и непрерывного моделирования с интерактивными возможностями | 1800 |
6 | GPSS (General Purpose Simulation System) | Язык дискретной процессно-ориентированной симуляции | 4000 - 7500 |
7 | GVS (General Visual System) | Для моделирования авиационных систем | 19500 |
8 | INSIGHT | Для дискретной событийно-ориентированной симуляции | 3000 |
9 | MAST (Manufacturing System Design Tool) | Для симуляции ГПП | 8500 |
10 | Network II | Симулятор сетей – средство проектирования и анализа вычислительных и коммуникационных систем | 24500 |
11 | PASSIM | Пакет для событийно-ориентированной симуляции | 1250 |
12 | SEE WHY | Система визуальной интерактивной событийно-ориентированной симуляции | 30000 |
13 | SIMAN (Simulation Analysis) | Для моделирования характеристик производственных систем | 7500 |
14 | SIMKIT | Дискретная событийно-ориентированная симуляция в среде экспертной системы | 15000 |
15 | SIMSCRIPT II | Для дискретной событийно-ориентированной симуляции | 6000 |
16 | SLAM II | Для различных видов дискретного моделирования | 6000 |
17 | TESS | Система поддержки моделирования с базой данных и инженерной графикой | 34000 |
Средняя стоимость - $9000 … 11000 |
Однако многие задачи исследования, свойственные конкретным предметным областям, достаточно сложно описать с помощью конструкций специализированных ЯИМ. Идентификация ошибок исполнения модели производится на уровне категорий языка, а не предметной области, что снижает надежность исследования, поэтому в настоящее время наиболее перспективными являются проблемно-ориентированные ЯИМ.
Оценка адекватности проблемно-ориентированной модели
Исследуемой системе
Объектом исследования в имитационном эксперименте является не сама исследуемая система, а её модель. Результаты, получаемые на модели, переносятся на систему, поэтому необходимо получить результаты, характеризуемые высокой информационной надежностью (достоверностью). Такая достоверность определяется:
|
|
1. Вероятностной мерой адекватности модели исследуемой системе (D1).
2. Достоверностью статистического эксперимента с моделью (D2). D2 обеспечивается методами стратегического и тактического планирования эксперимента.
В этом случае технология имитационного эксперимента включает две фазы: специфицирующую (информационную) и вычислительную (статистическую, интерпретирующую). Таким образом, информационная надежность модели D определяется как D=D1*D2.
Оценки D1 основаны на сопоставлении имитационной модели, написанной на проблемно ориентированном языке, с содержательно идентичной моделью, написанной на универсальном языке программирования или моделирования. В качестве оценки D1 рассматривается информационная мера неадекватности модели.
– уровень предметной ориентации ПОЯМ,
LЯМ – сложность класса задач, т.е. длина программы в условных лингвистических единицах на базовом языке программирования или моделирования,
LПОЯМ – длина программы в условных лингвистических единицах на проблемно-ориентированном языке моделирования,
p – индивидуальная надежность пользователя, т.е. вероятность отсутствия ошибки в одной лингвистической единице описания модели.
Проблемная ориентация ПОЯМ приводит к сокращению описания модели.
Nad |
Lпоям (команд) |
1 |
2 |
4 |
3 |
50 100 150 200 250 |
20 15 10 5 |
1-U=5, p=0.99
2-U=3, p=0.99
3-U=5, p=0.9
4-U=3, p=0.9
При p=1 Nad=0. При уменьшении p увеличивается Nad. Например, для U=5 и Lпоям=250 при p=0.999 Nad=0.1; при p=0.99 Nad=1; при p=0.9 Nad=10.
С ростом сложности модели, т.е. с увеличением длины модели LПОЯМ и снижением индивидуальной надежности пользователя p повышение уровня предметной ориентации языка имитационного моделирования становится основным средством обеспечения адекватности модели.