Пример #1
0
 public AcoTsp(AcoOptions acoOptions)
 {
     this.rho           = acoOptions.Rho;
     this.Q             = acoOptions.Q;
     this.antsNum       = acoOptions.AntsNum;
     this.iterationsNum = acoOptions.IterNum;
     ant = new Ant(acoOptions.Alpha, acoOptions.Beta);
 }
        public AntResult Run(List <City> cities, AcoOptions acoOptions)
        {
            AntResult antResult = new AntResult();

            SetDistances(cities);

            tsp = new AcoTsp(acoOptions);
            tsp.Calculate(distances, cities.Count);


            antResult.OptimalDistance = tsp.GetBestTrailLength().ToString();
            antResult.OptimalRoutes   = tsp.GetBestTrail();
            return(antResult);
        }
 public AntResult Calculate(List <City> cities, AcoOptions acoOptions)
 {
     return(acoRunner.Run(cities, acoOptions));
 }