Лекция 7. Моделирование СМО МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ

advertisement
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Лекция 7. Моделирование СМО
Цель
Обсудить понятия:
 имитация работы объекта экономики в трех измерениях: материальные,
денежные и информационные потоки. Работа с объектами типа
«ресурс»;
 основные объекты модели фирмы с учетом ее взаимодействий: с
рынком, с банками, с бюджетом, с поставщиками, с наемным трудом.
Рассмотреть задачи моделирования:
 СМО с 1-м каналом и с отказами;
 СМО с 1-м каналом и очередью;
 СМО с двумя каналами и ограниченной очередью.
Оглавление
Имитация работы объекта экономики в трех измерениях: материальные, денежные и
информационные потоки ..........................................................................................................1
Основные объекты модели фирмы с учетом ее взаимодействий: с рынком, с банками, с
бюджетом, с поставщиками, с наемным трудом ....................................................................3
Моделирование СМО с 1-м каналом .......................................................................................3
Разработка модели .....................................................................................................................4
Управление очередью в СМО ..................................................................................................8
Управление обслуживанием ...................................................................................................11
Приложение. Некоторые аналитические результаты для СМО .........................................14
Имитация работы объекта экономики в трех
измерениях: материальные, денежные и
информационные потоки
В имитационных моделях экономических процессов функционируют потоки
трех видов – материальные, денежные, информационные. Эти потоки
моделируются объектами типа «ресурс». Соответственно выделяют материальные,
денежные и информационные ресурсы. Независимо от природы ресурса он
характеризуется тремя параметрами – мощностью, остатком и дефицитом.
Мощность ресурса – максимальное число ресурсных единиц, которые можно
использовать для различных целей. Остаток ресурса – число не занятых на
данных момент единиц. Дефицит ресурса – количество единиц ресурса,
потребных заявкам, стоящим в очереди.
Материальные
ресурсы
подразделяются
на
две
разновидности:
перемещаемые и неперемещаемые. Неперемещаемый ресурс выделяется в
определенном месте (как в реальности, так и в модели). Например, мастер
парикмахерской – это элемент ресурса, выделенный клиенту для обслуживания.
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Этот элемент не может перемещаться вместе с клиентом (трансактом). После
обслуживания клиента ресурс высвобождается и может быть передан следующему
клиенту, либо отдыхать.
Перемещаемый ресурс соответственно перемещается вместе с клиентом.
Например, ресурс – грузовики в гараже. Одна машина выделяется клиенту и
используется им в других местах (а не в гараже).
Неперемещаемый
ресурс
моделируется
обслуживающего устройства (СМО).
в
виде
многоканального
Перемещаемый ресурс моделируется в виде «склада» единиц ресурса, для
которого задан параметр (мощность) и внутренние переменные (остаток,
дефицит). К такому складу также моделируется очередь. Каждый очередной
трансакт «захватывает» потребное ему количество ресурса. После высвобождения
ресурсных единиц они возвращаются на склад.
Информационный
ресурс
–
это
сведения,
необходимые
для
функционирования модели в различные моменты времени. Эти ресурсы имеют две
разновидности
–
стартовый
информационный
ресурс
и
оперативный
информационный ресурс.
Стартовый информационный ресурс задается параметрами при описании
классов
модели.
Оперативный
ресурс
вырабатывается
во
время
функционирования модели.
В
системах
имитационного
моделирования
информационный
ресурс
моделируется специальной функцией посылки сигнала, который несет в себе
информацию.
Денежный ресурс – представляет собой «емкость», в которой содержится
определенное количество единиц ресурса, измеряемого числом с плавающей
точкой. Обычно эту емкость связывают со счетом банковского или бухгалтерского
учета. Для выполнения бухгалтерских проводок в модели должно быть описано
несколько классов, моделирующих отдельные бухгалтерские счета. Заявки на
выполнение проводок формируют очередь. Определенный класс модели играет
роль бухгалтера. Его задача взаимодействовать со счетами бухгалтерского учета,
определять приоритетность выполнения проводки и собственно осуществлять
проводки, пересылая ресурс с одного счета на другой. С примерами схем
управления материальными, информационными и денежными ресурсами можно
ознакомиться в [2] с. 71-79.
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Основные объекты модели фирмы с учетом ее
взаимодействий: с рынком, с банками, с бюджетом,
с поставщиками, с наемным трудом
Ссылка на файл ИмитМодПредприятия.pdf
Моделирование СМО с 1-м каналом
Постановка задачи
СМО представляет собой пункт приема платежей (за мобильные телефоны, за
коммунальные услуги и пр.). Сумма, предъявляемая клиентом к оплате, в общем
случае является случайной величиной, распределенной по неизвестному закону.
Будем считать, что это равномерно распределенная величина на отрезке (0,
Смакс).
Поток
посетителей
распределен
по
экспоненциальному
закону
с
интенсивностью λ. Реально поток нестационарный. В разное время разная
интенсивность посещения (утром бабушки и домохозяйки неработающие, вечером
работающие). Поэтому моделирование СМО надо проводить на ограниченном
интервале времени. Но для начала будем считать поток стационарным
пуассоновским. Ординарность и отсутствие последействия имеют место.
Будем сначала моделировать СМО с 1-м каналом и с отказами (т. е. посетитель
пришел и если кассир занят, то ушел). Эта ситуация нереальная. Может
наблюдаться в ограниченных видах СМО (например, игровые автоматы). Но с
точки зрения моделирования она имеет свои вопросы, требующие ответа. И
всегда при моделировании сначала рассматриваются предельные ситуации. Так, в
нашем случае, мы сначала создадим одну предельную ситуацию – СМО с
отказами, затем рассмотрим другую предельную ситуацию – СМО с бесконечной
очередью, и наконец перейдем к построению и исследованию модели СМО с
ограниченной очередью.
Таким образом, имеем следующие параметры системы:
λ = 1 – интенсивность потока посетителей;
μ = 1 – интенсивность (скорость) обслуживания;
Ток = 100 – время работы СМО (у.е. мод.времени).
Примечание.
Будем считать, что 1 у.е. мод.времени = 5 мин (у.е. – условная единица).
Сначала можно построить модель бесконечного процесса обслуживания. Такая
модель позволит определить установившиеся вероятности обслуживания клиента
и отказа клиенту.
Затем ввести конечное время работы системы и определить те же вероятности
для конечного процесса обслуживания и сравнить полученные результаты. Для
систем с конечным временем необходимо организовать повторные эксперименты и
накопление статистики.
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Сумма к оплате – равномерно распределенная случайная величина на
промежутке (0, С макс).
Примечание.
Вообще говоря, как правило, сумма к оплате имеет какой-то нижний порог.
Например, в реальной жизни в случае оплаты за мобильный телефон эта сумма с
большой вероятностью будет не менее 30–50 руб. Для проведения экспериментов
с моделью полезно иметь некоторые опытные данные.
В общем случае эта величина может быть распределена по другому закону.
Опытным путем можно измерить среднее и дисперсию для конкретной СМО.
Цели моделирования
Определить:
Сколько заявок поступит всего?
Сколько заявок будет обслужено?
Сколько отказов?
Каково время простоя канала обслуживания?
Процент простоя?
росбл – вероятность того, что посетитель будет обслужен.
ротк – вероятность того, что в обслуживании будет отказано.
Как изменяются эти результаты при изменении μ и λ?
Что можно сказать о результатах, если μ< λ, μ = λ?
Рассуждения









