- Timestamp:
- 07/16/15 11:48:59 (9 years ago)
- Location:
- branches/PerformanceComparison
- Files:
-
- 2 added
- 1 edited
- 2 copied
Legend:
- Unmodified
- Added
- Removed
-
branches/PerformanceComparison/HeuristicLab.Analysis/3.3/HeuristicLab.Analysis-3.3.csproj
r12139 r12764 41 41 <DebugType>full</DebugType> 42 42 <Optimize>false</Optimize> 43 <OutputPath> $(SolutionDir)\bin\</OutputPath>43 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 44 44 <DefineConstants>DEBUG;TRACE</DefineConstants> 45 45 <ErrorReport>prompt</ErrorReport> … … 51 51 <DebugType>pdbonly</DebugType> 52 52 <Optimize>true</Optimize> 53 <OutputPath> $(SolutionDir)\bin\</OutputPath>53 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 54 54 <DefineConstants>TRACE</DefineConstants> 55 55 <ErrorReport>prompt</ErrorReport> … … 62 62 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> 63 63 <DebugSymbols>true</DebugSymbols> 64 <OutputPath> $(SolutionDir)\bin\</OutputPath>64 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 65 65 <DefineConstants>DEBUG;TRACE</DefineConstants> 66 66 <DebugType>full</DebugType> … … 71 71 </PropertyGroup> 72 72 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> 73 <OutputPath> $(SolutionDir)\bin\</OutputPath>73 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 74 74 <DefineConstants>TRACE</DefineConstants> 75 75 <DocumentationFile> … … 84 84 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' "> 85 85 <DebugSymbols>true</DebugSymbols> 86 <OutputPath> $(SolutionDir)\bin\</OutputPath>86 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 87 87 <DefineConstants>DEBUG;TRACE</DefineConstants> 88 88 <DebugType>full</DebugType> … … 93 93 </PropertyGroup> 94 94 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' "> 95 <OutputPath> $(SolutionDir)\bin\</OutputPath>95 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 96 96 <DefineConstants>TRACE</DefineConstants> 97 97 <DocumentationFile> … … 107 107 <Reference Include="ALGLIB-3.7.0, Version=3.7.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 108 108 <HintPath>..\..\bin\ALGLIB-3.7.0.dll</HintPath> 109 <Private>False</Private> 110 </Reference> 111 <Reference Include="HeuristicLab.Collections-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 112 <SpecificVersion>False</SpecificVersion> 113 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Collections-3.3.dll</HintPath> 114 <Private>False</Private> 115 </Reference> 116 <Reference Include="HeuristicLab.Common-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 117 <SpecificVersion>False</SpecificVersion> 118 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common-3.3.dll</HintPath> 119 <Private>False</Private> 120 </Reference> 121 <Reference Include="HeuristicLab.Common.Resources-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 122 <SpecificVersion>False</SpecificVersion> 123 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common.Resources-3.3.dll</HintPath> 124 <Private>False</Private> 125 </Reference> 126 <Reference Include="HeuristicLab.Core-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 127 <SpecificVersion>False</SpecificVersion> 128 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Core-3.3.dll</HintPath> 129 <Private>False</Private> 130 </Reference> 131 <Reference Include="HeuristicLab.Data-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 132 <SpecificVersion>False</SpecificVersion> 133 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Data-3.3.dll</HintPath> 134 <Private>False</Private> 135 </Reference> 136 <Reference Include="HeuristicLab.Operators-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 137 <SpecificVersion>False</SpecificVersion> 138 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Operators-3.3.dll</HintPath> 139 <Private>False</Private> 140 </Reference> 141 <Reference Include="HeuristicLab.Optimization.Operators-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 142 <SpecificVersion>False</SpecificVersion> 143 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization.Operators-3.3.dll</HintPath> 144 <Private>False</Private> 145 </Reference> 146 <Reference Include="HeuristicLab.Parameters-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 147 <SpecificVersion>False</SpecificVersion> 148 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Parameters-3.3.dll</HintPath> 149 <Private>False</Private> 150 </Reference> 151 <Reference Include="HeuristicLab.Persistence-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 152 <SpecificVersion>False</SpecificVersion> 153 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Persistence-3.3.dll</HintPath> 154 <Private>False</Private> 155 </Reference> 156 <Reference Include="HeuristicLab.PluginInfrastructure-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 157 <SpecificVersion>False</SpecificVersion> 158 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath> 109 159 <Private>False</Private> 110 160 </Reference> … … 131 181 <Compile Include="AlleleFrequencyAnalysis\AlleleFrequencyCollectionHistory.cs" /> 132 182 <Compile Include="BestScopeSolutionAnalyzer.cs" /> 183 <Compile Include="DataVisualization\IndexedDataRow.cs" /> 184 <Compile Include="DataVisualization\IndexedDataTable.cs" /> 133 185 <Compile Include="DataVisualization\ScatterPlotDataRowVisualProperties.cs" /> 134 186 <Compile Include="DataVisualization\ScatterPlotDataRow.cs" /> … … 159 211 <Compile Include="Properties\AssemblyInfo.cs" /> 160 212 <Compile Include="QualityAnalysis\QualityDistributionAnalyzer.cs" /> 213 <Compile Include="QualityAnalysis\QualityVsEvaluationsAnalyzer.cs" /> 161 214 <Compile Include="QualityAnalysis\ScaledQualityDifferenceAnalyzer.cs" /> 162 215 <Compile Include="Statistics\BonferroniHolm.cs" /> … … 180 233 </ItemGroup> 181 234 <ItemGroup> 182 <ProjectReference Include="..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj">183 <Project>{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}</Project>184 <Name>HeuristicLab.Collections-3.3</Name>185 <Private>False</Private>186 </ProjectReference>187 <ProjectReference Include="..\..\HeuristicLab.Common.Resources\3.3\HeuristicLab.Common.Resources-3.3.csproj">188 <Project>{0E27A536-1C4A-4624-A65E-DC4F4F23E3E1}</Project>189 <Name>HeuristicLab.Common.Resources-3.3</Name>190 <Private>False</Private>191 </ProjectReference>192 <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj">193 <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project>194 <Name>HeuristicLab.Common-3.3</Name>195 <Private>False</Private>196 </ProjectReference>197 <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj">198 <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project>199 <Name>HeuristicLab.Core-3.3</Name>200 <Private>False</Private>201 </ProjectReference>202 <ProjectReference Include="..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj">203 <Project>{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}</Project>204 <Name>HeuristicLab.Data-3.3</Name>205 <Private>False</Private>206 </ProjectReference>207 <ProjectReference Include="..\..\HeuristicLab.Operators\3.3\HeuristicLab.Operators-3.3.csproj">208 <Project>{23DA7FF4-D5B8-41B6-AA96-F0561D24F3EE}</Project>209 <Name>HeuristicLab.Operators-3.3</Name>210 <Private>False</Private>211 </ProjectReference>212 <ProjectReference Include="..\..\HeuristicLab.Optimization.Operators\3.3\HeuristicLab.Optimization.Operators-3.3.csproj">213 <Project>{25087811-F74C-4128-BC86-8324271DA13E}</Project>214 <Name>HeuristicLab.Optimization.Operators-3.3</Name>215 <Private>False</Private>216 </ProjectReference>217 235 <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj"> 218 236 <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project> 219 237 <Name>HeuristicLab.Optimization-3.3</Name> 220 <Private>False</Private>221 </ProjectReference>222 <ProjectReference Include="..\..\HeuristicLab.Parameters\3.3\HeuristicLab.Parameters-3.3.csproj">223 <Project>{56F9106A-079F-4C61-92F6-86A84C2D84B7}</Project>224 <Name>HeuristicLab.Parameters-3.3</Name>225 <Private>False</Private>226 </ProjectReference>227 <ProjectReference Include="..\..\HeuristicLab.Persistence\3.3\HeuristicLab.Persistence-3.3.csproj">228 <Project>{102BC7D3-0EF9-439C-8F6D-96FF0FDB8E1B}</Project>229 <Name>HeuristicLab.Persistence-3.3</Name>230 <Private>False</Private>231 </ProjectReference>232 <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj">233 <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project>234 <Name>HeuristicLab.PluginInfrastructure-3.3</Name>235 238 <Private>False</Private> 236 239 </ProjectReference> -
branches/PerformanceComparison/HeuristicLab.Analysis/3.3/QualityAnalysis/QualityVsEvaluationsAnalyzer.cs
r12759 r12764 20 20 #endregion 21 21 22 using System; 22 23 using HeuristicLab.Common; 23 24 using HeuristicLab.Core; … … 28 29 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 29 30 30 namespace HeuristicLab.Analysis.QualityAnalysis { 31 [Item("ScaledQualityDifferenceAnalyzer", @"Calculates the quality value relative to a certain range given with a minimum and a maximum value. 32 The difference lies in the interval [0;1] if the range [min;max] is as large as the observed quality values, otherwise the difference will become < 0 or > 1. 33 A value towards 0 always means that it's closer to the better fitness value, while a value towards 1 means that it's closer to the worse fitness value.")] 31 namespace HeuristicLab.Analysis { 32 [Item("QualityVsEvaluationsAnalyzer", @"Creates a plot of the solution quality with respect to the number of evaluated solutions.")] 34 33 [StorableClass] 35 public class ScaledQualityDifferenceAnalyzer : SingleSuccessorOperator, IAnalyzer, ISingleObjectiveOperator {34 public class QualityVsEvaluationsAnalyzer : SingleSuccessorOperator, IAnalyzer, ISingleObjectiveOperator { 36 35 public virtual bool EnabledByDefault { 37 get { return true; }36 get { return false; } 38 37 } 39 38 40 public ILookupParameter<DoubleValue> QualityParameter {41 get { return (ILookupParameter<DoubleValue>)Parameters[" Quality"]; }39 public ILookupParameter<DoubleValue> BestQualityParameter { 40 get { return (ILookupParameter<DoubleValue>)Parameters["BestQuality"]; } 42 41 } 43 public ILookupParameter< BoolValue> MaximizationParameter {44 get { return (ILookupParameter< BoolValue>)Parameters["Maximization"]; }42 public ILookupParameter<IntValue> EvaluatedSolutionsParameter { 43 get { return (ILookupParameter<IntValue>)Parameters["EvaluatedSolutions"]; } 45 44 } 46 public ILookupParameter<DoubleValue> ScaledDifferenceParameter { 47 get { return (ILookupParameter<DoubleValue>)Parameters["ScaledDifference"]; } 48 } 49 public ILookupParameter<ResultCollection> ResultsParameter { 50 get { return (ILookupParameter<ResultCollection>)Parameters["Results"]; } 51 } 52 public IValueLookupParameter<DoubleValue> MinimumQualityParameter { 53 get { return (IValueLookupParameter<DoubleValue>)Parameters["MinimumQuality"]; } 54 } 55 public IValueLookupParameter<DoubleValue> MaximumQualityParameter { 56 get { return (IValueLookupParameter<DoubleValue>)Parameters["MaximumQuality"]; } 45 public IResultParameter<IndexedDataTable<int>> QualityVsEvaluationsParameter { 46 get { return (IResultParameter<IndexedDataTable<int>>)Parameters["QualityVsEvaluations"]; } 57 47 } 58 48 59 49 [StorableConstructor] 60 protected ScaledQualityDifferenceAnalyzer(bool deserializing) : base(deserializing) { }61 protected ScaledQualityDifferenceAnalyzer(ScaledQualityDifferenceAnalyzer original, Cloner cloner) : base(original, cloner) { }62 public ScaledQualityDifferenceAnalyzer()50 protected QualityVsEvaluationsAnalyzer(bool deserializing) : base(deserializing) { } 51 protected QualityVsEvaluationsAnalyzer(QualityVsEvaluationsAnalyzer original, Cloner cloner) : base(original, cloner) { } 52 public QualityVsEvaluationsAnalyzer() 63 53 : base() { 64 Parameters.Add(new LookupParameter<DoubleValue>(" Quality", "The quality value that should be compared."));65 Parameters.Add(new LookupParameter< BoolValue>("Maximization", "True if the problem is a maximization problem, false otherwise."));66 Parameters.Add(new LookupParameter<DoubleValue>("ScaledDifference", "The value that describes whether the quality value lies towards the better quality in the range (<=0.5) or more towards the worse quality (> 0.5)."));67 Parameters.Add(new LookupParameter<ResultCollection>("Results", "The result collection where the difference will be stored (in addition to the scope)."));68 Parameters.Add(new ValueLookupParameter<DoubleValue>("MinimumQuality", "The lower bound of the quality range to which the quality is compared."));69 Parameters.Add(new ValueLookupParameter<DoubleValue>("MaximumQuality", "The upper bound of the quality range to which the quality is compared."));54 Parameters.Add(new LookupParameter<DoubleValue>("BestQuality", "The quality value that should be compared.")); 55 Parameters.Add(new LookupParameter<IntValue>("EvaluatedSolutions", "The quality value that should be compared.")); 56 Parameters.Add(new ResultParameter<IndexedDataTable<int>>("QualityVsEvaluations", "Data table containing the first hitting graph with evaluations as the x-axis.")); 57 QualityVsEvaluationsParameter.DefaultValue = new IndexedDataTable<int>("Quality vs Evaluations") { 58 Rows = { new IndexedDataRow<int>("First-hit Graph") { VisualProperties = { ChartType = DataRowVisualProperties.DataRowChartType.StepLine } } } 59 }; 70 60 } 71 61 72 62 public override IDeepCloneable Clone(Cloner cloner) { 73 return new ScaledQualityDifferenceAnalyzer(this, cloner);63 return new QualityVsEvaluationsAnalyzer(this, cloner); 74 64 } 75 65 76 66 public override IOperation Apply() { 77 bool maximization = MaximizationParameter.ActualValue.Value; 78 double quality = QualityParameter.ActualValue.Value, max = MaximumQualityParameter.ActualValue.Value, min = MinimumQualityParameter.ActualValue.Value; 79 double difference; 67 var bestQuality = BestQualityParameter.ActualValue.Value; 68 var evaluations = EvaluatedSolutionsParameter.ActualValue.Value; 80 69 81 difference = ((quality - min) / (max - min)); 82 if (maximization) difference = 1.0 - difference; 83 84 DoubleValue differenceValue = ScaledDifferenceParameter.ActualValue; 85 if (differenceValue == null) { 86 differenceValue = new DoubleValue(difference); 87 ScaledDifferenceParameter.ActualValue = differenceValue; 88 } else differenceValue.Value = difference; 89 90 ResultCollection results = ResultsParameter.ActualValue; 91 if (results != null) { 92 IResult r; 93 if (!results.TryGetValue(ScaledDifferenceParameter.TranslatedName, out r)) { 94 r = new Result(ScaledDifferenceParameter.TranslatedName, differenceValue); 95 results.Add(r); 96 } 97 } 70 var dataTable = QualityVsEvaluationsParameter.ResultValue; 71 dataTable.Rows["First-hit Graph"].Values.Add(Tuple.Create(evaluations, bestQuality)); 98 72 99 73 return base.Apply();
Note: See TracChangeset
for help on using the changeset viewer.