Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
02/25/13 12:37:18 (11 years ago)
Author:
sforsten
Message:

#1980:

  • fixed several bugs (crossover, subsumption, serialization etc.)
  • added ModuloOperator
  • CombinedIntegerVectorClassificationProblem\Data and VariableVectorClassificationProblem\Data inherit from ConditionActionClassificationProblem\Data
  • it can now be set how often the analyzers have to be executed
  • VariableVectorAction, VariableVectorCondition and VariableVectorInput now inherit from Item
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/LearningClassifierSystems/HeuristicLab.Problems.VariableVectorClassification/3.3/VariableVectorClassificationProblemData.cs

    r9228 r9242  
    3333using HeuristicLab.Problems.DataAnalysis;
    3434
    35 namespace HeuristicLab.Problems.CombinedIntegerVectorClassification {
     35namespace HeuristicLab.Problems.VariableVectorClassification {
    3636  [StorableClass]
    3737  [Item("CombinedIntegerVectorClassificationProblemData", "A problem data for LCS.")]
    38   public class VariableVectorClassificationProblemData : ConditionActionClassificationProblemData {
     38  public class VariableVectorClassificationProblemData : ConditionActionClassificationProblemData, IVariableVectorClassificationProblemData {
    3939
    4040    #region parameter properites
     
    9090          var doubleValues = (variableValues as List<double>).Distinct();
    9191          if (doubleValues.All(x => x % 1 == 0)) {
    92             variable = new IntVariable(variableName, doubleValues.Select(x => Convert.ToInt32(x)));
     92            // ToList call is necessary, because otherwise it wouldn't be possible to serialize it
     93            variable = new IntVariable(variableName, doubleValues.Select(x => Convert.ToInt32(x)).ToList());
    9394          } else {
    9495            variable = new DoubleVariable(variableName, doubleValues);
     
    105106      if (!fetchInputCache.ContainsKey(rowNumber)) {
    106107        VariableVectorInput input = new VariableVectorInput();
    107         IEnumerable<string> variableNames = SampleVariableVector.Condition.Keys.Union(SampleVariableVector.Action.Keys);
     108        IEnumerable<string> variableNames = SampleVariableVector.Condition.VariableDictionary.Keys.Union(SampleVariableVector.Action.VariableDictionary.Keys);
    108109        foreach (var variableName in variableNames) {
    109           input.Add(variableName, Dataset.GetValue(rowNumber, variableName));
     110          input.InputDictionary.Add(variableName, Dataset.GetValue(rowNumber, variableName));
    110111        }
    111112        fetchInputCache.Add(rowNumber, input);
     
    118119      if (!fetchActionCache.ContainsKey(rowNumber)) {
    119120        var action = SampleVariableVector.Action.GetEmptyCopy();
    120         foreach (var variableName in action.Keys) {
    121           action[variableName].SetTo(Dataset.GetValue(rowNumber, variableName));
     121        foreach (var variableName in action.VariableDictionary.Keys) {
     122          action.VariableDictionary[variableName].SetTo(Dataset.GetValue(rowNumber, variableName));
    122123        }
    123124        fetchActionCache.Add(rowNumber, action);
Note: See TracChangeset for help on using the changeset viewer.