class_docstr: This is Duel DQN architecture.
  see https://arxiv.org/abs/1511.06581 for more information.
class_docstr_tok: ["This","is","Duel","DQN","architecture",".","see","https",":","\/\/arxiv.org\/abs\/1511.06581","for","more","information","."]
code: def __init__(self, available_actions_count):
      super().__init__()
      self.conv1 = nn.Sequential(
          nn.Conv2d(1, 8, kernel_size=3, stride=2, bias=False),
          nn.BatchNorm2d(8),
          nn.ReLU(),
      )
  
      self.conv2 = nn.Sequential(
          nn.Conv2d(8, 8, kernel_size=3, stride=2, bias=False),
          nn.BatchNorm2d(8),
          nn.ReLU(),
      )
  
      self.conv3 = nn.Sequential(
          nn.Conv2d(8, 8, kernel_size=3, stride=1, bias=False),
          nn.BatchNorm2d(8),
          nn.ReLU(),
      )
  
      self.conv4 = nn.Sequential(
          nn.Conv2d(8, 16, kernel_size=3, stride=1, bias=False),
          nn.BatchNorm2d(16),
          nn.ReLU(),
      )
  
      self.state_fc = nn.Sequential(
          nn.Linear(96, 64), nn.ReLU(), nn.Linear(64, 1)
      )
  
      self.advantage_fc = nn.Sequential(
          nn.Linear(96, 64),
          nn.ReLU(),
          nn.Linear(64, available_actions_count),
      )
  
imports: import itertools
  import os
  import random
  from collections import deque
  from time import sleep, time
  import numpy
  import skimage.transform
  import torch
  import torch.nn
  import torch.optim
  from tqdm import trange
  import vizdoom
label_desc: Use image node_id 1 to create a new DuelQNet object from inherited base classes: nn with example: obj = DuelQNet(available_actions_count)