I'm currently writing a program using keras (python 3) to play a game similar to Atari games, only in this one there are objects moving in the screen in different angles and directions (in most of Atari games I've encountered the objects you need to shoot are static). The agent's aim is to shoot them.

after executing every action I get feedback from the environment: I get the locations of all the objects on the screen, the locations of the collisions that happened, my position (angle of the turret) and the total score (from which I can calculate the reward)

I defined that each state will consists from the parameters mentioned above.

I want to use softmax algorithm in order to choose the next action, but I'm not sure how to do it. I'd be very grateful if anyone could help me or refer me to a source that can explain the syntax? currently I'm using decay epsilon-greedy algorithm.

Thank you very much for your time and attention.

  • 1
    $\begingroup$ What reinforcement learning algorithm are you using? Softmax isn't an algorithm its a function that scales vector components so that they all add up to 1. If you're using epsilon-greedy I assume that you're using some of the value function algorithms (e.g. DQN algorithm) so there's no need to use softmax, simply apply epsilon-greedy action choice procedure on the raw output $\endgroup$ – Brale Sep 26 '19 at 13:00
  • 1
    $\begingroup$ You would not change from $\epsilon$-greedy directly to softmax without also changing from .e.g. DQN to a policy gradient method like A3C. There is Gibbs sampling though, which is softmax plus a "temperature" hyperparameter that replaces $\epsilon$ and could be applied in a DQN agent. Is that what you are looking for? $\endgroup$ – Neil Slater Sep 26 '19 at 13:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.