Теория массового обслуживания и математическая статистика

Автор работы: Пользователь скрыл имя, 20 Января 2014 в 08:22, курсовая работа

Краткое описание

Промежуточное звено компьютерной сети Supernet обслуживает запросы от 5 абонентов по двум телефонным каналам. Компьютер каждого абонента выходит на связь по любому свободному каналу. Если же оба канала заняты, абонент получает отказ. Администрация решила провести статистическое исследование для того, чтобы оценить целесообразность реконструкции сети (таблица 1). Специальная программа фиксировала продолжительность работы каждого компьютера (таблица 3) и число обращений в сутки (таблица 2).

Прикрепленные файлы: 1 файл

Теория массового обслуживания.doc

— 211.50 Кб (Скачать документ)

Министерство Российской Федерации по связи и информатизации

Сибирский Государственный  Университет Телекоммуникаций и  Информатики

Межрегиональный центр  переподготовки специалистов

 

Курсовой проект

по дисциплине

 

“Теория массового обслуживания и математическая статистика”

 

Вариант № 8

 

 

 

 

 

 

Работу выполнил:

Черемисин А.М.

 группа ПБТ-13

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Новосибирск

2013

 

1. Постановка задачи

Промежуточное звено  компьютерной сети Supernet обслуживает  запросы от 5 абонентов по двум телефонным каналам. Компьютер каждого абонента выходит на связь по любому свободному каналу. Если же оба канала заняты, абонент получает отказ. Администрация решила провести статистическое исследование для того, чтобы оценить целесообразность реконструкции сети (таблица 1). Специальная программа фиксировала продолжительность работы каждого компьютера (таблица 3) и число обращений в сутки (таблица 2).

Необходимо оценить  вероятность отказа при подключении  к сети после реконструкции двумя способами:

1) Аналитически, при этом считать интенсивность работы каждого терминала одинаковой (т.е. усреднённой),

2) Методом Монте-Карло, при этом использовать не усреднённые оценки интенсивностей. По результатам работы программы построить доверительный интервал для вероятности отказа при уровне значимости 0,05.

Вариант курсового проекта определяется по последней цифре пароля. Согласно варианту определяются:

– планируемые изменения  в сети (таблица 1)

– количество подключений  каждого абонента (таблица 2)

– время работы каждого  абонента (таблица 3).

Курсовой проект должен содержать:

– постановку задачи (вместе с данными из таблиц 2 и 3)

– полное решение аналитическим  способом (граф системы, формулы, вычисленные  значения и комментарии вычислений)

– программу на языке  С или Pascal, моделирующую работу системы методом Монте – Карло любым из двух способов, описанных в п. 2.2 (эта же программа может вычислять интенсивности по таблицам 2 и 3); наличие комментариев в программе обязательно;

– результаты работы программы

– построение доверительного интервала по результатам работы программы.

 

Таблица 1. Реконструкция  сети

Вариант

Планируемые изменения

8

Убрать абонента 2 и абонента 3


 

Таблица 2. Количество подключений  в сутки

 

Вариант 8

1 компьютер

5

8

4

1

6

11

4

6

6

4

3

5

2 компьютер

4

8

12

4

9

10

9

6

6

6

8

10

3 компьютер

12

11

5

11

12

11

12

12

8

16

11

13

4 компьютер

10

8

6

9

7

10

12

10

8

14

8

11

5 компьютер

6

5

11

6

7

7

7

6

7

4

7

10


 

Таблица 3. Время работы (в часах)

Вариант 8

1 компьютер

0.18

0.67

1.51

0.56

0.06

0.15

0.86

1.36

0.20

1.50

2 компьютер

0.74

1.81

1.73

2.12

0.59

1.37

0.19

1.75

0.69

0.39

3 компьютер

0.58

1.17

0.34

0.53

2.35

1.99

0.05

0.02

0.08

3.56

4 компьютер

0.39

0.62

2.43

1.59

0.68

6.36

0.04

0.33

5.33

0.02

5 компьютер

0.89

0.89

0.25

0.38

1.00

2.51

0.35

2.16

5.88

1.64


 

 

 

 

 

 

 

 

2.Решение аналитическим способом.

Это случай системы массового  обслуживания с отказами и ограниченным числом требований в системе. “Приборами”  в данном случае являются каналы, по которым происходит подключение  к сети. Введём следующие состояния  системы: 0 – канал свободен, 1 – канал занят, 2 – оба канала занято. Граф системы для случая одного канала изображён на рис. 1:

Рисунок 1. Система из 3-х абонентов и 2-х каналов.

 

где l – средняя интенсивность подключения для одного компьютера, m – средняя интенсивность освобождения для одного канала.

Найдем l и m по статистическим данным. У нас имеется два потока событий: с одной стороны, поток заявок на подключение к сети от компьютеров, с другой стороны – поток “освобождения каналов”. Число наступления события за время t – случайная величина, подчиняющаяся распределению Пуассона с параметром l × t = l за единицу времени. Методом максимального правдоподобия была получена оценка для параметра этого распределения: .

Обозначим данные Таблицы 2 через , (i – номер строки, j – номер столбца). Найдем оценки интенсивности “подключения к каналам” для каждого компьютера по формуле: . Тогда:

= (5+8+4+1+6+11+4+6+6+4+3+5) / 12 = 5.25;

= (10+8+6+9+7+10+12+10+8+14+8+11) / 12 » 9,42;

= (6+5+11+6+7+7+7+6+7+4+7+10) / 12 » 6,92;

Эти данные будем использовать при решении методом Монте-Карло. Для аналитического решения усредним эти значения:

