Виды имитационного моделирования.



ЛЕКЦИЯ 4

ТЕМА: «МОДЕЛИРОВАНИЕ И ПРОЕКТИРОВАНИЕ. МОДЕЛИ ИНФОРМАЦИОННЫХ ПРОЦЕССОВ».

План

Математические модели. Моделирование, прогнозирование, проектирование в человеческой деятельности.

Имитационное моделирование.

Использование инструментов автоматизированного проектирования.

Системы, графы взаимодействия.

1. Математические модели. Моделирование, прогнозирование, проектирование в человеческой деятельности.

Математические модели.

Модель — это объект-заместитель объекта-оригинала, обеспечивающий изучение некоторых свойств оригинала. Замещение одного объекта другим с целью получения информации о важнейших свойствах объекта-оригинала с помощью объекта-модели называется моделированием. Под математическим моделированием будем понимать процесс установления соответствия данному реальному объекту некоторого математического объекта, называемого математической моделью, и исследование этой модели, позволяющее получать характеристики рассматриваемого реального объекта. Вид математической модели зависит как от природы реального объекта, так и задач исследования объекта и требуемой достоверности и точности решения этой задачи.

Математическая модельприближенное описание объекта моделирования, выраженное с помощью математической символики.

Математические модели появились вместе с математикой много веков назад. Огромный толчок развитию математического моделирования придало появление ЭВМ. Применение вычислительных машин позволило проанализировать и применить на практике многие математические модели, которые раньше не поддавались аналитическому исследованию. Реализованная на компьютере математическая модель называется компьютерной математической моделью, а проведение целенаправленных расчетов с помощью компьютерной модели называется вычислительным экспериментом.

Этапы компьютерного математического моделирования изображены на рисунке.

Первый этапопределение целей моделирования. Эти цели могут быть различными:

1. модель нужна для того, чтобы понять, как устроен конкретный объект, какова его структура, основные свойства, законы развития и взаимодействия
с окружающим миром (понимание);

2. модель нужна для того, чтобы научиться управлять объектом (или процессом) и определить наилучшие способы управления при заданных целях и критериях (управление);

3. модель нужна для того, чтобы прогнозировать прямые и косвенные последствия реализации заданных способов и форм воздействия на объект (прогнозирование).

Поясним на примерах. Пусть объект исследования — взаимодействие потока жидкости или газа с телом, являющимся для этого потока препятствием. Опыт показывает, что сила сопротивления потоку со стороны тела растет с ростом скорости потока, но при некоторой достаточно высокой скорости эта сила скачком уменьшается с тем, чтобы с дальнейшим увеличением скорости снова возрасти. Что же вызвало уменьшение силы сопротивления? Математическое моделирование позволяет получить четкий ответ: в момент скачкообразного уменьшения сопротивления вихри, образующиеся в потоке жидкости или газа позади обтекаемого тела, начинают отрываться от него и уноситься потоком.

Пример совсем из другой области: мирно сосуществовавшие со стабильными численностями популяции двух видов особей, имеющих общую кормовую базу, "вдруг" начинают резко менять численность. И здесь математическое моделирование позволяет (с известной долей достоверности) установить причину (или по крайней мере опровергнуть определенную гипотезу).

Выработка концепции управления объектом — другая возможная цель моделирования. Какой режим полета самолета выбрать для того, чтобы полет был безопасным и экономически наиболее выгодным? Как составить график выполнения сотен видов работ на строительстве большого объекта, чтобы оно закончилось в максимально короткий срок? Множество таких проблем систематически возникает перед экономистами, конструкторами, учеными.

 

Рис. 1 – Математическое моделирование

 

Наконец, прогнозирование последствий тех или иных воздействий на объект может быть как относительно простым делом в несложных физических системах, так и чрезвычайно сложным — на грани выполнимости — в системах биолого-экономических, социальных. Если ответить на вопрос об изменении режима распространения тепла в тонком стержне при изменениях в составляющем его сплаве относительно легко, то проследить (предсказать) экологические и климатические последствия строительства крупной ГЭС или социальные последствия изменений налогового законодательства несравненно труднее. Возможно, и здесь методы математического моделирования будут оказывать в будущем более значительную помощь.

Второй этап: определение входных и выходных параметров модели; разделение входных параметров по степени важности влияния их изменений на выходные. Такой процесс называется ранжированием, или разделением по рангам (см. "Формализация и моделирование").

