Beispiel #1
0
        public void Initialise(GAController.GAController GAC)
        {
            this.Folder = "";

            GACs = new ObservableCollection <GAController.GAController>();
            GACs.Add(GAC);
        }
Beispiel #2
0
        public void Initialise(string Folder)
        {
            this.Folder = Path.GetFileName(Folder);

            GACs = new ObservableCollection <GAController.GAController>();

            List <string> Folders = new List <string>();

            if (Directory.EnumerateFiles(Folder, "*.xml").Count() > 0)
            {
                //It's a basic folder
                Folders.Add(Folder);
            }

            var dirs = Directory.EnumerateDirectories(Folder);

            if (dirs.Count() > 0 && Directory.EnumerateFiles(dirs.First(), "*.xml").Count() > 0)
            {
                //It's a folder with multiple runs in it
                Folders.AddRange(dirs);
            }

            foreach (var f in Folders)
            {
                var Filename = Directory.EnumerateFiles(f).Last();
                GAController.GAController GAController = new GAController.GAController("");
                GAController.LoadRunFromFileAndSetDefaults(Filename);

                GACs.Add(GAController);
            }
        }
        public static ChartValues <ObservablePoint> GetParetoFront(GAController.GAController GAC)
        {
            var RunManager = GAC.RunManager;

            if (RunManager != null && RunManager.Populations.Count > 0)
            {
                var X = new ChartValues <ObservablePoint>();
                for (int i = 0; i < RunManager.Populations[0].RunMetrics.BestFitnesses.Count; i++)
                {
                    X.Add(new ObservablePoint(RunManager.Populations[0].RunMetrics.TotalFitnessCalculations[i].Value, RunManager.Populations[0].RunMetrics.BestFitnesses[i].Value));
                }
                return(X);
            }
            else
            {
                return(null);
            }
        }