Example #1
0
        void Arrive()

        {
            var customers = Enumerable.Range(0, Empirical.Sample(DefaultRS, Config.ArrivalGroupSizeProbs)).Select(i => new Customer()).ToList();

            foreach (var c in customers)
            {
                c.Id          = ++CustomersCount;
                c.ArrivalTime = ClockTime;
            }
            AllCustomers.AddRange(customers);
            Waiting.Add(customers);
            Start();
            Log("{0} arrived.", customers.Count);
        }
Example #2
0
        public void TestEmpiricalFromFile()
        {
            Console.WriteLine("Testing Empirical.FromFile()");
            Empirical empirical = Empirical.FromFile("resources\\americanages.txt");

            Console.WriteLine("Checking bin count.");
            Expect(empirical.BinCount == 16);

            var edges = new[] { 0.0, 5.0, 10.0, 15.0, 20.0, 25.0, 30.0, 35.0, 40.0, 45.0, 50.0, 55.0, 60.0, 65.0, 75.0, 85.0, 100.0 };

            Console.WriteLine("Checking bin edges (#).");
            Expect(empirical.BinEdges.Length == edges.Length);
            Console.WriteLine("Checking bin edges (values).");
            for (int iEdge = 0; iEdge < edges.Length; iEdge++)
            {
                Expect(empirical.BinEdges[iEdge] == edges[iEdge]);
            }

            var probabilities = new[] {
                0.068139579,
                0.073020819,
                0.072944671,
                0.071844401,
                0.067382041,
                0.068870283,
                0.072882992,
                0.080687295,
                0.079745843,
                0.071396427,
                0.062488581,
                0.047861576,
                0.038395993,
                0.065350307,
                0.043924148,
                0.015065044
            };

            Console.WriteLine("Checking bin values (probabilities).");
            for (int iBin = 0; iBin < empirical.BinCount; iBin++)
            {
                Expect(empirical[iBin] == probabilities[iBin]);
            }

            Console.WriteLine("Empirical.FromFile() passed.");
        }