Free cookie consent management tool by TermsFeed Policy Generator

Changeset 8916


Ignore:
Timestamp:
11/16/12 14:30:54 (10 years ago)
Author:
bburlacu
Message:

#1763: Added HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views and HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views to the branch. Removed prune button, minor functionality improvements.

Location:
branches/HeuristicLab.TreeSimplifier
Files:
1 added
2 deleted
19 edited
4 copied

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.TreeSimplifier

    • Property svn:mergeinfo set to (toggle deleted branches)
      /branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views5700-5808
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views/3.4/SymbolicExpressionTreeChart.Designer.cs

    r8388 r8916  
    2121
    2222namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views {
    23   partial class SymbolicExpressionTreeChart {
     23  public partial class SymbolicExpressionTreeChart {
    2424    /// <summary>
    2525    /// Required designer variable.
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic

  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification

  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views-3.4.csproj

    r8636 r8916  
    4141    <DebugType>full</DebugType>
    4242    <Optimize>false</Optimize>
    43     <OutputPath>$(SolutionDir)\bin\</OutputPath>
     43    <OutputPath>..\..\..\..\Trunk\sources\bin\</OutputPath>
    4444    <DefineConstants>DEBUG;TRACE</DefineConstants>
    4545    <ErrorReport>prompt</ErrorReport>
     
    5050    <DebugType>pdbonly</DebugType>
    5151    <Optimize>true</Optimize>
    52     <OutputPath>$(SolutionDir)\bin\</OutputPath>
     52    <OutputPath>..\..\..\..\Trunk\sources\bin\</OutputPath>
    5353    <DefineConstants>TRACE</DefineConstants>
    5454    <ErrorReport>prompt</ErrorReport>
     
    9393  </PropertyGroup>
    9494  <ItemGroup>
     95    <Reference Include="HeuristicLab.Collections-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     96      <SpecificVersion>False</SpecificVersion>
     97      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Collections-3.3.dll</HintPath>
     98    </Reference>
     99    <Reference Include="HeuristicLab.Common-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     100      <SpecificVersion>False</SpecificVersion>
     101      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Common-3.3.dll</HintPath>
     102    </Reference>
     103    <Reference Include="HeuristicLab.Core-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     104      <SpecificVersion>False</SpecificVersion>
     105      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Core-3.3.dll</HintPath>
     106    </Reference>
     107    <Reference Include="HeuristicLab.Core.Views-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     108      <SpecificVersion>False</SpecificVersion>
     109      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Core.Views-3.3.dll</HintPath>
     110    </Reference>
     111    <Reference Include="HeuristicLab.Data-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     112      <SpecificVersion>False</SpecificVersion>
     113      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Data-3.3.dll</HintPath>
     114    </Reference>
     115    <Reference Include="HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4">
     116      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.dll</HintPath>
     117    </Reference>
     118    <Reference Include="HeuristicLab.MainForm-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     119      <SpecificVersion>False</SpecificVersion>
     120      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.MainForm-3.3.dll</HintPath>
     121    </Reference>
     122    <Reference Include="HeuristicLab.MainForm.WindowsForms-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     123      <SpecificVersion>False</SpecificVersion>
     124      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.MainForm.WindowsForms-3.3.dll</HintPath>
     125    </Reference>
     126    <Reference Include="HeuristicLab.Optimization-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     127      <SpecificVersion>False</SpecificVersion>
     128      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Optimization-3.3.dll</HintPath>
     129    </Reference>
     130    <Reference Include="HeuristicLab.PluginInfrastructure-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     131      <SpecificVersion>False</SpecificVersion>
     132      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath>
     133    </Reference>
     134    <Reference Include="HeuristicLab.Problems.DataAnalysis-3.4, Version=3.4.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     135      <SpecificVersion>False</SpecificVersion>
     136      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Problems.DataAnalysis-3.4.dll</HintPath>
     137    </Reference>
     138    <Reference Include="HeuristicLab.Problems.DataAnalysis.Views-3.4, Version=3.4.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     139      <SpecificVersion>False</SpecificVersion>
     140      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Problems.DataAnalysis.Views-3.4.dll</HintPath>
     141    </Reference>
    95142    <Reference Include="System" />
    96143    <Reference Include="System.Core">
     
    99146    <Reference Include="System.Drawing" />
    100147    <Reference Include="System.Windows.Forms" />
    101     <Reference Include="System.Windows.Forms.DataVisualization" />
    102     <Reference Include="System.Xml.Linq">
    103       <RequiredTargetFramework>3.5</RequiredTargetFramework>
    104     </Reference>
    105     <Reference Include="System.Data.DataSetExtensions">
    106       <RequiredTargetFramework>3.5</RequiredTargetFramework>
    107     </Reference>
    108     <Reference Include="System.Data" />
    109     <Reference Include="System.Xml" />
    110148  </ItemGroup>
    111149  <ItemGroup>
     
    145183    </Compile>
    146184    <Compile Include="Properties\AssemblyInfo.cs" />
    147   </ItemGroup>
    148   <ItemGroup>
    149     <ProjectReference Include="..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj">
    150       <Project>{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}</Project>
    151       <Name>HeuristicLab.Collections-3.3</Name>
    152       <Private>False</Private>
    153     </ProjectReference>
    154     <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj">
    155       <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project>
    156       <Name>HeuristicLab.Common-3.3</Name>
    157       <Private>False</Private>
    158     </ProjectReference>
    159     <ProjectReference Include="..\..\HeuristicLab.Core.Views\3.3\HeuristicLab.Core.Views-3.3.csproj">
    160       <Project>{E226881D-315F-423D-B419-A766FE0D8685}</Project>
    161       <Name>HeuristicLab.Core.Views-3.3</Name>
    162       <Private>False</Private>
    163     </ProjectReference>
    164     <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj">
    165       <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project>
    166       <Name>HeuristicLab.Core-3.3</Name>
    167       <Private>False</Private>
    168     </ProjectReference>
    169     <ProjectReference Include="..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj">
    170       <Project>{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}</Project>
    171       <Name>HeuristicLab.Data-3.3</Name>
    172       <Private>False</Private>
    173     </ProjectReference>
    174     <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj">
    175       <Project>{06D4A186-9319-48A0-BADE-A2058D462EEA}</Project>
    176       <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4</Name>
    177       <Private>False</Private>
    178     </ProjectReference>
    179     <ProjectReference Include="..\..\HeuristicLab.MainForm.WindowsForms\3.3\HeuristicLab.MainForm.WindowsForms-3.3.csproj">
    180       <Project>{AB687BBE-1BFE-476B-906D-44237135431D}</Project>
    181       <Name>HeuristicLab.MainForm.WindowsForms-3.3</Name>
    182       <Private>False</Private>
    183     </ProjectReference>
    184     <ProjectReference Include="..\..\HeuristicLab.MainForm\3.3\HeuristicLab.MainForm-3.3.csproj">
    185       <Project>{3BD61258-31DA-4B09-89C0-4F71FEF5F05A}</Project>
    186       <Name>HeuristicLab.MainForm-3.3</Name>
    187       <Private>False</Private>
    188     </ProjectReference>
    189     <ProjectReference Include="..\..\HeuristicLab.Optimization.Views\3.3\HeuristicLab.Optimization.Views-3.3.csproj">
    190       <Project>{662B4B15-8F4D-4AE5-B3EB-D91C215F5AF2}</Project>
    191       <Name>HeuristicLab.Optimization.Views-3.3</Name>
    192       <Private>False</Private>
    193     </ProjectReference>
    194     <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
    195       <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project>
    196       <Name>HeuristicLab.Optimization-3.3</Name>
    197       <Private>False</Private>
    198     </ProjectReference>
    199     <ProjectReference Include="..\..\HeuristicLab.Parameters.Views\3.3\HeuristicLab.Parameters.Views-3.3.csproj">
    200       <Project>{AE5B1CE5-9862-4D6F-A700-D72CD9AEA295}</Project>
    201       <Name>HeuristicLab.Parameters.Views-3.3</Name>
    202       <Private>False</Private>
    203     </ProjectReference>
    204     <ProjectReference Include="..\..\HeuristicLab.Persistence\3.3\HeuristicLab.Persistence-3.3.csproj">
    205       <Project>{102BC7D3-0EF9-439C-8F6D-96FF0FDB8E1B}</Project>
    206       <Name>HeuristicLab.Persistence-3.3</Name>
    207       <Private>False</Private>
    208     </ProjectReference>
    209     <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj">
    210       <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project>
    211       <Name>HeuristicLab.PluginInfrastructure-3.3</Name>
    212       <Private>False</Private>
    213     </ProjectReference>
    214     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic.Classification\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Classification-3.4.csproj">
    215       <Project>{05BAE4E1-A9FA-4644-AA77-42558720159E}</Project>
    216       <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Classification-3.4</Name>
    217       <Private>False</Private>
    218     </ProjectReference>
    219     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic.Views\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4.csproj">
    220       <Project>{7A2531CE-3F7C-4F13-BCCA-ED6DC27A7086}</Project>
    221       <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4</Name>
    222       <Private>False</Private>
    223     </ProjectReference>
    224     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj">
    225       <Project>{3D28463F-EC96-4D82-AFEE-38BE91A0CA00}</Project>
    226       <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name>
    227       <Private>False</Private>
    228     </ProjectReference>
    229     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Views\3.4\HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj">
    230       <Project>{3E9E8944-44FF-40BB-A622-3A4A7DD0F198}</Project>
    231       <Name>HeuristicLab.Problems.DataAnalysis.Views-3.4</Name>
    232       <Private>False</Private>
    233     </ProjectReference>
    234     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis\3.4\HeuristicLab.Problems.DataAnalysis-3.4.csproj">
    235       <Project>{DF87C13E-A889-46FF-8153-66DCAA8C5674}</Project>
    236       <Name>HeuristicLab.Problems.DataAnalysis-3.4</Name>
    237       <Private>False</Private>
    238     </ProjectReference>
    239185  </ItemGroup>
    240186  <ItemGroup>
     
    254200      <Install>true</Install>
    255201    </BootstrapperPackage>
     202  </ItemGroup>
     203  <ItemGroup>
     204    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic.Classification\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Classification-3.4.csproj">
     205      <Project>{05bae4e1-a9fa-4644-aa77-42558720159e}</Project>
     206      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Classification-3.4</Name>
     207    </ProjectReference>
     208    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic.Views\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4.csproj">
     209      <Project>{7a2531ce-3f7c-4f13-bcca-ed6dc27a7086}</Project>
     210      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4</Name>
     211    </ProjectReference>
     212    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj">
     213      <Project>{3d28463f-ec96-4d82-afee-38be91a0ca00}</Project>
     214      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name>
     215    </ProjectReference>
    256216  </ItemGroup>
    257217  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views/3.4/InteractiveSymbolicDiscriminantFunctionClassificationSolutionSimplifierView.cs

    r8636 r8916  
    2020#endregion
    2121
     22using System;
     23using System.Collections.Generic;
    2224using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
    2325
    2426namespace HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views {
    2527  public partial class InteractiveSymbolicDiscriminantFunctionClassificationSolutionSimplifierView : InteractiveSymbolicClassificationSolutionSimplifierViewBase {
     28    private readonly SymbolicDiscriminantFunctionClassificationSolutionImpactValuesCalculator calculator;
    2629
    2730    public new SymbolicDiscriminantFunctionClassificationSolution Content {
     
    3033    }
    3134
    32     public InteractiveSymbolicDiscriminantFunctionClassificationSolutionSimplifierView() : base() { }
     35    public InteractiveSymbolicDiscriminantFunctionClassificationSolutionSimplifierView()
     36      : base() {
     37      InitializeComponent();
     38      this.Caption = "Interactive Classification Solution Simplifier";
     39
     40      calculator = new SymbolicDiscriminantFunctionClassificationSolutionImpactValuesCalculator();
     41    }
    3342
    3443    protected override void UpdateModel(ISymbolicExpressionTree tree) {
     
    3746      Content.Model = (ISymbolicDiscriminantFunctionClassificationModel)model;
    3847    }
     48
     49    protected override Dictionary<ISymbolicExpressionTreeNode, double> CalculateReplacementValues(ISymbolicExpressionTree tree) {
     50      return calculator.CalculateReplacementValues(tree, Content.Model.Interpreter, Content.ProblemData);
     51    }
     52
     53    protected override Dictionary<ISymbolicExpressionTreeNode, double> CalculateImpactValues(ISymbolicExpressionTree tree) {
     54      return calculator.CalculateImpactValues(tree, Content.Model.Interpreter, Content.ProblemData,
     55                                               Content.Model.LowerEstimationLimit, Content.Model.UpperEstimationLimit);
     56    }
     57
     58    protected override void btnOptimizeConstants_Click(object sender, EventArgs e) {
     59
     60    }
    3961  }
    4062}
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification-3.4.csproj

    r8915 r8916  
    126126      <Private>False</Private>
    127127    </Reference>
     128    <Reference Include="HeuristicLab.MainForm-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     129      <SpecificVersion>False</SpecificVersion>
     130      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.MainForm-3.3.dll</HintPath>
     131    </Reference>
     132    <Reference Include="HeuristicLab.MainForm.WindowsForms-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     133      <SpecificVersion>False</SpecificVersion>
     134      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.MainForm.WindowsForms-3.3.dll</HintPath>
     135    </Reference>
    128136    <Reference Include="HeuristicLab.Operators-3.3">
    129137      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Operators-3.3.dll</HintPath>
     
    149157      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Problems.DataAnalysis-3.4.dll</HintPath>
    150158      <Private>False</Private>
     159    </Reference>
     160    <Reference Include="HeuristicLab.Problems.DataAnalysis.Views-3.4, Version=3.4.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     161      <SpecificVersion>False</SpecificVersion>
     162      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Problems.DataAnalysis.Views-3.4.dll</HintPath>
    151163    </Reference>
    152164    <Reference Include="HeuristicLab.Problems.Instances-3.3">
     
    177189    <Compile Include="ModelCreators\NormalDistributedThresholdsModelCreator.cs" />
    178190    <Compile Include="MultiObjective\SymbolicClassificationMultiObjectiveValidationBestSolutionAnalyzer.cs" />
     191    <Compile Include="SymbolicDiscriminantFunctionClassificationSolutionImpactValuesCalculator.cs" />
    179192    <Compile Include="SymbolicNearestNeighbourClassificationModel.cs" />
    180193    <Compile Include="Plugin.cs" />
     
    232245  <ItemGroup>
    233246    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj">
    234       <Project>{3D28463F-EC96-4D82-AFEE-38BE91A0CA00}</Project>
     247      <Project>{3d28463f-ec96-4d82-afee-38be91a0ca00}</Project>
    235248      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name>
    236       <Private>False</Private>
    237249    </ProjectReference>
    238250  </ItemGroup>
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views-3.4.csproj

    r8600 r8916  
    4141    <DebugType>full</DebugType>
    4242    <Optimize>false</Optimize>
    43     <OutputPath>$(SolutionDir)\bin\</OutputPath>
     43    <OutputPath>..\..\..\..\Trunk\sources\bin\</OutputPath>
    4444    <DefineConstants>DEBUG;TRACE</DefineConstants>
    4545    <ErrorReport>prompt</ErrorReport>
     
    5050    <DebugType>pdbonly</DebugType>
    5151    <Optimize>true</Optimize>
    52     <OutputPath>$(SolutionDir)\bin\</OutputPath>
     52    <OutputPath>..\..\..\..\Trunk\sources\bin\</OutputPath>
    5353    <DefineConstants>TRACE</DefineConstants>
    5454    <ErrorReport>prompt</ErrorReport>
     
    9393  </PropertyGroup>
    9494  <ItemGroup>
     95    <Reference Include="HeuristicLab.Algorithms.DataAnalysis-3.4">
     96      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Algorithms.DataAnalysis-3.4.dll</HintPath>
     97    </Reference>
     98    <Reference Include="HeuristicLab.Collections-3.3">
     99      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Collections-3.3.dll</HintPath>
     100    </Reference>
     101    <Reference Include="HeuristicLab.Common-3.3">
     102      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Common-3.3.dll</HintPath>
     103    </Reference>
     104    <Reference Include="HeuristicLab.Core-3.3">
     105      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Core-3.3.dll</HintPath>
     106    </Reference>
     107    <Reference Include="HeuristicLab.Core.Views-3.3">
     108      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Core.Views-3.3.dll</HintPath>
     109    </Reference>
     110    <Reference Include="HeuristicLab.Data-3.3">
     111      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Data-3.3.dll</HintPath>
     112    </Reference>
     113    <Reference Include="HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4">
     114      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.dll</HintPath>
     115    </Reference>
     116    <Reference Include="HeuristicLab.MainForm-3.3">
     117      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.MainForm-3.3.dll</HintPath>
     118    </Reference>
     119    <Reference Include="HeuristicLab.MainForm.WindowsForms-3.3">
     120      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.MainForm.WindowsForms-3.3.dll</HintPath>
     121    </Reference>
     122    <Reference Include="HeuristicLab.Operators-3.3">
     123      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Operators-3.3.dll</HintPath>
     124    </Reference>
     125    <Reference Include="HeuristicLab.Optimization-3.3">
     126      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Optimization-3.3.dll</HintPath>
     127    </Reference>
     128    <Reference Include="HeuristicLab.PluginInfrastructure-3.3">
     129      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath>
     130    </Reference>
     131    <Reference Include="HeuristicLab.Problems.DataAnalysis-3.4">
     132      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Problems.DataAnalysis-3.4.dll</HintPath>
     133    </Reference>
     134    <Reference Include="HeuristicLab.Problems.DataAnalysis.Views-3.4">
     135      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Problems.DataAnalysis.Views-3.4.dll</HintPath>
     136    </Reference>
     137    <Reference Include="HeuristicLab.Visualization.ChartControlsExtensions-3.3">
     138      <HintPath>..\..\..\..\Trunk\sources\bin\HeuristicLab.Visualization.ChartControlsExtensions-3.3.dll</HintPath>
     139    </Reference>
    95140    <Reference Include="System" />
    96141    <Reference Include="System.Core">
     
    100145    <Reference Include="System.Windows.Forms" />
    101146    <Reference Include="System.Windows.Forms.DataVisualization" />
    102     <Reference Include="System.Xml.Linq">
    103       <RequiredTargetFramework>3.5</RequiredTargetFramework>
    104     </Reference>
    105     <Reference Include="System.Data.DataSetExtensions">
    106       <RequiredTargetFramework>3.5</RequiredTargetFramework>
    107     </Reference>
    108147    <Reference Include="System.Data" />
    109     <Reference Include="System.Xml" />
    110148  </ItemGroup>
    111149  <ItemGroup>
     
    145183    <None Include="Properties\AssemblyInfo.cs.frame" />
    146184    <Compile Include="Properties\AssemblyInfo.cs" />
    147   </ItemGroup>
    148   <ItemGroup>
    149     <ProjectReference Include="..\..\HeuristicLab.Algorithms.DataAnalysis\3.4\HeuristicLab.Algorithms.DataAnalysis-3.4.csproj">
    150       <Project>{2E782078-FA81-4B70-B56F-74CE38DAC6C8}</Project>
    151       <Name>HeuristicLab.Algorithms.DataAnalysis-3.4</Name>
    152       <Private>False</Private>
    153     </ProjectReference>
    154     <ProjectReference Include="..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj">
    155       <Project>{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}</Project>
    156       <Name>HeuristicLab.Collections-3.3</Name>
    157       <Private>False</Private>
    158     </ProjectReference>
    159     <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj">
    160       <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project>
    161       <Name>HeuristicLab.Common-3.3</Name>
    162       <Private>False</Private>
    163     </ProjectReference>
    164     <ProjectReference Include="..\..\HeuristicLab.Core.Views\3.3\HeuristicLab.Core.Views-3.3.csproj">
    165       <Project>{E226881D-315F-423D-B419-A766FE0D8685}</Project>
    166       <Name>HeuristicLab.Core.Views-3.3</Name>
    167       <Private>False</Private>
    168     </ProjectReference>
    169     <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj">
    170       <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project>
    171       <Name>HeuristicLab.Core-3.3</Name>
    172       <Private>False</Private>
    173     </ProjectReference>
    174     <ProjectReference Include="..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj">
    175       <Project>{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}</Project>
    176       <Name>HeuristicLab.Data-3.3</Name>
    177       <Private>False</Private>
    178     </ProjectReference>
    179     <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4.csproj">
    180       <Project>{423BD94F-963A-438E-BA45-3BB3D61CD03B}</Project>
    181       <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4</Name>
    182       <Private>False</Private>
    183     </ProjectReference>
    184     <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj">
    185       <Project>{06D4A186-9319-48A0-BADE-A2058D462EEA}</Project>
    186       <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4</Name>
    187       <Private>False</Private>
    188     </ProjectReference>
    189     <ProjectReference Include="..\..\HeuristicLab.MainForm.WindowsForms\3.3\HeuristicLab.MainForm.WindowsForms-3.3.csproj">
    190       <Project>{AB687BBE-1BFE-476B-906D-44237135431D}</Project>
    191       <Name>HeuristicLab.MainForm.WindowsForms-3.3</Name>
    192       <Private>False</Private>
    193     </ProjectReference>
    194     <ProjectReference Include="..\..\HeuristicLab.MainForm\3.3\HeuristicLab.MainForm-3.3.csproj">
    195       <Project>{3BD61258-31DA-4B09-89C0-4F71FEF5F05A}</Project>
    196       <Name>HeuristicLab.MainForm-3.3</Name>
    197       <Private>False</Private>
    198     </ProjectReference>
    199     <ProjectReference Include="..\..\HeuristicLab.Operators\3.3\HeuristicLab.Operators-3.3.csproj">
    200       <Project>{23DA7FF4-D5B8-41B6-AA96-F0561D24F3EE}</Project>
    201       <Name>HeuristicLab.Operators-3.3</Name>
    202       <Private>False</Private>
    203     </ProjectReference>
    204     <ProjectReference Include="..\..\HeuristicLab.Optimization.Views\3.3\HeuristicLab.Optimization.Views-3.3.csproj">
    205       <Project>{662B4B15-8F4D-4AE5-B3EB-D91C215F5AF2}</Project>
    206       <Name>HeuristicLab.Optimization.Views-3.3</Name>
    207       <Private>False</Private>
    208     </ProjectReference>
    209     <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
    210       <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project>
    211       <Name>HeuristicLab.Optimization-3.3</Name>
    212       <Private>False</Private>
    213     </ProjectReference>
    214     <ProjectReference Include="..\..\HeuristicLab.Parameters.Views\3.3\HeuristicLab.Parameters.Views-3.3.csproj">
    215       <Project>{AE5B1CE5-9862-4D6F-A700-D72CD9AEA295}</Project>
    216       <Name>HeuristicLab.Parameters.Views-3.3</Name>
    217       <Private>False</Private>
    218     </ProjectReference>
    219     <ProjectReference Include="..\..\HeuristicLab.Persistence\3.3\HeuristicLab.Persistence-3.3.csproj">
    220       <Project>{102BC7D3-0EF9-439C-8F6D-96FF0FDB8E1B}</Project>
    221       <Name>HeuristicLab.Persistence-3.3</Name>
    222       <Private>False</Private>
    223     </ProjectReference>
    224     <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj">
    225       <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project>
    226       <Name>HeuristicLab.PluginInfrastructure-3.3</Name>
    227       <Private>False</Private>
    228     </ProjectReference>
    229     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4.csproj">
    230       <Project>{5AC82412-911B-4FA2-A013-EDC5E3F3FCC2}</Project>
    231       <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4</Name>
    232       <Private>False</Private>
    233     </ProjectReference>
    234     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic.Views\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4.csproj">
    235       <Project>{7A2531CE-3F7C-4F13-BCCA-ED6DC27A7086}</Project>
    236       <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4</Name>
    237       <Private>False</Private>
    238     </ProjectReference>
    239     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj">
    240       <Project>{3D28463F-EC96-4D82-AFEE-38BE91A0CA00}</Project>
    241       <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name>
    242       <Private>False</Private>
    243     </ProjectReference>
    244     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Views\3.4\HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj">
    245       <Project>{3E9E8944-44FF-40BB-A622-3A4A7DD0F198}</Project>
    246       <Name>HeuristicLab.Problems.DataAnalysis.Views-3.4</Name>
    247       <Private>False</Private>
    248     </ProjectReference>
    249     <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis\3.4\HeuristicLab.Problems.DataAnalysis-3.4.csproj">
    250       <Project>{DF87C13E-A889-46FF-8153-66DCAA8C5674}</Project>
    251       <Name>HeuristicLab.Problems.DataAnalysis-3.4</Name>
    252       <Private>False</Private>
    253     </ProjectReference>
    254     <ProjectReference Include="..\..\HeuristicLab.Visualization.ChartControlsExtensions\3.3\HeuristicLab.Visualization.ChartControlsExtensions-3.3.csproj">
    255       <Project>{315BDA09-3F4F-49B3-9790-B37CFC1C5750}</Project>
    256       <Name>HeuristicLab.Visualization.ChartControlsExtensions-3.3</Name>
    257       <Private>False</Private>
    258     </ProjectReference>
    259185  </ItemGroup>
    260186  <ItemGroup>
     
    275201    </BootstrapperPackage>
    276202  </ItemGroup>
     203  <ItemGroup>
     204    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4.csproj">
     205      <Project>{5ac82412-911b-4fa2-a013-edc5e3f3fcc2}</Project>
     206      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4</Name>
     207    </ProjectReference>
     208    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic.Views\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4.csproj">
     209      <Project>{7a2531ce-3f7c-4f13-bcca-ed6dc27a7086}</Project>
     210      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4</Name>
     211    </ProjectReference>
     212    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj">
     213      <Project>{3d28463f-ec96-4d82-afee-38be91a0ca00}</Project>
     214      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name>
     215    </ProjectReference>
     216  </ItemGroup>
    277217  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
    278218  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
     
    284224  -->
    285225  <PropertyGroup>
    286    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">set Path=%25Path%25;$(ProjectDir);$(SolutionDir)
     226    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">set Path=%25Path%25;$(ProjectDir);$(SolutionDir)
    287227set ProjectDir=$(ProjectDir)
    288228set SolutionDir=$(SolutionDir)
     
    291231call PreBuildEvent.cmd
    292232</PreBuildEvent>
    293 <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
     233    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
    294234export ProjectDir=$(ProjectDir)
    295235export SolutionDir=$(SolutionDir)
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/InteractiveSymbolicRegressionSolutionSimplifierView.cs

    r8736 r8916  
    2222using System;
    2323using System.Collections.Generic;
    24 using System.Linq;
    25 using HeuristicLab.Common;
    2624using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
    2725using HeuristicLab.Problems.DataAnalysis.Symbolic.Views;
     
    2927namespace HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views {
    3028  public partial class InteractiveSymbolicRegressionSolutionSimplifierView : InteractiveSymbolicDataAnalysisSolutionSimplifierView {
    31     private readonly ConstantTreeNode constantNode;
    32     private readonly SymbolicExpressionTree tempTree;
     29    private readonly SymbolicRegressionSolutionImpactValuesCalculator calculator;
    3330
    3431    public new SymbolicRegressionSolution Content {
     
    4138      InitializeComponent();
    4239      this.Caption = "Interactive Regression Solution Simplifier";
    43 
    44       constantNode = ((ConstantTreeNode)new Constant().CreateTreeNode());
    45       ISymbolicExpressionTreeNode root = new ProgramRootSymbol().CreateTreeNode();
    46       ISymbolicExpressionTreeNode start = new StartSymbol().CreateTreeNode();
    47       root.AddSubtree(start);
    48       tempTree = new SymbolicExpressionTree(root);
     40      calculator = new SymbolicRegressionSolutionImpactValuesCalculator();
    4941    }
    5042
     
    5648
    5749    protected override Dictionary<ISymbolicExpressionTreeNode, double> CalculateReplacementValues(ISymbolicExpressionTree tree) {
    58       Dictionary<ISymbolicExpressionTreeNode, double> replacementValues = new Dictionary<ISymbolicExpressionTreeNode, double>();
    59       foreach (ISymbolicExpressionTreeNode node in tree.Root.GetSubtree(0).GetSubtree(0).IterateNodesPrefix()) {
    60         replacementValues[node] = CalculateReplacementValue(node, tree);
    61       }
    62       return replacementValues;
     50      return calculator.CalculateReplacementValues(tree, Content.Model.Interpreter, Content.ProblemData);
    6351    }
    6452
    6553    protected override Dictionary<ISymbolicExpressionTreeNode, double> CalculateImpactValues(ISymbolicExpressionTree tree) {
    66       var interpreter = Content.Model.Interpreter;
    67       var dataset = Content.ProblemData.Dataset;
    68       var rows = Content.ProblemData.TrainingIndices;
    69       string targetVariable = Content.ProblemData.TargetVariable;
    70       Dictionary<ISymbolicExpressionTreeNode, double> impactValues = new Dictionary<ISymbolicExpressionTreeNode, double>();
    71       List<ISymbolicExpressionTreeNode> nodes = tree.Root.GetSubtree(0).GetSubtree(0).IterateNodesPostfix().ToList();
    72       var originalOutput = interpreter.GetSymbolicExpressionTreeValues(tree, dataset, rows).LimitToRange(Content.Model.LowerEstimationLimit, Content.Model.UpperEstimationLimit).ToArray();
    73       var targetValues = dataset.GetDoubleValues(targetVariable, rows);
    74       OnlineCalculatorError errorState;
    75       double originalR2 = OnlinePearsonsRSquaredCalculator.Calculate(targetValues, originalOutput, out errorState);
    76       if (errorState != OnlineCalculatorError.None) originalR2 = 0.0;
    77 
    78       foreach (ISymbolicExpressionTreeNode node in nodes) {
    79         var parent = node.Parent;
    80         constantNode.Value = CalculateReplacementValue(node, tree);
    81         ISymbolicExpressionTreeNode replacementNode = constantNode;
    82         SwitchNode(parent, node, replacementNode);
    83         var newOutput = interpreter.GetSymbolicExpressionTreeValues(tree, dataset, rows).LimitToRange(Content.Model.LowerEstimationLimit, Content.Model.UpperEstimationLimit);
    84         double newR2 = OnlinePearsonsRSquaredCalculator.Calculate(targetValues, newOutput, out errorState);
    85         if (errorState != OnlineCalculatorError.None) newR2 = 0.0;
    86 
    87         // impact = 0 if no change
    88         // impact < 0 if new solution is better
    89         // impact > 0 if new solution is worse
    90         impactValues[node] = originalR2 - newR2;
    91         SwitchNode(parent, replacementNode, node);
    92       }
    93       return impactValues;
     54      return calculator.CalculateImpactValues(tree, Content.Model.Interpreter, Content.ProblemData, 0, 0);
    9455    }
    95 
    96     private double CalculateReplacementValue(ISymbolicExpressionTreeNode node, ISymbolicExpressionTree sourceTree) {
    97       // remove old ADFs
    98       while (tempTree.Root.SubtreeCount > 1) tempTree.Root.RemoveSubtree(1);
    99       // clone ADFs of source tree
    100       for (int i = 1; i < sourceTree.Root.SubtreeCount; i++) {
    101         tempTree.Root.AddSubtree((ISymbolicExpressionTreeNode)sourceTree.Root.GetSubtree(i).Clone());
    102       }
    103       var start = tempTree.Root.GetSubtree(0);
    104       while (start.SubtreeCount > 0) start.RemoveSubtree(0);
    105       start.AddSubtree((ISymbolicExpressionTreeNode)node.Clone());
    106       var interpreter = Content.Model.Interpreter;
    107       var rows = Content.ProblemData.TrainingIndices;
    108       return interpreter.GetSymbolicExpressionTreeValues(tempTree, Content.ProblemData.Dataset, rows)
    109                          .LimitToRange(Content.Model.LowerEstimationLimit, Content.Model.UpperEstimationLimit)
    110                          .Median();
    111     }
    112 
    113 
    114     private void SwitchNode(ISymbolicExpressionTreeNode root, ISymbolicExpressionTreeNode oldBranch, ISymbolicExpressionTreeNode newBranch) {
    115       for (int i = 0; i < root.SubtreeCount; i++) {
    116         if (root.GetSubtree(i) == oldBranch) {
    117           root.RemoveSubtree(i);
    118           root.InsertSubtree(i, newBranch);
    119           return;
    120         }
    121       }
    122     }
    123 
    124     protected override void OnModelChanged() {
    125       base.OnModelChanged();
    126       if (Content != null)
    127         btnOptimizeConstants.Enabled =
    128           SymbolicRegressionConstantOptimizationEvaluator.CanOptimizeConstants(Content.Model.SymbolicExpressionTree);
    129       else
    130         btnOptimizeConstants.Enabled = false;
    131     }
    132     protected override void OnContentChanged() {
    133       base.OnContentChanged();
    134       base.OnModelChanged();
    135       if (Content != null)
    136         btnOptimizeConstants.Enabled =
    137           SymbolicRegressionConstantOptimizationEvaluator.CanOptimizeConstants(Content.Model.SymbolicExpressionTree);
    138       else
    139         btnOptimizeConstants.Enabled = false;
    140     }
    141 
    14256
    14357    protected override void btnOptimizeConstants_Click(object sender, EventArgs e) {
    14458      var model = Content.Model;
    145       SymbolicRegressionConstantOptimizationEvaluator.OptimizeConstants(Content.Model.Interpreter, Content.Model.SymbolicExpressionTree, Content.ProblemData, Content.ProblemData.TrainingIndices,
     59      SymbolicRegressionConstantOptimizationEvaluator.OptimizeConstants(model.Interpreter, model.SymbolicExpressionTree, Content.ProblemData, Content.ProblemData.TrainingIndices,
    14660        applyLinearScaling: true, maxIterations: 50, upperEstimationLimit: model.UpperEstimationLimit, lowerEstimationLimit: model.LowerEstimationLimit);
    14761      UpdateModel(Content.Model.SymbolicExpressionTree);
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4.csproj

    r8915 r8916  
    196196    <Compile Include="SingleObjective\Evaluators\SymbolicRegressionSingleObjectivePearsonRSquaredEvaluator.cs" />
    197197    <Compile Include="SymbolicRegressionSolution.cs" />
     198    <Compile Include="SymbolicRegressionSolutionImpactValuesCalculator.cs" />
    198199    <None Include="HeuristicLab.snk" />
    199200    <None Include="Plugin.cs.frame" />
     
    220221  <ItemGroup>
    221222    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj">
    222       <Project>{3D28463F-EC96-4D82-AFEE-38BE91A0CA00}</Project>
     223      <Project>{3d28463f-ec96-4d82-afee-38be91a0ca00}</Project>
    223224      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name>
    224       <Private>False</Private>
    225225    </ProjectReference>
    226226  </ItemGroup>
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Views/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Views-3.4.csproj

    r8915 r8916  
    273273  <ItemGroup>
    274274    <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4.csproj">
    275       <Project>{423BD94F-963A-438E-BA45-3BB3D61CD03B}</Project>
     275      <Project>{423bd94f-963a-438e-ba45-3bb3d61cd03b}</Project>
    276276      <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4</Name>
    277       <Private>False</Private>
    278277    </ProjectReference>
    279278    <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj">
    280       <Project>{3D28463F-EC96-4D82-AFEE-38BE91A0CA00}</Project>
     279      <Project>{3d28463f-ec96-4d82-afee-38be91a0ca00}</Project>
    281280      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name>
    282       <Private>False</Private>
    283281    </ProjectReference>
    284282  </ItemGroup>
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Views/3.4/InteractiveSymbolicDataAnalysisSolutionSimplifierView.Designer.cs

    r8915 r8916  
    4545    /// </summary>
    4646    private void InitializeComponent() {
     47      this.components = new System.ComponentModel.Container();
    4748      this.viewHost = new HeuristicLab.MainForm.WindowsForms.ViewHost();
    4849      this.splitContainer = new System.Windows.Forms.SplitContainer();
     
    5051      this.flowLayoutPanel = new System.Windows.Forms.FlowLayoutPanel();
    5152      this.btnSimplify = new System.Windows.Forms.Button();
    52       this.btnPrune = new System.Windows.Forms.Button();
    5353      this.btnOptimizeConstants = new System.Windows.Forms.Button();
    54       this.treeChart = new InteractiveSymbolicExpressionTreeChart();
     54      this.treeChart = new HeuristicLab.Problems.DataAnalysis.Symbolic.Views.InteractiveSymbolicExpressionTreeChart();
    5555      this.grpViewHost = new System.Windows.Forms.GroupBox();
    5656      this.backgroundWorker1 = new System.ComponentModel.BackgroundWorker();
     
    6666      // viewHost
    6767      //
    68       this.viewHost.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
    69             | System.Windows.Forms.AnchorStyles.Left)
     68      this.viewHost.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
     69            | System.Windows.Forms.AnchorStyles.Left) 
    7070            | System.Windows.Forms.AnchorStyles.Right)));
    7171      this.viewHost.Caption = "View";
     
    112112      // flowLayoutPanel
    113113      //
    114       this.flowLayoutPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
     114      this.flowLayoutPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
    115115            | System.Windows.Forms.AnchorStyles.Right)));
    116116      this.flowLayoutPanel.Controls.Add(this.btnSimplify);
    117       this.flowLayoutPanel.Controls.Add(this.btnPrune);
    118117      this.flowLayoutPanel.Controls.Add(this.btnOptimizeConstants);
    119118      this.flowLayoutPanel.Location = new System.Drawing.Point(6, 313);
     
    133132      this.btnSimplify.Click += new System.EventHandler(this.btnSimplify_Click);
    134133      //
    135       // btnPrune
    136       //
    137       this.btnPrune.Location = new System.Drawing.Point(104, 3);
    138       this.btnPrune.Name = "btnPrune";
    139       this.btnPrune.Size = new System.Drawing.Size(95, 23);
    140       this.btnPrune.TabIndex = 3;
    141       this.btnPrune.Text = "Prune";
    142       this.btnPrune.UseVisualStyleBackColor = true;
    143       this.btnPrune.Click += new System.EventHandler(this.btnPrune_Click);
    144       //
    145134      // btnOptimizeConstants
    146135      //
    147136      this.btnOptimizeConstants.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
    148137      this.btnOptimizeConstants.Enabled = false;
    149       this.btnOptimizeConstants.Location = new System.Drawing.Point(205, 3);
     138      this.btnOptimizeConstants.Location = new System.Drawing.Point(104, 3);
    150139      this.btnOptimizeConstants.Name = "btnOptimizeConstants";
    151140      this.btnOptimizeConstants.Size = new System.Drawing.Size(97, 23);
     
    157146      // treeChart
    158147      //
    159       this.treeChart.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
    160             | System.Windows.Forms.AnchorStyles.Left)
     148      this.treeChart.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
     149            | System.Windows.Forms.AnchorStyles.Left) 
    161150            | System.Windows.Forms.AnchorStyles.Right)));
    162151      this.treeChart.BackgroundColor = System.Drawing.Color.White;
     
    221210    private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel;
    222211    protected System.Windows.Forms.Button btnOptimizeConstants;
    223     private System.Windows.Forms.Button btnPrune;
    224212    private System.ComponentModel.BackgroundWorker backgroundWorker1;
    225213  }
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Views/3.4/InteractiveSymbolicDataAnalysisSolutionSimplifierView.cs

    r8409 r8916  
    4747      originalValues = new Dictionary<ISymbolicExpressionTreeNode, double>();
    4848      originalVariableNames = new Dictionary<ISymbolicExpressionTreeNode, string>();
    49       Caption = "Interactive Solution Simplifier";
     49
     50      this.Caption = "Interactive Solution Simplifier";
    5051    }
    5152
     
    218219      var dialog = (ValueChangeDialog)sender;
    219220      bool flag1 = false, flag2 = false;
    220       if (dialog.Content is VariableTreeNode) {
    221         var variable = (VariableTreeNode)dialog.Content;
     221      var node = dialog.Content;
     222
     223      if (node is VariableTreeNode) {
     224        var variable = dialog.Content as VariableTreeNode;
    222225        var weight = double.Parse(dialog.NewValueTextBox.Text);
    223226        var name = (string)dialog.VariableNameComboBox.SelectedItem;
     
    232235          variable.VariableName = name;
    233236        }
    234       } else if (dialog.Content is ConstantTreeNode) {
    235         var constant = (ConstantTreeNode)dialog.Content;
     237      } else if (node is ConstantTreeNode) {
     238        var constant = dialog.Content as ConstantTreeNode;
    236239        var value = double.Parse(dialog.NewValueTextBox.Text);
    237240        if (!constant.Value.Equals(value)) {
     
    239242          originalValues[constant] = constant.Value;
    240243          constant.Value = value;
    241 
    242244        }
    243245      }
     
    324326    protected abstract void btnOptimizeConstants_Click(object sender, EventArgs e);
    325327
    326     private void btnPrune_Click(object sender, EventArgs e) {
    327       btnPrune.Enabled = false;
    328       backgroundWorker1.RunWorkerAsync();
    329     }
     328    //    private void btnPrune_Click(object sender, EventArgs e) {
     329    //      btnPrune.Enabled = false;
     330    //      backgroundWorker1.RunWorkerAsync();
     331    //    }
    330332
    331333    private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) {
     
    360362        updateInProgress = false;
    361363      }
    362       btnPrune.Enabled = true;
     364      //      btnPrune.Enabled = true;
    363365    }
    364366
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Views/3.4/InteractiveSymbolicExpressionTreeChart.cs

    r8915 r8916  
    305305              // copy subtree
    306306              var clone = tempNode.Clone() as ISymbolicExpressionTreeNode;
    307               clone.Parent = tempNode.Parent;
    308               tempNode = clone;
     307              if (clone != null) {
     308                clone.Parent = tempNode.Parent;
     309                tempNode = clone;
     310              }
    309311              break;
    310312            }
    311313        }
    312314        node.AddSubtree(tempNode);
    313         Tree = Tree; // hack in order to trigger the reinitialization of the dictionaries after new nodes appeared in the graph
     315        Tree = Tree;
     316        // hack in order to trigger the reinitialization of the dictionaries after new nodes appeared in the graph
    314317        OnSymbolicExpressionTreeChanged(sender, e);
    315318      } else {
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Views/3.4/TreeEditDialogs/SymbolicExpressionTreeNodeChangeValueDialog.cs

    r8409 r8916  
    9494        variableNamesCombo.Visible = true;
    9595        foreach (var name in variable.Symbol.VariableNames) variableNamesCombo.Items.Add(name);
    96         variableNamesCombo.SelectedIndex = 0;
     96        variableNamesCombo.SelectedIndex = variableNamesCombo.Items.IndexOf(variable.VariableName);
     97        //        variableNamesCombo.SelectedText = variable.VariableName;
     98        //        variableNamesCombo.SelectedIndex = 0;
    9799      } else if (Content is ConstantTreeNode) {
    98100        Caption = "Change constant value";
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj

    r8915 r8916  
    9494  <ItemGroup>
    9595    <Reference Include="ALGLIB-3.6.0, Version=3.6.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
    96       <SpecificVersion>False</SpecificVersion>
    97       <HintPath>..\..\..\..\trunk\sources\bin\ALGLIB-3.6.0.dll</HintPath>
     96      <HintPath>..\..\bin\ALGLIB-3.6.0.dll</HintPath>
    9897      <Private>False</Private>
    9998    </Reference>
     
    205204    <Compile Include="Crossovers\SymbolicDataAnalysisExpressionSemanticSimilarityCrossover.cs" />
    206205    <Compile Include="Interfaces\ISymbolicDataAnalysisExpressionCrossover.cs" />
     206    <Compile Include="Interfaces\ISymbolicDataAnalysisImpactValuesCalculator.cs" />
    207207    <Compile Include="Interpreter\InterpreterState.cs" />
    208208    <Compile Include="Interpreter\OpCodes.cs" />
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SymbolicDataAnalysisSolutionImpactValuesCalculator.cs

    r8409 r8916  
    2525
    2626namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
    27   public abstract class SymbolicDataAnalysisSolutionImpactValuesCalculator {
    28     // should be moved to an interface, then un-abstract the class
     27  public abstract class SymbolicDataAnalysisSolutionImpactValuesCalculator : ISymbolicDataAnalysisSolutionImpactValuesCalculator {
    2928    public abstract Dictionary<ISymbolicExpressionTreeNode, double> CalculateReplacementValues(ISymbolicExpressionTree tree, ISymbolicDataAnalysisExpressionTreeInterpreter interpreter, IDataAnalysisProblemData problemData);
    3029    public abstract Dictionary<ISymbolicExpressionTreeNode, double> CalculateImpactValues(ISymbolicExpressionTree tree, ISymbolicDataAnalysisExpressionTreeInterpreter interpreter, IDataAnalysisProblemData problemData, double lowerEstimationLimit, double upperEstimationLimit);
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.TreeSimplifier.sln

    r8395 r8916  
    11
    2 Microsoft Visual Studio Solution File, Format Version 11.00
    3 # Visual Studio 2010
     2Microsoft Visual Studio Solution File, Format Version 12.00
     3# Visual Studio 2012
    44Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4", "HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4.csproj", "{423BD94F-963A-438E-BA45-3BB3D61CD03B}"
    55EndProject
     
    1616    PreBuildEvent.cmd = PreBuildEvent.cmd
    1717  EndProjectSection
     18EndProject
     19Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views-3.4", "HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views-3.4.csproj", "{20831A74-D18F-42D9-A667-1CE3AF53DF93}"
     20EndProject
     21Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views-3.4", "HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views-3.4.csproj", "{BF1E4DF4-A4CC-451F-9D50-303F405E265E}"
    1822EndProject
    1923Global
     
    8791    {7A2531CE-3F7C-4F13-BCCA-ED6DC27A7086}.Release|x86.ActiveCfg = Release|x86
    8892    {7A2531CE-3F7C-4F13-BCCA-ED6DC27A7086}.Release|x86.Build.0 = Release|x86
     93    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
     94    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Debug|Any CPU.Build.0 = Debug|Any CPU
     95    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Debug|x64.ActiveCfg = Debug|x64
     96    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Debug|x64.Build.0 = Debug|x64
     97    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Debug|x86.ActiveCfg = Debug|x86
     98    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Debug|x86.Build.0 = Debug|x86
     99    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Release|Any CPU.ActiveCfg = Release|Any CPU
     100    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Release|Any CPU.Build.0 = Release|Any CPU
     101    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Release|x64.ActiveCfg = Release|x64
     102    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Release|x64.Build.0 = Release|x64
     103    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Release|x86.ActiveCfg = Release|x86
     104    {20831A74-D18F-42D9-A667-1CE3AF53DF93}.Release|x86.Build.0 = Release|x86
     105    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
     106    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Debug|Any CPU.Build.0 = Debug|Any CPU
     107    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Debug|x64.ActiveCfg = Debug|x64
     108    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Debug|x64.Build.0 = Debug|x64
     109    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Debug|x86.ActiveCfg = Debug|x86
     110    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Debug|x86.Build.0 = Debug|x86
     111    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Release|Any CPU.ActiveCfg = Release|Any CPU
     112    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Release|Any CPU.Build.0 = Release|Any CPU
     113    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Release|x64.ActiveCfg = Release|x64
     114    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Release|x64.Build.0 = Release|x64
     115    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Release|x86.ActiveCfg = Release|x86
     116    {BF1E4DF4-A4CC-451F-9D50-303F405E265E}.Release|x86.Build.0 = Release|x86
    89117  EndGlobalSection
    90118  GlobalSection(SolutionProperties) = preSolution
  • branches/HeuristicLab.TreeSimplifier/HeuristicLab.TreeSimplifier.sln.DotSettings.user

    r8388 r8916  
    11<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
     2  <s:Boolean x:Key="/Default/Environment/SearchAndNavigation/MergeOccurences/@EntryValue">False</s:Boolean>
    23  <s:Boolean x:Key="/Default/Housekeeping/SolutionSettingsUpgraded/IsUpgraded/@EntryValue">True</s:Boolean></wpf:ResourceDictionary>
Note: See TracChangeset for help on using the changeset viewer.