Главная Рефераты по рекламе Рефераты по физике Рефераты по философии Рефераты по финансам Рефераты по химии Рефераты по хозяйственному праву Рефераты по цифровым устройствам Рефераты по экологическому праву Рефераты по экономико-математическому моделированию Рефераты по экономической географии Рефераты по экономической теории Рефераты по этике Рефераты по юриспруденции Рефераты по языковедению Рефераты по юридическим наукам Рефераты по истории Рефераты по компьютерным наукам Рефераты по медицинским наукам Рефераты по финансовым наукам Рефераты по управленческим наукам Психология и педагогика Промышленность производство Биология и химия Языкознание филология Издательское дело и полиграфия Рефераты по краеведению и этнографии Рефераты по религии и мифологии Рефераты по медицине Рефераты по сексологии Рефераты по информатике программированию Краткое содержание произведений |
Реферат: Моделирование 2-х канальной системы массового обслуживания с отказамиРеферат: Моделирование 2-х канальной системы массового обслуживания с отказамиСодержание.
Введение. За последнее время в самых разных областях практики возникла необходимость в решении различных вероятностных задач, связанных с работой так называемых систем массового обслуживания (СМО). Примерами таких систем могут служить: телефонные станции, ремонтные мастерские, билетные кассы, стоянки такси, парикмахерские и т.п. Темой данного курсового проекта как раз и является решение подобной задачи. Однако, в предложенной задаче будет исследована СМО, в которой рассматриваются 2 потока заявок, один из которых обладает приоритетом. Также рассматриваемые процессы являются немарковскими, т. к. важен фактор времени. Поэтому решение данной задачи построено не на аналитическом описании системы, а на статистическом моделировании. Практическое решение задачи осуществлено с помощью программы, реализованной в среде TURBO PASCKAL.
1.1. Предмет и задачи теории массового обслуживания. Теория массового обслуживания опирается на теорию вероятностей и математическую статистику. На первичное развитие теории массового обслуживания оказали особое влияние работы датского ученого А.К. Эрланга (1878-1929). Теория массового обслуживания – область прикладной математики, занимающаяся анализом процессов в системах производства, обслуживания, управления, в которых однородные события повторяются многократно, например, на предприятиях бытового обслуживания; в системах приема, переработки и передачи информации; автоматических линиях производства и др. Предметом теории массового обслуживания является установление зависимостей между характером потока заявок, числом каналов обслуживан6ия, производительностью отдельного канала и эффективным обслуживанием с целью нахождения наилучших путей управления этими процессами. Задача теории массового обслуживания – установить зависимость результирующих показателей работы системы массового обслуживания (вероятности того, что заявка будет обслужена; математического ожидания числа обслуженных заявок и т.д.) от входных показателей (количества каналов в системе, параметров входящего потока заявок и т.д.). Результирующими показателями или интересующими нас характеристиками СМО являются – показатели эффективности СМО, которые описывают способна ли данная система справляться с потоком заявок. Задачи теории массового обслуживания носят оптимизационный характер и в конечном итоге включают экономический аспект по определению такого варианта системы, при котором будет обеспечен минимум суммарных затрат от ожидания обслуживания, потерь времени и ресурсов на обслуживание и простоев каналов обслуживания. 1.2. Система массового обслуживания. Система обслуживания считается заданной, если известны: 1) поток требований, его характер; 2) множество обслуживающих приборов; 3) дисциплина обслуживания (совокупность правил, задающих процесс обслуживания). Каждая СМО состоит из какого-то числа обслуживающих единиц, которые называются каналами обслуживания. В качестве каналов могут фигурировать: линии связи, различные приборы, лица, выполняющие те или иные операции и т.п Всякая СМО предназначена для обслуживания какого-то потока заявок, поступающих в какие-то случайные моменты времени. Обслуживание заявок продолжается какое-то случайное время, после чего канал освобождается и готов к приему следующей заявки. Случайный характер потока заявок и времен обслуживания приводит к тому, что в какие-то периоды времени на входе СМО скапливается излишне большое число заявок (они либо становятся в очередь, либо покидают СМО не обслуженными); в другие же периоды СМО будет работать с недогрузкой или вообще простаивать. Процесс работы СМО представляет собой случайный процесс с дискретными состояниями и непрерывным временем; состояние СМО меняется скачком в моменты появления каких-то событий ( или прихода новой заявки, или окончания обслуживания, или момента, когда заявка, которой надоело ждать, покидает очередь ). 1.3. Классификация СМО. Для облегчения процесса моделирования используют классификацию СМО по различным признакам, для которых пригодны определенные группы методов и моделей теории массового обслуживания, упрощающие подбор адекватных математических моделей к решению задач обслуживания в коммерческой деятельности.(см. рис.1)
Рис.1 Классификация систем массового обслуживания1.4. Характеристики СМО. Перечень характеристик систем массового обслуживания можно представить следующим образом:
2.Постановка задачи на проектирование. 2.1.Формулировка задачи. Построить модель СМО и исследовать поведение характеристик её эффективности. Описание системы: Имеется двухканальная СМО с отказами, на которую поступает два произвольных потока заявок. Поток I имеет интенсивность 1. Поток II имеет интенсивность 2 (будем кратко именовать заявки этих потоков: Заявки I и ЗаявкиII). Заявки I имеют пред Заявками II приоритет, состоящий в том, что если Заявка I приходит в систему, когда все каналы заняты и хотя бы один из них обслуживает Заявку II, то пришедшая Заявка I «вытесняет» (выгоняет) Заявку II, становится на её место, а та покидает систему необслуженной. Если Заявка I приходит в момент, когда оба канала обслуживают Заявки I, то она получает отказ и покидает СМО. Заявка II получает отказ, если она приходит в систему в момент, когда оба канала заняты (безразлично какими заявками). Данные для варианта : 1 =3, 2 =1, 1 =2, 2 =1. 2.2Теоретическое представление задачи. На двухканальную СМО поступают заявки двух простейших потоков. Простейшим потоком называется поток, обладающий следующими свойствами: 1.стационарность; 2.ординарность; 3.отсутствие последействия. Поток событий называется стационарным, если вероятность попадания того или иного числа событий на участок времени длиной зависит только от длины участка и не зависит от того, где именно на оси времени расположен этот участок. Поток событий называется ординарным, если вероятность попадания на элементарный участок t двух или более событий пренебрежимо мала по сравнению с вероятностью попадания одного события. Ординарность означает, что поток прореженный, т.е. между любыми двумя событиями есть временной интервал. Поток событий называется потоком без последействия, если для любых, не перекрывающихся участков времени число событий, попадающих на один из них, не зависит от числа событий, попадающих на другие. Это означает, что заявки попадают в систему не зависимо друг от друга. Интенсивность поступления заявок 1-го потока - 1. Интенсивность поступления заявок 2-го потока - 2. Простейшие потоки поступления заявок характеризуются показательным законом распределения. Тогда интервал времени поступления заявок 1-го потока представляет собой случайную величину с одним и тем же распределением вероятностей F (t). , (1) где 10 – постоянная. Плотность распределения показательного закона задается формулой:
где 1>0, - интенсивность поступления заявок 1-го потока. Аналогично, интервал времени поступления заявок 2-го потока представляет собой случайную величину с одним и тем же распределением вероятностей F(t). , (1) где 20 – постоянная. Плотность распределения показательного закона задается формулой:
где 2>0, - интенсивность поступления заявок 2-го потока. Необходимо также учесть, что моделируемая система массового обслуживания является СМО с отказами и с абсолютным приоритетом. Т.е. заявки 1 имеют перед заявками 2 приоритет, состоящий в том, что если заявка 1 приходит в систему, когда все каналы заняты и хотя бы один из них обслуживает заявку 2, то пришедшая заявка 1 вытесняет заявку 2, становится на ее место, а та покидает систему не обслуженной. Если заявка 1 приходит в систему в момент, когда оба канала обслуживают заявку 1, то она покидает СМО. Заявка 2 получает отказ, если она приходит в систему в момент, когда оба канала заняты, безразлично какими заявками. Длительность обслуживания заявок 1-го и 2-го потока также представляют собой случайные величины, подчиняющиеся показательному закону распределения. Интенсивность обслуживания заявок 1-го потока - 1. Интенсивность обслуживания заявок 2-го потока - 2. Длительность обслуживания заявок 1-го потока представляет собой случайную величину с одним и тем же распределением вероятностей F (t). , (1) где 10 – постоянная. Плотность распределения показательного закона задается формулой:
где 1>0, - интенсивность обслуживания заявок 1-го потока. Аналогично, длительность обслуживания заявок 2-го потока представляет собой случайную величину с одним и тем же распределением вероятностей F(t). , (1) где 20 – постоянная. Плотность распределения показательного закона задается формулой:
где 2>0, - интенсивность обслуживания заявок 2-го потока. В рассматриваемой задаче СМО имеет 2 входа, на один из которых поступает случайный поток Заявок I, на другой вход - поток Заявок II. 3. Решение задачи.
Начальные условия:
Задача моделирования: зная параметры входных потоков заявок промоделировать поведение системы и вычислить её основные характеристики её эффективности. Меняя величину Т от меньших значений до больших (интервал времени, в течении которого происходит случайный процесс поступления заявок 1-го и 2-го потока в СМО на обслуживание), можно найти изменения критерия эффективности функционирования и выбрать оптимальный. Критерии эффективности функционирования СМО:
Принцип моделирования:
Программа была разработана в среде программирования Turbo Pascal. Алгоритм функционирования программы заключается в следующем: после считывания введенных пользователем параметров, производится генерация моментов появления Заявок. Затем выполняется процедура, реализующая СМО, представляющая собой цикл с условием выхода по истечению времени функционирования СМО. Значения интенсивностей появления заявок в системе и обслуживания заявок заданы в программе в виде констант. Отсчёт внутреннего времени СМО выполняется с помощью приращения переменной. В текущий момент времени производится проверка моментов появления заявки. Если заявка появилась, когда один из каналов был свободен, заявка поступает на обслуживание в свободный канал. В противном случае при появлении заявки II, она получает отказ (соответственно увеличивается число необслуженных заявок). При появлении Заявки I, она не обслуживается в случае занятости обоих каналов заявками I. При занятости хотя бы одного канала Заявкой II, Заявка I становится на место Заявки II, (Заявка II покидает систему необслуженной, увеличивается количество необслуженных заявок). Описание интерфейса: При каждом новом запуске программы сначала вводится число реализаций работы системы, затем при каждой новой реализации вводится время функционирования СМО –Т. При поступлении новой заявки программа выводит сообщение (Поступила заявка 1, Поступила Заявка 2).Программа выводит сообщения об обслуживании/необслуживании вновь поступившей заявки. Затем, по окончании времени функционирования системы выводится сколько заявок поступило и сколько из них было обслужено, а сколько получило отказ. Далее программой производится расчет и вывод основных выбранных характеристик СМО. Листинг программы представлен в приложении 6. Работа программы и получение данных для анализа работы СМО. Чтобы исследовать поведение смоделированной СМО при различных значениях времени функционирования, зададим число реализаций программы равным 18. Причем, при каждой новой реализации, будем задавать больший интервал времени функционирования системы. Интересно также пронаблюдать поведение СМО при изменяющихся значениях интенсивностей появления заявок в системе. Поэтому изменим значения этих констант в программе и пронаблюдаем поведение СМО. Значения интенсивностей поступления заявок1 уменьшим на 1, а заявок 2- увеличим на 1. Новые значения интенсивностей:: 1 =2, 2 =2, 1 =2, 2 =1. Т.о. исследуем работу системы при следующих вариантах:
Результаты работы системы представлены в приложении 1. На основе собранных данных строятся графики зависимостей значений параметров, характеризующих работу СМО от времени функционирования системы, а также от значений интенсивностей поступления и обслуживания заявок. Для
каждого варианта
были построены
графики зависимостей: - количества обслуженных и поступивших заявок от времени. Графики представлены в приложениях 2-4. 5. Выводы. В результате моделирования работы СМО, а также анализ полученных данных и были сделаны следующие выводы: 1. При времени функционирования системы меньше 2000, работа системы нестабильна, трудно выявить какие-либо закономерности в поведении системы. Поэтому, чтобы сделать выводы об эффективности работы СМО, следует рассматривать её функционирование на временном интервале более 2000 единиц. 2. При увеличении времени функционирования системы соответственно увеличивается и количество заявок, поступивших в систему. Количество поступивших и обслуженных заявок увеличивается пропорционально увеличению времени работы системы. Причем, чем больше значения интенсивностей, тем больше быстрее увеличивается количество поступающих заявок с увеличением времени. 3. На интервале времени до 3000 значение абсолютной пропускной способности системы хаотически колебалось (особенно это заметно при втором варианте реализации). При времени больше 3000 амплитуда колебаний снизилась, а при времени Т7000 значения абсолютной пропускной способности системы для обоих вариантов приобретают стационарный характер, и примерно равны 0,004 для первого варианта работы системы и 0,036- для второго. 4. Значение относительной пропускной способности системы хаотически колебалось при всех временах функционирования. Однако, при больших временах амплитуда колебаний значительно снизилась. С увеличением времени заметна тенденция к стационарности в поведении величины относительной пропускной способности. 5. Т. к. вероятность отказа системы величена обратная относительной пропускной способности системы, то их поведение аналогично. При малых значениях времени (до 7000) вероятность отказа хаотично колебалась. А при увеличении времени, амплитуда колебания значительно снизилась. Практически вероятность отказа принимает стационарный характер при значении времени больше 17000. Заключение. Целью данного курсового проекта было построение модели двухканальной СМО с отказами и абсолютным приритетом. Модель СМО была и реализована с помощью программы в среде TURBO PASKAL. В процессе нескольких реализаций работы СМО для двух вариантов значений интенсивностей поступления заявок в были получены результаты функционирования системы. На основе полученных данных были построены графики, позволяющие провести исследование работы СМО. С помощью графиков проведен анализ полученных данных и сделаны выводы о работе систстемы. Проведенное исследование наиболее наглядно отображают графики, приведенные в приложениях 2-4. Приложение 1. Результаты работы СМО.
Приложение 2. Приложение 3. Приложение 4. Приложение 5. Приложение 6. Листинг программы. PROGRAM CAN_SMO; TYPE CHANNAL = (FREE, CLAIM1, CLAIM2); TIME = word; INTENSITY = word; STATISTICS = word; VAR CHANNAL1, CHANNAL2 : CHANNAL;{Каналы } _T_, t, tc1, tc2 : TIME; {Время} l1, l2, n1, n2 : INTENSITY; {Интенсивности } served1, not_served1, served2, not_served2, S : STATISTICS; {Статистика} M,N:INTEGER;{число реализаций} FUNCTION W(t : TIME; l : INTENSITY) : boolean;{Определяет появилась ли заявка} Begin {по интенсивности потока l} if random < l/60 then W := TRUE else W := FALSE; End; FUNCTION F(t : TIME; n : INTENSITY) : TIME;{Определяет сколько будет обрабатываться заявка} Begin {по интенсивности обслуживания заявок n} F := t +round(60/(n)); End; BEGIN M:=0; WRITELN('ВВЕДИТЕ ЧИСЛО РЕАЛИЗАЦИЙ РАБОТЫ СМО'); READLN(N); REPEAT M:=M+1; writeln(M, '-ая реализация'); randomize; CHANNAL1 := FREE; CHANNAL2 := FREE; l1 := 3; l2 := 1; n1 := 2; n2 := 1; served1 := 0; not_served1 := 0; served2 := 0; not_served2 := 0; write('Введите время исследования СМО - Т: '); readln(_T_); repeat if tc1 = t then begin if CHANNAL1 = CLAIM1 then inc(served1) else inc(served2); CHANNAL1 := FREE; writeln('Канал1 выполнил заявку'); end; if tc2 = t then begin if CHANNAL2 = CLAIM1 then inc(served1) else inc(served2); CHANNAL2 := FREE; writeln('Канал2 выполнил заявку'); end; if W(t,l1) then begin writeln('Поступила заявка1'); if CHANNAL1 = FREE then begin CHANNAL1 := CLAIM1; tc1 := F(t,n1); writeln('Канал1 принял заявку1'); end else if CHANNAL2 = FREE then begin CHANNAL2 := CLAIM1; tc2 := F(t,n1); writeln('Канал2 принял заявку1'); end else if CHANNAL1 = CLAIM2 then begin CHANNAL1 := CLAIM1; tc1 := F(t,n1); inc(not_served2); writeln('Канал1 принял заявку1 вместо заявки2'); end else if CHANNAL2 = CLAIM2 then begin CHANNAL2 := CLAIM1; tc2 := F(t,n1); inc(not_served2); writeln('Канал2 принял заявку1 вместо заявки2'); end else begin inc(not_served1); writeln('заявка1 не обслужена'); end; end; if W(t,l2) then begin writeln('Поступила заявка2'); if CHANNAL1 = FREE then begin CHANNAL1 := CLAIM2; tc1 := F(t,n2); writeln('Канал1 принял заявку2');end else if CHANNAL2 = FREE then begin CHANNAL2 := CLAIM2; tc2 := F(t,n2); writeln('Канал2 принял заявку2');end else begin inc(not_served2); writeln('заявка2 не обслужена'); end; end; inc(t); until _T_ = t; S := served1 + not_served1 + served2 + not_served2; writeln('время работы СМО ',_T_); writeln('обслужено каналом1: ' ,served1); writeln('обслужено каналом2: ',served2); writeln('Поступило заявок : ',S); writeln('Обслужено заявок : ',served1+served2); writeln('Не обслужено заявок : ',not_served1+not_served2); {writeln('Интенсивность поступления заявок в систему : ',(served1+served2)/_T_:2:3);} writeln('Абсолютная пропускная способность системы : ',(served1+served2)/T:2:3); writeln('Вероятность отказа : ',(not_served1+not_served2)/S*100:2:1,'%'); writeln('Относительная пропускная способность системы: ',(served1+served2)/S:2:3); readln; UNTIL M>=N; writeln('моделирование закончено'); END. Список литературы.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|