def __init__(self, batchsize, buffersizeA, buffersizeB, buffersizeC): self.batchsize = batchsize self.buffersizeA = buffersizeA self.buffersizeB = buffersizeB self.buffersizeC = buffersizeC self.samples = [] for i, seed in enumerate(seeds): # print('Running {}th simulation at {}'.format(i, str(time() - start_time))) factory = Factory(11, 8, self.batchsize, self.buffersizeA, self.buffersizeB, self.buffersizeC, seed, duration, silent=True) factory.play() factory.start() factory.update_stats() sample = Sample(seed, factory.stats['time'], factory.stats['total produced'], factory.stats['average produced'], factory.stats['average throughput']) self.samples.append(sample) self.mean_produced, self.deviation_produced, *self.confidence_interval_produced = ( self.mean_confidence_interval([float(s.total_produced) for s in self.samples]) ) self.mean_throughput, self.deviation_throughput, *self.confidence_interval_throughput = ( self.mean_confidence_interval([float(s.average_throughput) for s in self.samples]) )