Третий этап: построение математической модели. На этом этапе происходит переход от абстрактной формулировки модели к формулировке, имеющей конкретное математическое представление. Математическая модель — это уравнения, системы уравнений, системы неравенств, дифференциальные уравнения или системы таких уравнений и пр.

Четвертый этап: выбор метода исследования математической модели. Чаще всего здесь используются численные методы, которые хорошо поддаются программированию. Как правило, для решения одной и той же задачи подходит несколько методов, различающихся точностью, устойчивостью и т.д. От верного выбора метода часто зависит успех всего процесса моделирования.

Пятый этап: разработка алгоритма, составление и отладка программы для ЭВМ — трудно формализуемый процесс. Из языков программирования многие профессионалы для математического моделирования предпочитают FORTRAN: как в силу традиций, так и в силу непревзойденной эффективности компиляторов (для расчетных работ) и наличия написанных на нем огромных, тщательно отлаженных и оптимизированных библиотек стандартных программ математических методов. В ходу и такие языки, как PASCAL, BASIC, С, — в зависимости от характера задачи и склонностей программиста.

Шестой этап: тестирование программы. Работа программы проверяется на тестовой задаче с заранее известным ответом. Это — лишь начало процедуры тестирования, которую трудно описать формально исчерпывающим образом. Обычно тестирование заканчивается тогда, когда пользователь по своим профессиональным признакам сочтет программу верной.

Седьмой этап: собственно вычислительный эксперимент, в процессе которого выясняется, соответствует ли модель реальному объекту (процессу). Модель достаточно адекватна реальному процессу, если некоторые характеристики процесса, полученные на ЭВМ, совпадают с экспериментально полученными характеристиками с заданной степенью точности. В случае несоответствия модели реальному процессу возвращаемся к одному из предыдущих этапов.

Классификация математических моделей

В основу классификации математических моделей можно положить различные принципы. Можно классифицировать модели по отраслям наук (математические модели в физике, биологии, социологии и т.д.). Можно классифицировать по применяемому математическому аппарату (модели, основанные на применении обыкновенных дифференциальных уравнений, дифференциальных уравнений в частных производных, стохастических методов, дискретных алгебраических преобразований и т.д.). Наконец, если исходить из общих задач моделирования в разных науках безотносительно к математическому аппарату, наиболее естественна такая классификация:

· дескриптивные (описательные) модели;

· оптимизационные модели;

· многокритериальные модели;

· игровые модели.

Поясним это на примерах.

Дескриптивные (описательные) модели. Например, моделирование движения кометы, вторгшейся в Солнечную систему, производится с целью предсказания траектории ее полета, расстояния, на котором она пройдет от Земли, и т.д. В этом случае цели моделирования носят описательный характер, поскольку нет никаких возможностей повлиять на движение кометы, что-то в нем изменить.

Оптимизационные модели используются для описания процессов, на которые можно воздействовать, пытаясь добиться достижения заданной цели. В этом случае в модель входит один или несколько параметров, доступных влиянию. Например, меняя тепловой режим в зернохранилище, можно задаться целью подобрать такой режим, чтобы достичь максимальной сохранности зерна, т.е. оптимизировать процесс хранения.

Многокритериальные модели. Нередко приходится оптимизировать процесс по нескольким параметрам одновременно, причем цели могут быть весьма противоречивыми. Например, зная цены на продукты и потребность человека в пище, нужно организовать питание больших групп людей (в армии, детском летнем лагере и др.) физиологически правильно и, одновременно с этим, как можно дешевле. Ясно, что эти цели совсем не совпадают, т.е. при моделировании будет использоваться несколько критериев, между которыми нужно искать баланс.

Игровые модели могут иметь отношение не только к компьютерным играм, но и к весьма серьезным вещам. Например, полководец перед сражением при наличии неполной информации о противостоящей армии должен разработать план: в каком порядке вводить в бой те или иные части и т.д., учитывая и возможную реакцию противника. Есть специальный раздел современной математики — теория игр, — изучающий методы принятия решений в условиях неполной информации.

Методические рекомендации

В школьном курсе информатики начальное представление о компьютерном математическом моделировании ученики получают в рамках базового курса. В старших классах математическое моделирование может глубоко изучаться в общеобразовательном курсе для классов физико-математического профиля, а также в рамках специализированного элективного курса.

