From 95c4c02bbd012efc468d9788990fe0a9b6603f90 Mon Sep 17 00:00:00 2001 From: Jiadai Zhao Date: Mon, 31 Dec 2018 22:51:23 -0800 Subject: [PATCH] Practical Reinforcement Learning Week3 --- ...QUIZ Model-free reinforcement learning.pdf | Bin 0 -> 595849 bytes .../Week3_model_free/experience_replay.ipynb | 377 ++++++++++ .../Week3_model_free/qlearning.ipynb | 662 ++++++++++++++++++ .../Week3_model_free/qlearning.py | 114 +++ .../Week3_model_free/sarsa.ipynb | 378 ++++++++++ .../Week3_model_free/submit.py | 60 ++ 6 files changed, 1591 insertions(+) create mode 100644 Practical Reinforcement Learning/Week3_model_free/QUIZ Model-free reinforcement learning.pdf create mode 100644 Practical Reinforcement Learning/Week3_model_free/experience_replay.ipynb create mode 100644 Practical Reinforcement Learning/Week3_model_free/qlearning.ipynb create mode 100644 Practical Reinforcement Learning/Week3_model_free/qlearning.py create mode 100644 Practical Reinforcement Learning/Week3_model_free/sarsa.ipynb create mode 100644 Practical Reinforcement Learning/Week3_model_free/submit.py diff --git a/Practical Reinforcement Learning/Week3_model_free/QUIZ Model-free reinforcement learning.pdf b/Practical Reinforcement Learning/Week3_model_free/QUIZ Model-free reinforcement learning.pdf new file mode 100644 index 0000000000000000000000000000000000000000..3bbd85ac451ae755e68bbf1a0cfebc72a451dae2 GIT binary patch literal 595849 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 yO<`AXesT&e0kO8ohSq}n( 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�h0 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 tuples even if they aren't sampled under current agent's policy. So here's what we're gonna do:\n", + "\n", + "\n", + "\n", + "#### Training with experience replay\n", + "1. Play game, sample ``.\n", + "2. Update q-values based on ``.\n", + "3. Store `` transition in a buffer. \n", + " 3. If buffer is full, delete earliest data.\n", + "4. Sample K such transitions from that buffer and update q-values based on them.\n", + "\n", + "\n", + "To enable such training, first we must implement a memory structure that would act like such a buffer." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "env: DISPLAY=:1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/bin/bash: ../xvfb: No such file or directory\n" + ] + } + ], + "source": [ + "%load_ext autoreload\n", + "%autoreload 2\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "from IPython.display import clear_output\n", + "\n", + "#XVFB will be launched if you run on a server\n", + "import os\n", + "if type(os.environ.get(\"DISPLAY\")) is not str or len(os.environ.get(\"DISPLAY\"))==0:\n", + " !bash ../xvfb start\n", + " %env DISPLAY=:1" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import random\n", + "class ReplayBuffer(object):\n", + " def __init__(self, size):\n", + " \"\"\"\n", + " Create Replay buffer.\n", + " Parameters\n", + " ----------\n", + " size: int\n", + " Max number of transitions to store in the buffer. When the buffer\n", + " overflows the old memories are dropped.\n", + " \n", + " Note: for this assignment you can pick any data structure you want.\n", + " If you want to keep it simple, you can store a list of tuples of (s, a, r, s') in self._storage\n", + " However you may find out there are faster and/or more memory-efficient ways to do so.\n", + " \"\"\"\n", + " self._storage = []\n", + " self._maxsize = size\n", + " \n", + " # OPTIONAL: YOUR CODE\n", + " self._index = 0\n", + "\n", + " def __len__(self):\n", + " return len(self._storage)\n", + "\n", + " def add(self, obs_t, action, reward, obs_tp1, done):\n", + " '''\n", + " Make sure, _storage will not exceed _maxsize. \n", + " Make sure, FIFO rule is being followed: the oldest examples has to be removed earlier\n", + " '''\n", + " data = (obs_t, action, reward, obs_tp1, done)\n", + " \n", + " # add data to storage\n", + " if len(self._storage) < self._maxsize:\n", + " self._storage.append(data)\n", + " else:\n", + " self._storage[self._index] = data\n", + " self._index += 1\n", + " if self._index == self._maxsize:\n", + " self._index = 0\n", + " \n", + " def sample(self, batch_size):\n", + " \"\"\"Sample a batch of experiences.\n", + " Parameters\n", + " ----------\n", + " batch_size: int\n", + " How many transitions to sample.\n", + " Returns\n", + " -------\n", + " obs_batch: np.array\n", + " batch of observations\n", + " act_batch: np.array\n", + " batch of actions executed given obs_batch\n", + " rew_batch: np.array\n", + " rewards received as results of executing act_batch\n", + " next_obs_batch: np.array\n", + " next set of observations seen after executing act_batch\n", + " done_mask: np.array\n", + " done_mask[i] = 1 if executing act_batch[i] resulted in\n", + " the end of an episode and 0 otherwise.\n", + " \"\"\"\n", + " idxes = random.choices(range(len(self._storage)), k=batch_size)\n", + " \n", + " # collect for each index\n", + " obs_batch = [self._storage[index][0] for index in idxes]\n", + " act_batch = [self._storage[index][1] for index in idxes]\n", + " rew_batch = [self._storage[index][2] for index in idxes]\n", + " next_obs_batch = [self._storage[index][3] for index in idxes]\n", + " done_mask = [self._storage[index][4] for index in idxes]\n", + " \n", + " return np.array(obs_batch), np.array(act_batch), np.array(rew_batch), np.array(next_obs_batch), np.array(done_mask)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Some tests to make sure your buffer works right" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Success!\n" + ] + } + ], + "source": [ + "replay = ReplayBuffer(2)\n", + "obj1 = tuple(range(5))\n", + "obj2 = tuple(range(5, 10))\n", + "replay.add(*obj1)\n", + "assert replay.sample(1)==obj1, \"If there's just one object in buffer, it must be retrieved by buf.sample(1)\"\n", + "replay.add(*obj2)\n", + "assert len(replay._storage)==2, \"Please make sure __len__ methods works as intended.\"\n", + "replay.add(*obj2)\n", + "assert len(replay._storage)==2, \"When buffer is at max capacity, replace objects instead of adding new ones.\"\n", + "assert tuple(np.unique(a) for a in replay.sample(100))==obj2\n", + "replay.add(*obj1)\n", + "assert max(len(np.unique(a)) for a in replay.sample(100))==2\n", + "replay.add(*obj1)\n", + "assert tuple(np.unique(a) for a in replay.sample(100))==obj1\n", + "print (\"Success!\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now let's use this buffer to improve training:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "import gym\n", + "from qlearning import QLearningAgent\n", + "\n", + "env = gym.make(\"Taxi-v2\")\n", + "n_actions = env.action_space.n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "def play_and_train_with_replay(env, agent, replay=None, \n", + " t_max=10**4, replay_batch_size=32):\n", + " \"\"\"\n", + " This function should \n", + " - run a full game, actions given by agent.getAction(s)\n", + " - train agent using agent.update(...) whenever possible\n", + " - return total reward\n", + " :param replay: ReplayBuffer where agent can store and sample (s,a,r,s',done) tuples.\n", + " If None, do not use experience replay\n", + " \"\"\"\n", + " total_reward = 0.0\n", + " s = env.reset()\n", + " \n", + " for t in range(t_max):\n", + " # get agent to pick action given state s\n", + " a = agent.get_action(s)\n", + " \n", + " next_s, r, done, _ = env.step(a)\n", + "\n", + " # update agent on current transition. Use agent.update\n", + " agent.update(s, a, r, next_s)\n", + " \n", + "\n", + " if replay is not None:\n", + " # store current transition in buffer\n", + " replay.add(s, a, r, next_s, done)\n", + " \n", + " # sample replay_batch_size random transitions from replay, \n", + " # then update agent on each of them in a loop\n", + " obs_batch, act_batch, rew_batch, next_obs_batch, done_mask = replay.sample(replay_batch_size)\n", + " for i in range(replay_batch_size):\n", + " agent.update(obs_batch[i], act_batch[i], rew_batch[i], next_obs_batch[i])\n", + " \n", + " s = next_s\n", + " total_reward +=r\n", + " if done:break\n", + " \n", + " return total_reward" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# Create two agents: first will use experience replay, second will not.\n", + "\n", + "agent_baseline = QLearningAgent(alpha=0.5, epsilon=0.25, discount=0.99,\n", + " get_legal_actions = lambda s: range(n_actions))\n", + "\n", + "agent_replay = QLearningAgent(alpha=0.5, epsilon=0.25, discount=0.99,\n", + " get_legal_actions = lambda s: range(n_actions))\n", + "\n", + "replay = ReplayBuffer(1000)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Baseline : eps = 2.9191091959171894e-05 mean reward = 7.4\n", + "ExpReplay: eps = 2.9191091959171894e-05 mean reward = 8.6\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "

" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from IPython.display import clear_output\n", + "from pandas import DataFrame\n", + "moving_average = lambda x, span=100: DataFrame({'x':np.asarray(x)}).x.ewm(span=span).mean().values\n", + "\n", + "rewards_replay, rewards_baseline = [], []\n", + "\n", + "for i in range(1000):\n", + " rewards_replay.append(play_and_train_with_replay(env, agent_replay, replay))\n", + " rewards_baseline.append(play_and_train_with_replay(env, agent_baseline, replay=None))\n", + " \n", + " agent_replay.epsilon *= 0.99\n", + " agent_baseline.epsilon *= 0.99\n", + " \n", + " if i %100 ==0:\n", + " clear_output(True)\n", + " print('Baseline : eps =', agent_replay.epsilon, 'mean reward =', np.mean(rewards_baseline[-10:]))\n", + " print('ExpReplay: eps =', agent_baseline.epsilon, 'mean reward =', np.mean(rewards_replay[-10:]))\n", + " plt.plot(moving_average(rewards_replay), label='exp. replay')\n", + " plt.plot(moving_average(rewards_baseline), label='baseline')\n", + " plt.grid()\n", + " plt.legend()\n", + " plt.show()\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Submit to Coursera" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted to Coursera platform. See results on assignment page!\n" + ] + } + ], + "source": [ + "from submit import submit_experience_replay\n", + "submit_experience_replay(rewards_replay, rewards_baseline, '', '')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "#### What to expect:\n", + "\n", + "Experience replay, if implemented correctly, will improve algorithm's initial convergence a lot, but it shouldn't affect the final performance.\n", + "\n", + "### Outro\n", + "\n", + "We will use the code you just wrote extensively in the next week of our course. If you're feeling that you need more examples to understand how experience replay works, try using it for binarized state spaces (CartPole or other __[classic control envs](https://gym.openai.com/envs/#classic_control)__).\n", + "\n", + "__Next week__ we're gonna explore how q-learning and similar algorithms can be applied for large state spaces, with deep learning models to approximate the Q function.\n", + "\n", + "However, __the code you've written__ for this week is already capable of solving many RL problems, and as an added benifit - it is very easy to detach. You can use Q-learning, SARSA and Experience Replay for any RL problems you want to solve - just thow 'em into a file and import the stuff you need." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/Practical Reinforcement Learning/Week3_model_free/qlearning.ipynb b/Practical Reinforcement Learning/Week3_model_free/qlearning.ipynb new file mode 100644 index 0000000..89040eb --- /dev/null +++ b/Practical Reinforcement Learning/Week3_model_free/qlearning.ipynb @@ -0,0 +1,662 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Q-learning\n", + "\n", + "This notebook will guide you through implementation of vanilla Q-learning algorithm.\n", + "\n", + "You need to implement QLearningAgent (follow instructions for each method) and use it on a number of tests below." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/bin/bash: ../xvfb: No such file or directory\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "env: DISPLAY=:1\n" + ] + } + ], + "source": [ + "#XVFB will be launched if you run on a server\n", + "import os\n", + "if type(os.environ.get(\"DISPLAY\")) is not str or len(os.environ.get(\"DISPLAY\"))==0:\n", + " !bash ../xvfb start\n", + " %env DISPLAY=:1\n", + " \n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "%load_ext autoreload\n", + "%autoreload 2" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Overwriting qlearning.py\n" + ] + } + ], + "source": [ + "%%writefile qlearning.py\n", + "from collections import defaultdict\n", + "import random, math\n", + "import numpy as np\n", + "\n", + "class QLearningAgent:\n", + " def __init__(self, alpha, epsilon, discount, get_legal_actions):\n", + " \"\"\"\n", + " Q-Learning Agent\n", + " based on http://inst.eecs.berkeley.edu/~cs188/sp09/pacman.html\n", + " Instance variables you have access to\n", + " - self.epsilon (exploration prob)\n", + " - self.alpha (learning rate)\n", + " - self.discount (discount rate aka gamma)\n", + "\n", + " Functions you should use\n", + " - self.get_legal_actions(state) {state, hashable -> list of actions, each is hashable}\n", + " which returns legal actions for a state\n", + " - self.get_qvalue(state,action)\n", + " which returns Q(state,action)\n", + " - self.set_qvalue(state,action,value)\n", + " which sets Q(state,action) := value\n", + "\n", + " !!!Important!!!\n", + " Note: please avoid using self._qValues directly. \n", + " There's a special self.get_qvalue/set_qvalue for that.\n", + " \"\"\"\n", + "\n", + " self.get_legal_actions = get_legal_actions\n", + " self._qvalues = defaultdict(lambda: defaultdict(lambda: 0))\n", + " self.alpha = alpha\n", + " self.epsilon = epsilon\n", + " self.discount = discount\n", + "\n", + " def get_qvalue(self, state, action):\n", + " \"\"\" Returns Q(state,action) \"\"\"\n", + " return self._qvalues[state][action]\n", + "\n", + " def set_qvalue(self,state,action,value):\n", + " \"\"\" Sets the Qvalue for [state,action] to the given value \"\"\"\n", + " self._qvalues[state][action] = value\n", + "\n", + " #---------------------START OF YOUR CODE---------------------#\n", + "\n", + " def get_value(self, state):\n", + " \"\"\"\n", + " Compute your agent's estimate of V(s) using current q-values\n", + " V(s) = max_over_action Q(state,action) over possible actions.\n", + " Note: please take into account that q-values can be negative.\n", + " \"\"\"\n", + " possible_actions = self.get_legal_actions(state)\n", + "\n", + " #If there are no legal actions, return 0.0\n", + " if len(possible_actions) == 0:\n", + " return 0.0\n", + "\n", + " value = max(self.get_qvalue(state, action) for action in possible_actions)\n", + "\n", + " return value\n", + "\n", + " def update(self, state, action, reward, next_state):\n", + " \"\"\"\n", + " You should do your Q-Value update here:\n", + " Q(s,a) := (1 - alpha) * Q(s,a) + alpha * (r + gamma * V(s'))\n", + " \"\"\"\n", + "\n", + " #agent parameters\n", + " gamma = self.discount\n", + " learning_rate = self.alpha\n", + "\n", + " Qsa = (1 - learning_rate)*self.get_qvalue(state, action) + learning_rate*(reward + gamma*self.get_value(next_state))\n", + " \n", + " self.set_qvalue(state, action, Qsa)\n", + "\n", + " \n", + " def get_best_action(self, state):\n", + " \"\"\"\n", + " Compute the best action to take in a state (using current q-values). \n", + " \"\"\"\n", + " possible_actions = self.get_legal_actions(state)\n", + "\n", + " #If there are no legal actions, return None\n", + " if len(possible_actions) == 0:\n", + " return None\n", + "\n", + " Q_values = {action: self.get_qvalue(state, action) for action in possible_actions}\n", + " best_action = max(Q_values, key=lambda action: Q_values[action])\n", + "\n", + " return best_action\n", + "\n", + " def get_action(self, state):\n", + " \"\"\"\n", + " Compute the action to take in the current state, including exploration. \n", + " With probability self.epsilon, we should take a random action.\n", + " otherwise - the best policy action (self.getPolicy).\n", + " \n", + " Note: To pick randomly from a list, use random.choice(list). \n", + " To pick True or False with a given probablity, generate uniform number in [0, 1]\n", + " and compare it with your probability\n", + " \"\"\"\n", + "\n", + " # Pick Action\n", + " possible_actions = self.get_legal_actions(state)\n", + " action = random.choice(possible_actions)\n", + "\n", + " #If there are no legal actions, return None\n", + " if len(possible_actions) == 0:\n", + " return None\n", + "\n", + " #agent parameters:\n", + " epsilon = self.epsilon\n", + "\n", + " chosen_action = self.get_best_action(state) if random.random() > epsilon else action\n", + " \n", + " return chosen_action" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Try it on taxi\n", + "\n", + "Here we use the qlearning agent on taxi env from openai gym.\n", + "You will need to insert a few agent functions here." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "import gym\n", + "env = gym.make(\"Taxi-v2\")\n", + "\n", + "n_actions = env.action_space.n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "from qlearning import QLearningAgent\n", + "\n", + "agent = QLearningAgent(alpha=0.5, epsilon=0.25, discount=0.99,\n", + " get_legal_actions = lambda s: range(n_actions))" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "def play_and_train(env,agent,t_max=10**4):\n", + " \"\"\"\n", + " This function should \n", + " - run a full game, actions given by agent's e-greedy policy\n", + " - train agent using agent.update(...) whenever it is possible\n", + " - return total reward\n", + " \"\"\"\n", + " total_reward = 0.0\n", + " s = env.reset()\n", + " \n", + " for t in range(t_max):\n", + " # get agent to pick action given state s.\n", + " a = agent.get_action(s)\n", + " \n", + " next_s, r, done, _ = env.step(a)\n", + " \n", + " # train (update) agent for state s\n", + " agent.update(s, a, r, next_s)\n", + " \n", + " s = next_s\n", + " total_reward +=r\n", + " if done: break\n", + " \n", + " return total_reward\n", + " \n", + " \n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "eps = 2.9191091959171894e-05 mean reward = 7.9\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from IPython.display import clear_output\n", + "\n", + "rewards = []\n", + "for i in range(1000):\n", + " rewards.append(play_and_train(env, agent))\n", + " agent.epsilon *= 0.99\n", + " \n", + " if i %100 ==0:\n", + " clear_output(True)\n", + " print('eps =', agent.epsilon, 'mean reward =', np.mean(rewards[-10:]))\n", + " plt.plot(rewards)\n", + " plt.show()\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Submit to Coursera I" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "submit_rewards1 = rewards.copy()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Binarized state spaces\n", + "\n", + "Use agent to train efficiently on CartPole-v0.\n", + "This environment has a continuous set of possible states, so you will have to group them into bins somehow.\n", + "\n", + "The simplest way is to use `round(x,n_digits)` (or numpy round) to round real number to a given amount of digits.\n", + "\n", + "The tricky part is to get the n_digits right for each state to train effectively.\n", + "\n", + "Note that you don't need to convert state to integers, but to __tuples__ of any kind of values." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "first state:[-0.01306377 0.007387 0.00865687 -0.04737718]\n" + ] + }, + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "env = gym.make(\"CartPole-v0\")\n", + "n_actions = env.action_space.n\n", + "\n", + "print(\"first state:%s\" % (env.reset()))\n", + "plt.imshow(env.render('rgb_array'))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Play a few games\n", + "\n", + "We need to estimate observation distributions. To do so, we'll play a few games and record all states." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "all_states = []\n", + "for _ in range(1000):\n", + " all_states.append(env.reset())\n", + " done = False\n", + " while not done:\n", + " s, r, done, _ = env.step(env.action_space.sample())\n", + " all_states.append(s)\n", + " if done: break\n", + " \n", + "all_states = np.array(all_states)\n", + "\n", + "for obs_i in range(env.observation_space.shape[0]):\n", + " plt.hist(all_states[:, obs_i], bins=20)\n", + " plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Binarize environment" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "from gym.core import ObservationWrapper\n", + "class Binarizer(ObservationWrapper):\n", + " \n", + " def _observation(self, state): \n", + " \n", + " #state = \n", + " #hint: you can do that with round(x,n_digits)\n", + " #you will need to pick a different n_digits for each dimension\n", + " state = [round(s, digit) for s, digit in zip(state, [1, 1, 1, 1])]\n", + "\n", + " return tuple(state)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "env = Binarizer(gym.make(\"CartPole-v0\"))" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mWARN: doesn't implement 'observation' method. Maybe it implements deprecated '_observation' method.\u001b[0m\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "all_states = []\n", + "for _ in range(1000):\n", + " all_states.append(env.reset())\n", + " done = False\n", + " while not done:\n", + " s, r, done, _ = env.step(env.action_space.sample())\n", + " all_states.append(s)\n", + " if done: break\n", + " \n", + "all_states = np.array(all_states)\n", + "\n", + "for obs_i in range(env.observation_space.shape[0]):\n", + " \n", + " plt.hist(all_states[:,obs_i],bins=20)\n", + " plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Learn binarized policy\n", + "\n", + "Now let's train a policy that uses binarized state space.\n", + "\n", + "__Tips:__ \n", + "* If your binarization is too coarse, your agent may fail to find optimal policy. In that case, change binarization. \n", + "* If your binarization is too fine-grained, your agent will take much longer than 1000 steps to converge. You can either increase number of iterations and decrease epsilon decay or change binarization.\n", + "* Having 10^3 ~ 10^4 distinct states is recommended (`len(QLearningAgent._qvalues)`), but not required.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "agent = QLearningAgent(alpha=0.5, epsilon=0.25, discount=0.99,\n", + " get_legal_actions = lambda s: range(n_actions))" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "eps = 0.10017116323788516 mean reward = 144.6\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "rewards = []\n", + "for i in range(10000):\n", + " rewards.append(play_and_train(env,agent))\n", + " \n", + " #OPTIONAL YOUR CODE: adjust epsilon\n", + " if i %100 ==0:\n", + " agent.epsilon *= 0.99\n", + " clear_output(True)\n", + " print('eps =', agent.epsilon, 'mean reward =', np.mean(rewards[-10:]))\n", + " plt.plot(rewards)\n", + " plt.show()\n", + " \n", + " if np.mean(rewards[-10:]) > 140:\n", + " break\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "### Submit to Coursera II" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted to Coursera platform. See results on assignment page!\n" + ] + } + ], + "source": [ + "submit_rewards2 = rewards.copy()\n", + "from submit import submit_qlearning_all\n", + "submit_qlearning_all(submit_rewards1, submit_rewards2, '', '')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/Practical Reinforcement Learning/Week3_model_free/qlearning.py b/Practical Reinforcement Learning/Week3_model_free/qlearning.py new file mode 100644 index 0000000..e6a6081 --- /dev/null +++ b/Practical Reinforcement Learning/Week3_model_free/qlearning.py @@ -0,0 +1,114 @@ +from collections import defaultdict +import random, math +import numpy as np + +class QLearningAgent: + def __init__(self, alpha, epsilon, discount, get_legal_actions): + """ + Q-Learning Agent + based on http://inst.eecs.berkeley.edu/~cs188/sp09/pacman.html + Instance variables you have access to + - self.epsilon (exploration prob) + - self.alpha (learning rate) + - self.discount (discount rate aka gamma) + + Functions you should use + - self.get_legal_actions(state) {state, hashable -> list of actions, each is hashable} + which returns legal actions for a state + - self.get_qvalue(state,action) + which returns Q(state,action) + - self.set_qvalue(state,action,value) + which sets Q(state,action) := value + + !!!Important!!! + Note: please avoid using self._qValues directly. + There's a special self.get_qvalue/set_qvalue for that. + """ + + self.get_legal_actions = get_legal_actions + self._qvalues = defaultdict(lambda: defaultdict(lambda: 0)) + self.alpha = alpha + self.epsilon = epsilon + self.discount = discount + + def get_qvalue(self, state, action): + """ Returns Q(state,action) """ + return self._qvalues[state][action] + + def set_qvalue(self,state,action,value): + """ Sets the Qvalue for [state,action] to the given value """ + self._qvalues[state][action] = value + + #---------------------START OF YOUR CODE---------------------# + + def get_value(self, state): + """ + Compute your agent's estimate of V(s) using current q-values + V(s) = max_over_action Q(state,action) over possible actions. + Note: please take into account that q-values can be negative. + """ + possible_actions = self.get_legal_actions(state) + + #If there are no legal actions, return 0.0 + if len(possible_actions) == 0: + return 0.0 + + value = max(self.get_qvalue(state, action) for action in possible_actions) + + return value + + def update(self, state, action, reward, next_state): + """ + You should do your Q-Value update here: + Q(s,a) := (1 - alpha) * Q(s,a) + alpha * (r + gamma * V(s')) + """ + + #agent parameters + gamma = self.discount + learning_rate = self.alpha + + Qsa = (1 - learning_rate)*self.get_qvalue(state, action) + learning_rate*(reward + gamma*self.get_value(next_state)) + + self.set_qvalue(state, action, Qsa) + + + def get_best_action(self, state): + """ + Compute the best action to take in a state (using current q-values). + """ + possible_actions = self.get_legal_actions(state) + + #If there are no legal actions, return None + if len(possible_actions) == 0: + return None + + Q_values = {action: self.get_qvalue(state, action) for action in possible_actions} + best_action = max(Q_values, key=lambda action: Q_values[action]) + + return best_action + + def get_action(self, state): + """ + Compute the action to take in the current state, including exploration. + With probability self.epsilon, we should take a random action. + otherwise - the best policy action (self.getPolicy). + + Note: To pick randomly from a list, use random.choice(list). + To pick True or False with a given probablity, generate uniform number in [0, 1] + and compare it with your probability + """ + + # Pick Action + possible_actions = self.get_legal_actions(state) + action = random.choice(possible_actions) + + #If there are no legal actions, return None + if len(possible_actions) == 0: + return None + + #agent parameters: + epsilon = self.epsilon + + chosen_action = self.get_best_action(state) if random.random() > epsilon else action + + return chosen_action \ No newline at end of file diff --git a/Practical Reinforcement Learning/Week3_model_free/sarsa.ipynb b/Practical Reinforcement Learning/Week3_model_free/sarsa.ipynb new file mode 100644 index 0000000..76bcd2e --- /dev/null +++ b/Practical Reinforcement Learning/Week3_model_free/sarsa.ipynb @@ -0,0 +1,378 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## On-policy learning and SARSA\n", + "\n", + "This notebook builds on `qlearning.ipynb` to implement Expected Value SARSA.\n", + "\n", + "The policy we're gonna use is epsilon-greedy policy, where agent takes optimal action with probability $(1-\\epsilon)$, otherwise samples action at random. Note that agent __can__ occasionally sample optimal action during random sampling by pure chance." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/bin/bash: ../xvfb: No such file or directory\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "env: DISPLAY=:1\n" + ] + } + ], + "source": [ + "#XVFB will be launched if you run on a server\n", + "import os\n", + "if type(os.environ.get(\"DISPLAY\")) is not str or len(os.environ.get(\"DISPLAY\"))==0:\n", + " !bash ../xvfb start\n", + " %env DISPLAY=:1\n", + " \n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "%load_ext autoreload\n", + "%autoreload 2" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "from qlearning import QLearningAgent\n", + "\n", + "class EVSarsaAgent(QLearningAgent):\n", + " \"\"\" \n", + " An agent that changes some of q-learning functions to implement Expected Value SARSA. \n", + " Note: this demo assumes that your implementation of QLearningAgent.update uses get_value(next_state).\n", + " If it doesn't, please add\n", + " def update(self, state, action, reward, next_state):\n", + " and implement it for Expected Value SARSA's V(s')\n", + " \"\"\"\n", + " \n", + " def get_value(self, state):\n", + " \"\"\" \n", + " Returns Vpi for current state under epsilon-greedy policy:\n", + " V_{pi}(s) = sum _{over a_i} {pi(a_i | s) * Q(s, a_i)}\n", + " \n", + " Hint: all other methods from QLearningAgent are still accessible.\n", + " \"\"\"\n", + " epsilon = self.epsilon\n", + " possible_actions = self.get_legal_actions(state)\n", + "\n", + " #If there are no legal actions, return 0.0\n", + " if len(possible_actions) == 0:\n", + " return 0.0\n", + "\n", + " best_action = self.get_best_action(state)\n", + " state_value = (1 - epsilon)*self.get_qvalue(state, best_action) + \\\n", + " epsilon/len(possible_actions)*np.sum(self.get_qvalue(state, action) for action in possible_actions)\n", + " \n", + " return state_value" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Cliff World\n", + "\n", + "Let's now see how our algorithm compares against q-learning in case where we force agent to explore all the time.\n", + "\n", + "\n", + "
image by cs188
" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " This is a simple implementation of the Gridworld Cliff\n", + " reinforcement learning task.\n", + "\n", + " Adapted from Example 6.6 (page 132) from Reinforcement Learning: An Introduction\n", + " by Sutton and Barto:\n", + " http://incompleteideas.net/book/the-book-2nd.html\n", + " \n", + " With inspiration from:\n", + " https://github.com/dennybritz/reinforcement-learning/blob/master/lib/envs/cliff_walking.py\n", + "\n", + " The board is a 4x12 matrix, with (using Numpy matrix indexing):\n", + " [3, 0] as the start at bottom-left\n", + " [3, 11] as the goal at bottom-right\n", + " [3, 1..10] as the cliff at bottom-center\n", + "\n", + " Each time step incurs -1 reward, and stepping into the cliff incurs -100 reward \n", + " and a reset to the start. An episode terminates when the agent reaches the goal.\n", + " \n" + ] + } + ], + "source": [ + "import gym, gym.envs.toy_text\n", + "env = gym.envs.toy_text.CliffWalkingEnv()\n", + "n_actions = env.action_space.n\n", + "\n", + "print(env.__doc__)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "o o o o o o o o o o o o\n", + "o o o o o o o o o o o o\n", + "o o o o o o o o o o o o\n", + "x C C C C C C C C C C T\n", + "\n" + ] + } + ], + "source": [ + "# Our cliffworld has one difference from what's on the image: there is no wall. \n", + "# Agent can choose to go as close to the cliff as it wishes. x:start, T:exit, C:cliff, o: flat ground\n", + "env.render()" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "def play_and_train(env,agent,t_max=10**4):\n", + " \"\"\"This function should \n", + " - run a full game, actions given by agent.getAction(s)\n", + " - train agent using agent.update(...) whenever possible\n", + " - return total reward\"\"\"\n", + " total_reward = 0.0\n", + " s = env.reset()\n", + " \n", + " for t in range(t_max):\n", + " a = agent.get_action(s)\n", + " \n", + " next_s,r,done,_ = env.step(a)\n", + " agent.update(s, a, r, next_s)\n", + " \n", + " s = next_s\n", + " total_reward +=r\n", + " if done:break\n", + " \n", + " return total_reward\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "from qlearning import QLearningAgent\n", + "\n", + "agent_sarsa = EVSarsaAgent(alpha=0.25, epsilon=0.2, discount=0.99,\n", + " get_legal_actions = lambda s: range(n_actions))\n", + "\n", + "agent_ql = QLearningAgent(alpha=0.25, epsilon=0.2, discount=0.99,\n", + " get_legal_actions = lambda s: range(n_actions))" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "EVSARSA mean reward = -24.98\n", + "QLEARNING mean reward = -92.89\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from IPython.display import clear_output\n", + "from pandas import DataFrame\n", + "moving_average = lambda x, span=100: DataFrame({'x':np.asarray(x)}).x.ewm(span=span).mean().values\n", + "\n", + "rewards_sarsa, rewards_ql = [], []\n", + "\n", + "for i in range(5000):\n", + " rewards_sarsa.append(play_and_train(env, agent_sarsa))\n", + " rewards_ql.append(play_and_train(env, agent_ql))\n", + " #Note: agent.epsilon stays constant\n", + " \n", + " if i %100 ==0:\n", + " clear_output(True)\n", + " print('EVSARSA mean reward =', np.mean(rewards_sarsa[-100:]))\n", + " print('QLEARNING mean reward =', np.mean(rewards_ql[-100:]))\n", + " plt.title(\"epsilon = %s\" % agent_ql.epsilon)\n", + " plt.plot(moving_average(rewards_sarsa), label='ev_sarsa')\n", + " plt.plot(moving_average(rewards_ql), label='qlearning')\n", + " plt.grid()\n", + " plt.legend()\n", + " plt.ylim(-500, 0)\n", + " plt.show()\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's now see what did the algorithms learn by visualizing their actions at every state." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "def draw_policy(env, agent):\n", + " \"\"\" Prints CliffWalkingEnv policy with arrows. Hard-coded. \"\"\"\n", + " n_rows, n_cols = env._cliff.shape\n", + " \n", + " actions = '^>v<'\n", + " \n", + " for yi in range(n_rows):\n", + " for xi in range(n_cols):\n", + " if env._cliff[yi, xi]:\n", + " print(\" C \", end='')\n", + " elif (yi * n_cols + xi) == env.start_state_index:\n", + " print(\" X \", end='')\n", + " elif (yi * n_cols + xi) == n_rows * n_cols - 1:\n", + " print(\" T \", end='')\n", + " else:\n", + " print(\" %s \" % actions[agent.get_best_action(yi * n_cols + xi)], end='')\n", + " print()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Q-Learning\n", + " > > > > v > > v v v v v \n", + " > > > > > > > > > > > v \n", + " > > > > > > > > > > > v \n", + " X C C C C C C C C C C T \n", + "SARSA\n", + " > > > > > > > > > > > v \n", + " ^ ^ ^ > > > > > > > > v \n", + " ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ > v \n", + " X C C C C C C C C C C T \n" + ] + } + ], + "source": [ + "print(\"Q-Learning\")\n", + "draw_policy(env, agent_ql)\n", + "\n", + "print(\"SARSA\")\n", + "draw_policy(env, agent_sarsa)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Submit to Coursera" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted to Coursera platform. See results on assignment page!\n" + ] + } + ], + "source": [ + "from submit import submit_sarsa\n", + "submit_sarsa(rewards_ql, rewards_sarsa, '', '')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "### More\n", + "\n", + "Here are some of the things you can do if you feel like it:\n", + "\n", + "* Play with epsilon. See learned how policies change if you set epsilon to higher/lower values (e.g. 0.75).\n", + "* Expected Value SASRSA for softmax policy:\n", + "$$ \\pi(a_i|s) = softmax({Q(s,a_i) \\over \\tau}) = {e ^ {Q(s,a_i)/ \\tau} \\over {\\sum_{a_j} e ^{Q(s,a_j) / \\tau }}} $$\n", + "* Implement N-step algorithms and TD($\\lambda$): see [Sutton's book](http://incompleteideas.net/book/bookdraft2018jan1.pdf) chapter 7 and chapter 12.\n", + "* Use those algorithms to train on CartPole in previous / next assignment for this week." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/Practical Reinforcement Learning/Week3_model_free/submit.py b/Practical Reinforcement Learning/Week3_model_free/submit.py new file mode 100644 index 0000000..a36030d --- /dev/null +++ b/Practical Reinforcement Learning/Week3_model_free/submit.py @@ -0,0 +1,60 @@ +import sys +import numpy as np +sys.path.append("..") +import grading + + +def submit_experience_replay(rewards_replay, rewards_baseline, email, token): + flag1 = np.mean(rewards_replay[:100]) - np.mean(rewards_baseline[:100]) + flag2 = np.mean(rewards_replay[-100:]) + flag3 = np.mean(rewards_baseline[-100:]) + + grader = grading.Grader("XUt-8d7yEee8nwq8KJgXXg") + grader.set_answer("iEQwT", flag1) + grader.set_answer("8N1Wm", flag2) + grader.set_answer("F0Am8", flag3) + + grader.submit(email, token) + + +def submit_qlearning1(rewards, email, token): + flag1 = np.mean(rewards[-10:]) + + grader = grading.Grader("XbjcGd7xEeeDzRKutDCmyA") + grader.set_answer("5NB4z", flag1) + + grader.submit(email, token) + + +def submit_qlearning2(rewards, email, token): + flag1 = np.mean(rewards[-10:]) + + grader = grading.Grader("XbjcGd7xEeeDzRKutDCmyA") + grader.set_answer("CkyJ4", flag1) + + grader.submit(email, token) + + +def submit_qlearning_all(rewards_q1, rewards_q2, email, token): + grader = grading.Grader("XbjcGd7xEeeDzRKutDCmyA") + + flag1 = np.mean(rewards_q1[-10:]) + grader.set_answer("5NB4z", flag1) + + flag2 = np.mean(rewards_q2[-10:]) + grader.set_answer("CkyJ4", flag2) + + grader.submit(email, token) + + +def submit_sarsa(rewards_ql, rewards_sarsa, email, token): + flag1 = np.mean(rewards_ql[-100:]) + flag2 = np.mean(rewards_sarsa[-100:]) + flag3 = np.mean(rewards_sarsa[-100:]) - np.mean(rewards_ql[-100:]) + + grader = grading.Grader("pazQX97xEee_JA6t1Myltg") + grader.set_answer("ZarWJ", flag1) + grader.set_answer("izJi4", flag2) + grader.set_answer("frgbU", flag3) + + grader.submit(email, token)