RLPark 1.0.0
Reinforcement Learning Framework in Java
|
00001 package rlpark.plugin.rltoys.algorithms.representations.ltu.networks; 00002 00003 import rlpark.plugin.rltoys.algorithms.functions.states.Projector; 00004 import rlpark.plugin.rltoys.math.vector.BinaryVector; 00005 import rlpark.plugin.rltoys.math.vector.RealVector; 00006 import rlpark.plugin.rltoys.math.vector.implementations.BVector; 00007 00008 public class RandomNetworkProjector implements Projector { 00009 private static final long serialVersionUID = 520975442867936390L; 00010 private final RandomNetwork randomNetwork; 00011 00012 public RandomNetworkProjector(RandomNetwork randomNetwork) { 00013 this.randomNetwork = randomNetwork; 00014 } 00015 00016 @Override 00017 public RealVector project(double[] obs) { 00018 BinaryVector bobs = obs != null ? BVector.toBinary(obs) : null; 00019 return randomNetwork.project(bobs); 00020 } 00021 00022 @Override 00023 public int vectorSize() { 00024 return randomNetwork.outputSize; 00025 } 00026 00027 @Override 00028 public double vectorNorm() { 00029 return randomNetwork.nbActive; 00030 } 00031 }