Главная страница

Моделирование. 11-2_Моделирование. Модели и моделирование Системный подход в моделировании Этапы моделирования


Скачать 5 Mb.
Название Модели и моделирование Системный подход в моделировании Этапы моделирования
АнкорМоделирование
Дата12.09.2022
Размер5 Mb.
Формат файлаppt
Имя файла11-2_Моделирование.ppt
ТипДокументы
#673903
страница8 из 8
1   2   3   4   5   6   7   8

II. Разработка модели





Спортсмен Вася в синей кепке бросает белый мяч со скоростью 12 м/с. Под каким углом к горизонту ему нужно бросить мяч, чтобы попасть в желтую мишень? Мишень расположена на высоте 4 м на расстоянии 10 м от Васи. В момент броска мяч находится на высоте 2 м от земли.


1) Определить существенные исходные данные.


мяч и мишень — материальные точки мишень неподвижна сопротивление воздуха не учитывается.


2) Выбор типа модели.


Можно использовать несколько моделей!


!

II. Разработка модели





Графическая модель


4 м


2 м


3) Формальная (математическая) модель


,


Задача: найти t и , такие что

Уточнение диапазона углов





Диапазон углов для поиска:

II. Разработка модели





4) Алгоритм моделирования


Метод I.
    Меняем угол . Для выбранного угла  строим траекторию полета мяча. Если она проходит выше мишени, уменьшаем угол, если ниже – увеличиваем.

    Метод II.

    Из первого равенства выражаем время полета:
    Меняем угол . Для выбранного угла  считаем t, а затем – значение y при этом t. Если оно больше H, уменьшаем угол, если меньше – увеличиваем.


не надо строить всю траекторию для каждого 

II. Разработка модели





5) Компьютерная модель
программа (Паскаль, Си, …)
электронные таблицы (Excel, OpenOffice.org Calc)
среды моделирования (Simulink, VisSim)

III. Тестирование модели





Тестирование – это проверка модели на простых исходных данных с известным результатом.


а) тестирование математической модели:


• при t = 0  x = 0, y = 0 (в начале координат)
• при v0 = 0  x = 0, (падение вниз)
• при = 90  x = 0
• при увеличении t парабола «загибается» вниз


б) тестирование компьютерной модели:
(пробные расчёты в рассмотренных условиях)


Доказывает ли успешное тестирование правильность модели?


?

IV. Эксперимент с моделью





Эксперимент – это исследование модели при тех исходных данных, которые нас интересуют (результат заранее неизвестен).


задаём угол 
находим время находим высоту


Диапазон углов для поиска:


Можно ли сразу использовать двоичный поиск?


?


y < H


Как отделить два решения?


?


построить график y()


Может быть два решения!


!

V. Анализ результатов эксперимента





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


Необходима проверка на оригинале!


!

V. Анализ результатов





всегда ли Вася сможет попасть в мишень?
если начальная скорость отличается от заданной?
если мяч и мишень не считать материальными точками?
как сильно влияет сопротивление воздуха?
если мишень качается?
и т.д….

Моделирование


§ 9. Моделирование движения




Задача





вверх


вниз


найти hmax
найти v при приземлении


Какой тип движения?


?


плотность воздуха


площадь сечения


шар: С = 0,4


кг/м3


равномерное?
равноускоренное?


не меняется!


Какая ещё сила?


?

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





В проекции на ось OY:


всегда противоположна v


Силы меняются  ускорение меняется!


!


Методы решения:
аналитический (высшая математика)
численное моделирование

Дискретизация





Дискретная модель описывает состояние системы при


шаг дискретизации


Задача: зная (yi, vi, ai) при ti = i
найти (yi+1, vi+1, ai+1) при ti+1 = (i+1)


Допущение: силы (и ускорение) не меняются на интервале [ti, ti+1]


Вычисления:

Компьютерная модель





t:= 0; v:= v0; y:= 0
k:= ro*C*S/2
нц пока y >= 0
F:= - k*abs(v)*v | сила сопротивления
a:= - g + F/m | ускорение
y:= y + v*delta + a*delta*delta/2 | координата
v:= v + a*delta | скорость
t:= t + delta | время
кц


Как найти hmax?


?


если y > h то
h:= y
все

Моделирование


§ 10. Математические модели в биологии




Модель неограниченного роста (Т. Мальтус)





– начальная численность


– численность через i периодов


рождаемость


смертность


Особенности модели:
    не учитывается влияние численности N и внешней среды на K
    не учитывается влияние других видов на K

Модель ограниченного роста (П. Ферхюльст)





L – предельная численность животных


Идеи:
    коэффициент прироста KL зависит от численности N
    при N=0 должно быть KL=K (начальное значение)
    при N=L должно быть KL=0 (достигнут предел)


Модель адекватна, если ошибка < 10%!


!

Модель с отловом





рыбоводческое хозяйство, разведение пушных зверей, …


отлов


, прирост = отлову


Какая будет численность? L?


?


