Created
May 26, 2024 05:35
-
-
Save radekosmulski/273126977cc1f45bc74d0f93653522e7 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "cells": [ | |
| { | |
| "cell_type": "code", | |
| "execution_count": 1, | |
| "id": "c6a07039-1109-49f7-a031-7b723ecfdffb", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stderr", | |
| "output_type": "stream", | |
| "text": [ | |
| "/home/radek/miniforge3/envs/cleanrl/lib/python3.10/site-packages/aim/storage/structured/sql_engine/models.py:16: MovedIn20Warning: The ``declarative_base()`` function is now available as sqlalchemy.orm.declarative_base(). (deprecated since: 2.0) (Background on SQLAlchemy 2.0 at: https://sqlalche.me/e/b8d9)\n", | |
| " Base = declarative_base()\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "import os\n", | |
| "\n", | |
| "os.environ['CUDA_VISIBLE_DEVICES'] = '0'\n", | |
| "\n", | |
| "import os\n", | |
| "import random\n", | |
| "import time\n", | |
| "from dataclasses import dataclass\n", | |
| "from pathlib import Path\n", | |
| "from pdb import set_trace\n", | |
| "\n", | |
| "import gymnasium as gym\n", | |
| "import numpy as np\n", | |
| "import torch\n", | |
| "import torch.nn as nn\n", | |
| "import torch.nn.functional as F\n", | |
| "import torch.optim as optim\n", | |
| "from torch.optim.lr_scheduler import LinearLR\n", | |
| "import tyro\n", | |
| "from stable_baselines3.common.atari_wrappers import (\n", | |
| " ClipRewardEnv,\n", | |
| " EpisodicLifeEnv,\n", | |
| " FireResetEnv,\n", | |
| " MaxAndSkipEnv,\n", | |
| " NoopResetEnv,\n", | |
| ")\n", | |
| "from stable_baselines3.common.buffers import ReplayBuffer\n", | |
| "from torch.utils.tensorboard import SummaryWriter\n", | |
| "\n", | |
| "import stable_baselines3 as sb3\n", | |
| "\n", | |
| "from aim import Run\n", | |
| "dry_run = False" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 2, | |
| "id": "c4357881-089d-4942-8f02-546c3f5e1f52", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "@dataclass\n", | |
| "class Args:\n", | |
| " seed: int = 42\n", | |
| " # Algorithm specific arguments\n", | |
| " env_id: str = \"BreakoutNoFrameskip-v4\"\n", | |
| " \"\"\"the id of the environment\"\"\"\n", | |
| " total_timesteps: int = 10000000\n", | |
| " \"\"\"total timesteps of the experiments\"\"\"\n", | |
| " learning_rate: float = 1e-4\n", | |
| " \"\"\"the learning rate of the optimizer\"\"\"\n", | |
| " num_envs: int = 1\n", | |
| " \"\"\"the number of parallel game environments\"\"\"\n", | |
| " buffer_size: int = 1000000\n", | |
| " \"\"\"the replay memory buffer size\"\"\"\n", | |
| " gamma: float = 0.99\n", | |
| " \"\"\"the discount factor gamma\"\"\"\n", | |
| " tau: float = 1.0\n", | |
| " \"\"\"the target network update rate\"\"\"\n", | |
| " target_network_frequency: int = 1000\n", | |
| " \"\"\"the timesteps it takes to update the target network\"\"\"\n", | |
| " batch_size: int = 32\n", | |
| " \"\"\"the batch size of sample from the reply memory\"\"\"\n", | |
| " start_e: float = 1\n", | |
| " \"\"\"the starting epsilon for exploration\"\"\"\n", | |
| " end_e: float = 0.01\n", | |
| " \"\"\"the ending epsilon for exploration\"\"\"\n", | |
| " exploration_fraction: float = 0.10\n", | |
| " \"\"\"the fraction of `total-timesteps` it takes from start-e to go end-e\"\"\"\n", | |
| " learning_starts: int = 80000\n", | |
| " \"\"\"timestep to start learning\"\"\"\n", | |
| " train_frequency: int = 4\n", | |
| " \"\"\"the frequency of training\"\"\"" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 3, | |
| "id": "de1282d6-8587-4b2f-9b90-964438900e1a", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "args = Args()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 4, | |
| "id": "88c2ca1b-b893-450e-bb5e-70d2b1ca55dd", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stderr", | |
| "output_type": "stream", | |
| "text": [ | |
| "A.L.E: Arcade Learning Environment (version 0.8.1+53f58b7)\n", | |
| "[Powered by Stella]\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "def make_env():\n", | |
| " env = gym.make(args.env_id, render_mode='rgb_array')\n", | |
| " \n", | |
| " env = gym.wrappers.RecordEpisodeStatistics(env)\n", | |
| " env = NoopResetEnv(env, noop_max=30)\n", | |
| " env = MaxAndSkipEnv(env, skip=4)\n", | |
| " env = EpisodicLifeEnv(env)\n", | |
| " if \"FIRE\" in env.unwrapped.get_action_meanings():\n", | |
| " env = FireResetEnv(env)\n", | |
| " env = ClipRewardEnv(env)\n", | |
| " env = gym.wrappers.ResizeObservation(env, (84, 84))\n", | |
| " env = gym.wrappers.GrayScaleObservation(env)\n", | |
| " env = gym.wrappers.FrameStack(env, 4)\n", | |
| " return env\n", | |
| "\n", | |
| "env = make_env()\n", | |
| "obss = []\n", | |
| "obs, info = env.reset()\n", | |
| "obss.append(obs)\n", | |
| "\n", | |
| "for i in range(400):\n", | |
| " obs, _, terminated, truncated, _ = env.step(env.action_space.sample())\n", | |
| " obss.append(obs)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "fc66d23e-2603-467a-ab71-2fa7f21314b6", | |
| "metadata": {}, | |
| "source": [ | |
| "Actions:\n", | |
| "```\n", | |
| "0: NOOP\n", | |
| "1: FIRE\n", | |
| "2: RIGHT\n", | |
| "3: LEFT\n", | |
| "```" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 5, | |
| "id": "17c24110-890d-4a35-8e39-f29873a199f1", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "from matplotlib import pyplot as plt\n", | |
| "from matplotlib import animation\n", | |
| "from IPython.display import HTML\n", | |
| "\n", | |
| "def animate_list_of_of_images(video):\n", | |
| " video = np.array(video)\n", | |
| " \n", | |
| " fig = plt.figure()\n", | |
| " im = plt.imshow(video[0])\n", | |
| " \n", | |
| " plt.close() # this is required to not display the generated image\n", | |
| " \n", | |
| " def init():\n", | |
| " im.set_data(video[0])\n", | |
| " \n", | |
| " def animate(i):\n", | |
| " im.set_data(video[i])\n", | |
| " return im\n", | |
| " \n", | |
| " anim = animation.FuncAnimation(fig, animate, init_func=init, frames=video.shape[0],\n", | |
| " interval=50)\n", | |
| " return HTML(anim.to_html5_video())" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 6, | |
| "id": "02408849-80e9-4b4e-8de1-0aec0ddf48a8", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def unstack(obss): return [obs[-1] for obs in obss]" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 7, | |
| "id": "02469459-4515-4597-9149-f0a42bd82c57", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stderr", | |
| "output_type": "stream", | |
| "text": [ | |
| "/home/radek/miniforge3/envs/cleanrl/lib/python3.10/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", | |
| " warnings.warn(\n" | |
| ] | |
| }, | |
| { | |
| "data": { | |
| "text/html": [ | |
| "<video width=\"640\" height=\"480\" controls autoplay loop>\n", | |
| " <source type=\"video/mp4\" src=\"data:video/mp4;base64,AAAAIGZ0eXBNNFYgAAACAE00ViBpc29taXNvMmF2YzEAAAAIZnJlZQAAjs1tZGF0AAACrwYF//+r\n", | |
| "3EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlIDE2MyByMzA2MCA1ZGI2YWE2IC0gSC4yNjQvTVBF\n", | |
| "Ry00IEFWQyBjb2RlYyAtIENvcHlsZWZ0IDIwMDMtMjAyMSAtIGh0dHA6Ly93d3cudmlkZW9sYW4u\n", | |
| "b3JnL3gyNjQuaHRtbCAtIG9wdGlvbnM6IGNhYmFjPTEgcmVmPTMgZGVibG9jaz0xOjA6MCBhbmFs\n", | |
| "eXNlPTB4MzoweDExMyBtZT1oZXggc3VibWU9NyBwc3k9MSBwc3lfcmQ9MS4wMDowLjAwIG1peGVk\n", | |
| "X3JlZj0xIG1lX3JhbmdlPTE2IGNocm9tYV9tZT0xIHRyZWxsaXM9MSA4eDhkY3Q9MSBjcW09MCBk\n", | |
| "ZWFkem9uZT0yMSwxMSBmYXN0X3Bza2lwPTEgY2hyb21hX3FwX29mZnNldD0tMiB0aHJlYWRzPTE1\n", | |
| "IGxvb2thaGVhZF90aHJlYWRzPTIgc2xpY2VkX3RocmVhZHM9MCBucj0wIGRlY2ltYXRlPTEgaW50\n", | |
| "ZXJsYWNlZD0wIGJsdXJheV9jb21wYXQ9MCBjb25zdHJhaW5lZF9pbnRyYT0wIGJmcmFtZXM9MyBi\n", | |
| "X3B5cmFtaWQ9MiBiX2FkYXB0PTEgYl9iaWFzPTAgZGlyZWN0PTEgd2VpZ2h0Yj0xIG9wZW5fZ29w\n", | |
| "PTAgd2VpZ2h0cD0yIGtleWludD0yNTAga2V5aW50X21pbj0yMCBzY2VuZWN1dD00MCBpbnRyYV9y\n", | |
| "ZWZyZXNoPTAgcmNfbG9va2FoZWFkPTQwIHJjPWNyZiBtYnRyZWU9MSBjcmY9MjMuMCBxY29tcD0w\n", | |
| "LjYwIHFwbWluPTAgcXBtYXg9NjkgcXBzdGVwPTQgaXBfcmF0aW89MS40MCBhcT0xOjEuMDAAgAAA\n", | |
| "FeNliIQAP//+92ifAptaQ3qA5JXFJdtPgf+rZ3B8j+kDAAADAAADAAAEMCOP9CT+H5qTAAADAEQA\n", | |
| "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\n", | |
| "AAAAAAAAAQAAAgAAAAABAAAEAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAA\n", | |
| "CgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAAC\n", | |
| "AAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAA\n", | |
| "AAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAgAAAAAAgAAAgAA\n", | |
| "AAABAAAIAAAAAAIAAAIAAAAAAQAABgAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAA\n", | |
| "AAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAGAAAAAAEAAAIAAAAA\n", | |
| "AQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAACAAAEAAAAAAEAAAoAAAAAAQAABAAAAAAB\n", | |
| "AAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEA\n", | |
| "AAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAA\n", | |
| "CAAAAAACAAACAAAAAAEAAAYAAAAAAQAAAgAAAAABAAAGAAAAAAEAAAIAAAAAAQAABgAAAAABAAAC\n", | |
| "AAAAAAEAAAgAAAAAAgAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoA\n", | |
| "AAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAABgAAAAABAAACAAAAAAEAAAYAAAAAAQAAAgAA\n", | |
| "AAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAA\n", | |
| "AAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAA\n", | |
| "AQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAAB\n", | |
| "AAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEA\n", | |
| "AAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAA\n", | |
| "AgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAA\n", | |
| "AAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQA\n", | |
| "AAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAA\n", | |
| "AAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAA\n", | |
| "AAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAA\n", | |
| "AQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAAB\n", | |
| "AAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEA\n", | |
| "AAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAA\n", | |
| "CgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAAC\n", | |
| "AAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAA\n", | |
| "AAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAA\n", | |
| "AAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAIAAAA\n", | |
| "AAIAAAIAAAAAAQAABAAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAA\n", | |
| "AQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAAB\n", | |
| "AAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEA\n", | |
| "AAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAA\n", | |
| "AAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAE\n", | |
| "AAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoA\n", | |
| "AAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAA\n", | |
| "AAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAA\n", | |
| "AAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAA\n", | |
| "AQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAAB\n", | |
| "AAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEA\n", | |
| "AAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAA\n", | |
| "AgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAA\n", | |
| "AAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQA\n", | |
| "AAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAA\n", | |
| "AAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAA\n", | |
| "AAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAA\n", | |
| "AQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAAB\n", | |
| "AAAAAAAAAAEAAAIAAAAAAQAACgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEA\n", | |
| "AAQAAAAAAQAAAAAAAAABAAACAAAAAAEAAAoAAAAAAQAABAAAAAABAAAAAAAAAAEAAAIAAAAAAQAA\n", | |
| "CgAAAAABAAAEAAAAAAEAAAAAAAAAAQAAAgAAAAABAAAKAAAAAAEAAAQAAAAAAQAAAAAAAAABAAAC\n", | |
| "AAAAAAEAAAYAAAAAAQAAAgAAAAAcc3RzYwAAAAAAAAABAAAAAQAAAZEAAAABAAAGWHN0c3oAAAAA\n", | |
| "AAAAAAAAAZEAABiaAAABqgAAAK8AAACKAAAAVgAAAHgAAACYAAAAjwAAAIEAAAEVAAAAogAAAHwA\n", | |
| "AACBAAAAmwAAAJsAAABlAAAA0wAAAGEAAABjAAAAUgAAAGMAAAA9AAABLAAAADUAAAA8AAAA7QAA\n", | |
| "AFcAAACCAAAAqAAAAGQAAACkAAAAegAAAHkAAACzAAAAkwAAAKAAAAB0AAAAdgAAAMIAAAEcAAAA\n", | |
| "fgAAAKYAAABTAAAANgAAACsAAAA+AAAAHQAAAWwAAAAsAAAAHAAAACUAAAB/AAAAbQAAAE4AAABK\n", | |
| "AAAAfwAAAEkAAABDAAAAYgAAAIUAAAB1AAAAYAAAAE4AAAB0AAAAXAAAAF8AAACeAAAAcwAAAFUA\n", | |
| "AAERAAAAlgAAAHEAAACBAAAAMAAAACIAAAHHAAAAnAAAAFkAAABxAAAAmwAAAG0AAACFAAAAhQAA\n", | |
| "AGMAAABxAAAAxgAAALUAAACyAAAAsAAAAG4AAACCAAAAgAAAAIcAAACJAAAAUAAAAF4AAAA5AAAA\n", | |
| "LwAAABgAAAFzAAAAfgAAAE8AAAA+AAAAdgAAAF8AAABGAAAA1gAAAHoAAADqAAAAcwAAAOwAAABc\n", | |
| "AAAAmgAAAHsAAAB6AAAA0wAAAKAAAACRAAAAbgAAAOoAAAB1AAAAWwAAAG8AAACbAAAAcQAAAOkA\n", | |
| "AABQAAAAnQAAACgAAAAzAAAAHAAAACUAAAAjAAAAHAAAABoAAAAiAAAAIQAAABoAAAAaAAAAIgAA\n", | |
| "ACEAAAAaAAAAGgAAACIAAAAhAAAAGgAAABoAAAAiAAAAIQAAABoAAAAaAAAAIgAAACEAAAAaAAAA\n", | |
| "GgAAACIAAAAhAAAAGgAAABoAAAAiAAAAIQAAABoAAAAaAAAAIgAAACEAAAAaAAAAGgAAACIAAAAh\n", | |
| "AAAAGgAAABoAAAAiAAAAIQAAABoAAAAaAAAAIgAAACEAAAAaAAAAGgAAACIAAAAhAAAAGgAAABoA\n", | |
| "AAAiAAAAIQAAABoAAAAaAAAAIgAAACEAAAAaAAAAGgAAACIAAAAhAAAAGgAAABoAAAAiAAAAIQAA\n", | |
| "ABoAAAAaAAAAIgAAACEAAAAaAAAAGgAAACIAAAAhAAAAGgAAABoAAAAiAAAAIQAAABoAAAAaAAAA\n", | |
| "IgAAACEAAAAaAAAAGgAAACIAAAAhAAAAGgAAABoAAAAiAAAAIQAAABoAAAAaAAAAIgAAACEAAAAa\n", | |
| "AAAAGgAAACIAAAAhAAAAGgAAABoAAAAiAAAAIQAAABoAAAAaAAAAIgAAACEAAAAaAAAAGgAAACIA\n", | |
| "AAAhAAAAGgAAABoAAAAiAAAAIQAAABoAAAAaAAAAHAAAACAAAAAaAAAXuwAAAIkAAAAdAAAAHQAA\n", | |
| "ABQAAAAdAAAAFgAAABQAAAAUAAAAHQAAABYAAAAUAAAAFAAAAB0AAAAWAAAAFAAAABQAAAAdAAAA\n", | |
| "FgAAABQAAAAUAAAAHQAAABYAAAAUAAAAFAAAAB0AAAAWAAAAFAAAABQAAAAdAAAAFgAAABQAAAAU\n", | |
| "AAAAHQAAABYAAAAUAAAAFAAAAB0AAAAWAAAAFAAAABQAAAAdAAAAFgAAABQAAAAUAAAAHQAAABYA\n", | |
| "AAAUAAAAFAAAAB0AAAAWAAAAFAAAABQAAAAdAAAAFgAAABQAAAAUAAAAHQAAABYAAAAUAAAAFAAA\n", | |
| "AB0AAAAWAAAAFAAAABQAAAAdAAAAFgAAABQAAAAUAAAAHQAAABYAAAAUAAAAFAAAAB0AAAAWAAAA\n", | |
| "FAAAABQAAAAdAAAAFgAAABQAAAAUAAAAHQAAABYAAAAUAAAAFAAAAB0AAAAWAAAAFAAAABQAAAAd\n", | |
| "AAAAFgAAABQAAAAUAAAAHQAAABYAAAAUAAAAFAAAAB0AAAAWAAAAFAAAABQAAAAdAAAAFgAAABQA\n", | |
| "AAAUAAAAHQAAABYAAAAUAAAAFAAAAB0AAAAWAAAAFAAAABQAAAAdAAAAFgAAABQAAAAUAAAAHQAA\n", | |
| "ABYAAAAUAAAAFAAAACMAAAAWAAAAFAAAABQAAAAjAAAAFgAAABQAAAAUAAAAHQAAABYAAAAUAAAA\n", | |
| "FAAAAB0AAAAWAAAAFAAAABQAAAAdAAAAFgAAABQAAAAUAAAAHQAAABYAAAAUAAAAFAAAABwAAAAW\n", | |
| "AAAAFAAAABQAAAAdAAAAFAAAABRzdGNvAAAAAAAAAAEAAAAwAAAAYnVkdGEAAABabWV0YQAAAAAA\n", | |
| "AAAhaGRscgAAAAAAAAAAbWRpcmFwcGwAAAAAAAAAAAAAAAAtaWxzdAAAACWpdG9vAAAAHWRhdGEA\n", | |
| "AAABAAAAAExhdmY1OC43Ni4xMDA=\n", | |
| "\">\n", | |
| " Your browser does not support the video tag.\n", | |
| "</video>" | |
| ], | |
| "text/plain": [ | |
| "<IPython.core.display.HTML object>" | |
| ] | |
| }, | |
| "execution_count": 7, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "animate_list_of_of_images(unstack(obss))" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 8, | |
| "id": "2cdb5f91-fb40-446b-979b-f817829b2856", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stderr", | |
| "output_type": "stream", | |
| "text": [ | |
| "/home/radek/miniforge3/envs/cleanrl/lib/python3.10/site-packages/pkg_resources/__init__.py:121: DeprecationWarning: pkg_resources is deprecated as an API\n", | |
| " warnings.warn(\"pkg_resources is deprecated as an API\", DeprecationWarning)\n", | |
| "/home/radek/miniforge3/envs/cleanrl/lib/python3.10/site-packages/pkg_resources/__init__.py:2870: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('google')`.\n", | |
| "Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages\n", | |
| " declare_namespace(pkg)\n", | |
| "/home/radek/miniforge3/envs/cleanrl/lib/python3.10/site-packages/pkg_resources/__init__.py:2870: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('mpl_toolkits')`.\n", | |
| "Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages\n", | |
| " declare_namespace(pkg)\n", | |
| "WARNING:imageio_ffmpeg:IMAGEIO FFMPEG_WRITER WARNING: input image is not divisible by macro_block_size=16, resizing from (84, 84) to (96, 96) to ensure video compatibility with most codecs and players. To prevent resizing, make your input image divisible by the macro_block_size or set the macro_block_size to 1 (risking incompatibility).\n", | |
| "[swscaler @ 0x5842000] Warning: data is not aligned! This can lead to a speed loss\n" | |
| ] | |
| }, | |
| { | |
| "data": { | |
| "text/html": [ | |
| "<video src=\"output.mp4\" controls width=\"256\" height=\"256\">\n", | |
| " Your browser does not support the <code>video</code> element.\n", | |
| " </video>" | |
| ], | |
| "text/plain": [ | |
| "<IPython.core.display.Video object>" | |
| ] | |
| }, | |
| "execution_count": 8, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "!rm -rf output.mp4\n", | |
| "\n", | |
| "import imageio\n", | |
| "from IPython.display import Video\n", | |
| "\n", | |
| "imageio.mimsave('output.mp4', unstack(obss))\n", | |
| "video = Video('output.mp4', width=256, height=256)\n", | |
| "video" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 9, | |
| "id": "a58cde03-b092-46d3-92b8-0642041d4e90", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "class QNetwork(nn.Module):\n", | |
| " def __init__(self, num_outputs):\n", | |
| " super().__init__()\n", | |
| " self.network = nn.Sequential(\n", | |
| " nn.Conv2d(4, 32, 8, stride=4),\n", | |
| " nn.ReLU(),\n", | |
| " nn.Conv2d(32, 64, 4, stride=2),\n", | |
| " nn.ReLU(),\n", | |
| " nn.Conv2d(64, 64, 3, stride=1),\n", | |
| " nn.ReLU(),\n", | |
| " nn.Flatten(),\n", | |
| " nn.Linear(3136, 512),\n", | |
| " nn.ReLU(),\n", | |
| " nn.Linear(512, num_outputs),\n", | |
| " )\n", | |
| "\n", | |
| " def forward(self, x):\n", | |
| " return self.network(x / 255.0)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 10, | |
| "id": "140170a9-6d91-47a0-a610-a56b7ed8ee16", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def linear_schedule(start_e: float, end_e: float, duration: int, t: int):\n", | |
| " slope = (end_e - start_e) / duration\n", | |
| " return max(slope * t + start_e, end_e)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 11, | |
| "id": "85a566d8-a976-4b6d-9ef9-a4b3de075d6e", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def run_rollout_validation(save_recording=True, rec_name=None):\n", | |
| " q_network.eval()\n", | |
| " renders, rewards = [], []\n", | |
| "\n", | |
| " env = make_env()\n", | |
| " obs, info = env.reset(seed=42)\n", | |
| " renders.append(env.render())\n", | |
| " while True:\n", | |
| " with torch.inference_mode():\n", | |
| " if np.random.rand() < 0.05:\n", | |
| " action = env.action_space.sample()\n", | |
| " else:\n", | |
| " q_values = q_network(torch.Tensor(np.array(obs)).unsqueeze(0).to(device))\n", | |
| " action = np.argmax(q_values.cpu().detach().numpy()[0])\n", | |
| " \n", | |
| " obs, reward, termination, _, info = env.step(action)\n", | |
| " rewards.append(reward)\n", | |
| " renders.append(env.render())\n", | |
| " if info['lives'] == 0: break\n", | |
| " if termination: obs, info = env.reset(seed=42)\n", | |
| "\n", | |
| " if save_recording:\n", | |
| " if rec_name is None: rec_name = f'{run.hash}_{sum(rewards)}'\n", | |
| " imageio.mimsave(f'videos/{rec_name}.gif', np.stack(renders))\n", | |
| " \n", | |
| " q_network.train()\n", | |
| " return rewards" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 12, | |
| "id": "a7d2e8f2-67fd-43ce-9257-77112cc5dfca", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'5b88fc0f421c4f7fbd19650e'" | |
| ] | |
| }, | |
| "execution_count": 12, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "args = Args()\n", | |
| "\n", | |
| "run = Run(experiment=\"dqn_breakout\", repo='dry_run' if dry_run else None)\n", | |
| "run[\"hparams\"] = vars(args)\n", | |
| "\n", | |
| "!mkdir -p videos\n", | |
| "model_path = Path(f\"models/{run.hash}\")\n", | |
| "!mkdir {model_path} \n", | |
| "\n", | |
| "run.hash" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 13, | |
| "id": "960e218c-c376-45c5-a301-08a1f7172f18", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<All keys matched successfully>" | |
| ] | |
| }, | |
| "execution_count": 13, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "device = torch.device(\"cuda\")\n", | |
| "\n", | |
| "q_network = QNetwork(num_outputs=4).to(device)\n", | |
| "optimizer = optim.Adam(q_network.parameters(), lr=args.learning_rate)\n", | |
| "scheduler = LinearLR(optimizer, start_factor=1, end_factor=0.01, total_iters=(args.total_timesteps-args.learning_starts))\n", | |
| "\n", | |
| "\n", | |
| "target_network = QNetwork(num_outputs=4).to(device)\n", | |
| "target_network.load_state_dict(q_network.state_dict())" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 14, | |
| "id": "b9e43f26-db4c-4b8a-a0f8-6ebc5a4bc051", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "Num trainable params: 1.68618M\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "print(f'Num trainable params: {sum(param.numel() for param in q_network.parameters()) / 10**6}M')" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 15, | |
| "id": "b4852dca-2121-43b2-ac09-889d00b114fd", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "1000000" | |
| ] | |
| }, | |
| "execution_count": 15, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "args.buffer_size" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 16, | |
| "id": "2ed2ac93-cc4a-4074-a585-63cdd76bd899", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "4" | |
| ] | |
| }, | |
| "execution_count": 16, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "args.train_frequency" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 17, | |
| "id": "19e0f9b2-bc26-4b0a-a1c1-3f847019fccb", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "10000000" | |
| ] | |
| }, | |
| "execution_count": 17, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "args.total_timesteps" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 18, | |
| "id": "80b75d3f-18c0-4afd-bcaa-22da433ac308", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "(1, 0.01, 0.1)" | |
| ] | |
| }, | |
| "execution_count": 18, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "args.start_e, args.end_e, args.exploration_fraction" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 19, | |
| "id": "e9e6ca77-74a1-4f8f-9e49-2bebb940856d", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "Step 80003:\tEMA Loss = 0.0000\tEMA qvalues = 0.0000\r" | |
| ] | |
| }, | |
| { | |
| "name": "stderr", | |
| "output_type": "stream", | |
| "text": [ | |
| "/home/radek/miniforge3/envs/cleanrl/lib/python3.10/site-packages/torch/nn/modules/conv.py:456: UserWarning: Plan failed with a cudnnException: CUDNN_BACKEND_EXECUTION_PLAN_DESCRIPTOR: cudnnFinalize Descriptor Failed cudnn_status: CUDNN_STATUS_NOT_SUPPORTED (Triggered internally at ../aten/src/ATen/native/cudnn/Conv_v8.cpp:919.)\n", | |
| " return F.conv2d(input, weight, bias, self.stride,\n" | |
| ] | |
| }, | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "Step 99999:\tEMA Loss = 0.0086\tEMA qvalues = 0.2105\r" | |
| ] | |
| }, | |
| { | |
| "name": "stderr", | |
| "output_type": "stream", | |
| "text": [ | |
| "/home/radek/miniforge3/envs/cleanrl/lib/python3.10/site-packages/gymnasium/utils/passive_env_checker.py:364: UserWarning: \u001b[33mWARN: No render fps was declared in the environment (env.metadata['render_fps'] is None or not defined), rendering may occur at inconsistent fps.\u001b[0m\n", | |
| " logger.warn(\n" | |
| ] | |
| }, | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "CPU times: user 9h 49min 32s, sys: 24min 44s, total: 10h 14min 16s\n", | |
| "Wall time: 5h 32min 22s\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "%%time\n", | |
| "\n", | |
| "rb = ReplayBuffer(\n", | |
| " args.buffer_size, # 1_000_000\n", | |
| " env.observation_space,\n", | |
| " env.action_space,\n", | |
| " device,\n", | |
| " optimize_memory_usage=True,\n", | |
| " handle_timeout_termination=False,\n", | |
| ")\n", | |
| "\n", | |
| "alpha = 0.1 # Smoothing factor\n", | |
| "ema_loss = 0.0 # Initialize the Exponential Moving Average loss\n", | |
| "ema_qvalues = 0.0 # Same as above but for qvalues\n", | |
| "\n", | |
| "obs, _ = env.reset(seed=args.seed)\n", | |
| "\n", | |
| "for global_step in range(args.total_timesteps):\n", | |
| " epsilon = linear_schedule(args.start_e, args.end_e, args.exploration_fraction * args.total_timesteps, global_step)\n", | |
| " if random.random() < epsilon:\n", | |
| " action = env.action_space.sample()\n", | |
| " else:\n", | |
| " q_values = q_network(torch.Tensor(np.array(obs)).unsqueeze(0).to(device))\n", | |
| " action = np.argmax(q_values.cpu().detach().numpy()[0])\n", | |
| "\n", | |
| " next_obs, reward, termination, _, info = env.step(action)\n", | |
| " ####\n", | |
| " # obs: observation at t\n", | |
| " # next_obs: observation at t+1\n", | |
| " # action: action taken at t, either randomly sampled or on policy\n", | |
| " # reward: reward for action\n", | |
| " # termination: whether next_obs is the final observation\n", | |
| " rb.add(obs, next_obs, action, reward, termination, info)\n", | |
| " if termination: obs, _ = env.reset()\n", | |
| "\n", | |
| " # TRY NOT TO MODIFY: CRUCIAL step easy to overlook\n", | |
| " obs = next_obs\n", | |
| "\n", | |
| " if global_step > args.learning_starts:\n", | |
| " if global_step % args.train_frequency == 0:\n", | |
| " data = rb.sample(args.batch_size)\n", | |
| " with torch.no_grad():\n", | |
| " target_max, _ = target_network(data.next_observations).max(dim=1)\n", | |
| " td_target = data.rewards.flatten() + args.gamma * target_max * (1 - data.dones.flatten())\n", | |
| " old_val = q_network(data.observations).gather(1, data.actions).squeeze()\n", | |
| " loss = F.mse_loss(td_target, old_val)\n", | |
| "\n", | |
| " # optimize the model\n", | |
| " optimizer.zero_grad()\n", | |
| " loss.backward()\n", | |
| " optimizer.step()\n", | |
| " scheduler.step()\n", | |
| "\n", | |
| " ema_loss = alpha * loss.item() + (1 - alpha) * ema_loss\n", | |
| " ema_qvalues = alpha * old_val.mean().item() + (1 - alpha) * ema_qvalues # maybe best to track just the max value?\n", | |
| " # also, this takes the sum across all exmaples\n", | |
| " # in a batch!!! that is not right\n", | |
| " run.track(loss.item(), name='train loss', step=global_step)\n", | |
| " run.track(old_val.mean().item(), name='qvalues (mean)', step=global_step)\n", | |
| " run.track(old_val.max().item(), name='qvalues (max)', step=global_step)\n", | |
| " run.track(ema_loss, name='ema loss', step=global_step)\n", | |
| " run.track(ema_qvalues, name='ema qvalues (mean)', step=global_step)\n", | |
| "\n", | |
| " if global_step % 100_000 == 0 or global_step-1 == args.total_timesteps:\n", | |
| " rewards = run_rollout_validation(save_recording=True, rec_name=None)\n", | |
| " run.track(sum(rewards), step=global_step, name='rollout reward')\n", | |
| " torch.save(q_network.state_dict(), model_path / f'{global_step}_{sum(rewards)}')\n", | |
| " # print(f'Rollout reward at step {global_step}: {sum(rewards)}')\n", | |
| " \n", | |
| " # update target network\n", | |
| " if global_step % args.target_network_frequency == 0:\n", | |
| " for target_network_param, q_network_param in zip(target_network.parameters(), q_network.parameters()):\n", | |
| " target_network_param.data.copy_(\n", | |
| " args.tau * q_network_param.data + (1.0 - args.tau) * target_network_param.data\n", | |
| " )\n", | |
| " print(f\"Step {global_step}:\\tEMA Loss = {ema_loss:.4f}\\tEMA qvalues = {ema_qvalues:.4f}\", end='\\r')\n", | |
| "\n", | |
| "run.close()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 20, | |
| "id": "731e044d-c562-4d34-92ef-1db894202e6c", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "# q_network.load_state_dict(torch.load('models/b94d16616faa40a7b667a04f'))\n", | |
| "# q_network.eval()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": null, | |
| "id": "417c821f-f27a-4d51-ad64-ebd0f28d58d2", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "from IPython.display import Image\n", | |
| "\n", | |
| "Image('videos/b94d16616faa40a7b667a04f_91.0.gif')" | |
| ] | |
| } | |
| ], | |
| "metadata": { | |
| "kernelspec": { | |
| "display_name": "Python 3 (ipykernel)", | |
| "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.10.14" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 5 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment