What is the difference between policy and action in reinforcement learning? I'm confused with the two terminology - action and policy - in Reinforcement Learning. As far as I know, the action is:


  It is what the agent makes in a given state.


However, the book I'm reading now (Hands-On Reinforcement Learning with Python) writes the following to explain policy:


  we defined the entity that tells us what to do in every state as policy.


Now, I feel that the policy is the same as the action. So what is the difference between the two, and how can I use them apart correctly?
A policy is a function that maps states to a probability distribution over all possible actions. 

So, in a typical Atari game, there might just be a handful of actions, represented by the keys that are used to play the game. In this context, the policy of a reinforcement learner might be represented by a pretty complex neural network that gets pixels as input and gives action probabilities as output.