class_docstr: Neural Network to approximate v value.
  Args:
      obs_dim (int): Dimension of observation space.
      act_dim (int): Dimension of action space.
      softmax (book): Whether to use softmax activation at the end of last layer
code: def __init__(self, obs_dim, act_dim, softmax=False):
      super().__init__()
  
      self.obs_dim = obs_dim
      self.act_dim = act_dim
  
      self.softmax = softmax
  
      self.l1 = nn.Linear(obs_dim, 16)
      self.l2 = nn.Linear(144, 24)
      self.l3 = nn.Linear(40, 128)
      self.l4 = nn.Linear(128, act_dim)
  
      self.network = nn.Sequential(
          nn.Conv2D(
              in_channels=5,
              out_channels=16,
              kernel_size=(3, 3),
              stride=2,
          ),
          nn.ReLU(),
          nn.Conv2D(
              in_channels=16,
              out_channels=16,
              kernel_size=(3, 3),
              stride=2,
          ),
          nn.ReLU(),
          nn.Conv2D(
              in_channels=16,
              out_channels=16,
              kernel_size=(2, 2),
              stride=1,
          ),
          nn.ReLU(),
      )
  
file_path: PARL/examples/Baselines/Halite_competition/paddle/rl_trainer/model.py
imports: import parl
  import paddle
  import paddle.nn
  import paddle.nn.functional
label_desc: Use image node_id 1 to create a new Model object from inherited base classes: parl with example: obj = Model(obs_dim, act_dim, softmax)