СОЗДАНИЕ ИМИТАЦИОННЫХ МОДЕЛЕЙ
После составления и проверки логической блок-схемы алгоритма переходят к программированию модели. В ряде случаев процессу создания программы предшествует выбор моделирующей ЭВМ и системы программирования. Однако в настоящее время возможности такого выбора на практике ограничены.
Программирование включает в себя следующие этапы [11, 15, 21]:
- 1) составление плана разработки программы с оценкой затрат памяти на цикл работы модели и затрат времени на программирование и отладку;
- 2) разделение модели на модули, допускающие одновременную работу по программированию и отладке;
- 3) построение блок-схемы программы и ее анализ с точки зрения экономии количества команд, объема памяти и времени счета;
- 4) подготовку формы представления входных и выходных данных;
- 5) составление программы на языке, применяемом на данной ЭВМ;
- 6) проверку программы с использованием тестов;
- 7) проведение необходимых исправлений;
- 8) составление технической документации.
Кроме того, в процессе программирования неоднократно проводится проверка правильности программы.
Этап получения и анализа результатов — заключительный. Его трудоемкость (вместе с подведением итогов моделирования и принятием рекомендаций по проектированию системы) составляет примерно 45 % общих затрат.
До перехода к последнему этапу необходимо подготовить планы проведения экспериментов, расчетов на ЭВМ и анализа результатов с учетом статистических закономерностей, иллюстрации данных моделирования. В этой главе остановимся на наиболее важных вопросах реализации перечисленных выше этапов.
Особенности систем моделирования
Первые модели, которые были достаточно просты, программировались на машинно-ориентированных языках. Рост сложности моделируемых систем привел к применению для моделирования высокоуровневых универсальных языков типа Pascal, C + + , Java, Prolog.
Однако в ряде случаев программирование отдельных блоков (например, монитора моделирования) на этих языках оказывалось более трудоемким, нежели разработка имитирующего алгоритма.
Одной из программных систем, ориентированных на имитационное моделирование дискретных (а затем и непрерывных) систем, является язык GPSS (General Perpouse System Simulator). Разработанный в 1961 г., он претерпел много модификаций вплоть до 1993 года (GPSS World) и 1996 г. (Micro-GPSS) и в настоящее время служит основным средством объектно-ориентированного моделирования.
Рассмотрим в качестве примера основные элементы этого языка [2].