51318

Системы массового обслуживания

Лабораторная работа

Информатика, кибернетика и программирование

Задание: На вход n – канальной СМО с отказами поступает поток заявок с интенсивностью 6 заявок в час. Среднее время обслуживания одной заявки 0.8 часа. Каждая обслуженная заявка приносит доход 4у.е. Содержание одного канала обходится 2 у.е./час. Определить экономически целесообразное количество каналов.

Русский

2014-02-09

59 KB

6 чел.

Министерство образования Республики Беларусь

Белорусский Государственный Университет Информатики и Радиоэлектроники

О Т Ч Е Т

по предмету: САиММ

по лабораторной работе №4

«Системы массового обслуживания»

Bариант-7

Выполнила:                                                                                      Проверил:     

студентка гр.351004                                                                        Мельник Н.И.

   

Минск 2006

Задание: На вход n – канальной СМО с отказами поступает поток заявок с интенсивностью = 6 заявок в час. Среднее время обслуживания одной заявки 0.8 часа. Каждая обслуженная заявка приносит доход 4у.е. Содержание одного канала обходится 2 у.е./час. Определить экономически целесообразное количество каналов.

Аналитический расчет:

λ – интенсивность поступления заявок,  λ=6 заявки в час.

μ – интенсивность потока обслуживания.

Т.к. среднее время обслуживания одной заявки 0.8 часа, следовательно μ=1/0.8=1.25.

d – доход от обслуженной заявки, d=4 у.е.

k – расход на содержание одного канала, k=2 у.е./час.

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

P=d*A-Nk*k,  где

P – прибыль от системы в час, у.е./час.

A – абсолютная пропускная способность системы.

Nk– количество каналов.

Пусть ω=λ/μ=6/1.25=4,8.

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

P = d* (1- Ротк.)* λ- Nk*k, где

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

Количество заявок

Величина прибыли за час

1

2,138

2

4,037

3

5,627

4

6,821

5

7,558

6

7,757

7

7,405

……

11

1,845

12

-0,062

Зависимость прибыли от количества каналов приведена на графике:

Т.о. в результате расчетов было получено, что экономически целесообразным количеством каналов является 11. Однако лучше использовать 6 каналов, т.к. в данном случае прибыль максимальна.

Сводная таблица результатов:

Количество каналов

Имитационная модель

Аналитическая модель

1

2,186

2,138

2

4,144

4,037

3

5,735

5,627

4

7,022

6,821

5

7,786

7,558

6

7,921

7,757

7

7,581

7,405

……………

11

2,128

1,845

12

-0,1712

-0,062

Результаты

6 каналов

6 каналов

Имитационная модель СМО(фрагмент программы):

procedure TForm1.Button1Click(Sender: TObject);

var

 N: integer; //number of minutes for working system

 NumberOfChanels: integer;

 TimeOfWorkingChanels: array of TTimeWork;//в этом массиве будут храниться времена работы каждогоканала по обработке заявки

 i,j: integer;

 Profit: real; //прибыль

 time: real;

 lastRequest: real;//количество минут, прошедших с момента начала работы системы, до выработки последней заявки

 x: real;

begin

 N := StrToInt(edit1.Text);

 NumberOfChanels := StrToInt(edit2.Text);

 SetLength(TimeOfWorkingChanels, NumberOfChanels);

 for i:= 0 to NumberOfChanels - 1 do

 begin

   TimeOfWorkingChanels[i].free := true;

   TimeOfWorkingChanels[i].timeOfWorking := 48;

 end;

 Profit := 0;

 lastRequest := 0;

 x := 0;

 Randomize();

 while (x=0) do

   x := Random(1000)/1000 ;

 time := -10*(ln(x) );

 for i:= 1 to N do

 begin

   if (i >= lastRequest + round(time)) then

   begin

     for j:= 0 to NumberOfChanels - 1 do

     begin

       if (TimeOfWorkingChanels[j].free = true) then //ищем свободный канал, если все каналы заняты то заявка блокируется(ничего не происходит)

       begin

         TimeOfWorkingChanels[j].free := false;

         break;

       end;

     end;

     lastRequest := i;

     x := 0;

     while (x=0) do

       x := Random(1000)/1000 ;

     time := -10*(ln(x) );

   end;

   for j:= 0 to NumberOfChanels - 1 do

   begin

     if ((TimeOfWorkingChanels[j].free = false) and (TimeOfWorkingChanels[j].timeOfWorking > 0)) then

     begin

       dec(TimeOfWorkingChanels[j].timeOfWorking);

     end;

     if ((TimeOfWorkingChanels[j].free = false) and (TimeOfWorkingChanels[j].timeOfWorking = 0)) then

     begin

       TimeOfWorkingChanels[j].free := true;

       TimeOfWorkingChanels[j].timeOfWorking := 48;

       Profit := Profit + 4;

     end;

   end;

 if (i mod 60 = 0) then

   Profit := Profit - 2*NumberOfChanels;

 end;

 Edit3.Text := FloatToStr(Profit);

end;


 

А также другие работы, которые могут Вас заинтересовать

60520. Історія комп’ютеризації освіти Голованівського району 817.5 KB
  У газеті Аспект була надрукована стаття у якій автор детально описує початок комп’ютеризації освіти Голованівського району. Дядьки чемно відмовляються від вечері і зникають так само несподівано як і з’явились...
60521. Архитектурный план дома 442.5 KB
  Сегодня мы поговорим про проектирование дома коттеджа и т. Рассмотрим какие рекомендации должен соблюдать дизайнер разрабатывая план частного дома а также план капитального ремонта жилых домов план каркасного дома архитектурный план...
60522. Демографический кризис – проблема нравственности 7.63 MB
  Учитель: Добрый день дорогие ребята Я приветствую вас на нашем классном часе. Раскроем тайны библейских и заповедей: а Почитай отца твоего и мать твою б Не прелюбодействуй...
60525. Общая характеристика покрытосеменных и их классификация 50 KB
  Сформировать у учеников понятия об общих признаках покрытосеменных растений и современную их классификацию. Оборудование: мультимедийный проектор компьютер учебники рабочие тетради гербарные образцы однодольных и двудольных растений...