Проблемно-ориентированные пакеты программ моделирования

Пакеты программ моделирования разрабатывают, как правило, для некоторого формального класса задач со сравнительно узкой областью применения. Существует несколько типов пакетов программ моделирования. Наряду с собственно программами имитации в состав пакета входят и сервисные программы, облегчающие работу пользователя. К числу сервисных относятся программы ввода исходных данных о моделируемом объекте, программы преобразования описания объекта моделирования к стандартной формальной схеме, принятой в рамках данного пакета, программы обработки данных имитационного эксперимента. В частности, в сервисные программы могут быть включены программы-генераторы, которые по описанию задачи на формализованном входном языке генерируют программы имитации. Общим для пакетов программ моделирования является то, что пользователь для решения задачи использует готовое программное обеспечение, настраивая его на решение своей задачи.
При условии, что задача исследования хорошо формализуется в рамках математического аппарата пакета, такое моделирование может существенно сократить время на подготовку задачи к счету на ЭВМ. Недостатком этого подхода является, как правило, сравнительно узкая область применения каждого проблемно-ориентированного пакета программ. Чтобы расширить область применения пакета, часть его программного обеспечения делают открытым, т. е. допускается возможность включения в его состав и программ пользователей, реализующих нестандартные операции по моделированию.
Интересным примером построения проблемно-ориентированных пакетов программ моделирования является пакет, получивший название универсальной автоматизированной имитационной модели (УАИМ) [9]. Основная концепция УАИМ предполагает переложение на ЭВМ большей части работ, выполняемых при подготовке к моделированию и при проведении исследований на модели. Автоматизация основных процессов имитационного исследования сложных технических систем (описание объекта моделирования, построение моделирующего алгоритма, его программирование, организация вычислений на ЭВМ) осуществляется на базе заранее разработанных программ, объединенных в единый программный комплекс.
Средства УАИМ позволяют настраиваться на моделирование любого объекта, формализуемого в рамках используемого математического аппарата. «Универсальность» УАИМ определяется возможностью моделировать в ее рамках многоуровневые сложные системы достаточно произвольной структуры с элементами, которые являются динамическими системами в широком смысле слова (удовлетворяющих весьма общим предположениям относительно характера функционирования) [9, 10]. Программы имитации конкретного пакета (конкретной АИМ) создаются только для некоторой стандартной формы описания моделируемого объекта и реализуются в виде стандартного программного модуля.
Структурный аспект взаимодействия элементов моделируемой системы в процессе имитации описывается моделью сопряжения элементов сетью идеальных каналов связи. Реализация УАИМ осуществляется таким образом, что структурные и функциональные характеристики моделируемых объектов входят не в описание ее функций и структуры, а являются исходными данными для моделирования. Это обеспечивает гибкость пакета и возможность исследования в его рамках достаточно больших систем (описание характеристик элементов моделируемой системы хранится во внешней памяти ЭВМ).
Кратко суть механизма имитации средствами рассматриваемого пакета состоит в следующем. Имитация процесса функционирования сложной системы представляется совокупностью следующих операций: имитацией функционирования элемента системы, имитацией взаимодействия между элементами и управлением очередностью системных событий. Имитация функционирования элемента системы осуществляется путем настройки стандартного модуля модели (представляющего собой, например, общую динамическую систему с дискретным вмешательством случая) на исходный элемент системы и реализации на ЭВМ полученной модели элемента. Настройка модуля на данный элемент заключается в поиске в архиве во внешней памяти ЭВМ строки, соответствующей данному элементу, и считывании параметров элемента в оперативную память. Реализация на ЭВМ полученной модели состоит в определении момента выхода на границу пространства состояний динамической системы, формализующей элемент, реализации скачка состояния в момент выхода на границу или в момент поступления сигнала.
Имитация взаимодействия между элементами состоит в определении адресов передачи и содержания выходного сигнала имитируемого элемента и передачи его другим элементам системы в соответствии с указанными адресами. Управление очередностью модельных событий осуществляется по принципу планирования событий с использованием механизма переменного шага, т. е. модуль настраивается на тот элемент системы, очередной опорный момент функционирования которого наиболее близок к рассматриваемому текущему моменту модельного времени.
Подробнее с эксплуатируемыми в настоящее время программами имитации сложных систем, построенными с учетом описанных принципов, можно познакомиться в [9].