Laboratory 

1 Queue vs. 2 Queues: Experiments for calcualting Confidence Intervalls

Experiments (=Procedures) are based on the [Class6 slides (http://wwwisg.cs.uni-magdeburg.de/sim/its/Exercises/06-OutputAnalysis.pdf)].

#version 0.4, 2006-01-16, 17:50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
EXPERIMENT ExpQueueMC1
DECLARATION OF VARIABLES
  numreps (INTEGER) := 10, # Number of repls.
  numRunUpper (INTEGER) := 120, # 2[h] = 2*60[min]
  alpha (REAL) := 0.05, # Level of confidence, 95% Confidence Intervall
  tvalue (REAL) := 2.26, # Value of t distr., = TINV(0,05;9 = 10-1)
  sum (REAL) := 0.0, # Sum of values
  sumdiffsq (REAL) := 0.0, # Terms in variance
  # S^2
  ssquared (REAL) := 0.0, # Sample variance
  # Mean
  mean (REAL) := 0.0, # Mean of values
  # Sigma
  sigma (REAL) := 0.0, # standard error
  hwidth (REAL) := 0.0, # Half-width of c.i.
  ARRAY[10] values (REAL) := 0 # Array for values
BODY OF EXPERIMENT
  CREXP NewExp;
  CRRUN Dummy, QueueMC1;
  CRRUN RunMC1, QueueMC1;
  FOR i FROM 1 TO numreps REPEAT
     SELRUN RunMC1;
     SETCTRL ranseed, i;
     SIMULATE TO, numRunUpper;
     values[i] := <NQueue>;
     DISPLAY("Iteration %4d, Queue length: %f", i, values[i]);
     SELRUN Dummy;
     RESETRUN RunMC1;
  END LOOP
  DELEXP NewExp;
  # statistics:
  # all runs' Mean
  FOR i FROM 1 TO numreps REPEAT
     sum := sum + values[i];
  END LOOP
  mean := sum / numreps;
  # all runs' S^2
  FOR i FROM 1 TO numreps REPEAT
     sumdiffsq := sumdiffsq+(values[i]-mean)*(values[i]-mean);
  END LOOP
  ssquared := sumdiffsq/(numreps-1);
  # all runs' Sigma
  sigma := SQRT(ssquared/numreps);
  hwidth := tvalue * sigma;
  DISPLAY("Mean value: %f \n", mean);
  DISPLAY("C.I. : %f <=mean<= %f\n", mean-hwidth, mean+hwidth);
  DISPLAY("Alpha: %f, replications: %d\n", alpha, numreps);
END OF ExpQueueMC1
Output after 10 runs:
====================
Mean value: 0.400000 
C.I. : -0.099705 <=mean<= 0.899705
Alpha: 0.050000  replications: 10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
EXPERIMENT ExpQueueMC2
DECLARATION OF VARIABLES
  numreps (INTEGER) := 10, # Number of repls.
  numRunUpper (INTEGER) := 72, # 2[h] = 2*60*60[s]
  alpha (REAL) := 0.05, # Level of confidence, 95% Confidence Intervall
  tvalue (REAL) := 2.26, # Value of t distr., = TINV(0,05;9 = 10-1)
  sum (REAL) := 0.0, # Sum of values
  sumdiffsq (REAL) := 0.0, # Terms in variance
  # S^2
  ssquared (REAL) := 0.0, # Sample variance
  # Mean
  mean (REAL) := 0.0, # Mean of values
  # Sigma
  sigma (REAL) := 0.0, # standard error
  hwidth (REAL) := 0.0, # Half-width of c.i.
  ARRAY[10] values (REAL) := 0 # Array for values
BODY OF EXPERIMENT
  CREXP NewExp;
  CRRUN Dummy, QueueMC2;
  CRRUN RunMC2, QueueMC2;
  FOR i FROM 1 TO numreps REPEAT
     SELRUN RunMC2;
     SETCTRL ranseed, i;
     SIMULATE TO, numRunUpper;
     values[i] := <NQueue>;
     DISPLAY("Iteration %4d, Queue length: %f", i, values[i]);
     SELRUN Dummy;
     RESETRUN RunMC2;
  END LOOP
  DELEXP NewExp;
  # statistics:
END OF ExpQueueMC2
Output after 10 runs:
====================
Mean value: 0.200000
C.I. : -0.252000 <=mean<= 0.652000 
Alpha: 0.050000  replications: 10


 Log   Galleries   Laboratory 


If I can't dance, I don't want to be part of your revolution.