private void StartDrawing() { string fileName = ChoseFileToLoad(); var crossTypeNumber = this.CrossingMethod.Controls.OfType <RadioButton>().FirstOrDefault(r => r.Checked).TabIndex; var _fileLoader = new FileLoader(fileName); DataParser dataParser = new DataParser(); dataParser.ParseDataFromFileStream(_fileLoader.GetFileStream()); var oTTP = new TTP(); oTTP.StartGeneticTTP(Env.POP_SIZE, Env.GENERATION_COUNT, Env.SORT_TYPE, Env.MUT_RATE, crossTypeNumber); //oTTP._generationFittnesMap; foreach (KeyValuePair <int, double> pair in oTTP._generationMaxFittnesMap) { this.chart1.Series["max"].Points.AddXY(pair.Key, pair.Value); } foreach (KeyValuePair <int, double> pair in oTTP._generationMinFittnesMap) { this.chart1.Series["min"].Points.AddXY(pair.Key, pair.Value); } foreach (KeyValuePair <int, double> pair in oTTP._generationAvgFittnesMap) { this.chart1.Series["avg"].Points.AddXY(pair.Key, pair.Value); } this.MaxValue.Text = oTTP._bestG.ToString(); this.MinValue.Text = oTTP._worstG.ToString(); }
public void FitFunctionTest() { DataContainer container = DataContainer.Instance; container.Capacity = 6; container.Dimension = 4; container.MaxSpeed = 1.5; container.MinSpeed = 0.6; City cityA = new City(1, 1, 1); City cityB = new City(2, 4, 5); City cityC = new City(3, 8, 2); City cityD = new City(4, 2, -6); cityB.ItemsInCity.Add(new Item(1, 8, 3, 2)); cityC.ItemsInCity.Add(new Item(2, 6, 5, 3)); cityD.ItemsInCity.Add(new Item(3, 3, 1, 4)); List <City> cities = new List <City>() { cityA, cityB, cityC, cityD }; DataContainer dc = DataContainer.Instance; dc._Cities = cities; SubjectTraveller st = new SubjectTraveller(4, 0.4, cityA); st.FirstCity = cityA; st.TripPlan = new City[] { cityB, cityC, cityD }; TTP tsp = new TTP(); double result = tsp.FittnesFunction(st); Console.WriteLine("Result is {0}", result); Assert.IsTrue(true); }
private void SolveTSP() { TTP oTSP = new TTP(); oTSP.StartGeneticTTP(Env.POP_SIZE, Env.GENERATION_COUNT, Env.SORT_TYPE, Env.MUT_RATE, 2); }