Файл: Л. В. Горчаков в в в в е е д д е е н н и и е е в в к к о о м м п п ь ь ю ю т т е е р р н н о о е е м м о о д д е е л л и и р р о о в в а а н н и и е е учебное пособие.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.01.2024

Просмотров: 115

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Министерство образования и науки Российской Федерации
ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
Л.В.Горчаков
В
В
В
В
Е
Е
Д
Д
Е
Е
Н
Н
И
И
Е
Е
В
В
К
К
О
О
М
М
П
П
Ь
Ь
Ю
Ю
Т
Т
Е
Е
Р
Р
Н
Н
О
О
Е
Е
М
М
О
О
Д
Д
Е
Е
Л
Л
И
И
Р
Р
О
О
В
В
А
А
Н
Н
И
И
Е
Е
Учебное пособие
Томск – 2012

2
УДК
ББК 22.18Я73+32.973Я73
Г …
Горчаков Л.В.
Г…
Введение в компьютерное моделирование
. Учебное пособие. Томск:
Редакционно-издательский отдел Томского ун-та. 2012. – 100 с.
Пособие состоит из 8 разделов и приложения и содержит теоретиче- ский материал, примеры и задачи для самостоятельного решения.
Предназначено для студентов и преподавателей физических и физико- математических факультетов университетов.
Рецензент – к.ф.-м.н., доцент ТГУ Вымятнин В.М.
УДК
ББК 22.18Я73+32.973Я73

Томский государственный университет, 2012

3
Оглавление
Введение в компьютерное моделирование ..................................................... 1
Предисловие ...................................................................................................... 4
Введение ............................................................................................................ 6 1. Классификация математических моделей .................................................. 7 1.1. Структура моделей................................................................................. 8 2. Математическое моделирование детерминированных процессов ........ 10 2.1. Математическое моделирование детерминированных процессов . 10 2.2. Математическое моделирование в экологии ..................................... 17 3. Случайное число. Генераторы случайных чисел .................................... 24 4. Модели задачи, использующие генераторы случайных чисел .............. 28 4.1. Одномерная модель случайных блужданий [1] ................................ 28 4.2. Двумерная модель 1 случайных блужданий [2] ................................ 30 4.3. Двумерная модель 2 случайных блужданий [7] ................................ 31 4.4. Модель автобусного обслуживания [8] .............................................. 33 5. Моделирование стохастических систем ................................................... 41 5.1. Теория марковских цепей [5,9] ........................................................... 41 5.2. Марковские цепи с поглощением [5] ................................................. 44 5.3. Цепи Маркова в социологии [5] ......................................................... 47 5.4. Численная имитация марковского процесса ..................................... 51 6. Стандартные распределения случайных величин и их получение [3] .. 52 6.1 Равномерное распределение ................................................................ 56 6.2. Экспоненциальное распределение ..................................................... 57 6.3. Пуассоновское распределение ............................................................ 58 6.4. Нормальное распределение ................................................................. 60 7. Имитационное стохастическое моделирование ....................................... 64 7.1. Элементарные сведения из теории массового обслуживания ........ 68 7.2. Интервалы времени между заказами.................................................. 77 7.3. Имитация задач теории массового обслуживания [3] ...................... 78 7.4. Стохастическая модель дорожного движения [10] ........................... 83 8. Языки имитационного моделирования ..................................................... 87
Литература ....................................................................................................... 89
Приложение ..................................................................................................... 91


4
П
РЕДИСЛОВИЕ
Широкое внедрение новых информационных технологий приве- ло к появлению новых курсов в образовательном стандарте по дис- циплине «Информатика». Одним из таких курсов является «Ком- пьютерное моделирование». Изучение содержимого стандарта по этому курсу и существующей к настоящему времени методической литературы показало, что за исключением монографии [1] Т. Гул- да и Я. Тобочника «Компьютерное моделирование в физике» и узко специализированных книг [20-22] отсутствует какая-либо учебная литература, отражающая весь необходимый материал. Не- которые вопросы программирования на языке С++ таких задач рассмотрены в монографии [23] . При подготовке курса использо- валась многочисленная зарубежная и отечественная литература, в которой каким-либо образом и в простой понятной форме излагал- ся материал, имеющий отношение к математическому и компью- терному моделированию.
Данная работа представляет собой фактически хрестоматию, со- ставленную из отдельных разделов указанных в ссылках литера- турных источников, поэтому цитирование осуществляется только один раз в каждом разделе. Мы намеренно взяли из этих источни- ков самые простые и понятные примеры, чтобы сложность пробле- мы не затеняла красоту и мощь компьютерных способов ее реше- ния. При моделировании явлений используются одновременно два подхода – демонстрируются программы на языке GWbasic, произ- водящие моделирование поведения системы, и применяется обо- лочка Mathcad 6 Plus для решения тех задач, в которых программы получились бы громоздкими и уводили бы в сторону от основного направления мысли. Для компьютерного моделирования могут быть использованы современные математические пакеты типа
Comsol, Matlab, Mapple, LabView. Материал, необходимый для по-

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


