- •Лабораторная работа №1 Изучение блоков динамической категории gpss/pc: generate, terminate, seize, release, advance
- •20 Transfer .7,chan1,chan2
- •20 Transfer both,chan1,chan2
- •20 Transfer all, chan1,chan4,4
- •Transfer pick,3,6
- •Assign 13,мет1
- •Loop 13, cycl5
- •Лабораторная работа №4 Системы с накопителями: блоки enter, leave, оператор storage. Управление потоком сообщений: блоки gate, test. Операторы variable, fvariable, initial.
- •Leave nak
- •Enter nak
- •20 Gate nu 1,facil2
- •Пример использования арифметических переменных
- •210 Funavail 1,re,facil2, ,re,facil3,re,facil4
- •230 Favail 1
- •510 Sunavail nak
- •530 Savail nak
- •20 Gate snv nak,facil2
- •110 Msavevalue mat2,1,1,c1
- •120 Msavevalue mat2,1,2,100
- •150 Msavevalue mat2-,2,2,2
- •Tabulate ttab1
- •135 Tabulate ttab2
- •70 Tabulate tab1
- •20 Gate snf nak1,exit
- •50 Link waz1,fifo,chan1
- •100 Unlink g waz1,chan1,1,13,16,que2
- •205 Link waz1,fifo
- •Лабораторная работа №9 Создание и управление групп транзактов gpss/pc: блоки join, remove, examine
- •120 Remove gr1,,p23,,,chan2
- •140 Remove gr1,,21
- •Examine gr17,,chan2
- •Examine gr1,6778,chan2
- •Листинг программы
- •Intlines storage 30
- •190 Transfer ,Breakoff
- •390 Terminate
- •570 Nonefree terminate
- •850 Terminate
- •Xact_group group_size retry
- •Лабораторная работа №11
- •Моделирование многофазных систем массового обслуживания
- •I теоретическая часть
- •1.1 Двухфазная система обслуживания
- •1.2 Трехфазная система обслуживания
- •II практическая часть
- •2.1 Моделирование в системе matlab
- •2.2 Моделирование в системе gpss/pc
- •Xact_group group_size retry
- •I теоретическая часть
- •II практическая часть
- •2.1 Моделирование в системе matlab
- •2.2 Моделирование в системе gpss/pc
- •Xact_group group_size retry
2.1 Моделирование в системе matlab
П
усть
дана система М/М/4/7 с ограниченным
временем ожидания в очереди. Параметры
системы следующие: λ = 2.5 с-1,
= 0.8 с-1, v = 0.5 c-1.
Размеченный граф состояний системы
показан на рисунке 2.2.
Рисунок 2.2 — Граф состояний системы М/М/4/7 с ограниченным
временем ожидания
На рисунке 2.2 вокруг состояния 4 проведена воображаемая окружность, чтобы применить мнемоническое правило для составления дифференциальных уравнений Колмогорова. Такие окружности можно проводить вокруг каждого состояния. В соответствии с мнемоническим правилом получаем следующую систему дифференциальных уравнений:
(2.2)
где
— вероятности состояний.
Для существования стационарного состояния в исследуемой системе необходимо выполнение следующего нормировочного условия:
(2.3)
Для интегрирования системы дифференциальных уравнений (2.2) зададим естественные граничные условия:
(2.4)
Решение поставленной задачи может быть найдено по следующей MATLAB–программе, которая имеет две части: первая — это М-сценарий, а вторая — М-функция описания правых частей дифференциальных уравнений (2.2).
Приведем М-функцию описания правых частей дифференциальных уравнений:
function f=Lab2(t,P)
global A
f=A*P;
М-сценарий (скрипт–файл) решения задачи моделирования системы М/М/4/7 с ограниченным временем ожидания:
%Script-file Lab2
% M/M/4/7 with limit time of wait at queue
clear,clc,close all
% System's parameters
L = 2.5; M = 0.8;v = 0.5;
m = 4; K = 7;
global A
A=[-L M zeros(1,6);
L -(L+M) 2*M zeros(1,5);
0 L -(L+2*M) 3*M zeros(1,4);
0 0 L -(L+3*M) 4*M zeros(1,3);
zeros(1,3) L -(L+4*M) (4*M+v) 0 0;
zeros(1,4) L -(L+4*M+v) (4*M+2*v) 0;
zeros(1,5) L -(L+4*M+2*v) (4*M+3*v);
zeros(1,6) L -(4*M+3*v)];
% Procedure of integration call model
T=[0 14];
P0=[1;zeros(length(A)-1,1)];
[t,P]=ode45(@Lab2,T,P0);
Pcm = P(end,:);
k = linspace(0,K,K+1);
Ncp = sum(k.*Pcm);
Nq = 0;
for J = 0:(K - m)
Nq = Nq + J*Pcm(m+J);
end
Pomk = Pcm(end);
fprintf('\n\t Значени%s стационарных веро%sтностей:',char(255),char(255))
for J = 1:length(Pcm)
fprintf('\n\t\t P%d = %g',J-1,Pcm(J))
end
fprintf('\n\t Нормировочное условие: %g\n',sum(Pcm))
fprintf('\t Нормировочное условие выполн%sетс%s.\n',char(255),char(255))
disp('-----------------------------------------------------')
fprintf('\t ОПЕРАЦИОННЫЕ ХАРАКТЕРИСТИКИ:\n')
fprintf('\t Среднее число требований в системе Ncp = %1.5f\n',Ncp)
fprintf('\t Средн%s%s длина очереди Nq = %1.5f\n',char(255),char(255),Nq)
fprintf('\t Среднее врем%s пребывани%s требовани%s в системе T = %1.5f %s\n',char(255),char(255),char(255),Ncp/L,'c')
fprintf('\t Среднее врем%s пребывани%s требовани%s в очереди Tq = %1.5f %s\n',char(255),char(255),char(255),Nq/L,'c')
fprintf('\t Веро%sтность отказа P7 = Pomk = %1.5f\n',char(255),Pcm(end))
fprintf('\t Относительна%s пропускна%s способность Q = 1 - Pomk = %1.5f\n',char(255),char(255),1-Pomk)
% Diagram of probabilities
plot(t,P,'k','linew',2.2),grid on,
title('\bf\fontsize{12} System M/M/4/7 with limit time of wait at queue'),
text(0.35,0.5,'\bf\fontsize{12}\leftarrow P_0(t)'),
axis([-0.2 T(2) 0 1.05])
text(6.2,0.8,['\bf\fontsize{12}',' \lambda = ',sprintf('%g',L),...
'\newline \mu = ',sprintf('%g',M),'\newline v = ',sprintf('%g',v)])
xlabel('\bf\fontsize{14} Time'),ylabel('\bf\fontsize{14} Probability')
set(gca,'fontsize',12)
set(gcf,'color','w')
hold off
Результаты моделирования:
Значения стационарных вероятностей:
P0 = 0.0431039
P1 = 0.134697
P2 = 0.210465
P3 = 0.21922
P4 = 0.171284
P5 = 0.115703
P6 = 0.068895
P7 = 0.0366331
Нормировочное условие: 1
Нормировочное условие выполняется.
-------------------------------------------------------------------------
ОПЕРАЦИОННЫЕ ХАРАКТЕРИСТИКИ:
Среднее число требований в системе Ncp = 3.14674
Средняя длина очереди Nq = 0.60937
Среднее время пребывания требования в системе T = 1.25869 c
Среднее время пребывания требования в очереди Tq = 0.24375 c
Вероятность отказа P7 = Pomk = 0.03663
Относительная пропускная способность Q = 1 - Pomk = 0.96337
Диаграмма вероятностей состояний системы приведена на рисунке 2.3.
Рисунок 2.3 — Вероятности
состояний системы М/М/4/7
с ограниченным временем ожидания
Задание:
В соответствии с номером компьютера произвести расчет операционных характеристик системы со следующими параметрами:
№1: λ=1.25, =1, v=2; №2: λ=1.25, =2, v=0.2;
№3: λ=0.25, =1, v=0.5; №4: λ=1.25, =0.1, v=2.5;
№5: λ=25, =5, v=10; №6: λ=12.5, =0.1, v=25;
№7: λ=0.1, =0.1, v=2.5; №8: λ=8, =2, v=5;
В программе предусмотреть "привязку" обозначения Р0(t) к своему графику.
Построить зависимость среднего времени пребывания в очереди от интенсивности входного потока требований.
Построить зависимость среднего времени пребывания в очереди от интенсивности обслуживания.
Построить зависимость среднего времени пребывания в очереди от интенсивности ухода из очереди "нетерпеливых" требований.
Построить зависимость средней величины очереди от интенсивности входного потока требований.
Построить зависимость средней величины очереди от интенсивности обслуживания.
Построить зависимость средней величины очереди от интенсивности ухода из очереди "нетерпеливых" требований.