Если μ= λ = 1, это значит, что за 1 ед. мод. времени в среднем поступает 1
клиент и обслуживается 1 клиент. Тогда можно было бы сделать вывод, что за
смену поступит 100 клиентов и все 100 клиентов будут обслужены.
На самом деле ситуация сложнее. Клиент может прийти тогда, когда кассир
занят, и тогда клиент уходит.
Если μ> λ, то кассир потенциально выполняет работу быстрее, чем появляется
новый клиент (например, при λ=1, а μ = 1,2, т. е. обслуживает 1,2 клиента за 1
ед.мод. времени, т. е. потенциально может обслужить 120 клиентов), то кассир
быстрее освобождается и может перехватить больше клиентов.
Как подсчитать вероятность того, что клиент обслужен? Количество
обслуженных заявок разделить на общее количество поступивших заявок.
Разработка модели
СМО с 1-м каналом и отказами
Структура системы
Общая структурная схема СМО приведена на лекции 6. Каждый блок опишем
как отдельный класс. Поскольку очереди нет, то не будет класса Очередь, а класс
Отказ вводится только для учета отказов. Можно эту работу поручить Диспетчеру,
но мы смоделируем наиболее близко к описанной структуре (рис. 1).
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Взаимодействие блоков между собой на схеме показано связями. Связи
соединяют переменные специального вида, называемые входами и выходами. На
схеме мы видим связи между входами и выходами блоков. Для удобства
связанные входы и выходы имеют одинаковые идентификаторы.
Рис. 1. Структура системы
Формальное описание процесса
1. Генератор заявок – это узел, который имитирует поступление в систему
заявки (требования) на обслуживание. В генераторе вычисляются
интервалы времени, распределенные по показательному закону, через
которые поступают заявки в систему, а также сумма к оплате (в общем
случае можно считать, что это равномерно распределенная случайная
величина на некотором интервале). Эту сумму Генератор_заявок сообщает
Диспетчеру (посылает сигнал).
2. Диспетчер принимает сигнал от клиента о наличии заявки, проверяет,
свободен ли Узел обслуживания. Если Узел обслуживания свободен, то
передает (посылает сигнал) заявку на обслуживание, если занят, то
посылает заявку в блок Отказ. Диспетчер ведет учет поступивших,
обслуженных и отказанных заявок.
3. Узел обслуживания принимает сигнал о наличии заявки, генерирует
время обслуживания, распределенное по показательному закону. После
окончания времени обслуживания сообщает Диспетчеру, что он свободен.
4. Блок Отказ принимает сигнал от Диспетчера об отказе в обслуживании и
ведет учет отказанных заявок. Блок Отказ – это своего рода та же улица,
которая получает сигналы об отказе. Чем больше отказов, тем хуже молва
о заведении.
Имитация информационного потока в среде MVS. Понятие
сигнала
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Связь между классами Генератор_заявок и Диспетчер названа Заявка. В
данном случае появление клиента в СМО можно воспринимать как сообщение: «Я
хочу оплатить такую-то сумму». Это сообщение (информацию) воспринимает
Диспетчер и направляет заявку далее в систему.
Напоминание.
Мы уже рассматривали пример моделирования взаимодействия двух классов
(модель «Продукт-Ресурс», лекция 3). В этой модели мы рассматривали два
непрерывных процесса. В каждое мгновение вычислялось новое значение
выходной переменной, и оно немедленно передавалось в другой блок (класс) и
там использовалось для вычисления нового значения. Входы и выходы – это
специальные переменные, служащие для информационной связи между классами
и передачи информации. Если входы и выходы имеют числовой, матричный или
булевский тип, то значение передается каждое мгновение (каждый такт
модельного времени). Так если в качестве выхода и входа между блоками
Генератор и Диспетчер указать сумму заявки, то в реальной ситуации это
означает, что клиент вошел и каждое мгновение повторяет «Я хочу оплатить
такую-то сумму». При этом Диспетчер каждое мгновение будет воспринимать эту
информацию как новую заявку, хотя на самом деле это не так. При таком
описании связи между блоками может также возникнуть момент, когда Узел_обслуживания (кассир) обслужил заявку, а новая еще не сгенерирована, и в
такой ситуации кассир снова возьмет эту же заявку на обслуживание.
Однако в реальной жизни клиент однократно заявляет «Я хочу оплатить такуюто сумму» и затем больше не повторяет это. Его сигнал должен быть кем-то
услышан и воспринят.
Здесь мы приходим к новому понятию,
имитационного моделирования, – сигнал.
используемому
в
системах
Итак, сигнал – сообщение, несущее некоторую информацию. Сигнал
существует только одно мгновение и затем пропадает. То есть можно сказать, что
сигнал — это булевская переменная, которая на миг принимает значение ИСТИНА,
а затем снова становится ЛОЖЬ.
Именно так эта переменная трактуется в MVS.
Свойства сигнала
 Сигнал может быть только входом или выходом и не может быть внутренней
