class_docstr: A wrapper that applies exponential moving averaging to action outputs.
code: def _action(
      self, time_step, policy_state, seed
  ):  # pytype: disable=signature-mismatch  # overriding-parameter-count-checks
      # Get action from the wrapped policy.
      wrapped_policy_state, moving_average = policy_state
      wrapped_policy_step = self._wrapped_policy.action(
          time_step, wrapped_policy_state, seed
      )
  
      # Compute smoothed action & updated action tensor.
      def _smooth_action_tensor(smoothing_state_tensor, action_tensor):
          return (
              smoothing_state_tensor * self._smoothing_coefficient
              + action_tensor * (1.0 - self._smoothing_coefficient)
          )
  
      smoothed_action = tf.nest.map_structure(
          _smooth_action_tensor,
          moving_average,
          wrapped_policy_step.action,
      )
  
      # Package results in PolicyStep.
      return policy_step.PolicyStep(
          smoothed_action,
          (wrapped_policy_step.state, smoothed_action),
          wrapped_policy_step.info,
      )
  
file_path: agents/tf_agents/policies/temporal_action_smoothing.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from typing import Optional, Text
  import tensorflow
  from tf_agents.policies import tf_policy
  from tf_agents.trajectories import policy_step
label_desc: Use image node_id 5 for calling the TemporalActionSmoothing obj's underlying member method code with example usage: obj._action(time_step, policy_state, seed) and returns: policy_step, unknown