Лекция: Имитационное моделирование. Методы построения программных датчиков стандартной (базовой) случайной величины.

В последние годы этот метод моделирования чаще называют System dynamic simulation modeling — имитационным динамичес­ким моделированием. Любую систему можно представить в виде сложной струк­туры, элементы которой тесно связаны и влияют друг на друга различным образом. Связи между элементами могут быть разо­мкнутыми и замкнутыми, когда первичное изменение в одном элементе, пройдя через контур обратной связи, снова воздейству­ет на этот же элемент. Так, реальные системы обладают инерци­онностью, в их структуре имеются элементы, определяющие запаздывания передачи изменения по контуру связи. Сложность структуры и внутренние взаимодействия обуслов­ливают характер реакции системы на воздействия внешней среды и траекторию ее поведения в будущем: она может через какое-то время стать отличной от ожидаемой (а иногда даже противопо­ложной, так как с течением времени поведение системы может измениться из-за внутренних причин). Именно поэтому целесооб­разно предварительно проверять поведение системы с помощью модели, что позволяет избежать ошибок и неоправданных затрат в настоящем и будущем. При имитационном динамическом моделировании строится модель, адекватно отражающая внутреннюю структуру модели­руемой системы, затем поведение модели проверяется на ЭВМ на сколь угодно продолжительное время вперед. Это дает возмож­ность исследовать поведение как системы в целом, так и ее составных частей. Имитационные динамические модели отража­ют причинно-следственные связи между элементами системы и динамику изменений каждого элемента. Так как модели реаль­ных систем содержат большое число элементов, поэтому их имитация осуществляется на ЭВМ. Для описания имитационных моделей применяется формализованный язык моделирования DYNAMO. При построении имитационных моделей используются следу­ющие понятия и определения. Диаграмма причинно-следственных связей — это графическое изображение причинно-следственных связей между элементами, составляющими моделируемую систему. Причинно-следствен­ные связи обозначаются стрелками, направленными от причины к следствию. Связь может быть положительной (когда изменение причины вызывает аналогичное изменение следствия) и отрица­тельной (изменение причины вызывает противоположное измене­ние следствия). Причинно-следственные связи могут образовы­вать замкнутые однонаправленные контуры — контуры положи­тельной или отрицательной обратной связи. Если в контур вхо­дит четное число отрицательных причинно-следственных связей или их нет вообще в нем, то это контур положительной обратной связи; если в контур входит нечетное число связей, то это контур отрицательной обратной связи. Уровень — элемент, характеризующий накопление потока, до­стигнутый уровень (например, уровень числа рабочих, занятых на предприятии, объем переработанной информации за данный ин­тервал времени и т. п.). Уровень изображается прямоугольником, внутри которого помещают его обозначение LEVX и номер уравнения, описывающего динамику уровня. Индекс соответству­ет моменту времени, для которого берется значение уровня Х=I, K, L. Поток, вливаясь в уровень или вытекая из него, определяет изменение уровня. Потоки являются материальными (например, поток рабочей силы, поток готовой продукции и т. п.) и инфор­мационными. Поток измеряется темпом потока, характеризу­ющим количество переносимого потоком инградиента в единицу времени. Количество уровней определяет порядок имитационной моде­ли. При построении имитационных моделей возникает необходи­мость введения различных промежуточных, вспомогательных по своему составу элементов, отображающих как промежуточные этапы в процедуре определения значений уровней и темпов, так и отдельные параметры, влияющие на поведение моделируемой системы. Шаг моделирования — это интервал времени, через который вычисляются все параметры модели. Он обозначается DT. На протяжении интервала DT вое переменные модели считаются неизменными, определенными в предшествующий момент време­ни/и принимающими новые значения скачкообразно в насто­ящий момент времени K. Имитационной моделью системы будем называть программу, которая воспроизводит процесс функционирования моделируемой системы во времени в соответствии с тем, как действуют причинно-следственные связи в этой системе и ее окружающей среде. При этом, как правило, система разбивается на определенное количество объектов, для которых формально описаны их возможные состояния, числовые и логические атрибуты и правила взаимодействия. Такие объекты представляются в программе в виде соответствующих наборов данных. В начальный момент времени в программе задается начальное состояние системы. Все последующие состояния вычисляются на основе предыдущих состояний в соответствии с причинно-следственными связями. Таким образом, имитационная модель воспроизводит в численном виде динамику системы. Наряду с этим модель включает средства для сбора данных по системе или отображения текущих состояний системы на экран. Выполнение имитационной модели называют прогоном модели. При необходимости варьирования параметров модели или начальных условий, а также а также для накопления статистических данных может потребоваться большое количество прогонов. Выполнение прогонов модели называют имитационным экспериментом. Основные классы систем: С точки зрения имитационного моделирования системы подразделяются на детерминированные и стохастические, в зависимости от того, присутствуют ли в системе случайные факторы (если присутствуют, то система стохастическая); а также на непрерывные и дискретные. В непрерывных системах все переменные являются непрерывными функциями времени. В дискретных системах все переменные могут изменяться лишь в некоторый момент времени, множество которых дискретно, между этими моментами времени не изменяются. В тоже время, сами переменные Х1, Х2… и время t — являются непрерывными величинами. Изменения, происходящие в дискретной системе называют событиями. Автоматизированные системы(АС) при имитационном моделировании наиболее удобно представлять виде стохастических дискретных систем. Типичным примером такого представления данных может служить СМО(система массового обслуживания). При обработке статистических данных, при моделировании АС следует учитывать, что воспроизводимые воспроизводимые случайные процессы всегда имеют переходный процесс и могут быть неэргодическими, поэтому наиболее общая схема имитационного эксперимента включает несколько независимых потоков с последующим усреднением полученных реализаций случайного процесса по множеству прогонов. Имитационная модель (ИМ) — программа, при выполнении которой на ЭВМ в численном виде воспроизводится процесс функционирования системы в соответствии с известным причинно-следственным механизмом, определяющим состояния элементов системы в очередные моменты времени через их состояния в прошлом. Системы делятся на непрерывные (все переменные представляют собой непрерывные функции времени) и дискретные. Имитационное моделирование (ИМ) применяется для исследования и проектирования таких сложных систем и процессов, как предприятия, информационные сети, мировые динамики в экономике или экологии и т.д. Имитационная модель системы – это программа, в которой определяются все наиболее существенные элементы и связи в системе и задаются начальные значения параметров, соответствующие некоторому «нулевому» моменту времени, а все последующие изменения, происходящие в системе по закону причин и следствий, вычисляются на ЭВМ автоматически при выполнении программы. Такой метод моделирования не требует составления уравнений и, тем более, не требует их решения. При этом он позволяет отображать и исследовать поведение системы с любой детальностью и точностью. По характеру возможных изменений переменных величин модели подразделяются на непрерывные модели и дискретные. Реальные системы не бывают непрерывными или дискретными. Просто для одних систем удобнее применять непрерывные модели, для других – дискретные. По характеру проявления причинно-следственных связей имитационные модели подразделяются на детерминированные и стохастические, т.е. вероятностные. Этапы ИМ: Постановка задачи, Схема процесса и предварительный анализ, Разработка модели, Планирование эксперимента.

