Специализированные языки моделирования

Основное отличие большинства языков моделирования от универсальных языков программирования состоит в обеспечении ими решения тех специфических задач, которые возникают при имитационном исследовании.
В зависимости от используемых при динамической композиции моделируемых систем понятий принята и современная классификация языков моделирования: классы языков, ориентированные, соответственно, на работы, события или процессы. Часто выделяют еще один класс языков моделирования: языки, ориентированные на транзакты. В этих языках моделирование системы проводится путем движения транзактов (сообщений) через специализированные блоки действий модели. Специализированные блоки соединяются в структуры, отражающие логику действий и различные потоки моделируемой системы. Моделирующая программа создает (генерирует) транзакты, которые затем во времени проходят через блоки системы, воспроизводя логику функционирования моделируемой системы. Транзактные языки можно отнести к языкам процессов.
Любой объект, описанный в терминах одной из рассмотренных схем, можно описать и на основе двух других. Речь идет лишь об удобстве и эффективности представления моделируемой системы. Сформулируем некоторые рекомендации по применению того или иного из рассмотренных способов представления динамики моделируемой системы.
Язык моделирования, основанный на механизме расписания событий, обеспечивает экспериментатору строгий контроль прохождения программы.
Язык работ удобен для описания систем с большим числом разнообразных ресурсов, так как он позволяет записывать условия их доступности в компактной форме.
Объединение нескольких событий в одну программу, допустимое языком процессов, облегчает описание динамики системы. При этом, с одной стороны, сокращается число необходимых «вспомогательных» операторов, а с другой — проясняется общая динамическая структура системы, поскольку логика каждого процесса сосредотачивается в одной программе.