Python code for Sutton & Barto's book Reinforcement Learning: An Introduction (2nd Edition)
Click to view the sample output
- Tic-Tac-Toe
- Figure 2.2: Average performance of epsilon-greedy action-value methods on the 10-armed testbed
- Figure 2.3: Optimistic initial action-value estimates
- Figure 2.4: Average performance of UCB action selection on the 10-armed testbed
- Figure 2.5: Average performance of the gradient bandit algorithm
- Figure 4.1: Convergence of iterative policy evaluation on a small gridworld
- Figure 4.2: Jack’s car rental problem
- Figure 4.3: The solution to the gambler’s problem
- Figure 5.1: Approximate state-value functions for the blackjack policy
- Figure 5.4: Weighted importance sampling
- Figure 5.5: Ordinary importance sampling with surprisingly unstable estimates
- Figure 6.2: Random walk
- Figure 6.3: Batch updating
- Figure 6.4: Sarsa applied to windy grid world
- Figure 6.5: The cliff-walking task
- Figure 6.7: Interim and asymptotic performance of TD control methods
- Figure 6.8: Comparison of Q-learning and Double Q-learning
- Figure 8.3: Average learning curves for Dyna-Q agents varying in their number of planning steps
- Figure 8.5: Average performance of Dyna agents on a blocking task
- Figure 8.6: Average performance of Dyna agents on a shortcut task
- Figure 8.7: Prioritized sweeping significantly shortens learning time on the Dyna maze task
- Figure 9.1: Gradient Monte Carlo algorithm on the 1000-state random walk task
- Figure 9.2: Semi-gradient n-steps TD algorithm on the 1000-state random walk task
- Figure 9.5: Fourier basis vs polynomials on the 1000-state random walk task
- Figure 9.8: Example of feature width’s effect on initial generalization and asymptotic accuracy
- Figure 9.10: Single tiling and multiple tilings on the 1000-state random walk task
- Python 2.7
- Numpy
- Matplotlib