2)Базовой случайной величиной (БСВ) в статистическом моделировании называют непрерывную случайную величину z, равномерно распределенную на интервале (0,1). Ее плотность распределения вероятностей (п.р.в.) имеет вид: f(t) = 1, 0 < t < 1. Математическое ожидание (м.о.) и дисперсия БСВ составляют M(z) = 1/2 D(z) = 1/12. Датчик БСВ – это программа, выдающая по запросу одно случайное значение БСВ. Путём многократного обращения к датчику БСВ получаем выборку независимых случайных значений z1,z2,…,zn. Программный датчик БСВ обычно вычисляет значения по какой-либо рекуррентной формуле: zi+1=f(zi), при заданном стартовом значении z0. Заданное значение z0 полностью определяет посредством формулы всю последовательность z1,z2,…,zn, поэтому величину z на выходе датчика БСВ называют псевдослучайной величиной. В практическом применении датчиков БСВ свойства псевдослучайной последовательности чисел широких пределов идентичны свойствам чисто случайной последовательности. Путём преобразования БСВ можно получать модельные реализации многих других случайных объектов, включая любые непрерывные и дискретные с.в., случайные события, и т.д. Метод середины квадрата: (1) Возьмем произвольное четырехзначное число. (2) Возведем полученное четырехзначное число в квадрат и, если необходимо, добавим к результату слева нули до 8-мизначного числа. (3) Возьмем четыре цифры из середины 8-мизначного числа в качестве нового псевдослучайного четырехзначного числа. (4) Если нужны еще случайные числа, то перейдем к (2). Сам по себе метод середины квадрата не получил широкого распространения, так как выдает «больше чем нужно малых значений». Но открытый в нем принцип используется во многих более поздних датчиках БСВ. Этот принцип состоит в вырезании или перемешивании нескольких цифр в числовом результате какой-либо простой арифметической операции. Мультипликативный конгруэнтный метод. М.к. датчик БСВ однозначно задаётся двумя параметрами: модулем m и множителем k. Эти параметры представляют собой достаточно большие целые числа. При заданных m и k псевдослучайные числа zi вычисляются по рекуррентной формуле: Ai=(kAi-1) mod m, i=1,2,…zi=Ai/m. Где A0-начальное значение, mod-операция вычисления остатка от деления произведения kAi-1 на m. Этот датчик даёт периодическую псевдослучайную последовательность z1,z2,… с длиной периода T<m-1. Тестирование равномерности БСВ: Обозначим равномерное распределение вероятностей на интервале (0,1) через R[0,1]. Тогда утверждение, что БСВ z имеет распределение R[0,1] можно кратко записать в виде z ~ R[0,1]. С помощью статистических тестов проверяют два свойства датчика, делающих его точной моделью идеальной БСВ – это равномерность распределения чисел z, выдаваемых датчиком на интервале (0,1), и их статистическую независимость. Последовательность псевдослучайных чисел zi на выходе датчика будем рассматривать как выборку. Проверка равномерности распределения БСВ сводится к построению эмпирических вероятностных характеристик (моментов и распределений) с.в. z по выборке z1,z2,…,zn и их сравнению с теоретическими характеристиками распределения R[0,1]. Тестирование независимости БСВ: Простейшую проверку статистической независимости БСВ можно осуществить, оценивая линейную корреляцию, между числами Zi и Zi+s отстоящими друг от друга в псевдослучайной последовательности на фиксированный шаг S >=1. Коэффициент корреляции между с.в. XY определяется формулой .(1). Если XЄR[0,1] и YЄR[0,1], то M(X)=M(Y)=1/2 и D(X)=D(Y)=1/12, то формула (1) принимает вид. Будем рассматривать в выборке всякую пару чисел (Zi ,Zi+s) как реализацию пары с.в. (x,y). Тогда во всей выборке z1,z2,…,zn имеем следующие n-s реализаций пары (x,y): (Z1 ,Z1+s), (Z2 ,Z2+s),…, (Zn-s ,Zn). Формула для вычисления оценки Ř:. Коэффициент корреляции двух с.в. характеризует степень линейной зависимости между ними, поэтому с ростом длины выборки n оценка Ř должна приближаться к нолю, т.е. линейная зависимость должна отсутствовать, в противном случае датчик БСВ не отвечает требованию независимости БСВ. Если коэффициент корреляции равен нолю, то это не гарантирует независимость случайных чисел, но всё же один из тестов, тест на линейную зависимость, можно считать успешно пройденным. Ещё одним тестом, проверяющим наличие равномерности и независимости, является тест на равномерность заполнения n-мерных кубов точками с координатами (Z1,…,Zn), (Zn+1,…,Z2n)···

 

еще рефераты
Еще работы по информатике