From 442ab44f1d4445994bba3116126dade3ac36eaa7 Mon Sep 17 00:00:00 2001 From: grbagwe Date: Thu, 5 May 2022 10:58:52 -0400 Subject: [PATCH 1/5] env requirement update remove redis version --- environment.yml | 2 +- requirements.txt | 2 +- tutorials/tutorial00_flow.ipynb | 20 +- tutorials/tutorial01_sumo.ipynb | 344 +++++++++++++++++++++++++------ tutorials/tutorial03_rllib.ipynb | 4 +- 5 files changed, 298 insertions(+), 74 deletions(-) diff --git a/environment.yml b/environment.yml index 97d9ad6f8..661ffdc7f 100644 --- a/environment.yml +++ b/environment.yml @@ -25,4 +25,4 @@ dependencies: - psutil - opencv-python - boto3==1.10.45 - - redis~=2.10.6 + - redis diff --git a/requirements.txt b/requirements.txt index a4f6f83f8..b703e2bf5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -21,7 +21,7 @@ setproctitle psutil opencv-python boto3==1.10.45 -redis~=2.10.6 +redis pandas==0.24.2 plotly==2.4.0 tabulate diff --git a/tutorials/tutorial00_flow.ipynb b/tutorials/tutorial00_flow.ipynb index 689a1dfdd..3556bead1 100644 --- a/tutorials/tutorial00_flow.ipynb +++ b/tutorials/tutorial00_flow.ipynb @@ -2,7 +2,11 @@ "cells": [ { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "# Tutorial 0: Flow\n", "\n", @@ -13,7 +17,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "## 1. High-level of Flow\n", "\n", @@ -55,7 +63,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "## 2. Codebase structure\n", "\n", @@ -115,4 +127,4 @@ }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tutorials/tutorial01_sumo.ipynb b/tutorials/tutorial01_sumo.ipynb index 18e7cdf26..9bf45a383 100644 --- a/tutorials/tutorial01_sumo.ipynb +++ b/tutorials/tutorial01_sumo.ipynb @@ -2,7 +2,11 @@ "cells": [ { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "# Tutorial 01: Running Sumo Simulations\n", "\n", @@ -19,8 +23,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 1, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.networks.ring import RingNetwork" @@ -28,7 +36,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "This network, as well as all other networks in Flow, is parametrized by the following arguments: \n", "* name\n", @@ -45,8 +57,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 2, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "name = \"ring_example\"" @@ -54,7 +70,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "### 2.2 VehicleParams\n", "The `VehicleParams` class stores state information on all vehicles in the network. This class is used to identify the dynamical behavior of a vehicle and whether it is controlled by a reinforcement learning agent. Morover, information pertaining to the observations and reward function can be collected from various get methods within this class.\n", @@ -64,8 +84,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 3, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.core.params import VehicleParams\n", @@ -75,7 +99,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "Once this object is created, vehicles may be introduced using the `add` method. This method specifies the types and quantities of vehicles at the start of a simulation rollout. For a description of the various arguements associated with the `add` method, we refer the reader to the following documentation ([VehicleParams.add](https://flow.readthedocs.io/en/latest/flow.core.html?highlight=vehicleparam#flow.core.params.VehicleParams)).\n", "\n", @@ -84,8 +112,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 4, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.controllers.car_following_models import IDMController" @@ -93,15 +125,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "Another controller we define is for the vehicle's routing behavior. For closed network where the route for any vehicle is repeated, the `ContinuousRouter` controller is used to perpetually reroute all vehicles to the initial set route." ] }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 5, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.controllers.routing_controllers import ContinuousRouter" @@ -109,15 +149,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "Finally, we add 22 vehicles of type \"human\" with the above acceleration and routing behavior into the `Vehicles` class." ] }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 6, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "vehicles.add(\"human\",\n", @@ -128,7 +176,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "### 2.3 NetParams\n", "\n", @@ -137,9 +189,21 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 7, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'length': 230, 'lanes': 1, 'speed_limit': 30, 'resolution': 40}\n" + ] + } + ], "source": [ "from flow.networks.ring import ADDITIONAL_NET_PARAMS\n", "\n", @@ -148,7 +212,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "Importing the `ADDITIONAL_NET_PARAMS` dictionary from the ring road network, we see that the required parameters are:\n", "\n", @@ -163,8 +231,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 8, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.core.params import NetParams\n", @@ -174,7 +246,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "### 2.4 InitialConfig\n", "\n", @@ -183,8 +259,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 9, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.core.params import InitialConfig\n", @@ -194,7 +274,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "### 2.5 TrafficLightParams\n", "\n", @@ -203,8 +287,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 10, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.core.params import TrafficLightParams\n", @@ -214,7 +302,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "## 3. Setting up an Environment\n", "\n", @@ -223,8 +315,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 11, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.envs.ring.accel import AccelEnv" @@ -232,7 +328,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "Although we will not be training any autonomous agents in this tutorial, the use of an environment allows us to view the cumulative reward simulation rollouts receive in the absence of autonomy.\n", "\n", @@ -267,18 +367,26 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 12, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.core.params import SumoParams\n", "\n", - "sim_params = SumoParams(sim_step=0.1, render=True, emission_path='data')" + "sim_params = SumoParams(sim_step=0.1, render='rgb', emission_path='data')" ] }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "### 3.2 EnvParams\n", "\n", @@ -287,9 +395,21 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 13, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'max_accel': 3, 'max_decel': 3, 'target_velocity': 10, 'sort_vehicles': False}\n" + ] + } + ], "source": [ "from flow.envs.ring.accel import ADDITIONAL_ENV_PARAMS\n", "\n", @@ -298,15 +418,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "Importing the `ADDITIONAL_ENV_PARAMS` variable, we see that it consists of only one entry, \"target_velocity\", which is used when computing the reward function associated with the environment. We use this default value when generating the `EnvParams` object." ] }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 14, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.core.params import EnvParams\n", @@ -316,7 +444,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "## 4. Setting up and Running the Experiment\n", "Once the inputs to the network and environment classes are ready, we are ready to set up a `Experiment` object." @@ -324,8 +456,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 15, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [ "from flow.core.experiment import Experiment" @@ -333,7 +469,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "This object may be used to simulate rollouts in the absence of reinforcement learning agents, as well as acquire behaviors and rewards that may be used as a baseline with which to compare the performance of the learning agent. In this case, we choose to run our experiment for one rollout consisting of 3000 steps (300 s).\n", "\n", @@ -342,9 +482,27 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 16, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Round 0, return: 884.384890310823\n", + "data/ring_example_20220502-1719271651526367.163535-0_emission.csv data\n", + "Average, std returns: 884.384890310823, 0.0\n", + "Average, std velocities: 2.9484039834348588, 0.0\n", + "Average, std outflows: 0.0, 0.0\n", + "Total time: 13.348957777023315\n", + "steps/second: 345.31003701254764\n" + ] + } + ], "source": [ "flow_params = dict(\n", " exp_tag='ring_example',\n", @@ -369,7 +527,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "As we can see from the above simulation, the initial perturbations in the network instabilities propogate and intensify, eventually leading to the formation of stop-and-go waves after approximately 180s.\n", "\n", @@ -380,9 +542,21 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 17, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "data/ring_example_20220502-1719271651526367.163535-emission.xml\n" + ] + } + ], "source": [ "import os\n", "\n", @@ -392,18 +566,44 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "The .xml file contains various vehicle-specific parameters at every time step. This information is transferred to a .csv file if the `convert_to_csv` parameter in `exp.run()` is set to True. This file looks as follows:" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 18, "metadata": { + "pycharm": { + "name": "#%%\n" + }, "scrolled": true }, - "outputs": [], + "outputs": [ + { + "ename": "FileNotFoundError", + "evalue": "[Errno 2] File b'data/ring_example_20220502-1719271651526367.163535-emission.csv' does not exist: b'data/ring_example_20220502-1719271651526367.163535-emission.csv'", + "output_type": "error", + "traceback": [ + "\u001B[0;31m---------------------------------------------------------------------------\u001B[0m", + "\u001B[0;31mFileNotFoundError\u001B[0m Traceback (most recent call last)", + "\u001B[0;32m/tmp/ipykernel_25949/3615018580.py\u001B[0m in \u001B[0;36m\u001B[0;34m\u001B[0m\n\u001B[1;32m 1\u001B[0m \u001B[0;32mimport\u001B[0m \u001B[0mpandas\u001B[0m \u001B[0;32mas\u001B[0m \u001B[0mpd\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 2\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m----> 3\u001B[0;31m \u001B[0mpd\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0mread_csv\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0memission_location\u001B[0m \u001B[0;34m+\u001B[0m \u001B[0;34m'-emission.csv'\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m", + "\u001B[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001B[0m in \u001B[0;36mparser_f\u001B[0;34m(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, squeeze, prefix, mangle_dupe_cols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, skipfooter, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, doublequote, escapechar, comment, encoding, dialect, tupleize_cols, error_bad_lines, warn_bad_lines, delim_whitespace, low_memory, memory_map, float_precision)\u001B[0m\n\u001B[1;32m 700\u001B[0m skip_blank_lines=skip_blank_lines)\n\u001B[1;32m 701\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m--> 702\u001B[0;31m \u001B[0;32mreturn\u001B[0m \u001B[0m_read\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mfilepath_or_buffer\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0mkwds\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 703\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 704\u001B[0m \u001B[0mparser_f\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0m__name__\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mname\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n", + "\u001B[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001B[0m in \u001B[0;36m_read\u001B[0;34m(filepath_or_buffer, kwds)\u001B[0m\n\u001B[1;32m 427\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 428\u001B[0m \u001B[0;31m# Create the parser.\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m--> 429\u001B[0;31m \u001B[0mparser\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mTextFileReader\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mfilepath_or_buffer\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0;34m**\u001B[0m\u001B[0mkwds\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 430\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 431\u001B[0m \u001B[0;32mif\u001B[0m \u001B[0mchunksize\u001B[0m \u001B[0;32mor\u001B[0m \u001B[0miterator\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n", + "\u001B[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001B[0m in \u001B[0;36m__init__\u001B[0;34m(self, f, engine, **kwds)\u001B[0m\n\u001B[1;32m 893\u001B[0m \u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0moptions\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0;34m'has_index_names'\u001B[0m\u001B[0;34m]\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mkwds\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0;34m'has_index_names'\u001B[0m\u001B[0;34m]\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 894\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m--> 895\u001B[0;31m \u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0m_make_engine\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0mengine\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 896\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 897\u001B[0m \u001B[0;32mdef\u001B[0m \u001B[0mclose\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mself\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n", + "\u001B[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001B[0m in \u001B[0;36m_make_engine\u001B[0;34m(self, engine)\u001B[0m\n\u001B[1;32m 1120\u001B[0m \u001B[0;32mdef\u001B[0m \u001B[0m_make_engine\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mself\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0mengine\u001B[0m\u001B[0;34m=\u001B[0m\u001B[0;34m'c'\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 1121\u001B[0m \u001B[0;32mif\u001B[0m \u001B[0mengine\u001B[0m \u001B[0;34m==\u001B[0m \u001B[0;34m'c'\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m-> 1122\u001B[0;31m \u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0m_engine\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mCParserWrapper\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0mf\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0;34m**\u001B[0m\u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0moptions\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 1123\u001B[0m \u001B[0;32melse\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 1124\u001B[0m \u001B[0;32mif\u001B[0m \u001B[0mengine\u001B[0m \u001B[0;34m==\u001B[0m \u001B[0;34m'python'\u001B[0m\u001B[0;34m:\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n", + "\u001B[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001B[0m in \u001B[0;36m__init__\u001B[0;34m(self, src, **kwds)\u001B[0m\n\u001B[1;32m 1851\u001B[0m \u001B[0mkwds\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0;34m'usecols'\u001B[0m\u001B[0;34m]\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0musecols\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 1852\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m-> 1853\u001B[0;31m \u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0m_reader\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mparsers\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0mTextReader\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0msrc\u001B[0m\u001B[0;34m,\u001B[0m \u001B[0;34m**\u001B[0m\u001B[0mkwds\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 1854\u001B[0m \u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0munnamed_cols\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mself\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0m_reader\u001B[0m\u001B[0;34m.\u001B[0m\u001B[0munnamed_cols\u001B[0m\u001B[0;34m\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 1855\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n", + "\u001B[0;32mpandas/_libs/parsers.pyx\u001B[0m in \u001B[0;36mpandas._libs.parsers.TextReader.__cinit__\u001B[0;34m()\u001B[0m\n", + "\u001B[0;32mpandas/_libs/parsers.pyx\u001B[0m in \u001B[0;36mpandas._libs.parsers.TextReader._setup_parser_source\u001B[0;34m()\u001B[0m\n", + "\u001B[0;31mFileNotFoundError\u001B[0m: [Errno 2] File b'data/ring_example_20220502-1719271651526367.163535-emission.csv' does not exist: b'data/ring_example_20220502-1719271651526367.163535-emission.csv'" + ] + } + ], "source": [ "import pandas as pd\n", "\n", @@ -412,14 +612,22 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "As you can see, each row contains vehicle information for a certain vehicle (specified under the *id* column) at a certain time (specified under the *time* column). These information can then be used to plot various representations of the simulation, examples of which can be found in the `flow/visualize` folder." ] }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, "source": [ "## 6. Modifying the Simulation\n", "This tutorial has walked you through running a single lane ring road experiment in Flow. As we have mentioned before, these simulations are highly parametrizable. This allows us to try different representations of the task. For example, what happens if no initial perturbations are introduced to the system of homogenous human-driven vehicles?\n", @@ -452,16 +660,20 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [conda env:flow] *", "language": "python", - "name": "python3" + "name": "conda-env-flow-py" }, "language_info": { "codemirror_mode": { @@ -473,7 +685,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.8" + "version": "3.7.3" }, "widgets": { "state": {}, @@ -482,4 +694,4 @@ }, "nbformat": 4, "nbformat_minor": 1 -} +} \ No newline at end of file diff --git a/tutorials/tutorial03_rllib.ipynb b/tutorials/tutorial03_rllib.ipynb index 465fa362b..b415868b1 100644 --- a/tutorials/tutorial03_rllib.ipynb +++ b/tutorials/tutorial03_rllib.ipynb @@ -496,7 +496,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -510,7 +510,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.8" + "version": "3.7.3" }, "widgets": { "state": {}, From fef789c036d0310093d538db937930ebc04135d0 Mon Sep 17 00:00:00 2001 From: grbagwe Date: Thu, 5 May 2022 12:09:48 -0400 Subject: [PATCH 2/5] pyglet renderer bug removed --- flow/envs/base.py | 5 +- tutorials/tutorial00_flow.ipynb | 6 +- tutorials/tutorial01_sumo-pyglet.ipynb | 681 +++++++++++++++++++++++++ tutorials/tutorial01_sumo.ipynb | 31 +- 4 files changed, 704 insertions(+), 19 deletions(-) create mode 100644 tutorials/tutorial01_sumo-pyglet.ipynb diff --git a/flow/envs/base.py b/flow/envs/base.py index c4462e8c8..7158eb261 100644 --- a/flow/envs/base.py +++ b/flow/envs/base.py @@ -133,7 +133,7 @@ def __init__(self, self.sim_params = deepcopy(sim_params) # check whether we should be rendering self.should_render = self.sim_params.render - self.sim_params.render = False + self.sim_params.render = self.sim_params.render time_stamp = ''.join(str(time.time()).split('.')) if os.environ.get("TEST_FLAG", 0): # 1.0 works with stress_test_start 10k times @@ -434,7 +434,7 @@ def reset(self): # Now that we've passed the possibly fake init steps some rl libraries # do, we can feel free to actually render things if self.should_render: - self.sim_params.render = True + self.sim_params.render = self.should_render # got to restart the simulation to make it actually display anything self.restart_simulation(self.sim_params) @@ -717,6 +717,7 @@ def render(self, reset=False, buffer_length=5): buffer_length : int length of the buffer """ + print(self.sim_params.render, '720 sim params render') if self.sim_params.render in ['gray', 'dgray', 'rgb', 'drgb']: # render a frame self.pyglet_render() diff --git a/tutorials/tutorial00_flow.ipynb b/tutorials/tutorial00_flow.ipynb index 3556bead1..e9f495f08 100644 --- a/tutorials/tutorial00_flow.ipynb +++ b/tutorials/tutorial00_flow.ipynb @@ -108,7 +108,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -122,9 +122,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.8" + "version": "3.7.3" } }, "nbformat": 4, "nbformat_minor": 2 -} \ No newline at end of file +} diff --git a/tutorials/tutorial01_sumo-pyglet.ipynb b/tutorials/tutorial01_sumo-pyglet.ipynb new file mode 100644 index 000000000..fa7f4b867 --- /dev/null +++ b/tutorials/tutorial01_sumo-pyglet.ipynb @@ -0,0 +1,681 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "# Tutorial 01: Running Sumo Simulations\n", + "\n", + "This tutorial walks through the process of running non-RL traffic simulations in Flow. Simulations of this form act as non-autonomous baselines and depict the behavior of human dynamics on a network. Similar simulations may also be used to evaluate the performance of hand-designed controllers on a network. This tutorial focuses primarily on the former use case, while an example of the latter may be found in `tutorial09_controllers.ipynb`.\n", + "\n", + "In this tutorial, we simulate a initially perturbed single lane ring road. We witness in simulation that as time advances the initially perturbations do not dissipate, but instead propagates and expands until vehicles are forced to periodically stop and accelerate. For more information on this behavior, we refer the reader to the following article [1].\n", + "\n", + "## 1. Components of a Simulation\n", + "All simulations, both in the presence and absence of RL, require two components: a *network*, and an *environment*. Networks describe the features of the transportation network used in simulation. This includes the positions and properties of nodes and edges constituting the lanes and junctions, as well as properties of the vehicles, traffic lights, inflows, etc. in the network. Environments, on the other hand, initialize, reset, and advance simulations, and act the primary interface between the reinforcement learning algorithm and the network. Moreover, custom environments may be used to modify the dynamical features of an network.\n", + "\n", + "## 2. Setting up a Network\n", + "Flow contains a plethora of pre-designed networks used to replicate highways, intersections, and merges in both closed and open settings. All these networks are located in `flow/networks`. In order to recreate a ring road network, we begin by importing the network `RingNetwork`." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.networks.ring import RingNetwork" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "This network, as well as all other networks in Flow, is parametrized by the following arguments: \n", + "* name\n", + "* vehicles\n", + "* net_params\n", + "* initial_config\n", + "* traffic_lights\n", + "\n", + "These parameters allow a single network to be recycled for a multitude of different network settings. For example, `RingNetwork` may be used to create ring roads of variable length with a variable number of lanes and vehicles.\n", + "\n", + "### 2.1 Name\n", + "The `name` argument is a string variable depicting the name of the network. This has no effect on the type of network created." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "name = \"ring_example\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "### 2.2 VehicleParams\n", + "The `VehicleParams` class stores state information on all vehicles in the network. This class is used to identify the dynamical behavior of a vehicle and whether it is controlled by a reinforcement learning agent. Morover, information pertaining to the observations and reward function can be collected from various get methods within this class.\n", + "\n", + "The initial configuration of this class describes the number of vehicles in the network at the start of every simulation, as well as the properties of these vehicles. We begin by creating an empty `VehicleParams` object." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.core.params import VehicleParams\n", + "\n", + "vehicles = VehicleParams()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "Once this object is created, vehicles may be introduced using the `add` method. This method specifies the types and quantities of vehicles at the start of a simulation rollout. For a description of the various arguements associated with the `add` method, we refer the reader to the following documentation ([VehicleParams.add](https://flow.readthedocs.io/en/latest/flow.core.html?highlight=vehicleparam#flow.core.params.VehicleParams)).\n", + "\n", + "When adding vehicles, their dynamical behaviors may be specified either by the simulator (default), or by user-generated models. For longitudinal (acceleration) dynamics, several prominent car-following models are implemented in Flow. For this example, the acceleration behavior of all vehicles will be defined by the Intelligent Driver Model (IDM) [2]." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.controllers.car_following_models import IDMController" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "Another controller we define is for the vehicle's routing behavior. For closed network where the route for any vehicle is repeated, the `ContinuousRouter` controller is used to perpetually reroute all vehicles to the initial set route." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.controllers.routing_controllers import ContinuousRouter" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "Finally, we add 22 vehicles of type \"human\" with the above acceleration and routing behavior into the `Vehicles` class." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "vehicles.add(\"human\",\n", + " acceleration_controller=(IDMController, {}),\n", + " routing_controller=(ContinuousRouter, {}),\n", + " num_vehicles=15)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "### 2.3 NetParams\n", + "\n", + "`NetParams` are network-specific parameters used to define the shape and properties of a network. Unlike most other parameters, `NetParams` may vary drastically depending on the specific network configuration, and accordingly most of its parameters are stored in `additional_params`. In order to determine which `additional_params` variables may be needed for a specific network, we refer to the `ADDITIONAL_NET_PARAMS` variable located in the network file." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'length': 230, 'lanes': 1, 'speed_limit': 30, 'resolution': 40}\n" + ] + } + ], + "source": [ + "from flow.networks.ring import ADDITIONAL_NET_PARAMS\n", + "\n", + "print(ADDITIONAL_NET_PARAMS)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "Importing the `ADDITIONAL_NET_PARAMS` dictionary from the ring road network, we see that the required parameters are:\n", + "\n", + "* **length**: length of the ring road\n", + "* **lanes**: number of lanes\n", + "* **speed**: speed limit for all edges\n", + "* **resolution**: resolution of the curves on the ring. Setting this value to 1 converts the ring to a diamond.\n", + "\n", + "\n", + "At times, other inputs may be needed from `NetParams` to recreate proper network features/behavior. These requirements can be found in the network's documentation. For the ring road, no attributes are needed aside from the `additional_params` terms. Furthermore, for this tutorial, we use the network's default parameters when creating the `NetParams` object." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.core.params import NetParams\n", + "\n", + "net_params = NetParams(additional_params=ADDITIONAL_NET_PARAMS)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "### 2.4 InitialConfig\n", + "\n", + "`InitialConfig` specifies parameters that affect the positioning of vehicle in the network at the start of a simulation. These parameters can be used to limit the edges and number of lanes vehicles originally occupy, and provide a means of adding randomness to the starting positions of vehicles. In order to introduce a small initial disturbance to the system of vehicles in the network, we set the `perturbation` term in `InitialConfig` to 1m." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.core.params import InitialConfig\n", + "\n", + "initial_config = InitialConfig(spacing=\"uniform\", perturbation=1)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "### 2.5 TrafficLightParams\n", + "\n", + "`TrafficLightParams` are used to describe the positions and types of traffic lights in the network. These inputs are outside the scope of this tutorial, and instead are covered in `tutorial10_traffic_lights.ipynb`. For our example, we create an empty `TrafficLightParams` object, thereby ensuring that none are placed on any nodes." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.core.params import TrafficLightParams\n", + "\n", + "traffic_lights = TrafficLightParams()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "## 3. Setting up an Environment\n", + "\n", + "Several envionrments in Flow exist to train autonomous agents of different forms (e.g. autonomous vehicles, traffic lights) to perform a variety of different tasks. These environments are often network- or task-specific; however, some can be deployed on an ambiguous set of networks as well. One such environment, `AccelEnv`, may be used to train a variable number of vehicles in a fully observable network with a *static* number of vehicles." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.envs.ring.accel import AccelEnv" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "Although we will not be training any autonomous agents in this tutorial, the use of an environment allows us to view the cumulative reward simulation rollouts receive in the absence of autonomy.\n", + "\n", + "Although we will not be training any autonomous agents in this exercise, the use of an environment allows us to view the cumulative reward simulation rollouts receive in the absence of autonomy.\n", + "\n", + "Envrionments in Flow are parametrized by several components, including the following attributes:\n", + "* `sim_params`\n", + "* `env_params`\n", + "* `network`\n", + "* `net_params`\n", + "* `initial_config`\n", + "* `network`\n", + "* `simulator`\n", + "\n", + "where `sim_params`, `env_params`, and `network` are the primary parameters of an environment. For the full list of attributes, please check `class Env` in `flow/envs/base.py`.\n", + "\n", + "Sumo envrionments in Flow are parametrized by three components:\n", + "* `SumoParams`\n", + "* `EnvParams`\n", + "* `Network`\n", + "\n", + "### 3.1 SumoParams\n", + "`SumoParams` specifies simulation-specific variables (e.g. `SumoParams` and `AimsunParams` are the variables related to SUMO and Aimsun simulator, respectively). These variables may include the length a simulation step (in seconds), whether to render the GUI when running the experiment, and other variables. For this example, we consider a SUMO simulation, step length of 0.1s, and activate the GUI.\n", + "\n", + "Another useful parameter is `emission_path`, which is used to specify the path where the emissions output will be generated. They contain a lot of information about the simulation, for instance the position and speed of each car at each time step. If you do not specify any emission path, the emission file will not be generated. More on this in Section 5.\n", + "\n", + "### 3.1 SumoParams\n", + "`SumoParams` specifies simulation-specific variables. These variables include the length a simulation step (in seconds) and whether to render the GUI when running the experiment. For this example, we consider a simulation step length of 0.1s and activate the GUI.\n", + "\n", + "Another useful parameter is `emission_path`, which is used to specify the path where the emissions output will be generated. They contain a lot of information about the simulation, for instance the position and speed of each car at each time step. If you do not specify any emission path, the emission file will not be generated. More on this in Section 5." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.core.params import SumoParams\n", + "initial_config = InitialConfig(spacing=\"uniform\", perturbation=1)\n", + "\n", + "sim_params = SumoParams(sim_step=0.1, render='drgb', save_render=True, restart_instance=True,emission_path='data')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "### 3.2 EnvParams\n", + "\n", + "`EnvParams` specify environment and experiment-specific parameters that either affect the training process or the dynamics of various components within the network. Much like `NetParams`, the attributes associated with this parameter are mostly environment-specific, and can be found in the environment's `ADDITIONAL_ENV_PARAMS` dictionary." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'max_accel': 3, 'max_decel': 3, 'target_velocity': 10, 'sort_vehicles': False}\n" + ] + } + ], + "source": [ + "from flow.envs.ring.accel import ADDITIONAL_ENV_PARAMS\n", + "\n", + "print(ADDITIONAL_ENV_PARAMS)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "Importing the `ADDITIONAL_ENV_PARAMS` variable, we see that it consists of only one entry, \"target_velocity\", which is used when computing the reward function associated with the environment. We use this default value when generating the `EnvParams` object." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.core.params import EnvParams\n", + "\n", + "env_params = EnvParams(additional_params=ADDITIONAL_ENV_PARAMS)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "## 4. Setting up and Running the Experiment\n", + "Once the inputs to the network and environment classes are ready, we are ready to set up a `Experiment` object." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "from flow.core.experiment import Experiment" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "This object may be used to simulate rollouts in the absence of reinforcement learning agents, as well as acquire behaviors and rewards that may be used as a baseline with which to compare the performance of the learning agent. In this case, we choose to run our experiment for one rollout consisting of 3000 steps (300 s).\n", + "\n", + "**Note**: When executing the below code, remeber to click on the Play button after the GUI is rendered." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n" + ] + }, + { + "ename": "AttributeError", + "evalue": "'AccelEnv' object has no attribute 'renderer'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/tmp/ipykernel_30193/1959658239.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 17\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 18\u001b[0m \u001b[0;31m# run the sumo simulation\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 19\u001b[0;31m \u001b[0m_\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mexp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mconvert_to_csv\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;32m~/Documents/Programming/flow/flow/core/experiment.py\u001b[0m in \u001b[0;36mrun\u001b[0;34m(self, num_runs, rl_actions, convert_to_csv)\u001b[0m\n\u001b[1;32m 140\u001b[0m \u001b[0mvel\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 141\u001b[0m \u001b[0mcustom_vals\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m{\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mkey\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcustom_callables\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mkeys\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 142\u001b[0;31m \u001b[0mstate\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0menv\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreset\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 143\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mj\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnum_steps\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 144\u001b[0m \u001b[0mt0\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtime\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtime\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/Documents/Programming/flow/flow/envs/ring/accel.py\u001b[0m in \u001b[0;36mreset\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 175\u001b[0m \u001b[0mposition\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 176\u001b[0m \"\"\"\n\u001b[0;32m--> 177\u001b[0;31m \u001b[0mobs\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msuper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreset\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 178\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 179\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mveh_id\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mk\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvehicle\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_ids\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/Documents/Programming/flow/flow/envs/base.py\u001b[0m in \u001b[0;36mreset\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 557\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 558\u001b[0m \u001b[0;31m# render a frame\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 559\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrender\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreset\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 560\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 561\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mobservation\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/Documents/Programming/flow/flow/envs/base.py\u001b[0m in \u001b[0;36mrender\u001b[0;34m(self, reset, buffer_length)\u001b[0m\n\u001b[1;32m 721\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msim_params\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrender\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m'gray'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'dgray'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'rgb'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'drgb'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 722\u001b[0m \u001b[0;31m# render a frame\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 723\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpyglet_render\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 724\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 725\u001b[0m \u001b[0;31m# cache rendering\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/Documents/Programming/flow/flow/envs/base.py\u001b[0m in \u001b[0;36mpyglet_render\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 782\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 783\u001b[0m \u001b[0;31m# step the renderer\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 784\u001b[0;31m self.frame = self.renderer.render(human_orientations,\n\u001b[0m\u001b[1;32m 785\u001b[0m \u001b[0mmachine_orientations\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 786\u001b[0m \u001b[0mhuman_dynamics\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mAttributeError\u001b[0m: 'AccelEnv' object has no attribute 'renderer'" + ] + } + ], + "source": [ + "flow_params = dict(\n", + " exp_tag='ring_example',\n", + " env_name=AccelEnv,\n", + " network=RingNetwork,\n", + " simulator='traci',\n", + " sim=sim_params,\n", + " env=env_params,\n", + " net=net_params,\n", + " veh=vehicles,\n", + " initial=initial_config,\n", + " tls=traffic_lights,\n", + ")\n", + "\n", + "# number of time steps\n", + "flow_params['env'].horizon = 3000\n", + "exp = Experiment(flow_params)\n", + "\n", + "# run the sumo simulation\n", + "_ = exp.run(1, convert_to_csv=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "As we can see from the above simulation, the initial perturbations in the network instabilities propogate and intensify, eventually leading to the formation of stop-and-go waves after approximately 180s.\n", + "\n", + "## 5. Visualizing Post-Simulation\n", + "\n", + "Once the simulation is done, a .xml file will be generated in the location of the specified `emission_path` in `SumoParams` (assuming this parameter has been specified) under the name of the network. In our case, this is:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "import os\n", + "\n", + "emission_location = os.path.join(exp.env.sim_params.emission_path, exp.env.network.name)\n", + "print(emission_location + '-emission.xml')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "The .xml file contains various vehicle-specific parameters at every time step. This information is transferred to a .csv file if the `convert_to_csv` parameter in `exp.run()` is set to True. This file looks as follows:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "pycharm": { + "name": "#%%\n" + }, + "scrolled": true + }, + "outputs": [], + "source": [ + "import pandas as pd\n", + "\n", + "pd.read_csv(emission_location + '-emission.csv')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "As you can see, each row contains vehicle information for a certain vehicle (specified under the *id* column) at a certain time (specified under the *time* column). These information can then be used to plot various representations of the simulation, examples of which can be found in the `flow/visualize` folder." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "## 6. Modifying the Simulation\n", + "This tutorial has walked you through running a single lane ring road experiment in Flow. As we have mentioned before, these simulations are highly parametrizable. This allows us to try different representations of the task. For example, what happens if no initial perturbations are introduced to the system of homogenous human-driven vehicles?\n", + "\n", + "```\n", + "initial_config = InitialConfig()\n", + "```\n", + "\n", + "In addition, how does the task change in the presence of multiple lanes where vehicles can overtake one another?\n", + "\n", + "```\n", + "net_params = NetParams(\n", + " additional_params={\n", + " 'length': 230, \n", + " 'lanes': 2, \n", + " 'speed_limit': 30, \n", + " 'resolution': 40\n", + " }\n", + ")\n", + "```\n", + "\n", + "Feel free to experiment with all these problems and more!\n", + "\n", + "## Bibliography\n", + "[1] Sugiyama, Yuki, et al. \"Traffic jams without bottlenecks—experimental evidence for the physical mechanism of the formation of a jam.\" New journal of physics 10.3 (2008): 033001.\n", + "\n", + "[2] Treiber, Martin, Ansgar Hennecke, and Dirk Helbing. \"Congested traffic states in empirical observations and microscopic simulations.\" Physical review E 62.2 (2000): 1805." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python [conda env:flow] *", + "language": "python", + "name": "conda-env-flow-py" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + }, + "widgets": { + "state": {}, + "version": "1.1.2" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/tutorials/tutorial01_sumo.ipynb b/tutorials/tutorial01_sumo.ipynb index 9bf45a383..8ee612333 100644 --- a/tutorials/tutorial01_sumo.ipynb +++ b/tutorials/tutorial01_sumo.ipynb @@ -328,11 +328,6 @@ }, { "cell_type": "markdown", - "metadata": { - "pycharm": { - "name": "#%% md\n" - } - }, "source": [ "Although we will not be training any autonomous agents in this tutorial, the use of an environment allows us to view the cumulative reward simulation rollouts receive in the absence of autonomy.\n", "\n", @@ -355,7 +350,7 @@ "* `Network`\n", "\n", "### 3.1 SumoParams\n", - "`SumoParams` specifies simulation-specific variables (e.g. `SumoParams` and `AimsunParams` are the variables related to SUMO and Aimsun simulator, respectively). These variables maay include the length a simulation step (in seconds), whether to render the GUI when running the experiment, and other variables. For this example, we consider a SUMO simulation, step length of 0.1s, and activate the GUI.\n", + "`SumoParams` specifies simulation-specific variables (e.g. `SumoParams` and `AimsunParams` are the variables related to SUMO and Aimsun simulator, respectively). These variables may include the length a simulation step (in seconds), whether to render the GUI when running the experiment, and other variables. For this example, we consider a SUMO simulation, step length of 0.1s, and activate the GUI.\n", "\n", "Another useful parameter is `emission_path`, which is used to specify the path where the emissions output will be generated. They contain a lot of information about the simulation, for instance the position and speed of each car at each time step. If you do not specify any emission path, the emission file will not be generated. More on this in Section 5.\n", "\n", @@ -363,22 +358,30 @@ "`SumoParams` specifies simulation-specific variables. These variables include the length a simulation step (in seconds) and whether to render the GUI when running the experiment. For this example, we consider a simulation step length of 0.1s and activate the GUI.\n", "\n", "Another useful parameter is `emission_path`, which is used to specify the path where the emissions output will be generated. They contain a lot of information about the simulation, for instance the position and speed of each car at each time step. If you do not specify any emission path, the emission file will not be generated. More on this in Section 5." - ] - }, - { - "cell_type": "code", - "execution_count": 12, + ], "metadata": { + "collapsed": false, "pycharm": { - "name": "#%%\n" + "name": "#%% md\n" } - }, + } + }, + { + "cell_type": "code", + "execution_count": null, "outputs": [], "source": [ "from flow.core.params import SumoParams\n", + "initial_config = InitialConfig(spacing=\"uniform\", perturbation=1)\n", "\n", "sim_params = SumoParams(sim_step=0.1, render='rgb', emission_path='data')" - ] + ], + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + } }, { "cell_type": "markdown", From 42cae8883fc0334f71c07bf62c8cb73e1a5742e9 Mon Sep 17 00:00:00 2001 From: grbagwe Date: Thu, 5 May 2022 12:10:19 -0400 Subject: [PATCH 3/5] pyglet renderer bug removed --- flow/envs/base.py | 1 - 1 file changed, 1 deletion(-) diff --git a/flow/envs/base.py b/flow/envs/base.py index 7158eb261..2832ab4f7 100644 --- a/flow/envs/base.py +++ b/flow/envs/base.py @@ -717,7 +717,6 @@ def render(self, reset=False, buffer_length=5): buffer_length : int length of the buffer """ - print(self.sim_params.render, '720 sim params render') if self.sim_params.render in ['gray', 'dgray', 'rgb', 'drgb']: # render a frame self.pyglet_render() From 7c0bb2305517cdce6da20ea93ecc85e35cf52b92 Mon Sep 17 00:00:00 2001 From: grbagwe Date: Thu, 5 May 2022 12:10:36 -0400 Subject: [PATCH 4/5] pyglet renderer bug removed --- tutorials/tutorial01_sumo-pyglet.ipynb | 3117 +++++++++++++++++++++++- 1 file changed, 3100 insertions(+), 17 deletions(-) diff --git a/tutorials/tutorial01_sumo-pyglet.ipynb b/tutorials/tutorial01_sumo-pyglet.ipynb index fa7f4b867..e519c8ccb 100644 --- a/tutorials/tutorial01_sumo-pyglet.ipynb +++ b/tutorials/tutorial01_sumo-pyglet.ipynb @@ -490,27 +490,3083 @@ } }, "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Failed to establish dbus connection" + ] + }, { "name": "stdout", "output_type": "stream", "text": [ + "Rendering with frame 252 x 252...\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", "drgb 720 sim params render\n" ] }, { - "ename": "AttributeError", - "evalue": "'AccelEnv' object has no attribute 'renderer'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m/tmp/ipykernel_30193/1959658239.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 17\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 18\u001b[0m \u001b[0;31m# run the sumo simulation\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 19\u001b[0;31m \u001b[0m_\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mexp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mconvert_to_csv\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[0;32m~/Documents/Programming/flow/flow/core/experiment.py\u001b[0m in \u001b[0;36mrun\u001b[0;34m(self, num_runs, rl_actions, convert_to_csv)\u001b[0m\n\u001b[1;32m 140\u001b[0m \u001b[0mvel\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 141\u001b[0m \u001b[0mcustom_vals\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m{\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mkey\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcustom_callables\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mkeys\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 142\u001b[0;31m \u001b[0mstate\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0menv\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreset\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 143\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mj\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnum_steps\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 144\u001b[0m \u001b[0mt0\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtime\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtime\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m~/Documents/Programming/flow/flow/envs/ring/accel.py\u001b[0m in \u001b[0;36mreset\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 175\u001b[0m \u001b[0mposition\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 176\u001b[0m \"\"\"\n\u001b[0;32m--> 177\u001b[0;31m \u001b[0mobs\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msuper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreset\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 178\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 179\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mveh_id\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mk\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvehicle\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_ids\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m~/Documents/Programming/flow/flow/envs/base.py\u001b[0m in \u001b[0;36mreset\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 557\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 558\u001b[0m \u001b[0;31m# render a frame\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 559\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrender\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreset\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 560\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 561\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mobservation\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m~/Documents/Programming/flow/flow/envs/base.py\u001b[0m in \u001b[0;36mrender\u001b[0;34m(self, reset, buffer_length)\u001b[0m\n\u001b[1;32m 721\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msim_params\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrender\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m'gray'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'dgray'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'rgb'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'drgb'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 722\u001b[0m \u001b[0;31m# render a frame\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 723\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpyglet_render\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 724\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 725\u001b[0m \u001b[0;31m# cache rendering\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m~/Documents/Programming/flow/flow/envs/base.py\u001b[0m in \u001b[0;36mpyglet_render\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 782\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 783\u001b[0m \u001b[0;31m# step the renderer\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 784\u001b[0;31m self.frame = self.renderer.render(human_orientations,\n\u001b[0m\u001b[1;32m 785\u001b[0m \u001b[0mmachine_orientations\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 786\u001b[0m \u001b[0mhuman_dynamics\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mAttributeError\u001b[0m: 'AccelEnv' object has no attribute 'renderer'" + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "drgb 720 sim params render\n", + "Round 0, return: 2304.021456153524\n", + "data/ring_example_20220505-1208511651766931.131114-0_emission.csv data\n", + "Average, std returns: 2304.021456153524, 0.0\n", + "Average, std velocities: 7.683721434543246, 0.0\n", + "Average, std outflows: 0.0, 0.0\n", + "Total time: 33.27513670921326\n", + "steps/second: 100.04219965046593\n", + "Closing renderer...\n", + "Goodbye!\n" ] } ], @@ -553,13 +3609,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "metadata": { "pycharm": { "name": "#%%\n" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "data/ring_example_20220505-1208511651766931.131114-emission.xml\n" + ] + } + ], "source": [ "import os\n", "\n", @@ -580,14 +3644,33 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 18, "metadata": { "pycharm": { "name": "#%%\n" }, "scrolled": true }, - "outputs": [], + "outputs": [ + { + "ename": "FileNotFoundError", + "evalue": "[Errno 2] File b'data/ring_example_20220505-1208511651766931.131114-emission.csv' does not exist: b'data/ring_example_20220505-1208511651766931.131114-emission.csv'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mFileNotFoundError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/tmp/ipykernel_30424/3615018580.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mpandas\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mpd\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 3\u001b[0;31m \u001b[0mpd\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mread_csv\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0memission_location\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;34m'-emission.csv'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36mparser_f\u001b[0;34m(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, squeeze, prefix, mangle_dupe_cols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, skipfooter, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, doublequote, escapechar, comment, encoding, dialect, tupleize_cols, error_bad_lines, warn_bad_lines, delim_whitespace, low_memory, memory_map, float_precision)\u001b[0m\n\u001b[1;32m 700\u001b[0m skip_blank_lines=skip_blank_lines)\n\u001b[1;32m 701\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 702\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0m_read\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilepath_or_buffer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 703\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 704\u001b[0m \u001b[0mparser_f\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__name__\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36m_read\u001b[0;34m(filepath_or_buffer, kwds)\u001b[0m\n\u001b[1;32m 427\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 428\u001b[0m \u001b[0;31m# Create the parser.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 429\u001b[0;31m \u001b[0mparser\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mTextFileReader\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilepath_or_buffer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 430\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 431\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mchunksize\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0miterator\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, f, engine, **kwds)\u001b[0m\n\u001b[1;32m 893\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moptions\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'has_index_names'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'has_index_names'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 894\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 895\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_make_engine\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mengine\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 896\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 897\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mclose\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36m_make_engine\u001b[0;34m(self, engine)\u001b[0m\n\u001b[1;32m 1120\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_make_engine\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mengine\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'c'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1121\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mengine\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'c'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1122\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mCParserWrapper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moptions\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1123\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1124\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mengine\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'python'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/envs/flow/lib/python3.7/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, src, **kwds)\u001b[0m\n\u001b[1;32m 1851\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'usecols'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0musecols\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1852\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1853\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_reader\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparsers\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mTextReader\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msrc\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1854\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0munnamed_cols\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_reader\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0munnamed_cols\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1855\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32mpandas/_libs/parsers.pyx\u001b[0m in \u001b[0;36mpandas._libs.parsers.TextReader.__cinit__\u001b[0;34m()\u001b[0m\n", + "\u001b[0;32mpandas/_libs/parsers.pyx\u001b[0m in \u001b[0;36mpandas._libs.parsers.TextReader._setup_parser_source\u001b[0;34m()\u001b[0m\n", + "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] File b'data/ring_example_20220505-1208511651766931.131114-emission.csv' does not exist: b'data/ring_example_20220505-1208511651766931.131114-emission.csv'" + ] + } + ], "source": [ "import pandas as pd\n", "\n", From 0fb96d1837a7feb683ba7cc9a473d029f94b63da Mon Sep 17 00:00:00 2001 From: Gaurav Bagwe Date: Thu, 5 May 2022 18:22:48 -0400 Subject: [PATCH 5/5] virtual environment update --- environment.yml | 2 +- requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/environment.yml b/environment.yml index 661ffdc7f..20a565d32 100644 --- a/environment.yml +++ b/environment.yml @@ -9,7 +9,7 @@ dependencies: - path.py - python-dateutil==2.7.3 - pip>=18.0 - - tensorflow==1.15.2 + - tensorflow-gpu==1.15.2 - setuptools==41.0.0 - plotly==2.4.0 - gym==0.14.0 diff --git a/requirements.txt b/requirements.txt index b703e2bf5..868187362 100644 --- a/requirements.txt +++ b/requirements.txt @@ -25,7 +25,7 @@ redis pandas==0.24.2 plotly==2.4.0 tabulate -tensorflow==1.15.2 +tensorflow-gpu==1.15.2 awscli==1.16.309 torch==1.4.0 pytz