()
| 200 | |
| 201 | |
| 202 | def main(): |
| 203 | env = gym.make('MountainCarContinuous-v0') |
| 204 | ft = FeatureTransformer(env, n_components=100) |
| 205 | D = ft.dimensions |
| 206 | pmodel = PolicyModel(ft, D, [], []) |
| 207 | gamma = 0.99 |
| 208 | |
| 209 | if 'monitor' in sys.argv: |
| 210 | filename = os.path.basename(__file__).split('.')[0] |
| 211 | monitor_dir = './' + filename + '_' + str(datetime.now()) |
| 212 | env = wrappers.Monitor(env, monitor_dir) |
| 213 | |
| 214 | |
| 215 | totalrewards, pmodel = random_search(env, pmodel, gamma) |
| 216 | |
| 217 | print("max reward:", np.max(totalrewards)) |
| 218 | |
| 219 | # play 100 episodes and check the average |
| 220 | avg_totalrewards = play_multiple_episodes(env, 100, pmodel, gamma, print_iters=True) |
| 221 | print("avg reward over 100 episodes with best models:", avg_totalrewards) |
| 222 | |
| 223 | plt.plot(totalrewards) |
| 224 | plt.title("Rewards") |
| 225 | plt.show() |
| 226 | |
| 227 | |
| 228 | if __name__ == '__main__': |
no test coverage detected