Имитационная модель воспроизводит поведе ние сложной системы взаимодействующих элемен тов. Для имитационного моделирования характерно наличие следующих обстоятельств (одновременно всех или некоторых из них):
- объект моделирования - сложная неоднородная система;
- в моделируемой системе присутствуют факторы случайного поведения;
- требуется получить описание процесса, развивающегося во времени;
- принципиально невозможно получить результаты моделирования без использования компьютера.
Состояние каждого элемента моделируемой системы описывается набором параметров, которые хранятся в памяти компьютера в виде таблиц. Взаимодействия элементов системы описываются алгоритмически. Моделирование осуществляется в пошаговом режиме. На каждом шаге моделирования изменяются значения параметров системы. Программа, реализующая имитационную модель, отражает изменение состояния системы, выдавая значения ее искомых параметров в виде таблиц по шагам времени или в последовательности происходящих в системе событий. Для визуализации результатов моделирования часто используется графическое представление, в т.ч. анимированное.
Детерминированное моделирование
Имитационная модель основана на подражании реальному процессу (имитации). Например, моделируя изменение (динамику) численности микроорганизмов в колонии, можно рассматривать много отдельных объектов и следить за судьбой каждого из них, ставя определенные условия для его выживания, размножения и т.д. Эти условия обычно задаются в вербальной форме. Например: по истечении некоторого промежутка времени микроорганизм делится на две части, а по прошествии другого (большего) временного отрезка - погибает. Выполнение описанных условий алгоритмически реализуется в модели.
Другой пример: моделирование движения молекул в газе, когда каждая молекула представляется в виде шарика с определенным направлением и скоростью движения. Взаимодействие двух молекул или молекулы со стенкой сосуда происходит согласно законам абсолютно-упругого столкновения и легко описывается алгоритмически. Получение интегральных (общих, усредненных) характеристик системы производится на уровне статистической обработки результатов моделирования.
Такой компьютерный эксперимент фактически претендует на воспроизведение натурного эксперимента. На вопрос: "Зачем это нужно делать?" можно дать следующий ответ: имитационное моделирование позволяет выделить "в чистом виде" следствия гипотез, заложенных в представления о микрособытиях (т.е. на уровне элементов системы), избавив их от неизбежного в натурном эксперименте влияния других факторов, о которых мы можем даже не подозревать. Если такое моделирование включает и элементы математического описания процессов на микроуровне, и если исследователь при этом не ставит задачу поиска стратегии регулирования результатов (например, управления численностью колонии микроорганизмов), то отличие имитационной модели от математической (дескриптивной) оказывается достаточно условным.
Приведенные выше примеры имитационных моделей (эволюция колонии микроорганизмов, движение молекул в газе) приводят к детерминиро ванному описанию систем. В них отсутствуют элементы вероятности, случайности событий в моделируемых системах. Рассмотрим пример моделирования системы, обладающей этими качествами.
Модели случайных процессов
Кому не случалось стоять в очереди и с нетерпением прикидывать, успеет ли он сделать покупку (или заплатить за квартиру, покататься на карусели и т.д.) за некоторое имеющееся в его распоряжении время? Или, пытаясь позвонить по телефону в справочную и натыкаясь несколько раз на короткие гудки, нервничать и оценивать - дозвонюсь или нет? Из таких "простых" проблем в начале XX века родилась новая отрасль математики - теория массового обслуживания, использующая аппарат теории вероятностей и математической статистики, дифференциальных уравнений и численных методов. Впоследствии выяснилось, что эта теория имеет многочисленные выходы в экономику, военное дело, организацию производства, биологию и экологию и т.д.
Компьютерное моделирование при решении задач массового обслуживания, реализуемое в виде метода статистических испытаний (метода Монте-Карло), играет важную роль. Возможности аналитических методов решения реально возникающих задач массового обслуживания весьма ограничены, в то время как метод статистических испытаний универсален и относительно прост.
Рассмотрим простейшую задачу этого класса. Имеется магазин с одним продавцом, в который случайным образом входят покупатели. Если продавец свободен, то он начинает обслуживать покупателя сразу, если зашло одновременно несколько покупателей - выстраивается очередь. Есть немало других аналогичных ситуаций:
- ремонтная зона я автохозяйстве и автобусы, сошедшие с линии из-за поломки;
- травмпункт и больные, пришедшие на прием по случаю травмы (т.е. без системы предварительной записи);
- телефонная станция с одним входом (или одной телефонисткой) и абоненты, которых при занятом входе ставят в очередь (такая система иногда
практикуется); - сервер локальной сети и персональные машины на рабочем месте, которые шлют сообщение серверу, способному воспринять разом и обработать не более одного сообщения.
Процесс прихода покупателей в магазин - случайный процесс. Промежутки времени между приходами любой последовательной пары покупателей - независимые случайные события, распределенные по некоторому закону, который может быть установлен лишь путем многочисленных наблюдений (либо для моделирования взят некоторый его правдоподобный вариант). Второй случайный процесс в этой задаче, никак не связанный с первым, - длительность обслуживания каждого из покупателей.
Целью моделирования систем такого вида является получение ответа на ряд вопросов. Относительно простой вопрос - какое в среднем время придется стоять и очереди при заданных законах распределения указанных выше случайных величин? Более сложный вопрос; каково распределение времен ожидания обслуживания в очереди? Не менее сложный вопрос: при каких соотношениях параметров входных распределений наступит кризис, при котором очередь до вновь вошедшего покупателя не дойдет никогда? Если задуматься над этой относительно простой задачей, возможные вопросы будут множиться.
Способ моделирования выглядит в общих чертах так. Используемые математические формулы - законы распределения исходных случайных величин; используемые числовые константы - эмпирические параметры, входящие в эти формулы. Не решается никаких уравнений, которые использовались бы при аналитическом исследовании данной задачи. Вместо этого происходит имитация очереди, разыгрываемая с помощью компьютерных программ, генерирующих случайные числа с заданными законами распределения. Затем производится статистическая обработка совокупности полученных значений величин, определяемых заданными целями моделирования. Например, находится оптимальное количество продавцов для разных периодов времени работы магазина, которое обеспечит отсутствие очередей. Математический аппарат, который здесь используется, называется методами математической статистики .
В статье "Моделирование экологических систем и процессов" описан другой пример имитацион ного моделирования: одна из многих моделей системы "хищник-жертва". Особи видов, находящихся в указанных отношениях, по определенным правилам, содержащим элементы случайности, перемещаются, хищники съедают жертв, и те и другие размножаются и т.д. Такая модель не содержит никаких математических формул, но требует стати стической обработки результатов.
Пример алгоритма детерминированной имитационной модели
Рассмотрим имитационную модель эволюции популяции живых организмов, известную под названием "Жизнь", которую легко реализовать на любом языке программирования.
Для построения алгоритма игры рассмотрим квадратное поле из п -\- 1 столбцов и строк с обычной нумерацией от 0 до п. Крайние граничные столбцы и строки для удобства определим как "мертвую зону", они играют лишь вспомогательную роль.
Для любой внутренней клетки поля с координатами (i,j) можно определить 8 соседей. Если клетка "живая", ее закрашиваем, если клетка "мертвая", она пустая.
Зададим правила игры. Если клетка (i,j) "живая" и ее окружает более трех "живых" клеток, она погибает (от перенаселения). "Живая" клетка также погибает, если в ее окружении находится менее двух "живых" клеток (от одиночества). "Мертвая" клетка оживает, если вокруг нее появляются три "живые" клетки.
Для удобства введем двумерный массив А , элементы которого принимают значение 0, если соответствующая клетка пустая, и 1, если клетка "живая". Тогда алгоритм определения состояния клетки с координатой (i , j ) можно определить следующим образом:
S:=A+A+A+A+A+A+A+A;
If (A = 1) And (S > 3) Or (S < 2)) Then B: =0;
If (A = 0) And (S = 3)
Then B: = 1;
Здесь массив Вопределяет координаты поля на "следующем этапе. Для всех внутренних клеток от i = 1 до n - 1 и j = 1 до n - 1 справедливо сказанное выше. Отметим, что последующие поколения определяются аналогично, стоит лишь осуществить процедуру переприсваивания:
For I: = 1 То N - 1 Do
For J: = 1 То N - 1 Do
A : = В ;
На экране дисплея удобнее выводить состояние поля не в матричном, а в графическом виде.
Осталось лишь определить процедуру задания начальнойконфигурации игрового поля. При случайном определении начального состояния клеток подходит алгоритм
For I: = 1 To K Do
Begin K1: = Random (N-1);
K2:= Random (N-1)+1;
End;
Интереснее для пользователя самому задавать начальную конфигурацию, что легко осуществить. В результате экспериментов с этой моделью можно найти,например, устойчивые расселения живых организмов, которые никогда не погибают, оставаясь неизменными или изменяя свою конфигурацию с определенным периодом. Абсолютно неустойчивым (гибнущим во втором поколении) является расселение "крестом".
В базовом курсе информатики ученики могут реализовать имитационную модель "Жизнь" в рамках раздела "Введение в программирование". Более основательное освоение имитационного моделирования может происходить в старших классах в профильном или элективном курсе информатики. Далее будет говориться о таком варианте.
Начало изучения - лекция об имитационном моделировании случайных процессов. В российской школе понятия теории вероятностей и математической статистики лишь начинают внедряться в курс математики, и учителю следует быть готовым к тому, чтобы самому сделать введение в этот важнейший для формирования мировоззрения и математической культуры материал. Подчеркнем, что речь идет об элементарном введении в круг обсуждаемых понятий; это можно сделать за 1-2 часа.
Потом обсуждаем технические вопросы, связанные с генерацией на ЭВМ последовательностей случайных чисел с заданным законом распределения. Опираться при этом можно на то, что в каждом универсальном языке программирования есть датчик равномерно распределенных на отрезке от 0 до 1 случайных чисел. На данном этапе нецелесообразно вдаваться в сложный вопрос о принципах его реализации. Опираясь на имеющиеся датчики случайных чисел, показываем, как можно устроить
а) генератор равномерно распределенных случайных чисел на любом отрезке [а, b];
б) генератор случайных чисел под практически любой закон распределения (например, используя интуитивно ясный метод "отбора-отказа").
Начать рассмотрение описанной выше задачи массового обслуживания целесообразно с обсуждения истории решения проблем массового обслуживания (задача Эрланга об обслуживании запросов на телефонной станции). Затем следует рассмотрение простейшей задачи, которую можно сформулировать на примере формирования и обследования очереди в магазине с одним продавцом. Отметим, что на первом этапе моделирования распределения случайных величин на входе можно принять равновероятными, что хоть и не реалистично, но снимает ряд трудностей (для генерации случайных чисел можно просто использовать встроенный в язык программирования датчик).
Обращаем внимание учащихся на то, какие вопросы ставятся в первую очередь при моделировании систем такого вида. Во-первых, это вычисление средних значений (математических ожиданий) некоторых случайных величин. Например, какое среднее время приходится стоять в очереди к прилавку? Или: найти среднее время, проведенное продавцом в ожидании покупателя.
Задача учителя, в частности, состоит в том, чтобы разъяснить, что выборочные средние сами по себе - случайные величины; в другой выборке того же объема они будут иметь другие значения (при больших объемах выборки - не слишком отличающиеся друг от друга). Далее.возможны варианты: в более подготовленной аудитории можно показать способ оценивания доверительных интервалов, в которых находятся математические ожидания соответствующих случайных величин при заданных доверительных вероятностях (известными из математической статистики методами без попытки обоснования). В менее подготовленной аудитории можно ограничиться чисто эмпирическим утверждением: если в нескольких выборках равного объема средние значения совпали в некотором десятичном знаке, то этот знак скорее всего верен. Если при моделировании не удается достичь желаемой точности, следует увеличить объем выборки.
В еще более подготовленной в математическом отношении аудитории можно ставить вопрос: каково распределение случайных величин, являющихся результатами статистического моделирования, при заданных распределениях случайных величин, являющихся его входными параметрами? Поскольку изложение соответствующей математической теории в данном случае невозможно, следует ограничиться эмпирическими приемами: построение гистограмм итоговых распределений и сравнение их с несколькими типичными функциями распределения.
После отработки первичных навыков указанного моделирования переходим к более реалистической модели, в которой входные потоки случайных событий распределены, например, по Пуассону. Это потребует от учащихся дополнительно освоить метод генерирования последовательностей случайных чисел с указанным законом распределения.
В рассмотренной задаче, как и в любой более сложной задаче об очередях, может возникнуть критическая ситуация, когда очередь неограниченно растет со временем. Моделирование приближения к критической ситуации по мере возрастания одного из параметров - интересная исследовательская задача для наиболее подготовленных учащихся.
На примере задачи об очереди отрабатываются сразу несколько новых понятий и навыков:
- понятия о случайных процессах;
- понятия и простейшие навыки имитационного моделирования;
- построение оптимизационных имитационных моделей;
- построение многокритериальных моделей (путем решения задач о наиболее рациональном обслуживании покупателей в сочетании с интересами
владельца магазина).
Задание :
-
Составить схему ключевых понятий;
- Подобрать практические задания с решениями для базового и профильного курсов информатики.
Еще одним примером существенно машинных моделей являются имитационные модели. Несмотря на то что имитационное моделирование становится все более популярным методом исследования сложных систем и процессов, на сегодняшний день нет единого, признаваемого всеми исследователями определения имитационной модели.
В большинстве используемых определений подразумевается, что имитационная модель создается и реализуется с помощью набора математических и инструментальных средств, позволяющих с использованием компьютера провести целенаправленные расчеты характеристик моделируемого процесса и оптимизацию некоторых его параметров.
Существуют и крайние точки зрения. Одна из них связана с утверждением, что имитационной моделью можно признать любое логико-математическое описание системы, которое может быть использовано в ходе проведения вычислительных экспериментов. С этих позиций расчеты, связанные с варьированием параметров в чисто детерминированных задачах, признаются имитационным моделированием.
Сторонники другой крайней точки зрения считают, что имитационная модель - это обязательно специальный программный комплекс, который позволяет имитировать деятельность какого-либо сложного объекта. «Метод имитационного моделирования является экспериментальным методом исследования реальной системы по ее компьютерной модели, который сочетает особенности экспериментального подхода и специфические условия использования вычислительной техники. Имитационное моделирование является машинным методом моделирования, собственно без ЭВМ никогда не существовало, и только развитие информационных технологий привело к становлению этого вида компьютерного моделирования» . Такой подход отрицает возможность создания простейших имитационных моделей без применения компьютера.
Определение 1.9. Имитационная модель - особая разновидность информационных моделей, сочетающая элементы аналитических, компьютерных и аналоговых моделей, которая позволяет с помощью последовательности вычислений и графического отображения результатов ее работы воспроизводить (имитировать) процессы функционирования изучаемого объекта при воздействии на него различных (как правило, случайных) факторов.
Имитационное моделирование применяется сегодня для моделирования бизнес-процессов, цепочек поставок, боевых действий, динамики населения, исторических процессов, конкуренции и других процессов, для прогнозирования последствий управленческих решений в самых разных областях. Имитационное моделирование позволяет исследовать системы любой природы, сложности и назначения и практически с любой степенью детализации, ограниченной лишь трудоемкостью разработки имитационной модели и техническими возможностями используемых для проведения экспериментов вычислительных средств.
Имитационные модели, которые разрабатываются для решения современных практических задач, обычно содержат большое число сложно взаимодействующих стохастических элементов, каждый из которых описывается большим числом параметров и подвергается стохастическим воздействиям. В этих случаях, как правило, натурное моделирование нежелательно или невозможно, а аналитическое решение затруднено или также невозможно. Часто реализация имитационной модели требует организации распределенных вычислений . По этим причинам имитационные модели относятся к существенно машинным моделям.
Имитационная модель предполагает представление модели в виде некоторого алгоритма, реализуемого компьютерной программой, выполнение которого имитирует последовательность смены состояний в системе и таким образом отображает поведение моделируемой системы или процесса.
Обратите внимание!
При наличии случайных факторов необходимые характеристики моделируемых процессов получаются в результате многократных прогонов имитационной модели и последующей статистической обработки накопленной информации.
Заметим, что с точки зрения сиециалиста-нрикладника правомерно трактовать имитационное моделирование как информационную технологию: «Имитационное моделирование контролируемого процесса или управляемого объекта - это высокоуровневая информационная технология, которая обеспечивает два вида действий, выполняемых с помощью компьютера:
- 1) работы по созданию или модификации имитационной модели;
- 2) эксплуатацию имитационной модели и интерпретацию результатов» .
Модульный принцип построения имитационной модели. Итак, имитационное моделирование предполагает наличие построенных логикоматематических моделей, описывающих изучаемую систему во взаимосвязи с внешней средой, воспроизведение протекающих в ней процессов с сохранением их логической структуры и последовательности во времени при помощи средств вычислительной техники. Наиболее рационально строить имитационную модель функционирования системы по модульному принципу. При этом могут быть выделены три взаимосвязанных блока модулей такой модели (рис. 1.7).
Рис. 1.7.
Основная часть алгоритмической модели реализуется в блоке имитации процессов функционирования объекта (блок 2). Здесь организуется отсчет модельного времени, воспроизводится логика и динамика взаимодействия элементов модели, обеспечивается проведение экспериментов для накопления данных, необходимых для расчета оценок характеристик функционирования объекта. Блок имитации случайных воздействий (блок 1) служит для генерирования значений случайных величин и процессов. В его состав входят генераторы стандартных распределений и средства реализации алгоритмов моделирования случайных воздействий с требуемыми свойствами. В блоке обработки результатов имитации (блок 3) рассчитываются текущие и итоговые значения характеристик, составляющие результаты экспериментов с моделью. Такие эксперименты могут состоять в решении сопутствующих задач, в том числе оптимизационных или обратных.
- Лычкина II. II. Указ. соч.
- Распределенные вычисления - способ решения трудоемких вычислительных задачс использованием нескольких компьютеров, чаще всего объединенных в параллельнуювычислительную систему.
- Емельянов А. А, Власова Е. А., Дума Р. В. Имитационное моделирование экономическихпроцессов. М. : Финансы и статистика, 2006. С. 6.
Основными методами имитационного моделирования являются: аналитический метод, метод статического моделирования и комбинированный метод (аналитико-статистический) метод.
Аналитический метод применяется для имитации процессов в основном для малых и простых систем, где отсутствует фактор случайности. Например, когда процесс их функционирования описан дифференциальными или интегро-дифференциальными уравнениями. Метод назван условно, так как он объединяет возможности имитации процесса, модель которого получена в виде аналитически замкнутого решения, или решения полученного методами вычислительной математики.
Метод статистического моделирования первоначально развивался как метод статистических испытаний (Монте-Карло). Это – численный метод, состоящий в получении оценок вероятностных характеристик, совпадающих с решением аналитических задач (например, с решением уравнений и вычислением определенного интеграла). В последствии этот метод стал применяться для имитации процессов, происходящих в системах, внутри которых есть источник случайности или которые подвержены случайным воздействиям. Он получил название метода статистического моделирования .
При исследовании сложных систем, подверженных случайным возмущениям используются вероятностные аналитические модели и вероятностные имитационные модели.
В вероятностных аналитических моделях влияние случайных факторов учитывается с помощью задания вероятностных характеристик случайных процессов (законы распределения вероятностей, спектральные плотности или корреляционные функции). При этом построение вероятностных аналитических моделей представляет собой сложную вычислительную задачу. Поэтому вероятностное аналитическое моделирование используют для изучения сравнительно простых систем.
Подмечено, что введение случайных возмущений в имитационные модели не вносит принципиальных усложнений, поэтому исследование сложных случайных процессов проводится в настоящее время, как правило, на имитационных моделях.
В вероятностном имитационном моделировании оперируют не с характеристиками случайных процессов, а с конкретными случайными числовыми значениями параметров процессов и систем. При этом результаты, полученные при воспроизведении на имитационной модели рассматриваемого процесса, являются случайными реализациями. Поэтому для нахождения объективных и устойчивых характеристик процесса требуется его многократное воспроизведение, с последующей статистической обработкой полученных данных. Именно поэтому исследование сложных процессов и систем, подверженных случайным возмущениям, с помощью имитационного моделирования принято называть статистическим моделированием.
Статистическая модель случайного процесса - это алгоритм, с помощью которого имитируют работу сложной системы, подверженной случайным возмущениям; имитируют взаимодействие элементов системы, носящих вероятностный характер.
При реализации на ЭВМ статистического имитационного моделирования возникает задача получения на ЭВМ случайных числовых последовательностей с заданными вероятностными характеристиками. Численный метод, решающий задачу генерирования последовательности случайных чисел с заданными законами распределения, получил название "метод статистических испытаний" или "метод Монте-Карло".
Так как метод Монте-Карло кроме статистического моделирования имеет приложение к ряду численных методов (взятие интегралов, решение уравнений), то целесообразно иметь различные термины.
Итак, статистическое моделирование - это способ изучения сложных процессов и систем, подверженных случайным возмущениям, с помощью имитационных моделей.
Метод Монте-Карло - это численный метод, моделирующий на ЭВМ псевдослучайные числовые последовательности с заданными вероятностными характеристиками
Методика статистического моделирования состоит из следующих этапов:
1. Моделирование на ЭВМ псевдослучайных последовательностей с заданной корреляцией и законом распределения вероятностей (метод Монте-Карло), имитирующих на ЭВМ случайные значения параметров при каждом испытании;
2. Преобразование полученных числовых последовательностей на имитационных математических моделях.
3. Статистическая обработка результатов моделирования.
Комбинированный метод (аналитико-статистический) позволяет объединить достоинства аналитического и статистического методов моделирования. Он применяется в случае разработки модели, состоящей из различных модулей, представляющих набор как статистических, так и аналитических моделей, которые взаимодействуют как единое целое. Причем, в набор модулей могут входить не только модули, соответствующие динамическим моделям, но и модули, соответствующие статическим математическим моделям.
Проект имитационного моделирования включает следующие этапы: концептуальный, этап интерпретации, экспериментальный этап. Рассмотрим их более подробно.
1. Концептуальный. На этом этапе происходит первичное ознакомление с объектом исследования и выясняется, какие данные необходимы для выполнения проекта. Формируются общие сведения о модели: наименование модели, её назначение и цель разработки. Определяется перечень объектов, на которых планируется использование модели, указываются должностные лица, в чьих интересах будет решаться задача. Описывается физическая сущность моделируемого процесса и область применения модели.
На этом же этапе определяются критерии, по которым будет оцениваться эффективность модели или её качество. Описываются ограничения и допущения, принятые при разработке модели. Перечисляются аналитические методы, которые планируется использовать при разработке модели. Определяется порядок запуска и управления моделью, возможные режимы её использования и связь с другими моделями. Выясняются источники информации, используемой в модели, а также состав и структура этой информации. Если при построении модели планируется использовать случайные величины, то именно на концептуальном этапе обосновываются законы их распределения.
Важно также на этом этапе определить требования к конфигурации технических и программных средств: продумать характеристики технических средств (тип центрального процессора, наличие сопроцессора, объемы оперативной и постоянной памяти и т.д.) и подготовить общее программное обеспечение (операционные системы, сетевые операционные системы и т.п.), общесистемное программное обеспечение (СУБД, офисные пакеты и т.п.).
Следует обеспечить защиту информации, используемой в модели, с этой целью на концептуальном этапе определяется политика безопасности (потенциальные угрозы, возможный ущерб в случае нарушения защиты, группы пользователей, права доступа и т.д.).
2. Этап интерпретации. Он включает в себя формализацию описания моделируемого объекта на основе выбранного CASE - средства. На этом этапе, на естественном языке дается семантическое (смысловое) описание состава исследуемого объекта, взаимодействия между элементами объекта и объекта с внешней средой. На основе описания объекта создается имитационная модель, средствами выбранного для этой цели языка моделирования. На рисунке 6.4. приведен пример модели, созданной средствами ARIS.
Рис. 6.4. Пример модели, выполненной в средеARIS
Здесь же определяются временные и стоимостные характеристики
функций и бизнес-процессов. Пример приведен на рисунке 6.5.
Рис. 6.5. Описание количественных и качественных характеристик
На этом этапе осуществляется и проверка полученной модели на соответствие ее той теоретической схеме, которая была положена в основу формального описания объекта моделирования. Этот процесс часто называют верификацией модели. Заканчивается второй этап проверкой соответствия имитационной модели свойствам реальной системы. Если этого нет, то следует снова вернуться к моменту формализации модели.
3. Экспериментальный этап. Этот этап заключается в проведении численного эксперимента на разработанной модели путем «прогона» ее на ЭВМ. Перед началом исследования полезно составить такую последовательность «прогонов» модели, которая позволила бы получить необходимый объем информации при заданном составе и достоверности исходных данных. Далее на основе разработанного плана эксперимента осуществляют «прогоны» имитационной модели на ЭВМ и проводят обработку результатов с целью представления их в виде, удобном для анализа.
На основе анализа результатов подготавливаются и формулируются окончательные выводы по проведенному моделированию и разрабатываются рекомендации по использованию результатов моделирования для достижения поставленных целей. Часто на основе этих выводов возвращаются к началу процесса моделирования для необходимых изменений в теоретической и практической части модели и повторным исследованиям с измененной моделью. В результате нескольких подобных циклов получают имитационную модель, наилучшим образом удовлетворяющую поставленным задачам.
Существует довольно много программных систем, позволяющих создавать имитационные модели. К ним относятся:
Ø Business Studio (Имитационное моделирование бизнес-процессов)
Ø PTV Vision VISSIM
Ø Tecnomatix Plant Simulation
Некоторые из этих систем рассматриваются более подробно в главе 7
Вопросы к главе 6
1. Что такое имитационное моделирование?
2. Дайте определение имитационной модели.
3. Что является основой всякой имитационной модели?
4. Что является целью имитационного моделирования?
5. Перечислите основные достоинства имитационного моделирования
6. Назовите недостатки имитационного моделирования:
7. Приведите типичные примеры, где может быть применить ИМ
8. Какие существует виды имитационного моделирования?
9. Что такое системная динамика?
10. Каковы компоненты дискретно-событийного моделирования
11. Какова цель агентных моделей?
12. Перечислите этапы имитационного моделирования
В статье поговорим об имитационных моделях. Это довольно сложная тема, которая требует отдельного рассмотрения. Именно поэтому мы попробуем доступным языком объяснить этот вопрос.
Имитационные модели
О чем же идет речь? Начнем с того, что имитационные модели необходимы для воспроизведения каких-либо характеристик сложной системы, в которой происходит взаимодействие элементов. При этом такое моделирование имеет ряд особенностей.
Во-первых, это объект моделирования, который чаще всего представляет собой сложную комплексную систему. Во-вторых, это факторы случайности, которые присутствуют всегда и оказывают определенное влияние на систему. В-третьих, это необходимость описания сложного и длительного процесса, который наблюдается в результате моделирования. Четвертый фактор заключается в том, что без использования компьютерных технологий получить желаемые результаты невозможно.
Разработка имитационной модели
Она заключается в том, что каждый объект имеет определенный набор своих характеристик. Все они хранятся в компьютере при помощи специальных таблиц. Взаимодействие значений и показателей всегда описывается при помощи алгоритма.
Особенность и прелесть моделирования в том, что каждый его этап постепенный и плавный, что дает возможность пошагово менять характеристики и параметры и получать разные результаты. Программа, в которой задействованы имитационные модели, выводит информацию о полученных результатах, опираясь на те или иные изменения. Часто используется графическое или анимированное их представление, сильно упрощающее восприятие и понимание многих сложных процессов, которые осознать в алгоритмичном виде довольно сложно.
Детерминированность
Имитационные математические модели строятся на том, что они копируют качества и характеристики неких реальных систем. Рассмотрим пример, когда необходимо исследовать количество и динамику численности определённых организмов. Для этого при помощи моделирования можно отдельно рассматривать каждый организм, чтобы анализировать конкретно его показатели. При этом условия чаще всего задаются вербально. К примеру, по истечении какого-то отрезка времени можно задать размножение организма, а по прошествии более длительного срока - его гибель. Выполнение всех этих условий возможно в имитационной модели.
Очень часто приводят примеры моделирования движения молекул газа, ведь известно, что они двигаются хаотично. Можно изучать взаимодействие молекул со стенками сосуда или друг с другом и описывать результаты в виде алгоритма. Это позволит получать усредненные характеристики всей системы и выполнять анализ. При этом надо понимать, что подобный компьютерный эксперимент, по сути, можно назвать реальным, так как все характеристики моделируются очень точно. Но в чём смысл этого процесса?
Дело в том, что имитационная модель позволяет выделить конкретные и чистые характеристики и показатели. Она как бы избавляется от случайных, лишних и ещё ряда других факторов, о которых исследователи могут даже не догадываться. Заметим, что очень часто детерминирование и математическое моделирование схожи, если в качестве результата не должна быть создана автономная стратегия действий. Примеры, которые мы выше рассмотрели, касаются детерминированных систем. Они отличаются тем, что у них нет элементов вероятности.
Случайные процессы
Наименование очень просто понять, если провести параллель из обычной жизни. Например, когда вы стоите в очереди в магазине, который закрывается через 5 минут, и гадаете, успеете ли вы приобрести товар. Также проявление случайности можно заметить, когда вы звоните кому-то и считаете гудки, думая, с какой вероятностью дозвонитесь. Возможно, кому-то это покажется удивительным, но именно благодаря таким простым примерам в начале прошлого века зародилась новейшая отрасль математики, а именно теория массового обслуживания. Она использует статистику и теорию вероятности для того, чтобы сделать некоторые выводы. Позже исследователи доказали, что эта теория очень тесно связана с военным делом, экономикой, производством, экологией, биологией и т. д.
Метод Монте-Карло
Важный метод решения задачи на самообслуживание - это метод статистических испытаний или метод Монте-Карло. Заметим, что возможности исследования случайных процессов аналитическим путем довольно сложны, а метод Монте-Карло очень прост и универсален, в чем его главная особенность. Мы можем рассмотреть пример магазина, в который заходит один покупатель или несколько, приход больных в травмпункт по одному или целой толпой и т. д. При этом мы понимаем, что всё это случайные процессы, и промежутки времени между какими-то действиями - это независимые события, которые распределяются по законам, которые можно вывести, только проведя огромное количество наблюдений. Иногда это невозможно, поэтому берется усредненный вариант. Но какова цель моделирования случайных процессов?
Дело в том, что это позволяет получить ответы на множество вопросов. Банально необходимо рассчитать, сколько человеку придется стоять в очереди при учете всех обстоятельств. Казалось бы, это довольно простой пример, но это лишь первый уровень, а подобных ситуаций может быть очень много. Иногда рассчитать время очень важно.
Также можно задать вопрос о том, как можно распределить время, ожидая обслуживание. Еще более сложный вопрос касается того, как должны соотнестись параметры, чтобы до только что вошедшего покупателя очередь не дошла никогда. Кажется, что это довольно лёгкий вопрос, но если задуматься о нем и начать хотя бы немножко усложнять, становится понятно, что ответить не так легко.
Процесс
Как же происходит случайное моделирование? Используются математические формулы, а именно законы распределения случайных величин. Также используются числовые константы. Заметьте, что в данном случае не надо прибегать ни к каким уравнениям, которые используют при аналитических методах. В данном случае просто происходит имитация той же очереди, о которой мы говорили выше. Только сначала используются программы, которые могут генерировать случайные числа и соотносить их с заданным законом распределения. После этого проводится объемная, статистическая обработка полученных величин, которая анализирует данные на предмет, отвечают ли они изначальной цели моделирования. Продолжая дальше, скажем, что можно найти оптимальное количество людей, которые будут работать в магазине для того, чтобы очередь не возникала никогда. При этом используемый математический аппарат в данном случае - это методы математической статистики.
Образование
Анализу имитационных моделей в школах уделяется мало внимания. К сожалению, это может отразиться на будущем довольно серьезно. Дети должны со школы знать некоторые базовые принципы моделирования, так как развитие современного мира без этого процесса невозможно. В базовом курсе информатики дети могут с легкостью использовать имитационную модель "Жизнь".
Более основательное изучение может преподаваться в старших классах или в профильных школах. Прежде всего надо заняться изучением имитационного моделирования случайных процессов. Помните, что в российских школах такое понятие и методы только начинают вводиться, поэтому очень важно держать уровень образования учителей, которые со стопроцентной гарантией столкнутся с рядом вопросов от детей. При этом не будем усложнять задачу, акцентируя внимание на том, что речь идет об элементарном введении в эту тему, которое можно подробно рассмотреть за 2 часа.
После того как дети усвоили теоретическую базу, стоит осветить технические вопросы, которые касаются генерации последовательности случайных чисел на компьютере. При этом не надо загружать детей информацией о том, как работает вычислительная машина и на каких принципах строится аналитика. Из практических навыков их нужно учить создавать генераторы равномерных случайных чисел на отрезке или случайных чисел по закону распределения.
Актуальность
Поговорим немного о том, зачем нужны имитационные модели управления. Дело в том, что в современном мире обойтись без моделирования практически невозможно в любой сфере. Почему же оно так востребовано и популярно? Моделирование может заменить реальные события, необходимые для получения конкретных результатов, создание и анализ которых стоят слишком дорого. Или же может быть случай, когда проводить реальные эксперименты запрещено. Также люди пользуются им, когда просто невозможно построить аналитическую модель из-за ряда случайных факторов, последствий и причинных связей. Последний случай, когда используется этот метод, - это тогда, когда необходимо имитировать поведение какой-либо системы на протяжении данного отрезка времени. Для всего этого создаются симуляторы, которые пытаются максимально воспроизвести качества первоначальной системы.
Виды
Имитационные модели исследования могут быть нескольких видов. Так, рассмотрим подходы имитационного моделирования. Первое - это системная динамика, которая выражается в том, что есть связанные между собой переменные, определенные накопители и обратная связь. Таким образом чаще всего рассматриваются две системы, в которых есть некоторые общие характеристики и точки пересечения. Следующий вид моделирования - дискретно-событийное. Оно касается тех случаев, когда есть определенные процессы и ресурсы, а также последовательность действий. Чаще всего таким способом исследуют возможность того или иного события через призму ряда возможных или случайных факторов. Третий вид моделирования - агентный. Он заключается в том, что изучаются индивидуальные свойства организма в их системе. При этом необходимо косвенное или прямое взаимодействие наблюдаемого объекта и других.
Дискретно-событийное моделирование предлагает абстрагироваться от непрерывности событий и рассматривать только основные моменты. Таким образом случайные и лишние факторы исключаются. Этот метод максимально развит, и он используется во множестве сфер: от логистики до производственных систем. Именно он лучше всего подходит для моделирования производственных процессов. Кстати, его создал в 1960-х годах Джеффри Гордон. Системная динамика - это парадигма моделирования, где для исследования необходимо графическое изображение связей и взаимных влияний одних параметров на другие. При этом учитывается фактор времени. Только на основе всех данных создается глобальная модель на компьютере. Именно этот вид позволяет очень глубоко понять суть исследуемого события и выявить какие-то причины и связи. Благодаря этому моделированию строят бизнес-стратегии, модели производства, развитие болезней, планирование города и так далее. Этот метод был изобретён в 1950-х годах Форрестером.
Агентное моделирование появилось в 1990-х годах, оно является сравнительно новым. Это направление используется для анализа децентрализованных систем, динамика которых при этом определяется не общепринятыми законами и правилами, а индивидуальной активностью определенных элементов. Суть этого моделирования заключается в том, чтобы получить представление о новых правилах, в целом охарактеризовать систему и найти связь между индивидуальными составляющими. При этом изучается элемент, который активен и автономен, может принимать решения самостоятельно и взаимодействовать со своим окружением, а также самостоятельно меняться, что очень важно.
Этапы
Сейчас рассмотрим основные этапы разработки имитационной модели. Они включают её формулировку в самом начале процесса, построение концептуальной модели, выбор способа моделирования, выбор аппарата моделирования, планирование, выполнение задачи. На последнем этапе происходит анализ и обработка всех полученных данных. Построение имитационной модели - это сложный и длительный процесс, который требует большого внимания и понимания сути дела. Заметьте, что сами этапы занимают максимум времени, а процесс моделирования на компьютере - не больше нескольких минут. Очень важно использовать правильные модели имитационного моделирования, так как без этого не получится добиться нужных результатов. Какие-то данные получены будут, но они будут не реалистичны и не продуктивны.
Подводя итоги статьи, хочется сказать, что это очень важная и современная отрасль. Мы рассмотрели примеры имитационных моделей, чтобы понять важность всех этих моментов. В современном мире моделирование играет огромную роль, так как на его основании развиваются экономика, градостроение, производство и так далее. Важно понимать, что модели имитационных систем очень востребованы, так как они невероятно выгодны и удобны. Даже при создании реальных условий не всегда можно получить достоверные результаты, так как всегда влияет множество схоластических факторов, которые учесть просто невозможно.
Определим в общем виде как экспериментальный метод исследования реальной системы по ее имитационной модели, который сочетает особенности экспериментального подхода и специфические условия использования вычислительной техники.
В этом определении подчеркивается, что имитационное моделирование является машинным методом моделирования благодаря развитию информационных технологий, что привело к появлению этого вида компьютерного моделирования. В определении также акцентируется внимание на экспериментальной природе имитации, применяется имитационный метод исследования (осуществляется эксперимент с моделью). В имитационном моделировании важную роль играет не только проведение, но и планирование эксперимента на модели. Однако это определение не проясняет, что собой представляет сама имитационная модель. Ответим на вопрос, в чем же состоит сущность имитационного моделирования?
- реальная система;
- ЭВМ, на которой осуществляется имитация – направленный вычислительный эксперимент.
логико - или логико-математических моделей, описываемых изучаемый процесс.
Выше, реальная система определялась как совокупность взаимодействующих элементов, функционирующих во времени.
< A , S , T > , где
А
S
Т
Особенностью имитационного моделирования является то, что имитационная модель позволяет воспроизводить моделируемые объекты:
- с сохранением поведенческих свойств (последовательности чередования во времени событий, происходящих в системе), т.е. динамики взаимодействий.
:
- статическое описание системы , которое по-существу является описанием ее структуры. При разработке имитационной модели необходимо применять структурный анализ моделируемых процессов.
- функциональной модели
.
состояний набором переменных состояний , каждая комбинация которых описывает конкретное состояние. Следовательно, путем изменения значений этих переменных можно имитировать переход системы из одного состояния в другое. Таким образом, имитационное моделирование – это представление динамического поведения системы посредством продвижения ее от одного состояния к другому в соответствии с определенными правилами. Эти изменения состояний могут происходить либо непрерывно, либо в дискретные моменты времени. Имитационное моделирование есть динамическое отражение изменений состояния системы с течением времени.
При имитационном моделировании логическая структура реальной системы отображается в модели, а также имитируется динамика взаимодействий подсистем в моделируемой системе.
Понятие о модельном времени
t 0 , которую называют
t 0 :
- пошаговый
- по-событийный
В случае пошагового метода (принцип t ).
- непрерывные;
- дискретные;
- непрерывно-дискретные.
В
В
непрерывно-дискретные модели
Моделирующий алгоритм
Имитационный характер исследования предполагает наличие
алгоритмической , так и неалгоритмической.
моделирующий алгоритм
Имитационная модель – это программная реализация моделирующего алгоритма. Она составляется с применением средств автоматизации моделирования. Подробнее технология имитационного моделирования, инструментальные средства моделирования, языки и системы моделирования, с помощью которых реализуются имитационные модели, будут рассмотрены ниже.
Общая технологическая схема имитационного моделирования
В общем виде технологическая схема имитационного моделирования представлена на рис.2.5.
Рис. 2.5. Технологическая схема имитационного моделирования
- реальная система;
- построение логико-математической модели;
- разработка моделирующего алгоритма;
- построение имитационной (машинной) модели;
- планирование и проведение имитационных экспериментов;
- обработка и анализ результатов;
- выводы о поведении реальной системы (принятие решений)
Имитационная модель содержит элементы непрерывного и дискретного действия, поэтому применяется для исследования динамических систем, когда требуется анализ узких мест , исследование динамики функционирования,
Имитационное моделирование – эффективный аппарат исследования стохастических систем, в условиях неопределенности, .
Что будет, если?
В имитационной модели может быть обеспечен различный, в том числе и высокий, уровень детализации моделируемых процессов. При этом модель создается поэтапно, эволюционно .
Определимметод имитационного моделирования в общем виде какэкспериментальный метод исследования реальной системы по ее имитационной модели, который сочетает особенности эксперименталь ного подхода и специфические условия использования вычислительной техники.
В этом определении подчеркивается, что имитационное моделиро вание является машинным методом моделирования благодаря развитию информационных технологий, что привело к появлению этого вида компьютерного моделирования. В определении также акцентируется внимание на экспериментальной природе имитации, применяется имитационный метод исследования (осуществляется эксперимент с моделью). В имитационном моделировании важную роль играет не только проведение, но и планирование эксперимента на модели. Однако это определение не проясняет, что собой представляет сама имитационная модель. Ответим на вопрос, в чем же состоит сущность имитационного моделирования?
В процессе имитационного моделирования (рис. 2.1) исследователь имеет дело с четырьмя основными элементами:
- реальная система;
- логико-математическая модель моделируемого объекта;
- имитационная (машинная) модель;
- ЭВМ,накоторойосуществляетсяимитация–направленный
вычислительный эксперимент.
Исследователь изучает реальную систему, разрабатывает логико-математическую модель реальной системы.
Выше,реальнаясистемаопределяласькаксовокупность взаимодействующих элементов, функционирующих во времени.
Составной характер сложной системы описывает представление ее модели в виде трех множеств:
< A , S , T > , где
А – множество элементов (в их число включается и внешняя среда);
S – множество допустимых связей между элементами (структура модели);
Т – множество рассматриваемых моментов времени.
Особенностью имитационного моделирования является то, что имитационная модель позволяет воспроизводить моделируемые объекты:
- с сохранением их логической структуры;
- с сохранением поведенческих свойств(последовательности чередования во времени событий, происходящих в системе), т.е. динамики взаимодействий.
При имитационном моделировании структура моделируемой системы адекватно отображается в модели, а процессы ее функционирования проигрываются (имитируются) на построенной модели. Поэтому построение имитационной модели заключается в описании структуры и процессов функционирования моделируемого объекта или системы.В описании имитационной модели выделяют две составляющие :
- статическое описание системы , которое по-существу является описанием ее структуры. При разработке имитационной модели необходимоприменятьструктурныйанализмоделируемых процессов.
- динамическое описание системы , или описание динамики взаимодействий ее элементов. При его составлении фактически требуется построениефункциональной модели моделируемых динамических процессов.
Идея метода, с точки зрения его программной реализации, состоит в следующем. Что, если элементам системы поставить в соответствие некоторые программные компоненты, а состояния этих элементов описывать с помощью переменных состояния. Элементы, по определению, взаимодействуют (или обмениваются информацией), значит, может быть реализован алгоритм функционирования отдельных элементов, т.е., моделирующий алгоритм. Кроме того, элементы существуют во времени, значит надо задать алгоритм изменения переменных состояний. Динамика в имитационных моделях реализуется с помощьюмеханизма продвижения модельного времени .
Отличительной особенностью метода имитационного моделирования является возможность описания и воспроизведения взаимодействия между различными элементами системы. Таким образом, чтобы составить имитационную модель, надо:
- представить реальную систему (процесс), как совокупность взаимодействующих элементов;
- алгоритмически описать функционирование отдельных элементов;
- описать процесс взаимодействия различных элементов между собой и с внешней средой.
Ключевым моментом в имитационном моделировании является выделение и описаниесостояний системы. Система характеризуетсянабором переменных состояний , каждая комбинация которых описывает конкретное состояние. Следовательно, путем изменения значений этих переменных можно имитировать переход системы из одного состояния в другое. Таким образом, имитационное моделирование – это представле ниединамического поведения системы посредством продвижения ее от одного состояния к другому в соответствии с определенными правилами. Эти изменения состояний могут происходить либо непрерывно, либо в дискретные моменты времени. Имитационное моделированиеесть динамическое отражение изменений состояния системы с течением времени.
При имитационном моделировании логическая структура реальной системы отображается в модели, а такжеимитируетсядинамика взаимодействий подсистем в моделируемой системе.
Понятие о модельном времени. Дискретные и непрерывные имитационные модели
Для описания динамики моделируемых процессов в имитационном моделировании реализованмеханизм задания модельного времени. Этот механизм встроен в управляющие программы системы моделирования.
Если бы на ЭВМ имитировалось поведение одной компоненты системы, то выполнение действий в имитационной модели можно было бы осуществить последовательно, по пересчету временной координаты.
Чтобы обеспечить имитацию параллельных событий реальной системы вводят некоторую глобальную переменную (обеспечивающую синхронизацию всех событий в системе)t 0 , которую называютмодельным (или системным) временем.
Существуют два основных способа измененияt 0 :
- пошаговый (применяются фиксированные интервалы изменения модельного времени);
- по-событийный (применяются переменные интервалы изменения модельного времени, при этом величина шага измеряется интервалом до следующего события).
В случаепошагового метода продвижение времени происходит с минимально возможной постоянной длиной шага(принцип t ). Эти алгоритмы не очень эффективны с точки зрения использования машинного времени на их реализацию.
Способ фиксированного шага применяется в случаях:
- если закон изменения от времени описывается интегро-дифференциальными уравнениями. Характерный пример: решение интегро-дифференциальных уравнений численным методом. В подобных методах шаг моделирования равен шагу интегрирования. Динамика модели является дискретным приближением реальных непрерывных процессов;
- когда события распределены равномерно и можно подобрать шаг изменения временной координаты;
- когда сложно предсказать появление определенных событий;
- когда событий очень много и они появляются группами.
В остальных случаях применяется по-событийный метод, например, когда события распределены неравномерно на временной оси и появляются через значительные временные интервалы.
По-событийный метод (принцип “особых состояний”). В нем координаты времени меняются тогда, когда изменяется состояние системы. В по-событийных методах длина шага временного сдвига максимально возможная. Модельное время с текущего момента изменяется до ближайшего момента наступления следующего события. Применение по-событийного метода предпочтительнее в том случае, если частота наступления событий невелика. Тогда большая длина шага позволит ускорить ход модельного времени. На практике по-событийный метод получил наибольшее распространение.
Таким образом, вследствие последовательного характера обработки информации в ЭВМ, параллельные процессы, происходящие в модели, преобразуются с помощью рассмотренного механизма в последовательные. Такой способ представления носит название квазипараллельного процесса.
Простейшая классификация на основные виды имитационных моделей связана с применением двух этих способов продвижения модельного времени. Различают имитационные модели:
- непрерывные;
- дискретные;
- непрерывно-дискретные.
Внепрерывных имитационных моделях переменные изменяются непрерывно, состояние моделируемой системы меняется как непрерывная функция времени, и, как правило, это изменение описывается системами дифференциальных уравнений. Соответственно продвижение модельного времени зависит от численных методов решения дифференциальных уравнений.
Вдискретных имитационных моделях переменные изменяются дискретно в определенные моменты имитационного времени (наступления событий). Динамика дискретных моделей представляет собой процесс перехода от момента наступления очередного события к моменту наступления следующего события.
Поскольку в реальных системах непрерывные и дискретные процессы часто невозможно разделить, были разработанынепрерывно-дискретные модели , в которых совмещаются механизмы продвижения времени, характерные для этих двух процессов.
Моделирующий алгоритм. Имитационная модель
Имитационный характер исследования предполагает наличиелогико, или логико-математических моделей, описываемых изучаемый процесс (систему).
Логико-математическая модель сложной системы может быть какалгоритмической , так инеалгоритмической.
Чтобы быть машинно-реализуемой, на основе логико-математической модели сложной системы строитсямоделирующий алгоритм , который описывает структуру и логику взаимодействия элементов в системе.
Имита ционная модель – это программная реализация моделирующего алгоритма. Она составляется с применением средств автоматизации моделирования. Подробнее технология имитационного моделирования, инструментальные средства моделирования, языки и системы моделиро вания, с помощью которых реализуются имитационные модели, будут рассмотрены ниже.
Возможности метода имитационного моделирования
Метод имитационного моделирования позволяет решать задачи высокой сложности, обеспечивает имитацию сложных и многообразных процессов, с большим количеством элементов. Отдельные функциональные зависимости в таких моделях могут описываться громоздкими математическими соотношениями. Поэтому имитационное моделирование эффективно используется в задачах исследования систем со сложной структурой с целью решения конкретных проблем.
Имитационная модель содержит элементы непрерывного и дискрет ного действия, поэтому применяется для исследования динамических систем, когда требуетсяанализ узких мест , исследованиединамики функционирования, когда желательно наблюдать на имитационной модели ход процесса в течение определенного времени.
Имитационное моделирование – эффективный аппарат исследова ниястохастических систем, когда исследуемая система может быть подвержена влиянию многочисленных случайных факторов сложной природы. Имеется возможность проводить исследованиев условиях неопределенности, при неполных и неточных данных.
Имитационное моделирование является важным фактором всистемах поддержки принятия решений , т.к. позволяет исследовать большое число альтернатив (вариантов решений), проигрывать различные сценарии при любых входных данных. Главное преимущество имитационного моделирования состоит в том, что исследователь для проверки новых стратегий и принятия решений, при изучении возможных ситуаций, всегда может получить ответ на вопрос “Что будет, если? ...”. Имитационная модель позволяет прогнозировать, когда речь идет о проектируемой системе или исследуются процессы развития (т.е. в тех случаях, когда реальной системы еще не существует).
В имитационной модели может быть обеспечен различный, в том числе и высокий,уровень детализациимоделируемых процессов. При этом модель создается поэтапно, эволюционно.