Сколько можно вылавливать?


?

Модель «хищник-жертва»





Модель – не-система:


караси


щуки


Модель – система:
    число встреч пропорционально NiZi
    «эффект» пропорционален числу встреч


численность уменьшается


численность увеличивается


вымирают без еды

Модель «хищник-жертва»





Хищники вымирают:


Равновесие:


караси


щуки


караси


щуки

Модель «хищник-жертва»





Колебания:

Обратная связь





Модель неограниченного роста:


популяция


обратная связь


популяция


Модель ограниченного роста:

Саморегуляция





Саморегуляция – это способность системы поддерживать свое внутреннее состояние за счет связей между элементами.


гибель животных


Саморегуляция только при малых отклонениях!


!


обратная связь


обратные связи


жертвы


хищники

Моделирование


§ 11. Системы массового обслуживания




Системы массового обслуживания (СМО)


СМО





магазин, банк, служба ремонта, касса…


заявки


очередь


каналы обслуживания


обслуженные заявки


заявки поступают через случайные интервалы время обслуживания – случайная величина


Нужна вероятностная модель!


!


Особенности:

Модель работы банка





за 1 минуту входит P клиентов время обслуживания T минут


Сколько нужно касс?


?


K – количество касс за 1 минуту входит от 0 до Pmax клиентов время обслуживания от Tmin до Tmax минут изменение числа клиентов в банке средняя длина очереди среднее время ожидания QiTi


Допущение: распределение равномерное


вошли за i-ую минуту


обслужены за i-ую минуту


Детерминированная модель:


Вероятностная модель:

Модель работы банка





Как найти Ri?


?


K касс работают с одинаковой скоростью, но эта скорость меняется каждый интервал


Ti – случайное время обслуживания (от Tmin до Tmax)


обслужено за 1 интервал на 1 кассе 1/T, на всех кассах


Задача: выбрать K так, чтобы среднее время ожидания было больше допустимого в течение не более 5% от полного времени моделирования.


«плохие минуты»:


допустимое время ожидания


Допущение:

Модель работы банка





K:= 2 | меняем количество касс
Pmax:= 4 | макс. число входящих за 1 мин
Tmin:= 1 | мин. время обслуживания
Tmax:= 9 | макс. время обслуживания
L:= 480 | период моделирования
M:= 15 | допустимое время ожидания
N:= 0 | сначала в банке никого нет
count:= 0 | счетчик «плохих» минут


Что выводить в результате?


?


касс достаточно


Сравнить с детерминированной моделью!


!

Модель работы банка (КуМир)





нц для i от 1 до L
P:= irand(0,PMax)
T:= rand(Tmin,Tmax)
R:= int(K / T)
N:= N + P - R
если N < 0 то N:= 0 все
dT:= N / K * T
если dT > M то
count:= count + 1
все
кц


Паскаль

Модель работы банка (Паскаль)





for i:=1 to L do begin
P:= random(PMax);
T:= Tmin + random*(Tmax - Tmin);
R:= round(K / T);
N:= N + P - R;
if N < 0 then N:= 0;
dT:= N / K * T;
if dT > M then
count:= count + 1
end;

Уточнение модели





за 1 минуту входит от 0 до Pmax клиентов


Допущение: распределение равномерное


Распределение Пуассона:


0


15


10


5


P


вероятность того, что P = k


Pсреднее


Получение из равномерного распределения:
метод обратных функций

Распределение Пуассона (КуМир)





алг цел Poisson(цел Lam)
нач
вещ s, r, alpha;
цел k
r:= exp(-Lam); s:= r
k:= 0
alpha:= rand(0,1)
нц пока s < alpha
k:= k + 1
r:= r * Lam / k
s:= s + r
кц
знач:= k
кон

Распределение Пуассона (Паскаль)





function Poisson(Lam: integer): integer;
var s, r, alpha: real;
k: integer;
begin
r:= exp(-Lam); s:= r;
k:= 0;
alpha:= random;
while s < alpha do begin
k:= k + 1;
r:= r * Lam / k;
s:= s + r
end;
Poisson:= k
end;

Конец фильма





ПОЛЯКОВ Константин Юрьевич
д.т.н., учитель информатики
ГБОУ СОШ № 163, г. Санкт-Петербург
kpolyakov@mail.ru
ЕРЕМИН Евгений Александрович
к.ф.-м.н., доцент кафедры мультимедийной дидактики и ИТО ПГГПУ, г. Пермь
eremin@pspu.ac.ru

Источники иллюстраций





www.historicships.com
www.amazon.co.uk
www.supahcars.com
physicon.ru
www.laerdal.com
biohimija.ru
ecosafe.spbu.ru
www.skyplaz.ru
www.burpipe.ru
www.garshin.ru
www.thisnext.com
3dsdesign.ru
en.wikipedia.org
ru.wikipedia.org
иллюстрации художников издательства «Бином»
авторские материалы

1   2   3   4   5   6   7   8


написать администратору сайта