Слайд 1Модели
и моделирование
Ниязбекова А.Ж.
Тема 1. Модели и их типы
Слайд 2Что такое модель?
Модель – это объект, который обладает некоторыми свойствами другого
объекта (оригинала) и используется вместо него.
Оригиналы и модели
Первый линейный русский корабль «Гото Предестинация»
Слайд 4Что можно моделировать?
Модели объектов:
уменьшенные копии зданий, кораблей, самолетов, …
модели ядра атома,
кристаллических решеток
чертежи
…
Модели процессов:
изменение экологической обстановки
экономические модели
исторические модели
…
Модели явлений:
землетрясение
солнечное затмение
цунами
…
Слайд 5Моделирование
Моделирование – это создание и использование моделей для изучения оригиналов.
Когда используют
моделирование:
оригинал не существует
древний Египет
последствия ядерной войны (Н.Н. Моисеев, 1966)
исследование оригинала опасно для жизни или дорого:
управление ядерным реактором (Чернобыль, 1986)
испытание нового скафандра для космонавтов
разработка нового самолета или корабля
оригинал сложно исследовать непосредственно:
Солнечная система, галактика (большие размеры)
атом, нейтрон (маленькие размеры)
процессы в двигателе внутреннего сгорания (очень быстрые)
геологические явления (очень медленные)
интересуют только некоторые свойства оригинала
проверка краски для фюзеляжа самолета
Слайд 6Цели моделирования
исследование оригинала
изучение сущности объекта или явления
«Наука есть удовлетворение собственного любопытства
за казенный счет» (Л.А. Арцимович)
анализ («что будет, если …»)
научиться прогнозировать последствия различных воздействиях на оригинал
синтез («как сделать, чтобы …»)
научиться управлять оригиналом, оказывая на него воздействия
оптимизация («как сделать лучше»)
выбор наилучшего решения в заданных условиях
Слайд 7Один оригинал – одна модель?
материальная точка
Слайд 8Зачем нужно много моделей?
изучение строения тела
примерка одежды
изучение наследственности
тренировка спасателей
учет граждан страны
Слайд 9Природа моделей
материальные (физические, предметные) модели:
информационные модели представляют собой
информацию о
свойствах и состоянии объекта,
процесса, явления, и его взаимосвязи с внешним миром:
вербальные – словесные или мысленные
знаковые – выраженные с помощью формального языка
графические (рисунки, схемы, карты, …)
табличные
математические (формулы)
логические (различные варианты выбора действий на
основе анализа условий)
специальные (ноты, химические формулы)
Слайд 10Модели по области применения
учебные (в т.ч. тренажеры)
опытные – при создании новых
технических средств
научно-технические
аэродинамическая труба
испытания в опытовом бассейне
имитатор солнечного излучения
вакуумная камера в Институте космических исследований
вибростенд
НПО «Энергия»
Слайд 11Модели по фактору времени
статические – описывают оригинал в заданный момент времени
силы,
действующие на тело в состоянии покоя
результаты осмотра врача
фотография
динамические
модель движения тела
явления природы (молния, землетрясение, цунами)
история болезни
видеозапись события
Слайд 12Модели по характеру связей
детерминированные
связи между входными и выходными величинами жестко
заданы
при одинаковых входных данных каждый раз получаются одинаковые результаты
Примеры
движение тела без учета ветра
расчеты по известным формулам
вероятностные (стохастические)
учитывают случайность событий в реальном мире
при одинаковых входных данных каждый раз получаются немного разные результаты
Примеры
движение тела с учетом ветра
броуновское движение частиц
модель движения судна на волнении
модели поведения человека
Слайд 13Модели по структуре
табличные модели (пары соответствия)
иерархические (многоуровневые) модели
сетевые модели (графы)
Слайд 14Специальные виды моделей
имитационные
нельзя заранее вычислить или предсказать поведение системы, но
можно имитировать её реакцию на внешние воздействия;
максимальный учет всех факторов;
только численные результаты;
Примеры:
испытания лекарств на мышах, обезьянах, …
математическое моделирование биологических систем
модели бизнеса и управления
модели процесса обучения
Слайд 15Специальные виды моделей
игровые – учитывающие действия противника
Примеры:
модели экономических ситуаций
модели военных
действий
спортивные игры
тренинги персонала
Слайд 16Адекватность модели
Адекватность – совпадение существенных свойств модели и оригинала:
результаты моделирования согласуются
с выводами теории (законы сохранения и т.п.)
… подтверждаются экспериментом
Модель всегда отличается от оригинала
Слайд 17Системный подход
Система – группа объектов и связей между ними, выделенных из
среды и рассматриваемых как одно целое.
Примеры:
семья
экологическая система
компьютер
техническая система
общество
среда
Слайд 18Системный подход
Модель-система:
Модель-не-система:
1-я линия:
Пр. Ветеранов
Ленинский пр.
Автово
Кировский завод
Нарвская
…
2-я линия:
Купчино
Звездная
Московская
Парк Победы
Электросила
…
Слайд 19Системный подход
Граф – это набор вершин и соединяющих их ребер.
1
2
3
4
5
вершина
ребро
23
18
20
15
14
5
вес ребра
(взвешенный граф)
ориентированный граф (орграф) –ребра имеют направление
Слайд 20Системный подход
Семантическая (смысловая) модель предложения:
«Выхожу один я на дорогу…»
выхожу
я
на дорогу
один
что делаю?
кто?
сколько?
куда?
граф
Слайд 21Модели
и моделирование
© К.Ю. Поляков, 2007-2009
Тема 2. Этапы моделирования
Слайд 22I. Постановка задачи
исследование оригинала
изучение сущности объекта или явления
анализ («что будет, если
…»)
научиться прогнозировать последствий при различных воздействиях на оригинал
синтез («как сделать, чтобы …»)
научиться управлять оригиналом, оказывая на него воздействия
оптимизация («как сделать лучше»)
выбор наилучшего решения в заданных условиях
Слайд 23I. Постановка задачи
Хорошо поставленная задача:
описаны все связи между исходными данными и
результатом
известны все исходные данные
решение существует
задача имеет единственное решение
Примеры плохо поставленных задач:
Винни Пух и Пятачок построили ловушку для слонопотама. Удастся ли его поймать?
Малыш и Карлсон решили по–братски разделить два орешка – большой и маленький. Как это сделать?
Найти максимальное значение функции y = x2 (нет решений).
Найти функцию, которая проходит через точки (0,1) и (1,0) (неединственное решение).
Слайд 24II. Разработка модели
выбрать тип модели
определить существенные свойства оригинала,
которые нужно
включить в модель, отбросить
несущественные (для данной задачи)
построить формальную модель
это модель, записанная на формальном языке
(математика, логика, …) и отражающая только
существенные свойства оригинала
разработать алгоритм работы модели
алгоритм – это четко определенный порядок
действий, которые нужно выполнить для решения
задачи
Слайд 25III. Тестирование модели
Тестирование – это проверка модели на простых исходных данных
с известным результатом.
Примеры:
устройство для сложения многозначных чисел – проверка на однозначных числах
модель движения корабля – если руль стоит ровно, курс не должен меняться; если руль повернуть влево, корабль должен идти вправо
модель накопления денег в банке – при ставке 0% сумма не должна изменяться
Слайд 26IV. Эксперимент c моделью
Эксперимент – это исследование модели в интересующих нас
условиях.
Примеры:
устройство для сложения чисел – работа с многозначными числами
модель движения корабля – исследование в условиях морского волнения
модель накопления денег в банке – расчеты при ненулевой ставке
Слайд 27V. Проверка практикой, анализ результатов
Возможные выводы:
задача решена, модель адекватна
необходимо изменить алгоритм
или условия моделирования
необходимо изменить модель (например, учесть дополнительные свойства)
необходимо изменить постановку задачи
Слайд 28
Пример.
Задача. Обезьяна хочет сбить бананы на пальме. Как ей надо
кинуть кокос, чтобы попасть им в бананы.
Анализ задачи:
все ли исходные данные известны?
есть ли решение?
единственно ли решение?
Слайд 29I. Постановка задачи
Допущения:
кокос и банан считаем материальными точками
расстояние до пальмы известно
рост
обезьяны известен
высота, на которой висит банан, известна
обезьяна бросает кокос с известной начальной скоростью
сопротивление воздуха не учитываем
При этих условиях требуется найти начальный угол, под которым надо бросить кокос.
Слайд 30II. Разработка модели
Графическая модель
h
Формальная (математическая) модель
Задача: найти t, α, при которых
Слайд 31III. Тестирование модели
при нулевой скорости кокос падает вертикально вниз
при t=0 координаты
равны (0,h)
при броске вертикально вверх (α=90o) координата x не меняется
при некотором t координата y начинает уменьшаться (ветви параболы вниз)
Математическая модель
Слайд 32IV. Эксперимент
Метод I.
Меняем угол α. Для выбранного угла α строим траекторию
полета ореха. Если она проходит выше банана, уменьшаем угол, если ниже – увеличиваем.
Метод II.
Из первого равенства выражаем время полета:
Меняем угол α. Для выбранного угла α считаем t, а затем – значение y при этом t. Если оно больше H, уменьшаем угол, если меньше – увеличиваем.
не надо строить всю траекторию для каждого α
Слайд 33V. Анализ результатов
Всегда ли обезьяна может сбить банан?
Что изменится, если обезьяна
может бросать кокос с разной силой (с разной начальной скоростью)?
Что изменится, если кокос и бананы не считать материальными точками?
Что изменится, если требуется учесть сопротивление воздуха?
Что изменится, если дерево качается?
Слайд 34Модели
и моделирование
© К.Ю. Поляков, 2007-2009
Тема 3. Модели биологических систем
(по мотивам
учебника А.Г. Гейна и др., Информатика и ИКТ,
10 класс, М.: Просвещение, 2008)
Слайд 35
– начальная численность
– после 1 цикла деления
– после 2-х циклов
Особенности модели:
не
учитывается смертность
не учитывается влияние внешней среды
не учитывается влияние других видов
Модель деления
Слайд 36
– коэффициент рождаемости
– коэффициент смертности
Особенности модели:
не учитывается влияние численности N и
внешней среды на K
не учитывается влияние других видов на K
Коэффициент
прироста
прирост
Модель неограниченного роста (T. Мальтус)
Слайд 37Модель ограниченного роста (П. Ферхюльст)
L – предельная численность животных
Идеи:
коэффициент прироста KL
зависит от численности N
при N=0 должно быть KL=K (начальное значение)
при N=L должно быть KL=0 (достигнут предел)
Слайд 38Модель с отловом
Примеры: рыбоводческое хозяйство, разведение пушных зверей и т.п.
Слайд 39Модель эпидемии гриппа
L – всего жителей Ni – больных в i-ый день
Zi
– заболевших в i-ый день Vi – выздоровевших
Wi – всего выздоровевших за i дней
Основное уравнение:
Ограниченный рост:
Выздоровление
(через 7 дней):
Слайд 40Модель системы «хищник-жертва»
Модель – не-система:
Модель – система:
число встреч пропорционально Ni⋅Zi
«эффект»
пропорционален числу встреч
Слайд 41Модель системы «хищник-жертва»
Хищники вымирают:
Равновесие:
караси
щуки
Слайд 42Модель системы «хищник-жертва»
Колебания:
Слайд 43Модели
и моделирование
© К.Ю. Поляков, 2007-2009
Тема 4. Моделирование случайных процессов
(по мотивам
учебника А.Г. Гейна и др., Информатика и ИКТ,
10 класс, М.: Просвещение, 2008)
Слайд 44Случайные процессы
Случайно…
встретить друга на улице
разбить тарелку
найти 10 рублей
выиграть в лотерею
Случайный выбор:
жеребьевка
на
соревнованиях
выигравшие номера
в лотерее
Как получить случайность?
Слайд 45
Случайные числа на компьютере
Электронный генератор
нужно специальное устройство
нельзя воспроизвести результаты
318458191041
564321
209938992481
458191
938992
малый период
(последовательность
повторяется через 106 чисел)
Метод середины квадрата (Дж. фон Нейман)
в квадрате
Псевдослучайные числа – обладают свойствами случайных чисел, но каждое следующее число вычисляется по заданной формуле.
Слайд 46Случайные числа на компьютере
Линейный конгруэнтный метод
a, c, m - целые числа
простое
число
230-1
период m
остаток от деления
«Вихрь Мерсенна»: период 219937-1
Слайд 47Распределение случайных чисел
Модель: снежинки падают на отрезок [a,b]
распределение
равномерное
неравномерное
Слайд 48Распределение случайных чисел
Особенности:
распределение – это характеристика всей последовательности, а не
одного числа
равномерное распределение одно, компьютерные датчики (псевдо)случайных чисел дают равномерное распределение
неравномерных – много
любое неравномерное можно получить с помощью равномерного
a
b
a
b
Слайд 49Вычисление площади (метод Монте-Карло)
Вписываем сложную фигуру в другую фигуру, для которой
легко вычислить площадь (прямоугольник, круг, …).
Равномерно N точек со случайными координатами внутри прямоугольника.
Подсчитываем количество точек, попавших на фигуру: M.
4. Вычисляем площадь:
Всего N точек
На фигуре M точек
Метод приближенный.
Распределение должно быть равномерным.
Чем больше точек, тем точнее.
Точность ограничена датчиком случайных чисел.
!
Слайд 50Вычисление площади
Когда точка внутри круга?
(x,y)
Случайные координаты:
x := R*random;
y := R*random;
Программа:
for i:=1
to N do begin
{ найти случайные координаты }
if x*x + y*y <= R*R then M := M+1;
end;
S := 4*R*R*M / N;
Слайд 51Броуновское движение
Случайный шаг:
Случайное направление (в рад):
alpha := 2*pi*random;
h := hMax*random;
Программа:
for i:=1
to N do begin
{ найти случайное направление и шаг }
x := x + h*cos(alpha);
y := y + h*sin(alpha);
end;
Слайд 52Системы массового обслуживания
Примеры:
звонки на телефонной станции
вызовы «скорой помощи»
обслуживание клиентов в банке
сколько
бригад?
сколько линий?
сколько операторов?
Особенности:
клиенты (запросы на обслуживание) поступают постоянно, но через случайные интервалы времени
время обслуживание каждого клиента – случайная величина
Слайд 53Клиенты в банке
Вход клиентов:
за 1 минуту – до N человек
равномерное распределение
Обслуживание:
от
Tmin до Tmax минут
равномерное распределение
Слайд 54Клиенты в банке
Число клиентов в помещении банка:
N := N + in
- out;
было
пришли
ушли
Количество касс: K
Средняя длина очереди:
Допустимая длина очереди:
Слайд 55Клиенты в банке
Пришли за очередную минуту:
in := round(N*random);
округление
Обслужены за очередную минуту
и выходят:
Случайное время обслуживания:
T := Tmin + (Tmax – Tmin)*random;
out := K / T;
Слайд 56Клиенты в банке (программа)
count := 0; { счетчик «плохих» минут }
for
i:=1 to L do begin
in := { случайное число входящих }
out := { случайное число обслуженных }
N := N + in – out;
if N > Q*K then
count := count + 1;
end;
writeln(count/L:0:2);
период моделирования L минут