
DeepMind DQN Implementation from Nature - mrdrozdov
https://github.com/deepmind/dqn
======
mrdrozdov
Always useful to see implementations of simple components, like epsilon greedy
action choice:

    
    
        function nql:eGreedy(state, testing_ep)
            self.ep = testing_ep or (self.ep_end +
                        math.max(0, (self.ep_start - self.ep_end) * (self.ep_endt -
                        math.max(0, self.numSteps - self.learn_start))/self.ep_endt))
            -- Epsilon greedy
            if torch.uniform() < self.ep then
                return torch.random(1, self.n_actions)
            else
                return self:greedy(state)
            end
        end