lсред = = (5.25+9.42+6.92) / 3 » 7.2;

Время между наступлениями  соседних событий в простейшем потоке – экспоненциально-распределенная случайная величина, и оценкой параметра такого распределения будет: m= 1/x.

Обозначим данные Таблицы 3 через , (i – номер строки, j – номер столбца). Найдём “интенсивности освобождения” для каждого канала по формуле: ,– но так как данные представлены в часах, переведем их в сутки, следовательно, формула имеет вид

= 10*24/(0,18+0,67+1,51+0,56+0,06+0,15+0,86+1,36+0,20+1,50) » 34,04;

= 10 *24/ (0,39+0,62+2,43+1,59+0,68+6,36+0,04+0,33+5,33+0,02) » 13,49;

= 10 *24/ (0,89+0,89+0,25+0,38+1,00+2,51+0,35+2,16+5,88+1,64) » 15,05;

 

 

Для аналитического решения  усредним эти значения:

mсред = =30*24/ (7.05+17.79+15.95)  » 21.34

Вероятность отказа при подключении компьютера к сети в системе из четырех абонентов и двух каналов определяется по формуле:

Т.к. у такой системы  конечное число состояний, предельные вероятности всегда существуют и  могут быть найдены по формулам:

Подставим численные  значения:

Ответ:

 

 

3.Решение методом Монте-Карло.

 

Program komp_otkaz;

 

uses crt;

label 1;

{ квантиль нормального распределения  находим из таблицы для вероятности  отказа при уровне значимости 0,05.}

const U=1.96;

const num_komp:array[1..3] of string = ( '1-uy komp    ' , '4-iy komp    ' , '5-uy komp    ' );

{ценки интенсивности "подключения  к каналам" для каждого компьютера}

const l:array[1..3] of real = (5.25,9.42,6.92);

{"интенсивности освобождения" для каждого канала}

const mu:array[1..3] of real = (34.04,13.49,15.05);

 

 

type matr=array[1..3,1..100] of byte;

var

    file_:text;

    i,j,n,m,t,k,f,strok,stolb:integer;

    x:matr;

    p_sum,Ga,Gb:real;

    otkaz,obraw:integer;

    sum_obr:array[1..10] of integer; {счётчик  обращений }

    sum_otkaz:array[1..10] of integer;{счётчик  отказов }

    p:array[1..10] of real;

 

 

{------------------ ввод состояния канала ----------------------}

Procedure vvod_sostoyaniya;

var

    step:real; {переменная для шага момента времени}

    i,j:integer;

    vremya:array[1..100] of real; {массив для моментов времени}

begin

    textcolor(10);

    step:=0;

    write(file_,'Vremya ->>   ');

 

    for i:=1 to 100 do

    begin

        vremya[i]:=step;

        write(file_,' ',vremya[i]:1:3,' ');

        step:=step+0.005;

    end;

    writeln(file_,#13#10);

    textcolor(15);

end;

 

 

{--------------------------основная  часть---------------------------------}

begin

    clrscr;

    randomize;

    textcolor(5);

    assign(file_,'c:/a.txt'); {файл для записи результатов выполнения программы}

    rewrite(file_);

    writeln(file_,'================================================================');

    writeln(file_,'"   provodim 10-ty testov dlya ocenki veroyatnosty   "');

 

    close(file_);

    for f:=1 to 10 do begin   {создаем цикл для проведения десяти тестов}

    assign(file_,'c:\a.txt');

    append(file_);{открываем наш файл для добавления}

    writeln(file_,#13#10#13#10#13#10#13#10,f,' -uy test            ========== Veroyatnosty otkaza ============',#13#10);

 

    m:=100; {десять отрезков времени}

    n:=3;   {три компьютера}

 

    vvod_sostoyaniya;

 

    for i:=1 to n do {цикл для проверки наших условий}

    begin

        textcolor(10);

        write(file_,num_komp[i]);

 

        textcolor(15);

        write(file_,'   ');

 

        sum_obr[f]:=0;

        sum_otkaz[f]:=0;

        for j:=1 to 1 do  {в первом столбце компьютеры еще не включены, мы его обнуляем}

        begin

            x[i,1]:=0;

            write(file_,x[i,j]);

        end;

 

        for j:=2 to m do

        begin

            {--------генерируем случайное число------------}

            x[i,j]:=random(3);

            {если в предыдущем столбце  этой строки стоит 0 (компьютер  не в сети),

             проверяем, будет ли он подключаться  к сети в текущий момент времени}

            if x[i,j-1]=0 then 

            begin

                {считаем, что компьютер пытается подключиться к

                 сети, и увеличиваем счётчик обращений}

                if (x[i,j]<=l[i]*(0.005)) then

                begin

                    sum_obr[f]:=sum_obr[f]+1;

                    stolb:=j;

                    {если есть единица вверх от  заполняемого элемента по текущему 

                    столбцу,то элемент равен нулю}

                    for strok:=i downto 1 do

                    begin

                        if x[strok-1,stolb]=1 then

                        begin

                            x[i,j]:=0;

                            sum_otkaz[f]:=sum_otkaz[f]+1; {увеличиваем сетчик  отказов}

                            goto 1;

                        end;

                    end;

                    stolb:=j-1;

                    for strok:=1 to n do

                    begin 

                    {если есть единица вниз от заполняемого элемента по

                     предыдущему столбцу, то элемент равен нулю}

                        if x[strok,stolb]=1 then

                        begin

                            x[i,j]:=0;

Информация о работе Теория массового обслуживания и математическая статистика