Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мод_в_ИСП-ИмитМод-сем.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
218.62 Кб
Скачать

16

"Моделирование в ИСП – имитационное моделирование", семинары

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

к практическим занятиям по теме "Моделирование в интегрированных средах программирования – имитационное моделирование"

С о д е р ж а н и е

1. Метод Монте-Карло 2

2. Задание на самостоятельную работу 7

3. Некоторые законы распределения случайных величин, используемые в имитационных экспериментах 9

4. Генерация случайных чисел 13

РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА 15

1. Метод Монте-Карло

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

Мы рассмотрим самые простые случаи применения метода Монте-Карло. Каждая рассматриваемая задача, фактически, представляет собой расчет того или иного определенного интеграла.

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

Основные идеи метода поясним на примере следующей простейшей задачи.

Задача 1. Используя метод Монте-Карло, рассчитать площадь круга, окружность которого задана уравнением (круг радиуса r = 6):

(x – 8)2 + (y – 3)2 = 36

Суть метода кратко сводится к следующему. Круг вписывается в квадрат (в круглых скобках указаны координаты отдельных точек):

(2,9) (14,9)

r = 6

(8,3)

(2,−3) (14, −3)

В квадрат случайным образом "бросают" n равномерно распределенных в квадрате точек. Относительно каждой точки определяют – попала она в круг или нет. Пусть в круг попало m точек. Тогда в качестве оценки пощади круга может рассматриваться случайная величина:

Акр = Акв . (1)

Величину n будем называть числом испытаний в одном прогоне модели (n ≥1) 1.

Таким образом, результатом i-го прогона, включающего n испытаний, будет Аi – значение наблюдаемой случайной величины Акр.

Пусть количество прогонов равно N. Тогда по серии из N прогонов можно получить среднее значение

, (2)

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

Выборочная оценка дисперсии величины А задается формулой

. (3)

Далее важно четко понимать, что среднее значение также является случайной величиной. Если отдельные прогоны независимы, то есть независимы "розыгрыши" случайных величин Ai, то дисперсия случайной величины может быть рассчитана с учетом соотношения

(4)

С использованием величины доверительный интервал для истинного значения µА площади круга, соответствующий доверительной вероятности р, может быть определен по формуле:

(5)

где  значение статистики Стъюдента с (N1) степенями свободы

(таблицу для расчета см. в справочниках или в Приложении к лекциям).

Задание студентам:

  • дать математическое описание плотности вероятности f(x,y) для распределения точек в круге (Таха, 6-е изд. стр. 668);

  • получить формулы для "розыгрыша" координат случайных точек, "бросаемых в квадрат";

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

Дополнительный вопрос: пусть в качестве расчетного квадрата взять квадрат, больший, чем квадрат, в который круг вписан точно. Как изменятся результаты? Проведите расчеты для нескольких размеров квадрата. Дайте теоретическое объяснение полученному результату.

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

{Рекомендация: вписать контур в прямоугольник; "разыгрывать" случайную точку, равномерно распределенную внутри прямоугольника; пользоваться тем, что площадь прямоугольника известна}

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

Задача 3. Разработать программу для расчета вероятности попадания в круг заданного радиуса точки, случайно распределенной по двухмерному нормальному закону, при условии, что центр распределения не совпадает с центром круга. Рассчитать среднеквадратическую погрешность определения вероятности и доверительный интервал.

у

центр рассеивания случайной точки y' ("точка прицеливания")

x'

rкр r

х

Рис.1.

Удаление центра рассеивания точки относительно центра круга задается вектором ∆r. Нормальный закон распределения случайной точки в локальной системе координат (x', y') задается среднеквадратическими отклонениями x, y (не обязательно одинаковыми!).

Интерпретация задачи: круг – мишень (цель), точка – пуля, x, y – параметры случайного рассеивания пули; ∆r – систематическая ошибка стрельбы.

Рассмотреть дополнительные варианты задачи.

Вариант А. Сохраняя прочие условия основного варианта, локальную систему координат, в которой разыгрывается положение случайной точки, повернуть относительно основной системы на угол :

y '

у

x'

rкр

х

Рис.2.

Вариант Б. Центр рассеивания занимает случайное положение на окружности радиуса ∆, центр которой совпадает с центром круга (распределение центра по окружности – равномерное):

у

y'

x'

rкр

х

Рис.3.

Остальные исходные данные – как в основном варианте.

Вариант В. Модифицировать вариант Б: локальную систему координат повернуть на угол (как в варианте А).

Вариант Г. Модификация варианта В: центр окружности, на которой равномерно случайно распределен центр рассеивания, смещен относительно центра мишени на вектор q.

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

Задача 4. Составить программу для расчета следующего двойного интеграла:

Интерпретация интеграла – объем "помещения", пол которого есть прямоугольник 6×5, стены вертикальны, а "крыша" задается подынтегральной функцией.

Пусть студент самостоятельно придумает схему расчета объема. Программа должна рассчитывать среднеквадратическую ошибку определения объема и доверительный интервал.

Простая схема расчета:

  • заключить "помещение" в прямоугольный параллелепипед, у которого основание – указанный прямоугольник 6×5, а высота – равна максимальному значению подынтегральной функции в пределах прямоугольника. Разыгрывать координаты точки, равномерно распределенной в пределах параллелепипеда. В каждом испытании определять, попадает ли точка внутрь параллелепипеда. Пользоваться тем, что объем параллелепипеда известен.}

Дополнительное задание: программа должна позволять оценивать количество прогонов, необходимое для выполнения условия: "относительная погрешность расчета интеграла не превышает %" – использовать результаты расчета доверительного интервала для матожидания значения интеграла.

Задача 5 (эксперимент Бюффона).

На горизонтальной плоскости начерчены N параллельных прямых, расположенных на расстоянии D одна от другой. Игла длиной d (d<D) случайно бросается на плоскость. Игла падает на плоскость параллельно ей и при этом угол между иглой и направлением параллельных прямых равномерно распределен в диапазоне 0-360о. Центр иглы в точке падения равномерно распределен между двумя крайними параллельными прямыми. Необходимо найти вероятность р того, что игла коснется или пересечет одну из прямых. Оценивать среднеквадратическую погрешность расчета вероятности и доверительный интервал для истинного значения вероятности.

Задание студентам:

а). Вывести формулу для расчета вероятности р (аналитически, без статиспытаний). Схему вывода представить. Будет ли результат зависеть от N?

б). Составить схему статиспытаний для расчета вероятности р – с обоснованием !

{Подсказка (не спешить ее озвучивать:):

Игла коснется или пересечет прямую, если расстояние h от центра иглы до ближайшей прямой будет удовлетворять неравенству , где – угол между иглой и прямыми.

Фиксируем произвольно выбранную прямую. В каждом испытании разыгрывать две равномерно распределенные случайные величины: удаление h центра иглы от этой прямой: 0 hD/2 и угол в диапазоне 090О.

a b c

D

D/2

отрезок, на котором

будет располагаться

центр иглы в

имитационном

эксперименте

Оценка вероятности по результатам n испытаний: p = m/n, где m – число испытаний, в которых игла касается или пересекает прямую. Далее применить схему Задачи №1}