Assignment-02: Shikha Gupta 11536019 M.Tech (IT)
Assignment-02: Shikha Gupta 11536019 M.Tech (IT)
#include<iostream> #include<cmath> using namespace std; int facto(int x) {int result=1; for(int j=x;j>=1;j--) { result= result*j; }
float lambda,mu,rho,p_knot,number_in_system,time_in_system,service_time,avg_w aiting_time,avg_num_in_queue,a,lambda_eff,x=0,y=0,p_k; int k,m; cout<<"enter arrival rate,service rate and queue limit and number of servers such that service rate should be greater than arrival rate\n"; cout<<"arrival rate(lembda):"; cin>>lambda; cout<<"\nservice rate(mu):"; cin>>mu; cout<<"\nqueue limit(k):"; cin>>k; cout<<"\n Number of servers(m):"; cin>>m; a=lambda/mu; rho=lambda/(m*mu);
for(int i=m+1;i<=k;i++)
{ y += pow(rho,i-m); } p_knot=1/(1+x+(pow(a,m)/facto(m))*y); p_k= float((pow(a,float(k))*p_knot))/float((facto(m)*pow(m,float(k-m)))); lambda_eff=lambda*(1-p_k); cout<<"\nrho:"<<rho; cout<<"\np_knot:"<<p_knot; cout<<"\np_k:"<<p_k; cout<<"\nlambda effective:"<<lambda_eff; avg_num_in_queue=pow(a,m)*rho*p_knot*(1-pow(rho,k-m)-((km)*pow(rho,k-m)*(1-rho)))/(facto(m)*pow(1-rho,2)); avg_waiting_time=avg_num_in_queue/lambda_eff; time_in_system=avg_waiting_time+1/(mu); number_in_system=lambda_eff*time_in_system; cout<<"\n Average number in queue="<<avg_num_in_queue; cout<<"\n average waiting time="<<avg_waiting_time; cout<<"\n time in system="<<time_in_system; cout<<"\n num in system="<< number_in_system;
system("pause"); }
OUTPUT:
OUTPUT:
GPSS World Simulation Report - mmck.9.1 Sunday, April 22, 2012 19:33:25 START TIME 0.000 NAME QUEUE1 SERVER TERM LABEL LOC 1 2 3 4 5 6 7 8 9 10 BLOCK TYPE GENERATE TEST QUEUE GATE ENTER DEPART ADVANCE LEAVE TERMINATE TERMINATE END TIME 2.546 BLOCKS 10 FACILITIES 0 STORAGES 1
VALUE 10001.000 10000.000 10.000 ENTRY COUNT CURRENT COUNT RETRY 101 0 0 101 0 0 101 0 0 101 0 0 101 0 0 101 0 0 101 1 0 100 0 0 100 0 0 0 0 0 AVE.(-0) 0.002
TERM QUEUE RETRY QUEUE1 0 STORAGE DELAY SERVER 0 FEC XN 101 102 PRI 0 0
CURRENT 7 0
NEXT 8 1
PARAMETER
VALUE
OUTPUT: GPSS World Simulation Report - mm1k.8.1 Sunday, April 22, 2012 19:36:24 START TIME 0.000 NAME QUE SERVER TERM LABEL LOC 1 2 3 4 5 6 7 8 ENTRIES 101 BLOCK TYPE GENERATE TEST QUEUE SEIZE DEPART ADVANCE RELEASE TERMINATE UTIL. 0.682 END TIME 2.595 BLOCKS 8 FACILITIES 1 STORAGES 0
VALUE 10000.000 10001.000 8.000 ENTRY COUNT CURRENT COUNT RETRY 104 0 0 104 0 0 104 3 0 101 1 0 100 0 0 100 0 0 100 0 0 100 0 0
TERM FACILITY DELAY SERVER 3 QUEUE RETRY QUE 0 CEC XN 101 FEC XN 105 PRI 0 PRI 0
AVE.(-0) 0.036
CURRENT 4 CURRENT 0
NEXT 5 NEXT 1
PARAMETER
VALUE
PARAMETER
VALUE