Основными формами обучения компьютерному математическому моделированию в старших классах являются лекционные, лабораторные и зачетные занятия. Обычно работа по созданию и подготовке к изучению каждой новой модели занимает 3—4 урока. В ходе изложения материала ставятся задачи, которые в дальнейшем должны быть решены учащимися самостоятельно, в общих чертах намечаются пути их решения. Формулируются вопросы, ответы на которые должны быть получены при выполнении заданий. Указывается дополнительная литература, позволяющая получить вспомогательные сведения для более успешного выполнения заданий.

Формой организации занятий при изучении нового материала обычно служит лекция. После завершения обсуждения очередной модели учащиеся имеют в своем распоряжении необходимые теоретические сведения и набор заданий для дальнейшей работы. В ходе подготовки к выполнению задания учащиеся выбирают подходящий метод решения, с помощью какого-либо известного частного решения тестируют разработанную программу. В случае вполне возможных затруднений при выполнении заданий дается консультация, делается предложение более детально проработать указанные разделы в литературных источниках.

Наиболее соответствующим практической части обучения компьютерному моделированию является метод проектов. Задание формулируется для ученика в виде учебного проекта и выполняется в течение нескольких уроков, причем основной организационной формой при этом являются компьютерные лабораторные работы. Обучение моделированию с помощью метода учебных проектов может быть реализовано на разных уровнях. Первый — проблемное изложение процесса выполнения проекта, которое ведет учитель. Второй — выполнение проекта учащимися под руководством учителя. Третий — самостоятельное выполнение учащимися учебного исследовательского проекта.

Результаты работы должны быть представлены в численном виде, в виде графиков, диаграмм. Если имеется возможность, процесс представляется на экране ЭВМ в динамике. По окончанию расчетов и получению результатов проводится их анализ, сравнение с известными фактами из теории, подтверждается достоверность и проводится содержательная интерпретация, что в дальнейшем отражается в письменном отчете.

Если результаты удовлетворяют ученика и учителя, то работа считается завершенной, и ее конечным этапом является составление отчета. Отчет включает в себя краткие теоретические сведения по изучаемой теме, математическую постановку задачи, алгоритм решения и его обоснование, программу для ЭВМ, результаты работы программы, анализ результатов и выводы, список использованной литературы.

Когда все отчеты составлены, на зачетном занятии учащиеся выступают с краткими сообщениями о проделанной работе, защищают свой проект. Это является эффективной формой отчета группы, выполняющей проект, перед классом, включая постановку задачи, построение формальной модели, выбор методов работы с моделью, реализацию модели на компьютере, работу с готовой моделью, интерпретацию полученных результатов, прогнозирование. В итоге учащиеся могут получить две оценки: первую — за проработанность проекта и успешность его защиты, вторую — за программу, оптимальность ее алгоритма, интерфейс и т.д. Учащиеся получают отметки и в ходе опросов по теории.

Существенный вопрос — каким инструментарием пользоваться в школьном курсе информатики для математического моделирования? Компьютерная реализация моделей может быть осуществлена:

- с помощью табличного процессора (как правило, MS Excel);

- путем создания программ на традиционных языках программирования (Паскаль, Бейсик и др.), а также на их современных версиях (Delphi, Visual Basic for Application и т.п.);

- с помощью специальных пакетов прикладных программ для решения математических задач (MathCAD и т.п.).

На уровне основной школы первое средство представляется более предпочтительным. Однако в старшей школе, когда программирование является, наряду с моделированием, ключевой темой информатики, желательно привлекать его в качестве инструмента моделирования. В процессе программирования учащимся становятся доступными детали математических процедур; более того, они просто вынуждены их осваивать, а это способствует и математическому образованию. Что же касается использования специальных пакетов программ, то это уместно в профильном курсе информатики в качестве дополнения к другим инструментам.

Имитационное моделирование.

Имитационное моделирование (ситуационное моделирование) — метод, позволяющий строить модели, описывающие процессы так, как они проходили бы в действительности. Такую модель можно «проиграть» во времени как для одного испытания, так и заданного их множества. При этом результаты будут определяться случайным характером процессов. По этим данным можно получить достаточно устойчивую статистику.

Имитационное моделирование — это метод исследования, при котором изучаемая система заменяется моделью, с достаточной точностью описывающей реальную систему, с которой проводятся эксперименты с целью получения информации об этой системе. Экспериментирование с моделью называют имитацией (имитация — это постижение сути явления, не прибегая к экспериментам на реальном объекте).

Имитационное моделирование — это частный случай математического моделирования. Существует класс объектов, для которых по различным причинам не разработаны аналитические модели, либо не разработаны методы решения полученной модели. В этом случае аналитическая модель заменяется имитатором или имитационной моделью.

