class_docstr: ACER model that consists of a separate policy and V-function.
  
  Args:
      pi (Policy): Policy.
      q (QFunction): Q-function.
class_docstr_tok: ["ACER","model","that","consists","of","a","separate","policy","and","V-function",".","Args",":","pi","(","Policy",")",":","Policy",".","q","(","QFunction",")",":","Q-function","."]
code: def __call__(self, obs):
      action_distrib = self.pi(obs)
      action_value = self.q(obs)
      v = F.sum(action_distrib.all_prob * action_value.q_values, axis=1)
      return action_distrib, action_value, v
  
imports: import copy
  from logging import getLogger
  import chainer
  from chainer import functions
  import numpy
  from chainerrl.action_value import SingleActionValue
  from chainerrl import agent
  from chainerrl import distribution
  from chainerrl import links
  from chainerrl.misc import async_
  from chainerrl.misc import copy_param
  from chainerrl.recurrent import Recurrent
  from chainerrl.recurrent import RecurrentChainMixin
  from chainerrl.recurrent import state_kept
  from chainerrl.recurrent import state_reset
label_desc: Use image node_id 2 for calling the ACERSeparateModel obj's underlying member method code with example usage: obj.__call__(obs) and returns: action_distrib,  action_value,  v