переменной.
 Сигнал – это булевская переменная, которая на миг принимает значение
ИСТИНА (в момент его посылки), а затем снова становится ЛОЖЬ.
 С сигналом может быть связан набор параметров, несущих дополнительную
информацию о произошедшем событии.
сигнала осуществляется из любой точки функционирования
класса.
 Передача
Моделирование сигналов в MVS
Синтаксис описания сигнала
Сигнал может быть только входом или выходом.
Имя_сигнала: signal (ФПар1; ФПар2;…):= false;
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Таким образом, при описании сигнала надо указать идентификатор сигнала
(Имя_сигнала), после двоеточия указать тип переменной ( signal ), и при
необходимости указать в скобках имена формальных параметров (ФПар1;
ФПар2;), передаваемых по сигналу. Имена формальных параметров описываются
только в сигнале. При посылке сигнала вместо них указываются фактические
параметры.
Пример описания сигнала Заявка
Заявка: signal ( СумОпл: double):= false;
Синтаксис посылки сигнала
send Имя_сигнала (Пер1;Пер2;…);
Сигнал посылается из любого места на карте поведения класса (на переходе, в
узле), определяемого логикой функционирования процесса. Для посылки сигнала
используется специальная функция send, после которой указывается имя сигнала
и в скобках фактические параметры, передаваемые по сигналу. Количество и тип
фактических параметров должны полностью соответствовать формальным
параметрам, описанным в сигнале.
Пример посылки сигнала Заявка
send Заявка (СумЗая);
Синтаксис приема сигнала
Для того чтобы посланный сигнал был воспринят другим классом, в нем должна
быть описана входная переменная типа сигнал с таким же количеством
формальных параметров, как и у выходного сигнала.
Имена сигналов и формальных параметров могут быть разные, главное, чтобы
описания совпадали.
Кроме этого должны быть описаны внутренние переменные, которым будут
присвоены значения передаваемых из сигнала параметров.
Сигнал запускает новое событие в поведении класса, поэтому сигнал может
быть принят только на переходе в виде условия перехода:
When Имя_сигнала
Параметры, передаваемые по сигналу, должны использоваться только на этом
переходе. Поэтому в действиях описываются операторы присваивания следующим
образом:
Р1:=Имя_сигнала.Пер1
Аналогично описываются сигналы между другими классами системы.
Контроль правильности работы модели
Для контроля правильности работы модели можно предусмотреть операторы,
которые ведут двойной учет некоторых переменных модели:
 в
