МИМЭП_Mathcad. А. А. Мицель математическое и имитационное
Скачать 5.84 Mb.
|
10.5. Варианты заданий лабораторной работы №10 Вариант 1 122 Цена одной акции в ( n — 1)-й день Цена одной акции в n - й день Возрастает Остается без изменения Падает Возросла по сравнению с ( n — 2)-м днем 1 2 1 4 1 4 Осталась такой же, как и в ( n — 2)-й день 1 4 1 2 1 4 Упала по сравнению с ( n — 2) - м днем 1 4 1 4 1 2 Вариант 2 Цена одной акции в ( n — 1)-й день Цена одной акции в n - й день Возрастает Остается без изменения Падает Возросла по сравнению с ( n — 2)-м днем 1 4 1 2 1 4 Осталась такой же, как и в ( n — 2)-й день 1 4 1 4 1 2 Упала по сравнению с ( n — 2) - м днем 1 2 1 4 1 4 Вариант 3 Цена одной акции в ( n — 1)-й день Цена одной акции в n - й день Возрастает Остается без изменения Падает Возросла по сравнению с ( n — 2)-м днем 1 3 1 3 1 3 Осталась такой же, как и в ( n — 2)-й день 1 3 1 3 1 3 Упала по сравнению с ( n — 2) - м днем 1 3 1 3 1 3 Примечание. Для варианта 3 необходимо рассматривать три несовместных события 1 A , 2 A , 3 A и с учетом этого строить таблицу 2. Вариант 4 Цена одной акции в ( n — 1)-й день Цена одной акции в n - й день Возрастает Остается без изменения Падает 123 Возросла по сравнению с ( n — 2)-м днем 1 2 1 5 3 10 Осталась такой же, как и в ( n — 2)-й день 3 10 1 5 1 2 Упала по сравнению с ( n — 2) - м днем 1 5 3 10 1 2 Вариант 5 Цена одной акции в ( n — 1)-й день Цена одной акции в n - й день Возрастает Остается без изменения Падает Возросла по сравнению с ( n — 2)-м днем 1 4 1 4 1 2 Осталась такой же, как и в ( n — 2)-й день 1 4 1 2 1 4 Упала по сравнению с ( n — 2) - м днем 1 4 1 4 1 2 Вариант 6 Цена одной акции в ( n — 1)-й день Цена одной акции в n - й день Возрастает Остается без изменения Падает Возросла по сравнению с ( n — 2)-м днем 1 4 1 4 1 2 Осталась такой же, как и в ( n — 2)-й день 1 4 1 2 1 4 Упала по сравнению с ( n — 2) - м днем 1 4 1 2 1 4 Вариант 7 Цена одной акции в ( n — 1)-й день Цена одной акции в n - й день Возрастает Остается без изменения Падает Возросла по сравнению с ( n — 2)-м днем 1 4 1 4 1 2 124 Осталась такой же, как и в ( n — 2)-й день 1 4 1 4 1 2 Упала по сравнению с ( n — 2) - м днем 1 4 1 2 1 4 Вариант 8 Цена одной акции в ( n — 1)-й день Цена одной акции в n - й день Возрастает Остается без изменения Падает Возросла по сравнению с ( n — 2)-м днем 1 4 1 2 1 4 Осталась такой же, как и в ( n — 2)-й день 1 4 1 4 1 2 Упала по сравнению с ( n — 2) - м днем 1 4 1 2 1 4 125 11. Лабораторная работа № 11. Способы построения моделирующих алгоритмов систем массового обслуживания Существуют следующие способы (или принципы) построения моделирующих алгоритмов: способ повременного моделирования неперекрывающихся заявок; способ последовательной проводки перекрывающихся заявок без приоритета; способ последовательной проводки перекрывающихся заявок с приоритетом В первом методе осуществляется пошаговый способ продвижения модельного времени, во втором и третьем – пособытийный. 11.1. Поток неперекрывающихся заявок Процесс функционирования системы можно рассматривать как последовательную смену ее состояний. Пусть, например, в одноканальной системе массового обслуживания происходит процесс обслуживания поступающих заявок (рис. 1). Рис. 11.1. Моделирование способом T Введем следующие обозначения: 1 - момент начала обслуживания 1-й заявки; 2 - момент конца обслуживания 1-й заявки; 3 - момент начала обслуживания 2-й заявки; 4 - момент конца обслуживания 2-й заявки; 5 - момент начала обслуживания 3-й заявки; 6 - момент конца обслуживания 3-й заявки; 7 — момент начала обслуживания 4-й заявки; 8 - момент конца обслуживания 4-й заявки. Выберем шаг T и будем анализировать состояние системы через промежутки времени 1 2 3 , , ,..., t t t отстоящие друг от друга на T . Этот способ иногда называют способом T В момент 1 t будет обнаружено, что в системе началось обслуживание 1-й заявки. В момент 2 1 t t T будет установлено, что обслуживание 1 -и заявки завершено. 126 В момент 3 2 t t T будет обнаружено, что в системе началось обслуживание 2-й заявки. В момент 4 3 t t T будет установлено, что обслуживание 2-й заявки завершено. В момент 5 4 t t T будет обнаружено, что в системе началось обслуживание 3-й заявки. В момент 6 5 t t T будет установлено, что обслуживание 3-й заявки завершено. Факт поступления 4-й заявки и факт окончания ее обслуживания не будут обнаружены. Для предотвращения потерь информации и повышения точности работы модели нужно уменьшить шаг T . При малом T можно достаточно точно описать процесс функционирования системы. 11.2. Поток перекрывающихся заявок При моделировании процессов обслуживания заявок в системах массового обслуживания иногда удобно строить моделирующий алгоритм по способу последовательной проводки заявок. Этот способ может быть осуществлен, если события, происходящие в системе, не зависят друг от друга. Моделирующий алгоритм последовательно воспроизводит истории отдельных заявок в порядке их поступления в систему. Алгоритм обращается к сведениям о других заявках лишь в том случае, если это необходимо для решения вопроса о дальнейшем порядке обслуживания данной заявки. Существуют две разновидности способа последовательной проводки: проводка заявок без приоритета; проводка заявок с приоритетом. 11.2.1. Проводка заявок без приоритета Рассмотрим вначале первый вариант. Пусть, например, в одноканальную систему массового обслуживания в одной случайной реализации процесса поступили четыре однородные заявки (с одинаковым приоритетом), как показано на рис. 11.2. Рис. 11.2. Последовательная проводка заявок В случайный момент времени 1 t в систему поступила 1-я заявка. Поскольку канал свободен, ее обслуживание начинается в момент времени 1 1 н t t . Если распределение времени обслуживания известно, то с помощью ДСЧ можно 127 определить случайную величину времени обслуживания 1 . Тогда момент окончания обслуживания 1-й заявки будет равен: 1 1 1 к н t t . При этом к счетчику числа обслуженных заявок прибавляется единица Далее определяется время поступления 2-й заявки. Если распределение случайной величины времени между соседними заявками известно, то с помощью ДСЧ можно определить интервал между 1-й и 2-й заявками и найти момент времени поступления 2-й заявки 2 t . Поскольку канал занят, для 2-й заявки начинается период ожидания продолжительностью 1 1 ож к н T t t Обслуживание этой заявки начинается в момент 2 1 н к t t . Далее с помощью ДСЧ определяется случайная величина времени обслуживания 2-й заявки 2 Тогда момент окончания обслуживания 2-й заявки будет равен: 2 2 2 к н t t К счетчику числа обслуженных заявок прибавляется единица. Аналогичным образом обслуживаются 3-я и 4-я заявки. 11.2.2. Проводка заявок с приоритетом Рассмотрим систему, предназначенную для обслуживания заявок двух различных приоритетов. Сделаем следующие допущения: все заявки независимы; при обслуживании используется абсолютный приоритет, т. е. поступающая заявка высшего приоритета немедленно вытесняет обслуживаемую заявку низшего приоритета; после освобождения канала может производиться «дообслу- живание» той заявки второго приоритета, которая была вытеснена заявкой первого приоритета. При этих допущениях для построения моделирующего алгоритма может быть применен усовершенствованный способ последовательной проводки, который можно назвать способом поэтапной последовательной проводки. Рассмотрим пример использования этого способа. Пусть в канал системы обслуживания поступают два потока заявок: первого (высшего) приоритета и второго (низшего) приоритета. Первый этап моделирования Распределение случайных величин интервалов между соседними заявками первого приоритета будем считать известным (например, показательным). Если задать интенсивность потока, то с помощью датчика случайных чисел можно определить случайные моменты поступления заявок 1.1 1.2 1.3 , , T T T и т. д. Распределение случайного времени обслуживания будем также считать извест- ным (например, показательным). Если задать среднее время обслуживания, то с помощью датчика случайных чисел можно заранее определить случайные интервалы обслуживания (рис. 11.3). 128 Рис. 11.3.Поэтапная последовательная проводка заявок Установим модельное время на нуль. Будем рассматривать изолированный поток заявок первого приоритета так, как будто заявок второго приоритета не существует. Применив способ последовательной проводки, можно установить моменты начала и окончания обслуживания заявок первого приоритета. Иначе говоря, в результате выполнения первого этапа моделирования можно определить значения элементов массива 1,1 1,2 1,3 { , , ,...} н н н T T T и элементов массива 1,1 1,2 1,3 { , , ,...} к к к T T T Можно также подсчитать число обслуженных заявок до конца периода обслуживания кон T В данном случае заявки 1.1 и 1.3 обслуживаются сразу после их поступления, а заявка 1.2 обслуживается после некоторого ожидания, связанного с занятостью канала. Второй этап моделирования Вновь установим модельное время на нуль. Начинается этап моделирования процесса обслуживания заявок второго приоритета в условиях, что на временной оси располагаются уже обслуженные заявки первого приоритета. Следовательно, заявки второго приоритета могут занимать только свободные промежутки времени. Распределение времени между соседними заявками будем считать известным. Тогда с помощью жребия можно определить возможные значения случайных величин времени поступления заявок. Распределение времени обслуживания также будем считать известным. Тогда с помощью жребия можно определить планируемые интервалы времени обслуживания. Заявка 2.1 поступает в момент, когда канал занят обслуживанием заявки 1.2. Затем канал освобождается и начинается обслуживание заявки 2.1. Однако, 129 поступившая заявка первого приоритета 1.3 вытесняет заявку 2.1. Только после освобождения канала происходит процесс «дообслуживания» заявки 2.1. Заявка 2.2 также некоторое время ожидает начала обслуживания, а затем обслуживается до конца. Для заявки 2.3 не хватает времени, так как наступает конец периода обслуживания. Рассмотрим теперь, как формализуется процесс обслуживания заявок второго приоритета в присутствии заявок первого приоритета. При взаимодействии заявок двух различных приоритетов могут возникнуть три возможные ситуации. Рис. 11.4. Схемы вариантов 1-ой ситуации: а – первый вариант; б – второй вариант Ситуация 1. Ни одна из имеющихся 1 z N - заявок первого приоритета не препятствует обслуживанию заявки второго приоритета. Два возможных варианта этой ситуации иллюстрируются схемой, показанной на рис. 4. Здесь (1) нi T – фактическое время начала обслуживания i - й заявки первого приоритета; (1) кi T – фактическое время окончания обслуживания i - и заявки первого приоритета; (2) нj T – первоначально намеченное время начала обслуживания j - й заявки второго приоритета (без учета возможности поступления заявки первого приоритета); (2) кj T – первоначально намеченное время окончания процесса обслуживания j - й заявки второго приоритета (без учета возможности поступления заявки первого приоритета). Логическое условие, при котором создается 1-й или 2-й вариант 1-й ситуации, записывается так: { (2) (1)} { (1) (2)} кj нi кi нj T T OR T T (11.1) 130 Если для j - й заявки второго приоритета условие (1) выполняется по отношению ко всем заявкам первого приоритета ( 1 1,..., z i N ), то j – я заявка может быть обслужена. Ей может помешать только другая заявка 2-го приоритета, принятая ранее к обслуживанию. Ситуация 2. Система приняла к обслуживанию заявку второго приоритета, и она начала обслуживаться. Однако до истечения расчетного времени окончания обслуживания поступила заявка первого приоритета, которая вытесняет данную заявку второго приоритета. Два возможных варианта этой ситуации иллю- стрируются схемой, показанной на рис. 11.5. Рис. 11.5. Схемы вариантов 2-ой ситуации: а – первый вариант; б – второй вариант Логическое условие, при котором создается любой из вариантов 2-й ситуации, записывается так: { (2) (1)} { (1) (2)} нj нi нi кj T T AND T T (11.2) Если условие (2) выполняется хотя бы для какой-либо пары значений переменных (2) нj T и (1) кi T при изменении i от 1 до 1 z N , то продолжение процесса обслуживания заявки второго приоритета откладывается до момента освобождения канала. После этого рассматривается возможность «дообслуживания» заявки. С этой целью производится корректировка времени начала и окончания обслуживания заявки по формулам: (2) нj к fix T T ; (2) [ (2) ] кj к fix кj н fix T T T T , где н fix T – фиксированное время начала обслуживания заявки первого приоритета, для которой выполняется условие (2); к fix T – фиксированное время окончания обслуживания заявки первого приоритета, для которой выполняется условие (2). 131 После этого вновь рассматривается возникшая ситуация. Ситуация 3. Заявка второго приоритета поступила в период обслуживания заявки первого приоритета. Следовательно, заявка второго приоритета не может быть принята к обслуживанию. Два возможных варианта этой ситуации иллюстрируются схемой, показанной на рис. 11.6. Рис. 11.6. Схемы вариантов 3-ой ситуации: а – первый вариант; б – второй вариант Логическое условие, при котором создается любой из вариантов 3-й ситуации, записывается так: { (1) (2)} { (2) (1)} нi нj нj кi T T AND T T (11.3) Если условие (3) выполняется для какой-либо пары значений переменных (2) нj T и (2) кi T при изменении i от 1 до 1 z N , то производится «сдвиг» времени начала и окончания обслуживания заявки по формулам: (2) нj к fix T T ; (2) [ (2) (2)] кj к fix кj нj T T T T , После этого вновь рассматривается возникшая ситуация для «сдвинутой» заявки. «Дообслуживаемая», или «сдвинутая», заявка, в свою очередь, может оказаться в одной из трех перечисленных выше возможных ситуаций. В конечном счете процесс обслуживания может иметь два исхода: 1) заявка будет обслужена до конца; 2) истечет время функционирования системы, и заявка останется необслуженной (так же, как и все последующие заявки второго приоритета). 132 11.3. Задания по лабораторной работе №11 1. Провести моделирование обслуживания неперекрывающихся заявок в одноканальной системе. Время поступления заявок и время обслуживания распределены по экспоненциальному закону. Рассмотреть ситуации с различными значениями параметра интенсивности потока . Выполнить анализ системы для различных значений T и определить минимальный шаг, при котором не будет пропущена ни одна заявка. 2. Рассмотреть метод последовательной проводки перекрывающихся заявок одинакового приоритета. Время поступления заявок и время обслуживания распределены по экспоненциальному закону. Рассмотреть ситуации с различными значениями параметра интенсивности потока поступления и обслуживания заявок. Определить среднее время ожидания обслуживания заявок. 3. Рассмотреть метод последовательной проводки перекрывающихся заявок с разным приоритетом. Распределение случайных величин интервалов между соседними заявками первого приоритета считать показательным. Распределение случайного времени обслуживания также так же считать показательным. Рассмотреть ситуации с различными значениями параметра интенсивности потока поступления и обслуживания заявок первого и второго приоритета. Определить среднее время ожидания обслуживания заявок. 4. Написать программы в пакете Mathcad для моделирования поступления и обслуживания: а) неперекрывающихся заявок в одноканальной системе; б) перекрывающихся заявок одинакового приоритета; в) перекрывающихся заявок с разным приоритетом. Примечание. Первые три задания можно выполнить с помощью встроенных функций Mathcad. |