class_docstr: Abstract base class for Distributional RL value ops tests.
code: def setUp(self):
      super(CategoricalDistRLTest, self).setUp()
  
      # Define both state- and action-value transitions here for the different
      # learning rules tested in the subclasses.
  
      self.atoms_tm1 = tf.constant([0.5, 1.0, 1.5], dtype=tf.float32)
      self.atoms_t = tf.identity(self.atoms_tm1)
  
      self.logits_q_tm1 = tf.constant(
          [
              [[1, 1, 1], [0, 9, 9], [0, 9, 0], [0, 0, 0]],
              [[9, 9, 0], [9, 0, 9], [0, 0, 0], [9, -9, 0]],
              [[1, 1, 1], [0, 9, 9], [0, 0, 0], [0, 9, 0]],
              [[9, 9, 0], [9, 0, 9], [0, 0, 0], [9, -9, 0]],
              [[9, 9, 0], [9, 0, 9], [0, 0, 0], [9, -9, 0]],
          ],
          dtype=tf.float32,
      )
      self.logits_q_t = tf.constant(
          [
              [[1, 1, 1], [9, 0, 9], [1, 0, 0], [0, 0, 9]],
              [[9, 9, 0], [9, 0, 0], [1, 1, 1], [9, -9, 0]],
              [[1, 1, 1], [9, 0, 9], [0, 0, 9], [1, 0, 0]],
              [[9, 9, 0], [9, 0, 0], [1, 1, 1], [9, -9, 0]],
              [[9, 9, 0], [9, 0, 0], [0, 9, 9], [9, -9, 0]],
          ],
          dtype=tf.float32,
      )
      # mean Q_t are approximately:
      #  1.0 1.0 0.5 1.5
      #  0.75 0.5 1.0 0.5
      #  1.0 1.0 1.5 0.5
      #  0.75 0.5 1.0 0.5
      #  0.75 0.5 1.25 0.5
  
      self.logits_v_tm1 = tf.constant(
          [[0, 9, 0], [9, 0, 9], [0, 9, 0], [9, 9, 0], [9, 0, 9]],
          dtype=tf.float32,
      )
      self.logits_v_t = tf.constant(
          [[0, 0, 9], [1, 1, 1], [0, 0, 9], [1, 1, 1], [0, 9, 9]],
          dtype=tf.float32,
      )
  
      self.a_tm1 = tf.constant([2, 1, 3, 0, 1], dtype=tf.int32)
      self.r_t = tf.constant(
          [0.5, 0.0, 0.5, 0.8, -0.1], dtype=tf.float32
      )
      self.pcont_t = tf.constant(
          [0.8, 1.0, 0.8, 0.0, 1.0], dtype=tf.float32
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import numpy
  import tensorflow.compat.v1
  from trfl import dist_value_ops
label_desc: Use image node_id 1 for calling the CategoricalDistRLTest obj's underlying member method code with example usage: obj.setUp() without return types