RLPark 1.0.0
Reinforcement Learning Framework in Java

NormalizedFunction.java

Go to the documentation of this file.
00001 package rlpark.plugin.rltoys.problems.puddleworld;
00002 
00003 import rlpark.plugin.rltoys.algorithms.functions.ContinuousFunction;
00004 import rlpark.plugin.rltoys.math.normalization.MinMaxNormalizer;
00005 import zephyr.plugin.core.api.monitoring.annotations.Monitor;
00006 
00007 @Monitor
00008 public class NormalizedFunction implements ContinuousFunction {
00009   private final ContinuousFunction function;
00010   private final MinMaxNormalizer normalizer = new MinMaxNormalizer();
00011   private double normalizedRewardValue;
00012   private double rewardValue;
00013 
00014   public NormalizedFunction(ContinuousFunction function) {
00015     this.function = function;
00016   }
00017 
00018   @Override
00019   public double value(double[] input) {
00020     rewardValue = function.value(input);
00021     normalizer.update(rewardValue);
00022     normalizedRewardValue = normalizer.normalize(rewardValue);
00023     return normalizedRewardValue;
00024   }
00025 
00026   public ContinuousFunction function() {
00027     return function;
00028   }
00029 }
 All Classes Namespaces Files Functions Variables Enumerations
Zephyr
RLPark