Процесс разработки и машинной реализации математической модели включает 4 этапа:
1. Построение концептуальной модели включает:
· постановку целей и задач моделирования. Разработчик модели должен определить цель моделирования, и какие задачи будут решаться с ее помощью. От цели зависит, какие процессы в реальной системе следует выделить и отразить в модели, а от каких процессов абстрагироваться, какие характеристики процессов учитывать, а какие – нет, какие соотношения между переменными должны быть отражены в модели;
· структуризацию модели, т.е. выделение отдельных подсистем, определение элементарных компонентов модели и их связей на каждом уровне иерархии. В имитационном моделировании структура модели отражает структуру реального объекта моделирования на некотором уровне абстракции, а связи между компонентами модели является отражением реальных связей. Структуризацию модели рекомендуется производить с привлечением методологии и средств системного моделирования (например, технологии IDEF0).
· выдвижение гипотез и предположений. При построении модели гипотезы служат для заполнения пробелов в понимании проблемы исследователем. В ходе работы с моделью возможно многократное возвращение к этому этапу (в зависимости от полученных результатов моделирования и новой информации об объекте);
· определение параметров и переменных модели. При определении параметров и переменных модели составляется перечень входных и выходных переменных, а также внутренних параметров объекта – оригинала;
Переменные /параметры/ модели выполняют в ней разную роль:
- управляемые (управляющие) переменные – переменные, которые могут изменяться исследователем (управляемые входы модели);
- независимые переменные /параметры/ – это внешние величины, воздействия на систему внешней среды, которые не зависят от процессов, происходящих в изучаемой системе (неуправляемые входы модели);
- зависимые переменные – значения этих переменных есть результат (функция) воздействия на систему входных переменных (выходы модели);
- эндогенные переменные – их значения определяются в ходе действия компонент системы (т.е. «внутри» системы);
- экзогенные переменные – определяются либо исследователем, либо внешней средой, т.е. в любом случае действуют на систему извне;
· обоснование выбора показателей и критериев эффективности системы. Выбранные показатели и критерии эффективности должны отражать цель функционирования и представлять собой функции переменных и параметров объекта - оригинала;
· составление содержательного описания модели, которое используется как основной документ, характеризующий результаты работы по концептуальному моделированию.
2. Разработка алгоритма и программная реализация модели включают:
· построение логической схемы алгоритма. Вначале создается укрупненная (обобщенная) схема моделирующего алгоритма, которая задает общий порядок действий при моделировании исследуемого объекта. Затем разрабатывается детальная схема, каждый элемент которой впоследствии превращается в отдельную инструкцию программы;
· получение математических соотношений, содержащее аналитическую часть в виде явных функций и имитационную часть в виде моделирующего алгоритма (математическая модель);
· проверку достоверности алгоритма. Проверка достоверности алгоритма должна дать ответ на вопрос: насколько адекватно алгоритм отражает замысел моделирования, сформулированный на этапе концептуального проектирования;
· выбор вычислительных и программных средств разработки - выбирается тип ЭВМ, среда и язык программирования;
· программирование /кодирование/. Элементы системы, их связи, параметры и переменные должны быть выражены средствами моделирования, т.е. в среде моделирования должны быть определены переменные и параметры, построены процедуры изменения переменных и характеристик модели во времени. При необходимости, для большего понимания процессов, должно быть разработано анимационное представление процессов;
· проверку корректности программы. На этом этапе необходимо оценить затраты машинного времени для выполнения одной реализации моделируемого процесса на контрольных примерах, для которых характеристики поведения реальной системы известны либо очевидны, убедиться в правильности функционирования программы.
Нужно также выполнить калибровку и идентификацию модели, т.е. осуществить сбор данных и измерение тех характеристик в реальной системе, которые должны быть введены в модель в качестве параметров и распределений случайных величин.На этом этапе необходимо помнить, что именно от качества исходной информации об объекте - оригинале зависит достоверность результатов моделирования;
3. Проведение машинных экспериментовс моделью включает:
· планирование машинного эксперимента. План эксперимента должен содержать комбинации входных переменных, для которых должно проводиться моделирование. Задача заключается в составлении оптимального плана эксперимента, реализация которого позволит при небольшом числе машинных испытаний получить достоверные данные о закономерностях функционирования объекта - оригинала;
· проведение модельных экспериментов согласно разработанному плану. В простейшем случае эксперимент – это прогоны модели при различных значениях существенных параметров (факторов) и регистрация характеристик ее поведения. Такой вид использования модели называется прогнозом, или экспериментом типа «что будет, если…» (см. модели поведения).
Компьютерное моделирование позволяет не только получить прогноз, но и определить, какие управляющие воздействия на систему приведут к благоприятному развитию событий (см. модели выбора).
В более сложных случаях компьютерный эксперимент включает анализ чувствительности модели, оценку рисков принятия различных управляющих решений, оптимизацию функционирования модели.
· представление результатов моделирования. Результаты моделирования могут быть представлены в виде таблиц, графиков, диаграмм, мнемосхем и т.д. В большинстве случаев наиболее простой формой отчета является таблица, хотя графики нагляднее иллюстрируют результаты исследования.
Использование визуализации при имитационном моделировании трудно переоценить. Визуализация результатов моделирования (построение графиков, таблиц, диаграмм) помогает восприятию и интерпретации результатов моделирования. Но наибольший эффект – вплоть до эффекта присутствия – дает анимированное представление поведения системы и ее частей. Средства анимации позволяют пользователю легко создавать виртуальный мир (совокупность динамических графических образов, ожившую мнемосхему и т.п.), управляемый динамическими параметрами модели по законам, определенным пользователем с помощью уравнений и логики моделируемых объектов. Визуальное представление поведения системы помогает пользователю глубже проникнуть в суть происходящих в ней процессов;
· выдачу рекомендаций по функционированию или оптимизации объекта - оригинала. Интерпретация результатов моделирования преследует цель перехода от информации, полученной в ходе машинного эксперимента с моделью, к выводам, касающимся процесса функционирования реального объекта. На основании результатов моделирования принимается решение о том, при каких условиях он будет функционировать наилучшим образом.
4. Реализация, т.е. применение новых знаний, полученных из результатов моделирования, для принятия решений в реальных условиях – заключительный этап моделирования.
Перечисленные четыре этапа моделирования практически никогда не выполняются строго последовательно, а реализуются итеративно, по крайней мере, первые три этапа.