public static void RunPSOIBL() { int k = 9; AccuracyMeasure accuracyMeasure = new AccuracyMeasure(); foreach (string dataset in GetDatasetFolds("datasets.txt")) { //---------------------------------------- Console.WriteLine("Data Table:" + dataset); //---------------------------------------- for (_currentFold = 0; _currentFold < _folds; _currentFold++) { //---------------------------------------- //Console.WriteLine("Fold:" + _currentFold.ToString()); //---------------------------------------- DataMining.Data.Dataset[] tables = LoadTrainingAndTestingData(dataset, _currentFold); DataMining.Data.Dataset trainingSet = tables[0]; DataMining.Data.Dataset testingSet = tables[1]; Dataset datasetFull = Dataset.Merge(trainingSet, testingSet); double quality = 0; try { { KNearestNeighbours knn = SingleTest.CreateKNNClassifier(k, datasetFull, false); quality = SingleTest.TestClassifier(knn, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("KNN: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "KNN", k.ToString(), quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { KNearestNeighbours knnWV = SingleTest.CreateKNNClassifier(k, datasetFull, true); quality = SingleTest.TestClassifier(knnWV, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("KNN-WV: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "KNN-WV", k.ToString(), quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { NearestClassClassifier ncc = SingleTest.CreateNCClassifier(datasetFull); quality = SingleTest.TestClassifier(ncc, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("NNC: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "NNC", quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { KNearestNeighbours knn = SingleTest.CreateKNNPSOIBMinerClassifier(k, datasetFull, false); quality = SingleTest.TestClassifier(knn, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("PSO-KNN: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "PSO-KNN", k.ToString(), quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { KNearestNeighbours knn = SingleTest.CreateKNNPSOIBMinerClassifier(k, datasetFull, true); quality = SingleTest.TestClassifier(knn, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("PSO-KNN-WV: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "PSO-KNN-WV", k.ToString(), quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { KNearestNeighbours knn = SingleTest.CreateKNNPSOIBMinerClassifier_ClassBasedWeights(k, datasetFull, false); quality = SingleTest.TestClassifier(knn, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("PSO-KNN-CB: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "PSO-KNN-CB", k.ToString(), quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { KNearestNeighbours knn = SingleTest.CreateKNNPSOIBMinerClassifier_ClassBasedWeights(k, datasetFull, true); quality = SingleTest.TestClassifier(knn, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("PSO-KNN-CB-WV: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "PSO-KNN-CB-WV", k.ToString(), quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { NearestClassClassifier ncc = SingleTest.CreateNCCPSOIBMinerClassifier(datasetFull); quality = SingleTest.TestClassifier(ncc, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("PSO-NCC: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "PSO-NCC", quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { NearestClassClassifier ncc = SingleTest.CreateNCCPSOIBMinerClassifier_ClassBasedWeights(datasetFull); quality = SingleTest.TestClassifier(ncc, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("PSO-NCC-CB: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "PSO-NCC-CB", quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { GaussianKernelEstimator GKC = SingleTest.CreateGKPSOIBMinerClassifier(datasetFull); quality = SingleTest.TestClassifier(GKC, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("PSO-GKC: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "PSO-GKC", quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } { GaussianKernelEstimator GKC = SingleTest.CreateGKPSOIBMinerClassifier_ClassBaseWeights(datasetFull); quality = SingleTest.TestClassifier(GKC, datasetFull, accuracyMeasure); quality = Math.Round(quality * 100, 2); //------------------------------------------------------------------ Console.WriteLine("PSO-GKC-CB: " + dataset + " - Accuracy=" + quality); SaveResults(dataset, "PSO-GKC-CB", quality.ToString()); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); Console.WriteLine("-------------------------------------------"); } } catch (Exception ex) { LogError(ex); // Console.WriteLine(ex.Message); } } } }