6
В
ВЕДЕНИЕ
Компьютерное моделирование является воплощением идей ма- тематического моделирования на компьютере [2,3].
Модель – объект любой природы, материальный или мысленно представленный, который в процессе исследования замещает объ- ект-оригинал так, что его изучение дает новые знания об объекте- оригинале. Другое определение - модель является представлением объекта, системы или понятия (идеи) в некоторой форме, отличной от формы их реального существования. Модель – средство, помо- гающее нам в объяснении, понимании или совершенствовании си- стемы. Модель может быть копией объекта или отображать неко- торые характеристики объекта в абстрактной форме. Дать полную классификацию всех функций модели затруднительно. Стандартно применение моделей в качестве 1) средства осмысления действи- тельности, 2) средства общения, 3) средства обучения и тренажа, 4) инструмента познания, 5) средства постановки экспериментов. Мо- дель может служить для достижения одной из двух основных це- лей: либо описательной, если модель служит для объяснения и
(или) лучшего понимания объекта, либо предписывающей, когда модель позволяет предсказать и (или) воспроизвести характеристи- ки объекта, определяющие его поведение. Под моделированием понимается процесс построения, изучения и применения модели.
Целями моделирования могут являться:
1) прогнозирование будущего состояния или поведения систе- мы;
2) постановка экспериментов над моделью с последующей ин- терпретацией их результатов применительно к моделирующей си- стеме.

7
1.
К
ЛАССИФИКАЦИЯ МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ
Типовыми группами моделей, которые могут быть положены в основу системы классификации, являются статические и динами- ческие, детерминированные и стохастические, дискретные и не- прерывные, натурные, аналоговые и символические.
Аналоговыми моделями являются модели, в которых свойство реального объекта представляется некоторым другим свойством аналогичного по поведению объекта.
К символическим или математическим моделям относятся те, в которых для представления процесса или системы используются символы, а не физические устройства.
Математическое моделирование можно разделить на аналитиче- ское и имитационное. При аналитическом моделировании процес- сы функционирования элементов системы записываются в виде алгебраических, интегральных, дифференциальных, конечно- разностных и других соотношений и логических условий. Анали- тическая модель может быть исследована следующими методами:
1) аналитическим, когда стремятся найти явные зависимости для искомых характеристик;
2) численным, когда получают численные значения выходных параметров для заданных входных параметров.
Аналитические решения удается обычно получить только при упрощающих предположениях, и они сильно зависят от особенно- стей модели. Чаще применимы численные методы, но они дают лишь частные результаты, которые трудно обобщить.
При имитационном моделировании реализующий модель алго- ритм воспроизводит процесс функционирования системы во вре- мени и в пространстве, причем имитируются составляющие про- цесс элементарные явления с сохранением его логической и вре- менной структуры. Имитационное моделирование не имеет огра- ничений на класс решаемых задач.
По сравнению с натурным экспериментом математическое мо- делирование имеет следующие преимущества:
1) экономичность (сбережение ресурсов реальной системы);
2) возможность моделирования гипотетических, т.е. нереализо- ванных в природе объектов;


8 3) возможность реализации опасных или трудновоспроизводи- мых в природе режимов (критический режим ядерного реактора, работа систем ПРО);
4) возможность изменения масштаба времени;
5) большая прогностическая сила вследствие возможности вы- явления общих закономерностей;
6) универсальность технического и программного обеспечения производимой работы.
1.1. Структура моделей
Прежде чем начать разработку модели, необходимо понять, что собой представляют структурные элементы, из которых она стро- ится. В самом общем виде структуру модели можно представить математически в виде:


,
i
j
E
f x y

, где E – результат действия системы, x
i
– переменные и параметры, которыми мы управляем, y
j
– переменные и параметры, которыми мы управлять не можем, f – функциональная зависимость между x
i
и y
j
, которая определяет величину Е.
Каждая модель представляет собой комбинацию элементов, пе- ременных, параметров, функциональной зависимости, ограничений и целевой функции.
Под элементами понимают составные части, которые при соот- ветствующем объединении образуют систему.
Система определяется как группа, совокупность объектов, объ- единенных некоторой формой регулярного взаимодействия или взаимосвязи для выполнения заданной функции.
Параметры – суть величины, которые могут быть выбраны про- извольными, в отличие от переменных, которые могут принимать только значения, определенные видом данной функции.
Переменные различают двух видов – внешние и внутренние.
Внешние переменные являются входными, порождаются вне си- стемы или являются результатом воздействия внешних причин.
Внутренние переменные возникают внутри системы или в резуль- тате воздействия внутренних причин, это переменные, характери- зующие состояние или условия, имеющие место в системе.

