- •Понятие моделирования. История развития математического моделирования. Особенности компьютерного моделирования.
- •Основные этапы процесса моделирования. Специфика процесса компьютерного моделирования.
- •Понятия содержательной модели, математической модели. Постулаты. Параметры и характеристики моделей. Свойства моделей.
- •Классификация моделей.
- •Понятие технической системы, её элементов, комплекса, свойств и т.Д. Классы моделей, используемые при моделировании технических систем.
- •Системы и сети массового обслуживания. Основные понятия и приёмы моделирования для смо.
- •Аналитические модели смо.
- •Понятие случайного процесса. Марковские цепи и процессы.
- •Структурные и функциональные модели. Программирование как моделирование.
Понятие случайного процесса. Марковские цепи и процессы.
Основными для случайных процессов являются понятия состояния и
перехода из одного состояния в другое. Случайный процесс находится в некотором состоянии, если он полностью описывается значениями переменных, которые задают это состояние.
Процесс совершает переход из одного состояния в другое, если описывающие ее переменные изменяются от значений, задающих одно состояние, на значения, которые определяют другое состояние. Случайный процесс состоит в том, что с течением времени процесс переходит из одного состояния в другое заранее не известное cостояние.
Если множество состояний, в которых может находиться процесс счётное, то есть все возможные состояния могут быть пронумерованы, то соответствующий процесс называется случайным процессом с дискретными состояниями или просто дискретным случайным процессом.
Если множество состояний не может быть пронумеровано, то имеем случайный процесс с непрерывными состояниями или просто непрерывный случайный процесс, для которого характерен плавный переход из состояния в состояние и который задаётся в виде непрерывной
ункции времени: E(t) (рис.5.1,б). Например, процесс изменения температуры некоторого объекта может рассматриваться как случайный процесс с непрерывными состояниями.
Рассматриваются случайные процессы с дискретными состояниями S1, S2, …, Sn
Случайный процесс в некоторой системе называется марковским, если вероятность перехода системы в новое состояние зависит только от состояния системы в настоящий момент и не зависит от того, когда и каким образом система перешла в это состояние.
По сути то, что процесс – марковский, означает, что описание системы достаточно полное, то есть нет факторов (на которые влияют предшествующие события), от которых зависит поведение системы, но которые не учтены в описании системы.
Параметры:
Состояния S1, S2, …, Sn
Матрица переходов, содержащая
вероятности переходов для процессов с дискретным временем qij
интенсивности переходов для процессов с непрерывным временем
Начальные вероятности p1(0), … pn(0)
Зависимость вероятностей от времени:
Однородные процессы
Неоднородные процессы
Случайный процесс Z(t) называется случайным процессом с дискретным временем (стохастическими последовательностями или случайными цепями), если переходы из состояния в состояние возможны только в строго определенные заранее фиксированные моменты времени, которые можно пронумеровать: t1, t2 .
Если промежуток времени между переходами из состояния в состояние является случайным и переход возможен в любой заранее не известный момент времени t, то процесс называется случайным процессом с непрерывным временем.
Процессы с непрерывным временем
Система имеет n возможных состояний S1, S2, …, Sn
pij – вероятность перехода из состояния Si в Sj в каждый определённый момент равна 0, поэтому используют понятие интенсивности (плотности вероятности) перехода из одного состояния в другое
Целью является вероятности нахождения системы в различных состояниях (в определённый момент времени)
Соотношение:
Разработка марковской модели системы с дискретным временем
кодирование состояний случайного процесса;
построение размеченного графа переходов;
формирование матрицы интенсивностей переходов;
составление системы линейных алгебраических уравнений.
Примеры моделей на основе марковских цепей и процессов. Эргодическое свойство.
Рассмотрим развитие некоторой популяции, особи которой могут рождаться и умирать. Положим, что при наличии i особей в популяции рождение новых особей происходит с интенсивностью лямбда-итое и с интенсивностью мю-итое – особи умирают. Пусть в любой момент времени может происходить рождение или гибель только одной особи, и интервалы времени между двумя моментами рождения и гибели распределены по экспоненциальному закону с параметрами лямбда-итое и мю-итое соответственно. Тогда процесс "гибели и размножения" может быть представлен марковским случайным процессом с непрерывным временем (рис.5.1,а), в котором состояние Ei соответствует наличию i особей в популяции (i=0, 1, …), причем число состояний может быть конечным или бесконечным. Отметим, что состояние E0 соответствует вырождению популяции.
надёжность системы из двух компьютеров
t – среднее время работы без отказов, tр – среднее время восстановления
l12 = 21/t, l23 = 1/t
m21 = 1/tр, m32 = 21/tр
Стационарные вероятности:
P1 = 1/ (1+2 tр /t + tр2//t2)
P2 = 2 tр /t P1
Разработка марковской модели системы с дискретным
Этапы:
кодирование состояний случайного процесса;
построение размеченного графа переходов;
формирование матрицы интенсивностей переходов;
составление системы линейных алгебраических уравнений.
Процессы однородные и неоднородные
Процесс называется однородным, если вероятности (плотности вероятностей) от времени не зависят. Иначе процесс называется неоднородным.
Если по истечении достаточно большого промежутка времени вероятности состояний стремятся к предельным значениям p1, …, pn , не зависящим от начальных вероятностей p1(0), …, pn(0) и от текущего момента времени t, то говорят, что случайный процесс обладает эргодическим свойством.
–
стационарные
вероятности
Процессы с эргодическим свойством
Случайный процесс с дискретным временем обладает эргодическим свойством, если матрица вероятностей переходов не является периодической или разложимой.
Матрица является разложимой, если она может быть приведена к одному из следующих видов:
В первом случае состояния, соответствующие подмножествам A и D, называются замкнутыми, так как система, находясь в каком-то состоянии одного из этих подмножеств, никогда не сможет перейти в какое-либо состояние другого подмножества. Состояния, соответствующие подмножеству D во втором случае и подмножеству A в третьем случае, называются невозвратными, поскольку после того, как процесс покинет эти состояния, невозможен обратный переход в эти состояния из состояний, соответствующих другим подмножествам.
Матрица является периодической, если она может быть приведена к виду:
Случайный процесс в этом случае будет по очереди переходить из состояний, соответствующих B, в состояния, соответствующие С.
Имитационное моделирование. История, принципы, примеры.
Сложилось в середине XX века
Работы Р. Шеннона и Т. Д. Шрайбера
Сейчас это основной метод исследования сложных систем
Статистическое моделирование – метод исследования сложных систем, основанный на описании процессов функционирования отдельных элементов в их взаимосвязи с целью получения множества частных результатов, подлежащих обработке методами математической статистики для получения конечных результатов. В основе статистического моделирова ния лежит метод статистических испытаний – метод Монте-Карло.
Имитационная модель – универсальное средство исследования сложных систем, представляющее собой логико-алгоритмическое описание поведения отдельных элементов системы и правил их взаимодействия, отображающих последовательность событий, возникающих в моделируемой системе.
Если статистическое моделирование выполняется с использованием имитационной модели, то такое моделирование называется имитационным.
Следует иметь в виду, что статистическое моделирование не обязательно является имитационным.
Временная диаграмма – графическое представление последовательности событий, происходящих в системе. Для построения временных диаграмм необходимо достаточно четко представлять взаимосвязь событий внутри системы.
Имитационное моделирование обычно проводится на ЭВМ в соответствии с программой, реализующей заданное конкретное логико-алгоритмическое описание. При этом несколько часов, недель или лет работы исследуемой системы могут быть промоделированы на ЭВМ за несколько минут. В большинстве случаев модель является не точным аналогом системы, а скорее её символическим отображением. Однако
такая модель позволяет производить измерения, которые невозможно произвести каким-либо другим способом.
Имитационное моделирование обеспечивает возможность испытания, оценки и проведения экспериментов с исследуемой системой без каких-либо непосредственных воздействий на нее.
Рассмотрим принципы имитационного моделирования на примере
простейшей базовой модели в виде одноканальной системы массового обслуживания с однородным потоком заявок (рис.6.1), в которую поступает случайный поток заявок с интервалами между соседними заявками, распределёнными по закону A(t ) , а длительность обслуживания заявок в приборе распределена по закону B(t ) .
Процесс функционирования такой системы может быть представлен
в виде временных диаграмм, на основе которых могут быть измерены и рассчитаны характеристики обслуживания заявок. Поскольку процессы поступления и обслуживания заявок в системе
носят случайный характер, то для построения диаграмм необходимо иметь генераторы случайных чисел.
Положим, что в нашем распоряжении имеются генераторы случайных чисел, формирующие значения соответствующих случайных величин с заданными законами распределений A(t ) и B(t ) . Тогда можно построить временные диаграммы, тображающие процесс функционирования рассматриваемой системы.
«процесс поступления заявок» - получено с помощью задания случайного интервала по правилу A(t )
процесс обслуживания в приборе», представленный в виде длительностей обслуживания bi t , которых вырабатываются с помощью генератора случайных величин B(t ) , и моментов завершения обслуживания ti заявок в приборе, определяемых по обслуживания заявок в приборе
На основе полученных с помощью временных диаграмм значений времени пребывания заявок в системе можно построить гистограмму функции или плотности распределения времени пребывания.
Точность полученных числовых моментов распределения и качество гистограмм существенно зависит от количества значений N времени пребывания заявок, на основе которых они рассчитываются: чем большеN , тем точнее результаты расчета. Значение N может составлять от нескольких тысяч до десятков миллионов. Конкретное значение N зависит от многих факторов, влияющих на скорость сходимости результатов к истинному значению, основными среди которых при моделировании систем и
сетей массового обслуживания являются законы распределений интервалов между поступающими заявками и длительностей обслуживания, загрузка системы, сложность модели, количество классов заявок и т.д.
Ясно, что построение вручную таких временных диаграмм с тысячами и более проходящими через систему заявками, нереально. В то же время, использование ЭВМ для реализации временных диаграмм позволяет существенно ускорить процессы моделирования и получения конечного результата. Поэтому, как сказано выше, имитационное моделирование можно рассматривать как процесс реализации диаграммы функционирования исследуемой системы.
Таким образом, имитационная модель представляет собой алгоритм
реализации временной диаграммы функционирования исследуемой
системы. Наличие встроенных в большинство алгоритмических языков
генераторов случайных чисел значительно упрощает процесс реализации имитационной модели на ЭВМ. Однако при этом остаётся ряд проблем, требующих своего решения. Одна из них заключается в принципе реализации временной диаграммы и, связанной с ней, проблемой организации службы времени в имитационной модели.
При самых простых системах нужно хранить очень много данных: миллионы значений моментов поступления и завершения обслуживания заявок, а также других переменных, причём с увеличением количества классов заявок и количества обслуживающих приборов это число увеличится многократно.
Второй подход, который может быть предложен для реализации
временной диаграммы, – пошаговое построение диаграммы. Для этого
следует сформировать переменную для модельного времени и выбрать шаг t его изменения. В каждый такой момент времени необходимо проверять, какое событие (поступление в систему или завершение обслуживания заявки) произошло в системе за предыдущий интервал t .
Этот подход значительно сокращает потребность в памяти, поскольку в этом случае в каждый момент времени необходимо хранить в памяти ЭВМ значения параметров (моментов поступления и завершения обслуживания) только тех заявок, которые находятся в системе на данный момент времени.
Недостатки такого подхода очевидны. Во-первых, проблематичным
является выбор длины интервала t . С одной стороны, интервал t
должен быть как можно меньше для уменьшения методической погрешности моделирования, с другой стороны, интервал t должен быть
как можно больше для уменьшения времени моделирования.
Наиболее эффективным подходом признан подход с переменным
шагом продвижения модельного времени, который реализуется в соответствии с принципом «до ближайшего события». Принцип «продвижения модельного времени до ближайшего события» заключается в следующем. По всем процессам, параллельно протекающим в исследуемой системе, в каждый момент времени формируются моменты наступления «ближайшего события в будущем». Затем модельное время продвигается до момента наступления ближайшего из всех возможных событий. В зависи-
мости от того, какое событие оказалось ближайшим, выполняются те или иные действия. Если ближайшим событием является поступление заявки в систему, то выполняются действия, связанные с занятием прибора при условии, что он свободен, и занесение заявки в очередь, если прибор занят. Если же ближайшим событием является завершение обслуживания заявки в приборе, то выполняются действия, связанные с освобождение прибора и выбором на обслуживание новой заявки из очереди, если последняя не
пуста. Затем формируется новый момент наступления этого же события. ность событий в имитационной модели, используются системные часы, хранящие значение текущего модельного времени. Изменение значения модельного времени осуществляется в соответствии с принципом «пересчёта времени до ближайшего события». Например, если текущее значение модельного времени равно 25, а очередные события должны наступить в моменты времени 31, 44 и 56, то значение модельного времени увеличивается сразу на 6 единиц и «продвигается» до значения 31. Важно помнить, единицы времени
выбираются исходя из требований пользователя к точности моделирова-
ния. Какая бы единица ни была выбрана, например миллисекунда или однадесятая часа, она должна неизменно использоваться во всей модели.
Кроме рассмотренной службы времени в имитационной модели
необходимо реализовать процедуры, связанные с формированием потоков заявок и имитацией обслуживания, с организацией очередей заявок, с организацией сбора и статистической обработки результатов моделирования.
Таким образом, имитационное моделирование дискретных систем со стохастическим характером функционирования, таких как системы и сети массового обслуживания, предполагает использование ряда типовых процедур, обеспечивающих реализацию соответствующих имитационных моделей. К таким процедурам, в первую очередь, относятся следующие процедуры:
выработка (генерирование) случайных величин:
равномерно распределенных;
с заданным законом распределения;
формирование потоков заявок и имитация обслуживания;
организация очередей заявок;
организация службы времени;
сбор и статистическая обработка результатов моделирования.
Этапы имитационного моделирования:
Формулировка цели моделирования
Построение концептуальной модели
Выбор аппарата моделирования (система, язык программирования и т.д.)
Планирование эксперимента
Выполнение эксперимента
Обработка, анализ и интерпретация данных эксперимента
декомпозиция системы на компоненты производится с учетом структуры проектируемого или изучаемого объекта;
в качестве законов поведения, могут использоваться экспериментальные данные, полученные в результате натурных экспериментов;
а поведение системы во времени иллюстрируется заданными динамическими образами.
Вместо расчёта вероятностных величин рассчитываются ситуации конкретных значений случайных параметров
То есть имитируется поведение случайных параметров
Адекватность и достоверность полученных результатов во многом зависят от адекватности имитирования этих параметров
