Example #1
0
        public ActionResult DeleteConfirmed(Guid id)
        {
            AgingScheme agingScheme = db.AgingSchemes.Find(id);

            db.AgingSchemes.Remove(agingScheme);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #2
0
 public ActionResult Edit([Bind(Include = "AgingSchemeId,SchemeName,DefaultIncrement,MaxQuality,ScrapOnExpiration,ProductId,LastUpdated")] AgingScheme agingScheme)
 {
     if (ModelState.IsValid)
     {
         db.Entry(agingScheme).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ProductId = new SelectList(db.Products, "ProductId", "ProductName", agingScheme.ProductId);
     return(View(agingScheme));
 }
Example #3
0
        public ActionResult Create([Bind(Include = "AgingSchemeId,SchemeName,DefaultIncrement,MaxQuality,ScrapOnExpiration,ProductId,LastUpdated")] AgingScheme agingScheme)
        {
            if (ModelState.IsValid)
            {
                agingScheme.AgingSchemeId = Guid.NewGuid();
                db.AgingSchemes.Add(agingScheme);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.ProductId = new SelectList(db.Products, "ProductId", "ProductName", agingScheme.ProductId);
            return(View(agingScheme));
        }
Example #4
0
        // GET: AgingSchemes/Details/5
        public ActionResult Details(Guid?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            AgingScheme agingScheme = db.AgingSchemes.Find(id);

            if (agingScheme == null)
            {
                return(HttpNotFound());
            }
            return(View(agingScheme));
        }
Example #5
0
        // GET: AgingSchemes/Edit/5
        public ActionResult Edit(Guid?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            AgingScheme agingScheme = db.AgingSchemes.Find(id);

            if (agingScheme == null)
            {
                return(HttpNotFound());
            }
            ViewBag.ProductId = new SelectList(db.Products, "ProductId", "ProductName", agingScheme.ProductId);
            return(View(agingScheme));
        }
Example #6
0
        public static IntArray CalculateAgeLimits(this AgingScheme scheme, int ageGap, int numberOfLayers)
        {
            IEnumerable <int> schemeGenerator;

            switch (scheme)
            {
            case AgingScheme.Linear: schemeGenerator = LinearAgingScheme(); break;

            case AgingScheme.Fibonacci: schemeGenerator = FibonacciAgingScheme(); break;

            case AgingScheme.Polynomial: schemeGenerator = PolynomialAgingScheme(2); break;

            case AgingScheme.Exponential: schemeGenerator = ExponentialAgingScheme(2); break;

            default: throw new NotSupportedException("Aging Scheme " + scheme + " is not supported.");
            }

            return(new IntArray(schemeGenerator.Select(a => a * ageGap).Take(numberOfLayers).ToArray()));
        }
Example #7
0
 private void ParameterizeAgeLimits()
 {
     AgeLimits = AgingScheme.CalculateAgeLimits(AgeGap, NumberOfLayers);
 }
Example #8
0
        public static void ConfigureAlpsGeneticAlgorithmParameters <S, C, M>(AlpsGeneticAlgorithm ga, int numberOfLayers, int popSize, double mutationRate, int elites, bool plusSelection, AgingScheme agingScheme, int ageGap, double ageInheritance, int maxGens)
            where S : ISelector
            where C : ICrossover
            where M : IManipulator
        {
            ga.Seed.Value            = 0;
            ga.SetSeedRandomly.Value = true;

            ga.NumberOfLayers.Value = numberOfLayers;
            ga.PopulationSize.Value = popSize;

            ga.Selector  = ga.SelectorParameter.ValidValues.OfType <S>().Single();
            ga.Crossover = ga.CrossoverParameter.ValidValues.OfType <C>().Single();
            ga.Mutator   = ga.MutatorParameter.ValidValues.OfType <M>().Single();
            ga.MutationProbability.Value = mutationRate;
            ga.Elites.Value  = elites;
            ga.PlusSelection = plusSelection;

            ga.AgingScheme          = new EnumValue <AgingScheme>(agingScheme);
            ga.AgeGap.Value         = ageGap;
            ga.AgeInheritance.Value = ageInheritance;

            ga.MaximumGenerations = maxGens;

            ga.Engine = new ParallelEngine.ParallelEngine();
        }