{ "nbformat": 4, "nbformat_minor": 2, "metadata": { "language_info": { "name": "python", "codemirror_mode": { "name": "ipython", "version": 3 }, "version": "3.7.0-final" }, "orig_nbformat": 2, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "npconvert_exporter": "python", "pygments_lexer": "ipython3", "version": 3, "kernelspec": { "name": "python37064bitbasecondaf1f4ce8bd9ee468caf98567667ef0765", "display_name": "Python 3.7.0 64-bit ('base': conda)" } }, "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "对于第13章的学习。\n", "\n", "案例为`动作切换的小型走廊任务`,代码风格改变了。" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "#######################################################################\n", "# Copyright (C) #\n", "# 2018 Sergii Bondariev (sergeybondarev@gmail.com) #\n", "# 2018 Shangtong Zhang(zhangshangtong.cpp@gmail.com) #\n", "# Permission given to modify the code as long as you keep this #\n", "# declaration at the top #\n", "#######################################################################\n", "\n", "import numpy as np\n", "import matplotlib\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "from tqdm import tqdm\n", "\n", "def true_value(p):\n", " \"\"\" True value of the first state\n", " Args:\n", " p (float): probability of the action 'right'.\n", " Returns:\n", " True value of the first state.\n", " The expression is obtained by manually solving the easy linear system\n", " of Bellman equations using known dynamics.\n", " \"\"\"\n", " return (2 * p - 4) / (p * (1 - p))\n", "\n", "class ShortCorridor:\n", " \"\"\"\n", " Short corridor environment, see Example 13.1\n", " \"\"\"\n", " def __init__(self):\n", " self.reset()\n", "\n", " def reset(self):\n", " self.state = 0\n", "\n", " def step(self, go_right):\n", " \"\"\"\n", " Args:\n", " go_right (bool): chosen action\n", " Returns:\n", " tuple of (reward, episode terminated?)\n", " \"\"\"\n", " if self.state == 0 or self.state == 2:\n", " if go_right:\n", " self.state += 1\n", " else:\n", " self.state = max(0, self.state - 1)\n", " else:\n", " if go_right:\n", " self.state -= 1\n", " else:\n", " self.state += 1\n", "\n", " if self.state == 3:\n", " # terminal state\n", " return 0, True\n", " else:\n", " return -1, False\n", "\n", "def softmax(x):\n", " t = np.exp(x - np.max(x))\n", " return t / np.sum(t)\n", "\n", "class ReinforceAgent:\n", " \"\"\"\n", " ReinforceAgent that follows algorithm\n", " 'REINFORNCE Monte-Carlo Policy-Gradient Control (episodic)'\n", " \"\"\"\n", " def __init__(self, alpha, gamma):\n", " # set values such that initial conditions correspond to left-epsilon greedy\n", " self.theta = np.array([-1.47, 1.47])\n", " self.alpha = alpha\n", " self.gamma = gamma\n", " # first column - left, second - right\n", " self.x = np.array([[0, 1],\n", " [1, 0]])\n", " self.rewards = []\n", " self.actions = []\n", "\n", " def get_pi(self):\n", " h = np.dot(self.theta, self.x)\n", " t = np.exp(h - np.max(h))\n", " pmf = t / np.sum(t)\n", " # never become deterministic,\n", " # guarantees episode finish\n", " imin = np.argmin(pmf)\n", " epsilon = 0.05\n", "\n", " if pmf[imin] < epsilon:\n", " pmf[:] = 1 - epsilon\n", " pmf[imin] = epsilon\n", "\n", " return pmf\n", "\n", " def get_p_right(self):\n", " return self.get_pi()[1]\n", "\n", " def choose_action(self, reward):\n", " if reward is not None:\n", " self.rewards.append(reward)\n", "\n", " pmf = self.get_pi()\n", " go_right = np.random.uniform() <= pmf[1]\n", " self.actions.append(go_right)\n", "\n", " return go_right\n", "\n", " def episode_end(self, last_reward):\n", " self.rewards.append(last_reward)\n", "\n", " # learn theta\n", " G = np.zeros(len(self.rewards))\n", " G[-1] = self.rewards[-1]\n", "\n", " for i in range(2, len(G) + 1):\n", " G[-i] = self.gamma * G[-i + 1] + self.rewards[-i]\n", "\n", " gamma_pow = 1\n", "\n", " for i in range(len(G)):\n", " j = 1 if self.actions[i] else 0\n", " pmf = self.get_pi()\n", " grad_ln_pi = self.x[:, j] - np.dot(self.x, pmf)\n", " update = self.alpha * gamma_pow * G[i] * grad_ln_pi\n", "\n", " self.theta += update\n", " gamma_pow *= self.gamma\n", "\n", " \"\"\"\n", " 及时刷新\n", " \"\"\"\n", " self.rewards = []\n", " self.actions = []\n", "\n", "class ReinforceBaselineAgent(ReinforceAgent):\n", " def __init__(self, alpha, gamma, alpha_w):\n", " super(ReinforceBaselineAgent, self).__init__(alpha, gamma)\n", " self.alpha_w = alpha_w\n", " self.w = 0\n", "\n", " def episode_end(self, last_reward):\n", " self.rewards.append(last_reward)\n", "\n", " # learn theta\n", " G = np.zeros(len(self.rewards))\n", " G[-1] = self.rewards[-1]\n", "\n", " for i in range(2, len(G) + 1):\n", " G[-i] = self.gamma * G[-i + 1] + self.rewards[-i]\n", "\n", " gamma_pow = 1\n", "\n", " for i in range(len(G)):\n", " self.w += self.alpha_w * gamma_pow * (G[i] - self.w)\n", "\n", " j = 1 if self.actions[i] else 0\n", " pmf = self.get_pi()\n", " grad_ln_pi = self.x[:, j] - np.dot(self.x, pmf)\n", " \"\"\"\n", " 直接减去 self.w ,说明这里的 v 与 s, w 间\n", " 还是表格型关系,即最基本的线性特征关系\n", " \"\"\"\n", " update = self.alpha * gamma_pow * (G[i] - self.w) * grad_ln_pi\n", "\n", " self.theta += update\n", " gamma_pow *= self.gamma\n", "\n", " self.rewards = []\n", " self.actions = []\n", "\n", "def trial(num_episodes, agent_generator):\n", " env = ShortCorridor()\n", " agent = agent_generator()\n", "\n", " rewards = np.zeros(num_episodes)\n", " for episode_idx in range(num_episodes):\n", " rewards_sum = 0\n", " reward = None\n", " env.reset()\n", "\n", " while True:\n", " go_right = agent.choose_action(reward)\n", " reward, episode_end = env.step(go_right)\n", " rewards_sum += reward\n", "\n", " if episode_end:\n", " agent.episode_end(reward)\n", " break\n", "\n", " rewards[episode_idx] = rewards_sum\n", "\n", " return rewards" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "def example_13_1():\n", " epsilon = 0.05\n", " fig, ax = plt.subplots(1, 1)\n", "\n", " # Plot a graph\n", " p = np.linspace(0.01, 0.99, 100)\n", " y = true_value(p)\n", " ax.plot(p, y, color='red')\n", "\n", " # Find a maximum point, can also be done analytically by taking a derivative\n", " imax = np.argmax(y)\n", " pmax = p[imax]\n", " ymax = y[imax]\n", " ax.plot(pmax, ymax, color='green', marker=\"*\", label=\"optimal point: f({0:.2f}) = {1:.2f}\".format(pmax, ymax))\n", "\n", " # Plot points of two epsilon-greedy policies\n", " ax.plot(epsilon, true_value(epsilon), color='magenta', marker=\"o\", label=\"epsilon-greedy left\")\n", " ax.plot(1 - epsilon, true_value(1 - epsilon), color='blue', marker=\"o\", label=\"epsilon-greedy right\")\n", "\n", " ax.set_ylabel(\"Value of the first state\")\n", " ax.set_xlabel(\"Probability of the action 'right'\")\n", " ax.set_title(\"Short corridor with switched actions\")\n", " ax.set_ylim(ymin=-105.0, ymax=5)\n", " ax.legend()\n", "\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "output_type": "display_data", "data": { "text/plain": "
", "image/svg+xml": "\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZAAAAEWCAYAAABIVsEJAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzt3Xd4FNX6wPHvG0BaQFBAwADBQidEQAQFAUHBAlhQRFBREbvi1Wu9V9FrL1fE+tMrYEHBBqKiiEpXQEpEadI7CKF3Qt7fH2cSlpCyJNmd3c37eZ55sjszO/PO7mbfOefMnCOqijHGGHOs4vwOwBhjTHSyBGKMMSZfLIEYY4zJF0sgxhhj8sUSiDHGmHyxBGKMMSZfLIEUESLSR0Sm+B1HYRGRmiKyS0SK5bB8gIh8FEkxeeuoiJwWpnjaiMiifL52qIg8VUhxhOW7JyK9ROSHUO/HHGYJJIaISGsR+UVEtovIFhGZKiJnhmhfYf+BDqSqq1Q1XlUP+RVDVlljEpEJItLXx3gmq2rdjOciskJEOvoVT2ESkUQvGRfPmKeqw1T1Aj/jKmqK572KiQYiUh74BrgN+BQ4DmgD7A/BvsL2vRGR4qqalte8UO7PGJM9K4HEjjoAqvqJqh5S1b2q+oOqzg1cSUReEpGtIrJcRC4MmF9dREZ7JZclInJzwLIBIvK5iHwkIjuAW4FHgB5elc3v2QUkIjVE5EsR2SQiqSLyujc/TkT+JSIrReRvEflARI73lmWcWd4kIquAn/OYV9x7XW0RmSgiO0VkHFApSyxdRWSeiGzzSgb1A5atEJEHRWQusDtrghSRJ0TkNe9xCRHZLSIveM9Li8g+EakYGJOIPI1L4K9779HrAZvsKCKLvc/hDRGRHN6/FiIyU0R2iMhGEfmvN/99EbnPe3yyt8/bveeneZ+hiEg7EVnjzf8QqAl87cXzgDc/o9S6TURWi0ifgBAqisi33ns6XURODYitnoiM8/a1SESuClh2ovdd2iEiM4BTyYWIfCYiG8SVnCeJSMOAZaVF5GXvu7JdRKaISGlgkrfKNu94WkmWqjIROVtEfvNe95uInB2wbIKI/EdcKX2niPwgIpW8ZaXEfddTvfflNxE5KbdjKLJU1aYYmIDyQCrwPnAhUDHL8j7AQeBmoBiupLIOEG/5ROBNoBSQDGwCOnjLBnivvRR30lHam/dRLvEUA34HXgHKettt7S27EVgCnALEA18CH3rLEgEFPvBeVzqPecW91/0K/BcoCZwL7MyID5dcdwPnAyWAB7z9H+ctXwGkADWA0tkcy3nAH97js4GlwPSAZb9niT0jpglA3yzbUlxJsQLuB30T0DmH9/BX4FrvcTzQMuD9+9p7fI0Xz4iAZV95j9sBawK2twLoGPC8pvc+9fTelxOBZG/ZUGAL0AJXUzEMGO4tKwusBm7wljUFNgMNveXDcaXgskAjYC0wJZfvyo1AOe+zGwikBCx7w3sfT8Z9p8721jvivQ74jk/xHp8AbAWu9WLs6T0/MeCzWep9N0p7z5/zlt0CfA2U8fbZDCjv9/94JE6+B2BTIX6YUN/7x18DpAGjgZO8ZX2AJQHrlvH+AavifjgPAeUClj8LDPUeDwAmZdnXAHJPIK1wP47Fs1n2E3B7wPO6uARVPOCH4ZSA5bnNK477IUwDygYs/5jDCeTfwKcBy+K8H7V23vMVwI25HEtpYB/uB/YhXOlrDe5H/QlgUNaYvOcTyD6BtA54/inwUA77neRtv1KW+acC27zjeNv7wVvjLXsf+If3uB25J5CHgZE57Hso8L+A5xcBC73HPYDJWdb/P+Bx3A/uQaBewLJnyCWBZNlOBe89Ot47vr1Ak2zWO+K9DviOZySQa4EZWV7zK9An4LP5V8Cy24Hvvcc3Ar8ASX7/T0f6ZFVYMURVF6hqH1VNwJ35Vced0WXYELDuHu9hvLfeFlXdGbDuStxZX4bVxxhODWClZt+eUN3bfuC+igOB1QTZ7S+nGKoDW1V1d5ZtZrs/VU33thXU8anqXmAm0BZXupmI+4E5x5s3MafX5mBDwOM9uM8gOzfhzpAXetUol3jxLAV24UqKbXAlmnUiUvcY46mBOws/1jhrAWd51TvbRGQb0At3MlIZ91kGvp+Bn8URRKSYiDwnIkvFVY+u8BZV8qZSecSYk6zfsYw4Aj/znI7vQ2AsMFxE1onICyJSIh8xxDxLIDFKVRfiziIbBbH6OuAEESkXMK8m7iw9c5NZd5HHNlcDNbO2JwTsr1aWfaUBG/PYfk77XI+rry+bZZvZ7s9rc6hB7seX1URcddUZwG/e8064Kp5JObymQF1dq+piVe0JVAGeBz4POMaJQHdcNdxa7/l1QEVcdVww8awmj/aJHKwGJqpqhYApXlVvw5U603Dvb4aa2W7FuQboBnTElToSvfmCqxbbl0OMeb23Wb9jGXGszWbdIzeselBVn1DVBrgqs0tw763JwhJIjPAaNe8TkQTveQ1cve+0vF6rqqtxZ9TPeg2ISbiz32G5vGwjkCgiOX2HZuB+2J8TkbLeds/xln0C3Cuu4TseV8UxIofSSp5UdSWuhPCEiBwnIq2BLgGrfApcLCIdvDPJ+3BXp/1yDLvJ+IGer6oH8KqngOWquimH12zEtfPki4j0FpHKXolpmzc747LlicCdHE5eE4C7cFU4OV3anDWeYbgG/au8hv8TRSQ5iNC+AeqIyLXiLiooISJnikh9b99fAgNEpIyINACuz2Vb5XCfRSquWvWZjAXecQ8G/ivuIo9iXmN5SVyiSifn93eMF+M13rH1ABp4sedKRNqLSGNx9/PswFXJRczl4pHEEkjs2AmcBUwXkd24xPEn7scyGD1xZ3/rgJHA46o6Lpf1P/P+porI7KwLvR+SLsBpwCpcm0EPb/FgXDXBJGA57izzriDjzMk1uOPfgquL/yAglkVAb+A13FltF6CLlwiC9QuuLSTjB3u+F3dOpQ+AV4Hu4q62GnQM+8rQGZgnIru8bV2tqvu8ZRNxP74Z+5+C+wHOLZ5ngX951U73q+oqXNvGfbj3LQVokldQXlXnBcDVuO/LBlwJqaS3yp246qANuFLwkFw29wGuamkt7j3NesJzP/AHrtS3xdtPnFcF+zQw1TuellliTMWVHO7DJacHgEtUdXNex4erivsclzwW4N5r3+55imQZV+AYY4wxx8RKIMYYY/LFEogxxph8sQRijDEmXyyBGGOMyZeY7kyxUqVKmpiY6HcYxhgTVWbNmrVZVSvntV5MJ5DExERmzpzpdxjGGBNVRCTH3gMCWRWWMcaYfLEEYowxJl8sgRhjjMkXSyDGGGPyxRKIMcaYfIm6BCIinb0hNJeIyEN+x2OMMUVVVCUQr3vlN3BDtjYAenrdRRtjjAmzqEoguMF7lqjqMq8r7uG4wWiMMcaEWbQlkJM5cqjMNRw5RCUi0k9EZorIzE2bchrnxxhjTEFFWwKRbOYdMaCJqr6jqs1VtXnlynneiW+MMSafoi2BrOHIsZYTcCOiGWOMCbNoSyC/Aad7Y2kfhxtSc7TPMRljTJEUVZ0pqmqaiNwJjAWKAYNVdZ7PYRljTJEUVQkEQFXHAGP8jsMYY4q6aKvCMsYYEyEsgRhjjMkXSyDGGGPyxRKIMcaYfLEEYowxJl8sgRhjjMkXSyDGGGPyxRKIMcaYfLEEYowxJl8sgRhjjMkXSyDGGGPyxRKIMcaYfLEEYowxJl8sgRhjjMkXSyDGxLD1O9fTdmhbNuza4HcoJgZZAjEmhv1n0n+YsmoKT0580u9QTAwSVfU7hpBp3ry5zpw50+8wjAlOejrs3Qt79rhp71437dsH+/e76cCBw9PBg25KSzs8pafDoUOU3v0w+0g7ahelKM7e+OcgLg6KFYPixQ9PJUq46bjjoGRJKFXK/S1d+vBUtqybSpd22zAxSURmqWrzvNaLuhEJjYlIhw7B1q2Qmgpbtrhp61bYtu3wtH27m3bsgJ073bRr1+Fp795CC2dZPNx/AYyqB3uOgzIH4LKF8NIPabDr/sLZSdmyUK6cm44//vBUseLhqVIlOPFE97dKFTdVrGjJJ0ZYAjEmJ/v2wfr1btqwwU0bN7rp77/dtGkTbN7skkVupfkyZQ7/wJYv7350q1SB+PjDU8bZfZkyR571B5YGMkoHGaWFjCmjNFGsGMTFUS0ujvLj7mHf70MoVew49h13gPLX3UjV919xcaanuxLLoUPub0Zp5uBBV7rJKPHs23e4JJRRMtqz53DS27nTJcQdO1xyXL/eJcstW9xrs1O8uDv2atXcdPLJkJAANWpAzZpQq5Z7ftxxoflcTaGxBGKKprQ0WLsWVq5006pVsHq1m9auhTVrXGkiK5Ejz6aTk93zjOmEE9wZ9wknQIUK7my7QgX3Ix9mG/dv4dbmt9KvWT/emfUO63etd4kqXPbudYkkNdUl2k2bXNLduNEl43Xr3Ps9bZpLwoFEXBI59VQ47TQ31a0L9eq5eT68n+Zo1gZiYtfevbB0KSxeDEuWuGnZMjetXOnOvgNVquTOghMS3FnxySdD9eqHz5SrVnXrFLfzrkK3b59L2qtXw4oVblq2zH1+S5e6xJOheHGXTBo1gsaN4Ywz3FStml/Rx5xg20AsgZjot20bzJsH8+e7acECWLTIJYnA73elSu7s9ZRToHZtSEx0U0aVSZkyfh2Bycv27e4zXbTIfcbz5sGff8Ly5YfXqVoVzjwTzjrLTS1bhrfEFUMsgWAJJOakp7tSRErK4emPP9yZa4YyZVw1R926bqpTx02nnuqqkkxs2bEDfv8d5syBWbNg+nSXZMC1BzVtCm3aQIcO0Lata2MyebIEgiWQqKZ6uH58xgyYORNmz3aNtuCqMerXh6QkV43RqBE0bOgaYe0Kn6Jt61aXSKZMgcmT3eP9+127ydlnw8UXQ5cu7gRDxO9oI5IlECyBRJWDB12JYsoUN/36q7uiB9xVR8nJ0Ly5O6M84wxo0MDNNyYve/e679S4cTB2LMyd6+affjpccQX06AFNmlgyCWAJBEsgEe3QIVei+PlnGD/e/YPv3u2WnXKKO1Ns2dJNSUl21Y0pPKtWwTffwFdfwU8/ue9inTpw7bXQp49rDyviLIFgCSTirF8PY8bADz/Ajz+6SzzBlSbat4dzz4XWrd2VT8aEw6ZN8OWX8MknMHGiq/7s1AluvRUuuaTIVodaAsESiO9UXQPnqFHw9deuxAEuQVxwAZx/Ppx3nrt6xhi/LV0KQ4bA0KHuXqDTToN77nGlkiJ2NZclECyB+ELVXQ0zfLg7s1u+3NUtt2rlGi8vvthVSVl9s4lUBw+67+4rr7gG+EqV4J//hDvuKDJXcVkCwRJIWC1eDB984BLHkiWuzaJDB7j8cujaFU46ye8IjTl2v/wCTz7pGt+rVIFHHoHbb4/5NrlgE0jRrOAzhWPXLnjvPdduUacOPPOMuynv3XddVxXffQc332zJw0Svs8+G77+HqVPdpeL9+7srtsaN8zuyiBBxCUREXhSRhSIyV0RGikiFgGUPi8gSEVkkIp38jLNImzcP7rzTdfXRt6/r6+i559zVLT/+6OadcILfURpTeM4+2323R49295RccAF0735kFytFUMQlEGAc0EhVk4C/gIcBRKQBcDXQEOgMvCkixXyLsqhRdSWKjh3dmdi777qqqalTXdcSDz7oEooxsUrE3YA4bx48/bS7MKRhQ/jiC78j803EJRBV/UFVM0bCmQZkXJTdDRiuqvtVdTmwBGjhR4xFSlqaa9to1Aguusj1M/Xss+4qlQ8/dGdm1iBuipJSpVxbyOzZrsq2e3d3D0nGfUxFSMQlkCxuBL7zHp8MrA5YtsabdwQR6SciM0Vk5qZNm8IQYow6eBAGD3bdPVx/ves65MMP3VVVDz3krkwxpihr2ND1mDBgAAwb5k6mli3zO6qw8iWBiMiPIvJnNlO3gHUeBdKAYRmzstnUUZeQqeo7qtpcVZtXrlw5NAcQy1Ths8/czX033eTGs/jqK9fNSO/eNsiPMYFKlIDHH3fVu6tXu+52fvjB76jCxpeBDVS1Y27LReR64BKggx6+zngNUCNgtQRgXWgiLKKmTIH77nOdFzZq5BoML7nEqqiMyUunTvDbb3DZZa6q94MP4Jpr/I4q5CKuCktEOgMPAl1VdU/AotHA1SJSUkRqA6cDM/yIMeasX+/qcNu0cW0bgwe7EkeXLpY8jAnWqae6i0ratHGl9Xff9TuikIvEodVeB0oC48T9eE1T1VtVdZ6IfArMx1Vt3aGqh3LZjslLejq8+aZrENy/3/195JEic7etMYWuXDnX31v37tCvn7tX6t57/Y4qZIJKICJSCzhdVX8UkdJAcVXdGYqAVPW0XJY9DTwdiv0WOUuWwI03uvESLrgAXn/ddW9tjCmY0qVh5Ejo1Qv+8Q83kNkNN/gdVUjkWYUlIjcDnwP/581KAEaFMigTQqouWSQluXERhgxxd9pa8jCm8Bx3HHz8sTs569fP3YQYg4JpA7kDOAfYAaCqi4EqoQzKhMiWLa6R7667oF07d0NUnz7WzmFMKJQocfiKxssvPzyQVQwJJoHsV9UDGU9EpDjZXD5rItwvv7hR/caMcb2Mfvut3TluTKiVL+/+18qXdz1Rx9i9acEkkIki8ghQWkTOBz4Dvg5tWKZQvfeeK3GUKOESSf/+VuowJlwSEtwIiJs2uX7iYqgH9GASyEPAJuAP4BZgjKo+GtKoTOFIS3ONeH37uhH/Zs1yNzoZY8IrOdl1ODp6NLzzjt/RFJpgEshdqvquql6pqt1V9V0RuSfkkZmC2b0bunVz1VV33+2K0RUq5P06Y0xo3H23a1S/915YuNDvaApFMAnk+mzm9SnkOExh2rbN3Rn7/ffw1lvw6quuLytjjH/i4txwuWXKuEt8DxzI8yWRLscEIiI9ReRroLaIjA6YxgOp4QvRHJO//3bVVTNmwIgRcOutfkdkjMlQrZq7Q332bHcTb5TL7bT0F2A9UAl4OWD+TiD2rkeLBRs3Qtu2bmCnr792pRBjTGS57DL3v/nEE64LoRNP9DuifMsxgajqSmAl0Cp84Zh827rV1a+uXu3Gb27Txu+IjDE5eeklNzTuE0/AoEF+R5NvwdyJ3lJEfhORXSJyQEQOiciOcARngrRrl+sBdOFCGDXKkocxka5RI3eH+ptvRnWDejCN6K8DPYHFQGmgL/BaKIMyx+DAAVcknjEDPvkEzj/f74iMMcF44gnXcek//+l3JPkWVHfuqroEKKaqh1R1CNA+tGGZoN1zj+tn53//c90lGGOiQ5Uq8Oij7ibDSZP8jiZfgkkge0TkOCBFRF4QkXsB6+87Erz1Frz9Njz4YMz29mlMTLvrLteI/sorfkeSL8EkkGu99e4EduNGBbRTXb+NH+9uTLrkEnjaerg3JiqVLg233OKGjY7C8dSDSSCXquo+Vd2hqk+o6j9ww80av6xeDVde6bpgHzYMihXzOyJjTH7dcYf7H34t+pqW7U70aHPoEFx3Hezb585aypf3OyJjTEFUrw49erhOT3dE1wWu+bkTfQJ2J7p/Xn4ZJkxwZys2CJQxsaF/f9i50w3wFkVEc+ha2BvGtjbwLK5H3gw7gbmqmhb68AqmefPmOnPmTL/DKDyzZ0PLlq6TxE8/tS7ZjYklrVvDunWweLHv1dIiMktV8+y6O8cSiKquVNUJQEdgsqpOxHVtkgDYL1e47dkD11zjLv37v/+z5GFMrOnfH5Yvh+++8zuSoAXTBjIJKCUiJwM/ATcAQ0MZlMnGM8/AokWuN88TTvA7GmNMYevWDSpWdMPgRolgEoio6h7cpbuvqeplQIPQhmWOsGgRvPii63itY0e/ozHGhEKJEi6JfPVV1HT1HlQCEZFWQC/gW2+eDS4RLqpw553uevEXX/Q7GmNMKHXvDtu3w08/+R1JUIJJIPcADwMjVXWeiJwCjA9tWCbTp5+6rkqefhpOOsnvaIwxodSxo7s0//PP/Y4kKDlehRULov4qrJ07oV49qFrVdZZoNwwaE/t693YN6Rs2uGotHxT4KiwTAV55xV3W98YbljyMKSq6d4ctW9z9XhHOEkik2rLF3TR42WXu3g9jTNHQqZPr5v2LL/yOJE/BDCh1TjDzTCF7+WVXhfXEE35HYowJp9KlXSepX37pui6KYMGUQLLr4Sv6ev2KJps2wauvuv5xGjf2OxpjTLh17+5+ByJ8nJAcL8f1Lt09G6gsIv8IWFQesAr5UHr+edi7FwYM8DsSY4wfLrwQiheHceOgfeSO35dbCeQ4IB6XZMoFTDuA7qEOTETuFxEVkUrecxGRQSKyRETmikjTUMfgi/XrXaP5tddC3bp+R2OM8UPZstC0KUyd6nckucqxBOL1fTVRRIaq6koAEYkD4lU1pH0Oi0gN4HxgVcDsC4HTveks4C3vb2x5/XV3F+q//+13JMYYP51zjht1dP9+KFnS72iyFUwbyLMiUl5EygLzgUUiEupR4F8BHgACb1LpBnygzjSggohUC3Ec4bVvH7zzDnTtCqee6nc0xhg/tW7tfhNmz/Y7khwFk0AaeCWOS4ExQE3cMLchISJdgbWq+nuWRScDqwOer/HmZX19PxGZKSIzN23aFKowQ2P4cNi82Y2TbIwp2s7xLnadMsXfOHIRTAIpISIlcAnkK1U9yJElg2MmIj+KyJ/ZTN2AR4HHsntZNvOOikNV31HV5qravHLlygUJM7xUYdAgaNgwohvNjDFhctJJbtC4CG4HCaZTxLeBFcDvwCRvoKkCtYGoarZdyopIY9wgVr+LG+8iAZgtIi1wJY4aAasnAOsKEkdE+eUXmDMH3n7bxvowxjjnnANff+1OMCPwdyHXEojXaL5RVU9W1YvUdZy1CgjJKbKq/qGqVVQ1UVUTcUmjqapuAEYD13lXY7UEtqvq+lDE4YtBg6BCBdcPjjHGgGsHSU11QzpEoFwTiKqmA3dmmac+DWc7BlgGLAHeBW73IYbQWLvWdVtw443u8j1jjAGXQCBi20GCaQMZ592TUUNETsiYQh4Z4JVENnuPVVXvUNVTVbWxqkZxN7tZDBniuiy4PXZyojGmENSpA5UqRWw7SDAJ5EbgDtzQtrO8KXZ+vP2mCh9/DG3a2KW7xpgjiTCs5kMkfvQUcXGQmAjDhvkd1GF5NqKrau1wBFJkzZ0LCxbAm2/6HYkxJsIMGwb9/ribPWluXJCVK6FfP7esVy8fA/Pk1hfWear6s4hcnt1yVf0ydGEVIR9/7Mb66B7y3mGMMVHm0Udhz8EjB5Xas8fNj+gEApwL/Ax0yWaZApZACio93d08eMEFEE33rBhjwmLVqmObH265JZCt3t/3VDUyLwGIdr/+6r4JTz3ldyTGmAhUs6artspufiTIrRH9Bu/voHAEUiR98gmUKgWXXup3JMaYCPT001CmzJHzypRx8yNBbiWQBSKyAjceyNyA+YK7qjYppJHFurQ0+PRT6NIFypXzOxpjTATKaOd49PatrNpxPDVrCk8/IxHR/gG5d+feU0SqAmOBruELqYj46Sc34ljPnn5HYoyJYL16Qa+00dCnD4xb5O4NiRC5XsbrdSHSJEyxFC0jR0J8vBt5zBhjcpMxuNzChRGVQIK5kdAUNlUYOxbOO8+1gRhjTG4CE0gEsQTih8WLYcUK6NzZ70iMMdGgYkXXvXu0JhBvREJTGL7/3v3t1MnfOIwx0aNevYjrlTfPBCIiZ4vIfGCB97yJiFi/GwUxdqwbKOaUU/yOxBgTLerVc90eaYHG8ytUwZRAXgE6AakA3lCz54YyqJi2bx+MH2+lD2PMsalbF7ZudcNeR4igqrBUdXWWWYdCEEvRMGUK7N1r7R/GmGNTr577G0HtIMEkkNUicjagInKciNyPV51l8uH77+G446BdO78jMcZEk4wEEkHtIMEkkFtx44GcjBtiNtl7bvJj7Fg3ypiNPGiMORY1a7rL/iOoBBLMeCCbgQi5cT7KrV0Lf/4JL7zgdyTGmGhTrJi7+CaaEoiIVAZuBhID11fVG0MXVowaO9b9tQZ0Y0x+1KsHs2f7HUWmPBMI8BUwGfgRazwvmAkToEoVaNzY70iMMdGoXj344gvYvx9KlvQ7mqASSBlVfTDkkRQF06ZBq1Yg4nckxphoVK+eG4huyRJo2NDvaIJqRP9GRC4KeSSxLjXVdWHSsqXfkRhjolWE9YmV25joO3FD1wrwiIjsBw5yeDyQ8uEJMUbMmOH+nnWWv3EYY6JXtCQQVbVRjgrT9OkQFwfNm/sdiTEmWsXHu3bU7Ma59UEwfWH9FMw8k4dp01ydpY0+aIwpiKpVYcMGv6MAcq/CKgWUBSqJSEVc1RVAeaB6GGKLHenprgqre3e/IzHGRLtoSCDALUB/XLKYxeEEsgN4I8RxxZbFi10naNb+YYwpqKpVXa+8ESC3NpBXgVdF5C5VfS2MMcWe6dPdX7sCyxhTUFWrwsaNrlt3n28JyLMNxJJHIZg2zbV9ZHSGZowx+VW1Khw4ANu2+R2JDWkbFtOnQ4sWri8bY4wpiKpV3d8IaAfJMYGIyDneX//vl49me/bA779b9ZUxpnCcdJL7G8kJBBjk/f01HIEEEpG7RGSRiMwTkRcC5j8sIku8ZdHRI+Hs2XDokDWgG2MKRwSVQHK7CuugiAwBThaRQVkXqurdoQhIRNoD3YAkVd0vIlW8+Q2Aq4GGuCvDfhSROqoa2R08Tpvm/loCMcYUhihJIJcAHYHzcJfxhsttwHOquh9AVf/25ncDhnvzl4vIEqAFPpSQjsnMmVCrlrt71BhjCqpiRShRIrITiDeQ1HARWaCqv4cxpjpAGxF5GtgH3K+qv+FGRJwWsN4ab94RRKQf0A+gZs2aoY82L/PnW/ftxpjCI3L4Ul6fBXMVVqqIjBSRv0Vko4h8ISIJBdmpiPwoIn9mM3XDJbWKQEvgn8CnIiIcvpExkB41Q/UdVW2uqs0rV65ckDALLi3NjV/coIG/cRhjYkuE3I0ezHggQ4CPgSu95729eefnd6eq2jGnZSJyG/ClqiowQ0TSgUq4EkeNgFUTgHX5jSEsli9312vXr+93JMb5RlYuAAAgAElEQVSYWFK1Kqxa5XcUQZVAqqjqEFVN86ahQChP7Ufh2l0QkTrAccBmYDRwtYiUFJHawOnAjBDGUXDz57u/VgIxxhSmk06KmhLIJhHpDXziPe8JpIYuJAYDg0XkT+AAcL1XGpknIp8C84E04I6IvwIro78auwPdGFOYqlaFTZvcLQI+3qAcTAK5EXgdeAXX5vCLNy8kVPUArposu2VPA0+Hat+Fbv58SEiA8jb2ljGmEFWt6nr53rTp8GW9PsgzgajqKqBrGGKJPfPnW/WVMabwBd4L4mMCsb6wQiU93Q07aQ3oxpjClpE0fL6U1xJIqKxeDbt3WwnEGFP4IuRudEsgoWJXYBljQiVCOlQMZkz0k0TkPRH5znveQERuCn1oUS7jCiyrwjLGFLb4eChbNvITCDAUGMvhcdD/wg11a3Izf77r/+rEE/2OxBgTiyLgbvRgEkglVf0USAdQ1TQgsu+/iAQLFlj1lTEmdKIkgewWkRPx+p0SkZbA9pBGFe1UXQnEqq+MMaESAR0qBnMj4T9w3YicKiJTcd2YdA9pVNFuwwY3XrGVQIwxoVK1Kvz8s68hBHMj4WwRaQvUxfWIu0hVD4Y8smiW0YBuCcQYEypVq8LWrbB/P5T0Z+TxPBOIiFyXZVZTEUFVPwhRTNEv4xJeq8IyxoRKxqW8GzeCT2MfBVOFdWbA41JAB2A2YAkkJ/PnQ4UKvnYxYIyJcYE3E0ZqAlHVuwKfi8jxwIchiygW/PUX1K3rRg4zxphQiIC70fNzJ/oe3FgcJierVkFiot9RGGNiWQQkkGDaQL7m8NCxcUAD4NNQBhXVVF0/WN26+R2JMSaWVani/vp4KW8wbSAvBTxOA1aq6poQxRP9Nm+Gfft8q5M0xhQRJUvCCSdEdglEVSeGI5CYkTFOsSUQY0yonXgipIZygNjc5ZhARGQnh6uujlgEqKraMHvZyUggNWr4G4cxJvbFx7thI3ySYwJR1XLhDCRmWAnEGBMu8fGwa5dvuw+mDQQAEamCuw8EyBzq1mS1ejWULm298BpjQi8+3o2L7pNgxgPpKiKLgeXARGAF8F2I44peq1a50ofdA2KMCTWfSyDB3AfyH6Al8Jeq1sbdiT41pFFFs1WrrP3DGBMeUZBADqpqKhAnInGqOh5IDnFc0Wv1amv/MMaERxS0gWwTkXhgEjBMRP7G3Q9isjpwANavtwRijAmPjASi6ku1eTAlkG7AXuBe4HtgKdAllEFFrbVr3QdpVVjGmHCIj4e0NHfy6oPc7gN5HfhYVX8JmP1+6EOKYnYJrzEmnMqWdX937fJlTJDcSiCLgZdFZIWIPC8i1u6Rl9Wr3V9LIMaYcIiPd399agfJMYGo6quq2gpoC2wBhojIAhF5TETqhC3CaGJ3oRtjwilSE0gGVV2pqs+r6hnANcBlwIKQRxaNVq2CSpXcjYTGGBNqkZ5ARKSEiHQRkWG4Gwj/Aq4IeWTRyC7hNcaEU0YC8ak/rNwa0c8HegIXAzOA4UA/VQ1ppF5by9u4blPSgNtVdYaICPAqcBFuUKs+qjo7lLEcs1Wr4LTT/I7imBw8eJA1a9awb98+v0MxJuRKlSpFQkICJUqU8DuUwuFzCSS3+0AeAT4G7lfVLWGKB+AF4AlV/U5ELvKetwMuxI2EeDpwFvCW9zdyrFoF7dv7HcUxWbNmDeXKlSMxMRGx7ldMDFNVUlNTWbNmDbVr1/Y7nMIRqQlEVf36JVQgo6v444F13uNuwAeqqsA0EakgItVUdb0fQR5l+3bYsSPqqrD27dtnycMUCSLCiSeeyCYfOx8sdJGaQHzUHxgrIi/h2mjO9uafDKwOWG+NN++IBCIi/YB+ADXD+WMexZfwWvIwRUXMfdeLYgIRkR+BqtksehTXWeO9qvqFiFwFvAd0xA1kldVRA16p6jvAOwDNmzfPbkCs0LCbCI0x4RZ4I6EPgunKpNCpakdVbZTN9BVwPfClt+pnQAvv8Rog8AaLBA5Xb/lrGHBtG+AQdG/unsew9TvX03ZoWzbs8mcs5oEDB7Jnz57M5xdddBHbtm0r8HYnTJjAJZdcUuDtAJx99tl5rpP1OHKyadMmzjrrLM444wwmT56MqnLeeeexY8cOAL7//nvq1q3LaaedxnPPPZftNoYOHUrlypVJTk4mOTmZ//3vf5nLHnjgARo2bEj9+vW5++67cbXE0LFjR7Zu3RrM4R6T119/ndNOOw0RYfPmzZnzFy5cSKtWrShZsiQvvfRSjq9XVR599FHq1KlD/fr1GTRoUOayCRMmkJycTMOGDWnbtm2hxx5xiheHUqX861BRVSNqwt1j0s573AGY5T2+GHcZseC6l5+R17aaNWumIfeRqpbJsucy3vwoMH/+/GN+zW3f3KZxT8Tpbd/cFoKI8larVi3dtGlToW93/PjxevHFFxf6dnMS7HF88sknet1112U+/+abb7R///6qqpqWlqannHKKLl26VPfv369JSUk6b968o7YxZMgQveOOO46aP3XqVD377LM1LS1N09LStGXLljp+/HhVVR06dKg+9dRT+Ty6nM2ePVuXL19+1PFv3LhRZ8yYoY888oi++OKLOb5+8ODBeu211+qhQ4cyX6equnXrVq1fv76uXLnyiPlZ5ec7H9EqVVK9rXD/F4GZGsTvdSS2gdwMvCoixYF9eO0ZwBjcJbxLcJfx3uBPeFk8iosm0B5vfq/wh1MQ/b/vT8qGlByXT141mXRNz3z+1sy3eGvmW8RJHG1qtsn2NclVkxnYeWCu+/3vf//L4MGDAejbty/9+/dnxYoVdO7cmbPOOos5c+ZQp04dPvjgA/73v/+xbt062rdvT6VKlRg/fjyJiYnMnDmTXbt20blzZ1q3bs20adNo0qQJN9xwA48//jh///03w4YNo0WLFsyYMYP+/fuzd+9eSpcuzZAhQ6hbt26O8Q0dOpSRI0eyf/9+li9fzjXXXMPjjz+eY+wA8fHx7Nq1iwkTJjBgwAAqVarEn3/+SbNmzfjoo4947bXXjjqO7KSkpPDAAw+wd+9ekpOT+fXXXxk2bBj9+rl/ixkzZnDaaadxyimnAHD11Vfz1Vdf0aBBg1zf8wwiwr59+zhw4ACqysGDBznppJMA6Nq1K23atOHRRx8NalvBOuOMM7KdX6VKFapUqcK3336b6+vfeustPv74Y+Li4jJfB/Dxxx9z+eWXZ7Z9ZsyPeT526e5LFVZuVHWKqjZT1SaqepaqzvLmq6reoaqnqmpjVZ3pd6wA5DSwbwwO+NuieguqlKlCnLivTZzEUaVsFc46Of9XU8+aNYshQ4Ywffp0pk2bxrvvvsucOXMAWLRoEf369WPu3LmUL1+eN998k7vvvpvq1aszfvz4bH90lyxZwj333MPcuXNZuHAhH3/8MVOmTOGll17imWeeAaBevXpMmjSJOXPm8OSTT/LII4/kGeeMGTMYNmwYKSkpfPbZZ8ycOTPX2APNmTOHgQMHMn/+fJYtW8bUqVOzPY6+ffsyc+aRX+vk5GSefPJJevToQUpKCqVLl2bq1Kk0a9YMgLVr11IjoOuchIQE1q5dm+0xfPHFFyQlJdG9e3dWexd9tGrVivbt21OtWjWqVatGp06dqF+/PgAVK1Zk//79pKamHrWtHj16ZFaHBU4ffPBBnu9lQS1dupQRI0bQvHlzLrzwQhYvXgzAX3/9xdatW2nXrh3NmjULSywRwccEEoklkOhSE1iZw/wok1dJAeC2b27jndnvUKp4KQ4cOsAV9a/gzYvfzPc+p0yZwmWXXUZZrzHw8ssvZ/LkyXTt2pUaNWpwzjnnANC7d28GDRrE/fffn+v2ateuTePGjQFo2LAhHTp0QERo3LgxK1asAGD79u1cf/31LF68GBHh4MGDecZ5/vnnc6I3zv3ll1/OlClTEJFsY896ht2iRQsSEhIAlxBWrFhB69atj9pHYLtEbrZs2UK5cuUAMtsrAmV3pVGXLl3o2bMnJUuW5O233+b666/n559/ZsmSJSxYsIA1a9ZkHuekSZM499xzAXcWv27dusxjzzBixIigYg2F/fv3U6pUKWbOnMmXX37JjTfeyOTJk0lLS2PWrFn89NNP7N27l1atWtGyZUvq1InxrvusBBLFngbKZJlXxpsfgzbu3sitzW5l2k3TuLXZrQVuSM/uBzBD1h/CYC7BLBnQpXVcXFzm87i4ONLS3Dho//73v2nfvj1//vknX3/9dVB34WcXS26x5xRTsWLFMuPIr+LFi5Oe7qoSExISMksT4G4MrV69+lGvOfHEEzPjuPnmm5k1axYAI0eOpGXLlsTHxxMfH8+FF17ItGnTMl+3b98+SmfTt9uxlEA6depEcnIyffv2LdBxZ0hISOCKK1xvSpdddhlz587NnN+5c2fKli1LpUqVOPfcc/n9998LZZ8RzRJIFOsFvJ2OK4Yo1MJdRBxl7R/B+rLHl7xx8Rs0qdqENy5+gy97fJn3i3Jx7rnnMmrUKPbs2cPu3bsZOXIkbdq49pRVq1bx66+/AvDJJ59knrWXK1eOnTt35nuf27dv5+STTwZc+0Ywxo0bx5YtW9i7dy+jRo3inHPOyTX2YOT3OOrWrcuyZcsAOPPMM1m8eDHLly/nwIEDDB8+nK5dux71mvXrD98uNXr06Mxqqpo1azJx4kTS0tI4ePAgEydOzFymqmzYsIHExMSjtjdixAhSUlKOmq677rqj1h07diwpKSlBl7Dycumll/Lzzz8DMHHixMwSRrdu3TJLInv27GH69OmZxxLTLIFEuYu2Aonw6muwgphNHqHQtGlT+vTpQ4sWLTjrrLPo27dvZhVQ/fr1ef/990lKSmLLli3cdtttAPTr148LL7yQ9vnsNuaBBx7g4Ycf5pxzzuHQoUNBvaZ169Zce+21JCcnc8UVV9C8efNcYw9G1uPIrg0kOxdffDETJkwAXGnk9ddfz2y7uOqqq2jYsCEAjz32GKNHjwZg0KBBNGzYkCZNmjBo0KDMxNm9e3dOPfVUGjduTJMmTWjSpAldurgBR2fNmkXLli0pXrxwa7oHDRpEQkICa9asISkpKbNksmHDBhISEvjvf//LU089RUJCQualyhdddBHr1rmr9h966CG++OILGjduzMMPP5yZmOrXr0/nzp1JSkqiRYsW9O3bl0aNGhVq7BHJz3HRg7lUK1qnsFzGq6q6cKEqqH4UJdfuBojUSxqXL1+uDRs29DsMVc35Eli/rFu3Tjt27Bjy/dx99936448/hnw/4Rap3/l8u+UW1cqVC3WTBHkZr5VACkPGVSqVKvkbhykSqlWrxs0335x5dh4qjRo1okOHDiHdhykE8fGR1527OQYZd9NaAik0iYmJ/Pnnn36HAUCfPn3o06eP32Ec4aqrrgr5Pm6++eaQ78MUgvh42LMHDh2CYsXCumsrgRQGSyDGGL9kdKgYRLc4hc0SSGGwBGKM8YuPPfJaAikMmzdDyZJQJusNIcYYE2KWQKJcaqorfcTaWAPGmMhnCSTKbd5cdKqvhgGJuG9OIhHTdf3o0aMzuzIfMGBArt2BR6KhQ4dy5513Br1+MMeYtRv4jL7ATIyxBBLlikoCGYbrG9m76Z6V3vMISCJdu3bloYce8mXfBe2aJFR++ukn6tWrx5w5c2jTpo0lkFhlCSTKxUoC6Q+0y2W6iey7rr8pl9f0z3u3H330ES1atCA5OZlbbrkl8+7w+Ph47rvvPpo2bUqHDh0yx7IeNGgQDRo0ICkpiauvvhrI+Qw+JSWFli1bkpSUxGWXXZY5QFK7du148MEHadGiBXXq1GHy5MnZxvbbb7+RlJREq1at+Oc//5l5Z/PQoUO58sor6dKlCxdccAEAL774ImeeeSZJSUmZ3b3ndnxDhgyhTp06tG3blqlTpwKwc+dOateundnB444dO0hMTMy1w8elS5fSuXNnmjVrRps2bVi4cGFmN/BjxowhOTmZBx98MLNL+F69rKuEmGIJJMrFSgLJy/5jnB+EBQsWMGLECKZOnUpKSgrFihVj2DBXpNm9ezdNmzZl9uzZtG3blieeeAKA5557jjlz5jB37lzefvvtXLd/3XXX8fzzzzN37lwaN26cuQ1wJYcZM2YwcODAI+YHuuGGG3j77bf59ddfKZblGvtff/2V999/n59//pkffviBxYsXM2PGDFJSUpg1axaTJk3K8fjWr1/P448/ztSpUxk3bhzz588HXP9Y7dq1yxwTY/jw4VxxxRWUKFEix2Ps168fr732GrNmzeKll17i9ttvP6ob+Oeff57SpUuTkpKS+f6aGOFjArEbCQvq0CHYuhWydHcdlfLqzT2R7LuurwVMyN8uf/rpJ2bNmsWZZ54JwN69ezMHAoqLi6NHjx6A68798ssvByApKYlevXpx6aWXcumll+a47e3bt7Nt27bMoU2vv/56rrzyyszlGdtr1qxZZlfvgbZt28bOnTszh6e95ppr+OabbzKXn3/++ZxwwgkA/PDDD/zwww+ZfWHt2rWLxYsXM3fu3GyPb/r06bRr147KlSsDrnfbv/76C3B9Yr3wwgtceumlDBkyhHfffTfHY9y1axe//PLLEce1f38BMrqJPpZAotjWraBaNEogT+PaPAKrsQrYdb2qcv311/Pss8/muW5Gl+rffvstkyZNYvTo0fznP/9h3rx5+dp3RvfmgV2s33DDDcyZM4fq1avneaaeMQ5IxnE8/PDD3HLLLUes89prr2V7fKNGjcqxe/pzzjmHFStWMHHiRA4dOpRrh4Dp6elUqFCBlJScR5I0Mc6qsKJYUbqJsBeuq/pauJHpC6Hr+g4dOvD555/z999/A26wpJUrXTEnPT2dzz//HHDDlbZu3Zr09HRWr15N+/bteeGFF9i2bRu7cvjHOf7446lYsWJm+8aHH36YWRrJyZAhQ0hJSWHMmDFUrFiRcuXKZY6PMXz48Bxf16lTJwYPHpwZy9q1a/n7779zPL6zzjqLCRMmkJqaysGDB/nss8+O2N51111Hz549ueGG3EduLl++PLVr1858varmOAZGiRIlgho8y0SZkiVdFyZWAolCRSmBgEsWhdgG26BBA5566ikuuOAC0tPTKVGiBG+88Qa1atWibNmyzJs3j2bNmnH88cczYsQIDh06RO/evdm+fTuqyr333kuFChVy3P7777/Prbfeyp49ezjllFMYMmTIMcX33nvvcfPNN1O2bFnatWvH8ccfn+16F1xwAQsWLKBVq1aAuwDgo48+yvH4WrZsyYABA2jVqhXVqlWjadOmR3Qt36tXL/71r3/Rs2fPPGMcNmwYt912G0899RQHDx7k6quvpkmTJket169fP5KSkmjatKm1g8QSEd+6dBcNclS1aNS8eXMNZnyFAhk1Ci67DGbPhmMYCyJSLFiwIGIH3YmPj8+xdBEuu3btIt6rInjuuedYv349r776asj3+/nnn/PVV1/x4YcfhnxfRU0kf+fzLSEBOnWC994rlM2JyCxVbZ7XelYCKaiMrtxjoRHdHOXbb7/l2WefJS0tjVq1agU9gmFB3HXXXXz33XeMGTMm5PsyMcKnLt0tgRRUUavCCiO/Sx/gro7KuBIsXF577bWw7s/EAJ+qsKwRvaA2b4bSpa0jRWOMf8qWtQQSlYrKTYTGmMhlJZAoZQnEGOM3SyBRKjXVGtCNMf6yBBKlilgJZNgwSEyEuDj3N1JuJyhq3blnFXj8OZkwYQKXXHJJtssGDhzIHh+GRDWFxKcEYldhFVQRSiDDhkG/foeHXl650j0H8LuD165du9K1a1df9p2Wlkbx4v79K6WlpRX4+AcOHEjv3r0pYxeDRKeMBKIa1oHtrARSEGlpri+sGEkg/ftDu3Y5TzfddDh5ZNizx83P6TX9rTv3kHTn3qdPH/7xj3/Qvn17HnzwwSOOf+nSpbRs2ZIzzzyTxx57LPNGSHCXRnfv3p169erRq1cvVJVBgwaxbt062rdvT/v27fP+wEzkiY93HbuGuSNNSyAFsWWL+xsjCSQvOX03C/Kdte7c89+d+19//cWPP/7Iyy+/fMT8e+65h3vuuYfffvuN6tWrH7Fszpw5DBw4kPnz57Ns2TKmTp3K3XffTfXq1Rk/fjzjx4/P9f00EcqnDhWtCqsgYuwu9IF5dOeemOiqrbKqVQsmTMjfPq079/x3537llVceldTAJbZRo0Zlxnz//fdnLmvRogUJCQkAJCcns2LFClq3bp3je2iiRGACCeMJrS8lEBG5UkTmiUi6iDTPsuxhEVkiIotEpFPA/M7evCUi4s/YpVkVsbvQn3766Psly5Rx8/Mrozv3lJQUUlJSWLRoEQMGDMh23cDu3O+44w5mzZpFs2bN8j2kbE7duScnJ3PRRReRVz9x2XXnnnEcS5Ys4aabbsr1+AranXvg/oOVccxw5HGbKOdTCcSvKqw/gcuBSYEzRaQBcDXQEOgMvCkixUSkGPAGcCHQAOjpreuvIpZAevWCd95xJQ4R9/eddwrWgG7duResO/fstGzZki+++CLPmAOVK1eOnTt3HvO+TIQoSlVYqroAsj0D6wYMV9X9wHIRWQK08JYtUdVl3uuGe+vOD0/EOShiCQRcsijMK66sO/eCd+eeVcYVVS+//DIXX3xxjjEH6tevHxdeeCHVqlWzdpBo5NegUqrq24QbCLV5wPPXgd4Bz98DunvT/wLmXwu8nsM2+wEzgZk1a9bUkHrmGVVQ3bMntPsJofnz5/sdQo7Kli3rdwi6c+fOzMfPPvus3n333WHZ72effaa9e/fO12t3796t6enpqqr6ySefaNeuXQsztKgXyd/5fJs92/0WjRxZKJsDZmoQv+EhK4GIyI9A1WwWPaqqX+X0smzmKdlXtWVbQa2q7+DGyaN58+ahHewkNdU1ApQuHdLdGP9EY3fus2bN4s4770RVqVChAoMHDy7kCE3EySiBhLlL95AlEFXtmI+XrQFqBDxPANZ5j3Oa758idBOhH6w79/xp06ZNjsPamhhVxBrRczIauFpESopIbeB0YAbwG3C6iNQWkeNwDe2jfYzTiZEEojE8KqUxgWL2u16UEoiIXCYia4BWwLciMhZAVecBn+Iax78H7lDVQ6qaBtwJjAUWAJ966/orBhJIqVKlSE1Njd1/LGM8qkpqaiqlSpXyO5TCl3F9fRG5CmskMDKHZU8DR91ZoKpjgMga4zM1FWrX9juKAklISGDNmjWZ3YQYE8tKlSqVeSNlTClWzCWRopBAYsbOnVC+vN9RFEiJEiWoHeVJ0BiDL6MSRlobSHTZtetw3aMxxvjJhy7dLYHkV3q6u2TOEogxJhLEx7takTCyBJJfGf2aWwIxxkSCUqXC3p27xPLVNyKyCcim/9hcVQI2hyCcSGfHXbTYcRctx3rctVS1cl4rxXQCyQ8RmamqzfNeM7bYcRctdtxFS6iO26qwjDHG5IslEGOMMfliCeRo7/gdgE/suIsWO+6iJSTHbW0gxhhj8sVKIMYYY/LFEogxxph8KZIJREQ6i8giEVkiIg9ls7ykiIzwlk8XkcTwR1n4gjjuf4jIfBGZKyI/iUgtP+IMhbyOPWC97iKiIhITl3oGc9wicpX3uc8TkY/DHWMoBPFdryki40Vkjvd9v8iPOAuTiAwWkb9F5M8clouIDPLek7ki0rTAOw1m2MJYmoBiwFLgFOA44HegQZZ1bgfe9h5fDYzwO+4wHXd7oIz3+LZYOO5gj91brxwwCZhGwFDL0ToF+ZmfDswBKnrPq/gdd5iO+x3gNu9xA2CF33EXwnGfCzQF/sxh+UXAd7iRX1sC0wu6z6JYAmkBLFHVZap6ABgOdMuyTjfgfe/x50AHEcluuN1okudxq+p4VfX6aGEabuTHWBDMZw7wH+AFYF84gwuhYI77ZuANVd0KoKp/hznGUAjmuBXI6Er7eCJhhNMCUtVJwJZcVukGfKDONKCCiFQryD6LYgI5GVgd8HyNNy/bddQNZrUdODEs0YVOMMcd6Cbc2UosyPPYReQMoIaqfhPOwEIsmM+8DlBHRKaKyDQR6Ry26EInmOMeAPT2BrYbA9wVntB8day/AXkqiuOBZFeSyHotczDrRJugj0lEegPNgbYhjSh8cj12EYkDXgH6hCugMAnmMy+Oq8ZqhytxThaRRqq6LcSxhVIwx90TGKqqL4tIK+BD77jTQx+ebwr9d60olkDWADUCnidwdPE1cx0RKY4r4uZWNIwGwRw3ItIReBToqqrh7dozdPI69nJAI2CCiKzA1Q+PjoGG9GC/61+p6kFVXQ4swiWUaBbMcd+EGz4bVf0VKIXrcDCWBfUbcCyKYgL5DThdRGqLyHG4RvLRWdYZDVzvPe4O/KxeK1QUy/O4vWqc/8Mlj1ioC8+Q67Gr6nZVraSqiaqaiGv/6aqqM/0Jt9AE810fhbt4AhGphKvSWhbWKAtfMMe9CugAICL1cQkk1sd1Hg1c512N1RLYrqrrC7LBIleFpappInInMBZ3tcZgVZ0nIk8CM1V1NPAerki7BFfyuNq/iAtHkMf9IhAPfOZdM7BKVbv6FnQhCfLYY06Qxz0WuEBE5gOHgH+qaqp/URdckMd9H/CuiNyLq8bpE+0niSLyCa4qspLXtvM4UAJAVd/GtfVcBCwB9gA3FHifUf6eGWOM8UlRrMIyxhhTCCyBGGOMyRdLIMYYY/LFEogxxph8sQRijDEmXyyBmEIlIodEJEVE/hSRz0SkzDG+ftcxrj9URLpnM7+5iAzyHvcRkde9x7eKyHUB86sfy/5yiaON15ttioiUDphfQURuD3jeTkTC1l2KiDyS5fkvhbTdoSLSLodlT3o3pOb2+gEicn8287O+X4kiMqGg8ZrQsARiCtteVU1W1UbAAeDWwIXeTUwh/96p6kxVvTub+W+r6gfe0z5AoSQQoBfwknfsewPmV8D17uyXIxKIqp4dyoYhTYgAAAS0SURBVJ2JSDFVfUxVf8znJvx+v8wxsARiQmkycJp3FrlARN4EZgM1RKSniPzhlVSeD3yRiLwsIrPFjUlS2Zt3s4j8JiK/i8gXWUo2HUVksoj8JSKXeOtne6afcebrlVqaA8O8UsPFIjIyYL3zReTLbF7fQdwYEn+IG3+hpIj0Ba4CHhORYVle8hxwqrePF7158SLyuYgsFJFh4t21KSLNRGSiiMwSkbGSTU+pItJF3Bg1c0TkRxE5yZsfLyJDvLjmisgVIvIcUNrb9zBvvV3eXxGRF733/w8R6RHwvk3ILr4stuNOEBCRFSLymIhMAa4MLBWKyEXedqaIG4si8DNp4O1rmYhkJPus79chor8bodjldx/2NsXWBOzy/hYHvsKNK5IIpAMtvWXVcV1JVPbW+xm41FumQC/v8WPA697jEwP28RRwl/d4KPA97mTodFx/P6Vwd+R+463TJ2A7A4D7vccT8Mb9wHU0txCo7D3/GOiS5dhK4XozreM9/wDoHxBH92zej0QCxmfw4tqO64coDvgVaI27Y/iXgP33wN1BnXV7FTl8A3Bf4GXv8fPAwMD1Aj+PbD6fK4BxuDu1T/I+j2o5xZfHZ74CeCDg+VBcF0AZ71dtb/4nAZ/JAO94S+L6oEr13oMj3i+bInuyEogpbKVFJAWYiftRes+bv1LdGAQAZwITVHWTuu7yh+EGwwGXaEZ4jz/C/bgCNPJKGX/gqosaBuzzU1VNV9XFuH6c6h1r0Op+1T7EdfFdAWjF0d3Z1wWWq+pf3vP3A+I+FjNUdY26nl9TcD+adXEdOo7z3r9/kf14LAnAWO99+CeH34eOwBsBx7M1jxhaA5+o6iFV3QhMxH0uOcWXlxHZzKsHLFPXSSO4BBLoW1Xdr6qbgb9xicxEkSLXF5YJub2qmhw4w6sB2R046xi2l9HXzlBcKeV3EemDO1POuk5Oz4M1BPgaN6DUZ15yC1RYg4oF9nJ8CPd/KMA8VW2Vx2tfA/6rqqO9RuwBAbEdy3HndizZxZeX3dnMy+v9ys9+TASxEojxw3SgrYhUEpFiuLEZJnrL4nDVHwDXAFO8x+WA9SJSAlcCCXSliMSJyKm4YUwXBRnHTm+7AKjqOlz31v/CJaysFgKJInKa9/zagLiD2kcuFgGVxY1NgYiUEJGG2ax3PLDWe3x9wPwfgDsznohIRe/hQe89y2oS0ENEinntTOcCM4KI81gsBE4RkUTveY8gXhPs+2UigCUQE3bqupB+GBiPG696tqp+5S3eDTQUkVnAecCT3vx/4xLPONwPU6BFuB/y74BbVTXYIWmHAm/LkZfeDgNWq+r8bOLeh+vB9DOvCikdeDuPY00FpnqN1S/mst4BXOJ8XkR+x1UdZXfF1ABv/5OBzQHznwIqevv5Ha+LdtzY33OzadwfCczFvf8/49owNuR2LMdK3dVotwPfew3sG3HtK7m9Jqj3y0QG643XmADi7heZo6rv5bmyyZOIxKvqLu9KrjeAxar6it9xmcJhJRBjPF6pJwnXeG8Kx83eRQHzcNVv/+dzPKYQWQnEGGNMvlgJxBhjTL5YAjHGGJMvlkCMMcbkiyUQY4wx+WIJxBhjTL78PxLz5I+Ftjy1AAAAAElFTkSuQmCC\n" }, "metadata": { "needs_background": "light" } } ], "source": [ "example_13_1()" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "def figure_13_1():\n", " num_trials = 100\n", " num_episodes = 1000\n", " gamma = 1\n", " agent_generators = [lambda : ReinforceAgent(alpha=2e-4, gamma=gamma),\n", " lambda : ReinforceAgent(alpha=2e-5, gamma=gamma),\n", " lambda : ReinforceAgent(alpha=2e-3, gamma=gamma)]\n", " labels = ['alpha = 2e-4',\n", " 'alpha = 2e-5',\n", " 'alpha = 2e-3']\n", "\n", " rewards = np.zeros((len(agent_generators), num_trials, num_episodes))\n", "\n", " for agent_index, agent_generator in enumerate(agent_generators):\n", " for i in tqdm(range(num_trials)):\n", " reward = trial(num_episodes, agent_generator)\n", " rewards[agent_index, i, :] = reward\n", "\n", " plt.plot(np.arange(num_episodes) + 1, -11.6 * np.ones(num_episodes), ls='dashed', color='red', label='-11.6')\n", " for i, label in enumerate(labels):\n", " plt.plot(np.arange(num_episodes) + 1, rewards[i].mean(axis=0), label=label)\n", " plt.ylabel('total reward on episode')\n", " plt.xlabel('episode')\n", " plt.legend(loc='lower right')\n", "\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "output_type": "stream", "name": "stderr", "text": "100%|██████████| 100/100 [01:44<00:00, 1.54it/s]\n100%|██████████| 100/100 [02:37<00:00, 1.62s/it]\n100%|██████████| 100/100 [01:47<00:00, 1.03it/s]\n" }, { "output_type": "display_data", "data": { "text/plain": "
", "image/svg+xml": "\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", "image/png": "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\n" }, "metadata": { "needs_background": "light" } } ], "source": [ "figure_13_1()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "def figure_13_2():\n", " num_trials = 100\n", " num_episodes = 1000\n", " alpha = 2e-4\n", " gamma = 1\n", " agent_generators = [lambda : ReinforceAgent(alpha=alpha, gamma=gamma),\n", " lambda : ReinforceBaselineAgent(alpha=alpha*10, gamma=gamma, alpha_w=alpha*100)]\n", " labels = ['Reinforce without baseline',\n", " 'Reinforce with baseline']\n", "\n", " rewards = np.zeros((len(agent_generators), num_trials, num_episodes))\n", "\n", " for agent_index, agent_generator in enumerate(agent_generators):\n", " for i in tqdm(range(num_trials)):\n", " reward = trial(num_episodes, agent_generator)\n", " rewards[agent_index, i, :] = reward\n", "\n", " plt.plot(np.arange(num_episodes) + 1, -11.6 * np.ones(num_episodes), ls='dashed', color='red', label='-11.6')\n", " for i, label in enumerate(labels):\n", " plt.plot(np.arange(num_episodes) + 1, rewards[i].mean(axis=0), label=label)\n", " plt.ylabel('total reward on episode')\n", " plt.xlabel('episode')\n", " plt.legend(loc='lower right')\n", "\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "output_type": "stream", "name": "stderr", "text": "100%|██████████| 100/100 [01:04<00:00, 1.56it/s]\n100%|██████████| 100/100 [00:56<00:00, 1.94it/s]\n" }, { "output_type": "display_data", "data": { "text/plain": "
", "image/svg+xml": "\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", "image/png": "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Rgghrj6+9My+DWPyoNuA24ENSqnB/k5Ykck2emz/uCrFmBghhLj6+NKP4l9AG631SQClVAVgKTDPnwkrMtq1w52SsZ6EEMKFLwXyJnuQsDnj4345UkrNUUol2h4HlVKJTuueU0rtV0rtUUr1Kch5fGI1Y9ESHIQQIie+5Ch+Ukr9DHxle38H8GNBTqq1vsP+Wik1Fbhge90YuBNogjFn9lKlVH2/ToeabQgPIYQQrnINFFrrp5RSg4DOGJMWzdBazy+MkyujnOd2oIdt0UDga611OnBAKbUfaAusK4zzeWS1YJYchSigzMxMkpOTSUtLK+6kCOEmNDSUatWqERQUlK/9cw0USqn/aK2fAb71sKygEoATWut9tvdVgfVO65Nty/xHW7BoaRIrCiY5OZmIiAhiY2OlnktcVbTWnDlzhuTkZGrVqpWvY/hyhezlYdmNue2klFqqlNrh4THQabMhOIq0wMixZOdxlD6l1Cil1Cal1KZTp07llpycWc1kSqAQBZSWlkb58uUlSIirjlKK8uXLFyi3661n9kPAGKC2Usq5g10EsCa3A2utb/C2XikViDG4YCunxckYgw7aVQOO5nD8GcAMgNatW+d/yFera4c7IfJLgoS4WhX0f9PbFfJLYADwne3Z/miltb6rQGc13ADs1lonOy37DrhTKRWilKoF1MPow+EfWoO2SI5ClCi7d++mQ4cOhISEMGXKFJd19913HxUrVqRp06Zej7F8+XLi4+Np0qQJXbt29WdyxTXAW8/sCxitkYb46dx34lrshNY6SSk1F9gJmIGH/driSVsBMEugECVIuXLlmD59OgsWLHBbN2LECB555BGGDx+e4/7nz59nzJgx/PTTT9SoUYOTJ0/muK24PhTbFVJrPUJr/aGH5ZO01nW01g201gVqhpsrqxGDJEchSpKKFSvSpk0bjy1cunTpQrly5bzu/+WXXzJo0CBq1KiRdTxxffNpKtQSy2oMWWXWigaVInhvWItiTpAoMbp1c192++0wZgykpkK/fu7rR4wwHqdPw+Bso+QsX174aczB3r17yczMpFu3bqSkpDBu3DivORBR8l3fgUI7chQ3NK5I3YoRxZwgIYqf2Wxm8+bNLFu2jCtXrtChQwfat29P/fr1iztpophc34EiK0dhIlRarIjC5C0HULq09/XR0XnOQbz33nt89NFHAPzw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\n" }, "metadata": { "needs_background": "light" } } ], "source": [ "figure_13_2()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ] }