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;


 

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

42643. Операції С, їхні пріоритети і використання. Перетворення типів 47.5 KB
  Перетворення типів Ціль роботи: Вивчити основні логічні арифметичні й інші операції С навчитися правильно складати вираження С вивчити пріоритети операцій С навчитися використовувати перетворення типів. варіант арифметична операція арифметична операція логічна операція бітова операція перетворення: явне 20 2b3c 4b1 3c2 =b =10 b^c intchr Программа: Результат: Висновок: я вивчив основні логічні арифметичні й інші операції С навчився правильно складати вираження С вивчив пріоритети операцій С навчися використовувати...
42644. Циклічні алгоритми 26 KB
  Контрольні питання 1 Накреслити схему простого циклу. 2 Що таке тіло циклу Многократно повторяющийся процесс. 3 Для чого потрібна змінна циклу Для того чтобы выполнялся цикл.
42645. Вкладені цикли 42.5 KB
  Визначити які блоки складають тіло циклу що є зміною циклу зовнішнього та внутрішнього. Накреслити схему вкладеного циклу.
42646. Виконання розрахунків у MatСad 113 KB
  Виконання розрахунків у MtСd Мета: набуття навиків вводу і редагування формул використання стандартних функцій засвоєння особливостей застосування локального і глобального операторів присвоювання використання змінних що можуть приймати значення з заданого інтервалу. Обчислити значення виразу з графи 2. Значення змінної обчислити за виразом з графи 2. Обчислити значення функції для двох значень аргументу п і к графи 5 і 6.
42647. Робота з векторами і матрицями в системі MathCad 49.5 KB
  Розвязати систему рівнянь методом зворотної матриці виконати перевірку. Розвязати систему рівнянь за правилами Крамера й з допомогою вирішувального блоку.Розвязати систему рівнянь методом Гауса. Розвязати систему рівнянь методом зворотної матриці виконати перевірку.
42648. Операційна система Windows 3.31 MB
  Закріпити та систематизувати набуті знання, уміння та навички з теми «Операційна система Windows», розвивати логічне мислення, наполегливість, акуратність, виховувати культуру письма, мови, поведінки.
42649. Редактор формул MS Equation Editor 142 KB
  Мета: Опрацювати типові операції по набору формул в редакторі формул Eqution Editor. Вставити обєкт Eqution Editor до документу Word “Натиснути ПКМ на вільній області Панелі меню вибрати пункт Налаштування далі категорію Вставка та команду Редактор формул; далі перетягнути піктограму панель інструментів. В пункті “Определить†меню “Размер†задати розмір різних елементів формул згідно з таблицею: Текст Times New Romn Cyr курсив Функція Times New Romn Cyr курсив Змінна Times New Romn Cyr курсив Рядковий грецький Symbol...
42650. Визначення технічних характеристик компютера за допомогою програмних засобів 49.5 KB
  У лівому вибираємо про що б ми хотіли отримати інформацію фрейм виконаний в стилі Провідника а справа отримуємо необхідну нам інформацію про свій комп'ютер. Опція Комп'ютер надає інформацію про версію ОС про те які оновлення стоять так звані сервіспаки і апдейти про версії Internet Explorer'а і DIRECTX і багато що інше. Тут же можна дізнатися інформацію про різні компоненти вашого ПК: тип процесора і системної плати їх характеристики докладна інформація про системну пам'ять відеокарту і інше. Вибравши підопцію можна отримати...
42651. ДОСЛІДЖЕННЯ АРИФМЕТИЧНИХ ТА ЛОГІЧНИХ ОПЕРАЦІЙ 201 KB
  Безпосередня адресація дозволяє занести на адресу призначення константу що безпосередньо вказана в команді наприклад: MOV 100; в акумулятор записується десяткове число 100. Допускається пряма байтова адресація до внутрішніх регістрів RM з номерами 0 127 наприклад MOV 25H ; в акумулятор записується вміст регістра з адресою 25Н. Наприклад передачу даних з регістру RM за номером 44Н в регістр 0Н або R0 можна реалізувати наступними способами: MOV 0H 44H; пряма адресація запис команди займає 3 байти в ROM MOV R0 44H; регістрова...