классах Генератор
поступивших заявок;
и
Диспетчер
независимо
подсчитывать
сумму
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
 в
классах Узел_Обслуживания и Диспетчер независимо подсчитывать
количество обслуженных клиентов и итоговые суммы, принятые к оплате;
 в классах Отказ и Диспетчер считают сумму отказанных заявок.
Управление очередью в СМО
Рассмотрим, какие изменения надо провести в модели СМО, чтобы учесть
наличие очереди из заявок.
Добавляем в структуру системы блок (класс) Очередь (рис. 2).
Рис. 2. Структура СМО с очередью
Диспетчер теперь, получив заявку от Генератора, должен проверить наличие
свободных мест в очереди, и если таковые имеются, то поставить заявку в
очередь, т. е. передать в Очередь сигнал с параметрами заявки. Заявка поступает
в очередь и должна там находиться, пока не освободится канал обслуживания.
Следовательно, должна быть введена некая структура данных для хранения
заявок. В среде MVS накопитель заявок можно описать в виде матрицы. Если надо
хранить только сумму заявки, то матрица будет иметь только 1 столбец, а если
есть некий набор услуг, или надо хранить несколько параметров, связанных с
заявкой, то матрица будет иметь большее количество столбцов.
Как смоделировать бесконечную очередь?
В СМО очередь всегда ограниченная.
Причины этого:
 ограниченное время работы СМО;
 ограниченное пространство, где ожидают заявки;
 ограниченное терпение у клиентов и пр.
Поэтому модель с условно бесконечной очередью строят для того, чтобы
представлять, какое максимальное количество клиентов может скопиться в
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
очереди при заданной загруженности системы, какое среднее количество заявок в
очереди, как долго поступившая заявка находится в очереди и пр.
Что значит бесконечная очередь?
Будем считать, что имеет место бесконечная очередь, если ни одна заявка,
поступившая в систему, не ушла в отказ, т. е. система работает без отказов. Как
смоделировать конкретную ситуацию?
Например, если интенсивность поступления заявок λ = 1, а время работы СМО
составляет 100 ед.врем., то за время функционирования системы может поступить
около 100 заявок. Для такой системы очередь длиной 100 клиентов уже можно
считать бесконечной. Если же мы рассматриваем непрерывно работающую
систему (магазин 24 часа), то можно задать и больше размер длины очереди,
однако надо себе представлять, реально может ли скопиться в очереди
одновременно 100 покупателей? Очередь характеризуется параметром Длина
очереди, который обозначает максимально возможное количество заявок в
очереди, а также переменной, в которой учитывается текущая длина очереди.
Для моделирования бесконечной очереди надо задать большое значение
параметра Длина очереди и матрицу большого размера для учета всех
поступивших в систему заявок. Размер матрицы и значение параметра Длина
очереди зависит от конкретной задачи. Эти значения должны обеспечить такое
функционирование модели, чтобы ни одна заявка не ушла в отказ.
Вообще модель с бесконечной очередью является промежуточной моделью и
строится для того, чтобы определить, успевают ли каналы обслуживания
обслуживать поток заявок и таким образом принимать решения об увеличении
каналов обслуживания.
Модель Очереди в текущий момент времени
Зададим в описании класса матрицу размером M х 2 для учета поступивших
заявок. В первом столбце матрицы будем сохранять суммы заявок, а во втором
столбце будем указывать признак обслуженной заявки (1). Первоначально все
элементы матрицы равны 0.
На схеме представлена модель матрицы в некоторый текущий момент времени.
В матрице есть некоторое количество элементов, обозначающих уже обслуженные
заявки (красные), например, от 1 до i, некоторое количество элементов,
обозначающее заявки, стоящие в очереди, например, от i+1 до k, и, наконец, есть
свободные элементы матрицы для будущих заявок от k +1 до M.
При построении модели надо ввести два счетчика:
К пост – счетчик поступивших заявок. Текущее значение этой переменной будет
равно индексу строки матрицы, куда была помещена очередная заявка,
поставленная в очередь (k);
К обслуж – счетчик обслуженных заявок. В текущий момент значение счетчика
равно индексу строки, в которой находится последняя обслуженная заявка.
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Рис. 3
Изменения в функционировании системы
Модель СМО с очередью строится на основе модели без очереди. Для этого
надо внести изменения в описание класса Диспетчер и создать класс Очередь,
внести изменения в связи между классами системы.
Диспетчер
 Принимает заявку от Генератора;
 Если в очереди есть места, направляет заявку в очередь, в противном
