Esempio n. 1
0
        public void makeNewDecision(Base_ACO algorithm, DecisionArchive archive, Random rand, double xi)
        {
            double [] sigma = calcSigma(archive, xi);

            decision = new Decision(algorithm);
            decision.TermOrWeghtClassParams.AddRange(archive[l].TermOrWeghtClassParams);
            for (int j = 0; j < archive[l].TermOrWeghtClassParams.Count; j++)
            {
                decision.TermOrWeghtClassParams[j] = Base_ACO.BoxMullerTransform(sigma[j], decision.TermOrWeghtClassParams[j], rand);
            }
        }
Esempio n. 2
0
 public void FillRandom(double [] Params, Random rand, bool is_rand = true)
 {
     for (int i = 0; i < Params.Count(); i++)
     {
         if (is_rand)
         {
             TermOrWeghtClassParams.Add(Base_ACO.BoxMullerTransform(0.1 * Params[i], Params[i], rand));
         }
         else
         {
             TermOrWeghtClassParams.Add(Params[i]);
         }
     }
 }