def step(self):
        loss = 0.0

        simulator = self.simulator

        obs = simulator.get_screenshot().copy()
        a = self.policy((self.ohist, self.ahist), self.epsilon)
        simulator.act(a)
        r = simulator.reward()

        term = False
        obsp = None
        if simulator.episode_over():
            term = True
            obsp = obs.copy()
            simulator.reset_episode()
            iobs = simulator.get_screenshot().copy()
            self.empty_history()
            self.initial_obs(iobs)
        else:
            obsp = simulator.get_screenshot().copy()
            self.update_history(obsp, a)

        if self.viz: # move the image to the screen / shut down the game if display is closed
            simulator.refresh_viz_display()

        self.memory.store_tuple(obs, a, r, obsp, term)
Performs a single step with the DQN and updates the replay memory
dataset/ETHPy150Open sisl/Chimp/chimp/agents/dqn_agent.py/DQNAgent.step