Ignore:
Timestamp:
03/08/09 12:48:18 (11 years ago)
Author:
gkronber
Message:

Merged change sets from CEDMA branch to trunk:

File:
1 copied

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.GP.StructureIdentification.TimeSeries/StandardGP.cs

    r1245 r1287  
    2929using HeuristicLab.DataAnalysis;
    3030using HeuristicLab.Data;
     31using HeuristicLab.Operators;
     32using HeuristicLab.Logging;
    3133
    3234namespace HeuristicLab.GP.StructureIdentification.TimeSeries {
    3335  public class StandardGP : HeuristicLab.GP.StructureIdentification.StandardGP {
     36    public bool Autoregressive {
     37      get { return ProblemInjector.GetVariable("Autoregressive").GetValue<BoolData>().Data; }
     38      set { ProblemInjector.GetVariable("Autoregressive").GetValue<BoolData>().Data = value; }
     39    }
     40
    3441    protected override IOperator CreateFunctionLibraryInjector() {
    3542      return new FunctionLibraryInjector();
    3643    }
    3744
     45    protected override IOperator CreateProblemInjector() {
     46      return new ProblemInjector();
     47    }
     48
    3849    protected override IOperator CreateBestSolutionProcessor() {
    3950      IOperator seq = base.CreateBestSolutionProcessor();
    40       TheilInequalityCoefficientEvaluator trainingTheil = new TheilInequalityCoefficientEvaluator();
    41       trainingTheil.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
    42       trainingTheil.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
    43       trainingTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TrainingTheilInequalityCoefficient";
    44       trainingTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TrainingTheilInequalityCoefficientBias";
    45       trainingTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TrainingTheilInequalityCoefficientVariance";
    46       trainingTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TrainingTheilInequalityCoefficientCovariance";
     51      seq.AddSubOperator(BestSolutionProcessor);
     52      return seq;
     53    }
    4754
    48       TheilInequalityCoefficientEvaluator validationTheil = new TheilInequalityCoefficientEvaluator();
    49       validationTheil.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
    50       validationTheil.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
    51       validationTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "ValidationTheilInequalityCoefficient";
    52       validationTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "ValidationTheilInequalityCoefficientBias";
    53       validationTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "ValidationTheilInequalityCoefficientVariance";
    54       validationTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "ValidationTheilInequalityCoefficientCovariance";
     55    public override IEditor CreateEditor() {
     56      return new StandardGpEditor(this);
     57    }
    5558
    56       TheilInequalityCoefficientEvaluator testTheil = new TheilInequalityCoefficientEvaluator();
    57       testTheil.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
    58       testTheil.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
    59       testTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TestTheilInequalityCoefficient";
    60       testTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TestTheilInequalityCoefficientBias";
    61       testTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TestTheilInequalityCoefficientVariance";
    62       testTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TestTheilInequalityCoefficientCovariance";
     59    public override IView CreateView() {
     60      return new StandardGpEditor(this);
     61    }
    6362
    64       seq.AddSubOperator(trainingTheil);
    65       seq.AddSubOperator(validationTheil);
    66       seq.AddSubOperator(testTheil);
     63    internal static IOperator BestSolutionProcessor {
     64      get {
     65        SequentialProcessor seq = new SequentialProcessor();
     66        TheilInequalityCoefficientEvaluator trainingTheil = new TheilInequalityCoefficientEvaluator();
     67        trainingTheil.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
     68        trainingTheil.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
     69        trainingTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TrainingTheilInequalityCoefficient";
     70        trainingTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TrainingTheilInequalityCoefficientBias";
     71        trainingTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TrainingTheilInequalityCoefficientVariance";
     72        trainingTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TrainingTheilInequalityCoefficientCovariance";
    6773
    68       return seq;
     74        TheilInequalityCoefficientEvaluator validationTheil = new TheilInequalityCoefficientEvaluator();
     75        validationTheil.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
     76        validationTheil.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
     77        validationTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "ValidationTheilInequalityCoefficient";
     78        validationTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "ValidationTheilInequalityCoefficientBias";
     79        validationTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "ValidationTheilInequalityCoefficientVariance";
     80        validationTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "ValidationTheilInequalityCoefficientCovariance";
     81
     82        TheilInequalityCoefficientEvaluator testTheil = new TheilInequalityCoefficientEvaluator();
     83        testTheil.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
     84        testTheil.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
     85        testTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TestTheilInequalityCoefficient";
     86        testTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TestTheilInequalityCoefficientBias";
     87        testTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TestTheilInequalityCoefficientVariance";
     88        testTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TestTheilInequalityCoefficientCovariance";
     89
     90        SimpleEvaluator trainingEvaluator = new SimpleEvaluator();
     91        trainingEvaluator.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
     92        trainingEvaluator.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
     93        trainingEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesTraining";
     94
     95        SimpleEvaluator validationEvaluator = new SimpleEvaluator();
     96        validationEvaluator.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
     97        validationEvaluator.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
     98        validationEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesValidation";
     99
     100        SimpleEvaluator testEvaluator = new SimpleEvaluator();
     101        testEvaluator.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
     102        testEvaluator.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
     103        testEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesTest";
     104
     105        LinechartInjector trainingChartInjector = new LinechartInjector();
     106        trainingChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
     107        trainingChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesTraining";
     108        trainingChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartTrainingPredictedValues";
     109
     110        LinechartInjector validationChartInjector = new LinechartInjector();
     111        validationChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
     112        validationChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesValidation";
     113        validationChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartValidationPredictedValues";
     114
     115        LinechartInjector testChartInjector = new LinechartInjector();
     116        testChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
     117        testChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesTest";
     118        testChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartTestPredictedValues";
     119
     120        seq.AddSubOperator(trainingTheil);
     121        seq.AddSubOperator(validationTheil);
     122        seq.AddSubOperator(testTheil);
     123        seq.AddSubOperator(trainingEvaluator);
     124        seq.AddSubOperator(trainingChartInjector);
     125        seq.AddSubOperator(validationEvaluator);
     126        seq.AddSubOperator(validationChartInjector);
     127        seq.AddSubOperator(testEvaluator);
     128        seq.AddSubOperator(testChartInjector);
     129
     130        return seq;
     131      }
    69132    }
    70133  }
Note: See TracChangeset for help on using the changeset viewer.