Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
§ 29. Структура алгоритма, моделирующего процесс обслуживания заявокЗадача настоящего параграфа — дать представление о структуре алгоритмов, моделирующих процесс функционирования систем массового обслуживания. Рассматриваемые алгоритмы будем изображать с помощью укрупненных логических блок - схем. Каждый блок (оператор) представляет собой по сути дела подалгоритм, реализующий в процессе моделирования определенную, как правило, достаточно сложную операцию. (см. скан) Рис. 11. Блок - схема алгоритма, моделирующего процесс обслуживания заявок. Логические операторы изображаются, кружками. Если условие, проверяемое данным логическим оператором, выполнено, стрелка, обозначающая передачу управления, снабжается знаком единица, в противном случае — знаком нуль. Рассмотрим однофазную систему массового обслуживания, имеющую Будем считать, что в силу недостаточно высокой надежности системы линии, обслуживающие заявку, могут выходить из строя. Тогда заявка получает отказ, а линия может быть отремонтирована и через промежуток времени трем введена в строй. На рис. 11 изображена укрупненная блок - схема алгоритма, моделирующего процесс обслуживания заявок описанной выше системой. Для исследования качества обслуживания с помощью такого алгоритма предусматривается М-кратное моделирование процесса функционирования системы при обслуживании реализаций потока заявок в интервале времени На блок - схеме (рис. 11) изображены следующие операторы: 1 — оператор определения момента 2 — оператор проверки принадлежности очередной заявки текущей реализации потока; 3 — оператор определения времени занятости 4 — оператор формирования и фиксации новых значений моментов освобождения 5 — оператор проверки наличия свободных линий в заданный момент времени; 6 — оператор проверки условия 7 — оператор составления табеля свободных линий, содержащего исходные данные для реализации заданного правила назначения обслуживающей линии; 8 — оператор выбора одной из свободных линий для обслуживания данной заявки (в соответствии с заданным правилом); 9 — оператор проверки факта срыва обслуживания по причине неполной надежности линий. Если обслуживание. срывается, вырабатывается признак 10 - оператор определения времени, необходимого на ремонт линии, вышедшей из строя; 11 — оператор, подсчитывающий количество отказов; 12 — оператор подготовки алгоритма к моделированию процесса обслуживания новой заявки; 13 — оператор проверки условия, состоящего в том, что количество обследованных реализаций потока менее заданного; 14 — оператор подготовки алгоритма к моделированию процесса обслуживания новой реализации потока заявок; 15 — оператор, подсчитывающий количество обследованных реализаций; 16 — оператор обработки результатов моделирования; 17 — оператор формирования величин, выдаваемых в качестве результатов решения задачи; 18 — оператор определения момента потери заявки, не принятой к обслуживанию в момент поступления; 19 — оператор проверки возможности обслужить заявку, заставшую в момент поступления все линии занятыми; 20 — оператор проверки условия 21 — оператор составления табеля линий, которые могут обслужить данную заявку. Работа рассматриваемого алгоритма состоит в следующем. Оператор 1 вырабатывает моменты поступления Если условие, проверяемое оператором 2, оказывается выполненным, проводится моделирование процесса обслуживания заявки (передача управления по стрелке с индексом 1 к оператору 3). В противном случае от оператора 2 по стрелке с индексом 0 управление передается оператору 13 для перехода к очередной реализации потока (оператор 14) или окончанию моделирования (оператор 16). В случае передачи управления к оператору 3 проводится подготовка исходных данных для моделирования процесса обслуживания заявки. Необходимыми исходными данными здесь являются моменты освобождения линий Полученное оператором 3 значение Проверка возможности обслужить поступившую заявку начинается работой оператора 5. Значение момента поступления заявки всех линий, и таким образом выявляются свободные линии. Если свободные линии имеются Проследим сначала первое направление. Итак, свободные линии имеются. Оператор 6 проверяет условие Принципы, на которых основываются эти правила, мы кратко рассматривали выше. В дальнейшем о работе оператора 8 будет сказано подробнее. Для реализации упомянутых правил оператору 8 необходимы некоторые признаки или параметры, характеризующие каждую, из свободных линий. Эти признаки и параметры подготавливаются и сводятся в «табель свободных линий» оператором 7. Таким образом, для обслуживания данной заявки будет выделена определенная линия. Далее, управле ние работой алгоритма передается оператору 9, который проверяет, имел ли место срыв обслуживания по при чине возможного выхода из строя линии в процессе обслуживания "из-за ее недостаточной надежности. Предположим, что в период обслуживания линия вышла из строя и обслуживание заявки было сорвано. При рассмотрении настоящей задачи относительно судьбы заявки, обслуживаемой неисправной линией, сделаем предположение, что такая заявка получает отказ. Поэтому от оператора 9 по стрелке с индексом 1 переходим к оператору 10, а затем к оператору 11, который регистрирует отказ. Оператор 10 определяет время ремонта лись выше. После регистрации отказа история данной заявки исчерпывается и поэтому управление передается оператору 12, который обеспечивает переход к очередной заявке потока. Возвратимся теперь к оператору 9. Если условие, проверяемое оператором 9, оказывается невыполненным, значит, линия в процессе обслуживания из строя не выходит. Этот факт в рассматриваемых условиях дает гарантию того, что заявка будет обслужена. На этом история данной заявки также заканчивается, и управление передается оператору 12. От оператора 12 управление передается оператору 1 для работы с очередной заявкой. Таким образом, мы рассмотрели работу алгоритма в случае, если в момент Предположим теперь, что условие, проверяемое оператором 5, не выполнено. Тогда управление передается по направлению стрелки, отмеченной индексом 0, к оператору 18. Задача этого оператора — определить момент времени Если условие В случае, если условие Далее управление передается оператору 8, и работа алгоритма до оператора 12 включительно протекает путем, описанным выше. Оператор 13 сравнивает число обследованных реализаций На этом мы закончим общее описание работы моделирующего алгоритма. Познакомимся несколько болег подробно с особенностями работы некоторых операторов. Рассмотрим операторы 7 и 8. Предположим сначала, что линии для обслуживания выбираются оператором 8 в случайном порядке. Тогда оператор 8 реализует выбор по жребию одного из Пусть теперь оператор 8 выбирает линии для обслуживания в порядке очереди. В этом случае задача оператора 7 заключается в подготовке (выборке из специальных ячеек памяти) величин Наконец, если линии для обслуживания выбираются в порядке величин их номеров, операторы 7 и 8 могут в алгоритме отсутствовать. В самом деле, поскольку оператор 5 проводит сравнение Обратимся теперь к оператору 9. Предположим, что надежность линий характеризуется вероятностью безотказной работы
В соответствии с (8.58) выбираются возможные значения времени безотказной работы 7, и таким образом вычисляется момент выхода из строя каждой линии Аналогично, располагая временем занятости линии, вы рабатываемым оператором 3, можно определить момент окончания обслуживания Условием срыва обслуживания является
Если неравенство (8.59) выполнено, вырабатывается значение признака В связи с работой оператора 9 рассмотрим модификации алгоритма при различных предположениях о судьбе заявок, для обслуживания которых выделены неисправные линии. Алгоритм, который мы обсуждали выше, исходит из предположения, состоящего в том, что заявка, для обслуживания которой выделена неисправная линия, получает отказ. Предположим теперь, что заявка, для обслуживания которой выделена неисправная линия, остается в системе как претендент на обслуживание в порядке очереди. В этом случае может быть использована следующая модификация алгоритма, представленного на рис. 11. Допустим, что условие, проверяемое оператором 9, выполнено, т. е. линия оказывается неисправной. Необходимо проследить как историю неисправной линии, так и историю заявки. От оператора 9 по направлению стрелки с индексом 1 управление необходимо передать оператору 10 для определения времени ремонта линии, а затем — оператору 4 для вычисления и фиксации
Если условие (8.60) не выполнено, сравниваемое значение Более сложной логики работы алгоритма требует случай, коэда заявка, для обслуживания которой выделена неисправная линия, остается в системе как претендент на обслуживание вне очереди. Пусть момент выхода из строя, как и ранее, обозначается Предположим теперь, что условие (8.60) оказалось невыполненным. Тогда, зафиксировав Перейдем теперь к рассмотрению различных принципов выбора заявок для обслуживания. Алгоритм, блок - схема которого изображена на рис. 11, исходит из предположения о том, что заявки выбираются для обслуживания в порядке очереди. Предположим, что имеет место случайный порядок выбора заявок для обслуживания. Если поступающие заявки застают свободные линии (условие, проверяемое оператором 5, оказывается выполненным), то очередь заявок не образуется и моделирующий алгоритм ничем не отличается от рассмотренного выше. В случае, когда свободных линий нет, появляется возможность образования очереди. Тогда моделирование процесса обслуживания можно провести в соответствии со следующей схемой: Предположим, что в момент Если в очереди находится только одна заявка, она и выбирается для обслуживания рассматриваемой линией. В противном случае требуется выбор заявки по жребию в соответствии с вероятностями Перейдем к рассмотрению случая, когда заявки выбираются для обслуживания по минимальному времени, остающемуся до получения отказа. При таком порядке обслуживания заявок алгоритм (по сравнению с предыдущим случаем) остается почти неизменным. А именно, необходимо исключить расчет вероятностей По-видимому, сказанного достаточно для того, чтобы в общих чертах представить себе структуру алгоритма, моделирующего процесс обслуживания заявок однофазной системой. Естественно, что моделирующие алгоритмы для многофазных систем могут быть построены аналогичным образом. При этом обслуживающие агрегаты, относящиеся к различным фазам, либо моделируются отделы ными подалгоритмами, если схемы обслуживания на различных фазах имеют значительную специфику, либо для моделирования работы нескольких агрегатов используются одни и те же подалгоритмы с соответствующей их настройкой при переходе к следующей фазе. При решении сложных задач обычно оказывается удобным строить комбинированные алгоритмы, использующие как тот, так и другой путь. Сделаем несколько замечаний относительно обработки результатов моделирования. Рассмотрим для определенности случай моделирования процесса обслуживания, для которого логическая схема алгоритма имеет вид, представленный на рис. И. В качестве результатов моделирования мы получаем показания счетчиков отказов (оператор И). Обычно, кроме суммарного числа отказов
Аналогично, вероятность отказа по причине занятости линий может быть оценена как
а вероятность отказа по причине недостаточной надежности
Для того чтобы величина линий из строя. Сюда также должны включаться те из случаев отказов по причине занятости линий, которые могли бы не иметь места, если бы Если входной поток не является стационарным или если по другим причинам нельзя воспользоваться оценками вида (8.61), пригодными для эргодических случаев, необходимо вести учет отказов по реализации потока заявок. Пусть
Аналогично могут быть получены оценки для вероятностей
В некоторых случаях в качестве результатов моделирования приходится фиксировать величины, позволяющие вычислить оценки для вероятностных характеристик времени ожидания заявки в системе обслуживания или длины очереди. В заключение настоящего параграфа обратим внимание на вопрос о назначении необходимого количества испытаний. Поскольку величины, определяемые методом моделирования, являются оценками для соответствующих вероятностей На практике часто из различных соображений могут быть сделаны предположения о характере закона распределения выходного потока заявок (например, потока необслуженных заявок). В таких случаях по результатам моделирования необходимо оценивать только параметры закона распределения, а остальные показатели качества обслуживания вычисляются с использованием оценок для параметров.
|
1 |
Оглавление
|