Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
05/01/11 22:02:28 (13 years ago)
Author:
cneumuel
Message:

#1215

  • added weight parameters for quality, stddev and evaluated solutions
  • lots of fixes
Location:
branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Analyzers
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Analyzers/BestParameterConfigurationAnalyzer.cs

    r6018 r6090  
    9898      }
    9999
    100       // population
     100      // population (TODO: extract into PopulationAnalyzer)
    101101      int i = 0;
    102102      RunCollection rc = new RunCollection();
  • branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Analyzers/ReferenceQualityAnalyzer.cs

    r6018 r6090  
    4141    }
    4242
     43    public LookupParameter<DoubleValue> QualityWeightParameter {
     44      get { return (LookupParameter<DoubleValue>)Parameters[MetaOptimizationProblem.QualityWeightParameterName]; }
     45    }
     46    public LookupParameter<DoubleValue> StandardDeviationWeightParameter {
     47      get { return (LookupParameter<DoubleValue>)Parameters[MetaOptimizationProblem.StandardDeviationWeightParameterName]; }
     48    }
     49    public LookupParameter<DoubleValue> EvaluatedSolutionsWeightParameter {
     50      get { return (LookupParameter<DoubleValue>)Parameters[MetaOptimizationProblem.EvaluatedSolutionsWeightParameterName]; }
     51    }
     52
    4353    public ReferenceQualityAnalyzer()
    4454      : base() {
     
    4959      Parameters.Add(new LookupParameter<DoubleArray>("ReferenceQualityDeviations", ""));
    5060      Parameters.Add(new LookupParameter<DoubleArray>("ReferenceEvaluatedSolutionAverages", ""));
    51       Parameters.Add(new LookupParameter<ConstrainedItemList<IProblem>>(MetaOptimizationProblem.ProblemsParameterName, ""));
     61      Parameters.Add(new LookupParameter<ConstrainedItemList<IProblem>>(MetaOptimizationProblem.ProblemsParameterName));
    5262      Parameters.Add(new LookupParameter<BoolValue>("Maximization", "Set to false if the problem should be minimized."));
     63      Parameters.Add(new LookupParameter<DoubleValue>(MetaOptimizationProblem.QualityWeightParameterName));
     64      Parameters.Add(new LookupParameter<DoubleValue>(MetaOptimizationProblem.StandardDeviationWeightParameterName));
     65      Parameters.Add(new LookupParameter<DoubleValue>(MetaOptimizationProblem.EvaluatedSolutionsWeightParameterName));
    5366    }
    5467
     
    6578      ItemArray<DoubleValue> qualities = QualityParameter.ActualValue;
    6679      bool maximization = MaximizationParameter.ActualValue.Value;
     80      double qualityWeight = QualityWeightParameter.ActualValue.Value;
     81      double standardDeviationWeight = StandardDeviationWeightParameter.ActualValue.Value;
     82      double evaluatedSolutionsWeight = EvaluatedSolutionsWeightParameter.ActualValue.Value;
    6783
    6884      if (ReferenceQualityAveragesParameter.ActualValue == null) {
     
    7692        ReferenceEvaluatedSolutionAveragesParameter.ActualValue = referenceEvaluatedSolutionAverages;
    7793
    78         NormalizePopulation(solutions, qualities, referenceQualityAverages, referenceQualityDeviations, referenceEvaluatedSolutionAverages, 1, 1, 1, maximization);
     94        NormalizePopulation(solutions, qualities, referenceQualityAverages, referenceQualityDeviations, referenceEvaluatedSolutionAverages, qualityWeight, standardDeviationWeight, evaluatedSolutionsWeight, maximization);
    7995
    8096        results.Add(new Result("ReferenceQualities", referenceQualityAverages));
  • branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Analyzers/SolutionCacheAnalyzer.cs

    r6018 r6090  
    7171        }
    7272
    73         var runCollection = allRuns.Single(x => x.Key.Value == key).Value;
    74         foreach (var run in solution.Runs) {
    75           if (!((BoolValue)run.Results["Meta.FromCache"]).Value || first) {
    76             run.Results["Meta.FromCache"] = new BoolValue(true);
    77             runCollection.Add(run);
     73        if (solution.Runs != null) { // Runs is null when a base-level algorithm exception happened due to invalid parameters
     74          var runCollection = allRuns.Single(x => x.Key.Value == key).Value;
     75          foreach (var run in solution.Runs) {
     76            if (!((BoolValue)run.Results["Meta.FromCache"]).Value || first) {
     77              run.Results["Meta.FromCache"] = new BoolValue(true);
     78              runCollection.Add(run);
     79            }
    7880          }
    7981        }
Note: See TracChangeset for help on using the changeset viewer.