Ю. Карпов - Иммитационное моделирование систем с AnyLogic 5 (1124147), страница 39
Текст из файла (страница 39)
Структура модели сервиса мобильной связи Рис. 9.10. Структура модели для решения проблемы мобильной связи Очевидно, что поток поступающих заявок и поток обслуживания имеют вероятностную природу. Для простоты будем считать, что они экспоненциальны.
Введем в модель три параметра: целый н (число линий связи) и два вещественных 1аяатба (интенсивность поступления заявок) и лю (интенсивность их обслуживания каждым каналом). Установим начальные значения для них н=з, 1атяьба=1. з и ям=с . з. 9.6.2. Параметры модели Для определения характеристик эффективности системы установим следувшие параметры для блоков системы. П Блок зоилсе.
У параметра тпсекаккаяа1тьие оставим зкспоненциальное распределение, но установим у этого распределения параметр 1алахта. Часть!д )Иетсдологичвскив вопросы использования моделей 192 П Блок вИестОи9вт посылает принятые заявки на свой выход т при условии истинности параметра ветесксаас)'каса. В нашей модели это условие должно быть истинно только в том случае, когда процессор ркосеввд имеет свободные линии. Число обрабатываемых в этом блоке заявок можно получить, обратившись к функции вакепетау) ). Итак, в поле параметра ветесссеаеьсьеа блока ветессоссрск нужно установить ркесеввЯ.в)вепе1ауы <н. и Блок ргосея)9 Здесь параметр еетаути е УСтановитЕ КаК екрсаескаат)еа).
Остальные параметры оставьте неизмененными. В частности, параметр чиаас)ву определяет Число ресурсов на одну входную заявку, он уже установлен в 1, параметр саеиесарасвеу определяет длину очереди в процессоре, но у нас длина очереди не будет влиять на работу блока (мы определили, что в блок приходит заявка, если только лля нее есть ресурс). О Блок севвигсс требует установки только одного параметра — сарасьсу, установите для него значение н. Сравните свою модель с моделью вн.ааяркеыепа папки Мот)е1 Ехаптр!ез~рап!11. Запустите модель в режиме виртуального времени. Через несколько секунд некоторые из требуемых характеристик уже гюявятся в анимированном окне структуры (рис.
9,! 1), Рис. 9.11. Статистические характеристики модели 193 Глава 9. Компьютерный эксперимент 9.6.3. Статистические характеристики модели Из рис. 9.11 видно, что всего пришло 39 425 вызовов, 65 % из них обслужено, остальным отказано. Среднее время между обслуженными заявками 1.026. Таким образом: Г) абсолютная пропускная способность системы, т. е.
среднее число заявок, обслуженных в единицу времени -1/1.026 = 0.975; С! опюсительная пропускная способность системы, т. е. средняя доля пришедших заявок, обслуживаемых системой -65 %; Г3 вероятность отказа заявке Ь обслуживании -34 %. Однако статистические характеристики системы играют лишь вспомогательную роль при анализе систем.
Действительной целью моделирования является анализ возможной прибыли при различных значениях вектора входных параметров системы. В нашей задаче единственным таким параметром является к — число поддерживаемых каналов связи. 9.6.4. Проблема оптимизации. Целевая функция Введем понятие тарифного плана — аналога соглашения о качестве сервиса (Ьегч!се ).ече! Аягеепзепг), которое широко используется в современных системах предоставления сервиса для расчета стоимости сервиса. В таком соглашении обычно оговариваются как стоимость сервиса при его надлежащем качестве, так и штраф поставщика сервиса за низкое качество обслуживания.
Пусть в соответствии с тарифным планом каждая обслуженная заявка приносит поставщику сервиса некоторый дохол в соответствии с правилом посекундной тарификации после первой минуты, а за каждую отклоненную заявку поставщик сервиса должен заплатить штраф. Покупка оборудования АТС и содержание каждого канала обходятся в некоторую сумму, зависящую от максимального числа каналов АТС.
Прибыль, полученную владельцем АТС, можно вычислить как доход за обслуживание вызовов минус штраф за отвергнутые вызовы и расходы на оборудование: прибыль = доход — штраф — стоимостьоборудования Увеличение числа каналов, обеспечивающих связь, уменьшает штраф и повышает доход, но при этом растут и расходы на оборудование. Варьируя число каналов при конкретных значениях остальных параметров системы, можно найти то оптимальное число каналов, которое принесет максимальную прибыль.
Именно значение прибыли в этой задаче играет роль значения функции полезности, обсуждаемой в разд. 9.4. Ясно, что аналитически проблему эту не решить, т. к. все функции здесь неаналитические. Поскольку доход и штрафы можно подсчитать с помощью имитационной модели, то вся проблема является типичной проблемой имитационного моделирования. Прибегнем к оптимизации, использующей ими- Часть г!!. Методологические вопросы использования моделей тационную модель для нахождения значения заданного функционала (прибыли) при конкретных значениях параметров.
Доход от каждой обслуженной заявки зависит от времени соединения (например, поставщик сервиса хочет объявить повременную тарификацию после первой минуты). Любая подобная зависимость в Авуаров!с легко задается с помощью функции. Отнеся суммарный дохол (назовем его в модели тпсотов) к временному периоду моделирования, получим дохол в единицу временй (назовем его дава).
Доход в единицу времени является случайной величиной, мы булем использовать его среднее значение. Рассмотрим теперь расходы: Они состоят из штрафов за отвергнутые вызовы и затрат на оборудование. Выплачиваемый штраф нужно подсчитывать для всех отвергнутых вызовов.
Пусть реоатеу — средний штраф в елиницу времени по всем отвергнутым вызовам. Это также случайная величина, среднее значение которой будет использоваться при поиске минимума целевой функции. очете 2.7 6.4 В.21 вр е ой б з Неереиенной в Фазовый Рис. 9. т 2. Типы наборов данных Наборы данных В нашей задаче полученный в каждый момент времени средний доход саьп так же, как и лтногие другие значения в моделях систем массового обслуживания (длина очереди и время нахождения кажлой заявки в очереди в некоторый момент времени и т. п.), будет только конкретной реализацией соответствующих величин, имеющих стохастическую природу.
В общем случае все параметры производительности систем, функционирующих в условиях неопределенности, являются стохастическими. При анализе таких систем представляют интерес не конкретные значения этих паралтетров, которые являются случайными величинами, а статистические характеристики всего набора реализаций таких случайных величин — среднее, максимальное и минимальное значения, доверительный интервал и т. и. Для удобства работы с коллекциями данных Апу) ойтс поддерживает встроенный класс, который называется нпбор дпнных (басаеве).
Для набора данных не только хранятся все его конкретные значения, но и автоматически подсчитываются его статистические характеристики. Глава 9. Компьютерный эксперимент Наборы данных могут быть трех типов, показанных на рис. 9. (2. Нееременкоп тип — это просто последовательность реализаций некоторой случайной величины.
Статистические характеристики такого набора данных опрелеляются стандартным образом. Совершенно другой тип наборов данных — временной. Для временных наборов ланных хранятся не только каждое конкретное значение случайной величины, но и момент времени, в который это значение было установлено. При подсчете статистических характеристик такого набора ланных учитывается ллительность временного интервала, в течение которого случайная величина имела конкретное значение, то есть значение случайной величины учитывается с весом, равным этому временному интервалу. Фазовый набор данных — это последовательность пар значений, из которых первое понимается как аргумент, а второе — как значение функции от этого аргумента.
Очевидно, что время ожидания в очереди прелставляется невременным набором данных. С другой стороны, длина очереди — это временной набор данных. Случайные величины даьп и репа1ех в нашей модели тоже невременные наборы данных. Если х — случайная величина, лля которой нам хочется подсчитать ее статистические характеристики, то в модели нужно определить х как набор ланных (простой, временной или фазовый), и в момент, когда х примет очередное значение х, вызвать функцию х.азы(х!. Для набора ланных с именем х вызовы методов х.ссипе, х.ееап, х.езп, х.так дадут следуюшие статистические характеристики случайной величины гс число реализаций, запомненных в наборе, среднее, минимальное и максимальное значения.
Другие методы возврашают доверительный интервал среднего (теапсспгьпевее), дисперсию (хагъавее) идр. Полный список методов, доступных для получения статистической информации случайной величины, приведен в Спровочкпке Клпссоо (С!а% Ке(егепсе) пакета Апу! ой(с. Для сбора реализаций случайных величин ваге и репа1ех ввелите наборы данных с этими именами, выбрав в контекстном меню активного объекта маге команду Новый набор данных. Кроме имени никаких других параметров в окне свойств этих объектов менять не надо.
Доход от обслуживания вызовов В нашей модели сделаем следующие добавления. Все цены будем считать в у. е., единица молельного времени будет соответствовать одной минуте реального времени. Для подсчета длительности состоявшегося телефонного разговора введем новый тип сообщении ф::.-~~~), который назовем сап.. Этот тип будет наслеловаться от базового класса ватт ех и иметь два вешественных поля„езеате и егъаьвь (рис.
9.13). В блоке всвтее параметр пе вт егех определим как са1г.става (используя выпадаюшее меню). В этом поле определяется класс тех объектов, которые Часть И). Методологические вопросы использования моделей будут генерироваться данным источником. В языке зауа < л алассаь.сгавв как раз задает класс объектов. Рис. 9.13. Новый тнп сообщения В блоке ртссевв() параметр с весят определим как: ((Са11)епсъсу).сяеатс=дестгее( )з а ПараМЕтр спахгс КаК: ((са11)епеъеу).туз.пз.вь=дестзее( )з Во всех блоках Еп(егрг!зе ЫЬгату имя текущего объекта (сообшения) по умолчанию установлено как епсгсу.