public void StealWhenInCity(CityElement city) { if (city.itemsInTheCity.Count != 0) { ItemElement element = ChoosePerfectItem(city.itemsInTheCity); if (element != null) { knapsack.Add(element); SetParametersOfKnapsack(element); SetSpeedOfThief(); } } }
private TSPSpecimen SwapMutation(TSPSpecimen specimen) { int index1 = random.Next(0, dataLoaded.totalNumberOfCities); int index2 = random.Next(0, dataLoaded.totalNumberOfCities); while (index2 == index1) { index2 = random.Next(0, dataLoaded.totalNumberOfCities); } CityElement city1 = specimen.citiesVisitedInOrder[index1]; CityElement city2 = specimen.citiesVisitedInOrder[index2]; specimen.citiesVisitedInOrder[index1] = city2; specimen.citiesVisitedInOrder[index2] = city1; return(specimen); }