Changeset 11232


Ignore:
Timestamp:
07/29/14 20:03:15 (7 years ago)
Author:
bburlacu
Message:

#1772: Merged latest changes (directed graph and bottom up distance calculator) from the BottomUpDistance branch.

Location:
branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic
Files:
5 edited
3 copied

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic

  • branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj

    r11208 r11232  
    173173  </ItemGroup>
    174174  <ItemGroup>
     175    <Compile Include="Analyzers\SymbolicDataAnalysisInternalDiversityAnalyzer.cs" />
    175176    <Compile Include="Analyzers\SymbolicDataAnalysisSingleObjectivePruningAnalyzer.cs" />
    176177    <Compile Include="Analyzers\SymbolicDataAnalysisGenealogyAnalyzer.cs" />
     
    189190      <SubType>Code</SubType>
    190191    </Compile>
     192    <Compile Include="DirectedGraph\Arc.cs" />
     193    <Compile Include="DirectedGraph\DirectedGraph.cs" />
     194    <Compile Include="DirectedGraph\Interfaces\IArc.cs" />
     195    <Compile Include="DirectedGraph\Interfaces\IDirectedGraph.cs" />
     196    <Compile Include="DirectedGraph\Interfaces\IVertex.cs" />
     197    <Compile Include="DirectedGraph\Vertex.cs" />
    191198    <Compile Include="Interfaces\IModelBacktransformator.cs" />
    192     <Compile Include="Interfaces\IDistanceCalculator.cs" />    <Compile Include="Matching\SymbolicExpressionTreeCanonicalSorter.cs" />
     199    <Compile Include="Interfaces\IDistanceCalculator.cs" />
     200    <Compile Include="Matching\SymbolicExpressionTreeCanonicalSorter.cs" />
    193201    <Compile Include="Matching\SymbolicExpressionTreeEqualityComparer.cs" />
    194202    <Compile Include="Matching\SymbolicExpressionTreeMatching.cs" />
     
    196204    <Compile Include="Matching\SymbolicExpressionTreeNodeComparer.cs" />
    197205    <Compile Include="Matching\SymbolicExpressionTreeNodeSimilarityComparer.cs" />
    198 
    199     <Compile Include="SymbolicExpressionTreeBacktransformator.cs" />    <Compile Include="SlidingWindow\GenerationalSlidingWindowAnalyzer.cs" />
     206    <Compile Include="SimilarityCalculators\BottomUpSimilarityCalculator.cs" />
     207    <Compile Include="SimilarityCalculators\MaxCommonSubtreeSimilarityCalculator.cs" />
     208    <Compile Include="SymbolicExpressionTreeBacktransformator.cs" />
     209    <Compile Include="SlidingWindow\GenerationalSlidingWindowAnalyzer.cs" />
    200210    <Compile Include="SlidingWindow\OffspringSelectionSlidingWindowAnalyzer.cs" />
    201211    <Compile Include="SlidingWindow\SlidingWindowAnalyzer.cs" />
     
    204214    <Compile Include="SlidingWindow\SlidingWindowVisualizer.cs" />
    205215    <Compile Include="SymbolGraph\FPGraph.cs" />
    206     <Compile Include="SymbolGraph\SymbolGraph.cs" />    <Compile Include="SymbolicDataAnalysisExpressionPruningOperator.cs" />
     216    <Compile Include="SymbolGraph\SymbolGraph.cs" />
     217    <Compile Include="SymbolicDataAnalysisExpressionPruningOperator.cs" />
    207218    <Compile Include="SymbolicDataAnalysisExpressionTreeSimilarityCalculator.cs" />
    208219    <Compile Include="SymbolicDataAnalysisSolutionPruningOptimizer.cs" />
     
    302313    <Compile Include="Symbols\VariableConditionTreeNode.cs" />
    303314    <Compile Include="Symbols\VariableTreeNode.cs" />
    304 
    305     <Compile Include="TransformationToSymbolicTreeMapper.cs" />    <Compile Include="Tracking\FragmentGraph\FragmentGraph.cs" />
     315    <Compile Include="TransformationToSymbolicTreeMapper.cs" />
     316    <Compile Include="Tracking\FragmentGraph\FragmentGraph.cs" />
    306317    <Compile Include="Tracking\SymbolicDataAnalysisExpressionAfterCrossoverOperator.cs" />
    307318    <Compile Include="Tracking\SymbolicDataAnalysisExpressionBeforeCrossoverOperator.cs" />
     
    309320    <Compile Include="Tracking\SymbolicDataAnalysisExpressionBeforeManipulatorOperator.cs" />
    310321    <Compile Include="Tracking\SymbolicDataAnalysisExpressionTracing.cs" />
    311     <Compile Include="TreeDistance\BottomUpDistanceCalculator.cs" />
    312     <Compile Include="TreeDistance\IsomorphicTreeDistance.cs" />    <None Include="HeuristicLab.snk" />
     322    <None Include="HeuristicLab.snk" />
    313323    <None Include="Plugin.cs.frame" />
    314324    <None Include="Properties\AssemblyInfo.cs.frame" />
  • branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/SymbolicDataAnalysisExpressionTreeLinearInterpreter.cs

    r11208 r11232  
    352352    }
    353353
    354     private static void PrepareInstructions(LinearInstruction[] code, Dataset dataset) {
     354    public static void PrepareInstructions(LinearInstruction[] code, Dataset dataset) {
    355355      for (int i = 0; i != code.Length; ++i) {
    356356        var instr = code[i];
  • branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Matching/SymbolicExpressionTreeMaxCommonSequenceCalculator.cs

    r10833 r11232  
    2323using System.Collections.Generic;
    2424
    25 namespace HeuristicLab.Problems.DataAnalysis.Symbolic.Matching {
     25namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
    2626  public class MaxCommonSequenceCalculator<T, TComp>
    2727    where T : class
  • branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SymbolicDataAnalysisProblem.cs

    r11208 r11232  
    2323using System.Drawing;
    2424using System.Linq;
     25using HeuristicLab.Analysis;
    2526using HeuristicLab.Common;
    2627using HeuristicLab.Common.Resources;
     
    2930using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
    3031using HeuristicLab.Optimization;
     32using HeuristicLab.Optimization.Operators;
    3133using HeuristicLab.Parameters;
    3234using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    3335using HeuristicLab.PluginInfrastructure;
    34 using HeuristicLab.Problems.DataAnalysis.Symbolic.Analyzers;
    3536using HeuristicLab.Problems.Instances;
    36 
    3737
    3838namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
     
    233233      Operators.Add(new MinAverageMaxSymbolicExpressionTreeLengthAnalyzer());
    234234      Operators.Add(new SymbolicExpressionTreeLengthAnalyzer());
    235       Operators.Add(new SymbolicDataAnalysisGenealogyAnalyzer());
     235      Operators.Add(new SingleObjectivePopulationDiversityAnalyzer());
     236      Operators.Add(new BottomUpSimilarityCalculator());
    236237      ParameterizeOperators();
    237238    }
     
    353354        op.EvaluatorParameter.ActualName = EvaluatorParameter.Name;
    354355      }
    355       // add tracking analyzer
    356       foreach (var op in operators.OfType<SymbolicDataAnalysisGenealogyAnalyzer>()) {
    357         op.BeforeCrossoverOperatorParameter.ActualValue = new SymbolicDataAnalysisExpressionBeforeCrossoverOperator();
    358         op.AfterCrossoverOperatorParameter.ActualValue = new SymbolicDataAnalysisExpressionAfterCrossoverOperator();
    359         op.BeforeManipulatorOperatorParameter.ActualValue = new SymbolicDataAnalysisExpressionBeforeManipulatorOperator();
    360         op.AfterManipulatorOperatorParameter.ActualValue = new SymbolicDataAnalysisExpressionAfterManipulatorOperator();
    361         // get crossover parameter names
    362         var crossover = operators.OfType<ISymbolicExpressionTreeCrossover>().FirstOrDefault();
    363         if (crossover != null) {
    364           op.BeforeCrossoverOperator.ParentsParameter.ActualName = crossover.ParentsParameter.Name;
    365           op.AfterCrossoverOperator.ParentsParameter.ActualName = crossover.ParentsParameter.Name;
    366           op.BeforeCrossoverOperator.ChildParameter.ActualName = crossover.ChildParameter.Name;
    367           op.AfterCrossoverOperator.ChildParameter.ActualName = crossover.ChildParameter.Name;
    368         }
    369         // get manipulator parameter names
    370         var manipulator = operators.OfType<ISymbolicExpressionTreeManipulator>().FirstOrDefault();
    371         if (manipulator != null) {
    372           op.BeforeManipulatorOperator.ChildParameter.ActualName = manipulator.SymbolicExpressionTreeParameter.Name;
    373           op.AfterManipulatorOperator.ChildParameter.ActualName = manipulator.SymbolicExpressionTreeParameter.Name;
    374         }
    375         var creator = operators.OfType<ISymbolicExpressionTreeCreator>().FirstOrDefault();
    376         if (creator != null) {
    377           op.PopulationParameter.ActualName = creator.SymbolicExpressionTreeParameter.ActualName;
    378         }
     356      foreach (var op in operators.OfType<SingleObjectiveSolutionSimilarityCalculator>()) {
     357        op.QualityVariableName = "Quality";
     358        op.SolutionVariableName = SolutionCreator.SymbolicExpressionTreeParameter.ActualName;
     359      }
     360      foreach (var op in operators.OfType<SingleObjectivePopulationDiversityAnalyzer>()) {
     361        op.SimilarityCalculator = operators.OfType<BottomUpSimilarityCalculator>().SingleOrDefault();
    379362      }
    380363    }
Note: See TracChangeset for help on using the changeset viewer.