случае направляет заявку в отказ.
Наличие мест в очереди контролируется наличием входной переменной
булевского типа НетМест (индикатор занятости очереди), которая связана с
соответствующим выходом класса Очередь.
Очередь
 принимает заявку от Диспетчера и записывает ее в матрицу заявок на
следующую свободную позицию;
значение текущей длины очереди и вычисляет значение
индикатора занятости очереди;
 если от Узла обслуживания поступает сигнал об освобождении, то посылает
очередную заявку на обслуживание и вычисляет новое значение счетчика
обслуженных заявок. При этом необходимо контролировать, что бы в
данный момент очередь была не пуста.
Класс Генератор заявок и Узел обслуживания функционируют без изменений.
 изменяет
Какие критерии СМО интересуют в этой задаче:
 Общее количество поступивших заявок.
 Количество обслуженных заявок (вероятность обслуживания заявки).
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
 Количество не обслуженных заявок к концу рабочего дня (вероятность
отказа заявки).
 Среднее количество заявок в очереди.
 Среднее время ожидания заявки в очереди.
Завершение работы СМО с бесконечной очередью заключается в том, что когда
прозвенел звонок закрытия СМО, в очереди скопится какое-то количество заявок.
Управление обслуживанием
СМО с двумя каналами обслуживания и очередью
При моделировании
обслуживания.
такой
системы
изменения
коснутся
Описание поведения блока Узел_обслуживания
Вопрос: Сколько можно выделить состояний в классе?
Ответ: 4, не считая узла Init, который оставим пустым.
Номер
узла
Описание состояния
Init
Начальный узел
1
Свободны оба
2
Занят 1-й
3
Оба заняты
4
Занят 2-й
Вопрос: Какие возможны переходы между этими состояниями?
Ответ:
Из
Из
Из
Из
Итого




Свободны оба в Занят 1-й или в Занят 2-й.
Занят 1-й в Свободны оба или в Оба заняты.
Оба заняты в Занят 1-й или в Занят 2-й.
Занят 2-й в Занят 1-й или в Свободны.
8 переходов (рис. 4).
только
Узла
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Рис. 4. Карта поведения узла обслуживания с двумя каналами
Вопрос: в СМО с одним каналом обслуживания заявка поступала только, когда
узел находился в состоянии свободен. В СМО с двумя каналами в какой момент
может поступить очередная заявка? На каких переходах?
Ответ: 1, 2, 3, 4.
Вопрос: При таком описании условия перехода среда MVS выдаст сообщение,
что в узле Свободны готовы к срабатыванию более одного перехода. Как
конкретизировать, куда надо перейти? Какие можно предложить сценарии?
Вариант 1. Только к первому (убрать переход 2). Где в жизни возможен такой
сценарий?
Вариант 2. К тому, кто раньше освободился (маршрутные такси приезжают на
кольцо и становятся в очередь). Этот вариант справедливее и имеет большее
применение.
Ответ: Предпочтительнее вариант 2.
Вопрос: Как реализовать (формализовать) этот вариант?
Ответ: ввести переменную (индикатор последнего освободившегося узла),
которая будет принимать значение на переходе 7, равное 1, на переходе 8,
равное 2.
Вопрос: Как выглядит уточненное условие перехода, например, по переходу
1?
Ответ: когда поступил сигнал Обслужить и Индикатор равен 2.
Понятие «Охраняющее условие»
Таким образом, для перехода в состояние 1, надо чтобы одновременно
выполнились 2 условия – поступил сигнал и значение индикатора равно 2. Но в
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
среде MVS при описании условия перехода можно установить один из трех
вариантов:
 when <условие>;
 when <сигнал>;
 after <время>.
