2.2. Этапы моделирования.
Процесс моделирования (проведения вычислительного или информационного эксперимента) можно разделить на ряд этапов: постановка задачи, выбор и описание модели, выбор и обоснование метода моделирования, алгоритмизация модели и метода моделирования, разработка и отладка программы, моделирование и анализ полученных результатов.
Рассмотрим последовательно эти этапы.
Постановка задачи.
На этом этапе формируется цель моделирования, производится анализ исходных данных и результатов моделирования, определяются условия, при которых будет выполняться моделирование и ориентировочно прикидываются приближенные значения величин и их размерности.
Выбор и описание модели.
Данный этап характеризуется тем, что определяются зависимости между исходными данными и результатами моделирования. Эти зависимости представляются в знаковой, числовой (математической), текстовой или другой информационно-логической форме.
Выбор и обоснование метода моделирования.
Для получения результата моделирования необходимо выбрать численный метод решения или последовательность функционирования информационной модели. Выбор производится с учетом точности вычисления, времени моделирования, требуемого объема памяти и т.д. Методами могут быть: различные методы решения дифференциальных или алгебраических уравнений; методы, основанные на многочисленных, оптимальных или статистических, способах получения прогнозируемого или управляющего результата.
Алгоритмизация модели и метода моделирования.
На этом этапе составляются алгоритмы модели и метода моделирования в соответствии с выбранными математическими или информационными моделями и численными методами решения уравнений или моделей функционирования систем, явлений или процессов. В соответствии с понятием алгоритма данный этап разбивается на ряд самостоятельных участков и устанавливается последовательность их реализации на ЭВМ. Алгоритм может быть представлен в словестной (текстовой, текстово-знаковой) форме, в виде блок-схемы или псевдокода (алгоритмического языка). Если рассматривать процесс моделирования в целом, то целесообразно разработать на данном этапе алгоритмы моделей проведения эксперимента (моделирования), представления исходных данных и результатов моделирования. Алгоритм проведения эксперимента должен включать данные: параметры модели и внешних условий, последовательность их изменения и фиксации. Если в качестве исполнителя алгоритма используются языки визуального программирования, например, Visual Basic, Delphi, то необходимо учитывать то, что действия выполняются не над переменными, а над объектами. В качестве объектов могут быть и переменные и элементы управления. В этом случае разрабатыва
ются проекты, которые состоят из форм, на которых формируются элементы управления, и программ, в которых преобразования переменных выполняются с учетом выбранных элементов управления. Вообще, сам процесс алгоритмизации можно разбить на два этапа: общий и частный. При общей алгоритмизации составляется просто последовательность действия над переменными, которая представляет общую структуру алгоритма исследования. А частный алгоритм должен составляться с учетом исполнителя алгоритам и использования элементов управления. Такой алгоритм позволяет любым пользователям разобраться с последовательностью преобразований в соответствии с моделью объекта и метода реализации исследования. Программа составляется на одном из алгоритмических языков, например, Turbo-Pascal, С/C++, Visual Basic, Delphi и т.д. Выбор языка программирования производится с учетом конкретной ЭВМ и опыта работы. В результате отладки программы обнаруживаются и устраняются ошибки, допущенные в программе. Ошибки в программах бывают синтаксические и логические. С помощью синтаксического контроля программы транслятором выявляются и устраняются недопустимые конструкции с точки зрения правил их построения, принятых в выбранном алгоритмическом языке. Сообщения о таких ошибках выдаются на печать. После устранения синтаксических ошибок проверяется логика работы разработанной программы в процессе ее выполнения. На этом этапе могут быть предусмотрены округленные контрольные результаты, которые сопоставляются с результатами, полученными на машине.
В отладку программ исследования объектов должны входить элементы тестирования программ, с помощью которых
определяется правильность создания алгоритма и программы.
Модель программы моделирования задает порядок изменения параметров моделей объекта и внешних условий, время моделирования и т.д. Модель объекта может представляться совместно с моделью внешних условий, т.к. математически или информативно бывает довольно трудно разделить эти модели. В свою очередь модель объекта может задаваться в словесной форме; в виде дифференциальных или алгебраических уравнений, или в ином математическом виде; в форме графа или графическом изображении; комплексной форме.
Основными формами представления моделей являются:.
Словесная форма информационной модели. Требуется составить модель продажи билетов в кинотеатре. Начальные условия: количество сеансов, количество мест, стоимость билета.
Результаты моделирования: общий вид зрительного зала с отображением проданных билетов на конкретный сеанс, количество проданных билетов на конкретный сеанс и общая дневная выручка.
Словесная форма представления моделей чаще всего задается в виде таблицы данных.
Знаковая (математическая) форма модели.
Данная форма выражения модели представляется следующими уравнениями:
алгебраическими (информационная модель производства)
a1x1 + b2x2 <= c1,
a2x1 + b2x2 <= c2; z<=k1x1 + k2x2.
дифференциальными ( динамическая модель систем)
a2d2X/dt2 + a1dX/dt + a0=0,
систем дифференциальных уравнений
через вершину Xk. В матрице достижимости графа элемент сij должен ранятся 1. Таким образом, просматриваются все вершины.
Блочная (структурная) форма представления моделей
Данная форма представления моделей может быть реализована тогда, когда каждый функциональный блок (элемента) описывается математическими зависимостями и имеются средства для моделирования таких систем, например, с помощью пакета программ MatLab.
В свою очередь модели можно классифицировать, как:
статические или динамические;
линейные и нелинейные;
непрерывные и дискретные;
стационарные и нестационарные;
с сосредоточенными или распределенными параметрами.