/// <summary> /// Constructor that generates default values for all fields. /// </summary> /// <param name="param">Not used.</param> public DemandDownPeriodConfiguration(DefaultConstructorIdentificationClass param) : this() { // Default values OrderDownAndUpTimes = new List <Skvp <double, bool> >() { new Skvp <double, bool>() { Key = TimeSpan.FromHours(0).TotalSeconds, Value = true }, new Skvp <double, bool>() { Key = TimeSpan.FromHours(6).TotalSeconds, Value = false }, new Skvp <double, bool>() { Key = TimeSpan.FromHours(22).TotalSeconds, Value = true }, }; BundleDownAndUpTimes = new List <Skvp <double, bool> >() { new Skvp <double, bool>() { Key = TimeSpan.FromHours(0).TotalSeconds, Value = true }, new Skvp <double, bool>() { Key = TimeSpan.FromHours(6).TotalSeconds, Value = false }, new Skvp <double, bool>() { Key = TimeSpan.FromHours(22).TotalSeconds, Value = true }, }; }
/// <summary> /// Contructor that generates default values for all fields. /// </summary> /// <param name="param">Not used.</param> public ScheduledMethodManagementConfiguration(DefaultConstructorIdentificationClass param) { ScheduledPodStorageManagers = new List <Skvp <double, PodStorageMethodType> >() { new Skvp <double, PodStorageMethodType>() { Key = 0.5, Value = PodStorageMethodType.Nearest }, }; }
/// <summary> /// Generates a ColoredWordConfiguration or PoissonInventoryConfiguration with default parameters if need be. /// </summary> public void autogenerate() { if (ItemType == ItemType.Letter && ColoredWordConfiguration == null) { DefaultConstructorIdentificationClass p = new DefaultConstructorIdentificationClass(); ColoredWordConfiguration = new ColoredWordConfiguration(p); } if (OrderMode == OrderMode.Poisson && PoissonInventoryConfiguration == null) { DefaultConstructorIdentificationClass p = new DefaultConstructorIdentificationClass(); PoissonInventoryConfiguration = new PoissonInventoryConfiguration(p); } }
/// <summary> /// Constructor that generates default values for all fields. /// </summary> /// <param name="param">Not used.</param> public ColoredWordConfiguration(DefaultConstructorIdentificationClass param) : this() { ColorProbabilities = new List <Skvp <LetterColors, double> >() { new Skvp <LetterColors, double>() { Key = LetterColors.Blue, Value = 1.0 / 3.0 }, new Skvp <LetterColors, double>() { Key = LetterColors.Green, Value = 1.0 / 3.0 }, new Skvp <LetterColors, double>() { Key = LetterColors.Red, Value = 1.0 / 3.0 } }; }
/// <summary> /// Constructor that generates default values for all fields. /// </summary> /// <param name="param">Not used.</param> public WorkShiftStationActivationConfiguration(DefaultConstructorIdentificationClass param) : this() { Shifts = new List <Skvp <double, bool> >() { new Skvp <double, bool>() { Key = TimeSpan.FromHours(0).TotalSeconds, Value = false }, new Skvp <double, bool>() { Key = TimeSpan.FromHours(6).TotalSeconds, Value = true }, new Skvp <double, bool>() { Key = TimeSpan.FromHours(22).TotalSeconds, Value = false }, }; }
/// <summary> /// Constructor that generates default values for all fields. /// </summary> /// <param name="param">Not used.</param> public BatchInventoryConfiguration(DefaultConstructorIdentificationClass param) : this() { // Once per day completely fill the inventory BundleBatches = new List <Skvp <double, double> >() { new Skvp <double, double>() { Key = TimeSpan.FromHours(7).TotalSeconds, Value = 0.9 } }; // Once per day have a whole bunch of orders OrderBatches = new List <Skvp <double, int> >() { new Skvp <double, int>() { Key = TimeSpan.FromHours(10).TotalSeconds, Value = 400 } }; }
/// <summary> /// Constructor that generates default values for all fields. /// </summary> /// <param name="param">Not used.</param> public PoissonInventoryConfiguration(DefaultConstructorIdentificationClass param) : this() { TimeDependentOrderWeights = new List <Skvp <double, double> >() { new Skvp <double, double>() { Key = TimeSpan.FromHours(0).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 20) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(1).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 10) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(2).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 5) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(3).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 5) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(4).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 10) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(5).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 10) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(6).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 20) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(7).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 20) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(8).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 40) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(9).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 80) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(10).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 80) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(11).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 90) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(12).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 110) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(13).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 80) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(14).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 90) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(15).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 130) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(16).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 180) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(17).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 120) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(18).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 190) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(19).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 250) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(20).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 220) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(21).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 150) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(22).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 110) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(23).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 50) }, }; TimeDependentBundleWeights = new List <Skvp <double, double> >() { new Skvp <double, double>() { Key = TimeSpan.FromHours(0).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 20) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(1).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 40) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(2).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 80) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(3).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 80) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(4).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 90) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(5).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 110) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(6).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 80) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(7).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 90) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(8).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 130) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(9).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 180) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(10).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 120) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(11).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 190) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(12).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 250) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(13).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 220) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(14).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 150) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(15).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 110) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(16).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 50) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(17).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 20) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(18).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 10) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(19).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 5) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(20).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 5) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(21).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 10) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(22).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 10) }, new Skvp <double, double>() { Key = TimeSpan.FromHours(23).TotalSeconds, Value = PoissonGenerator.TranslateIntoRateParameter(TimeSpan.FromMinutes(60), 20) }, }; }