9
Функциональные зависимости описывают поведение перемен- ных и параметров в пределах элемента или выражают соотношение между элементами. По своей природе они могут быть детермини- рованными или стохастическими.
Ограничения представляют собой устанавливаемые пределы изменения значений переменных. Ограничения обусловлены неиз- менными законами природы или изменениями, определенными че- ловеком.
Целевая функция или функция критерия – точное отображение целей или задач системы и необходимых правил оценки их выпол- нения. Различают два вида целей: цели сохранения и цели приобре- тения.
Искусство моделирования состоит в способности анализировать проблему, выделить из нее путем абстракции ее существенные чер- ты, выбирать и должным способом моделировать основные пред- положения, характеризующие систему, а затем обрабатывать и со- вершенствовать модель до тех пор, пока она не станет давать по- лезные для практики результаты.
Этапы процесса моделирования:
1) определение системы – установление границ, ограничений и измерителей эффективности системы, подлежащей изучению;
2) формирование модели – переход от реальной системы к логи- ческой схеме;
3) подготовка данных, необходимых для построения модели и представления их в соответствующей форме;
4) трансляция модели – описание модели на языке, приемлемом для ЭВМ;
5) оценка адекватности модели;
6) стратегическое планирование эксперимента;
7) тактическое планирование – определение способа проведения контроля испытаний, предусмотренных планом эксперимента;
8) экспериментирование – процесс осуществления имитации с целью получения желаемых данных и анализа чувствительности;
9) интерпретация – построение выводов по данным, получен- ным путем имитации;
10) реализация – практическое использование модели и резуль- татов моделирования;


10 11) документирование – регистрация хода осуществления про- екта и его результатов, а также документирование процесса созда- ния и использования модели.
Для компьютерного моделирования применяются как составле- ние программ на каком-либо из языков высокого уровня, так и ис- пользование готовых пакетов прикладных программ.
2.
М
АТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ
ДЕТЕРМИНИРОВАННЫХ ПРОЦЕССОВ
2.1. Математическое моделирование
детерминированных процессов
2.1.1. Модель остывания чашки кофе
Знакомство с численными методами моделирования начнем с изучения процесса остывания чашки кофе [1]. Природа переноса тепла от кофе к окружающему пространству сложна и в общем случае включает в себя механизмы конвекции, излучения, испаре- ния и теплопроводности. В том случае, когда разность температур между объектом и окружающей средой не очень велика, скорость изменения Т объекта можно считать пропорциональной этой раз- ности температур. Это утверждение формулируется на языке диф- ференциальных уравнений так


s
dT dt
r T
T
 

,
(1) где Т – температура кофе,
s
T
– температура окружающей среды,
r – коэффициент остывания. Коэффициент остывания зависит от механизма передачи тепла, площади тела, находящегося в контакте со средой и тепловых свойств самого тела. Знак (–) появляется во избежание нефизического эффекта увеличения температуры тела, когда
s
T
T

. Соотношение (1) называется законом теплопровод- ности Ньютона.
Уравнение (1) является примером дифференциального уравне- ния первого порядка, так как в него входит только первая произ- водная неизвестной функции
 
T t
. Ввиду того, что множество процессов, происходящих в природе, описывается дифференциаль-

11 ными уравнениями, важно уметь решать эти уравнения. Рассмот- рим уравнение первого порядка вида
 
dy dx
g x

(2)
В общем случае аналитического решения уравнения (2), выражен- ного через хорошие функции, не существует. Даже в том случае, если оно есть, необходимо уметь представлять решение в графиче- ском виде, чтобы понять его характер. Эти причины побуждают нас искать не точные, а приближенные численные решения диффе- ренциальных уравнений и познакомиться с простыми методами графического представления решения.
2.1.2. Алгоритм Эйлера
Типичный метод численного решения дифференциального уравнения включает в себя преобразование его в конечно- разностное уравнение. Проанализируем уравнение (2). Положим, что при
0
x
x

функция у принимает значение
0
y
. Поскольку уравнение (2) описывает изменение функции у в точке
0
x
, то мож- но найти приближенное значение функции у в близлежащей точке
1 0
x
x
x

 
, если приращение аргумента

х мало. В первом при- ближении предполагается, что функция g(x) (или скорость измене- ния у) постоянна на отрезке от
0
x
до
1
x
. В этом случае прибли- женное значение функции в точке
1 0
x
x
x

 
определяется вы- ражением
 
 
 
1 0
0 0
y
y x
y
y x
g x
x

  


(3)
Мы можем повторить эту процедуру еще раз и найти значение у в точке
2 1
x
x
x
  
:


 
 
2 1
1 1
y
y x
x
y x
g x
x

  


Обобщая это, можно вычислить приближенное значение функции в любой точке
0
n
x
x
n x

 
по итерационной формуле
  

1 1
1, 2,3...
n
n
n
y
y
g x
x n






(4)
Данный метод называется методом касательных или методом Эй- лера. Геометрическая интерпретация метода Эйлера имеет следу- ющий вид (рис. 1).