А в данном случае надо одновременно проверять <условие> и <сигнал>.
Рис. 5. Охраняющее условие
Для этого в среде MVS надо:
1. Установить запускающее событие when <сигнал>.
2. Включить флажок Охраняющее условие.
3. В поле Логическое выражение ввести условие.
Условие перехода с сигналом и охраняющим условием будет иметь вид:
when Обслужить guard Инд=2
Вопрос: когда канал обслуживания освобождается, он посылает сигнал
Свободен. На каких переходах следует посылать такой сигнал?
Ответ: на 5,6,7,8.
Вопрос: считаем (как и раньше), что поток обслуживания заявок простейший
со скоростью (интенсивностью)?, одинаковой для обоих каналов. На каких
переходах надо генерировать случайный интервал времени обслуживания
заявки?
Ответ: 1, 2, 3, 4.
Вопрос: будем считать, что Т1 – это время обслуживания заявки 1-м каналом,
Т2 – это время обслуживания заявки 2-м каналом. На каких переходах
генерируется Т1? На каких – Т2?
Ответ: Т1 на переходах 1 и 4. Т2 на переходах 2 и 3.
Вопрос: обсудим переход 3 из состояния Занят 1-й в состояние Оба заняты.
Переход осуществляется по сигналу Обслужить, мы это уже выяснили. В этот
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
момент обслуживание заявки 1-м каналом еще не закончилось, поэтому
генерируется время обслуживания новой заявки 2-м каналом, который в это
время свободен. А как учесть, сколько времени осталось до конца обслуживания
заявки 1-м каналом?
Ответ: это очень важный и тонкий момент. Надо различать полное время
обслуживания заявки и время, которое осталось до конца обслуживания заявки.
На переходе 1 генерируем случайную величину Т1 –время обслуживания
поступившей заявки.
На переходе 3, когда поступила новая заявка, генерируем случайную величину
Т2 – время обслуживания поступившей заявки 2-м каналом.
Вопрос: А чему будет равно время, оставшееся до конца обслуживания заявки
1-м каналом?
Ответ: Т1– LocalTime. Таким образом, на переходе надо с помощью оператора
присваивания вычислить новое значение переменной Т1 := Т1– LocalTime.
Вопрос: когда узел оказался в состоянии Оба_заняты, у нас есть два
интервала времени Т1 и Т2и включился локальный таймер нахождения в этом
узле. Как обеспечить Переход из этого состояния в состояние Занят 1-й или Занят
2-й? В реальной ситуации мы не знаем, какое значение больше, какое меньше. А
надо ли нам это знать?
Ответ: В состояние Занят 1-й – after Т2, в состояние Занят 2-й – after Т1.
Приложение. Некоторые аналитические результаты
для СМО
Пусть:
λ – интенсивность поступления заявок в систему;
μ – скорость обслуживания.
СМО с 1-м каналом обслуживания и отказами
Пусть:
– коэффициент использования СМО.
Для установившегося процесса :
– финальная вероятность того, что заявка будет обслужена;
– финальная вероятность того, что в обслуживании будет отказано.
СМО с 1-м каналом обслуживания и очередью
МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ
INTERNATIONAL BANKING INSTITUTE
Пусть:
N – длина очереди, т. е. максимально возможное количество заявок, которые
могут находиться в очереди;
p
0
– финальная вероятность того, что система не занята;
p
n
– финальная вероятность того, что в очереди находится n заявок.
Выполнение условия
не обязательно.
– вероятность отказа в обслуживании заявки.
СМО с N каналами обслуживания и отказами
Пусть:
N – количество каналов СМО;
p0 – финальная вероятность нахождения СМО в начальном состоянии, когда
все каналы свободны.
Для установившегося процесса:
– вероятность, что занят один канал обслуживания;
– вероятность, что заняты два канала обслуживания;
и т. д.
– вероятность отказа в обслуживании.
Download