// Creates random tour public void GenerateIndividual(double fuel) { for (int cityIndex = 0; cityIndex < TourManager.NumberOfCities(); cityIndex++) { SetCity(cityIndex, TourManager.GetCity(cityIndex)); } SetMaxFuel(fuel); }
// Creates random tour public void GenerateIndividual(double fuel, Random random) { for (int cityIndex = 0; cityIndex < TourManager.NumberOfCities(); cityIndex++) { Boolean choosed = false; AlgCity algCity = new AlgCity(TourManager.GetCity(cityIndex)); algCity.Truck = random.Next(1, 4); while (!choosed) { algCity.Truck = random.Next(1, 4); if (this.trucksLoad[algCity.Truck] >= algCity.Weight) { if (this.tour[0] != null) { this.trucksLoad[algCity.Truck] -= algCity.Weight; } SetCity(cityIndex, algCity); choosed = true; } } } SetMaxFuel(fuel); }