Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
02/11/15 03:01:59 (10 years ago)
Author:
gkronber
Message:

#2283 commit for 'realistic' (same settings for ant and symbreg) experiment

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.Problems.GrammaticalOptimization/HeuristicLab.Algorithms.GrammaticalOptimization/SequentialDecisionPolicies/GenericFunctionApproximationGrammarPolicy.cs

    r11976 r11977  
    6262
    6363
    64       /*
    65       const double beta = 1;
     64     
     65      const double beta = 20;
    6666      var w = from idx in Enumerable.Range(0, maxIdx)
    6767              let afterStateQ = activeAfterStates[idx]
     
    7171      selectedStateIdx = actionIndexMap[bestAction];
    7272      Debug.Assert(selectedStateIdx >= 0);
    73       */
    74 
    75 
     73     
     74
     75      /*
    7676      if (random.NextDouble() < 0.2) {
    7777        selectedStateIdx = actionIndexMap[random.Next(maxIdx)];
     
    9191        selectedStateIdx = actionIndexMap[bestIdxs[random.Next(bestIdxs.Count)]];
    9292      }
    93 
    94 
    95 
    96 
     93      */
    9794      return true;
    9895    }
     
    132129
    133130    public double GetValue(string state) {
    134       return problem.GetFeatures(state).Average(feature => GetWeight(feature));
     131      return problem.GetFeatures(state).Sum(feature => GetWeight(feature));
    135132    }
    136133
     
    142139    private void UpdateWeights(string state, double reward) {
    143140      double delta = reward - GetValue(state);
    144       delta /= problem.GetFeatures(state).Count();
    145       const double alpha = 0.001;
     141      // delta /= problem.GetFeatures(state).Count();
     142      //const double alpha = 0.01;
    146143      foreach (var feature in problem.GetFeatures(state)) {
    147144        featureTries[feature.Id] = GetFeatureTries(feature.Id) + 1;
    148145        Debug.Assert(GetFeatureTries(feature.Id) >= 1);
    149         //double alpha = 1.0 / GetFeatureTries(feature.Id);
    150         //alpha = Math.Max(alpha, 0.01);
     146        double alpha = 1.0 / GetFeatureTries(feature.Id);
     147        alpha = Math.Max(alpha, 0.001);
    151148
    152149        double w;
Note: See TracChangeset for help on using the changeset viewer.