27 lines
748 B
Python

from __future__ import absolute_import
import tensorflow as tf
class ValueFunctionBase(object):
"""
base class of value functions. Children include state values V(s) and action values Q(s, a)
"""
def __init__(self, value_tensor, observation_placeholder):
self.observation_placeholder = observation_placeholder
self._value_tensor = tf.squeeze(value_tensor) # canonical values has shape (batchsize, )
def eval_value(self, **kwargs):
"""
:return: batch of corresponding values in numpy array
"""
raise NotImplementedError()
@property
def value_tensor(self):
"""
:return: tensor of the corresponding values
"""
return self._value_tensor