From 9ef3a0bcfe3aaa6e8cafe1e2a7d2a3a98e6f32f0 Mon Sep 17 00:00:00 2001 From: Valeria Sakovskaya Date: Fri, 8 Dec 2023 11:23:52 +0400 Subject: [PATCH 1/2] Added PPO Agent and test dataset --- datasets/test_synthetic_saved_states.csv | 37 + env/PyEnvironmentsTest.py | 345 +- main_ppo.ipynb | 3729 ++++++++++++++++++++-- 3 files changed, 3775 insertions(+), 336 deletions(-) create mode 100644 datasets/test_synthetic_saved_states.csv diff --git a/datasets/test_synthetic_saved_states.csv b/datasets/test_synthetic_saved_states.csv new file mode 100644 index 0000000..e602cf2 --- /dev/null +++ b/datasets/test_synthetic_saved_states.csv @@ -0,0 +1,37 @@ +ParallelGCThreads,MaxTenuringThreshold,Average GC Pause +4,1,0.9924634773885496 +4,4,0.7958727400818383 +4,7,0.4819088542571858 +4,10,0.003103589928018651 +4,13,0.48498142281375084 +4,16,0.6404264099761839 +8,1,0.8946184961517863 +8,4,0.6319999309138843 +8,7,0.27519508272850335 +8,10,0.16108339645228542 +8,13,0.32120646305566597 +8,16,0.3192831485114836 +12,1,0.9582537223918102 +12,4,0.7820940752791968 +12,7,0.567647869955471 +12,10,0.4797663663150976 +12,13,0.5803724867507114 +12,16,0.6389851674968489 +16,1,1.0031035899280185 +16,4,0.8816969377131415 +16,7,0.746388435673792 +16,10,0.6850816937710156 +16,13,0.7692016846754318 +16,16,0.8489087860759289 +20,1,0.9654189563092174 +20,4,0.8385565438524774 +20,7,0.71353899604592 +20,10,0.7027237571839895 +20,13,0.8096680600432983 +20,16,0.9127987247805347 +24,1,0.8560934115694189 +24,4,0.6391247508444674 +24,7,0.42145876921025965 +24,10,0.5395896391459516 +24,13,0.7444578933256285 +24,16,0.9033466489059973 diff --git a/env/PyEnvironmentsTest.py b/env/PyEnvironmentsTest.py index 84e7ca4..f5a0847 100644 --- a/env/PyEnvironmentsTest.py +++ b/env/PyEnvironmentsTest.py @@ -1,52 +1,46 @@ -import math import os import re -import sys -import gym -import random -import requests -import json import copy import subprocess import logging import numpy as np import pandas as pd -import matplotlib.pyplot as plt -import scipy.optimize as optimize from constraint import * -from typing import List -from IPython.display import display, clear_output +from typing import Any, Dict, List +from tf_agents.typing import types +from tf_agents.trajectories import TimeStep from tf_agents.specs import array_spec from tf_agents.environments import py_environment from tf_agents.trajectories import time_step as ts + class JVMEnv(py_environment.PyEnvironment): def __init__( self, - jdk: str, + jdk_path: str, bm_path: str, + gc_viewer_jar: str, callback_path: str, - bm: str = "cassandra", + bm_name: str = "cassandra", n: int = 5, goal: str = "avgGCPause", - verbose: bool=False - ): - - self._jdk = os.path.join(jdk, "bin") - # self._state = 0 - self._episode_ended = False - self._verbose = verbose - self._bm = bm - self._bm_path = bm_path + verbose: bool = False, + ): + # TODO: Write a Class description with attributes + self.jdk = jdk_path + self.bm_path = bm_path + self.gc_viewer_jar = gc_viewer_jar self._callback_path = callback_path + self._bm = bm_name self._gc_log_file = f"gc-{self._bm}.txt" self._n = n self._goal = goal + self._verbose = verbose self._env = os.environ.copy() - self._env["PATH"] = f"{self._jdk}:{self._env['PATH']}" - self._gc_viewer_jar = "gcviewer-1.36.jar" + self._env["PATH"] = f"{self.jdk}:{self._env['PATH']}" + self._episode_ended = False # ============= F L A G S ============= # TODO: Add more flags @@ -56,7 +50,7 @@ def __init__( "MaxTenuringThreshold": {"min": 1, "max": 16}, "ParallelGCThreads": {"min": 4, "max": 24}, } - + self._action_mapping = { 0: self._decrease_MaxTenuringThreshold, 1: self._increase_MaxTenuringThreshold, @@ -65,11 +59,8 @@ def __init__( } # ===================================== - assert len(list(self._action_mapping.keys())) == 2*self._num_variables, f"Each flag should have 2 actions!" - assert os.path.exists(self._gc_viewer_jar), f"{self._gc_viewer_jar} does not exist" - assert os.path.exists(self._bm_path), f"{self._bm_path} does not exist" - assert os.path.exists(self._jdk), f"{self._jdk} does not exist" - + assert len(self._action_mapping) == 2*self._num_variables, "Each flag should have 2 actions!" + self._flags_min_values = [self._flags[i]["min"] for i in self._flags.keys()] self._flags_max_values = [self._flags[i]["max"] for i in self._flags.keys()] @@ -90,91 +81,146 @@ def __init__( ) self._default_state = self._get_default_state(mode="default") - self._default_goal_value = self._default_state[1] - self._current_goal_value = self._default_goal_value """ A cache to store performance measurements for states. Han, Xue & Yu, Tingting. (2020). Automated Performance Tuning for Highly-Configurable Software Systems. - 0: {"args": [10, 10], "goal": 234}, - 1: {"args": [10, 20], "goal": 222}, + 0: {"args": [10, 10], "goal": 234, "count": 1}, + 1: {"args": [10, 20], "goal": 222, "count": 4}, + ... """ - # new_df = pd.read_csv("samara_saved_states.csv") - new_df = pd.read_csv(f"{self._bm}_synthetic_saved_states.csv") - self._perf_states = {} - - for i in range(len(new_df)): - self._perf_states [i] = {"args": [new_df["MaxTenuringThreshold"].values[i], new_df["ParallelGCThreads"].values[i]], "goal": new_df["Average GC Pause"].values[i]} + + # For offline RL: if you already have a dataset file with trajectories. + self._new_df = pd.read_csv( + f"datasets/{self._bm}_synthetic_saved_states.csv") + + # self._new_df = pd.read_csv( + # f"datasets/{self._bm}_real_saved_states.csv") + + self._perf_states = {} + self._perf_states[0] = { + "args": self._default_state[0], + "goal": self._default_state[1], + "count": 1} self._print_welcome_msg() + + @property + def jdk(self): + return self._jdk + + @jdk.setter + def jdk(self, path: str): + if not os.path.exists(path): + raise FileNotFoundError(path) + self._jdk = os.path.join(path, "bin") - + @property + def bm_path(self): + return self._bm_path + + @bm_path.setter + def bm_path(self, path: str): + if not os.path.exists(path): + raise FileNotFoundError(path) + self._bm_path = os.path.join(path) + + @property + def gc_viewer_jar(self): + return self._gc_viewer_jar + + @gc_viewer_jar.setter + def gc_viewer_jar(self, path: str): + if not os.path.exists(path): + raise FileNotFoundError(path) + self._gc_viewer_jar = os.path.join(path) + def action_spec(self): + """Get the actions that should be provided to `step()`.""" return self._action_spec def observation_spec(self): + """Get the the observations provided by the environment.""" return self._observation_spec + @property + def performance_states(self) -> Dict[int, Any]: + return self._perf_states + def _reset(self): - self._episode_ended = False - self._current_goal_value = self._default_goal_value + """ + Resets the environment state. + This method must be called before :func:`step()`. + + Returns: + A `TimeStep` namedtuple containing: + step_type: A `StepType` of `FIRST`. + reward: 0.0, indicating the reward. + discount: 1.0, indicating the discount. + observation: A NumPy array, or a nested dict, list or tuple of arrays + corresponding to `observation_spec()`. + """ + self._episode_ended = False + # To ensure all elements within an object array are copied, use `copy.deepcopy` self._state = copy.deepcopy(self._default_state) - # self.ax.clear() - # if self.render_mode == "human": - # self._render() - logging.debug(f"[RESET] {self._get_info()}, target: {self._current_goal_value}") + logging.debug(f"[RESET] {self._get_info()}, target: {self._state[1]}") return ts.restart(np.array(self._state[0], dtype=np.int64)) - def _step(self, action): + def _step(self, action: types.NestedArray): + """Updates the environment according to action. + + Parameters: + action: A NumPy array, or a nested dict, list or tuple of arrays + corresponding to `action_spec()`. + Returns: + A `TimeStep` namedtuple containing: + step_type: A `StepType` of `FIRST`. + reward: 0.0, indicating the reward. + discount: 1.0, indicating the discount. + observation: A NumPy array, or a nested dict, list or tuple of arrays + corresponding to `observation_spec()`. + """ if self._episode_ended: - # The last action ended the episode. Ignore the current action and start - # a new episode. + # The last action ended the episode. + # Ignore the current action and start a new episode. + logging.debug(f"[EPISODE ENDED] {self._get_info()}, target: {self._state[1]}") return self.reset() - - # Apply an action based on the mapping: decrease/increase + + # Apply an action based on the mapping: decrease/increase . self._action_mapping.get(int(action))() - # Make sure we don't leave the boundaries + + # Make sure we don't leave the boundaries. self._state = self._clip_state(self._state) + + # Check if the current JVM configuration is cached. + # Add `state` to cache if new. flags, goal = self._state_merging(self._state[0]) - previous_goal_value = self._current_goal_value - self._state[0] = flags - self._state[1] = goal - self._current_goal_value = goal + # Update `state` value. + self._state[0], self._state[1] = flags, goal - # ! Termination criteria - if self._current_goal_value <= self._default_goal_value * 0.7: + # Termination criteria + if self._state[1] <= self._default_state[1] * 0.04: self._episode_ended = True - # ! Multiply by (-1) if lower is better - # self._reward = -1 * self._current_goal_value - if self._current_goal_value >= self._default_goal_value: - self._reward = -1 - else: - # self._reward = -1 * self._current_goal_value - # self._reward = -1 * ( - # self._get_reward(self._current_goal_value, previous_goal_value) - # + self._get_reward(self._current_goal_value, self._default_goal_value) - # ) - self._reward = -1 * self._get_reward(self._current_goal_value, self._default_goal_value) - # self._reward = -1 * self._get_reward(self._current_goal_value, previous_goal_value) - - # ! Multiply by (-1) if lower is better - # self._reward = -1 * self._get_reward(self._current_goal_value, previous_goal_value) - # logging.debug(f"[STEP] {self._get_info()}, current_goal_value: {self._current_goal_value}, reward: {self._reward}") + self._reward = self._get_reward( + current_state=self._state, + previous_state=self._default_state, + lower_is_better=True, + beta=0.0) # ! No intrinsic reward - if self._current_goal_value < self._default_goal_value * 0.9: + if self._episode_ended: return ts.termination( - np.array(self._state[0], dtype=np.int64), reward=self._reward) + np.array(self._state[0], dtype=np.int64), reward=2.0) else: return ts.transition( np.array(self._state[0], dtype=np.int64), reward=self._reward, discount=0.5) - + def _state_merging(self, flags): """ Store states' JVM configurations and performance measurements @@ -183,9 +229,10 @@ def _state_merging(self, flags): state is queried and retrieved directly from the cache instead of re-running the benchmark utility. """ - saved_states = [self._perf_states[i]["args"] for i in self._perf_states.keys()] + saved_states = [self._perf_states[i]["args"] + for i in self._perf_states.keys()] if flags == self._default_state[0]: - goal = self._default_goal_value + goal = self._default_state[1] elif flags in saved_states: for i in self._perf_states.keys(): """ @@ -193,6 +240,7 @@ def _state_merging(self, flags): update the state goal value. """ if flags == self._perf_states[i]["args"]: + self._perf_states[i]["count"] += 1 goal = self._perf_states[i]["goal"] elif flags not in saved_states: """ @@ -200,9 +248,28 @@ def _state_merging(self, flags): measure the performance metric, and save it in the cache. """ - raise Exception("Flags are not in saved_states!") + try: + last_index = list(self._perf_states.keys())[-1] + except IndexError: + # If `self._perf_states` is empty + last_index = -1 + + # Launch a benchmark with a new JVM configuration + goal = self._synthetic_run(flags) + # Store a new state in the cache, count = 1. + self._perf_states[last_index + 1] = { + "args": list(flags), "goal": goal, "count": 1} + # print(self._perf_states) return flags, goal + def _synthetic_run(self, flags): + assert len(flags) == 2, "Amount of flags is not 2" + row = self._new_df[( + (self._new_df["MaxTenuringThreshold"] == flags[0]) + & (self._new_df["ParallelGCThreads"] == flags[1]))].values.squeeze() + goal = row[2] + return goal + def _get_JVM_opt_value(self, opt: str): """ Get the defaul JVM option value from environment @@ -262,6 +329,8 @@ def _get_default_state(self, mode: str="default"): return np.array([[7, 12], 0.47], dtype=object) elif self._bm == "kafka": return np.array([[7, 12], 0.34], dtype=object) + elif self._bm == "test": + return np.array([[7, 12], 0.57], dtype=object) def _get_goal_value(self, jvm_opts: List[str]=[]): """ @@ -276,7 +345,7 @@ def _get_goal_value(self, jvm_opts: List[str]=[]): or goal value). """ # Run benchmark with default values - self._run(jvm_opts, self._gc_log_file, self._bm, self._bm_path, self._callback_path, self._n) + self._run(jvm_opts, self._gc_log_file, self._bm, self.bm_path, self._callback_path, self._n) if os.path.exists(self._gc_log_file): # Get goal value from first-time generated GC log @@ -306,7 +375,7 @@ def _get_goal_from_file(self): goal_value = None subprocess.call( ["java", - "-cp", self._gc_viewer_jar, + "-cp", self.gc_viewer_jar, "com.tagtraum.perf.gcviewer.GCViewer", self._gc_log_file, summary, @@ -330,16 +399,54 @@ def _get_goal_from_file(self): return goal_value - def _get_reward(self, next_state, current_state): + def _get_reward( + self, + current_state: np.array, + previous_state: np.array, + lower_is_better: bool = False, + beta: float = 1.0, + ): """ - The reward is the relative difference between - a current agent value and the next one. The - normalization puts a large measurement range on the - same scale. - - Han, Xue & Yu, Tingting. (2020). Automated Performance Tuning for Highly-Configurable Software Systems. + Get the environment reward. The reward is composed of two terms: + `reward = reward_ex + beta * reward_in`, + where `beta` is a hyperparameter adjusting the balance between + exploitation and exploration. + - reward_ex is an extrinsic reward from the environment at time `t`. + - reward_in is an intrinsic exploration bonus. + Parameters: + current_state (np.array): Current state containing JVM flags + and goal value. + previous_state (np.array): Previous state containing JVM flags + and goal value. + lower_is_better (bool): Whether to consider lower goal values + better than larger ones. So that reward + is positive. + beta (float): Importance of instrinsic rewards ([0.0, 1.0]). + Returns: + reward (float): An environment reward value at current + time step. """ - return (next_state - current_state) / current_state + coef = 1 + reward_in = 0 # Intrinsic reward. + reward_ex = 0 # Extrinsic reward. + + # TODO: Check if beta is in range [0, 1] + + if lower_is_better: + coef = -1 + + if coef * current_state[1] <= previous_state[1]: + for i in self._perf_states.keys(): + if self._perf_states[i]["args"] == current_state[0]: + # First, we add the state to cache with count=1, + # but we haven't run the benchmark with it yet, + # so it is fair to say that actually count is 0. + count = self._perf_states[i]["count"] - 1 + reward_in = (count + 0.01)**(-1/2) + reward_ex = coef * (current_state[1] - previous_state[1]) / previous_state[1] + reward = reward_ex + beta * reward_in + reward = round(reward, 4) + return reward def _check_constraints(self, a, b, constraint): problem = Problem() @@ -354,24 +461,28 @@ def _decrease_MaxTenuringThreshold(self): coef = 3 saved_values = [self._perf_states[i]["args"][idx] for i in self._perf_states.keys()] self._state[0][idx] = min(saved_values, key=lambda x: abs(x - (self._state[0][idx] - coef))) + self._state[0][idx] -= coef def _increase_MaxTenuringThreshold(self): idx = 0 coef = 3 saved_values = [self._perf_states[i]["args"][idx] for i in self._perf_states.keys()] self._state[0][idx] = min(saved_values, key=lambda x: abs(x - (self._state[0][idx] + coef))) + self._state[0][idx] += coef def _decrease_ParallelGCThreads(self): idx = 1 coef = 4 saved_values = [self._perf_states[i]["args"][idx] for i in self._perf_states.keys()] self._state[0][idx] = min(saved_values, key=lambda x: abs(x - (self._state[0][idx] - coef))) + self._state[0][idx] -= coef def _increase_ParallelGCThreads(self): idx = 1 coef = 4 saved_values = [self._perf_states[i]["args"][idx] for i in self._perf_states.keys()] self._state[0][idx] = min(saved_values, key=lambda x: abs(x - (self._state[0][idx] + coef))) + self._state[0][idx] += coef def _is_equal(self, state, target): return np.allclose(state[0], target[0]) @@ -389,13 +500,13 @@ def _get_jvm_opts(self, flags): def _run( self, - jvm_opts: List[str], - gc_log_file: str, - bm: str, - bm_path: str, + jvm_opts: List[str], + gc_log_file: str, + bm: str, + bm_path: str, callback_path: str, - n: int=5, - verbose: bool=False): + n: int = 5, + verbose: bool = False): """ Run a benchmark with the specified JVM options such as MaxHeapSize. @@ -409,10 +520,14 @@ def _run( n (int): Total number of benchmark's iterations. verbose (bool): Print debug messages. """ - + + if not os.path.exists(callback_path): + raise FileNotFoundError(callback_path) + # Clean up before running the benchmark - if os.path.exists(gc_log_file): os.remove(gc_log_file) - + if os.path.exists(gc_log_file): + os.remove(gc_log_file) + # Default flags jvm_opts.append("-XX:+UseParallelGC") jvm_opts.append("-Xmx16G") @@ -437,37 +552,17 @@ def _run( return - def _render(self): - - self.fig, self.ax = plt.subplots() - self.line, = self.ax.plot([], []) - self.ax.set_xlabel('X') - self.ax.set_ylabel('Y') - self.ax.set_title('Agent Learning Curve Navigation') - - x_vals = np.linspace(self._low, self._high) - y_vals = [self._y(x) for x in x_vals] - - self.ax.clear() - self.ax.grid(True) - self.ax.plot(x_vals, y_vals, color='black') - self.ax.scatter(self._target_location[0], self._target_location[1], color='red', label="Target") - self.ax.scatter(self._state[0], self._state[1], color='blue', label="Agent") - - self.ax.set_xlabel('X') - self.ax.set_ylabel('Y') - self.ax.set_title('Agent Learning Curve Navigation') - self.ax.legend() - clear_output(wait=True) - display(self.fig) + def _render(self): + raise NotImplementedError( + "This environment has not implemented `render().'") def _print_welcome_msg(self): print("Successfully initialized a JVM Environment!\n", - f"JDK: {self._jdk},\n", - f"Benchmark: {self._bm} ({self._bm_path}),\n", + f"JDK: {self.jdk},\n", + f"Benchmark: {self._bm} ({self.bm_path}),\n", f"Number of iterations: {self._n},\n", f"Goal: {self._goal},\n", f"Number of JVM options: {self._num_variables},\n", f"JVM options: {self._flags},\n", f"Env. default state: {self._default_state},\n", - f"Env. default goal value: {self._default_goal_value},\n",) \ No newline at end of file + f"Env. default goal value: {self._default_state[1]},\n",) \ No newline at end of file diff --git a/main_ppo.ipynb b/main_ppo.ipynb index 6e52812..7f325c1 100644 --- a/main_ppo.ipynb +++ b/main_ppo.ipynb @@ -1,8 +1,18 @@ { "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "avrora, fop, jython, luindex,\n", + "lusearch, lusearch-fix, pmd and xalan\n", + "\n", + "https://bergel.eu/MyPapers/Cana21a-JVMGlagsAndGA.pdf" + ] + }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ @@ -20,7 +30,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 17, "metadata": {}, "outputs": [], "source": [ @@ -35,13 +45,13 @@ "\n", "logger = logging.getLogger()\n", "# logger.setLevel(logging.DEBUG)\n", - "logger.setLevel(logging.INFO)\n", + "# logger.setLevel(logging.INFO)\n", "# logger.error(\"test\")" ] }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 18, "metadata": {}, "outputs": [], "source": [ @@ -55,7 +65,7 @@ "from tf_agents.agents import PPOAgent\n", "from tf_agents.environments import tf_py_environment\n", "from tf_agents.networks import sequential\n", - "from tf_agents.policies import random_tf_policy\n", + "from tf_agents.policies import random_tf_policy, policy_saver\n", "from tf_agents.replay_buffers import tf_uniform_replay_buffer\n", "from tf_agents.trajectories import trajectory\n", "from tf_agents.utils import common\n", @@ -67,12 +77,13 @@ "\n", "# from env.PyEnvironments import CurveEnv, CurveMultipleEnv, JVMEnv\n", "# from env.PyEnvironments import JVMEnv\n", - "from env.PyEnvironmentsTest import JVMEnv # !!!" + "from env.PyEnvironmentsTest import JVMEnv # !!!\n", + "from util.plots_util import plot_dataset, plot_goal_heatmap\n" ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 19, "metadata": {}, "outputs": [ { @@ -88,16 +99,6 @@ " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", " Env. default state: [list([7, 12]) 0.47],\n", " Env. default goal value: 0.47,\n", - "\n", - "Successfully initialized a JVM Environment!\n", - " JDK: jdk-11.0.20.1.jdk/bin,\n", - " Benchmark: kafka (dacapo-bench.jar),\n", - " Number of iterations: 5,\n", - " Goal: avgGCPause,\n", - " Number of JVM options: 2,\n", - " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", - " Env. default state: [list([7, 12]) 0.34],\n", - " Env. default goal value: 0.34,\n", "\n" ] } @@ -123,13 +124,15 @@ " \"verbose\": False,\n", "}\n", "\n", - "env = JVMEnv(bm_name=\"avrora\", **env_args)\n", + "def get_tf_env(name, args):\n", + " env = JVMEnv(bm_name=name, **args)\n", + " tf_env = tf_py_environment.TFPyEnvironment(env, isolation=True) \n", + " return tf_env\n", "\n", - "env_test = JVMEnv(bm_name=\"kafka\", **env_args)\n", + "# env_train_1 = JVMEnv(bm_name=\"avrora\", **env_args)\n", + "# env_train_2 = JVMEnv(bm_name=\"kafka\", **env_args)\n", "\n", - "train_env = tf_py_environment.TFPyEnvironment(env, isolation=True)\n", - "eval_env = tf_py_environment.TFPyEnvironment(env, isolation=True)\n", - "test_env = tf_py_environment.TFPyEnvironment(env_test)\n", + "train_env = get_tf_env(name=\"avrora\", args=env_args)\n", "\n", "action_spec = from_spec(train_env.action_spec())\n", "observation_spec = from_spec(train_env.observation_spec())\n", @@ -139,7 +142,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 20, "metadata": {}, "outputs": [], "source": [ @@ -267,46 +270,96 @@ " # logger.debug(f\"[COMPUTE AVERAGE RETURN EPISODIC] action: {action_step.action}, obs: {obs}, reward: {rwd}\")\n", " episode_return += time_step.reward\n", " i += 1\n", - " total_return += episode_return\n", + " total_return += episode_return / i\n", "\n", " avg_return = total_return / num_episodes\n", " return avg_return.numpy()[0]\n", "\n", "def create_networks(observation_spec, action_spec, fc_layer_params):\n", " actor_net = ActorDistributionNetwork(\n", - " observation_spec,\n", - " action_spec,\n", + " observation_spec, # input\n", + " action_spec, # output\n", " fc_layer_params=fc_layer_params,\n", " activation_fn=tf.keras.activations.tanh)\n", " \n", " value_net = ValueNetwork(\n", - " observation_spec,\n", + " observation_spec, # input\n", " fc_layer_params=fc_layer_params,\n", " activation_fn=tf.keras.activations.tanh)\n", "\n", - " return actor_net, value_net" + " return actor_net, value_net\n", + "\n", + "def plot_training(loss, rewards, num_steps, eval_interval):\n", + " fig, ax1 = plt.subplots()\n", + "\n", + " steps = [step for step in range(0, num_steps, eval_interval)]\n", + " color = 'tab:red'\n", + " ax1.set_xlabel('steps')\n", + " ax1.set_ylabel('loss', color=color)\n", + " ax1.plot(steps, loss, color=color)\n", + " ax1.tick_params(axis='y', labelcolor=color)\n", + "\n", + " ax2 = ax1.twinx() # instantiate a second axes that shares the same x-axis\n", + "\n", + " color = 'tab:blue'\n", + " ax2.set_ylabel('rewards', color=color) # we already handled the x-label with ax1\n", + " ax2.plot(steps, rewards[:200], color=color)\n", + " ax2.tick_params(axis='y', labelcolor=color)\n", + "\n", + " fig.tight_layout() # otherwise the right y-label is slightly clipped\n", + " plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [], + "source": [ + "def get_dataset_iter(envs, size, _agent):\n", + " from random import randrange\n", + " assert len(envs) >= 1, \"Environment list is empty!\"\n", + " \n", + " replay_buffer = tf_uniform_replay_buffer.TFUniformReplayBuffer(\n", + " data_spec=_agent.collect_data_spec, # agent.collect_data_spec\n", + " batch_size=envs[0].batch_size, # train_env.batch_size\n", + " max_length=size) # capacity\n", + "\n", + " for _ in tqdm(range(size)):\n", + " indx = randrange(len(envs))\n", + " traj = collect_step(envs[indx], _agent.collect_policy, replay_buffer)\n", + " replay_buffer.add_batch(traj)\n", + " \n", + " dataset = replay_buffer.as_dataset(\n", + " sample_batch_size=batch_size,\n", + " num_steps=train_episodes_per_iteration+1,\n", + " num_parallel_calls=train_episodes_per_iteration).prefetch(train_episodes_per_iteration)\n", + " dataset_iter = iter(dataset)\n", + " return dataset_iter" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "collect_steps_per_iteration = 1\n", - "dataset_size = 1000\n", + "dataset_size = 10000\n", "# fc_layer_params = (100, 75, 50)\n", "# fc_layer_params = (200, 100)\n", - "fc_layer_params = (128, 128, 128)\n", + "# fc_layer_params = (128, 128, 128)\n", + "fc_layer_params = (200, 150, 100, 75, 50)\n", "\n", "batch_size = 24\n", - "# learning_rate = 1e-3\n", - "learning_rate = 0.0005\n", + "learning_rate = 1e-3\n", + "# learning_rate = 0.0005\n", "\n", "num_eval_episodes = 10 # @param {type:\"integer\"}\n", "eval_interval = 100 # @param {type:\"integer\"}\n", "\n", - "train_episodes_per_iteration = 10\n", + "# train_episodes_per_iteration = 10\n", + "train_episodes_per_iteration = 5\n", "n_step_update = 4\n", "actor_net, value_net = create_networks(observation_spec, action_spec, fc_layer_params)\n", "global_step = tf.compat.v1.train.get_or_create_global_step()\n", @@ -316,14 +369,15 @@ " \"actor_net\": actor_net,\n", " \"value_net\": value_net,\n", " \"train_step_counter\": global_step,\n", - " \"importance_ratio_clipping\": 0.1,\n", - " \"num_epochs\": 20,\n", + " # \"train_step_counter\": global_step,\n", + " # \"importance_ratio_clipping\": 0.1,\n", + " # \"num_epochs\": 20,\n", "}" ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 23, "metadata": {}, "outputs": [], "source": [ @@ -334,6 +388,7 @@ ")\n", "\n", "agent.initialize()\n", + "agent.train = common.function(agent.train, autograph=False)\n", "\n", "random_policy = random_tf_policy.RandomTFPolicy(\n", " time_step_spec = time_step_spec,\n", @@ -362,14 +417,12 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 24, "metadata": {}, "outputs": [], "source": [ - "from util.plots_util import plot_dataset, plot_goal_heatmap\n", - "\n", - "# plot_dataset(replay_buffer)\n", - "# plot_goal_heatmap(env)" + "policy_dir = os.path.join(tempdir, '0_policy')\n", + "tf_policy_saver = policy_saver.PolicySaver(agent.policy)" ] }, { @@ -381,11 +434,11 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 26, "metadata": {}, "outputs": [], "source": [ - "def train(_agent, _env_train, _env_val, \n", + "def train(_agent, _env_train, _env_val, replay_buffer, collect_driver,\n", " steps: int = 5000, \n", " use_wandb: bool = False,\n", " eval_interval: int=100):\n", @@ -393,55 +446,69 @@ " Train reinforcement learning agent and evaluate\n", " performance on a separate environment.\n", " \"\"\"\n", - " seed = 42\n", - " total_return = 0.0\n", - "\n", + " \n", " _env_train.reset()\n", " _env_val.reset()\n", - "\n", - " replay_buffer, collect_driver = get_rb_and_cd(_env_train, _agent)\n", - " \n", - " _agent.train = common.function(_agent.train)\n", - " collect_driver.run = common.function(collect_driver.run)\n", - " replay_buffer.gather_all = common.function(replay_buffer.gather_all)\n", " _agent.train_step_counter.assign(0)\n", - " _agent.initialize()\n", - " time_step = _env_val.reset()\n", + "\n", + " time_step = None\n", " policy_state = _agent.collect_policy.get_initial_state(_env_train.batch_size)\n", "\n", " loss = []\n", " observations = []\n", - "\n", " rewards = []\n", - " # avg_reward = compute_avg_return_episodic(_env_val, _agent.policy, num_episodes=20)\n", - " # rewards = [avg_reward]\n", - "\n", " for step in tqdm(range(steps)):\n", - "\n", - " collect_driver.run()\n", + " \n", + " time_step, policy_state = collect_driver.run(\n", + " time_step=time_step,\n", + " policy_state=policy_state,\n", + " maximum_iterations=200,\n", + " )\n", "\n", " experience = replay_buffer.gather_all()\n", " train_loss = _agent.train(experience)\n", " replay_buffer.clear()\n", + " \n", + " if step % eval_interval == 0:\n", + " avg_reward = compute_avg_return_episodic(_env_val, _agent.policy, num_episodes=20)\n", + "\n", + " loss.append(train_loss.loss.numpy())\n", + " # observations.append(obs)\n", + " rewards.append(avg_reward)\n", "\n", - " # Calculate a reward on evaluation environment\n", - " # policy_step = _agent.policy.action(time_step, seed=seed)\n", - " # time_step = _env_val.step(policy_step.action)\n", - " # rwd = time_step.reward.numpy()[0]\n", - " # obs = time_step.observation.numpy()[0]\n", - " # print()\n", + " # wandb logger for tuning hyperparameters\n", + " if use_wandb:\n", + " wandb.log({'loss': train_loss.loss, 'reward': avg_reward})\n", + "\n", + " print(f\"step = {step}: loss = {train_loss.loss}, reward = {avg_reward}\")\n", + " return loss, observations, rewards\n", + "\n", + "def _train(_agent, _env_train, _env_val, data_iterator,\n", + " steps: int = 5000, \n", + " use_wandb: bool = False,\n", + " eval_interval: int=100):\n", + " \"\"\"\n", + " Train reinforcement learning agent and evaluate\n", + " performance on a separate environment.\n", + " \"\"\"\n", + " \n", + " _env_train.reset()\n", + " _env_val.reset()\n", + " _agent.train_step_counter.assign(0)\n", "\n", - " # logger.debug(f\"action: {policy_step.action}, obs: {obs}, reward: {rwd}\")\n", - " # total_return += rwd # Calculate a sum of rewards\n", - " # print(obs)\n", - " # replay_buffer.clear()\n", - " # step = _agent.train_step_counter.numpy()\n", + " time_step = None\n", + " policy_state = _agent.collect_policy.get_initial_state(_env_train.batch_size)\n", "\n", + " loss = []\n", + " observations = []\n", + " rewards = []\n", + " for step in tqdm(range(steps)):\n", + " \n", + " experience, _ = next(data_iterator)\n", + " train_loss = _agent.train(experience)\n", + " \n", " if step % eval_interval == 0:\n", - " # avg_reward = total_return / eval_interval\n", - " # avg_reward = compute_avg_return(_env_val, _agent.policy, num_episodes=50)\n", " avg_reward = compute_avg_return_episodic(_env_val, _agent.policy, num_episodes=20)\n", - " total_return = 0.0 # reset\n", "\n", " loss.append(train_loss.loss.numpy())\n", " # observations.append(obs)\n", @@ -457,193 +524,3433 @@ ] }, { - "cell_type": "code", - "execution_count": 20, + "cell_type": "markdown", "metadata": {}, - "outputs": [], "source": [ - "train_env.reset()\n", - "replay_buffer, collect_driver = get_rb_and_cd(train_env, agent)\n", - "agent.train = common.function(agent.train)\n", - "collect_driver.run = common.function(collect_driver.run)\n", - "replay_buffer.gather_all = common.function(replay_buffer.gather_all)" + "### Train Sequentially" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: avrora (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.47],\n", + " Env. default goal value: 0.47,\n", + "\n", + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: kafka (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.34],\n", + " Env. default goal value: 0.34,\n", + "\n", + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: kafka (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.34],\n", + " Env. default goal value: 0.34,\n", + "\n", + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: test (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.57],\n", + " Env. default goal value: 0.57,\n", + "\n", + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: test (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.57],\n", + " Env. default goal value: 0.57,\n", + "\n" + ] + } + ], "source": [ - "collect_driver.run()\n", + "num_steps = 3000\n", "\n", - "experience = replay_buffer.gather_all()\n" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": {}, - "outputs": [], - "source": [ - "train_loss = agent.train(experience)\n" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": {}, - "outputs": [], - "source": [ + "train_env_copy = get_tf_env(\"avrora\", env_args)\n", "\n", - "replay_buffer.clear()" + "train_env_2 = get_tf_env(\"kafka\", env_args)\n", + "train_env_2_copy = get_tf_env(\"kafka\", env_args)\n", + "\n", + "test_env = get_tf_env(\"test\", env_args)\n", + "test_env_copy = get_tf_env(\"test\", env_args)" ] }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 28, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ - "100%|██████████| 20/20 [00:10<00:00, 1.88it/s]\n", - " 0%| | 1/3000 [00:15<12:40:49, 15.22s/it]" + "100%|██████████| 20/20 [00:11<00:00, 1.76it/s]\n", + " 0%| | 1/3000 [00:27<22:33:51, 27.09s/it]" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "step = 0: loss = 1.2406761646270752, reward = 531.3624267578125\n" + "step = 0: loss = 102.6141586303711, reward = 0.28046756982803345\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - " 1%| | 28/3000 [01:48<7:46:09, 9.41s/it]" + "100%|██████████| 20/20 [00:00<00:00, 76.34it/s]/s] \n", + " 3%|▎ | 102/3000 [01:00<09:26, 5.11it/s]" ] - } - ], - "source": [ - "num_steps = 3000\n", - "# num_steps = 1000\n", - "loss, observations, rewards = train(agent, train_env, eval_env, steps = num_steps, eval_interval=100)" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ + }, { - "ename": "ValueError", - "evalue": "x and y must have same first dimension, but have shapes (30,) and (31,)", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m/Users/ellkrauze/projects/gc-ml/main_ppo.ipynb Cell 13\u001b[0m line \u001b[0;36m1\n\u001b[1;32m 12\u001b[0m color \u001b[39m=\u001b[39m \u001b[39m'\u001b[39m\u001b[39mtab:blue\u001b[39m\u001b[39m'\u001b[39m\n\u001b[1;32m 13\u001b[0m ax2\u001b[39m.\u001b[39mset_ylabel(\u001b[39m'\u001b[39m\u001b[39mrewards\u001b[39m\u001b[39m'\u001b[39m, color\u001b[39m=\u001b[39mcolor) \u001b[39m# we already handled the x-label with ax1\u001b[39;00m\n\u001b[0;32m---> 14\u001b[0m ax2\u001b[39m.\u001b[39;49mplot(steps, rewards[:\u001b[39m200\u001b[39;49m], color\u001b[39m=\u001b[39;49mcolor)\n\u001b[1;32m 15\u001b[0m ax2\u001b[39m.\u001b[39mtick_params(axis\u001b[39m=\u001b[39m\u001b[39m'\u001b[39m\u001b[39my\u001b[39m\u001b[39m'\u001b[39m, labelcolor\u001b[39m=\u001b[39mcolor)\n\u001b[1;32m 17\u001b[0m fig\u001b[39m.\u001b[39mtight_layout() \u001b[39m# otherwise the right y-label is slightly clipped\u001b[39;00m\n", - "File \u001b[0;32m~/projects/gc-ml/gc-ml-env/lib/python3.8/site-packages/matplotlib/axes/_axes.py:1688\u001b[0m, in \u001b[0;36mAxes.plot\u001b[0;34m(self, scalex, scaley, data, *args, **kwargs)\u001b[0m\n\u001b[1;32m 1445\u001b[0m \u001b[39m\u001b[39m\u001b[39m\"\"\"\u001b[39;00m\n\u001b[1;32m 1446\u001b[0m \u001b[39mPlot y versus x as lines and/or markers.\u001b[39;00m\n\u001b[1;32m 1447\u001b[0m \n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 1685\u001b[0m \u001b[39m(``'green'``) or hex strings (``'#008000'``).\u001b[39;00m\n\u001b[1;32m 1686\u001b[0m \u001b[39m\"\"\"\u001b[39;00m\n\u001b[1;32m 1687\u001b[0m kwargs \u001b[39m=\u001b[39m cbook\u001b[39m.\u001b[39mnormalize_kwargs(kwargs, mlines\u001b[39m.\u001b[39mLine2D)\n\u001b[0;32m-> 1688\u001b[0m lines \u001b[39m=\u001b[39m [\u001b[39m*\u001b[39m\u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_get_lines(\u001b[39m*\u001b[39margs, data\u001b[39m=\u001b[39mdata, \u001b[39m*\u001b[39m\u001b[39m*\u001b[39mkwargs)]\n\u001b[1;32m 1689\u001b[0m \u001b[39mfor\u001b[39;00m line \u001b[39min\u001b[39;00m lines:\n\u001b[1;32m 1690\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39madd_line(line)\n", - "File \u001b[0;32m~/projects/gc-ml/gc-ml-env/lib/python3.8/site-packages/matplotlib/axes/_base.py:311\u001b[0m, in \u001b[0;36m_process_plot_var_args.__call__\u001b[0;34m(self, data, *args, **kwargs)\u001b[0m\n\u001b[1;32m 309\u001b[0m this \u001b[39m+\u001b[39m\u001b[39m=\u001b[39m args[\u001b[39m0\u001b[39m],\n\u001b[1;32m 310\u001b[0m args \u001b[39m=\u001b[39m args[\u001b[39m1\u001b[39m:]\n\u001b[0;32m--> 311\u001b[0m \u001b[39myield from\u001b[39;00m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49m_plot_args(\n\u001b[1;32m 312\u001b[0m this, kwargs, ambiguous_fmt_datakey\u001b[39m=\u001b[39;49mambiguous_fmt_datakey)\n", - "File \u001b[0;32m~/projects/gc-ml/gc-ml-env/lib/python3.8/site-packages/matplotlib/axes/_base.py:504\u001b[0m, in \u001b[0;36m_process_plot_var_args._plot_args\u001b[0;34m(self, tup, kwargs, return_kwargs, ambiguous_fmt_datakey)\u001b[0m\n\u001b[1;32m 501\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39maxes\u001b[39m.\u001b[39myaxis\u001b[39m.\u001b[39mupdate_units(y)\n\u001b[1;32m 503\u001b[0m \u001b[39mif\u001b[39;00m x\u001b[39m.\u001b[39mshape[\u001b[39m0\u001b[39m] \u001b[39m!=\u001b[39m y\u001b[39m.\u001b[39mshape[\u001b[39m0\u001b[39m]:\n\u001b[0;32m--> 504\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mValueError\u001b[39;00m(\u001b[39mf\u001b[39m\u001b[39m\"\u001b[39m\u001b[39mx and y must have same first dimension, but \u001b[39m\u001b[39m\"\u001b[39m\n\u001b[1;32m 505\u001b[0m \u001b[39mf\u001b[39m\u001b[39m\"\u001b[39m\u001b[39mhave shapes \u001b[39m\u001b[39m{\u001b[39;00mx\u001b[39m.\u001b[39mshape\u001b[39m}\u001b[39;00m\u001b[39m and \u001b[39m\u001b[39m{\u001b[39;00my\u001b[39m.\u001b[39mshape\u001b[39m}\u001b[39;00m\u001b[39m\"\u001b[39m)\n\u001b[1;32m 506\u001b[0m \u001b[39mif\u001b[39;00m x\u001b[39m.\u001b[39mndim \u001b[39m>\u001b[39m \u001b[39m2\u001b[39m \u001b[39mor\u001b[39;00m y\u001b[39m.\u001b[39mndim \u001b[39m>\u001b[39m \u001b[39m2\u001b[39m:\n\u001b[1;32m 507\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mValueError\u001b[39;00m(\u001b[39mf\u001b[39m\u001b[39m\"\u001b[39m\u001b[39mx and y can be no greater than 2D, but have \u001b[39m\u001b[39m\"\u001b[39m\n\u001b[1;32m 508\u001b[0m \u001b[39mf\u001b[39m\u001b[39m\"\u001b[39m\u001b[39mshapes \u001b[39m\u001b[39m{\u001b[39;00mx\u001b[39m.\u001b[39mshape\u001b[39m}\u001b[39;00m\u001b[39m and \u001b[39m\u001b[39m{\u001b[39;00my\u001b[39m.\u001b[39mshape\u001b[39m}\u001b[39;00m\u001b[39m\"\u001b[39m)\n", - "\u001b[0;31mValueError\u001b[0m: x and y must have same first dimension, but have shapes (30,) and (31,)" + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 100: loss = -0.40335899591445923, reward = 1.280665636062622\n" ] }, { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmYAAAG2CAYAAADV+ko4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAA/m0lEQVR4nO3df3yT5b3/8XeSNunvFihtoZRfomDll4LUgqAbnegcR+bOxtAjyFfx6GA665zihAr+KOr0sDkUxaHbmQqbU7cjyIadVZxFFEGEAoKABUcLBUpLfze5vn9gA7EtlCRN0vB6PpYHyX1fufPJtVbeXPd9X5fFGGMEAACAoLMGuwAAAAAcRzADAAAIEQQzAACAEEEwAwAACBEEMwAAgBBBMAMAAAgRBDMAAIAQQTADAAAIEQQzAACAEEEwAwAACBEEMwAA0Om99957mjhxonr27CmLxaI33njjtO8pLCzURRddJIfDoQEDBujFF1/s8DpPh2AGAAA6verqag0bNkyLFi1qV/vdu3fr6quv1re+9S1t3LhRP/vZz3TzzTfr73//ewdXemoWFjEHAADhxGKx6PXXX9ekSZPabHPPPfdoxYoV2rx5s3vbj3/8Y1VUVGjVqlUBqLJ1EUH75ABpamrShg0blJqaKquVAUIAADoDl8ulkpISZWZmKiLiRFxxOBxyOBw+H7+oqEg5OTke2yZMmKCf/exnPh/bF2EfzDZs2KBRo0YFuwwAAOAHeXl5euCBB3w+TmlpqVJTUz22paamqrKyUrW1tYqOjvb5M7wR9sGsudPXrVunHj16BLkaAADQHvv379eoUaO0efNmZWRkuLf7Y7QslIV9MGs+fdmjRw/16tUryNUAAIAzkZiYqISEBL8fNy0tTWVlZR7bysrKlJCQELTRMom7MgEAwFkoOztbBQUFHttWr16t7OzsIFV0HMEMAAB0eseOHdPGjRu1ceNGScenw9i4caNKSkokSbNnz9bUqVPd7W+99Vbt2rVLv/jFL7Rt2zY9/fTT+tOf/qQ777wzGOW7EcwAAECn9/HHH+vCCy/UhRdeKEnKzc3VhRdeqLlz50o6fs1ac0iTpH79+mnFihVavXq1hg0bpieeeELPP/+8JkyYEJT6m4X9PGb79u1TRkaG9u7dyzVmAAB0Emfr39+MmAEAAIQIghkAAECIIJgBAACECIIZAABAiCCYAQAAhAiCGQAAQIggmAEAAIQIghkAAECICPtFzDuKs6pKzqOVssbGKKJLl2CXAwAAwgAjZl4qy1+gL3JyVPGnPwe7FAAAECYIZl6yxsRIklw1NUGuBAAAhAuCmZcIZgAAwN8IZl46Ecyqg1wJAAAIFwQzLzFiBgAA/I1g5iVrLMEMAAD4F8HMS80jZqaaYAYAAPyDYOYlTmUCAAB/I5h5iWAGAAD8Lagz/5c/+5yqVq9Ww65dskRFKfrCC5Vy111y9O/nbvPlDVNV89FHHu9LmjxZPeY9EOBqPVkIZgAAwM+CGsxqPvpIXa67TtFDBss4nTrwP/+jkptv0jlvvukekZKkpB/+UN1v/6n7tSU6OhjlemDEDAAA+FtQg1nv55d4vO6Zn68do8eobssWxVx8sXu7JTpKEd27B7q8U7LGxEo6HsyMMbJYLEGuCAAAdHYhtYi5q6pKkmRNTPTYXvl/b6ryb/+niO7Jirv8W0r+yW2ytjFqVl9fr/r6evfrqq+P6W/N02XI5ZKpr5clKqpDPgcAAJw9QiaYGZdLZY/kK/qiixR13nnu7Qnf+54ie/ZUREqK6j/frgO/ekINe3ar11NPtXqc/Px8zZs3r8PrPTkYumpqZCWYAQAAH4VMMCudP1/1O3aoz8sveWzvMvlH7udRA89TRPfuKrlxuhpKSmTv3bvFcWbPnq3c3Fz366+++kqZmZl+r9dis8kSFSVTV3f8OrOuXf3+GQAA4OwSEsGsdP6DOlb4rvr88X8VmZZ2yrbRQ4dKkhq+bD2YORwOORwO9+vKykr/FnsSa0yMnHV1cjHJLAAA8IOgzmNmjFHp/AdV9fbb6vPiC7L36nXa99Rt2yZJikgJ/s0ALGQOAAD8KagjZqXz56vyzRXqtei3ssbGqungQUmSNT5e1qgoNZSU6Oibbypu3GWyJSWp/vPtKstfoJiRIxU1cGAwSz9eJ1NmAAAAPwpqMKt4ZZkkqWTqNI/tPR55REnXfl+WyEjVfFCkI7//g1y1tYrokab4K76j5NtuC0a5LRDMAACAPwU1mJ2/besp90f26KE+f/zfAFVz5twLmRPMAACAH7BWpg+a5zJjxAwAAPgDwcwHJ8/+DwAA4CuCmQ/cI2ZMlwEAAPyAYOYDLv4HAAD+RDDzgYVgBgAA/Ihg5gNGzAAAgD8RzHxAMAMAAP5EMPMBd2UCAAB/Ipj5gBEzAADgTwQzH7CIOQAA8CeCmQ+Y+R8AAPgTwcwH7rUymWAWAAD4AcHMB1xjBgAA/Ilg5gP3iFljo0xDQ5CrAQAAnR3BzAfW6Gj3c1dtbRArAQAA4YBg5gOL3S5LZKQkTmcCAADfEcx8xHVmAADAXwhmPrIwZQYAAPATgpmP3CNmTJkBAAB8RDDzEetlAgAAfyGY+YhrzAAAgL8QzHzEepkAAMBfCGY+YsQMAAD4C8HMRwQzAADgLwQzH7mXZSKYAQAAHxHMfMSIGQAA8BeCmY+sscxjBgAA/INg5iNGzAAAgL8QzHxEMAMAAP5CMPORhWAGAAD8hGDmI0bMAACAvxDMfEQwAwAA/kIw8xGLmAMAAH8hmPnIPV0GwQwAAPiIYOYj98z/tbUyTmeQqwEA4Oy2aNEi9e3bV1FRUcrKytK6detO2X7hwoUaOHCgoqOjlZGRoTvvvFN1dXUBqrYlgpmPmoOZJLlqg/d/JAAAZ7vly5crNzdXeXl5+uSTTzRs2DBNmDBBBw4caLX9yy+/rHvvvVd5eXnaunWrfve732n58uW67777Alz5CQQzH1kcDsl6vBtdNdVBrgYAgLPXk08+qRkzZmj69OnKzMzU4sWLFRMTo6VLl7ba/oMPPtCYMWN03XXXqW/fvrriiis0ZcqU046ydSSCmY8sFgsLmQMA0EGqqqpUWVnpftTX17farqGhQevXr1dOTo57m9VqVU5OjoqKilp9z+jRo7V+/Xp3ENu1a5dWrlyp7373u/7/Iu1EMPMDpswAAKBjZGZmKjEx0f3Iz89vtV15ebmcTqdSU1M9tqempqq0tLTV91x33XWaP3++Lr30UkVGRuqcc87R5ZdfHtRTmRFB++QwQjADAKBjFBcXKz093f3a4XD47diFhYV65JFH9PTTTysrK0s7d+7UHXfcoQcffFBz5szx2+ecCYKZHxDMAADoGPHx8UpISDhtu+TkZNlsNpWVlXlsLysrU1paWqvvmTNnjm644QbdfPPNkqQhQ4aourpat9xyi375y1/Kag38iUVOZfoBwQwAgOCy2+0aMWKECgoK3NtcLpcKCgqUnZ3d6ntqampahC+bzSZJMsZ0XLGnwIiZH1iaJ5mtJpgBABAsubm5mjZtmkaOHKlRo0Zp4cKFqq6u1vTp0yVJU6dOVXp6uvs6tYkTJ+rJJ5/UhRde6D6VOWfOHE2cONEd0AKNYOYHjJgBABB8kydP1sGDBzV37lyVlpZq+PDhWrVqlfuGgJKSEo8Rsvvvv18Wi0X333+/vvrqK3Xv3l0TJ07Uww8/HKyvIIsJ1lhdgOzbt08ZGRnau3evevXq1SGf8e9f/lJH//Kaut95p5L/+5YO+QwAAM4mgfj7OxRxjZkfsJA5AADwB4KZH3AqEwAA+APBzA9OBDOWZAIAAN4jmPkBI2YAAMAfCGZ+QDADAAD+QDDzA+vX85gZ5jEDAAA+IJj5ASNmAADAHwhmfkAwAwAA/hDUmf/Ln31OVatXq2HXLlmiohR94YVKuesuOfr3c7dx1dfrwKOPqnLFSrkaGxU3ZozS8uYqIjk5iJV7IpgBAAB/COqIWc1HH6nLddep7/Jl6r30dzJNjSq5+SaPgFOWn6+qdwqV/uuF6vOHP6jpwAHt++ntQay6JYIZAADwh6COmPV+fonH6575+doxeozqtmxRzMUXy1lVpYq/vKb0xx9X7CWXSJJ65D+iXd+9WrUbNyp6+PAgVN2S5aRgZoyRxWIJckUAAKAzCqlrzFxVVZIka2KiJKluyxapsVGxo7PdbRz9+yuiZw/VbNzY6jHq6+tVWVnpflR9fcyO1Lwkk1wumfr6Dv88AAAQnkImmBmXS2WP5Cv6oosUdd55kqSmg+WyREbKlpDg0TaiW7Kc5eWtHic/P1+JiYnuR2ZmZofXbo2Ocj/ndCYAAPBWyASz0vnzVb9jh9KffMKn48yePVtHjx51P4qLi/1UYdssNpss0dGSCGYAAMB7Qb3GrFnp/Ad1rPBd9fnj/yoyLc29PaJ7skxjo5yVlR6jZk2HymVr465Mh8Mhh8Phfl1ZWdlxhZ/EGhMjZ22tXEwyCwAAvBTUETNjjErnP6iqt99WnxdfkL1XL4/9URdcIEVGqrporXtb/a7davr3fsWEyIX/zVjIHAAA+CqoI2al8+er8s0V6rXot7LGxqrp4EFJkjU+XtaoKNni45X0g2tV9ugC2RITZY2LU9lDDyl6+PCQuSOzGVNmAAAAXwU1mFW8skySVDJ1msf2Ho88oqRrvy9JSp09WxarVfvuuEOmoUFxl45R2ty5Aa/1dAhmAADAV0ENZudv23raNlaHQ2lz54ZkGDtZczAzBDMAAOClkLkrs7NjxAwAAPiKYOYnBDMAAOArgpmfWGO/DmZMlwEAALxEMPMTRswAAICvCGZ+YiGYAQAAHxHM/IQRMwAA4CuCmZ8QzAAAgK8IZn5ijYmVRDADAADeI5j5CSNmAADAVwQzP2ERcwAA4CuCmZ+45zFjxAwAAHiJYOYn7rUymWAWAAB4iWDmJ1xjBgAAfEUw8xP3iFljo0xDQ5CrAQAAnRHBzE+s0dHu567a2iBWAgAAOiuCmZ9Y7HZZIiMlcToTAAB4h2DmR1xnBgAAfEEw8yMLU2YAAAAfEMz8yD1ixpQZAADACwQzP2K9TAAA4AuCmR9xjRkAAPAFwcyPWC8TAAD4gmDmR4yYAQAAXxDM/IhgBgAAfEEw8yP3skwEMwAA4AWCmR8xYgYAAHxBMPMjayzzmAEAAO8RzPyIETMAAOALgpkfEcwAAIAvCGZ+ZCGYAQAAHxDM/IgRMwAA4AuCmR8RzAAAgC8IZn7EIuYAAMAXBDM/ck+XQTADAABeIJj5kXvm/9paGaczyNUAAIDOhmDmR83BTJJctXVBrAQAAHRGBDM/sjgckvV4l7pqqoNcDQAA6GwIZn5ksVhYyBwAAHiNYOZnTJkBAAC8RTDzM4IZAADwFsHMzwhmAADAWwQzPyOYAQAAbxHM/MzSPMlsNcEMAACcGYKZnzFiBgAAvEUw8zOCGQAAwbNo0SL17dtXUVFRysrK0rp1607ZvqKiQjNnzlSPHj3kcDh03nnnaeXKlQGqtqWIoH1ymGIhcwAAgmP58uXKzc3V4sWLlZWVpYULF2rChAnavn27UlJSWrRvaGjQd77zHaWkpOjVV19Venq6vvzySyUlJQW++K8RzPyMETMAAILjySef1IwZMzR9+nRJ0uLFi7VixQotXbpU9957b4v2S5cu1eHDh/XBBx8oMjJSktS3b99AltwCpzL9zB3MqlmSCQAAX1VVVamystL9qK+vb7VdQ0OD1q9fr5ycHPc2q9WqnJwcFRUVtfqev/3tb8rOztbMmTOVmpqqwYMH65FHHpHT6eyQ79IeBDM/Y8QMAAD/yczMVGJiovuRn5/farvy8nI5nU6lpqZ6bE9NTVVpaWmr79m1a5deffVVOZ1OrVy5UnPmzNETTzyhhx56yO/fo704lelnJ4IZI2YAAPiquLhY6enp7tcOh8Nvx3a5XEpJSdFzzz0nm82mESNG6KuvvtLjjz+uvLw8v33OmSCY+Zk1lhEzAAD8JT4+XgkJCadtl5ycLJvNprKyMo/tZWVlSktLa/U9PXr0UGRkpGw2m3vb+eefr9LSUjU0NMhut/tWvBc4lelnnMoEACDw7Ha7RowYoYKCAvc2l8ulgoICZWdnt/qeMWPGaOfOnXK5XO5tn3/+uXr06BGUUCYFOZjVfPSR9t56m3aMHaetg85X1dtve+z/972ztXXQ+R6PkptnBKna9mkOZoaZ/wEACKjc3FwtWbJEv//977V161bddtttqq6udt+lOXXqVM2ePdvd/rbbbtPhw4d1xx136PPPP9eKFSv0yCOPaObMmcH6CsE9lemqrZVj0EAl/uBaffXT21ttEzt2rHo+8rD7tSVICba9GDEDACA4Jk+erIMHD2ru3LkqLS3V8OHDtWrVKvcNASUlJbJaT4xJZWRk6O9//7vuvPNODR06VOnp6brjjjt0zz33BOsrBDeYxY0bp7hx4yRJX7XRxmK3K6J798AV5SOCGQAAwTNr1izNmjWr1X2FhYUttmVnZ2vt2rUdXFX7hfzF/zXr1unz0WNkS0hQzCVZ6n7HHYro0iXYZbXJclIwM8bIYrEEuSIAANBZhHQwix17qeKv+I4i03upcW+JDvzPQu295b/Vd9krspx0B8XJ6uvrPSafq6qqClS5kk4sySRjZOrqZImODujnAwCAziukg1ni1Ve7n0cNPE+OgQP1xXeuUM26dYpt4w6L/Px8zZs3L1AltmCNjnI/d9XUyEowAwAA7dSppsuwZ2TI1qWLGr4sabPN7NmzdfToUfejuLg4gBVKFpvNPUrGdWYAAOBMhPSI2Tc1lpbKWVGhiJS2bwZwOBweswJXVlYGojQP1pgYOWtrCWYAAOCMBHe6jOpqNZScGP1q2LdPdVu3ypaYKFtiog4ueloJV3xHtuTux68xe/xXsvfurdhLLw1i1adnjYmR89AhuZjLDAAAnIGgBrPazVtUMm2a+/WBBY9KkhInTVLaA3mq375de994Q86qKkV2767YMWPU/Y7bZWUuMwAAEGSF2w8o1hGhi/t2lST9oWiPXlm3V+emxOnBawYrMSbyjI8Z1GAWmzVK52/b2ub+3r97PoDV+A8LmQMAEP7yV27TvVcNkiRtK63UQyu26uZL+6lo1yE9uKJYv/rhsDM+Zqe6xqyzYMQMAIDwt/dIjQakxEmS3vqsVOMHpegXVw7S5q+O6sYXPvLqmJ3qrszOgmAGAED4i7RZVdfolCT9a2e5xp57/ObExOhIHatv9OqYBLMO4F7InGAGAEDYurhvFz24Yqt+U7BDn+6r0LcHpUiSdpdXq0eid/OYEsw6gDWWETMAAMLdvGsGK8Jq0crP9uuhSYOVlnh8kvnC7Qd12XnerfPNNWYdwH0qk+kyAAAIW+lJ0Vp648Utts+dmOn1MQlmHcAae3y9TEbMAAAIL1V17b92LD6qk02XEa64+B8AgPA0dN4/ZGln2135V5++0TcQzDqAhWAGAEBYemXGJe7n+47U6tFV2/SfI3rpot5dJEmflBzRX9bv0y+uHOTV8QlmHYARMwAAwtMl/bu5n1+3ZK3uv/p8XTM83b3tO5mpGpQWr5c/LNF/juh1xsfnrswOQDADACD8fVJyREN7JbXYPiQ9UZ/uq/DqmASzDmCN4eJ/AADCXc/EaC1bV9Ji+/KP9qqnl/OYcSqzAzBiBgBA+JvzvUzd+sf1Ktx+UMMzkiRJn+6r0O7yai3+rxFeHZNg1gGYYBYAgPD3rUEpKrz7cv1x7ZfaeeCYJGn8+Sm6PquPeiYFcMSs4vU3ZOuSpPjLL5cklT3+uCr+9Gc5zjlH6U/8SpHp6ac+QJhjxAwAgPDW6HRp2tJ1evj7Q3T3BO/uwGyNV9eYHXr2WVmjji87ULNhg468/IpSfv5z2bp0UdmCBX4rrrNqDmZqbJRpaAhuMQAAwO8ibVZtK63y+3G9CmaNpaWy9+4tSTpWUKCEK76jLpN/pJTcO1Xz8Xq/FtgZWaNPDF8yagYAQHiaNDxdyz/a69djenUq0xoTI2dFhSJ79tSxf32gbjdOkyRZHA656uv9WmBnZImMlMVul2lokKumRrakpGCXBAAA/MzpcumltXv1r53lGpyeqBi7zWP/nO+d+ZqZXgWz2NGjtf/+OXJknq+GPXsUO26cJKl+507Z03t6c8iwY42JkfPrYAYAAMLP9rIqXZCeIEnaXX7MY5+l3Qs3efIqmKXNnaODC3+txtJS9frNrxXR5fgyBHWbtyjh6jNfFyocNY8qEswAAAhPy27J9vsxvQpmtoQEpc2d02J799t/6nNB4YIpMwAAwJnyKpgdW7NG1pgYxYw4Pnna4ZdeUsWfX5XjnHOUNneObImJfi2yM2IhcwAAwt+mfRVasWm/vqqoVaPT5bHv2RtGnvHxvLor88Bjj8t17Pi51Lrtn+vAo48pbtw4Ne7bp7IFj3pzyLDjnsusmmAGAEA4+tun/9YPnvlAOw8c0z+2lKnJabSj7Jg++OKQ4qMivTqmVyNmDV99Jfs5AyRJVf/4h+Iuv1wpuXeqdssW7f3vW70qJNywXiYAAOHt6Xd2as73MjU1u68umLtKeRMvUEbXaN33+mfqHh/l1TG9GjGzREbK1NVKkqqLihQ7ZowkyZaY5B5JO9sx+z8AAOHty0M1+tbAFElSZIRVNY1NslgsuunSfnqllcXN28OrYBZz0UUqW/CoDj79tGo/+0xxl18mSWrYs0eRqaleFRJuTgSz6iBXAgAAOkJidKSqG5okSWkJUdr+9UoAR2ubVNfg9OqYXgWztDn3y2Kzqerv/1CPvLnuMFa95j3Fjh3rVSHhhhEzAADC26h+XfX+jnJJ0neH9ND8/yvWvX/ZpNtf2aDRA7p5dUyvrjGL7NlTGc8ubrE9dfZsr4oIRwQzAADC2/xrLlB90/E7MWd9a4AibBZ98uURXTU4TT/99rleHdOrYCZJxulU1dsFatj1hSTJPmCA4r/9bVlsttO88+zQHMwMwQwAgLCUFGN3P7daLfrJ5QN8PqZ3d2V++aX23vLfajxwQPZ+fY9ve26JItPSlPHsYvcC52czJpgFACC85S7fqEvO6aasfl3Vp1usX47pVTArffhhRfburb7Ll7kX6G46ckT//sU9Kn34YfV+9lm/FNeZMY8ZAADhLdJm1TOFX+iev2xSWkKUsvp11SX9uymrfzf1S/YuqHkVzGo++lh9l50IZZIU0aWLUu7K1Z7rrveqkHDDNWYAAIS3R/9zqCSp9GidPtx9SB/uPqwla3bpvtc/U0p8lNbeN/6Mj+ndPGZ2u1zVLaeBcNXUyBLp3Uy34YZgBgDA2SExOlJdYuxKjI5UQnSkIqxWdY21n/6NrfBqxCz+8stUmjdXPR56SFFDj6fFuk8/VWneA4r/1re8KiTcEMwAAAhvj63aprW7DmnLvys1ICVOWf266bbLzlFWv25KjAngkkypv/yl/n3vbO358RRZIo4fwjQ1KW78t5V6H1NmSCxiDgBAuHvm3S/ULdauO3LO1ZUXpKl/9zifj+lVMLMlJCjj6UVq+PJL1X+xS5LkOKe/7H36+FxQuGCtTAAAwtuKn47Vh7sPae2uQ3p+zW5F2izK6tdNl/Tvpkv6d/UqqLU7mJXlLzjl/poPP3Q/T5197xkXEm6ap8swdXUyTifzuwEAEGYyeyYos2eCpo/pJ0kq/nelfvf+bs3962a5jNGu/KvP+JjtDmZ1W7e2r6HFcsZFhKPma8wkyVVbK1uc78ObAAAgdBhjtOXflVq76/io2Ud7juhYfZMGpcUrq18HL8nU5w+/9+oDzlYWu12y2SSnU67qGoIZAABhZti8f6imwanzeyQoq19X/fji3rq4X1clRns/Q4XXSzLh1CwWi6wxMXJVVclV03JqEQAA0Lkt/PFwXdy3q+Kj/DdVmFfzmKF9mDIDAIDw9e1BqYqPitSe8mq9+/lB1TU6JR0/xektRsw6EAuZAwAQvo5UN2jmy5+oaNchWSQV/vxb6t0tRr94dZMSoyN1//cyz/iYjJh1IEbMAAAIXw++WawIm1Uf3PttRUeemH3he8N66t3PD3p1TIJZByKYAQAQvt7bUa57rxykHonRHtv7dYvVVxW1Xh2TYNaBCGYAAISv2oYmRdtbzlNaUdsge4R3EYtg1oGaJ5l1VRPMAAAINxf366rXPtnnfm2xSC6X0bPv7lJ2/w6exwxnjvUyAQAIX/d993xdt2StNu07qkanUf5bW/V52TFV1DTqL7dle3VMglkH4lQmAADhqdHp0gN/26Lnp12s93ccVJwjQtUNTbrygjRNze6jlIQor45LMOtABDMAAMJTpM2qbaVVSoyO1Kxvn+u343KNWQeyxsRKIpgBABCOJg1P1/KP9vr1mIyYdSBGzAAACF9Ol0svrd2rf+0s1+D0RMV84w7NOV5MMEsw60AnghlrZQIAEG62l1XpgvQESdLu8mMe+yyyeHVMglkHYsQMAIDwtewW7+68PBWuMetA7nnMCGYAAKAdghrMaj76SHtvvU07xo7T1kHnq+rttz32G2N08De/0edjx2rbsOH6cvp0NezZE5xiveBexJwJZgEAQDsENZi5amvlGDRQqXPntLr/0PPP6/D//lE9HnhAff+0XNboGJXcPEOu+voAV+odTmUCAIAzEdRgFjdunFJ+9jMlfOc7LfYZY3T4D39Q8q23Kn78eEUNHKiejy5Q04EDLUbWQhXBDACAwFq0aJH69u2rqKgoZWVlad26de1637Jly2SxWDRp0qSOLfA0QvYas8Z9++Q8WK7Y0ScurLPFxyt66FDVbvy0zffV19ersrLS/aiqqgpEua06OZgZY4JWBwAAZ4Ply5crNzdXeXl5+uSTTzRs2DBNmDBBBw4cOOX79uzZo5///OcaO3ZsgCptW8gGs6aD5ZIkWzfPRUBtyclqKj/Y5vvy8/OVmJjofmRmnvkcIv7SHMxkjExdXdDqAADgbPDkk09qxowZmj59ujIzM7V48WLFxMRo6dKlbb7H6XTq+uuv17x589S/f/8AVtu6kA1m3po9e7aOHj3qfhQXFwetFkt0tPs5pzMBADhzVVVVHmfC6tu4zryhoUHr169XTk6Oe5vValVOTo6KioraPP78+fOVkpKim266ye+1eyNkg1lE92RJkvPQIY/tzvJyRSR3b/N9DodDCQkJ7kd8fHyH1nkqFqtVFq4zAwDAa5mZmR5nwvLz81ttV15eLqfTqdTUVI/tqampKi0tbfU977//vn73u99pyZIlfq/bWyE7wWxkr16ydU9WddFaRZ1/viTJeeyYajdtUtKUHwe5uvazxsTIWVNDMAMAwAvFxcVKT093v3Y4HH45blVVlW644QYtWbJEycnJfjmmPwQ1mLmqq9VQUuJ+3bBvn+q2bpUtMVGRPXuq69SpKl+8WPa+fRSZ3ksHf/MbRaSkKP6kYcpQZ42JkVOSi7nMAAA4Y/Hx8UpISDhtu+TkZNlsNpWVlXlsLysrU1paWov2X3zxhfbs2aOJEye6t7lcLklSRESEtm/frnPOOcfH6s9cUINZ7eYtKpk2zf36wIJHJUmJkyap54J8dbv5ZpnaWu2fmydXZaWiR1ykjCXPyeqntBwITJkBAEDHs9vtGjFihAoKCtxTXrhcLhUUFGjWrFkt2g8aNEifffaZx7b7779fVVVV+vWvf62MjIxAlN1CUINZbNYonb9ta5v7LRaLut9+u7rffnsAq/IvFjIHACAwcnNzNW3aNI0cOVKjRo3SwoULVV1drenTp0uSpk6dqvT0dOXn5ysqKkqDBw/2eH9SUpIktdgeSCF7jVm4YMQMAIDAmDx5sg4ePKi5c+eqtLRUw4cP16pVq9w3BJSUlMhqDdn7HiURzDocwQwAgMCZNWtWq6cuJamwsPCU733xxRf9X9AZCu3YGAbcC5kTzAAAwGkQzDoYI2YAAKC9CGYdzBr7dTBjugwAAHAaBLMOxogZAABoL4JZByOYAQCA9iKYdTDWygQAAO1FMOtgjJgBAID2Iph1MIIZAABoL4JZB7PGxEoimAEAgNMjmHUwRswAAEB7Ecw6mHseM4IZAAA4DYJZB2PEDAAAtBfBrIM1BzM1Nso0NAS3GAAAENIIZh3MGh3tfs6oGQAAOBWCWQezREbKYrdLIpgBAIBTI5gFANeZAQCA9iCYBQDBDAAAtAfBLACYMgMAALQHwSwAWMgcAAC0B8EsANynMqsJZgAAoG0EswBgvUwAANAeBLMA4OJ/AADQHgSzADgRzKqDXAkAAAhlBLMAYMQMAAC0B8EsAAhmAACgPQhmAdAczAzBDAAAnALBLACYYBYAALQHwSwAmMcMAAC0B8EsALjGDAAAtAfBLAAIZgAAoD0IZgFAMAMAAO1BMAsAFjEHAADtQTALANbKBAAA7UEwC4Dm6TJMXZ2M0xnkagAAQKgimAVA8zVmkuSqrQ1iJQAAIJQRzALAYrdLNpsk5jIDAABtI5gFgMViOenOzOogVwMAAEIVwSxAmDIDAACcDsEsQFjIHAAAnA7BLEAYMQMAAKdDMAsQghkAADgdglmAEMwAAMDpEMwCpHmSWabLAAAAbSGYBQjrZQIAgNMhmAUIpzIBAMDpEMwChGAGAABOh2AWINaYWEkEMwAA0DaCWYAwYgYAAE6HYBYgrJUJAABOh2AWIIyYAQCA0yGYBYh7HjOCGQAAaENEsAs4lYNP/VblixZ5bLP366dz3loZpIq85x4xq+ZUJgAAaF1IBzNJcpw7QL2XLj2xISLkS24VpzIBAMDphH7KsUUoonv3YFfhs+ZgZliSCQAAtCHkg1nDl19qx9hxsjgcih4+XCm5dyqyZ88229fX16u+vt79uqqqKhBlnpZ7xKy2VsblksXK5X0AAMBTSKeD6GFD1TP/EWU8v0RpeXlq3LdPe/7rv+Q81vZ1Wvn5+UpMTHQ/MjMzA1hx25qDmYyRqasLbjEAACAkhXQwixs3TglXXqmogQMVN/ZSZTz3rFyVVapa9Vab75k9e7aOHj3qfhQXFwew4rZZoqPdz7nODAAAtCbkT2WezJaQIHvfvmr4sqTNNg6HQw6Hw/26srIyEKWdlsVqlSUmRqamhmAGAABaFdIjZt/kqq5Ww969nfZmAO7MBAAApxLSI2Zljz6muG9drsie6Wo6cEDlv31KFqtVCd+7OtilecUaEyOnCGYAAKB1IR3MmspK9e+7fi5nRYVsXbsqZsRF6rt8mSK6dg12aV45MckswQwAALQU0sEs/ckng12CX3EqEwAAnEqnusassyOYAQCAUyGYBdCJYMZ6mQAAdIRFixapb9++ioqKUlZWltatW9dm2yVLlmjs2LHq0qWLunTpopycnFO2DwSCWQAxYgYAQMdZvny5cnNzlZeXp08++UTDhg3ThAkTdODAgVbbFxYWasqUKXrnnXdUVFSkjIwMXXHFFfrqq68CXPkJBLMAIpgBANBxnnzySc2YMUPTp09XZmamFi9erJiYGC1durTV9i+99JJ+8pOfaPjw4Ro0aJCef/55uVwuFRQUBLjyEwhmAWSN/Xohc4IZAADtUlVVpcrKSvfj5PWwT9bQ0KD169crJyfHvc1qtSonJ0dFRUXt+qyamho1NjaqaxBnfyCYBRAjZgAAnJnMzEyPNbDz8/NbbVdeXi6n06nU1FSP7ampqSotLW3XZ91zzz3q2bOnR7gLtJCeLiPcMI8ZAABnpri4WOnp6e7XJy+76E8LFizQsmXLVFhYqKioqA75jPYgmAWQhREzAADOSHx8vBISEk7bLjk5WTabTWVlZR7by8rKlJaWdsr3/upXv9KCBQv09ttva+jQoT7V6ytOZQYQpzIBAOgYdrtdI0aM8Lhwv/lC/uzs7Dbf99hjj+nBBx/UqlWrNHLkyECUekqMmAWQNTZWEsEMAICOkJubq2nTpmnkyJEaNWqUFi5cqOrqak2fPl2SNHXqVKWnp7uvU3v00Uc1d+5cvfzyy+rbt6/7WrS4uDjFxcUF5TsQzAKIETMAADrO5MmTdfDgQc2dO1elpaUaPny4Vq1a5b4hoKSkRFbriZOFzzzzjBoaGvSf//mfHsfJy8vTAw88EMjS3QhmAWSNYcQMAICONGvWLM2aNavVfYWFhR6v9+zZ0/EFnSGuMQsgRswAAMCpEMwCqHmCWVdNjYwxQa4GAACEGoJZADWPmKmpSaaxMbjFAACAkEMwCyBrdLT7uau6OoiVAACAUEQwCyBLRIQsX89YzHqZAADgmwhmAcYNAAAAoC0EswAjmAEAgLYQzAKMYAYAANpCMAswghkAAGgLwSzATp7LDAAA4GQEswCzNI+YVRPMAACAJ4JZgHEqEwAAtIVgFmAEMwAA0BaCWYBZY2IlEcwAAEBLBLMAOzFixpJMAADAE8EswDiVCQAA2kIwCzCCGQAAaAvBLMCa5zFjEXMAAPBNBLMAszKPGQAAaAPBLMA4lQkAANpCMAswghkAAGgLwSzACGYAAKAtBLMAI5gBAIC2EMwCrHkRc1NfL9PUFORqAABAKCGYBZg1Ntb93FVbG8RKAABAqCGYBZglMlKKiJDE6UwAAOCJYBZgFouFucwAAECrCGZBwA0AAACgNQSzIDgRzKqDXAkAAAglBLMgYMQMAAC0hmAWBM3BjIXMAQDAyQhmQcCIGQAAaA3BLAgIZgAAoDUEsyCwxhLMAABASwSzIGAeMwAA0BqCWRBYOJUJAABaQTALAq4xAwAArSGYBQHBDAAAtIZgFgTWmFhJBDMAAOCJYBYEjJgBAIDWEMyCgGAGAABa0ymC2eGXXtLOb4/XtqHDtPtHk1W7aVOwS/LJiXnMWMQcAACcEPLBrHLlSh1Y8KiSZ85Uv9f+oqiBA1Vy8ww1HToU7NK8xogZAABoTcgHs0Mv/l5JP/yhkn5wrRwDBiht3gOyRkWp4i+vBbs0r7kXMWeCWQAAcJKQDmamoUF1W7YodnS2e5vFalVsdrZqN25s9T319fWqrKx0P6qqqgJUbfudPGJW8/HHMk1NQa4IAACEgohgF3AqTUcqJKdTtm7dPLbbkrupfvfuVt+Tn5+vefPmBaA671nj42Wx22UaGvTlf90ga3y8YkePVty4sYq9dKwiU1OCXSIAAAiCkB4x88bs2bN19OhR96O4uDjYJbVgdTiUsfgZJXzve7IlJclVVaWqv/9d+395v3Zedpl2Tfq+DjzxpKrXrZNpbAx2uQAAIEBCesQsokuSZLPJ+Y0L/Z3lhxSRnNzqexwOhxwOh/t1ZWVlR5botdjRoxU7erSM06m6zZt17L01OrZmjeo++0z127apfts2HVqyRNa4OMVmZyt23FjFjR2ryLS0YJcOAAA6SEgHM4vdrqgLLlB10VrF5+RIkozLpeq1a9Xl+uuDXJ1/WGw2RQ8bpuhhw9T9p7PUdPiwqv/1Lx1bs0bVa96X88gRVa1erarVqyVJjnPPPR7SxoyRNTFRFotFslgkq1WS5fj/mrdZLJLF2so2i+RyyVVfL1PfINNQL1Nf//Xrk58f3+d+Xl/vfi1z8pdo/tNyYtNJz90NTt5msbR434n3WE60bfGnZImIlMVhl9Vul8VulyXy6z8dDlnskbLYT9rncJzYb4+UJdLuw/9bAALB4z8fnYgxp28TrmxJSbLFxQa7jLAQ0sFMkrrdOE3/vne2ogYPVvTQITr8+z/IVVurpGu/H+zSOkRE165KnDhRiRMnyrhcqtuyRcfee0/V761R7aZNqt+xQ/U7dujw75YGu1QAACRJafPmqcvkHwW7jLAQ8sEs4bvfVdPhIzr41G/kPFgux/nnq/eS59o8lRlOLFaroocMUfSQIeo+c6aajhxR9b8+UPWaNar55BOZhobj/0QzRubrP7/5MJLkcrXYZrFYZImK+nrkyXF8ZMnhOD7S5Gh+/Y19DrssdocsdvvXI3Ty/Ceixz8Xv/FPx5P2uWs9uZn7tXFvNCdvO6mdaWyUaWhwP1wN9TINJ22rrz/+Z2ODXA0NX4/8ff1obOy8/xwHgBBlsYXdJetBYzEmvAdf9+3bp4yMDO3du1e9evUKdjkAAKAdzta/v4m4AAAAIYJgBgAAECIIZgAAACGCYAYAABAiCGYAAAAhgmAGAAAQIghmAAAAIYJgBgAAECIIZgAAACGCYAYAABAiCGYAAAAhgmAGAADCxqJFi9S3b19FRUUpKytL69atO2X7P//5zxo0aJCioqI0ZMgQrVy5MkCVto5gBgAAwsLy5cuVm5urvLw8ffLJJxo2bJgmTJigAwcOtNr+gw8+0JQpU3TTTTdpw4YNmjRpkiZNmqTNmzcHuPITLMYYE7RPD4CzdXV6AAA6M2/+/s7KytLFF1+s3/72t5Ikl8uljIwM/fSnP9W9997bov3kyZNVXV2tN998073tkksu0fDhw7V48WL/fJEzFBGUTw0gl8slSdq/f3+QKwEAAO3V/Pf20aNHlZCQ4N7ucDjkcDhatG9oaND69es1e/Zs9zar1aqcnBwVFRW1+hlFRUXKzc312DZhwgS98cYbfvgG3gn7YFZWViZJGjVqVJArAQAAZ2rw4MEer/Py8vTAAw+0aFdeXi6n06nU1FSP7ampqdq2bVurxy4tLW21fWlpqW9F+yDsg9mFF16odevWKTU1VVar/y6pq6qqUmZmpoqLixUfH++344Y7+s079Jt36LczR595h37zzqn6zeVyqaSkRJmZmYqIOBFXWhstCydhH8wiIiJ08cUX+/24lZWVkqT09HSPIVacGv3mHfrNO/TbmaPPvEO/eed0/da7d+92Hys5OVk2m819pqxZWVmZ0tLSWn1PWlraGbUPBO7KBAAAnZ7dbteIESNUUFDg3uZyuVRQUKDs7OxW35Odne3RXpJWr17dZvtACPsRMwAAcHbIzc3VtGnTNHLkSI0aNUoLFy5UdXW1pk+fLkmaOnWq0tPTlZ+fL0m64447dNlll+mJJ57Q1VdfrWXLlunjjz/Wc889F7TvQDDzksPhUF5eXtif6/Y3+s079Jt36LczR595h37zjr/7bfLkyTp48KDmzp2r0tJSDR8+XKtWrXJf4F9SUuJxvfno0aP18ssv6/7779d9992nc889V2+88UaLGw4CKeznMQMAAOgsuMYMAAAgRBDMAAAAQgTBDAAAIEQQzAAAAEIEwcxLixYtUt++fRUVFaWsrCytW7cu2CUFzQMPPCCLxeLxGDRokHt/XV2dZs6cqW7duikuLk4/+MEPWkzoV1JSoquvvloxMTFKSUnR3XffraampkB/lQ713nvvaeLEierZs6csFkuLtdiMMZo7d6569Oih6Oho5eTkaMeOHR5tDh8+rOuvv14JCQlKSkrSTTfdpGPHjnm02bRpk8aOHauoqChlZGToscce6+iv1qFO12833nhji5+/K6+80qPN2dZv+fn5uvjiixUfH6+UlBRNmjRJ27dv92jjr9/LwsJCXXTRRXI4HBowYIBefPHFjv56HaY9/Xb55Ze3+Hm79dZbPdqcTf32zDPPaOjQoUpISFBCQoKys7P11ltvuffzc+YFgzO2bNkyY7fbzdKlS82WLVvMjBkzTFJSkikrKwt2aUGRl5dnLrjgArN//3734+DBg+79t956q8nIyDAFBQXm448/NpdccokZPXq0e39TU5MZPHiwycnJMRs2bDArV640ycnJZvbs2cH4Oh1m5cqV5pe//KV57bXXjCTz+uuve+xfsGCBSUxMNG+88Yb59NNPzX/8x3+Yfv36mdraWnebK6+80gwbNsysXbvWrFmzxgwYMMBMmTLFvf/o0aMmNTXVXH/99Wbz5s3mlVdeMdHR0ebZZ58N1Nf0u9P127Rp08yVV17p8fN3+PBhjzZnW79NmDDBvPDCC2bz5s1m48aN5rvf/a7p3bu3OXbsmLuNP34vd+3aZWJiYkxubq4pLi42Tz31lLHZbGbVqlUB/b7+0p5+u+yyy8yMGTM8ft6OHj3q3n+29dvf/vY3s2LFCvP555+b7du3m/vuu89ERkaazZs3G2P4OfMGwcwLo0aNMjNnznS/djqdpmfPniY/Pz+IVQVPXl6eGTZsWKv7KioqTGRkpPnzn//s3rZ161YjyRQVFRljjv/Fa7VaTWlpqbvNM888YxISEkx9fX2H1h4s3wwYLpfLpKWlmccff9y9raKiwjgcDvPKK68YY4wpLi42ksxHH33kbvPWW28Zi8VivvrqK2OMMU8//bTp0qWLR7/dc889ZuDAgR38jQKjrWB2zTXXtPke+s2YAwcOGEnm3XffNcb47/fyF7/4hbngggs8Pmvy5MlmwoQJHf2VAuKb/WbM8WB2xx13tPke+s2YLl26mOeff56fMy9xKvMMNTQ0aP369crJyXFvs1qtysnJUVFRURArC64dO3aoZ8+e6t+/v66//nqVlJRIktavX6/GxkaP/ho0aJB69+7t7q+ioiINGTLEPQGgJE2YMEGVlZXasmVLYL9IkOzevVulpaUe/ZSYmKisrCyPfkpKStLIkSPdbXJycmS1WvXhhx+624wbN052u93dZsKECdq+fbuOHDkSoG8TeIWFhUpJSdHAgQN122236dChQ+599Jt09OhRSVLXrl0l+e/3sqioyOMYzW3C5b+F3+y3Zi+99JKSk5M1ePBgzZ49WzU1Ne59Z3O/OZ1OLVu2TNXV1crOzubnzEvM/H+GysvL5XQ6PX6IJCk1NVXbtm0LUlXBlZWVpRdffFEDBw7U/v37NW/ePI0dO1abN29WaWmp7Ha7kpKSPN6Tmpqq0tJSSVJpaWmr/dm872zQ/D1b64eT+yklJcVjf0REhLp27erRpl+/fi2O0byvS5cuHVJ/MF155ZW69tpr1a9fP33xxRe67777dNVVV6moqEg2m+2s7zeXy6Wf/exnGjNmjHs2c3/9XrbVprKyUrW1tYqOju6IrxQQrfWbJF133XXq06ePevbsqU2bNumee+7R9u3b9dprr0k6O/vts88+U3Z2turq6hQXF6fXX39dmZmZ2rhxIz9nXiCYwWdXXXWV+/nQoUOVlZWlPn366E9/+lPY/cIg9Pz4xz92Px8yZIiGDh2qc845R4WFhRo/fnwQKwsNM2fO1ObNm/X+++8Hu5ROpa1+u+WWW9zPhwwZoh49emj8+PH64osvdM455wS6zJAwcOBAbdy4UUePHtWrr76qadOm6d133w12WZ0WpzLPUHJysmw2W4u7SsrKypSWlhakqkJLUlKSzjvvPO3cuVNpaWlqaGhQRUWFR5uT+ystLa3V/mzedzZo/p6n+rlKS0vTgQMHPPY3NTXp8OHD9OVJ+vfvr+TkZO3cuVPS2d1vs2bN0ptvvql33nlHvXr1cm/31+9lW20SEhI69T/K2uq31mRlZUmSx8/b2dZvdrtdAwYM0IgRI5Sfn69hw4bp17/+NT9nXiKYnSG73a4RI0aooKDAvc3lcqmgoEDZ2dlBrCx0HDt2TF988YV69OihESNGKDIy0qO/tm/frpKSEnd/ZWdn67PPPvP4y3P16tVKSEhQZmZmwOsPhn79+iktLc2jnyorK/Xhhx969FNFRYXWr1/vbvPPf/5TLpfL/ZdDdna23nvvPTU2NrrbrF69WgMHDuzUp+POxL59+3To0CH16NFD0tnZb8YYzZo1S6+//rr++c9/tjhN66/fy+zsbI9jNLfprP8tPF2/tWbjxo2S5PHzdrb12ze5XC7V19fzc+atYN990BktW7bMOBwO8+KLL5ri4mJzyy23mKSkJI+7Ss4md911lyksLDS7d+82//rXv0xOTo5JTk42Bw4cMMYcv126d+/e5p///Kf5+OOPTXZ2tsnOzna/v/l26SuuuMJs3LjRrFq1ynTv3j3spsuoqqoyGzZsMBs2bDCSzJNPPmk2bNhgvvzyS2PM8ekykpKSzF//+lezadMmc80117Q6XcaFF15oPvzwQ/P++++bc88912Pah4qKCpOammpuuOEGs3nzZrNs2TITExPTaad9MObU/VZVVWV+/vOfm6KiIrN7927z9ttvm4suusice+65pq6uzn2Ms63fbrvtNpOYmGgKCws9pnWoqalxt/HH72XzNAZ333232bp1q1m0aFGnnsbgdP22c+dOM3/+fPPxxx+b3bt3m7/+9a+mf//+Zty4ce5jnG39du+995p3333X7N6922zatMnce++9xmKxmH/84x/GGH7OvEEw89JTTz1levfubex2uxk1apRZu3ZtsEsKmsmTJ5sePXoYu91u0tPTzeTJk83OnTvd+2tra81PfvIT06VLFxMTE2O+//3vm/3793scY8+ePeaqq64y0dHRJjk52dx1112msbEx0F+lQ73zzjtGUovHtGnTjDHHp8yYM2eOSU1NNQ6Hw4wfP95s377d4xiHDh0yU6ZMMXFxcSYhIcFMnz7dVFVVebT59NNPzaWXXmocDodJT083CxYsCNRX7BCn6reamhpzxRVXmO7du5vIyEjTp08fM2PGjBb/SDrb+q21/pJkXnjhBXcbf/1evvPOO2b48OHGbreb/v37e3xGZ3O6fispKTHjxo0zXbt2NQ6HwwwYMMDcfffdHvOYGXN29dv/+3//z/Tp08fY7XbTvXt3M378eHcoM4afM29YjDEmcONzAAAAaAvXmAEAAIQIghkAAECIIJgBAACECIIZAABAiCCYAQAAhAiCGQAAQIggmAEAAIQIghkAAECIIJgBCDk33nijJk2aFOwyACDgCGYAAAAhgmAGIGheffVVDRkyRNHR0erWrZtycnJ099136/e//73++te/ymKxyGKxqLCwUJK0d+9e/ehHP1JSUpK6du2qa665Rnv27HEfr3mkbd68eerevbsSEhJ06623qqGh4ZSfWV1dHeBvDgCtiwh2AQDOTvv379eUKVP02GOP6fvf/76qqqq0Zs0aTZ06VSUlJaqsrNQLL7wgSeratasaGxs1YcIEZWdna82aNYqIiNBDDz2kK6+8Ups2bZLdbpckFRQUKCoqSoWFhdqzZ4+mT5+ubt266eGHH27zM1kyGECoIJgBCIr9+/erqalJ1157rfr06SNJGjJkiCQpOjpa9fX1SktLc7f/4x//KJfLpeeff14Wi0WS9MILLygpKUmFhYW64oorJEl2u11Lly5VTEyMLrjgAs2fP1933323HnzwwVN+JgCEAk5lAgiKYcOGafz48RoyZIh++MMfasmSJTpy5Eib7T/99FPt3LlT8fHxiouLU1xcnLp27aq6ujp98cUXHseNiYlxv87OztaxY8e0d+/eM/5MAAg0ghmAoLDZbFq9erXeeustZWZm6qmnntLAgQO1e/fuVtsfO3ZMI0aM0MaNGz0en3/+ua677roO+UwACDSCGYCgsVgsGjNmjObNm6cNGzbIbrfr9ddfl91ul9Pp9Gh70UUXaceOHUpJSdGAAQM8HomJie52n376qWpra92v165dq7i4OGVkZJzyMwEgFBDMAATFhx9+qEceeUQff/yxSkpK9Nprr+ngwYM6//zz1bdvX23atEnbt29XeXm5Ghsbdf311ys5OVnXXHON1qxZo927d6uwsFC333679u3b5z5uQ0ODbrrpJhUXF2vlypXKy8vTrFmzZLVaT/mZABAKuPgfQFAkJCTovffe08KFC1VZWak+ffroiSee0FVXXaWRI0eqsLBQI0eO1LFjx/TOO+/o8ssv13vvvad77rlH1157raqqqpSenq7x48crISHBfdzx48fr3HPP1bhx41RfX68pU6bogQceOO1nAkAosBjuEwcQJm688UZVVFTojTfeCHYpAOAVTmUCAACECIIZAABAiOBUJgAAQIhgxAwAACBEEMwAAABCBMEMAAAgRBDMAAAAQgTBDAAAIEQQzAAAAEIEwQwAACBEEMwAAABCBMEMAAAgRPx/lds5R+Ac8eYAAAAASUVORK5CYII=", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax1 = plt.subplots()\n", - "\n", - "steps = [step for step in range(0, num_steps, 100)]\n", - "color = 'tab:red'\n", - "ax1.set_xlabel('steps')\n", - "ax1.set_ylabel('loss', color=color)\n", - "ax1.plot(steps, loss, color=color)\n", - "ax1.tick_params(axis='y', labelcolor=color)\n", - "\n", - "ax2 = ax1.twinx() # instantiate a second axes that shares the same x-axis\n", - "\n", - "color = 'tab:blue'\n", - "ax2.set_ylabel('rewards', color=color) # we already handled the x-label with ax1\n", - "ax2.plot(steps, rewards[:200], color=color)\n", - "ax2.tick_params(axis='y', labelcolor=color)\n", - "\n", - "fig.tight_layout() # otherwise the right y-label is slightly clipped\n", - "plt.show()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Test" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.96it/s]/s]\n", + " 7%|▋ | 202/3000 [01:14<09:02, 5.16it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 200: loss = -0.40187013149261475, reward = 1.2897497415542603\n" + ] + }, { "name": "stderr", "output_type": "stream", "text": [ - " 0%| | 0/50 [00:00 1\u001b[0m loss_test, observations_test, rewards_test \u001b[39m=\u001b[39m train(agent, test_env, test_env, steps \u001b[39m=\u001b[39m num_steps, eval_interval\u001b[39m=\u001b[39m\u001b[39m100\u001b[39m)\n", - "\u001b[0;31mNameError\u001b[0m: name 'train' is not defined" + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.75it/s]/s]\n", + " 17%|█▋ | 502/3000 [02:00<08:04, 5.15it/s]" ] - } - ], - "source": [ - "loss_test, observations_test, rewards_test = train(agent, test_env, test_env, steps = num_steps, eval_interval=100)" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 500: loss = -0.40200239419937134, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 77.16it/s]/s]\n", + " 20%|██ | 602/3000 [02:15<08:30, 4.70it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 600: loss = -0.4066748321056366, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 80.21it/s]/s]\n", + " 23%|██▎ | 702/3000 [02:29<07:22, 5.20it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 700: loss = -0.40431803464889526, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 21.73it/s]/s]\n", + " 27%|██▋ | 802/3000 [02:45<13:03, 2.80it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 800: loss = -0.40389442443847656, reward = 1.2480151653289795\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.72it/s]/s]\n", + " 30%|███ | 902/3000 [03:00<06:44, 5.18it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 900: loss = -0.5171404480934143, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.99it/s]t/s]\n", + " 33%|███▎ | 1002/3000 [03:14<06:29, 5.13it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1000: loss = -0.40201324224472046, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 77.99it/s]t/s]\n", + " 37%|███▋ | 1102/3000 [03:29<06:10, 5.13it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1100: loss = -0.4019290506839752, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.55it/s]t/s]\n", + " 40%|████ | 1202/3000 [03:44<05:48, 5.16it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1200: loss = -0.40204358100891113, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 77.14it/s]t/s]\n", + " 43%|████▎ | 1302/3000 [03:59<05:38, 5.02it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1300: loss = -0.4021153450012207, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 77.81it/s]t/s]\n", + " 47%|████▋ | 1401/3000 [04:14<05:51, 4.55it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1400: loss = -0.40204861760139465, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.28it/s]t/s]\n", + " 50%|█████ | 1502/3000 [04:29<04:56, 5.05it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1500: loss = -0.40198034048080444, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.72it/s]t/s]\n", + " 53%|█████▎ | 1602/3000 [04:44<04:30, 5.17it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1600: loss = -0.40258926153182983, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.95it/s]t/s]\n", + " 57%|█████▋ | 1702/3000 [04:59<04:11, 5.16it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1700: loss = -0.402495801448822, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 78.22it/s]t/s]\n", + " 60%|██████ | 1802/3000 [05:14<03:51, 5.18it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1800: loss = -0.4020422101020813, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.47it/s]t/s]\n", + " 63%|██████▎ | 1902/3000 [05:29<04:13, 4.34it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1900: loss = -0.4019875228404999, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 77.96it/s]t/s]\n", + " 67%|██████▋ | 2002/3000 [05:44<03:15, 5.11it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2000: loss = -0.4020099639892578, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.34it/s]t/s]\n", + " 70%|███████ | 2102/3000 [06:00<02:53, 5.16it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2100: loss = -0.40153512358665466, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 65.60it/s]t/s]\n", + " 73%|███████▎ | 2202/3000 [06:15<02:49, 4.71it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2200: loss = -0.400035560131073, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 78.02it/s]t/s]\n", + " 77%|███████▋ | 2302/3000 [06:30<02:15, 5.15it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2300: loss = -0.4024899899959564, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 69.43it/s]t/s]\n", + " 80%|████████ | 2402/3000 [06:44<02:04, 4.79it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2400: loss = -0.40124115347862244, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 73.77it/s]t/s]\n", + " 83%|████████▎ | 2502/3000 [06:59<01:49, 4.56it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2500: loss = -0.40203845500946045, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 77.88it/s]t/s]\n", + " 87%|████████▋ | 2602/3000 [07:13<01:18, 5.08it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2600: loss = -0.40201422572135925, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 79.02it/s]t/s]\n", + " 90%|█████████ | 2702/3000 [07:28<00:57, 5.15it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2700: loss = -0.40200597047805786, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 78.86it/s]t/s]\n", + " 93%|█████████▎| 2802/3000 [07:43<00:38, 5.12it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2800: loss = -0.4020169675350189, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:00<00:00, 78.20it/s]t/s]\n", + " 97%|█████████▋| 2902/3000 [07:57<00:20, 4.88it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2900: loss = -0.40141090750694275, reward = 1.2897497415542603\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 3000/3000 [08:11<00:00, 6.10it/s]\n", + "100%|██████████| 50/50 [00:30<00:00, 1.65it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AVG RETURN - KAFKA: -1.0951742\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# Train on first\n", + "collect_driver, replay_buffer = get_rb_and_cd(train_env, agent)\n", + "loss, observations, rewards = train(\n", + " agent, train_env, train_env_copy, collect_driver, replay_buffer, steps = num_steps, eval_interval=100)\n", + "\n", + "print(\"AVG RETURN - KAFKA:\", \n", + " compute_avg_return_episodic(train_env_2, agent.policy, num_episodes=50))" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.75it/s]\n", + " 0%| | 1/3000 [00:12<10:45:41, 12.92s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 0: loss = 0.23992592096328735, reward = -1.094357967376709\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:12<00:00, 1.65it/s]s/it]\n", + " 3%|▎ | 101/3000 [02:48<4:07:08, 5.12s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 100: loss = -0.04756331071257591, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:12<00:00, 1.56it/s]s/it]\n", + " 7%|▋ | 201/3000 [05:32<4:20:18, 5.58s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 200: loss = 0.01569918729364872, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]s/it]\n", + " 10%|█ | 301/3000 [08:14<3:35:36, 4.79s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 300: loss = 0.027913261204957962, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]s/it]\n", + " 13%|█▎ | 401/3000 [10:51<3:28:08, 4.81s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 400: loss = 0.026388660073280334, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]s/it]\n", + " 17%|█▋ | 501/3000 [13:29<3:30:47, 5.06s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 500: loss = 0.050847191363573074, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.71it/s]it] \n", + " 20%|██ | 601/3000 [16:08<3:19:06, 4.98s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 600: loss = 0.05089189484715462, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]it] \n", + " 23%|██▎ | 701/3000 [18:43<3:06:54, 4.88s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 700: loss = 0.05062983185052872, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.71it/s]it] \n", + " 27%|██▋ | 801/3000 [21:22<3:01:49, 4.96s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 800: loss = 0.05028387904167175, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]it] \n", + " 30%|███ | 901/3000 [23:59<2:47:50, 4.80s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 900: loss = 0.04961911588907242, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 33%|███▎ | 1001/3000 [26:36<2:39:13, 4.78s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1000: loss = 0.04881724342703819, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 37%|███▋ | 1101/3000 [29:08<2:30:42, 4.76s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1100: loss = 0.04760364443063736, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 40%|████ | 1201/3000 [31:42<2:22:38, 4.76s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1200: loss = 0.04574316367506981, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 43%|████▎ | 1301/3000 [34:14<2:21:03, 4.98s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1300: loss = 0.04151776432991028, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 47%|████▋ | 1401/3000 [36:47<2:07:11, 4.77s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1400: loss = 0.0467989556491375, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.73it/s]/it] \n", + " 50%|█████ | 1501/3000 [39:21<2:02:05, 4.89s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1500: loss = 0.047061603516340256, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 53%|█████▎ | 1601/3000 [41:54<1:51:30, 4.78s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1600: loss = 0.04712197184562683, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 57%|█████▋ | 1701/3000 [44:27<1:43:34, 4.78s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1700: loss = 0.04722379893064499, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:12<00:00, 1.63it/s]/it] \n", + " 60%|██████ | 1801/3000 [47:01<1:42:02, 5.11s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1800: loss = 0.046851687133312225, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.70it/s]/it] \n", + " 63%|██████▎ | 1901/3000 [49:56<1:30:36, 4.95s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1900: loss = 0.04698016494512558, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 67%|██████▋ | 2001/3000 [52:29<1:18:55, 4.74s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2000: loss = 0.046965342015028, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 70%|███████ | 2101/3000 [55:04<1:11:31, 4.77s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2100: loss = 0.04709947854280472, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 73%|███████▎ | 2201/3000 [57:36<1:03:22, 4.76s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2200: loss = 0.034701552242040634, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.75it/s]3s/it]\n", + " 77%|███████▋ | 2301/3000 [1:00:13<57:22, 4.93s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2300: loss = 0.0582413375377655, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.71it/s]3s/it]\n", + " 80%|████████ | 2401/3000 [1:02:56<49:52, 5.00s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2400: loss = 0.0011234291596338153, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:10<00:00, 1.83it/s]9s/it] \n", + " 83%|████████▎ | 2501/3000 [1:41:12<43:19, 5.21s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2500: loss = 0.059934187680482864, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.68it/s]1s/it] \n", + " 87%|████████▋ | 2601/3000 [1:45:04<33:39, 5.06s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2600: loss = -0.014887774363160133, reward = -1.095718264579773\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]0s/it]\n", + " 90%|█████████ | 2701/3000 [1:47:42<23:39, 4.75s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2700: loss = 0.013810863718390465, reward = -0.7224888801574707\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.71it/s]8s/it]\n", + " 93%|█████████▎| 2801/3000 [1:50:18<16:30, 4.98s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2800: loss = 0.017519423738121986, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]9s/it]\n", + " 97%|█████████▋| 2901/3000 [1:52:50<07:49, 4.74s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2900: loss = 0.020173329859972, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 3000/3000 [1:55:14<00:00, 2.30s/it]\n", + "100%|██████████| 50/50 [00:35<00:00, 1.42it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AVG RETURN - KAFKA: -0.72248244\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# Train on second\n", + "collect_driver, replay_buffer = get_rb_and_cd(train_env_2, agent)\n", + "loss, observations, rewards = train(\n", + " agent, train_env_2, train_env_2_copy, collect_driver, replay_buffer, steps = num_steps, eval_interval=100)\n", + "\n", + "print(\"AVG RETURN - KAFKA:\", \n", + " compute_avg_return_episodic(train_env_2, agent.policy, num_episodes=50))\n" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:28<00:00, 1.75it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AVG RETURN - TEST: -0.09791789\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.69it/s]\n", + " 0%| | 1/3000 [00:13<11:13:44, 13.48s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 0: loss = -0.04970337077975273, reward = -0.06765811145305634\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.69it/s]s/it]\n", + " 3%|▎ | 101/3000 [02:58<3:59:28, 4.96s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 100: loss = -0.002319173188880086, reward = -0.11809100955724716\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.72it/s]s/it]\n", + " 7%|▋ | 201/3000 [05:34<3:49:03, 4.91s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 200: loss = -0.001999561209231615, reward = -0.11809100955724716\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.73it/s]/s] \n", + " 10%|█ | 301/3000 [07:57<2:55:25, 3.90s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 300: loss = 0.637097179889679, reward = -0.11809100955724716\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.67it/s]/s] \n", + " 13%|█▎ | 401/3000 [08:48<2:53:10, 4.00s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 400: loss = 0.3378632962703705, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]/s] \n", + " 17%|█▋ | 501/3000 [09:44<2:40:10, 3.85s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 500: loss = 0.29114043712615967, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.72it/s]/s] \n", + " 20%|██ | 601/3000 [10:46<2:37:43, 3.94s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 600: loss = 0.27805569767951965, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/s] \n", + " 23%|██▎ | 701/3000 [11:45<2:25:07, 3.79s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 700: loss = 0.2481951117515564, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.80it/s]/s] \n", + " 27%|██▋ | 801/3000 [12:51<2:23:01, 3.90s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 800: loss = 0.26682373881340027, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:12<00:00, 1.63it/s]/s] \n", + " 30%|███ | 901/3000 [13:55<2:25:32, 4.16s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 900: loss = 0.2887151837348938, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.81it/s]t/s] \n", + " 33%|███▎ | 1001/3000 [15:00<2:04:19, 3.73s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1000: loss = 0.24205642938613892, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]t/s] \n", + " 37%|███▋ | 1101/3000 [16:01<2:01:58, 3.85s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1100: loss = 0.23392656445503235, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.80it/s]t/s] \n", + " 40%|████ | 1201/3000 [17:02<1:54:06, 3.81s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1200: loss = 0.20439070463180542, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.70it/s]t/s] \n", + " 43%|████▎ | 1301/3000 [18:01<1:53:04, 3.99s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1300: loss = 0.2279774695634842, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.81it/s]t/s] \n", + " 47%|████▋ | 1401/3000 [19:05<1:41:22, 3.80s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1400: loss = 0.2342691570520401, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.80it/s]t/s] \n", + " 50%|█████ | 1501/3000 [20:05<1:33:27, 3.74s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1500: loss = 0.23698203265666962, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]t/s] \n", + " 53%|█████▎ | 1601/3000 [21:05<1:29:33, 3.84s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1600: loss = 0.21993388235569, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.75it/s]t/s] \n", + " 57%|█████▋ | 1701/3000 [22:06<1:26:33, 4.00s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1700: loss = 0.239291712641716, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.81it/s]t/s] \n", + " 60%|██████ | 1801/3000 [23:04<1:15:58, 3.80s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1800: loss = 0.19207340478897095, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.75it/s]t/s] \n", + " 63%|██████▎ | 1901/3000 [24:04<1:09:45, 3.81s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1900: loss = 0.19634351134300232, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.71it/s]t/s] \n", + " 67%|██████▋ | 2001/3000 [25:05<1:06:28, 3.99s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2000: loss = 0.18686339259147644, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]t/s] \n", + " 70%|███████ | 2101/3000 [26:08<57:38, 3.85s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2100: loss = 0.20166490972042084, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]t/s]\n", + " 73%|███████▎ | 2201/3000 [27:07<51:20, 3.86s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2200: loss = 0.18926644325256348, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]t/s]\n", + " 77%|███████▋ | 2301/3000 [28:06<44:31, 3.82s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2300: loss = 0.20836588740348816, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]t/s]\n", + " 80%|████████ | 2401/3000 [29:06<38:39, 3.87s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2400: loss = 0.13284115493297577, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.76it/s]t/s]\n", + " 83%|████████▎ | 2501/3000 [30:08<33:17, 4.00s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2500: loss = 0.16821995377540588, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:12<00:00, 1.66it/s]t/s]\n", + " 87%|████████▋ | 2601/3000 [31:07<27:03, 4.07s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2600: loss = 0.14804477989673615, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.81it/s]t/s]\n", + " 90%|█████████ | 2701/3000 [32:06<18:35, 3.73s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2700: loss = 0.10050634294748306, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.74it/s]t/s]\n", + " 93%|█████████▎| 2801/3000 [33:07<12:46, 3.85s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2800: loss = 0.07741110026836395, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.76it/s]t/s]\n", + " 97%|█████████▋| 2901/3000 [34:07<06:22, 3.87s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2900: loss = 0.2126760482788086, reward = 0.1518501341342926\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 3000/3000 [34:52<00:00, 1.43it/s]\n", + "100%|██████████| 50/50 [00:28<00:00, 1.77it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AVG RETURN - TEST: 0.15185018\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "\n", + "print(\"AVG RETURN - TEST:\", \n", + " compute_avg_return_episodic(test_env, agent.policy, num_episodes=50))\n", + "\n", + "# Test environment\n", + "collect_driver, replay_buffer = get_rb_and_cd(test_env, agent)\n", + "loss, observations, rewards = train(\n", + " agent, test_env, test_env_copy, collect_driver, replay_buffer, steps = num_steps, eval_interval=100)\n", + "\n", + "print(\"AVG RETURN - TEST:\", \n", + " compute_avg_return_episodic(test_env, agent.policy, num_episodes=50))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Final results." + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:00<00:00, 74.34it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AVG RETURN - AVRORA: 1.2897495\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:28<00:00, 1.78it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AVG RETURN - KAFKA: -0.6872998\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:27<00:00, 1.79it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AVG RETURN - TEST: 0.15185018\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "print(\"AVG RETURN - AVRORA:\", \n", + " compute_avg_return_episodic(train_env, agent.policy, num_episodes=50))\n", + "\n", + "print(\"AVG RETURN - KAFKA:\", \n", + " compute_avg_return_episodic(train_env_2, agent.policy, num_episodes=50))\n", + "\n", + "print(\"AVG RETURN - TEST:\", \n", + " compute_avg_return_episodic(test_env, agent.policy, num_episodes=50))" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.76it/s]\n", + " 0%| | 1/3000 [00:12<10:40:12, 12.81s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 0: loss = 1.0708450078964233, reward = -0.6872997283935547\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.69it/s]s/it]\n", + " 3%|▎ | 101/3000 [02:49<4:07:36, 5.12s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 100: loss = 0.01032012328505516, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.75it/s]s/it]\n", + " 7%|▋ | 201/3000 [05:24<3:54:44, 5.03s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 200: loss = 0.008337455801665783, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:12<00:00, 1.65it/s]s/it]\n", + " 10%|█ | 301/3000 [08:04<3:49:26, 5.10s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 300: loss = 0.015153888612985611, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]it] \n", + " 13%|█▎ | 401/3000 [10:41<3:25:02, 4.73s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 400: loss = 0.04072941467165947, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.82it/s]it] \n", + " 17%|█▋ | 501/3000 [13:13<3:16:34, 4.72s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 500: loss = 0.025839729234576225, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.70it/s]it] \n", + " 20%|██ | 601/3000 [15:49<3:18:07, 4.96s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 600: loss = 0.04873916134238243, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]it] \n", + " 23%|██▎ | 701/3000 [18:24<3:02:58, 4.78s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 700: loss = 0.0132971853017807, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.76it/s]it] \n", + " 27%|██▋ | 801/3000 [21:03<2:57:36, 4.85s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 800: loss = 0.025136852636933327, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.76it/s]it] \n", + " 30%|███ | 901/3000 [23:40<2:49:57, 4.86s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 900: loss = 0.04865988716483116, reward = -0.7224825620651245\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.76it/s]/it] \n", + " 33%|███▎ | 1001/3000 [26:15<2:41:14, 4.84s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1000: loss = -0.060474611818790436, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.68it/s]/it] \n", + " 37%|███▋ | 1101/3000 [28:50<2:38:56, 5.02s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1100: loss = 0.001056360430084169, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.74it/s]/it] \n", + " 40%|████ | 1201/3000 [31:31<2:26:28, 4.89s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1200: loss = 0.0018581876065582037, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.75it/s]/it] \n", + " 43%|████▎ | 1301/3000 [34:09<2:17:57, 4.87s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1300: loss = -0.0023872079327702522, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.75it/s]/it] \n", + " 47%|████▋ | 1401/3000 [36:44<2:10:01, 4.88s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1400: loss = 0.01805002987384796, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 50%|█████ | 1501/3000 [39:19<1:58:40, 4.75s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1500: loss = -0.055307794362306595, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.79it/s]/it] \n", + " 53%|█████▎ | 1601/3000 [41:51<1:50:34, 4.74s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1600: loss = 0.0010385647183284163, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]/it] \n", + " 57%|█████▋ | 1701/3000 [44:23<1:44:25, 4.82s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1700: loss = -0.05765068158507347, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]/it] \n", + " 60%|██████ | 1801/3000 [46:57<1:36:52, 4.85s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1800: loss = 0.0410073883831501, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]/it] \n", + " 63%|██████▎ | 1901/3000 [49:31<1:27:47, 4.79s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1900: loss = -0.022543426603078842, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]/it] \n", + " 67%|██████▋ | 2001/3000 [52:04<1:20:01, 4.81s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2000: loss = -0.03834795951843262, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]/it] \n", + " 70%|███████ | 2101/3000 [54:39<1:12:04, 4.81s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2100: loss = 0.038611143827438354, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]/it] \n", + " 73%|███████▎ | 2201/3000 [57:13<1:04:08, 4.82s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2200: loss = 0.015484925359487534, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]/it] \n", + " 77%|███████▋ | 2301/3000 [59:46<55:41, 4.78s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2300: loss = 0.0068712797947227955, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]4s/it]\n", + " 80%|████████ | 2401/3000 [1:02:20<48:12, 4.83s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2400: loss = -0.011624114587903023, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]1s/it]\n", + " 83%|████████▎ | 2501/3000 [1:04:53<39:50, 4.79s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2500: loss = 0.06061023101210594, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]2s/it]\n", + " 87%|████████▋ | 2601/3000 [1:07:27<31:59, 4.81s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2600: loss = -0.005472162738442421, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.76it/s]2s/it]\n", + " 90%|█████████ | 2701/3000 [1:10:00<24:03, 4.83s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2700: loss = 0.0006865133182145655, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.77it/s]1s/it]\n", + " 93%|█████████▎| 2801/3000 [1:12:35<15:55, 4.80s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2800: loss = 0.0014395256293937564, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:11<00:00, 1.78it/s]2s/it]\n", + " 97%|█████████▋| 2901/3000 [1:15:08<07:56, 4.81s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2900: loss = 0.004877780564129353, reward = -0.1822998821735382\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 3000/3000 [1:17:28<00:00, 1.55s/it]\n", + "100%|██████████| 50/50 [00:28<00:00, 1.77it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AVG RETURN - KAFKA: -0.18229994\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# Continue to train on second\n", + "collect_driver, replay_buffer = get_rb_and_cd(train_env_2, agent)\n", + "loss, observations, rewards = train(\n", + " agent, train_env_2, train_env_2_copy, collect_driver, replay_buffer, steps = num_steps, eval_interval=100)\n", + "\n", + "print(\"AVG RETURN - KAFKA:\", \n", + " compute_avg_return_episodic(train_env_2, agent.policy, num_episodes=50))\n" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: kafka (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.34],\n", + " Env. default goal value: 0.34,\n", + "\n", + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: avrora (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.47],\n", + " Env. default goal value: 0.47,\n", + "\n", + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: kafka (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.34],\n", + " Env. default goal value: 0.34,\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + " 0%| | 0/10000 [00:00" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plot_training(loss, rewards, num_steps, 100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Test" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "train_checkpointer.initialize_or_restore()\n", + "global_step = tf.compat.v1.train.get_global_step()\n", + "saved_policy = tf.saved_model.load(policy_dir)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: test (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.57],\n", + " Env. default goal value: 0.57,\n", + "\n", + "Successfully initialized a JVM Environment!\n", + " JDK: jdk-11.0.20.1.jdk/bin,\n", + " Benchmark: test (dacapo-bench.jar),\n", + " Number of iterations: 5,\n", + " Goal: avgGCPause,\n", + " Number of JVM options: 2,\n", + " JVM options: {'MaxTenuringThreshold': {'min': 1, 'max': 16}, 'ParallelGCThreads': {'min': 4, 'max': 24}},\n", + " Env. default state: [list([7, 12]) 0.57],\n", + " Env. default goal value: 0.57,\n", + "\n" + ] + } + ], + "source": [ + "test_env = get_tf_env(\"test\", env_args)\n", + "test_env_copy = get_tf_env(\"test\", env_args)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:16<00:00, 3.06it/s]\n" + ] + }, + { + "data": { + "text/plain": [ + "-0.122350894" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "compute_avg_return_episodic(test_env, agent.policy, num_episodes=50)" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.02it/s]\n", + " 0%| | 3/5000 [00:06<2:29:07, 1.79s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 0: loss = -0.08275873959064484, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.06it/s]s] \n", + " 2%|▏ | 103/5000 [00:20<1:01:50, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 100: loss = 0.027595680207014084, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.07it/s]/s] \n", + " 4%|▍ | 203/5000 [00:33<1:00:14, 1.33it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 200: loss = 0.01597478985786438, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.03it/s]/s] \n", + " 6%|▌ | 303/5000 [00:47<59:38, 1.31it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 300: loss = 0.07849355041980743, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]/s]\n", + " 8%|▊ | 403/5000 [01:00<57:59, 1.32it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 400: loss = 0.07866153120994568, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.06it/s]/s]\n", + " 10%|█ | 503/5000 [01:13<56:36, 1.32it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 500: loss = 0.0788775384426117, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.06it/s]/s]\n", + " 12%|█▏ | 603/5000 [01:27<55:18, 1.33it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 600: loss = 0.03862088546156883, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.03it/s]/s]\n", + " 14%|█▍ | 703/5000 [01:40<54:29, 1.31it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 700: loss = 0.020812472328543663, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]/s]\n", + " 16%|█▌ | 803/5000 [01:54<52:54, 1.32it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 800: loss = 0.030953237786889076, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]/s]\n", + " 18%|█▊ | 903/5000 [02:07<51:42, 1.32it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 900: loss = -0.07765475660562515, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 2.88it/s]/s]\n", + " 20%|██ | 1003/5000 [02:21<53:21, 1.25it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1000: loss = 0.06647924333810806, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 2.98it/s]t/s]\n", + " 22%|██▏ | 1103/5000 [02:34<50:21, 1.29it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1100: loss = 0.07829032093286514, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.08it/s]t/s]\n", + " 24%|██▍ | 1203/5000 [02:48<47:26, 1.33it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1200: loss = 0.07940496504306793, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.09it/s]t/s]\n", + " 26%|██▌ | 1303/5000 [03:01<45:59, 1.34it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1300: loss = 0.03141622990369797, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.09it/s]t/s]\n", + " 28%|██▊ | 1403/5000 [03:14<44:50, 1.34it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1400: loss = 0.055435724556446075, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.10it/s]t/s]\n", + " 30%|███ | 1503/5000 [03:27<43:22, 1.34it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1500: loss = 0.06776073575019836, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.10it/s]t/s]\n", + " 32%|███▏ | 1603/5000 [03:41<42:07, 1.34it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1600: loss = 0.0697450116276741, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 2.94it/s]t/s]\n", + " 34%|███▍ | 1703/5000 [03:54<43:14, 1.27it/s] " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1700: loss = 0.0339801087975502, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 2.95it/s]t/s]\n", + " 36%|███▌ | 1803/5000 [04:08<41:34, 1.28it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1800: loss = 0.06431885808706284, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 2.86it/s]t/s]\n", + " 38%|███▊ | 1903/5000 [04:22<41:33, 1.24it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 1900: loss = 0.0638260543346405, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 2.88it/s]t/s]\n", + " 40%|████ | 2003/5000 [04:36<39:58, 1.25it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2000: loss = -0.06647807359695435, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 2.97it/s]t/s]\n", + " 42%|████▏ | 2103/5000 [04:50<37:27, 1.29it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2100: loss = 0.06989308446645737, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.04it/s]t/s]\n", + " 44%|████▍ | 2203/5000 [05:03<35:25, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2200: loss = 0.07144589722156525, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]t/s]\n", + " 46%|████▌ | 2303/5000 [05:16<34:00, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2300: loss = 0.017992911860346794, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]t/s]\n", + " 48%|████▊ | 2403/5000 [05:30<32:49, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2400: loss = 0.06617488712072372, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]t/s]\n", + " 50%|█████ | 2503/5000 [05:43<31:27, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2500: loss = 0.06551690399646759, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.04it/s]t/s]\n", + " 52%|█████▏ | 2603/5000 [05:57<30:18, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2600: loss = 0.06771502643823624, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 2.98it/s]t/s]\n", + " 54%|█████▍ | 2703/5000 [06:10<29:36, 1.29it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2700: loss = 0.01253617275506258, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.04it/s]t/s]\n", + " 56%|█████▌ | 2803/5000 [06:24<27:46, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2800: loss = 0.0662756860256195, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.02it/s]t/s]\n", + " 58%|█████▊ | 2903/5000 [06:37<26:43, 1.31it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 2900: loss = 0.06570452451705933, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.04it/s]t/s]\n", + " 60%|██████ | 3003/5000 [06:50<25:14, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3000: loss = 0.0676717460155487, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.06it/s]t/s]\n", + " 62%|██████▏ | 3103/5000 [07:04<23:52, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3100: loss = 0.015165931545197964, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.06it/s]t/s]\n", + " 64%|██████▍ | 3203/5000 [07:17<22:37, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3200: loss = 0.06071428209543228, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.04it/s]t/s]\n", + " 66%|██████▌ | 3303/5000 [07:31<21:27, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3300: loss = 0.05883081629872322, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]t/s]\n", + " 68%|██████▊ | 3403/5000 [07:44<20:11, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3400: loss = 0.05168354883790016, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.06it/s]t/s]\n", + " 70%|███████ | 3503/5000 [07:57<18:50, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3500: loss = 0.017617255449295044, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.03it/s]t/s]\n", + " 72%|███████▏ | 3603/5000 [08:11<17:45, 1.31it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3600: loss = 0.054672833532094955, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.04it/s]t/s]\n", + " 74%|███████▍ | 3703/5000 [08:24<16:22, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3700: loss = 0.07289864867925644, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]t/s]\n", + " 76%|███████▌ | 3803/5000 [08:38<15:06, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3800: loss = 0.06126633659005165, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]t/s]\n", + " 78%|███████▊ | 3903/5000 [08:51<13:51, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 3900: loss = 0.012533322907984257, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.06it/s]t/s]\n", + " 80%|████████ | 4003/5000 [09:05<12:33, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4000: loss = 0.0729455053806305, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.03it/s]t/s]\n", + " 82%|████████▏ | 4103/5000 [09:18<11:23, 1.31it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4100: loss = 0.060445066541433334, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.06it/s]t/s]\n", + " 84%|████████▍ | 4203/5000 [09:31<10:01, 1.33it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4200: loss = -0.08400257676839828, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.04it/s]t/s]\n", + " 86%|████████▌ | 4303/5000 [09:45<08:49, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4300: loss = 0.0662526786327362, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.06it/s]t/s]\n", + " 88%|████████▊ | 4403/5000 [09:58<07:31, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4400: loss = 0.0637577548623085, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 2.87it/s]t/s]\n", + " 90%|█████████ | 4503/5000 [10:12<06:38, 1.25it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4500: loss = 0.05468904227018356, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.00it/s]t/s]\n", + " 92%|█████████▏| 4603/5000 [10:26<05:05, 1.30it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4600: loss = 0.010259442031383514, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.05it/s]t/s]\n", + " 94%|█████████▍| 4703/5000 [10:39<03:45, 1.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4700: loss = 0.008904497139155865, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.03it/s]t/s]\n", + " 96%|█████████▌| 4803/5000 [10:52<02:29, 1.31it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4800: loss = -0.07732591032981873, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 20/20 [00:06<00:00, 3.03it/s]t/s]\n", + " 98%|█████████▊| 4903/5000 [11:06<01:13, 1.31it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "step = 4900: loss = 0.06026251241564751, reward = 0.15449999272823334\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 5000/5000 [11:12<00:00, 7.43it/s]\n" + ] + } + ], + "source": [ + "num_steps=5000\n", + "_loss_test, _, _rewards_test = train(\n", + " agent, test_env, test_env, replay_buffer, collect_driver, steps = num_steps, eval_interval=100)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plot_training(_loss_test, _rewards_test, num_steps, 100)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "compute_avg_return_episodic(test_env, agent.policy, num_episodes=50)" ] }, { @@ -1526,7 +4833,7 @@ " **agent_args\n", " )\n", "\n", - " loss, _, rewards = train(_agent, train_env, eval_env, steps = 5000, use_wandb = True)\n", + " loss, _, rewards = train(_agent, train_env, train_env_copy, steps = 5000, use_wandb = True)\n", " \n", " wandb.log({'avg_loss': np.mean(loss), 'avg_reward': np.mean(rewards)})\n", "\n", @@ -1587,7 +4894,7 @@ " total_return += reward # Calculate a sum of rewards\n", "\n", " if i % log_interval == 0:\n", - " # avg_return = compute_avg_return(eval_env, agent.policy, 10)\n", + " # avg_return = compute_avg_return(train_env_copy, agent.policy, 10)\n", " avg_return = total_return / eval_interval\n", " print('step = {0}: Average reward = {1:.5f}'.format(step, avg_return))\n", " rewards.append(avg_return)\n", From dbd47753a1c1c08d29ad7a3ab0b0dd59291b949a Mon Sep 17 00:00:00 2001 From: Valeria Sakovskaya Date: Fri, 8 Dec 2023 11:24:26 +0400 Subject: [PATCH 2/2] Added a test dataset --- dataset_util.ipynb | 167 ++++++++++++++++++++++++++++++++++----------- 1 file changed, 128 insertions(+), 39 deletions(-) diff --git a/dataset_util.ipynb b/dataset_util.ipynb index 6d8a45e..2e59413 100644 --- a/dataset_util.ipynb +++ b/dataset_util.ipynb @@ -37,7 +37,30 @@ "outputs": [ { "data": { - "image/png": "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", + "text/plain": [ + "array([20, 16, 24, 8, 20, 20, 4, 16, 24, 8, 20, 20, 4, 16, 24, 20, 8,\n", + " 4, 12, 24, 4, 4, 12, 24, 4, 12, 24, 12, 8, 12, 16, 8, 12, 16,\n", + " 8, 16])" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.read_csv(\"datasets/avrora_real_saved_states.csv\")\n", + "df.iloc[:, 0].values" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", "text/plain": [ "
" ] @@ -49,17 +72,21 @@ "source": [ "target_goal = \"avgGCPause\"\n", "\n", - "x, y, z = get_data_from_csv(\n", - " csv_dir= \"summaries_avrora\", \n", - " goal = target_goal)\n", + "df = pd.read_csv(\"datasets/avrora_real_saved_states.csv\")\n", + "x = df.iloc[:, 0].values\n", + "y = df.iloc[:, 1].values\n", + "z = df.iloc[:, 2].values\n", + "# x, y, z = get_data_from_csv(\n", + "# csv_dir= \"summaries_avrora\", \n", + "# goal = target_goal)\n", "\n", "plot_heatmap(x, y, z)\n", "\n", - "avrora_df = pd.DataFrame({\n", - " \"ParallelGCThreads\": x,\n", - " \"MaxTenuringThreshold\": y,\n", - " \"Average GC Pause\": z,\n", - "})\n", + "# avrora_df = pd.DataFrame({\n", + "# \"ParallelGCThreads\": x,\n", + "# \"MaxTenuringThreshold\": y,\n", + "# \"Average GC Pause\": z,\n", + "# })\n", "# avrora_df.to_csv(\"avrora_real_saved_states.csv\", index=False)\n", "## Default values (avrora)\n", "# x.append(15)\n", @@ -69,12 +96,12 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 9, "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] @@ -84,17 +111,23 @@ } ], "source": [ - "x, y, z = get_data_from_csv(\n", - " csv_dir= \"summaries_kafka\", \n", - " goal = target_goal)\n", + "target_goal = \"avgGCPause\"\n", + "\n", + "df = pd.read_csv(\"datasets/kafka_real_saved_states.csv\")\n", + "x = df.iloc[:, 0].values\n", + "y = df.iloc[:, 1].values\n", + "z = df.iloc[:, 2].values\n", + "# x, y, z = get_data_from_csv(\n", + "# csv_dir= \"summaries_kafka\", \n", + "# goal = target_goal)\n", "\n", "plot_heatmap(x, y, z)\n", "\n", - "kafka_df = pd.DataFrame({\n", - " \"ParallelGCThreads\": x,\n", - " \"MaxTenuringThreshold\": y,\n", - " \"Average GC Pause\": z,\n", - "})\n", + "# kafka_df = pd.DataFrame({\n", + "# \"ParallelGCThreads\": x,\n", + "# \"MaxTenuringThreshold\": y,\n", + "# \"Average GC Pause\": z,\n", + "# })\n", "# kafka_df.to_csv(\"kafka_real_saved_states.csv\", index=False)" ] }, @@ -123,17 +156,9 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 4, "metadata": {}, "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/tmp/ipykernel_44888/2798855420.py:39: FutureWarning: In a future version of pandas all arguments of DataFrame.pivot will be keyword-only.\n", - " curve_data_pivoted = curve_data.pivot(\"ParallelGCThreads\", \"MaxTenuringThreshold\", \"Average GC Pause\")\n" - ] - }, { "data": { "image/png": "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", @@ -184,7 +209,7 @@ "curve_data = pd.DataFrame({'ParallelGCThreads': new_x, 'MaxTenuringThreshold': new_y, 'Average GC Pause': new_z})\n", "curve_data['MaxTenuringThreshold'] = curve_data['MaxTenuringThreshold'].astype(int)\n", "curve_data['ParallelGCThreads'] = curve_data['ParallelGCThreads'].astype(int)\n", - "curve_data_pivoted = curve_data.pivot(\"ParallelGCThreads\", \"MaxTenuringThreshold\", \"Average GC Pause\")\n", + "curve_data_pivoted = curve_data.pivot(index=\"ParallelGCThreads\", columns=\"MaxTenuringThreshold\", values=\"Average GC Pause\")\n", "curve_data_pivoted = curve_data_pivoted.transpose()\n", "\n", "ax = sns.heatmap(curve_data_pivoted, ax=ax, annot=True, fmt=\".2g\") # annot=True, fmt=\"\"\n", @@ -203,17 +228,9 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 5, "metadata": {}, "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/tmp/ipykernel_44888/283606209.py:39: FutureWarning: In a future version of pandas all arguments of DataFrame.pivot will be keyword-only.\n", - " curve_data_pivoted = curve_data.pivot(\"ParallelGCThreads\", \"MaxTenuringThreshold\", \"Average GC Pause\")\n" - ] - }, { "data": { "image/png": "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", @@ -264,7 +281,7 @@ "curve_data = pd.DataFrame({'ParallelGCThreads': new_x, 'MaxTenuringThreshold': new_y, 'Average GC Pause': new_z})\n", "curve_data['MaxTenuringThreshold'] = curve_data['MaxTenuringThreshold'].astype(int)\n", "curve_data['ParallelGCThreads'] = curve_data['ParallelGCThreads'].astype(int)\n", - "curve_data_pivoted = curve_data.pivot(\"ParallelGCThreads\", \"MaxTenuringThreshold\", \"Average GC Pause\")\n", + "curve_data_pivoted = curve_data.pivot(index=\"ParallelGCThreads\", columns=\"MaxTenuringThreshold\", values=\"Average GC Pause\")\n", "curve_data_pivoted = curve_data_pivoted.transpose()\n", "\n", "ax = sns.heatmap(curve_data_pivoted, ax=ax, annot=True, fmt=\".2g\") # annot=True, fmt=\"\"\n", @@ -273,6 +290,78 @@ "\n", "curve_data.to_csv(\"kafka_synthetic_saved_states.csv\", index=False)" ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "def z_1(x, y):\n", + " return - 1 / (0.1*abs(x - 4)**0.9 + 0.1*abs(y - 10)**1.5 + 0.37)\n", + "\n", + "# def z_2(x, y):\n", + "# return - 1 / (0.1*abs(x - 4)**0.9 + 0.1*abs(y - 4)**1.5 + 0.45)\n", + "\n", + "def z_2(x, y):\n", + " return - 1 / (0.03*abs(x - 8)**1.5 + 0.03*abs(y - 7)**1.5 + 0.45)\n", + "\n", + "def z_3(x, y):\n", + " return - 1 / (0.05*abs(x - 24)**1.5 + 0.02*abs(y - 7)**1.5 + 0.4)\n", + "\n", + "def z_5(x, y):\n", + " return - 1 / (0.03*abs(x - 8)**1.5 + 0.03*abs(y - 16)**1.5 + 0.4)\n", + "\n", + "def func(x, y):\n", + " return z_1(x, y) + z_2(x, y) + z_3(x, y) + z_5(x, y)\n", + "\n", + "new_z = []\n", + "new_x = []\n", + "new_y = []\n", + "\n", + "for i in range(4, 24 + 1, 4):\n", + " for j in range(1, 16 + 1, 3):\n", + " new_x.append(i)\n", + " new_y.append(j)\n", + " new_z.append(func(int(i), int(j)))\n", + "\n", + "# Normalize\n", + "max_z = max(new_z)\n", + "min_z = min(new_z)\n", + "new_z = [(each - min_z + 0.01)/ (max_z - min_z) for each in new_z]\n", + "\n", + "fig, ax = plt.subplots(figsize=(5, 5))\n", + "\n", + "curve_data = pd.DataFrame({'ParallelGCThreads': new_x, 'MaxTenuringThreshold': new_y, 'Average GC Pause': new_z})\n", + "curve_data['MaxTenuringThreshold'] = curve_data['MaxTenuringThreshold'].astype(int)\n", + "curve_data['ParallelGCThreads'] = curve_data['ParallelGCThreads'].astype(int)\n", + "curve_data_pivoted = curve_data.pivot(index=\"ParallelGCThreads\", columns=\"MaxTenuringThreshold\", values=\"Average GC Pause\")\n", + "curve_data_pivoted = curve_data_pivoted.transpose()\n", + "\n", + "ax = sns.heatmap(curve_data_pivoted, ax=ax, annot=True, fmt=\".2g\") # annot=True, fmt=\"\"\n", + "ax.invert_yaxis()\n", + "plt.show()\n", + "\n", + "curve_data.to_csv(\"test_synthetic_saved_states.csv\", index=False)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": {