I understand that, in Reinforcement Learning algorithms, such as Q-learning, to prevent selecting the actions with greatest q-values too fast and allow for exploration, we use eligibility traces.

Here are some questions

  1. Does $\epsilon$-greedy solve the same problem?

  2. Do these two approaches aim to attain the same objective?

  3. What are the advantages of each over the other?


Epsilon-greedy is one method of making an agent explore the state space to ensure that the agent doesn't settle on a sub-optimal policy. By taking random actions, even with a small probability, the agent can get to places in the state space it normally wouldn't see and on the chance that the outcome is better than what it normally would have seen, it can modify its value function (or Q function) for that state (or action) to ensure that that action is taken in the future. An alternative to Epsilon-greedy methods is modifying the policy directly using Policy Gradient methods.

Eligibility traces attempt to solve a different problem. Their function is to keep a short term memory of what states have been recently visited. They unify and generalize TD and Monte Carlo methods producing a family of methods spanning a spectrum that has Monte Carlo methods at one end ($\lambda = 1$) and one-step TD methods at the other ($\lambda = 0$). Using traces, one can keep the features of previous states around, but at faded values depending on the choice of $\lambda$. Choosing a low $\gamma$ (near $0$) makes the traces myopic in that the traces quickly go to $0$. If a larger $\lambda$ is used (near $1$) the traces stay around for much longer and can help an agent determine the difference between what would otherwise be 2 identical states.

For more information, check out Reinforcement Learning: An Introduction, chapter 2 (page 30 introduces $\epsilon$-greedy methods) and chapter 12 (eligibility traces).


Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.