23

I'm in a course called "Intelligent Machines" at the university. We were introduced with 3 methods of reinforced learning, and with those we were given the intuition of when to use them, and I quote:

  1. Q-Learning - Best when MDP can't be solved.
  2. Temporal Difference Learning - best when MDP is known or can be learned but can't be solved.
  3. Model-based - best when MDP can't be learned.

Are there any good examples explaining when to choose one method over the other?

5
  • 8
    Q-learning is a temporal difference algorithm.
    – Don Reba
    Commented Dec 9, 2015 at 17:50
  • 1
    Isn't Q-Learning used to calculate the Q-value, While Temporal Difference Learning used to calculate Value function? [They are related, But not exactly the same i guess] Or am i mistaken? Commented Dec 9, 2015 at 17:53
  • 5
    V is the state value function, Q is the action value function, and Q-learning is a specific off-policy temporal-difference learning algorithm. You can learn either Q or V using different TD or non-TD methods, both of which could be model-based or not.
    – Don Reba
    Commented Dec 10, 2015 at 2:42
  • 1
    Thanks for the semantics, But it still doesn't help me of finding an example of when to use which one. When is it good to choose Q value over V function? Commented Dec 11, 2015 at 15:49
  • 2
    You need the action-value function in order to form a policy. You can learn it directly or you can retrieve it from the state-value function if you know the state transition probability function.
    – Don Reba
    Commented Dec 11, 2015 at 16:06

1 Answer 1

41

Temporal Difference is an approach to learning how to predict a quantity that depends on future values of a given signal. It can be used to learn both the V-function and the Q-function, whereas Q-learning is a specific TD algorithm used to learn the Q-function. As stated by Don Reba, you need the Q-function to perform an action (e.g., following an epsilon-greedy policy). If you have only the V-function you can still derive the Q-function by iterating over all the possible next states and choosing the action which leads you to the state with the highest V-value. For examples and more insights, I recommend the classic book from Sutton and Barto.

In model-free RL you don't learn the state-transition function (the model) and you can rely only on samples. However, you might be interested also in learning it, for example because you cannot collect many samples and want to generate some virtual ones. In this case we talk about model-based RL. Model-based RL is quite common in robotics, where you cannot perform many real simulations or the robot will break. This is a good survey with many examples (but it only talks about policy search algorithms). For another example have a look at this paper. Here the authors learn - along with a policy - a Gaussian process to approximate the forward model of the robot, in order to simulate trajectories and to reduce the number of real robot interaction.

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