Beispiel #1
0
        public AutoserviceGenerators()
        {
            var seed = new GeneratorSeed();

            _gen1 = new ExponencionalDistribution(seed.GetRandomSeed(), 300);
            _gen2 = new DiscreteEmpiricalDistribution(seed, new[]
            {
                new Duration(1, 1, 0.4), new Duration(2, 2, 0.15), new Duration(3, 3, 0.14), new Duration(4, 4, 0.12),
                new Duration(5, 5, 0.1), new Duration(6, 6, 0.09)
            });

            _gen3 = new UniformContinuousDistribution(seed.GetRandomSeed(), 70, 310);
            _gen4 = new UniformContinuousDistribution(seed.GetRandomSeed(), 80, 160);
            _gen5 = new TriangleUniformDistribution(seed.GetRandomSeed(), 120, 540, 240);
            _gen6 = new UniformContinuousDistribution(seed.GetRandomSeed(), 123, 257);
            _gen7 = new DiscreteEmpiricalDistribution(seed, new[]
            {
                new Duration(0, 0, 0.7), new Duration(0, 0, 0.2), new Duration(0, 0, 0.1)
            }, new IGenerators[]
            {
                new UniformDiscreteDistribution(seed.GetRandomSeed(), 2, 20),
                new DiscreteEmpiricalDistribution(seed,
                                                  new[] { new Duration(10, 40, 0.1), new Duration(41, 61, 0.6), new Duration(62, 100, 0.3) }),
                new UniformDiscreteDistribution(seed.GetRandomSeed(), 120, 260)
            });
        }
        private static void generator5(GeneratorSeed seed)
        {
            //preparkovanie auta z parkoviska do dielne alebo naspat ssa riadi
            //trojuholnikovym rozdelenim s parametrami
            //min = 120 s, max 540, a modus = 240 s
            var gen5 = new TriangleUniformDistribution(seed.GetRandomSeed(), 120, 540, 240);

            TestDistributionsToFileDouble(gen5, "generator_5_trojholnikove_min_120_max_540_modus_240.dst");
        }
Beispiel #3
0
        public AutoserviceGenerators(int gen1,
                                     double gen213,
                                     double gen223,
                                     double gen233,
                                     double gen243,
                                     double gen253,
                                     double gen263,
                                     int gen31, int gen32,
                                     int gen41, int gen42,
                                     int gen51, int gen52, int gen53,
                                     int gen61, int gen62,
                                     double gen71, double gen72, double gen73,
                                     int gen711, int gen712,
                                     int gen721, int gen722, double gen723,
                                     int gen731, int gen732, double gen733,
                                     int gen741, int gen742, double gen743,
                                     int gen751, int gen752
                                     )
        {
            var seed = new GeneratorSeed();

            _gen1 = new ExponencionalDistribution(seed.GetRandomSeed(), gen1);
            _gen2 = new DiscreteEmpiricalDistribution(seed, new[]
            {
                new Duration(1, 1, gen213),
                new Duration(2, 2, gen223),
                new Duration(3, 3, gen233),
                new Duration(4, 4, gen243),
                new Duration(5, 5, gen253),
                new Duration(6, 6, gen263)
            });

            _gen3 = new UniformContinuousDistribution(seed.GetRandomSeed(), gen31, gen32);
            _gen4 = new UniformContinuousDistribution(seed.GetRandomSeed(), gen41, gen42);
            _gen5 = new TriangleUniformDistribution(seed.GetRandomSeed(), gen51, gen52, gen53);
            _gen6 = new UniformContinuousDistribution(seed.GetRandomSeed(), gen61, gen62);
            _gen7 = new DiscreteEmpiricalDistribution(seed, new[]
            {
                new Duration(0, 0, gen71), new Duration(0, 0, gen72), new Duration(0, 0, gen73)
            }, new IGenerators[]
            {
                new UniformDiscreteDistribution(seed.GetRandomSeed(), gen711, gen712),
                new DiscreteEmpiricalDistribution(seed,
                                                  new[]
                {
                    new Duration(gen721, gen722, gen723), new Duration(gen731, gen732, gen733),
                    new Duration(gen741, gen742, gen743)
                }),
                new UniformDiscreteDistribution(seed.GetRandomSeed(), gen751, gen752)
            });
        }