- Timestamp:
- 04/01/11 17:15:41 (13 years ago)
- Location:
- branches/HeuristicLab.MetaOptimization/HeuristicLab.MetaOptimization.Test
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.MetaOptimization/HeuristicLab.MetaOptimization.Test/HeuristicLab.MetaOptimization.Test.csproj
r5522 r5927 53 53 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.ALGLIB-3.1.0.dll</HintPath> 54 54 </Reference> 55 <Reference Include="HeuristicLab.Algorithms.DataAnalysis-3. 3">56 <HintPath> C:\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.DataAnalysis-3.3.dll</HintPath>57 </Reference> 58 <Reference Include="HeuristicLab.Algorithms.DataAnalysis.Views-3. 3">59 <HintPath> C:\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.DataAnalysis.Views-3.3.dll</HintPath>55 <Reference Include="HeuristicLab.Algorithms.DataAnalysis-3.4"> 56 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.DataAnalysis-3.4.dll</HintPath> 57 </Reference> 58 <Reference Include="HeuristicLab.Algorithms.DataAnalysis.Views-3.4"> 59 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.DataAnalysis.Views-3.4.dll</HintPath> 60 60 </Reference> 61 61 <Reference Include="HeuristicLab.Algorithms.EvolutionStrategy-3.3"> … … 68 68 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.LocalSearch-3.3.dll</HintPath> 69 69 </Reference> 70 <Reference Include="HeuristicLab.Algorithms.NSGA2-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 71 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.NSGA2-3.3.dll</HintPath> 72 </Reference> 70 73 <Reference Include="HeuristicLab.Algorithms.OffspringSelectionGeneticAlgorithm-3.3"> 71 74 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.OffspringSelectionGeneticAlgorithm-3.3.dll</HintPath> 72 75 </Reference> 76 <Reference Include="HeuristicLab.Algorithms.ParticleSwarmOptimization-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 77 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.ParticleSwarmOptimization-3.3.dll</HintPath> 78 </Reference> 73 79 <Reference Include="HeuristicLab.Algorithms.SimulatedAnnealing-3.3"> 74 80 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.SimulatedAnnealing-3.3.dll</HintPath> … … 77 83 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.TabuSearch-3.3.dll</HintPath> 78 84 </Reference> 85 <Reference Include="HeuristicLab.Algorithms.VariableNeighborhoodSearch-3.3"> 86 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Algorithms.VariableNeighborhoodSearch-3.3.dll</HintPath> 87 </Reference> 79 88 <Reference Include="HeuristicLab.Analysis-3.3"> 80 89 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Analysis-3.3.dll</HintPath> … … 113 122 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.DataAccess-3.3.dll</HintPath> 114 123 </Reference> 124 <Reference Include="HeuristicLab.DebugEngine-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 125 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.DebugEngine-3.3.dll</HintPath> 126 </Reference> 115 127 <Reference Include="HeuristicLab.Encodings.BinaryVectorEncoding-3.3"> 116 128 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Encodings.BinaryVectorEncoding-3.3.dll</HintPath> … … 128 140 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Encodings.RealVectorEncoding-3.3.dll</HintPath> 129 141 </Reference> 130 <Reference Include="HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3. 3">131 <HintPath> C:\Program Files\HeuristicLab 3.3\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.3.dll</HintPath>132 </Reference> 133 <Reference Include="HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3. 3">134 <HintPath> C:\Program Files\HeuristicLab 3.3\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.3.dll</HintPath>142 <Reference Include="HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4"> 143 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.dll</HintPath> 144 </Reference> 145 <Reference Include="HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4"> 146 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4.dll</HintPath> 135 147 </Reference> 136 148 <Reference Include="HeuristicLab.Hive.Contracts-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> … … 236 248 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath> 237 249 </Reference> 238 <Reference Include="HeuristicLab.Problems.ArtificialAnt-3.3"> 239 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.ArtificialAnt-3.3.dll</HintPath> 240 </Reference> 241 <Reference Include="HeuristicLab.Problems.ArtificialAnt.Views-3.3"> 242 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.ArtificialAnt.Views-3.3.dll</HintPath> 243 </Reference> 244 <Reference Include="HeuristicLab.Problems.DataAnalysis-3.3"> 245 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis-3.3.dll</HintPath> 246 </Reference> 247 <Reference Include="HeuristicLab.Problems.DataAnalysis.Classification-3.3"> 248 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Classification-3.3.dll</HintPath> 249 </Reference> 250 <Reference Include="HeuristicLab.Problems.DataAnalysis.Classification.Views-3.3"> 251 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Classification.Views-3.3.dll</HintPath> 252 </Reference> 253 <Reference Include="HeuristicLab.Problems.DataAnalysis.Regression-3.3"> 254 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Regression-3.3.dll</HintPath> 255 </Reference> 256 <Reference Include="HeuristicLab.Problems.DataAnalysis.Views-3.3"> 257 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Views-3.3.dll</HintPath> 250 <Reference Include="HeuristicLab.Problems.ArtificialAnt-3.4"> 251 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.ArtificialAnt-3.4.dll</HintPath> 252 </Reference> 253 <Reference Include="HeuristicLab.Problems.ArtificialAnt.Views-3.4"> 254 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.ArtificialAnt.Views-3.4.dll</HintPath> 255 </Reference> 256 <Reference Include="HeuristicLab.Problems.DataAnalysis-3.4"> 257 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis-3.4.dll</HintPath> 258 </Reference> 259 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic-3.4"> 260 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.dll</HintPath> 261 </Reference> 262 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic.Classification-3.4"> 263 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Symbolic.Classification-3.4.dll</HintPath> 264 </Reference> 265 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views-3.4"> 266 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views-3.4.dll</HintPath> 267 </Reference> 268 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4"> 269 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4.dll</HintPath> 270 </Reference> 271 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views-3.4"> 272 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views-3.4.dll</HintPath> 273 </Reference> 274 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4"> 275 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4.dll</HintPath> 276 </Reference> 277 <Reference Include="HeuristicLab.Problems.DataAnalysis.Views-3.4"> 278 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Views-3.4.dll</HintPath> 258 279 </Reference> 259 280 <Reference Include="HeuristicLab.Problems.ExternalEvaluation-3.3"> 260 281 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.ExternalEvaluation-3.3.dll</HintPath> 261 282 </Reference> 262 <Reference Include="HeuristicLab.Problems.ExternalEvaluation.GP-3. 3">263 <HintPath> C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.ExternalEvaluation.GP-3.3.dll</HintPath>283 <Reference Include="HeuristicLab.Problems.ExternalEvaluation.GP-3.4"> 284 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.ExternalEvaluation.GP-3.4.dll</HintPath> 264 285 </Reference> 265 286 <Reference Include="HeuristicLab.Problems.ExternalEvaluation.GP.Views-3.3"> … … 274 295 <Reference Include="HeuristicLab.Problems.Knapsack.Views-3.3"> 275 296 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.Knapsack.Views-3.3.dll</HintPath> 276 </Reference>277 <Reference Include="HeuristicLab.Problems.MetaOptimization-3.3">278 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.MetaOptimization-3.3.dll</HintPath>279 </Reference>280 <Reference Include="HeuristicLab.Problems.MetaOptimization.Views-3.3">281 <HintPath>C:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.MetaOptimization.Views-3.3.dll</HintPath>282 297 </Reference> 283 298 <Reference Include="HeuristicLab.Problems.OneMax-3.3"> … … 372 387 <None Include="app.config" /> 373 388 </ItemGroup> 389 <ItemGroup> 390 <ProjectReference Include="..\HeuristicLab.Problems.MetaOptimization.Views\3.3\HeuristicLab.Problems.MetaOptimization.Views-3.3.csproj"> 391 <Project>{59567338-A551-4386-8405-A8C0DF3E376D}</Project> 392 <Name>HeuristicLab.Problems.MetaOptimization.Views-3.3</Name> 393 </ProjectReference> 394 <ProjectReference Include="..\HeuristicLab.Problems.MetaOptimization\3.3\HeuristicLab.Problems.MetaOptimization-3.3.csproj"> 395 <Project>{ABBC1DF6-FCC6-4F86-AB75-B6B3A72E7D17}</Project> 396 <Name>HeuristicLab.Problems.MetaOptimization-3.3</Name> 397 </ProjectReference> 398 </ItemGroup> 374 399 <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> 375 400 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
branches/HeuristicLab.MetaOptimization/HeuristicLab.MetaOptimization.Test/Program.cs
r5665 r5927 14 14 using HeuristicLab.Core; 15 15 using HeuristicLab.Data; 16 using HeuristicLab.Encodings.RealVectorEncoding; 16 17 using HeuristicLab.Hive.ExperimentManager; 17 18 using HeuristicLab.Optimization; … … 19 20 using HeuristicLab.PluginInfrastructure; 20 21 using HeuristicLab.PluginInfrastructure.Manager; 22 using HeuristicLab.Problems.DataAnalysis.Symbolic; 23 using HeuristicLab.Problems.DataAnalysis.Symbolic.Regression; 21 24 using HeuristicLab.Problems.MetaOptimization; 22 25 using HeuristicLab.Problems.TestFunctions; … … 46 49 //private static int baseAlgorithmMaxGenerations = 1000; 47 50 48 private static int metaAlgorithmPopulationSize = 5;51 private static int metaAlgorithmPopulationSize = 10; 49 52 private static int metaAlgorithmMaxGenerations = 15; 50 private static int metaProblemRepetitions = 2;51 private static int baseAlgorithmMaxGenerations = 5;53 private static int metaProblemRepetitions = 3; 54 private static int baseAlgorithmMaxGenerations = 10; 52 55 private static double mutationProbability = 0.10; 53 56 … … 74 77 //TestNormalCrossover(); 75 78 //TestItemDictionary(); 76 79 80 //TestSymbolicDataAnalysisGrammar(); return; 81 77 82 MetaOptimizationProblem metaOptimizationProblem = new MetaOptimizationProblem(); 78 83 metaOptimizationProblem.Repetitions = new IntValue(metaProblemRepetitions); … … 90 95 //Console.WriteLine("Press enter to start"); 91 96 //Console.ReadLine(); 92 TestConfiguration(algorithmVc, new GeneticAlgorithm() { Problem = new SingleObjectiveTestFunctionProblem() });97 TestConfiguration(algorithmVc, typeof(GeneticAlgorithm), metaOptimizationProblem.Problems.First()); 93 98 94 99 Console.WriteLine("Press enter to start"); … … 99 104 100 105 Console.ReadLine(); 106 } 107 108 private void TestSymbolicDataAnalysisGrammar() { 109 var random = new MersenneTwister(); 110 111 var grammar1 = new TypeCoherentExpressionGrammar(); 112 var grammar2 = new TypeCoherentExpressionGrammar(); 113 114 grammar2.Symbols.Single(x => x.Name == "Addition").InitialFrequency = 0.5; 115 116 Console.WriteLine("========== Grammar1: =========="); 117 PrintGrammar(grammar1); 118 Console.WriteLine("========== Grammar2: =========="); 119 PrintGrammar(grammar2); 120 121 122 RealVector v1 = GetInitialFrequenciesAsRealVector(grammar1); 123 RealVector v2 = GetInitialFrequenciesAsRealVector(grammar2); 124 125 for (int i = 0; i < 10; i++) { 126 RealVector v3 = DiscreteCrossover.Apply(random, new ItemArray<RealVector>(new List<RealVector> { v1, v2 })); 127 128 var grammar3 = new TypeCoherentExpressionGrammar(); 129 SetInitialFrequenciesFromRealVector(grammar3, v3); 130 131 Console.WriteLine("\n========== Crossed: =========="); 132 PrintGrammar(grammar3); 133 } 134 135 } 136 137 private static void PrintGrammar(TypeCoherentExpressionGrammar grammar) { 138 foreach (var symbol in grammar.Symbols) { 139 Console.WriteLine("{0} ({1})", symbol.ToString(), symbol.InitialFrequency); 140 } 141 } 142 143 private static RealVector GetInitialFrequenciesAsRealVector(TypeCoherentExpressionGrammar grammar) { 144 var vector = new RealVector(grammar.Symbols.Count()); 145 for (int i = 0; i < grammar.Symbols.Count(); i++) { 146 vector[i] = grammar.Symbols.ElementAt(i).InitialFrequency; 147 } 148 return vector; 149 } 150 151 private static void SetInitialFrequenciesFromRealVector(TypeCoherentExpressionGrammar grammar, RealVector vector) { 152 for (int i = 0; i < grammar.Symbols.Count(); i++) { 153 grammar.Symbols.ElementAt(i).InitialFrequency = vector[i]; 154 } 101 155 } 102 156 … … 384 438 // because creating ThreadLocal<T> takes all the runtime. 385 439 // when the algs are not stored in a list however this effect does not occur. 386 440 387 441 388 442 for (int i = 0; i < 1000; i++) { … … 557 611 private static void TestTypeDiscovery() { 558 612 PluginLoader.pluginAssemblies.Any(); 559 613 560 614 var items = ApplicationManager.Manager.GetInstances(typeof(DoubleArray)).ToArray(); 561 615 … … 638 692 private static ParameterConfigurationTree SetupGAAlgorithm(Type baseLevelAlgorithmType, MetaOptimizationProblem metaOptimizationProblem) { 639 693 metaOptimizationProblem.AlgorithmType.Value = baseLevelAlgorithmType; 640 metaOptimizationProblem.ProblemType.Value = typeof(SingleObjectiveTestFunctionProblem); 641 ParameterConfigurationTree algorithmVc = metaOptimizationProblem.ParameterConfigurationTree; 642 ((IntValue)algorithmVc.AlgorithmConfiguration.ParameterConfigurations.Single(x => x.Name == "MaximumGenerations").ActualValue.Value).Value = baseAlgorithmMaxGenerations; 643 644 metaOptimizationProblem.Problems.Clear(); 645 metaOptimizationProblem.Problems.Add(new HeuristicLab.Problems.TestFunctions.SingleObjectiveTestFunctionProblem() { 646 Evaluator = new GriewankEvaluator(), 647 ProblemSize = new IntValue(2) 648 }); 694 //metaOptimizationProblem.Problems.Clear(); 695 696 //metaOptimizationProblem.ProblemType.Value = typeof(SingleObjectiveTestFunctionProblem); 697 //metaOptimizationProblem.Problems.Add(new HeuristicLab.Problems.TestFunctions.SingleObjectiveTestFunctionProblem() { 698 // Evaluator = new GriewankEvaluator(), 699 // ProblemSize = new IntValue(2) 700 //}); 649 701 //metaOptimizationProblem.Problems.Add(new HeuristicLab.Problems.TestFunctions.SingleObjectiveTestFunctionProblem() { 650 702 // Evaluator = new GriewankEvaluator(), … … 656 708 //}); 657 709 658 ConfigurePopulationSize(algorithmVc, 15, 20, 1); 710 metaOptimizationProblem.ProblemType.Value = typeof(SymbolicRegressionSingleObjectiveProblem); 711 712 ParameterConfigurationTree algorithmVc = metaOptimizationProblem.ParameterConfigurationTree; 713 ((IntValue)algorithmVc.AlgorithmConfiguration.ParameterConfigurations.Single(x => x.Name == "MaximumGenerations").ActualValue.Value).Value = baseAlgorithmMaxGenerations; 714 715 //ConfigurePopulationSize(algorithmVc, 15, 20, 1); 659 716 ConfigureMutationRate(algorithmVc, 0.0, 1.0, 0.01); 660 //ConfigureMutationOperator(algorithmVc);717 ConfigureMutationOperator(algorithmVc); 661 718 //ConfigureElites(algorithmVc, 0, 8, 1); 662 719 //ConfigureSelectionOperator(algorithmVc, true); 720 721 ConfigureSymbolicExpressionGrammar(algorithmVc); 722 663 723 return algorithmVc; 664 724 } 665 725 666 private static void TestConfiguration(ParameterConfigurationTree algorithmVc, GeneticAlgorithm baseLevelAlgorithm) { 726 private static void ConfigureSymbolicExpressionGrammar(ParameterConfigurationTree vc) { 727 var pc = vc.ProblemConfiguration.ParameterConfigurations.Single(x => x.Name == "SymbolicExpressionTreeGrammar"); 728 pc.Optimize = true; 729 730 SymbolicExpressionGrammarValueConfiguration symbolicExpressionGrammarVc = null; 731 foreach (var valconf in pc.ValueConfigurations) { 732 if (valconf.ActualValue.Value.ItemName != "TypeCoherentExpressionGrammar") { 733 pc.ValueConfigurations.SetItemCheckedState(valconf, false); 734 } else { 735 symbolicExpressionGrammarVc = valconf as SymbolicExpressionGrammarValueConfiguration; 736 } 737 } 738 symbolicExpressionGrammarVc.Optimize = true; 739 740 var additionPc = symbolicExpressionGrammarVc.ParameterConfigurations.Single(x => x.Name == "Addition"); 741 additionPc.Optimize = true; 742 var initialFrequencyVc = ((ParameterizedValueConfiguration)additionPc.ValueConfigurations.First()).ParameterConfigurations.Single(x => x.Name == "InitialFrequency"); 743 initialFrequencyVc.Optimize = true; 744 } 745 746 private static void TestConfiguration(ParameterConfigurationTree algorithmVc, Type baseLevelAlgorithmType, IProblem problem) { 667 747 IRandom rand = new FastRandom(0); 748 var baseLevelAlgorithm = (GeneticAlgorithm)MetaOptimizationUtil.CreateParameterizedAlgorithmInstance(algorithmVc, baseLevelAlgorithmType, problem); 749 668 750 // set random values 669 751 for (int i = 0; i < 10; i++) { … … 739 821 740 822 // uncheck multiMutator to avoid Michalewicz issue 741 var multiMutator = mutationOperator.ValueConfigurations.Where(x => x.ActualValue.Value != null && x.ActualValue.Value.ItemName.StartsWith("Multi")).SingleOrDefault();742 if (multiMutator != null) {743 mutationOperator.ValueConfigurations.SetItemCheckedState(multiMutator, false);744 }823 //var multiMutator = mutationOperator.ValueConfigurations.Where(x => x.ActualValue.Value != null && x.ActualValue.Value.ItemName.StartsWith("Multi")).SingleOrDefault(); 824 //if (multiMutator != null) { 825 // mutationOperator.ValueConfigurations.SetItemCheckedState(multiMutator, false); 826 //} 745 827 746 828 // add another normal - don't do this with 'new', because ActualNames will not be set correctly. It should be copied from an existing one … … 864 946 var orderedRuns = rc.OrderBy(x => x.Results["AverageQualityNormalized"]); 865 947 866 TableBuilder tb = new TableBuilder("QNorm", "Qualities"/*, "PoSi" /* "MutRa", "Eli", "SelOp", "MutOp", "NrSelSubScopes"*/);948 TableBuilder tb = new TableBuilder("QNorm", "Qualities"/*, "PoSi"*/ ,"MutRa" /*,"Eli", "SelOp"*/, "MutOp"/*, "NrSelSubScopes"*/); 867 949 foreach (IRun run in orderedRuns) { 868 950 //string selector; … … 874 956 875 957 tb.AppendRow( 876 ((DoubleValue)run.Results["AverageQualityNormalized"]).Value.ToString("#0.0000") ,877 ((DoubleArray)run.Results["RunsAverageQualities"]).ToString()878 // ((IntValue)run.Parameters["PopulationSize"]).Value.ToString(),879 //((DoubleValue)run.Parameters["MutationProbability"]).Value.ToString("0.0000"),880 // ((IntValue)run.Parameters["Elites"]).Value.ToString(),881 // Shorten(selector, 20),882 //Shorten(run.Parameters.ContainsKey("Mutator") ? run.Parameters["Mutator"].ToString() : "null", 40),883 // ((ISelector)run.Parameters["Selector"]).NumberOfSelectedSubScopesParameter.Value.ToString()958 ((DoubleValue)run.Results["AverageQualityNormalized"]).Value.ToString("#0.0000") 959 ,((DoubleArray)run.Results["RunsAverageQualities"]).ToString() 960 //,((IntValue)run.Parameters["PopulationSize"]).Value.ToString() 961 ,((DoubleValue)run.Parameters["MutationProbability"]).Value.ToString("0.0000") 962 //,((IntValue)run.Parameters["Elites"]).Value.ToString() 963 //,Shorten(selector, 20) 964 ,Shorten(run.Parameters.ContainsKey("Mutator") ? run.Parameters["Mutator"].ToString() : "null", 40) 965 //,((ISelector)run.Parameters["Selector"]).NumberOfSelectedSubScopesParameter.Value.ToString() 884 966 ); 885 967 }
Note: See TracChangeset
for help on using the changeset viewer.