Имитационное моделирование транспортных систем
Имитационное моделирование - это разновидность математического моделирования, в котором описание модели задается в виде алгоритмов поведения и взаимосвязи элементов моделируемой системы. Используемые алгоритмы позволяют имитировать как поведение элементов системы, так и всей системы в целом, а также определять требуемые параметры функционирования системы.
Имитационное моделирование может быть детерминированным или стохастическим, статическим или динамическим.
В стохастических статических моделях значения исходных вероятностных параметров формируются с помощью датчиков случайных чисел, после чего определяются значения других параметров по задаваемым функциональным зависимостям. Многократный прогон модели позволяет собрать статистику о параметрах модели и по ней определить их статистические характеристики.
Динамические модели имитируют поведение системы во времени и позволяют исследовать работу системы в заданном временном диапазоне или прогнозировать се работу в будущем. В таких моделях используются понятия событие, процесс, активность. Событие - это изменение состояния системы, причем событие происходит мгновенно. В промежутке между двумя событиями модель остается неизменной. Процесс - это последовательность логически или технологически связанных единой целью активностей, а активность - это элементарная работа по переводу системы из одного состояния в другое. Активность начинается и завершается событием (рис. 3.8).

Рис. 3.8. События, активности и процессы
В имитационных динамических моделях используется пять подходов к ее описанию (концепций):
- • просмотр активностей. Ои позволяет определить реакцию системы на поступление команд, возникновение потребности в информационных или материальных ресурсах. Активность характеризуется временем выполнения и потребляемыми ресурсами. Каждый элемент системы имеет определенный набор активностей для реакции на определенные воздействия. В ходе их проявления складываются картина функционирования системы, достигаемые показатели и требуемые для этого ресурсы. Этот подход наиболее близок к объектно-ориентированному подходу;
- • реализация событий. Эти события представляют собой переход элемента или в целом системы из одного состояния в другое. События характеризуются условиями возникновения и допустимыми реакциями элемента или системы, для которого произошло данное событие. События возникают в системе по определенным законам и вызывают в качестве реакции выполнение в ней различных процессов;
- • обслуживание транзактов - абстрактных понятий элементов моделируемой системы. Транзакты могут отражать реальные объекты или объекгы, введенные в модель для выполнения каких-либо действий. Это, например, счетчики времени - таймеры. С каждым типом транзакта связана своя логическая схема операций, задающая условную или безусловную последовательность операций, выполняемых с транзак- том данного типа. Такая схема называется сегментом. Операция характеризуется временем выполнения, которое может быть детерминированным или стохастическим. Таким образом, состояния трапзак- та определяются операциями, с которыми связан транзакт;
- • управление агрегатами. Оно предусматривает описание модулей модели по унифицированной структуре. Полученный набор агрегатов отражает поведение элементов и их взаимодействие в системе;
- • выполнение процессов. Процесс характеризуется длительностью выполнения, результатом, необходимыми ресурсами, условиями запуска и останова. Процесс в системе может быть активен (выполняться) или находиться в ожидании.
Практически любая система может быть описана одним из пяти перечисленных подходов. В зависимости от особенностей системы это повлияет на трудоемкость моделирования, затраты времени и объем создаваемой модели.
Фундаментальным понятием имитационного моделирования является модельное время и управление им. Модельное время Т - это представление физического времени Т в модели. Так, работу предприятия в модельном времени можно представить отрезком времени от 8 до 17 ч, за единицу модельного времени h можно принять временной интервал в 1 мин, 10 мин, 30 мин, 1 ч и т. д. Т = Тр1И.
Продолжительность работы модели при ее работе (прогоне) на компьютере называется процессорным временем. Так, например, моделирование предприятия может занять 1 ч работы на компьютере. Иногда (при использовании тренажеров) продвижение модельного времени должно быть синхронизировано с процессорным. Такое моделирование называют моделированием в реальном времени. Для управления модельным временем в модели используется специальный счетчик модельного времени - таймер. Таймер может управляться двумя способами.
При имитации по способу фиксированного шага значение таймера увеличивается с постоянным шагом. На каждом шаге проверяется наступление в системе события. Если событие зафиксировано, то в модели выполняются соответствующие действия по заданному алгоритму и таймер выполняет следующий шаг. Если событие не наступило, то таймер отсчитывает шаги до наступления события.
При имитации по способу шагов до следующего события таймер меняет значение модельного времени только в моменты наступления событий. Процесс моделирования выполняется от события к событию. Этот способ получил большее распространение из-за повышения скорости моделирования.
При разработке имитационной модели последовательно выполняются следующие этапы работы.
- 1) формулировка задачи, выбор целевой функции и ограничений системы;
- 2) формализация описания системы, определение характеристик элементов и взаимозависимостей;
- 3) подготовка исходных данных для модели, включая контрольный пример с известными результатами для верификации работы модели;
- 4) разработка модели и ее реализация в виде компьютерной про- граммы - трансляция модели;
- 5) планирование машинного эксперимента для определения числа прогонов модели;
- 6) проведение моделирования;
- 7) анализ полученных результатов, их интерпретация, документирование и реализация в исследуемой системе.
При имитационном моделировании используется различная математическая основа. Это марковские процессы, дифференциальные уравнения, конечные и вероятностные автоматы и т. д. Существенная часть имитационных моделей на транспорте строится на основе теории массового обслуживания. Первые труды по теории массового обслуживания принадлежат датскому ученому А. К. Эрлангу, которые были опубликованы в 1909 г. и выполнены на примере проектирования телефонных сетей.
С помощью теории массового обслуживания решаются задачи организации и планирования процессов, в которых, с одной стороны, постоянно в случайные моменты времени возникает требование выполнения каких-либо работ, а с другой - постоянно происходит удовлетворение этих требований, время выполнения которых является также случайной величиной. Перед теорией стоит задача достаточно полно описать суть происходящих явлений и установить с достаточной для практики точностью количественную связь между числом постов 128
обслуживания, характеристиками входящего потока требований (заявок) и качеством обслуживания. При этом иод качеством обслуживания понимается, насколько своевременно проведено обслуживание поступивших в систему требований.
Система массового обслуживания (СМО) характеризуется структурой, которая определяется составом входящих в нее элементов и функциональными связями между ними.
Требование - это запрос на удовлетворение некоторой потребности в выполнении работ.
Очереди требований - это число требований, которые ожидают обслуживания. Очередь характеризуется своей величиной, которая, как правило, переменная, и средним временем простоя одного требования в ожидании обслуживания (^6).
Входящий поток - совокупность требований, поступающих с определенной закономерностью. Входящий поток характеризуется своей интенсивностью X, нагрузкой на одно требование q и законом распределения, который описывает распределение требований по времени.
Выходящий поток - это поток требований, покидающих систему обслуживания. Требования этого потока могут быть обслужены или не обслужены в системе. Этот поток может оказаться входящим для другой группы обслуживающих устройств.
Обслуживающие устройства - средства, которые осуществляют обслуживание. Обслуживающие устройства характеризуются в первую очередь своей производительностью v и законом времени обслуживания требований.
Обслуживающая система - совокупность обслуживающих устройств.
Производительность обслуживающего устройства, которая часто называется интенсивностью обслуживания, определяется по формуле
Интенсивность поступления требований - это среднее число требований, поступающих в систему или покидающих се за единицу времени:

где Т - среднее значение интервала между поступлением очередных требований.
Для автомобилей нагрузка на одно требование будет совпадать со средней величиной фактической грузоподъемности автомобилей.
Представить случайные события в виде потока во времени можно с помощью рис. 3.9, на котором т - интервал между событиями (случайная величина); t - момент совершения /-го события (отсчитывается от / = 0); Т - время наблюдения.

Рис. 3.9. Поток случайных событий
Любая СМО имеет дисциплину очереди, т. е. порядок обслуживания поступающих требований. Например, первое поступившее требование обслуживается первым, первым обслуживается последнее поступившее требование, принимается случайный порядок обслуживания поступающих требований, обслуживание определенных заявок в первую очередь (требования с приоритетом) и т. п.
Процесс поступления в систему массового обслуживания потока требований и время их обслуживания являются случайными величинами, которые могут быть дискретными и непрерывными. Множество значений дискретной случайной величины конечно. Например, входящий поток прибывающих на заправочную станцию автомобилей дискретен, так как прибытие автомобилей происходит в определенные моменты времени. Множество значений непрерывной случайной величины представляет собой множество всех точек, принадлежащих какому-либо интервалу числовой оси. Например, время заправки автомобилей является непрерывной случайной величиной, так как может иметь в определенном диапазоне любые числовые значения.
Для того чтобы задать случайную величину, необходимо задать множество значений, которые она может принимать. Однако одного перечня значений случайной величины еще недостаточно для какихлибо существенных выводов. Нужно еще знать, как часто, т. е. с какой вероятностью, она принимает эти значения. Ответ на поставленный вопрос дает исчерпывающая характеристика случайной величины - закон се распределения.
Закон распределения представляет собой соотношение, позволяющее определить вероятность появления случайной величины в любом интервале (и, в частности, вероятности любых значений случайной величины). Основными формами закона распределения являются ряд распределения, функция распределения и плотность распределения.
Ряд распределения представляет собой таблицу, в которой перечислены возможные значения случайной величины и соответствующие им вероятности:
х, х2 х} ... хп -/-е значение случайной величины.
pt р2 ... р - вероятность появления/'-го значения величины X.
При этом Е/л = 1.
Эмпирический ряд распределения представляет собой таблицу, в которой перечислены наблюдаемые значения (фактические реализации) случайной величины и соответствующие им частоты:
х, х2 ху ... хп - /-я фактическая реализация случайной величины.
т[ т2 /и, ... т - количество появлений (частота) величины х.
Ряды распределения, образованные из значений случайной величины, характеризующей качественный признак, называются атрибутивными. Ряды распределений, образованные из значений случайной величины, характеризующей количественный признак явления (события), называются вариационными.
Ряд распределения нс может служить характеристикой непрерывной случайной величины, поскольку значения этой величины нельзя перечислить, так как множество их несчетно. Для характеристики непрерывной случайной величины определяют вероятность появления значения случайной величины меньшего х, где х - текущая переменная, т. е. определяют вероятность события X < х. Вероятность этого события зависит от х, т. е. является функцией х. Эта функция называется функцией распределения случайной величины Xи обозначается F(x):
131
Таким образом, функцией распределения случайной величины X называется функция аргумента х, равная вероятности того, что случайная величина Xпримет любое значение, меньшее х.
Вероятность попадания случайной величины в полузамкнутый интервал [а, Ь) равна разности значений функции распределения в точках Ьи а:

Функция распределения есть неубывающая функция, значения которой начинаются с нуля и доходят до единицы. Функцию распределения дискретной случайной величины можно определить, зная ее ряд распределения, по формуле
Следует отметить, что функция распределения дискретной случайной величины увеличивается скачками каждый раз, когдаXпри своем изменении проходит через какое-нибудь из возможных значений х, причем величина скачка равна вероятности этого значения. Между двумя соседними значениями величины X функция F(x) постоянна.
Поскольку для непрерывной случайной величины нельзя использовать в качестве характеристики вероятность появления ее отдельных значений, то определяют вероятность появления случайной величины в пределах малого интервала [х, х + Дх), примыкающего к х. Разделив эту вероятность на длину интервала Ах, находят среднюю плотность вероятности и при неограниченном уменьшении длины интервала переходят к пределу, который является плотностью распределения в точке х,

Плотность распределения/(х) есть предел отношения вероятности попадания случайной величины на малый участок и длины этого участка при ее неограниченном уменьшении.
Вероятность попадания случайной величины на произвольный участок [а, Ь)

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

Рис. 3.10. График плотности распределения
Вероятность попадания на участок [а, Ь) равна площади, ограниченной кривой распределения, опирающейся на участок [а, Ь).
Для оценки особенностей законов распределения случайных величин определяют числовые характеристики этих величин.
Среднее значение, или математическое ожидание дискретной случайной величины, вычисляется по формуле

Для непрерывной случайной величины X математическое ожидание определяется интегралом:

Дисперсией называется математическое ожидание квадрата отклонений случайной величины от своего математического ожидания:

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

Наряду с дисперсией случайной величины в качестве характеристики рассеивания случайной величины используется среднее квадратическое отклонение а, которое равно положительному значению корня квадратного из дисперсии. Среднее квадратическое отклонение имеет одинаковую размерность со случайной величиной, в этом состоит ее преимущество относительно дисперсии.
Величины а2 и а показывают абсолютное отклонение от среднего значения случайной величины, что недостаточно характеризует уровень ее рассеивания. Относительной характеристикой рассеивания является коэффициент вариации, вычисляемый как отношение среднего квадратического отклонения и эмпирической средней:
Коэффициент вариации может использоваться для сравнения меры рассеивания случайных величин, имеющих различную размерность.
Для моделирования случайных величин наиболее удобно использовать известные законы распределения. Для дискретных величии наиболее часто используются биномиальное распределение и распределение Пуассона.
Биномиальное распределение. Это распределение числа X - появления события А в серии из п независимых испытаний. Вероятность наступления события А в каждом испытании равна р, а вероятность его отсутствия = 1 - р. В каждом испытании возможны два исхода: наступление или ненаступление события А. При сформулированных условиях ряд распределения числа появления события А определяется формулой Бернулли

где Р (.X = т) - вероятность появления события А - равна т раз в серии из п испытаний.
Характер биномиального распределения определяется двумя параметрами: р и п. На рис. 3.11 показаны примеры биномиального распределения для некоторых значений этих величин.

Рис. 3.11. Примеры биномиального распределения
Математическое ожидание a = пр, дисперсия Dx = пр( 1 -р).
Использование биномиального распределения можно пояснить следующим далее примером. Известно, что 10 % автомобилей не соответствует требованиям по содержанию вредных веществ в выхлопных газах. Определить вероятность наличия автомобилей, не соответствующих требованиям, среди четырех, выбранных случайным образом.
Вероятность, что среди четырех выбранных все автомобили будут соответствовать требованиям, РА(0) = (4!/(0! 4!))0,1° • 0,94 = 0,6561; один не будет соответствовать требованиям, Р4(1) = (4!/(1! 3!))0,11 х *0,93 = 0,29 1 6; два не будут соответствовать требованиям, РД2) = = (4!/(2! 2!))0,12 • 0,92 = 0,0486; три не будут соответствовать требованиям, Р4(3) = (4!/(3! 1 !))0,13 • 0,9' = 0,0036; все четыре не будут соответствовать требованиям, Р4(4) = (4!/(4! 0!))0,14 • 0,9° = 0,0001.