{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "√√√√√Enviroment Initialized Success√√√√√\n", "√√√√√Buffer Initialized Success√√√√√\n" ] } ], "source": [ "import time\n", "import aimBotEnv\n", "from GAILMem import GAILMem\n", "from HumanAction import HumanActions\n", "\n", "# Env\n", "ENV_PATH = \"./Build-CloseEnemyCut/Aimbot-PPO\"\n", "WORKER_ID = 1\n", "BASE_PORT = 200\n", "\n", "# ENV Para\n", "MOUSEDISCOUNT = 20.0\n", "MAX_EP = 10000000\n", "STACKSTATESIZE = 3\n", "STACKINTERCE = 29\n", "\n", "env = aimBotEnv.makeEnv(\n", " envPath=ENV_PATH,\n", " workerID=WORKER_ID,\n", " basePort=BASE_PORT,\n", " stackSize=STACKSTATESIZE,\n", " stackIntercal=STACKINTERCE,\n", ")\n", "demoMem = GAILMem()\n", "demoAct = HumanActions(mouseDiscount=MOUSEDISCOUNT)\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "EP Start\n", "EP Start\n", "EP Start\n", "nowMemNum 743\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "c:\\Users\\UCUNI\\OneDrive\\Unity\\ML-Agents\\Aimbot-PPO\\Aimbot-PPO-Python\\GAILMem.py:33: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray.\n", " actionsNP = np.asarray(self.actions)\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "nowMemNum 993\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 1199\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 1426\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 1671\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 1890\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 2097\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 2307\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 2510\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 2710\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 2889\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 3079\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 3263\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 3506\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 3764\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 3982\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 4155\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 4338\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 4530\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 4749\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 4979\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 5159\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 5358\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 5641\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 5887\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 6085\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 6312\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 6471\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 6691\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 6885\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 7086\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 7248\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 7437\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 7608\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 7788\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 8020\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 8193\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 8447\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 8675\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 8869\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 9046\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 9260\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 9469\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 9633\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 9802\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 10019\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 10205\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 10387\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 10657\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 10834\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 11071\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 11284\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 11516\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 11735\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 11948\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 12157\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 12330\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 12565\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 12768\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 12944\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 13129\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 13292\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 13590\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 13765\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 13921\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 14083\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 14254\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 14445\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 14662\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 14833\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 15056\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 15258\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 15425\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 15590\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 15829\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 16057\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 16237\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 16411\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 16612\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 16812\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 17001\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 17173\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 17342\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 17515\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 17715\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 17890\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 18072\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 18261\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 18489\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 18701\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 18886\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 19100\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 19318\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 19487\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 19670\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 19881\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 20041\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 20279\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 20491\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 20679\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 20877\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 21070\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 21305\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 21519\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 21760\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 21936\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 22135\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 22304\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 22512\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 22706\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 22882\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 23123\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 23290\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 23453\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 23707\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 23942\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 24153\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 24346\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 24573\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 24757\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n", "nowMemNum 24957\n", "lastMemCheckPoint 1\n", "mem_saved\n", "EP Start\n" ] }, { "ename": "UnityCommunicatorStoppedException", "evalue": "Communicator has exited.", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mUnityCommunicatorStoppedException\u001b[0m Traceback (most recent call last)", "\u001b[1;32m~\\AppData\\Local\\Temp/ipykernel_19308/2258777724.py\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 7\u001b[0m \u001b[1;32mwhile\u001b[0m \u001b[1;32mnot\u001b[0m \u001b[0mdone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[0mactions\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mdemoAct\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mgetHumanActions\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 9\u001b[1;33m \u001b[0mnextState\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0m_\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mdone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0m_\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0m_\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0menv\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mstep\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mactions\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mactions\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 10\u001b[0m \u001b[0mdemoMem\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msaveMems\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mstate\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mstate\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mactorProb\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;32mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0maction\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mactions\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mreward\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;32mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mdone\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;32mNone\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 11\u001b[0m \u001b[0mstate\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mnextState\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mc:\\Users\\UCUNI\\OneDrive\\Unity\\ML-Agents\\Aimbot-PPO\\Aimbot-PPO-Python\\aimBotEnv.py\u001b[0m in \u001b[0;36mstep\u001b[1;34m(self, actions, behaviorName, trackedAgent)\u001b[0m\n\u001b[0;32m 86\u001b[0m \u001b[1;31m# take action to env\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 87\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0menv\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mset_actions\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mbehavior_name\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mbehaviorName\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0maction\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mthisActionTuple\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 88\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0menv\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mstep\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 89\u001b[0m \u001b[1;31m# get nextState & reward & done after this action\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 90\u001b[0m \u001b[0mnextState\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mreward\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mdone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mloadDir\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msaveNow\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mgetSteps\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mbehaviorName\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mtrackedAgent\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mc:\\Users\\UCUNI\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\mlagents_envs\\timers.py\u001b[0m in \u001b[0;36mwrapped\u001b[1;34m(*args, **kwargs)\u001b[0m\n\u001b[0;32m 303\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mwrapped\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 304\u001b[0m \u001b[1;32mwith\u001b[0m \u001b[0mhierarchical_timer\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfunc\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m__qualname__\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 305\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 306\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 307\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mwrapped\u001b[0m \u001b[1;31m# type: ignore\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mc:\\Users\\UCUNI\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\mlagents_envs\\environment.py\u001b[0m in \u001b[0;36mstep\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 333\u001b[0m \u001b[0moutputs\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_communicator\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mexchange\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mstep_input\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_poll_process\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 334\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0moutputs\u001b[0m \u001b[1;32mis\u001b[0m \u001b[1;32mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 335\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mUnityCommunicatorStoppedException\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Communicator has exited.\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 336\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_update_behavior_specs\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0moutputs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 337\u001b[0m \u001b[0mrl_output\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0moutputs\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mrl_output\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;31mUnityCommunicatorStoppedException\u001b[0m: Communicator has exited." ] } ], "source": [ "gailExpertDataDir = \"GAIL-Expert-Data/\"\n", "state, _, _, _, _ = env.reset()\n", "\n", "for ep in range(MAX_EP):\n", " print(\"EP Start\")\n", " done = False\n", " while not done:\n", " actions = demoAct.getHumanActions()\n", " nextState, _, done, _, _ = env.step(actions=actions)\n", " demoMem.saveMems(state=state, actorProb=None, action=actions, reward=None, done=None)\n", " state = nextState\n", " nowMemNum = demoMem.memNum\n", " saveSteps = 500\n", " lastMemCheckPoint = 0\n", " if nowMemNum / saveSteps >= lastMemCheckPoint + 1:\n", " lastMemCheckPoint +=1\n", " print(\"nowMemNum\", nowMemNum)\n", " print(\"lastMemCheckPoint\", lastMemCheckPoint)\n", " demoMem.saveMemtoFile(gailExpertDataDir)\n", " print(\"mem_saved\")\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3.9.7 64-bit", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.7" }, "orig_nbformat": 4, "vscode": { "interpreter": { "hash": "86e2db13b09bd6be22cb599ea60c1572b9ef36ebeaa27a4c8e961d6df315ac32" } } }, "nbformat": 4, "nbformat_minor": 2 }