Имитационным моделированием иногда называют получение частных численных решений сформулированной задачи на основе аналитических решений или с помощью численных методов[1].

Имитационная модель — логико-математическое описание объекта, которое может быть использовано для экспериментирования на компьютере в целях проектирования, анализа и оценки функционирования объекта.

К имитационному моделированию прибегают, когда:

- дорого или невозможно экспериментировать на реальном объекте;

- невозможно построить аналитическую модель: в системе есть время, причинные связи, последствие, нелинейности, стохастические (случайные) переменные;

- необходимо сымитировать поведение системы во времени.

Цель имитационного моделирования состоит в воспроизведении поведения исследуемой системы на основе результатов анализа наиболее существенных взаимосвязей между её элементами или другими словами — разработке симулятора (англ. simulation modeling) исследуемой предметной области для проведения различных экспериментов.

При имитационном моделировании реализующий модель алгоритм воспроизводит процесс функционирования системы во времени. Имитируются элементарные явления, составляющие процесс, с сохранением их логической структуры и последовательности протекания во времени.

Основным преимуществом имитационных моделей по сравнению с аналитическими является возможность решения более сложных задач. Имитационные модели позволяют легко учитывать наличие дискретных или непрерывных элементов, нелинейные характеристики, случайные воздействия и др. Поэтому этот метод широко применяется на этапе проектирования сложных систем. Основным средством реализации имитационного моделирования служит ЭВМ, позволяющая осуществлять цифровое моделирование систем и сигналов.

В связи с этим определим словосочетание «компьютерное моделирование», которое все чаще используется в литературе. Будем полагать, что компьютерное моделирование - это математическое моделирование с использованием средств вычислительной техники. Соответственно, технология компьютерного моделирования предполагает выполнение следующих действий:

1) определение цели моделирования;

2) разработка концептуальной модели;

3) формализация модели;

4) программная реализация модели;

5) планирование модельных экспериментов;

6) реализация плана эксперимента;

7) анализ и интерпретация результатов моделирования.

Содержание первых двух этапов практически не зависит от математического метода, положенного в основу моделирования (и даже наоборот - их результат определяет выбор метода). А вот реализация остальных пяти этапов существенно различается для аналитического и имитационного моделирования.

При имитационном моделировании используемая ММ воспроизводит алгоритм («логику») функционирования исследуемой системы во времени при различных сочетаниях значений параметров системы и внешней среды. Примером простейшей аналитической модели может служить уравнение прямолинейного равномерного движения. При исследовании такого процесса с помощью имитационной модели должно быть реализовано наблюдение за изменением пройденного пути с течением времени.

Виды имитационного моделирования.

· Агентное моделирование — относительно новое (1990-е-2000-е гг.) направление в имитационном моделировании, которое используется для исследования децентрализованных систем, динамика функционирования которых определяется не глобальными правилами и законами (как в других парадигмах моделирования), а наоборот, когда эти глобальные правила и законы являются результатом индивидуальной активности членов группы. Цель агентных моделей — получить представление об этих глобальных правилах, общем поведении системы, исходя из предположений об индивидуальном, частном поведении её отдельных активных объектов и взаимодействии этих объектов в системе. Агент — некая сущность, обладающая активностью, автономным поведением, может принимать решения в соответствии с некоторым набором правил, взаимодействовать с окружением, а также самостоятельно изменяться.

· Дискретно-событийное моделирование — подход к моделированию, предлагающий абстрагироваться от непрерывной природы событий и рассматривать только основные события моделируемой системы, такие, как: «ожидание», «обработка заказа», «движение с грузом», «разгрузка» и другие. Дискретно-событийное моделирование наиболее развито и имеет огромную сферу приложений — от логистики и систем массового обслуживания до транспортных и производственных систем. Этот вид моделирования наиболее подходит для моделирования производственных процессов. Основан Джеффри Гордоном в 1960-х годах.

· Системная динамика — парадигма моделирования, где для исследуемой системы строятся графические диаграммы причинных связей и глобальных влияний одних параметров на другие во времени, а затем созданная на основе этих диаграмм модель имитируется на компьютере. По сути, такой вид моделирования более всех других парадигм помогает понять суть происходящего выявления причинно-следственных связей между объектами и явлениями. С помощью системной динамики строят модели бизнес-процессов, развития города, модели производства, динамики популяции, экологии и развития эпидемии. Метод основан Джеем Форрестером в 1950 годах.


Дата добавления: 2020-11-15; просмотров: 583; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!