Changeset 9835 for branches/HeuristicLab.EvolutionaryTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SlidingWindow
- Timestamp:
- 08/01/13 13:01:40 (11 years ago)
- Location:
- branches/HeuristicLab.EvolutionaryTracking
- Files:
-
- 5 edited
- 1 copied
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.EvolutionaryTracking
- Property svn:ignore
-
old new 1 *.suo 2 _ReSharper.HeuristicLab.Tracking 1 _ReSharper.Sliding Window GP 3 2 bin
-
- Property svn:mergeinfo changed
/branches/Sliding Window GP (added) merged: 7820,7837,7845,7850,9047,9126,9145,9162-9165 -
Property
svn:global-ignores
set to
_ReSharper.HeuristicLab.Tracking
- Property svn:ignore
-
branches/HeuristicLab.EvolutionaryTracking/HeuristicLab.Problems.DataAnalysis.Symbolic
- Property svn:mergeinfo changed
-
branches/HeuristicLab.EvolutionaryTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4
-
Property
svn:mergeinfo
set to
(toggle deleted branches)
/branches/Sliding Window GP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 merged eligible /trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 merged eligible /branches/Benchmarking/sources/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 6917-7005 /branches/CloningRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 4656-4721 /branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 5471-5473 /branches/DataAnalysis SolutionEnsembles/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 5815-6180 /branches/DataAnalysis/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 4458-4459,4462,4464 /branches/GP.Grammar.Editor/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 6284-6795 /branches/GP.Symbols (TimeLag, Diff, Integral)/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 5060 /branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 7098-8789 /branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 8388-8942 /branches/NET40/sources/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 5138-5162 /branches/ParallelEngine/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 5175-5192 /branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 7568-7810 /branches/QAPAlgorithms/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 6350-6627 /branches/Restructure trunk solution/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 6828 /branches/SuccessProgressAnalysis/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 5370-5682 /branches/Trunk/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 6829-6865 /branches/VNS/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 5594-5752 /branches/histogram/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4 5959-6341
-
Property
svn:mergeinfo
set to
(toggle deleted branches)
-
branches/HeuristicLab.EvolutionaryTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SlidingWindow/SlidingWindowAnalyzer.cs
r9164 r9835 23 23 using HeuristicLab.Core; 24 24 using HeuristicLab.Data; 25 using HeuristicLab.Operators; 26 using HeuristicLab.Optimization; 25 27 using HeuristicLab.Parameters; 26 28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; … … 31 33 public abstract class SlidingWindowAnalyzer : SymbolicDataAnalysisAnalyzer { 32 34 private const string ProblemDataParameterName = "ProblemData"; 35 private const string EvaluatorParameterName = "Evaluator"; 33 36 private const string FitnessCalculationPartitionParameterName = "FitnessCalculationPartition"; 34 37 private const string ValidationPartitionParameterName = "ValidationPartition"; … … 64 67 get { return (ILookupParameter<BoolValue>)Parameters[TerminateSlidingWindowParameterName]; } 65 68 } 69 public ILookupParameter<IEvaluator> EvaluatorParameter { 70 get { return (ILookupParameter<IEvaluator>)Parameters[EvaluatorParameterName]; } 71 } 66 72 #endregion 67 73 … … 83 89 : base() { 84 90 Parameters.Add(new ValueLookupParameter<IDataAnalysisProblemData>(ProblemDataParameterName, "The problem data on which the symbolic data analysis solution should be evaluated.")); 91 Parameters.Add(new LookupParameter<IEvaluator>(EvaluatorParameterName, "")); 85 92 Parameters.Add(new LookupParameter<IntRange>(FitnessCalculationPartitionParameterName, "")); 86 93 Parameters.Add(new LookupParameter<IntRange>(ValidationPartitionParameterName, "")); … … 94 101 } 95 102 103 [StorableHook(HookType.AfterDeserialization)] 104 private void AfterDeserialization() { 105 if (!Parameters.ContainsKey(EvaluatorParameterName)) 106 Parameters.Add(new LookupParameter<IEvaluator>(EvaluatorParameterName, "")); 107 } 108 96 109 public override IOperation Apply() { 97 110 //intialize sliding window 111 TerminateSlidingWindowParameter.ActualValue = new BoolValue(false); 112 98 113 if (FitnessCalculationPartitionParameter.ActualValue == null) { 99 TerminateSlidingWindowParameter.ActualValue = new BoolValue(false);100 114 FitnessCalculationPartitionParameter.ActualValue = (IntRange)InitialSlidingWindow.Clone(); 101 115 ValidationPartitionParameter.ActualValue = new IntRange(InitialSlidingWindow.End, InitialSlidingWindow.End + ValidiationSlidingWindowSize.Value); … … 115 129 116 130 //check if update should be performed or if the algorithm should stop 117 if (fitnessPartition.End > ProblemDataParameter.ActualValue.TrainingPartition.End) 131 if (fitnessPartition.End > ProblemDataParameter.ActualValue.TrainingPartition.End) { 118 132 TerminateSlidingWindowParameter.ActualValue.Value = true; 119 else { 120 FitnessCalculationPartitionParameter.ActualValue.Start = fitnessPartition.Start; 121 FitnessCalculationPartitionParameter.ActualValue.End = fitnessPartition.End; 122 ValidationPartitionParameter.ActualValue.Start = fitnessPartition.End; 123 ValidationPartitionParameter.ActualValue.End = ValidationPartitionParameter.ActualValue.Start + ValidiationSlidingWindowSize.Value; 133 return base.Apply(); 124 134 } 125 135 126 return base.Apply(); 136 FitnessCalculationPartitionParameter.ActualValue.Start = fitnessPartition.Start; 137 FitnessCalculationPartitionParameter.ActualValue.End = fitnessPartition.End; 138 ValidationPartitionParameter.ActualValue.Start = fitnessPartition.End; 139 ValidationPartitionParameter.ActualValue.End = ValidationPartitionParameter.ActualValue.Start + ValidiationSlidingWindowSize.Value; 140 141 //reevaluate all individuals with new sliding window 142 UniformSubScopesProcessor subScopesProcessor = new UniformSubScopesProcessor(); 143 subScopesProcessor.Operator = EvaluatorParameter.ActualValue; 144 subScopesProcessor.Depth.Value = 1; 145 var operation = ExecutionContext.CreateChildOperation(subScopesProcessor); 146 var successor = base.Apply(); 147 return new OperationCollection() { operation, successor }; 127 148 } 128 149 -
branches/HeuristicLab.EvolutionaryTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SlidingWindow/SlidingWindowVisualizer.cs
r9162 r9835 85 85 else throw new NotSupportedException(); 86 86 87 var targetData = ProblemDataParameter.ActualValue.Dataset.GetDoubleValues(targetVariable );87 var targetData = ProblemDataParameter.ActualValue.Dataset.GetDoubleValues(targetVariable, ProblemDataParameter.ActualValue.TrainingIndices); 88 88 slidingWindowData = new SlidingWindowData(FitnessCalculationPartitionParameter.ActualValue, targetData); 89 89 results.Add(new Result(SlidingWindowDataResultName, slidingWindowData)); … … 96 96 var classificationSolution = trainingSolution as IClassificationSolution; 97 97 98 if (regressionSolution != null) estimatedValues = regressionSolution.Estimated Values;99 if (classificationSolution != null) estimatedValues = classificationSolution.Estimated ClassValues;98 if (regressionSolution != null) estimatedValues = regressionSolution.EstimatedTrainingValues; 99 if (classificationSolution != null) estimatedValues = classificationSolution.EstimatedTrainingClassValues; 100 100 } 101 101
Note: See TracChangeset
for help on using the changeset viewer.