diff --git a/.gitignore b/.gitignore index e5f932a..50723d9 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,6 @@ __pycache__/ .envrc devbox.json devbox.lock + +# Git worktrees +worktrees/ diff --git a/GotoTest/.gitignore b/GotoTest_garage/.gitignore similarity index 100% rename from GotoTest/.gitignore rename to GotoTest_garage/.gitignore diff --git a/GotoTest/GotoTest b/GotoTest_garage/GotoTest similarity index 100% rename from GotoTest/GotoTest rename to GotoTest_garage/GotoTest diff --git a/GotoTest/GotoTest.json b/GotoTest_garage/GotoTest.json similarity index 100% rename from GotoTest/GotoTest.json rename to GotoTest_garage/GotoTest.json diff --git a/GotoTest/GotoTest.nim b/GotoTest_garage/GotoTest.nim similarity index 100% rename from GotoTest/GotoTest.nim rename to GotoTest_garage/GotoTest.nim diff --git a/GotoTest/GotoTest.nimble b/GotoTest_garage/GotoTest.nimble similarity index 100% rename from GotoTest/GotoTest.nimble rename to GotoTest_garage/GotoTest.nimble diff --git a/GotoTest/config.nims b/GotoTest_garage/config.nims similarity index 100% rename from GotoTest/config.nims rename to GotoTest_garage/config.nims diff --git a/OscillatorBot/config.nims b/OscillatorBot/config.nims deleted file mode 100644 index 5457dba..0000000 --- a/OscillatorBot/config.nims +++ /dev/null @@ -1 +0,0 @@ ---path:"../libs" diff --git a/OscillatorBot_garage/OscillatorBot b/OscillatorBot_garage/OscillatorBot new file mode 100755 index 0000000..6beaae2 Binary files /dev/null and b/OscillatorBot_garage/OscillatorBot differ diff --git a/OscillatorBot/OscillatorBot.json b/OscillatorBot_garage/OscillatorBot.json similarity index 100% rename from OscillatorBot/OscillatorBot.json rename to OscillatorBot_garage/OscillatorBot.json diff --git a/OscillatorBot/OscillatorBot.nim b/OscillatorBot_garage/OscillatorBot.nim similarity index 100% rename from OscillatorBot/OscillatorBot.nim rename to OscillatorBot_garage/OscillatorBot.nim diff --git a/OscillatorBot/OscillatorBot.sh b/OscillatorBot_garage/OscillatorBot.sh similarity index 100% rename from OscillatorBot/OscillatorBot.sh rename to OscillatorBot_garage/OscillatorBot.sh diff --git a/OscillatorBot_garage/config.nims b/OscillatorBot_garage/config.nims new file mode 100644 index 0000000..be6555f --- /dev/null +++ b/OscillatorBot_garage/config.nims @@ -0,0 +1 @@ +--path:"../common_libs" diff --git a/PPO_Bot/.gitignore b/PPO_Bot_garage/.gitignore similarity index 100% rename from PPO_Bot/.gitignore rename to PPO_Bot_garage/.gitignore diff --git a/PPO_Bot/PPO_Bot b/PPO_Bot_garage/PPO_Bot similarity index 100% rename from PPO_Bot/PPO_Bot rename to PPO_Bot_garage/PPO_Bot diff --git a/PPO_Bot/PPO_Bot.json b/PPO_Bot_garage/PPO_Bot.json similarity index 100% rename from PPO_Bot/PPO_Bot.json rename to PPO_Bot_garage/PPO_Bot.json diff --git a/PPO_Bot/PPO_Bot.nim b/PPO_Bot_garage/PPO_Bot.nim similarity index 100% rename from PPO_Bot/PPO_Bot.nim rename to PPO_Bot_garage/PPO_Bot.nim diff --git a/PPO_Bot/PPO_Bot.nimble b/PPO_Bot_garage/PPO_Bot.nimble similarity index 78% rename from PPO_Bot/PPO_Bot.nimble rename to PPO_Bot_garage/PPO_Bot.nimble index 49f065e..e35363c 100644 --- a/PPO_Bot/PPO_Bot.nimble +++ b/PPO_Bot_garage/PPO_Bot.nimble @@ -7,6 +7,6 @@ bin = @["PPO_Bot"] # Dependencies requires "nim >= 2.0.0" -# tankroyale_botapi is vendored in-tree (libs/tankroyale_botapi) and wired via +# tankroyale_botapi is vendored in-tree (common_libs/tankroyale_botapi) and wired via # config.nims --path; no nimble dependency so builds never touch ~/.nimble/pkgs2. requires "arraymancer >= 0.7.0" diff --git a/PPO_Bot/PPO_Bot.sh b/PPO_Bot_garage/PPO_Bot.sh similarity index 100% rename from PPO_Bot/PPO_Bot.sh rename to PPO_Bot_garage/PPO_Bot.sh diff --git a/PPO_Bot/actions.nim b/PPO_Bot_garage/actions.nim similarity index 100% rename from PPO_Bot/actions.nim rename to PPO_Bot_garage/actions.nim diff --git a/PPO_Bot/config.nims b/PPO_Bot_garage/config.nims similarity index 79% rename from PPO_Bot/config.nims rename to PPO_Bot_garage/config.nims index c95fd68..99bb126 100644 --- a/PPO_Bot/config.nims +++ b/PPO_Bot_garage/config.nims @@ -6,8 +6,8 @@ switch("threads", "on") when withDir(thisDir(), system.fileExists("nimble.paths")): include "nimble.paths" # end Nimble config -# Use the repo-vendored Tank Royale bot API (libs/) instead of the nimble pkg. +# Use the repo-vendored Tank Royale bot API (common_libs/) instead of the nimble pkg. # The pkg copy lived in ~/.nimble/pkgs2 and was patched ad-hoc; vendoring makes # the build self-contained and keeps the cross-thread Channel fix in-tree. # Must come AFTER the nimble.paths include: later --path wins the import search. -switch("path", thisDir() & "/../libs/tankroyale_botapi") +switch("path", thisDir() & "/../common_libs/tankroyale_botapi") diff --git a/PPO_Bot/controllers.nim b/PPO_Bot_garage/controllers.nim similarity index 100% rename from PPO_Bot/controllers.nim rename to PPO_Bot_garage/controllers.nim diff --git a/PPO_Bot/enemy_tracker.nim b/PPO_Bot_garage/enemy_tracker.nim similarity index 100% rename from PPO_Bot/enemy_tracker.nim rename to PPO_Bot_garage/enemy_tracker.nim diff --git a/PPO_Bot/network.nim b/PPO_Bot_garage/network.nim similarity index 100% rename from PPO_Bot/network.nim rename to PPO_Bot_garage/network.nim diff --git a/PPO_Bot/shell.nix b/PPO_Bot_garage/shell.nix similarity index 100% rename from PPO_Bot/shell.nix rename to PPO_Bot_garage/shell.nix diff --git a/PPO_Bot/state_vector.nim b/PPO_Bot_garage/state_vector.nim similarity index 100% rename from PPO_Bot/state_vector.nim rename to PPO_Bot_garage/state_vector.nim diff --git a/PPO_Bot_garage/tests/diag_ppo_fullbuffer b/PPO_Bot_garage/tests/diag_ppo_fullbuffer new file mode 100755 index 0000000..53ae8e1 Binary files /dev/null and b/PPO_Bot_garage/tests/diag_ppo_fullbuffer differ diff --git a/PPO_Bot_garage/tests/diag_ppo_fullbuffer.nim b/PPO_Bot_garage/tests/diag_ppo_fullbuffer.nim new file mode 100644 index 0000000..dcddb1d --- /dev/null +++ b/PPO_Bot_garage/tests/diag_ppo_fullbuffer.nim @@ -0,0 +1,36 @@ +## diag_ppo_fullbuffer.nim — run ppoUpdate on a FULL 8192-transition buffer. +## Verifies whether the round-10 death (first ppoUpdate at buffer capacity) +## is a real crash in ppoUpdate or purely the saveAdamStates empty-shape bug. + +import std/[math, random] +import arraymancer +import "../network" +import "../training" + +var ac = initActorCritic() +var adam: ACAdamStates # uninitialised → ppoUpdate must reinit (fresh-process path) +var buf = initTrajectoryBuffer() + +randomize(1) +while buf.len < MAX_TRANSITIONS: + var t: Transition + for i in 0.. best: + best = v + bestA = a + bestA + +proc selectFireAction(bot: QBot, state: int): int = + if rand(1.0) < bot.epsilon: + return rand(N_FIRE_ACT - 1) + var best = -1e30 + var bestA = 0 + for a in 0 ..< N_FIRE_ACT: + let v = bot.qt2[state * N_FIRE_ACT + a] + if v > best: + best = v + bestA = a + bestA + +proc updateQT1(bot: QBot, state, action: int, reward: float) {.inline.} = + # γ=0 bandit update: Q ← Q + α*(r - Q) + let idx = state * N_AIM_ACT + action + bot.qt1[idx] += ALPHA * (reward - bot.qt1[idx]) + +proc updateQT2(bot: QBot, state, action: int, reward: float) {.inline.} = + let idx = state * N_FIRE_ACT + action + bot.qt2[idx] += ALPHA * (reward - bot.qt2[idx]) + +# ── Bullet ring buffer ──────────────────────────────────────────────────────── + +proc pushPendingBullet(bot: QBot, state, aimAct, fireAct: int) = + # Push a pending record; onBulletFired will stamp the real ID. + bot.bullets[bot.bulletHead] = BulletRecord( + bulletId: -1, state: state, aimAct: aimAct, fireAct: fireAct, valid: true) + bot.bulletHead = (bot.bulletHead + 1) mod BULLET_BUF_CAP + +proc stampBulletId(bot: QBot, realId: int) = + # Find the oldest pending (id=-1) record and stamp it with the real bullet ID. + # Search backwards from bulletHead (most recent push is just before head). + for i in 1 .. BULLET_BUF_CAP: + let idx = (bot.bulletHead - i + BULLET_BUF_CAP) mod BULLET_BUF_CAP + if bot.bullets[idx].valid and bot.bullets[idx].bulletId == -1: + bot.bullets[idx].bulletId = realId + return + +proc resolveBullet(bot: QBot, bulletId: int, reward: float) = + for i in 0 ..< BULLET_BUF_CAP: + if bot.bullets[i].valid and bot.bullets[i].bulletId == bulletId: + let rec = bot.bullets[i] + bot.bullets[i].valid = false + updateQT1(bot, rec.state, rec.aimAct, reward) + updateQT2(bot, rec.state, rec.fireAct, reward) + return + # Not found — bullet from previous round or missed stamp; silently ignore. + +# ── Persistence ─────────────────────────────────────────────────────────────── + +proc saveQTable(bot: QBot) = + createDir(qtablesDir) + let s = newFileStream(qtablesDir / "gun_q.bin", fmWrite) + if s == nil: return + for v in bot.qt1: s.write(v) + for v in bot.qt2: s.write(v) + s.close() + writeFile(qtablesDir / "gun_meta.txt", + "rounds=" & $bot.totalRounds & "\n" & + "epsilon=" & $bot.epsilon & "\n") + +proc loadQTable(bot: QBot) = + let path = qtablesDir / "gun_q.bin" + if not fileExists(path): return + let s = newFileStream(path, fmRead) + if s == nil: return + var i = 0 + while not s.atEnd and i < bot.qt1.len: + bot.qt1[i] = s.readFloat64() + inc i + i = 0 + while not s.atEnd and i < bot.qt2.len: + bot.qt2[i] = s.readFloat64() + inc i + s.close() + let mp = qtablesDir / "gun_meta.txt" + if not fileExists(mp): return + for line in lines(mp): + if line.startsWith("rounds="): + bot.totalRounds = parseInt(line[7..^1]) + elif line.startsWith("epsilon="): + bot.epsilon = parseFloat(line[8..^1]) + +# ── Logging ─────────────────────────────────────────────────────────────────── + +proc logRoundEnd(bot: QBot) = + let hitRate = if bot.roundShots > 0: + float(bot.roundHits) / float(bot.roundShots) + else: 0.0 + stderr.writeLine("[QBot] round=" & $bot.totalRounds & + " shots=" & $bot.roundShots & + " hits=" & $bot.roundHits & + " hitRate=" & formatFloat(hitRate, ffDecimal, 3) & + " eps=" & formatFloat(bot.epsilon, ffDecimal, 3)) + + # Top 5 T1 Q-values + type QEntry = tuple[v: float; s, a: int] + var top: array[5, QEntry] + var topN = 0 + for s in 0 ..< N_STATES: + for a in 0 ..< N_AIM_ACT: + let v = bot.qt1[s * N_AIM_ACT + a] + if topN < 5: + top[topN] = (v, s, a) + inc topN + else: + var minIdx = 0 + for j in 1 ..< 5: + if top[j].v < top[minIdx].v: minIdx = j + if v > top[minIdx].v: + top[minIdx] = (v, s, a) + # Sort descending (simple insertion sort over 5 elements) + for i in 0 ..< topN - 1: + for j in i + 1 ..< topN: + if top[j].v > top[i].v: + let tmp = top[i]; top[i] = top[j]; top[j] = tmp + stderr.writeLine("[QBot] top T1 Q-values:") + for i in 0 ..< topN: + stderr.writeLine(" s=" & $top[i].s & " aimAct=" & $top[i].a & + " offset=" & formatFloat(AIM_OFFSETS[top[i].a], ffDecimal, 1) & "deg" & + " q=" & formatFloat(top[i].v, ffDecimal, 4)) + +# ── Event handlers ──────────────────────────────────────────────────────────── + +method onScannedBot*(bot: QBot, e: ScannedBotEvent) = + bot.enemyX = e.x + bot.enemyY = e.y + bot.enemyDir = e.direction + bot.enemySpeed = e.speed + bot.hasContact = true + bot.ticksSinceScan = 0 + +method onBulletFired*(bot: QBot, e: BulletFiredEvent) = + # Stamp the pending bullet record with the real ID assigned by the server. + bot.stampBulletId(e.bullet.bulletId) + +method onBulletHit*(bot: QBot, e: BulletHitBotEvent) = + if e.victimId != getMyId(): + inc bot.roundHits + bot.resolveBullet(e.bullet.bulletId, +1.0) + +method onBulletHitWall*(bot: QBot, e: BulletHitWallEvent) = + if e.bullet.ownerId == getMyId(): + inc bot.roundMisses + bot.resolveBullet(e.bullet.bulletId, -0.2) + +method onRoundStarted*(bot: QBot, e: RoundStartedEvent) = + setAdjustGunForBodyTurn(true) + setAdjustRadarForBodyTurn(true) + setAdjustRadarForGunTurn(true) + radar_lock.init() + bot.hasContact = false + bot.roundHits = 0 + bot.roundMisses = 0 + bot.roundShots = 0 + bot.ticksSinceScan = 0 + # Invalidate bullet buffer between rounds + for i in 0 ..< BULLET_BUF_CAP: bot.bullets[i].valid = false + bot.bulletHead = 0 + setTargetSpeed(0.0) + setTurnRate(0.0) + bot.epsilon = max(EPS_FLOOR, bot.epsilon * EPS_DECAY) + +method onRoundEnded*(bot: QBot, e: RoundEndedEventForBot) = + inc bot.totalRounds + # Bullets still in flight at round end → treat as misses + for i in 0 ..< BULLET_BUF_CAP: + if bot.bullets[i].valid: + updateQT1(bot, bot.bullets[i].state, bot.bullets[i].aimAct, -0.2) + updateQT2(bot, bot.bullets[i].state, bot.bullets[i].fireAct, -0.2) + bot.bullets[i].valid = false + logRoundEnd(bot) + +method onGameStarted*(bot: QBot, e: GameStartedEventForBot) = + loadQTable(bot) + randomize() + +method onGameEnded*(bot: QBot, e: GameEndedEventForBot) = + saveQTable(bot) + stderr.writeLine("[QBot] game ended rounds=" & $bot.totalRounds & + " eps=" & formatFloat(bot.epsilon, ffDecimal, 3)) + +# ── Main loop ───────────────────────────────────────────────────────────────── + +method run*(bot: QBot) = + while isRunning(): + setTargetSpeed(0.0) + setTurnRate(0.0) + + inc bot.ticksSinceScan + if bot.ticksSinceScan > 5: + bot.hasContact = false + + if not bot.hasContact: + setRadarTurnRate(45.0) + go() + continue + + let myX = getX() + let myY = getY() + let gunDir = getGunDirection() + let dist = hypot(myX - bot.enemyX, myY - bot.enemyY) + # Absolute bearing from us to enemy + let bearingToEnemy = directionTo(myX, myY, bot.enemyX, bot.enemyY) + # Gun aim error: how far off our gun is from direct bearing to enemy + let gunAimError = normalizeRelativeAngle(bearingToEnemy - gunDir) + # Lateral speed: enemy velocity perpendicular to our line of sight + let lateralSpeed = bot.enemySpeed * sin(degToRad(bot.enemyDir - bearingToEnemy)) + + let state = discretizeState(gunAimError, dist, lateralSpeed, getGunHeat()) + + # Select actions (no per-tick Q-update — updates happen only on bullet resolution) + let aimAct = bot.selectAimAction(state) + let fireAct = bot.selectFireAction(state) + + # Compute gun turn: aim at enemy bearing + selected offset, clamped to ±20 deg/tick + let aimOffset = AIM_OFFSETS[aimAct] + let desiredDelta = normalizeRelativeAngle(bearingToEnemy + aimOffset - gunDir) + setGunTurnRate(desiredDelta.clamp(-20.0, 20.0)) + + # Fire if the action calls for it and the gun is ready + let firePower = FIRE_POWERS[fireAct] + if firePower > 0.0 and getGunHeat() <= 0.0: + if setFire(firePower): + inc bot.roundShots + # Push a pending record; onBulletFired (fired next tick) stamps the real ID + bot.pushPendingBullet(state, aimAct, fireAct) + + # Radar lock + setRadarTurnRate(radar_lock.doRadar(getRadarDirection(), bearingToEnemy)) + + go() + +# ── Entry point ─────────────────────────────────────────────────────────────── + +when isMainModule: + createDir(qtablesDir) + var bot = QBot(epsilon: EPS_INIT) + for i in 0 ..< bot.qt1.len: bot.qt1[i] = Q_INIT + for i in 0 ..< bot.qt2.len: bot.qt2[i] = Q_INIT + start(bot, botJsonPath) diff --git a/QBot_garage/QBot.nimble b/QBot_garage/QBot.nimble new file mode 100644 index 0000000..e8bf9a9 --- /dev/null +++ b/QBot_garage/QBot.nimble @@ -0,0 +1,11 @@ +# Package +version = "0.1.0" +author = "Davide Cappellini" +description = "Tabular Q-learning Tank Royale bot — chained action decomposition prototype" +license = "MIT" +bin = @["QBot"] + +# Dependencies +requires "nim >= 2.0.0" +# tankroyale_botapi and radar_lock are vendored in-tree (common_libs/) and wired via +# config.nims --path; no nimble dependency so builds never touch ~/.nimble/pkgs2. diff --git a/QBot_garage/QBot.sh b/QBot_garage/QBot.sh new file mode 100755 index 0000000..4a0fe28 --- /dev/null +++ b/QBot_garage/QBot.sh @@ -0,0 +1,3 @@ +#!/bin/sh +cd "$(dirname "$0")" +exec ./QBot 2>> /tmp/qbot_stderr.log diff --git a/QBot_garage/config.nims b/QBot_garage/config.nims new file mode 100644 index 0000000..be6555f --- /dev/null +++ b/QBot_garage/config.nims @@ -0,0 +1 @@ +--path:"../common_libs" diff --git a/SAC_LSTM_Bot/docs/campaign_dashboard.svg b/SAC_LSTM_Bot/docs/campaign_dashboard.svg deleted file mode 100644 index 66993f4..0000000 --- a/SAC_LSTM_Bot/docs/campaign_dashboard.svg +++ /dev/null @@ -1,355 +0,0 @@ - - -SAC-LSTM campaign dashboard - live run (current only) -generated 2026-08-24 11:10:31 - auto-reloads every 60 s (open this file in Chrome) -Test matches - win % vs opponents -raw dots = single test matches, thick = rolling-mean-10 -What: How often the bot wins against each opponent in test battles. -Axes: X = training progress (match number); Y = win rate, 0-100%. -Better: higher is better. - - - - - - - - - -1 - -2 - -3 - -4 - -5 - -0 - -20 - -40 - -60 - -80 - -100 -test match number (each opponent) -win rate (%) - - - - - - - - - - - - - - - - - - - -Corners - 5 evals - -Crazy - 5 evals - -Target - 5 evals -Training losses (log) & alpha (linear) -training_metrics.jsonl - big early spikes are normal -What: How well the brain is learning: losses should fall; alpha sets explore/exploit. -Axes: X = training progress; left Y (log) = losses; right Y (linear) = alpha. -Better: lower losses = better; alpha falls over time as the bot gets confident. - - - - - - - - -1 - -24 - -46 - -69 - -92 - -0.01 - -0.1 - -1 - -10 - -100 -metric line number -loss (log) - - - - - - - - - -0 - -0.25 - -0.5 - -0.75 - -1 -alpha - - -critic_loss - -|actor_loss| - -alpha -Throughput - games per hour -method: training_metrics.jsonl 'epoch' deltas; 1 row = one 10-game chunk -What: How many games per hour the bot trains (its learning speed). -Axes: X = training progress (10-game chunks); Y = games per hour. -Better: higher = faster learning; a steady line beats a spiky one. - - - - - - - - -9 - -18 - -27 - -36 - -45 - -54 - -63 - -72 - -81 - -90 - -0 - -1653 - -3305 - -4958 - -6611 -chunk interval (10-game chunks) -games / hour - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Max score per eval cycle -campaign_v4_stdout.log - max of the 10 deterministic round scores per eval -What: Best single-round score the bot managed in each test cycle. -Axes: X = eval cycle number; Y = best score achieved. -Better: higher is better; a rising trend means the bot is improving. - - - - - - - - -1 - -2 - -3 - -4 - -5 - -0 - -46 - -92 - -138 - -184 -eval cycle number -best single-round score - - - - - - - - - - - - - - - - - - - - -Corners - 5 evals - -Crazy - 5 evals - -Target - 5 evals - -combined max - -Reading the signs -Regenerate anytime: python3 tools/plot_progress.py -Healthy patterns ✅ -• Both critic and actor losses trending down over time -• Alpha decaying slowly from ~1.0, - then plateauing — this is normal -• Win rates appearing and increasing in the eval panel -• Max scores rising in the max-score panel -• Alpha plateauing is NOT a problem — it means - exploration level is stable -Warning signs ⚠️ -• Losses exploding (suddenly jumping to - millions or billions) -• Win rates staying at 0% for a long time - after the first ~20 eval cycles -• Alpha reaching 0 — bot stops exploring entirely - (gets stuck) -• Max scores flatlining (no improvement - over many eval cycles) -• Any single loss value above 1e6 -What each metric means (brief) -• Critic loss: how wrong the bot's value - estimates are — should go down -• Actor loss: how well the bot's action policy - is doing — should go down overall - (some bumps are normal) -• Alpha: exploration-exploitation tradeoff — starts - high, settles at a positive value (NOT zero) -• Max score: best score achieved per eval cycle — - rising trend = learning - - diff --git a/SAC_LSTM_Bot_garage/SAC_LSTM_Bot b/SAC_LSTM_Bot_garage/SAC_LSTM_Bot new file mode 100755 index 0000000..bb118a0 Binary files /dev/null and b/SAC_LSTM_Bot_garage/SAC_LSTM_Bot differ diff --git a/SAC_LSTM_Bot/SAC_LSTM_Bot.json b/SAC_LSTM_Bot_garage/SAC_LSTM_Bot.json similarity index 100% rename from SAC_LSTM_Bot/SAC_LSTM_Bot.json rename to SAC_LSTM_Bot_garage/SAC_LSTM_Bot.json diff --git a/SAC_LSTM_Bot/SAC_LSTM_Bot.nimble b/SAC_LSTM_Bot_garage/SAC_LSTM_Bot.nimble similarity index 80% rename from SAC_LSTM_Bot/SAC_LSTM_Bot.nimble rename to SAC_LSTM_Bot_garage/SAC_LSTM_Bot.nimble index 6a42dc9..21741da 100644 --- a/SAC_LSTM_Bot/SAC_LSTM_Bot.nimble +++ b/SAC_LSTM_Bot_garage/SAC_LSTM_Bot.nimble @@ -8,6 +8,6 @@ bin = @["SAC_LSTM_Bot"] # Dependencies requires "nim >= 2.0.0" -# tankroyale_botapi is vendored in-tree (libs/tankroyale_botapi) and wired via +# tankroyale_botapi is vendored in-tree (common_libs/tankroyale_botapi) and wired via # config.nims --path; no nimble dependency so builds never touch ~/.nimble/pkgs2. requires "arraymancer >= 0.7.0" diff --git a/SAC_LSTM_Bot/SAC_LSTM_Bot.sh b/SAC_LSTM_Bot_garage/SAC_LSTM_Bot.sh similarity index 100% rename from SAC_LSTM_Bot/SAC_LSTM_Bot.sh rename to SAC_LSTM_Bot_garage/SAC_LSTM_Bot.sh diff --git a/SAC_LSTM_Bot_garage/campaign_v4_stdout.log.pre-merge b/SAC_LSTM_Bot_garage/campaign_v4_stdout.log.pre-merge new file mode 100644 index 0000000..06ed4e9 --- /dev/null +++ b/SAC_LSTM_Bot_garage/campaign_v4_stdout.log.pre-merge @@ -0,0 +1,173 @@ +=== SAC_LSTM_Bot training harness === +Opponents: Corners:3,Crazy:2,RamFire:2,Target:1,SacTwin:1 | budget: 100 rounds in chunks of 10 +Eval: every 2 chunks, 10 rounds vs [Corners,Crazy,Target], MA-5 composite best-gating +Weights: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/weights/sac_latest.zip + Building SAC_LSTM_Bot/SAC_LSTM_Bot using c backend + Info: compiling nim package using /nix/store/pq494yyknvhrvkzna9zgcqvma8fq3617-x86_64-unknown-linux-gnu-nim-wrapper-2.2.4/bin/x86_64-unknown-linux-gnu-nim +=== Chunk 1/10: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:684 score:0 win:false +Round 2/10 — ticks:631 score:0 win:false +Round 3/10 — ticks:738 score:0 win:false +Round 4/10 — ticks:920 score:31 win:false +Round 5/10 — ticks:682 score:0 win:false +Round 6/10 — ticks:650 score:0 win:false +Round 7/10 — ticks:988 score:0 win:false +Round 8/10 — ticks:365 score:2 win:false +Round 9/10 — ticks:481 score:32 win:false +Round 10/10 — ticks:703 score:16 win:false +Counter check passed: 2291 == expected 2291 +=== Chunk 2/10: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:667 score:17 win:false +Round 2/10 — ticks:709 score:0 win:false +Round 3/10 — ticks:856 score:49 win:false +Round 4/10 — ticks:794 score:2 win:false +Round 5/10 — ticks:791 score:1 win:false +Round 6/10 — ticks:936 score:19 win:false +Round 7/10 — ticks:625 score:3 win:false +Round 8/10 — ticks:977 score:21 win:false +Round 9/10 — ticks:658 score:1 win:false +Round 10/10 — ticks:825 score:1 win:false +Counter check passed: 2301 == expected 2301 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:3657 score:0 win:false +Round 2/10 — ticks:3007 score:60 win:false +Round 3/10 — ticks:3786 score:0 win:false +Round 4/10 — ticks:1312 score:5 win:false +Round 5/10 — ticks:1310 score:2 win:false +Round 6/10 — ticks:1668 score:0 win:false +Round 7/10 — ticks:1290 score:0 win:false +Round 8/10 — ticks:1537 score:1 win:false +Round 9/10 — ticks:1201 score:0 win:false +Round 10/10 — ticks:4406 score:60 win:false +Counter check passed: 2311 == expected 2311 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1898 score:1 win:false +Round 2/10 — ticks:1327 score:11 win:false +Round 3/10 — ticks:1669 score:5 win:false +Round 4/10 — ticks:945 score:61 win:false +Round 5/10 — ticks:1775 score:67 win:false +Round 6/10 — ticks:1452 score:5 win:false +Round 7/10 — ticks:1002 score:0 win:false +Round 8/10 — ticks:2124 score:64 win:false +Round 9/10 — ticks:1460 score:1 win:false +Round 10/10 — ticks:935 score:61 win:false +Counter check passed: 2321 == expected 2321 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:992 score:1 win:false +Round 2/10 — ticks:1442 score:60 win:true +Round 3/10 — ticks:1002 score:17 win:false +Round 4/10 — ticks:1026 score:1 win:false +Round 5/10 — ticks:992 score:7 win:false +Round 6/10 — ticks:1422 score:60 win:false +Round 7/10 — ticks:964 score:9 win:false +Round 8/10 — ticks:1398 score:1 win:false +Round 9/10 — ticks:1014 score:4 win:false +Round 10/10 — ticks:1435 score:60 win:false +Counter check passed: 2331 == expected 2331 +>>> [eval] win rate: 1/10 (10%) vs Target +=== Chunk 3/10: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:1012 score:26 win:false +Round 2/10 — ticks:653 score:0 win:false +Round 3/10 — ticks:650 score:0 win:false +Round 4/10 — ticks:676 score:0 win:false +Round 5/10 — ticks:651 score:0 win:false +Round 6/10 — ticks:931 score:22 win:false +Round 7/10 — ticks:954 score:6 win:false +Round 8/10 — ticks:670 score:0 win:false +Round 9/10 — ticks:722 score:0 win:false +Round 10/10 — ticks:897 score:21 win:false +Counter check passed: 2341 == expected 2341 +=== Chunk 4/10: 10 rounds vs SacTwin === +Training: SAC_LSTM_Bot vs SacTwin for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:821 score:0 win:false +Round 2/10 — ticks:837 score:3 win:false +Round 3/10 — ticks:858 score:4 win:false +Round 4/10 — ticks:934 score:14 win:false +Round 5/10 — ticks:1058 score:36 win:false +Round 6/10 — ticks:1241 score:76 win:false +Round 7/10 — ticks:958 score:16 win:false +Round 8/10 — ticks:940 score:33 win:false +Round 9/10 — ticks:707 score:0 win:false +Round 10/10 — ticks:689 score:0 win:false +Counter check passed: 2351 == expected 2351 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1647 score:0 win:false +Round 2/10 — ticks:1518 score:0 win:false +Round 3/10 — ticks:1733 score:0 win:false +Round 4/10 — ticks:1731 score:0 win:false +Round 5/10 — ticks:1077 score:17 win:false +Round 6/10 — ticks:1745 score:0 win:false +Round 7/10 — ticks:1634 score:0 win:false +Round 8/10 — ticks:1710 score:1 win:false +Round 9/10 — ticks:2180 score:60 win:false +Round 10/10 — ticks:1364 score:0 win:false +Counter check passed: 2361 == expected 2361 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1426 score:68 win:true +Round 2/10 — ticks:1649 score:70 win:true +Round 3/10 — ticks:1456 score:64 win:true +Round 4/10 — ticks:1032 score:61 win:true +Round 5/10 — ticks:1710 score:1 win:true +Round 6/10 — ticks:941 score:61 win:true +Round 7/10 — ticks:1455 score:61 win:true +Round 8/10 — ticks:1323 score:66 win:true +Round 9/10 — ticks:1035 score:5 win:true +Round 10/10 — ticks:1457 score:65 win:true +Counter check passed: 2371 == expected 2371 +>>> [eval] win rate: 10/10 (100%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1014 score:14 win:false +Round 2/10 — ticks:1074 score:20 win:false +Round 3/10 — ticks:996 score:6 win:false +Round 4/10 — ticks:1451 score:0 win:false +Round 5/10 — ticks:970 score:25 win:false +Round 6/10 — ticks:1451 score:0 win:false +Round 7/10 — ticks:1044 score:1 win:false +Round 8/10 — ticks:1119 score:13 win:false +Round 9/10 — ticks:1184 score:15 win:false +Round 10/10 — ticks:1028 score:9 win:false +Counter check passed: 2381 == expected 2381 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 5/10: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:882 score:0 win:false +Round 2/10 — ticks:865 score:0 win:false +Round 3/10 — ticks:908 score:0 win:false +Round 4/10 — ticks:720 score:1 win:false +Round 5/10 — ticks:832 score:17 win:false +Round 6/10 — ticks:957 score:16 win:false +Round 7/10 — ticks:723 score:3 win:false +Round 8/10 — ticks:645 score:0 win:false +Round 9/10 — ticks:963 score:0 win:false +Round 10/10 — ticks:1032 score:16 win:false +Counter check passed: 2391 == expected 2391 +=== Chunk 6/10: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:818 score:0 win:false +Round 2/10 — ticks:905 score:0 win:false +Round 3/10 — ticks:851 score:0 win:false +Round 4/10 — ticks:381 score:32 win:false diff --git a/SAC_LSTM_Bot_garage/campaign_v4_stdout.log.prereboot-20260824T1033 b/SAC_LSTM_Bot_garage/campaign_v4_stdout.log.prereboot-20260824T1033 new file mode 100644 index 0000000..5e3fcab --- /dev/null +++ b/SAC_LSTM_Bot_garage/campaign_v4_stdout.log.prereboot-20260824T1033 @@ -0,0 +1,2982 @@ +=== SAC_LSTM_Bot training harness === +Opponents: Corners:3,Crazy:2,RamFire:2,Target:1,SacTwin:1 | budget: 25000 rounds in chunks of 10 +Eval: every 2 chunks, 10 rounds vs [Corners,Crazy,Target], MA-5 composite best-gating +Weights: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/weights/sac_latest.zip + Building SAC_LSTM_Bot/SAC_LSTM_Bot using c backend + Info: compiling nim package using /nix/store/pq494yyknvhrvkzna9zgcqvma8fq3617-x86_64-unknown-linux-gnu-nim-wrapper-2.2.4/bin/x86_64-unknown-linux-gnu-nim +=== Chunk 1/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:599 score:0 win:false +Round 2/10 — ticks:849 score:14 win:false +Round 3/10 — ticks:584 score:18 win:false +Round 4/10 — ticks:257 score:12 win:false +Round 5/10 — ticks:701 score:0 win:false +Round 6/10 — ticks:663 score:0 win:false +Round 7/10 — ticks:577 score:9 win:false +Round 8/10 — ticks:623 score:0 win:false +Round 9/10 — ticks:653 score:0 win:false +Round 10/10 — ticks:844 score:16 win:false +Counter check passed: 10 == expected 9 +=== Chunk 2/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:685 score:4 win:false +Round 2/10 — ticks:620 score:0 win:false +Round 3/10 — ticks:722 score:7 win:false +Round 4/10 — ticks:646 score:29 win:false +Round 5/10 — ticks:634 score:0 win:false +Round 6/10 — ticks:688 score:12 win:false +Round 7/10 — ticks:618 score:0 win:false +Round 8/10 — ticks:604 score:17 win:false +Round 9/10 — ticks:619 score:11 win:false +Round 10/10 — ticks:614 score:0 win:false +Counter check passed: 20 == expected 20 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:927 score:0 win:false +Round 2/10 — ticks:1483 score:2 win:false +Round 3/10 — ticks:662 score:4 win:false +Round 4/10 — ticks:974 score:7 win:false +Round 5/10 — ticks:648 score:0 win:false +Round 6/10 — ticks:1135 score:1 win:false +Round 7/10 — ticks:682 score:0 win:false +Round 8/10 — ticks:966 score:2 win:false +Round 9/10 — ticks:260 score:74 win:false +Round 10/10 — ticks:1676 score:5 win:false +Counter check passed: 30 == expected 30 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1566 score:6 win:false +Round 2/10 — ticks:1578 score:6 win:false +Round 3/10 — ticks:1599 score:3 win:false +Round 4/10 — ticks:1484 score:6 win:false +Round 5/10 — ticks:1780 score:7 win:false +Round 6/10 — ticks:1458 score:7 win:false +Round 7/10 — ticks:1532 score:5 win:false +Round 8/10 — ticks:1713 score:4 win:false +Round 9/10 — ticks:1522 score:2 win:false +Round 10/10 — ticks:1228 score:11 win:false +Counter check passed: 40 == expected 40 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1430 score:3 win:false +Round 2/10 — ticks:3380 score:16 win:false +Round 3/10 — ticks:3561 score:13 win:false +Round 4/10 — ticks:1529 score:3 win:false +Round 5/10 — ticks:2703 score:7 win:false +Round 6/10 — ticks:992 score:0 win:false +Round 7/10 — ticks:1001 score:0 win:false +Round 8/10 — ticks:1320 score:92 win:false +Round 9/10 — ticks:1036 score:0 win:false +Round 10/10 — ticks:1030 score:0 win:false +Counter check passed: 50 == expected 50 +>>> [eval] win rate: 0/10 (0%) vs Target +>>> [eval] new best composite (0.0000) -> sac_best.zip +=== Chunk 3/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:729 score:0 win:false +Round 2/10 — ticks:761 score:0 win:false +Round 3/10 — ticks:736 score:1 win:false +Round 4/10 — ticks:721 score:0 win:false +Round 5/10 — ticks:639 score:0 win:false +Round 6/10 — ticks:695 score:9 win:false +Round 7/10 — ticks:689 score:26 win:false +Round 8/10 — ticks:651 score:0 win:false +Round 9/10 — ticks:583 score:15 win:false +Round 10/10 — ticks:656 score:15 win:false +Counter check passed: 60 == expected 60 +=== Chunk 4/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:563 score:16 win:false +Round 2/10 — ticks:705 score:5 win:false +Round 3/10 — ticks:537 score:1 win:false +Round 4/10 — ticks:613 score:1 win:false +Round 5/10 — ticks:577 score:1 win:false +Round 6/10 — ticks:766 score:45 win:false +Round 7/10 — ticks:717 score:16 win:false +Round 8/10 — ticks:578 score:1 win:false +Round 9/10 — ticks:634 score:0 win:false +Round 10/10 — ticks:664 score:0 win:false +Counter check passed: 70 == expected 70 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:190 score:100 win:false +Round 2/10 — ticks:1050 score:2 win:false +Round 3/10 — ticks:669 score:5 win:false +Round 4/10 — ticks:552 score:6 win:false +Round 5/10 — ticks:319 score:23 win:false +Round 6/10 — ticks:1164 score:0 win:false +Round 7/10 — ticks:1121 score:0 win:false +Round 8/10 — ticks:1136 score:8 win:false +Round 9/10 — ticks:1213 score:5 win:false +Round 10/10 — ticks:973 score:3 win:false +Counter check passed: 80 == expected 80 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1020 score:4 win:false +Round 2/10 — ticks:1116 score:7 win:false +Round 3/10 — ticks:911 score:0 win:false +Round 4/10 — ticks:1226 score:4 win:false +Round 5/10 — ticks:1072 score:8 win:false +Round 6/10 — ticks:1119 score:5 win:false +Round 7/10 — ticks:1046 score:4 win:false +Round 8/10 — ticks:1100 score:5 win:false +Round 9/10 — ticks:1104 score:4 win:false +Round 10/10 — ticks:1178 score:9 win:false +Counter check passed: 90 == expected 90 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:775 score:51 win:false +Round 2/10 — ticks:972 score:40 win:false +Round 3/10 — ticks:1075 score:3 win:false +Round 4/10 — ticks:1165 score:6 win:false +Round 5/10 — ticks:879 score:90 win:false +Round 6/10 — ticks:784 score:0 win:false +Round 7/10 — ticks:914 score:3 win:false +Round 8/10 — ticks:855 score:85 win:false +Round 9/10 — ticks:1117 score:25 win:false +Round 10/10 — ticks:1127 score:53 win:false +Counter check passed: 100 == expected 100 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 5/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:659 score:16 win:false +Round 2/10 — ticks:887 score:49 win:false +Round 3/10 — ticks:567 score:0 win:false +Round 4/10 — ticks:586 score:0 win:false +Round 5/10 — ticks:1136 score:54 win:false +Round 6/10 — ticks:691 score:17 win:false +Round 7/10 — ticks:522 score:0 win:false +Round 8/10 — ticks:553 score:0 win:false +Round 9/10 — ticks:522 score:17 win:false +Round 10/10 — ticks:737 score:71 win:false +Counter check passed: 110 == expected 110 +=== Chunk 6/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:441 score:43 win:false +Round 2/10 — ticks:216 score:50 win:false +Round 3/10 — ticks:137 score:31 win:false +Round 4/10 — ticks:292 score:24 win:false +Round 5/10 — ticks:385 score:33 win:false +Round 6/10 — ticks:227 score:38 win:false +Round 7/10 — ticks:257 score:41 win:false +Round 8/10 — ticks:208 score:17 win:false +Round 9/10 — ticks:174 score:30 win:false +Round 10/10 — ticks:215 score:43 win:false +Counter check passed: 120 == expected 120 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:861 score:0 win:false +Round 2/10 — ticks:871 score:4 win:false +Round 3/10 — ticks:1465 score:4 win:false +Round 4/10 — ticks:761 score:0 win:false +Round 5/10 — ticks:825 score:5 win:false +Round 6/10 — ticks:707 score:0 win:false +Round 7/10 — ticks:1168 score:6 win:false +Round 8/10 — ticks:754 score:0 win:false +Round 9/10 — ticks:782 score:30 win:false +Round 10/10 — ticks:887 score:5 win:false +Counter check passed: 130 == expected 130 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1138 score:15 win:false +Round 2/10 — ticks:922 score:9 win:false +Round 3/10 — ticks:926 score:6 win:false +Round 4/10 — ticks:703 score:0 win:false +Round 5/10 — ticks:1212 score:22 win:false +Round 6/10 — ticks:848 score:2 win:false +Round 7/10 — ticks:852 score:5 win:false +Round 8/10 — ticks:1057 score:18 win:false +Round 9/10 — ticks:907 score:14 win:false +Round 10/10 — ticks:948 score:15 win:false +Counter check passed: 140 == expected 140 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:814 score:8 win:false +Round 2/10 — ticks:715 score:0 win:false +Round 3/10 — ticks:700 score:7 win:false +Round 4/10 — ticks:671 score:92 win:false +Round 5/10 — ticks:937 score:9 win:false +Round 6/10 — ticks:689 score:0 win:false +Round 7/10 — ticks:723 score:0 win:false +Round 8/10 — ticks:1035 score:5 win:false +Round 9/10 — ticks:798 score:0 win:false +Round 10/10 — ticks:632 score:76 win:false +Counter check passed: 150 == expected 150 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 7/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:218 score:74 win:false +Round 2/10 — ticks:147 score:22 win:false +Round 3/10 — ticks:354 score:26 win:false +Round 4/10 — ticks:262 score:49 win:false +Round 5/10 — ticks:188 score:23 win:false +Round 6/10 — ticks:287 score:20 win:false +Round 7/10 — ticks:274 score:27 win:false +Round 8/10 — ticks:167 score:43 win:false +Round 9/10 — ticks:215 score:75 win:false +Round 10/10 — ticks:181 score:33 win:false +Counter check passed: 160 == expected 160 +=== Chunk 8/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:535 score:0 win:false +Round 2/10 — ticks:605 score:0 win:false +Round 3/10 — ticks:656 score:0 win:false +Round 4/10 — ticks:588 score:0 win:false +Round 5/10 — ticks:571 score:4 win:false +Round 6/10 — ticks:438 score:16 win:false +Round 7/10 — ticks:457 score:1 win:false +Round 8/10 — ticks:749 score:16 win:false +Round 9/10 — ticks:501 score:0 win:false +Round 10/10 — ticks:543 score:0 win:false +Counter check passed: 170 == expected 170 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:593 score:0 win:false +Round 2/10 — ticks:713 score:9 win:false +Round 3/10 — ticks:1009 score:0 win:false +Round 4/10 — ticks:643 score:0 win:false +Round 5/10 — ticks:734 score:0 win:false +Round 6/10 — ticks:597 score:0 win:false +Round 7/10 — ticks:618 score:0 win:false +Round 8/10 — ticks:635 score:0 win:false +Round 9/10 — ticks:690 score:0 win:false +Round 10/10 — ticks:705 score:14 win:false +Counter check passed: 180 == expected 180 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:610 score:0 win:false +Round 2/10 — ticks:673 score:2 win:false +Round 3/10 — ticks:1270 score:28 win:false +Round 4/10 — ticks:1103 score:25 win:false +Round 5/10 — ticks:624 score:2 win:false +Round 6/10 — ticks:710 score:16 win:false +Round 7/10 — ticks:755 score:18 win:false +Round 8/10 — ticks:691 score:9 win:false +Round 9/10 — ticks:719 score:0 win:false +Round 10/10 — ticks:977 score:26 win:false +Counter check passed: 190 == expected 190 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:588 score:0 win:false +Round 2/10 — ticks:669 score:22 win:false +Round 3/10 — ticks:729 score:16 win:false +Round 4/10 — ticks:968 score:35 win:false +Round 5/10 — ticks:590 score:0 win:false +Round 6/10 — ticks:781 score:15 win:false +Round 7/10 — ticks:679 score:19 win:false +Round 8/10 — ticks:619 score:5 win:false +Round 9/10 — ticks:827 score:20 win:false +Round 10/10 — ticks:571 score:15 win:false +Counter check passed: 200 == expected 200 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 9/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:325 score:44 win:false +Round 2/10 — ticks:284 score:26 win:false +Round 3/10 — ticks:198 score:24 win:false +Round 4/10 — ticks:198 score:13 win:false +Round 5/10 — ticks:340 score:56 win:false +Round 6/10 — ticks:235 score:42 win:false +Round 7/10 — ticks:283 score:12 win:false +Round 8/10 — ticks:254 score:31 win:false +Round 9/10 — ticks:191 score:11 win:false +Round 10/10 — ticks:218 score:31 win:false +Counter check passed: 210 == expected 210 +=== Chunk 10/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:572 score:0 win:false +Round 2/10 — ticks:599 score:0 win:false +Round 3/10 — ticks:560 score:0 win:false +Round 4/10 — ticks:574 score:0 win:false +Round 5/10 — ticks:650 score:16 win:false +Round 6/10 — ticks:673 score:16 win:false +Round 7/10 — ticks:668 score:2 win:false +Round 8/10 — ticks:914 score:48 win:false +Round 9/10 — ticks:673 score:16 win:false +Round 10/10 — ticks:560 score:0 win:false +Counter check passed: 220 == expected 220 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:583 score:12 win:false +Round 2/10 — ticks:697 score:12 win:false +Round 3/10 — ticks:490 score:7 win:false +Round 4/10 — ticks:645 score:12 win:false +Round 5/10 — ticks:371 score:13 win:false +Round 6/10 — ticks:666 score:12 win:false +Round 7/10 — ticks:789 score:0 win:false +Round 8/10 — ticks:637 score:12 win:false +Round 9/10 — ticks:550 score:2 win:false +Round 10/10 — ticks:527 score:0 win:false +Counter check passed: 230 == expected 230 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:531 score:0 win:false +Round 2/10 — ticks:511 score:0 win:false +Round 3/10 — ticks:579 score:12 win:false +Round 4/10 — ticks:512 score:0 win:false +Round 5/10 — ticks:626 score:24 win:false +Round 6/10 — ticks:491 score:1 win:false +Round 7/10 — ticks:750 score:24 win:false +Round 8/10 — ticks:593 score:4 win:false +Round 9/10 — ticks:555 score:5 win:false +Round 10/10 — ticks:532 score:1 win:false +Counter check passed: 240 == expected 240 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:567 score:12 win:false +Round 2/10 — ticks:537 score:0 win:false +Round 3/10 — ticks:630 score:12 win:false +Round 4/10 — ticks:790 score:11 win:false +Round 5/10 — ticks:520 score:0 win:false +Round 6/10 — ticks:1056 score:12 win:false +Round 7/10 — ticks:534 score:0 win:false +Round 8/10 — ticks:530 score:0 win:false +Round 9/10 — ticks:629 score:0 win:false +Round 10/10 — ticks:587 score:12 win:false +Counter check passed: 250 == expected 250 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 11/2500: 10 rounds vs SacTwin === +Training: SAC_LSTM_Bot vs SacTwin for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:623 score:0 win:false +Round 2/10 — ticks:682 score:16 win:false +Round 3/10 — ticks:665 score:32 win:false +Round 4/10 — ticks:820 score:51 win:false +Round 5/10 — ticks:652 score:17 win:false +Round 6/10 — ticks:768 score:27 win:false +Round 7/10 — ticks:765 score:40 win:false +Round 8/10 — ticks:780 score:19 win:false +Round 9/10 — ticks:663 score:16 win:false +Round 10/10 — ticks:553 score:2 win:false +Counter check passed: 260 == expected 260 +=== Chunk 12/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:762 score:17 win:false +Round 2/10 — ticks:719 score:3 win:false +Round 3/10 — ticks:671 score:0 win:false +Round 4/10 — ticks:724 score:17 win:false +Round 5/10 — ticks:715 score:17 win:false +Round 6/10 — ticks:524 score:5 win:false +Round 7/10 — ticks:691 score:0 win:false +Round 8/10 — ticks:759 score:16 win:false +Round 9/10 — ticks:686 score:23 win:false +Round 10/10 — ticks:575 score:0 win:false +Counter check passed: 270 == expected 270 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:887 score:15 win:false +Round 2/10 — ticks:546 score:31 win:false +Round 3/10 — ticks:456 score:0 win:false +Round 4/10 — ticks:482 score:0 win:false +Round 5/10 — ticks:486 score:0 win:false +Round 6/10 — ticks:610 score:0 win:false +Round 7/10 — ticks:488 score:0 win:false +Round 8/10 — ticks:505 score:5 win:false +Round 9/10 — ticks:488 score:0 win:false +Round 10/10 — ticks:792 score:0 win:false +Counter check passed: 280 == expected 280 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:531 score:15 win:false +Round 2/10 — ticks:704 score:48 win:false +Round 3/10 — ticks:754 score:47 win:false +Round 4/10 — ticks:864 score:63 win:false +Round 5/10 — ticks:992 score:47 win:false +Round 6/10 — ticks:696 score:17 win:false +Round 7/10 — ticks:1124 score:30 win:false +Round 8/10 — ticks:543 score:16 win:false +Round 9/10 — ticks:475 score:0 win:false +Round 10/10 — ticks:490 score:0 win:false +Counter check passed: 290 == expected 290 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:488 score:0 win:false +Round 2/10 — ticks:579 score:30 win:false +Round 3/10 — ticks:489 score:0 win:false +Round 4/10 — ticks:554 score:0 win:false +Round 5/10 — ticks:554 score:0 win:false +Round 6/10 — ticks:579 score:15 win:false +Round 7/10 — ticks:521 score:16 win:false +Round 8/10 — ticks:554 score:0 win:false +Round 9/10 — ticks:489 score:0 win:false +Round 10/10 — ticks:550 score:21 win:false +Counter check passed: 300 == expected 300 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 13/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:934 score:0 win:false +Round 2/10 — ticks:637 score:0 win:false +Round 3/10 — ticks:591 score:0 win:false +Round 4/10 — ticks:298 score:34 win:false +Round 5/10 — ticks:664 score:3 win:false +Round 6/10 — ticks:439 score:0 win:false +Round 7/10 — ticks:408 score:3 win:false +Round 8/10 — ticks:610 score:16 win:false +Round 9/10 — ticks:543 score:0 win:false +Round 10/10 — ticks:548 score:0 win:false +Counter check passed: 310 == expected 310 +=== Chunk 14/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:950 score:32 win:false +Round 2/10 — ticks:528 score:16 win:false +Round 3/10 — ticks:559 score:0 win:false +Round 4/10 — ticks:563 score:16 win:false +Round 5/10 — ticks:603 score:0 win:false +Round 6/10 — ticks:543 score:0 win:false +Round 7/10 — ticks:519 score:0 win:false +Round 8/10 — ticks:240 score:18 win:false +Round 9/10 — ticks:575 score:0 win:false +Round 10/10 — ticks:440 score:0 win:false +Counter check passed: 320 == expected 320 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:496 score:0 win:false +Round 2/10 — ticks:505 score:0 win:false +Round 3/10 — ticks:451 score:0 win:false +Round 4/10 — ticks:567 score:0 win:false +Round 5/10 — ticks:478 score:0 win:false +Round 6/10 — ticks:567 score:0 win:false +Round 7/10 — ticks:486 score:16 win:false +Round 8/10 — ticks:737 score:0 win:false +Round 9/10 — ticks:502 score:0 win:false +Round 10/10 — ticks:464 score:0 win:false +Counter check passed: 330 == expected 330 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:994 score:17 win:false +Round 2/10 — ticks:469 score:7 win:false +Round 3/10 — ticks:517 score:43 win:false +Round 4/10 — ticks:567 score:0 win:false +Round 5/10 — ticks:536 score:3 win:false +Round 6/10 — ticks:751 score:31 win:false +Round 7/10 — ticks:1076 score:33 win:false +Round 8/10 — ticks:475 score:0 win:false +Round 9/10 — ticks:475 score:0 win:false +Round 10/10 — ticks:470 score:1 win:false +Counter check passed: 340 == expected 340 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:583 score:23 win:false +Round 2/10 — ticks:475 score:0 win:false +Round 3/10 — ticks:825 score:16 win:false +Round 4/10 — ticks:567 score:0 win:false +Round 5/10 — ticks:446 score:188 win:false +Round 6/10 — ticks:475 score:0 win:false +Round 7/10 — ticks:463 score:3 win:false +Round 8/10 — ticks:456 score:8 win:false +Round 9/10 — ticks:475 score:0 win:false +Round 10/10 — ticks:599 score:44 win:false +Counter check passed: 350 == expected 350 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 15/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:569 score:0 win:false +Round 2/10 — ticks:554 score:0 win:false +Round 3/10 — ticks:852 score:16 win:false +Round 4/10 — ticks:561 score:0 win:false +Round 5/10 — ticks:536 score:0 win:false +Round 6/10 — ticks:1082 score:32 win:false +Round 7/10 — ticks:564 score:0 win:false +Round 8/10 — ticks:753 score:16 win:false +Round 9/10 — ticks:810 score:16 win:false +Round 10/10 — ticks:563 score:0 win:false +Counter check passed: 360 == expected 360 +=== Chunk 16/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:556 score:0 win:false +Round 2/10 — ticks:634 score:0 win:false +Round 3/10 — ticks:675 score:16 win:false +Round 4/10 — ticks:537 score:0 win:false +Round 5/10 — ticks:606 score:0 win:false +Round 6/10 — ticks:484 score:17 win:false +Round 7/10 — ticks:478 score:1 win:false +Round 8/10 — ticks:766 score:30 win:false +Round 9/10 — ticks:902 score:21 win:false +Round 10/10 — ticks:699 score:32 win:false +Counter check passed: 370 == expected 370 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:511 score:0 win:false +Round 2/10 — ticks:545 score:0 win:false +Round 3/10 — ticks:519 score:0 win:false +Round 4/10 — ticks:690 score:31 win:false +Round 5/10 — ticks:474 score:0 win:false +Round 6/10 — ticks:476 score:0 win:false +Round 7/10 — ticks:474 score:0 win:false +Round 8/10 — ticks:573 score:0 win:false +Round 9/10 — ticks:518 score:0 win:false +Round 10/10 — ticks:545 score:0 win:false +Counter check passed: 380 == expected 380 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:720 score:47 win:false +Round 2/10 — ticks:544 score:0 win:false +Round 3/10 — ticks:439 score:19 win:false +Round 4/10 — ticks:590 score:19 win:false +Round 5/10 — ticks:755 score:48 win:false +Round 6/10 — ticks:632 score:15 win:false +Round 7/10 — ticks:471 score:0 win:false +Round 8/10 — ticks:836 score:33 win:false +Round 9/10 — ticks:677 score:33 win:false +Round 10/10 — ticks:708 score:1 win:false +Counter check passed: 390 == expected 390 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:897 score:25 win:false +Round 2/10 — ticks:482 score:0 win:false +Round 3/10 — ticks:800 score:16 win:false +Round 4/10 — ticks:481 score:0 win:false +Round 5/10 — ticks:574 score:22 win:false +Round 6/10 — ticks:544 score:0 win:false +Round 7/10 — ticks:545 score:0 win:false +Round 8/10 — ticks:578 score:32 win:false +Round 9/10 — ticks:465 score:10 win:false +Round 10/10 — ticks:545 score:0 win:false +Counter check passed: 400 == expected 400 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 17/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:567 score:0 win:false +Round 2/10 — ticks:550 score:0 win:false +Round 3/10 — ticks:541 score:0 win:false +Round 4/10 — ticks:584 score:0 win:false +Round 5/10 — ticks:545 score:0 win:false +Round 6/10 — ticks:695 score:16 win:false +Round 7/10 — ticks:650 score:0 win:false +Round 8/10 — ticks:471 score:4 win:false +Round 9/10 — ticks:536 score:0 win:false +Round 10/10 — ticks:573 score:16 win:false +Counter check passed: 410 == expected 410 +=== Chunk 18/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:526 score:0 win:false +Round 2/10 — ticks:547 score:0 win:false +Round 3/10 — ticks:624 score:16 win:false +Round 4/10 — ticks:596 score:0 win:false +Round 5/10 — ticks:553 score:0 win:false +Round 6/10 — ticks:840 score:54 win:false +Round 7/10 — ticks:541 score:0 win:false +Round 8/10 — ticks:806 score:16 win:false +Round 9/10 — ticks:649 score:16 win:false +Round 10/10 — ticks:522 score:0 win:false +Counter check passed: 420 == expected 420 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:448 score:0 win:false +Round 2/10 — ticks:468 score:16 win:false +Round 3/10 — ticks:844 score:10 win:false +Round 4/10 — ticks:453 score:15 win:false +Round 5/10 — ticks:379 score:7 win:false +Round 6/10 — ticks:445 score:0 win:false +Round 7/10 — ticks:444 score:1 win:false +Round 8/10 — ticks:447 score:0 win:false +Round 9/10 — ticks:719 score:0 win:false +Round 10/10 — ticks:804 score:0 win:false +Counter check passed: 430 == expected 430 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:811 score:2 win:false +Round 2/10 — ticks:737 score:17 win:false +Round 3/10 — ticks:593 score:45 win:false +Round 4/10 — ticks:517 score:15 win:false +Round 5/10 — ticks:498 score:0 win:false +Round 6/10 — ticks:728 score:31 win:false +Round 7/10 — ticks:728 score:32 win:false +Round 8/10 — ticks:634 score:16 win:false +Round 9/10 — ticks:468 score:4 win:false +Round 10/10 — ticks:435 score:0 win:false +Counter check passed: 440 == expected 440 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:567 score:0 win:false +Round 2/10 — ticks:567 score:0 win:false +Round 3/10 — ticks:469 score:0 win:false +Round 4/10 — ticks:504 score:26 win:false +Round 5/10 — ticks:567 score:0 win:false +Round 6/10 — ticks:461 score:0 win:false +Round 7/10 — ticks:525 score:15 win:false +Round 8/10 — ticks:469 score:0 win:false +Round 9/10 — ticks:567 score:0 win:false +Round 10/10 — ticks:535 score:15 win:false +Counter check passed: 450 == expected 450 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 19/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:680 score:48 win:false +Round 2/10 — ticks:552 score:0 win:false +Round 3/10 — ticks:618 score:16 win:false +Round 4/10 — ticks:584 score:16 win:false +Round 5/10 — ticks:533 score:0 win:false +Round 6/10 — ticks:442 score:0 win:false +Round 7/10 — ticks:586 score:18 win:false +Round 8/10 — ticks:707 score:31 win:false +Round 9/10 — ticks:604 score:0 win:false +Round 10/10 — ticks:767 score:1 win:false +Counter check passed: 460 == expected 460 +=== Chunk 20/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:652 score:17 win:false +Round 2/10 — ticks:681 score:32 win:false +Round 3/10 — ticks:845 score:5 win:false +Round 4/10 — ticks:638 score:19 win:false +Round 5/10 — ticks:580 score:0 win:false +Round 6/10 — ticks:605 score:16 win:false +Round 7/10 — ticks:745 score:16 win:false +Round 8/10 — ticks:543 score:1 win:false +Round 9/10 — ticks:520 score:0 win:false +Round 10/10 — ticks:665 score:49 win:false +Counter check passed: 470 == expected 470 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:567 score:0 win:false +Round 2/10 — ticks:638 score:1 win:false +Round 3/10 — ticks:482 score:0 win:false +Round 4/10 — ticks:446 score:1 win:false +Round 5/10 — ticks:516 score:0 win:false +Round 6/10 — ticks:820 score:0 win:false +Round 7/10 — ticks:553 score:14 win:false +Round 8/10 — ticks:484 score:0 win:false +Round 9/10 — ticks:463 score:22 win:false +Round 10/10 — ticks:703 score:0 win:false +Counter check passed: 480 == expected 480 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1091 score:29 win:false +Round 2/10 — ticks:519 score:0 win:false +Round 3/10 — ticks:521 score:31 win:false +Round 4/10 — ticks:528 score:15 win:false +Round 5/10 — ticks:854 score:120 win:false +Round 6/10 — ticks:488 score:15 win:false +Round 7/10 — ticks:501 score:0 win:false +Round 8/10 — ticks:580 score:0 win:false +Round 9/10 — ticks:829 score:0 win:false +Round 10/10 — ticks:470 score:1 win:false +Counter check passed: 490 == expected 490 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:577 score:43 win:false +Round 2/10 — ticks:580 score:0 win:false +Round 3/10 — ticks:580 score:0 win:false +Round 4/10 — ticks:499 score:0 win:false +Round 5/10 — ticks:501 score:0 win:false +Round 6/10 — ticks:580 score:0 win:false +Round 7/10 — ticks:580 score:0 win:false +Round 8/10 — ticks:541 score:20 win:false +Round 9/10 — ticks:719 score:66 win:false +Round 10/10 — ticks:968 score:41 win:false +Counter check passed: 500 == expected 500 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 21/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:534 score:0 win:false +Round 2/10 — ticks:754 score:25 win:false +Round 3/10 — ticks:564 score:0 win:false +Round 4/10 — ticks:554 score:0 win:false +Round 5/10 — ticks:554 score:0 win:false +Round 6/10 — ticks:543 score:0 win:false +Round 7/10 — ticks:554 score:0 win:false +Round 8/10 — ticks:716 score:30 win:false +Round 9/10 — ticks:559 score:31 win:false +Round 10/10 — ticks:837 score:16 win:false +Counter check passed: 510 == expected 510 +=== Chunk 22/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:479 score:15 win:false +Round 2/10 — ticks:535 score:0 win:false +Round 3/10 — ticks:500 score:16 win:false +Round 4/10 — ticks:659 score:0 win:false +Round 5/10 — ticks:561 score:0 win:false +Round 6/10 — ticks:605 score:0 win:false +Round 7/10 — ticks:563 score:0 win:false +Round 8/10 — ticks:568 score:0 win:false +Round 9/10 — ticks:509 score:0 win:false +Round 10/10 — ticks:623 score:35 win:false +Counter check passed: 520 == expected 520 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:507 score:16 win:false +Round 2/10 — ticks:610 score:0 win:false +Round 3/10 — ticks:647 score:0 win:false +Round 4/10 — ticks:629 score:0 win:false +Round 5/10 — ticks:501 score:6 win:false +Round 6/10 — ticks:803 score:19 win:false +Round 7/10 — ticks:647 score:20 win:false +Round 8/10 — ticks:602 score:10 win:false +Round 9/10 — ticks:620 score:29 win:false +Round 10/10 — ticks:1037 score:10 win:false +Counter check passed: 530 == expected 530 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:594 score:0 win:false +Round 2/10 — ticks:559 score:1 win:false +Round 3/10 — ticks:644 score:12 win:false +Round 4/10 — ticks:623 score:19 win:false +Round 5/10 — ticks:762 score:3 win:false +Round 6/10 — ticks:836 score:0 win:false +Round 7/10 — ticks:764 score:0 win:false +Round 8/10 — ticks:1021 score:30 win:false +Round 9/10 — ticks:753 score:20 win:false +Round 10/10 — ticks:673 score:10 win:false +Counter check passed: 540 == expected 540 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:548 score:1 win:false +Round 2/10 — ticks:1147 score:20 win:false +Round 3/10 — ticks:1099 score:9 win:false +Round 4/10 — ticks:628 score:20 win:false +Round 5/10 — ticks:769 score:10 win:false +Round 6/10 — ticks:634 score:9 win:false +Round 7/10 — ticks:583 score:3 win:false +Round 8/10 — ticks:1122 score:29 win:false +Round 9/10 — ticks:1008 score:53 win:false +Round 10/10 — ticks:647 score:0 win:false +Counter check passed: 550 == expected 550 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 23/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:595 score:0 win:false +Round 2/10 — ticks:585 score:32 win:false +Round 3/10 — ticks:648 score:0 win:false +Round 4/10 — ticks:509 score:0 win:false +Round 5/10 — ticks:540 score:0 win:false +Round 6/10 — ticks:462 score:0 win:false +Round 7/10 — ticks:557 score:3 win:false +Round 8/10 — ticks:608 score:0 win:false +Round 9/10 — ticks:375 score:0 win:false +Round 10/10 — ticks:409 score:0 win:false +Counter check passed: 560 == expected 560 +=== Chunk 24/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:345 score:0 win:false +Round 2/10 — ticks:626 score:0 win:false +Round 3/10 — ticks:467 score:8 win:false +Round 4/10 — ticks:561 score:0 win:false +Round 5/10 — ticks:514 score:0 win:false +Round 6/10 — ticks:536 score:0 win:false +Round 7/10 — ticks:597 score:0 win:false +Round 8/10 — ticks:790 score:0 win:false +Round 9/10 — ticks:579 score:0 win:false +Round 10/10 — ticks:525 score:0 win:false +Counter check passed: 570 == expected 570 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:3269 score:66 win:true +Round 2/10 — ticks:1551 score:1 win:false +Round 3/10 — ticks:2213 score:0 win:false +Round 4/10 — ticks:4152 score:15 win:false +Round 5/10 — ticks:2487 score:1 win:false +Round 6/10 — ticks:1207 score:0 win:false +Round 7/10 — ticks:1027 score:0 win:false +Round 8/10 — ticks:1379 score:0 win:false +Round 9/10 — ticks:1467 score:1 win:false +Round 10/10 — ticks:1255 score:1 win:false +Counter check passed: 580 == expected 580 +>>> [eval] win rate: 1/10 (10%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1963 score:70 win:true +Round 2/10 — ticks:1251 score:66 win:true +Round 3/10 — ticks:1295 score:2 win:true +Round 4/10 — ticks:1313 score:5 win:false +Round 5/10 — ticks:1755 score:68 win:true +Round 6/10 — ticks:2781 score:11 win:false +Round 7/10 — ticks:1119 score:2 win:false +Round 8/10 — ticks:1773 score:5 win:false +Round 9/10 — ticks:1601 score:4 win:false +Round 10/10 — ticks:1433 score:5 win:false +Counter check passed: 590 == expected 590 +>>> [eval] win rate: 4/10 (40%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1273 score:13 win:false +Round 2/10 — ticks:2224 score:32 win:false +Round 3/10 — ticks:998 score:16 win:false +Round 4/10 — ticks:1514 score:50 win:false +Round 5/10 — ticks:1531 score:27 win:false +Round 6/10 — ticks:1212 score:1 win:false +Round 7/10 — ticks:4606 score:27 win:false +Round 8/10 — ticks:1385 score:15 win:false +Round 9/10 — ticks:1718 score:52 win:false +Round 10/10 — ticks:922 score:0 win:false +Counter check passed: 600 == expected 600 +>>> [eval] win rate: 0/10 (0%) vs Target +>>> [eval] new best composite (3.3333) -> sac_best.zip +=== Chunk 25/2500: 10 rounds vs SacTwin === +Training: SAC_LSTM_Bot vs SacTwin for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:622 score:0 win:false +Round 2/10 — ticks:590 score:0 win:false +Round 3/10 — ticks:533 score:2 win:false +Round 4/10 — ticks:809 score:144 win:false +Round 5/10 — ticks:528 score:6 win:false +Round 6/10 — ticks:658 score:16 win:false +Round 7/10 — ticks:558 score:0 win:false +Round 8/10 — ticks:567 score:0 win:false +Round 9/10 — ticks:909 score:17 win:false +Round 10/10 — ticks:583 score:10 win:false +Counter check passed: 610 == expected 610 +=== Chunk 26/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:497 score:1 win:false +Round 2/10 — ticks:737 score:17 win:false +Round 3/10 — ticks:699 score:0 win:false +Round 4/10 — ticks:967 score:13 win:false +Round 5/10 — ticks:555 score:0 win:false +Round 6/10 — ticks:580 score:0 win:false +Round 7/10 — ticks:739 score:0 win:false +Round 8/10 — ticks:704 score:32 win:false +Round 9/10 — ticks:632 score:8 win:false +Round 10/10 — ticks:679 score:0 win:false +Counter check passed: 620 == expected 620 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1680 score:0 win:false +Round 2/10 — ticks:1783 score:0 win:false +Round 3/10 — ticks:1969 score:0 win:false +Round 4/10 — ticks:2016 score:0 win:false +Round 5/10 — ticks:1813 score:0 win:false +Round 6/10 — ticks:1812 score:0 win:false +Round 7/10 — ticks:1766 score:0 win:false +Round 8/10 — ticks:1762 score:0 win:false +Round 9/10 — ticks:1747 score:0 win:false +Round 10/10 — ticks:1939 score:60 win:false +Counter check passed: 630 == expected 630 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1858 score:1 win:false +Round 2/10 — ticks:1956 score:69 win:false +Round 3/10 — ticks:1356 score:61 win:true +Round 4/10 — ticks:1497 score:63 win:true +Round 5/10 — ticks:1761 score:65 win:true +Round 6/10 — ticks:1423 score:60 win:true +Round 7/10 — ticks:1006 score:66 win:true +Round 8/10 — ticks:1960 score:61 win:true +Round 9/10 — ticks:1800 score:5 win:true +Round 10/10 — ticks:2243 score:11 win:true +Counter check passed: 640 == expected 640 +>>> [eval] win rate: 8/10 (80%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1141 score:0 win:false +Round 2/10 — ticks:1144 score:0 win:false +Round 3/10 — ticks:1422 score:60 win:false +Round 4/10 — ticks:1080 score:14 win:false +Round 5/10 — ticks:1152 score:0 win:false +Round 6/10 — ticks:1080 score:21 win:false +Round 7/10 — ticks:931 score:50 win:false +Round 8/10 — ticks:1122 score:0 win:false +Round 9/10 — ticks:1063 score:39 win:false +Round 10/10 — ticks:1038 score:20 win:false +Counter check passed: 650 == expected 650 +>>> [eval] win rate: 0/10 (0%) vs Target +>>> [eval] new best composite (8.6667) -> sac_best.zip +=== Chunk 27/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:522 score:0 win:false +Round 2/10 — ticks:655 score:16 win:false +Round 3/10 — ticks:622 score:0 win:false +Round 4/10 — ticks:567 score:0 win:false +Round 5/10 — ticks:651 score:32 win:false +Round 6/10 — ticks:540 score:26 win:false +Round 7/10 — ticks:490 score:0 win:false +Round 8/10 — ticks:802 score:17 win:false +Round 9/10 — ticks:656 score:0 win:false +Round 10/10 — ticks:561 score:1 win:false +Counter check passed: 660 == expected 660 +=== Chunk 28/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:798 score:16 win:false +Round 2/10 — ticks:635 score:34 win:false +Round 3/10 — ticks:421 score:0 win:false +Round 4/10 — ticks:493 score:0 win:false +Round 5/10 — ticks:697 score:0 win:false +Round 6/10 — ticks:672 score:0 win:false +Round 7/10 — ticks:613 score:0 win:false +Round 8/10 — ticks:549 score:1 win:false +Round 9/10 — ticks:430 score:16 win:false +Round 10/10 — ticks:920 score:16 win:false +Counter check passed: 670 == expected 670 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1956 score:0 win:false +Round 2/10 — ticks:1788 score:0 win:false +Round 3/10 — ticks:1473 score:0 win:false +Round 4/10 — ticks:1764 score:0 win:false +Round 5/10 — ticks:1828 score:0 win:false +Round 6/10 — ticks:2020 score:0 win:false +Round 7/10 — ticks:1383 score:0 win:false +Round 8/10 — ticks:1069 score:1 win:false +Round 9/10 — ticks:1417 score:0 win:false +Round 10/10 — ticks:2309 score:0 win:false +Counter check passed: 680 == expected 680 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1927 score:61 win:true +Round 2/10 — ticks:2366 score:5 win:false +Round 3/10 — ticks:1257 score:2 win:false +Round 4/10 — ticks:1664 score:68 win:false +Round 5/10 — ticks:1770 score:1 win:false +Round 6/10 — ticks:1562 score:60 win:false +Round 7/10 — ticks:1545 score:65 win:false +Round 8/10 — ticks:1513 score:61 win:false +Round 9/10 — ticks:1624 score:0 win:false +Round 10/10 — ticks:1471 score:62 win:false +Counter check passed: 690 == expected 690 +>>> [eval] win rate: 1/10 (10%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:791 score:101 win:true +Round 2/10 — ticks:1156 score:5 win:false +Round 3/10 — ticks:1152 score:0 win:false +Round 4/10 — ticks:907 score:61 win:false +Round 5/10 — ticks:1152 score:0 win:false +Round 6/10 — ticks:966 score:48 win:false +Round 7/10 — ticks:1135 score:0 win:false +Round 8/10 — ticks:1128 score:0 win:false +Round 9/10 — ticks:996 score:37 win:false +Round 10/10 — ticks:1116 score:7 win:false +Counter check passed: 700 == expected 700 +>>> [eval] win rate: 1/10 (10%) vs Target +>>> [eval] new best composite (10.0000) -> sac_best.zip +=== Chunk 29/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:326 score:13 win:false +Round 2/10 — ticks:112 score:29 win:false +Round 3/10 — ticks:414 score:19 win:false +Round 4/10 — ticks:189 score:93 win:false +Round 5/10 — ticks:321 score:74 win:false +Round 6/10 — ticks:268 score:45 win:false +Round 7/10 — ticks:329 score:41 win:false +Round 8/10 — ticks:156 score:50 win:false +Round 9/10 — ticks:204 score:51 win:false +Round 10/10 — ticks:131 score:46 win:false +Counter check passed: 710 == expected 710 +=== Chunk 30/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:623 score:0 win:false +Round 2/10 — ticks:548 score:0 win:false +Round 3/10 — ticks:748 score:10 win:false +Round 4/10 — ticks:782 score:0 win:false +Round 5/10 — ticks:553 score:4 win:false +Round 6/10 — ticks:550 score:16 win:false +Round 7/10 — ticks:601 score:0 win:false +Round 8/10 — ticks:705 score:32 win:false +Round 9/10 — ticks:473 score:16 win:false +Round 10/10 — ticks:603 score:0 win:false +Counter check passed: 720 == expected 720 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1908 score:0 win:false +Round 2/10 — ticks:1477 score:0 win:false +Round 3/10 — ticks:3297 score:0 win:false +Round 4/10 — ticks:1949 score:0 win:false +Round 5/10 — ticks:1366 score:0 win:false +Round 6/10 — ticks:1506 score:0 win:false +Round 7/10 — ticks:2049 score:1 win:false +Round 8/10 — ticks:1941 score:0 win:false +Round 9/10 — ticks:1762 score:60 win:false +Round 10/10 — ticks:1828 score:0 win:false +Counter check passed: 730 == expected 730 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1407 score:1 win:false +Round 2/10 — ticks:1817 score:63 win:false +Round 3/10 — ticks:1052 score:60 win:true +Round 4/10 — ticks:932 score:60 win:true +Round 5/10 — ticks:1930 score:67 win:true +Round 6/10 — ticks:1372 score:7 win:true +Round 7/10 — ticks:1747 score:64 win:true +Round 8/10 — ticks:1971 score:2 win:false +Round 9/10 — ticks:1063 score:60 win:true +Round 10/10 — ticks:1077 score:60 win:true +Counter check passed: 740 == expected 740 +>>> [eval] win rate: 7/10 (70%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1447 score:60 win:true +Round 2/10 — ticks:1064 score:16 win:true +Round 3/10 — ticks:1422 score:60 win:true +Round 4/10 — ticks:1326 score:9 win:true +Round 5/10 — ticks:1074 score:6 win:false +Round 6/10 — ticks:1020 score:25 win:false +Round 7/10 — ticks:1030 score:15 win:false +Round 8/10 — ticks:1076 score:0 win:false +Round 9/10 — ticks:1080 score:15 win:false +Round 10/10 — ticks:1092 score:0 win:false +Counter check passed: 750 == expected 750 +>>> [eval] win rate: 4/10 (40%) vs Target +>>> [eval] new best composite (17.3333) -> sac_best.zip +=== Chunk 31/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:187 score:80 win:false +Round 2/10 — ticks:375 score:46 win:false +Round 3/10 — ticks:160 score:35 win:false +Round 4/10 — ticks:202 score:54 win:false +Round 5/10 — ticks:245 score:29 win:false +Round 6/10 — ticks:212 score:38 win:false +Round 7/10 — ticks:429 score:34 win:false +Round 8/10 — ticks:282 score:41 win:false +Round 9/10 — ticks:438 score:36 win:false +Round 10/10 — ticks:180 score:26 win:false +Counter check passed: 760 == expected 760 +=== Chunk 32/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:129 score:35 win:false +Round 2/10 — ticks:303 score:11 win:false +Round 3/10 — ticks:369 score:30 win:false +Round 4/10 — ticks:293 score:26 win:false +Round 5/10 — ticks:280 score:45 win:false +Round 6/10 — ticks:142 score:28 win:false +Round 7/10 — ticks:171 score:32 win:false +Round 8/10 — ticks:482 score:10 win:false +Round 9/10 — ticks:259 score:20 win:false +Round 10/10 — ticks:231 score:56 win:false +Counter check passed: 770 == expected 770 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:3017 score:60 win:true +Round 2/10 — ticks:1607 score:0 win:false +Round 3/10 — ticks:1575 score:60 win:false +Round 4/10 — ticks:2330 score:0 win:false +Round 5/10 — ticks:1399 score:60 win:false +Round 6/10 — ticks:1869 score:0 win:false +Round 7/10 — ticks:1982 score:0 win:false +Round 8/10 — ticks:2094 score:0 win:false +Round 9/10 — ticks:1772 score:0 win:false +Round 10/10 — ticks:2159 score:0 win:false +Counter check passed: 780 == expected 780 +>>> [eval] win rate: 1/10 (10%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1469 score:61 win:true +Round 2/10 — ticks:1689 score:75 win:true +Round 3/10 — ticks:1142 score:63 win:true +Round 4/10 — ticks:1294 score:20 win:true +Round 5/10 — ticks:1688 score:67 win:true +Round 6/10 — ticks:1281 score:64 win:true +Round 7/10 — ticks:1750 score:74 win:true +Round 8/10 — ticks:1686 score:3 win:true +Round 9/10 — ticks:979 score:62 win:true +Round 10/10 — ticks:1667 score:63 win:true +Counter check passed: 790 == expected 790 +>>> [eval] win rate: 10/10 (100%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1098 score:28 win:false +Round 2/10 — ticks:1074 score:20 win:false +Round 3/10 — ticks:1126 score:18 win:false +Round 4/10 — ticks:1134 score:14 win:false +Round 5/10 — ticks:1146 score:2 win:false +Round 6/10 — ticks:1074 score:26 win:false +Round 7/10 — ticks:778 score:89 win:false +Round 8/10 — ticks:1100 score:13 win:false +Round 9/10 — ticks:1044 score:34 win:false +Round 10/10 — ticks:1153 score:6 win:false +Counter check passed: 800 == expected 800 +>>> [eval] win rate: 0/10 (0%) vs Target +>>> [eval] new best composite (24.6667) -> sac_best.zip +=== Chunk 33/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:149 score:26 win:false +Round 2/10 — ticks:245 score:37 win:false +Round 3/10 — ticks:275 score:76 win:false +Round 4/10 — ticks:321 score:35 win:false +Round 5/10 — ticks:177 score:59 win:false +Round 6/10 — ticks:569 score:0 win:false +Round 7/10 — ticks:598 score:41 win:false +Round 8/10 — ticks:279 score:31 win:false +Round 9/10 — ticks:421 score:7 win:false +Round 10/10 — ticks:253 score:55 win:false +Counter check passed: 810 == expected 810 +=== Chunk 34/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:663 score:0 win:false +Round 2/10 — ticks:613 score:16 win:false +Round 3/10 — ticks:394 score:1 win:false +Round 4/10 — ticks:573 score:0 win:false +Round 5/10 — ticks:563 score:0 win:false +Round 6/10 — ticks:553 score:0 win:false +Round 7/10 — ticks:591 score:0 win:false +Round 8/10 — ticks:568 score:0 win:false +Round 9/10 — ticks:598 score:16 win:false +Round 10/10 — ticks:785 score:0 win:false +Counter check passed: 820 == expected 820 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2672 score:0 win:false +Round 2/10 — ticks:3961 score:0 win:false +Round 3/10 — ticks:2300 score:0 win:false +Round 4/10 — ticks:1065 score:0 win:false +Round 5/10 — ticks:1914 score:0 win:false +Round 6/10 — ticks:2637 score:0 win:false +Round 7/10 — ticks:1863 score:0 win:false +Round 8/10 — ticks:337 score:18 win:false +Round 9/10 — ticks:2549 score:0 win:false +Round 10/10 — ticks:2886 score:0 win:false +Counter check passed: 830 == expected 830 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2429 score:7 win:false +Round 2/10 — ticks:3436 score:64 win:false +Round 3/10 — ticks:2296 score:0 win:false +Round 4/10 — ticks:3287 score:0 win:false +Round 5/10 — ticks:3146 score:62 win:false +Round 6/10 — ticks:2322 score:61 win:false +Round 7/10 — ticks:2685 score:5 win:false +Round 8/10 — ticks:2183 score:7 win:false +Round 9/10 — ticks:2209 score:2 win:false +Round 10/10 — ticks:2739 score:2 win:false +Counter check passed: 840 == expected 840 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1451 score:0 win:false +Round 2/10 — ticks:1422 score:60 win:true +Round 3/10 — ticks:1451 score:0 win:true +Round 4/10 — ticks:1432 score:60 win:true +Round 5/10 — ticks:1429 score:61 win:true +Round 6/10 — ticks:1422 score:60 win:true +Round 7/10 — ticks:1451 score:0 win:true +Round 8/10 — ticks:1433 score:3 win:true +Round 9/10 — ticks:1437 score:60 win:true +Round 10/10 — ticks:1422 score:60 win:true +Counter check passed: 850 == expected 850 +>>> [eval] win rate: 9/10 (90%) vs Target +>>> [eval] new best composite (27.3333) -> sac_best.zip +=== Chunk 35/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:609 score:0 win:false +Round 2/10 — ticks:578 score:1 win:false +Round 3/10 — ticks:800 score:57 win:false +Round 4/10 — ticks:555 score:0 win:false +Round 5/10 — ticks:554 score:0 win:false +Round 6/10 — ticks:556 score:0 win:false +Round 7/10 — ticks:633 score:16 win:false +Round 8/10 — ticks:643 score:15 win:false +Round 9/10 — ticks:580 score:0 win:false +Round 10/10 — ticks:564 score:0 win:false +Counter check passed: 860 == expected 860 +=== Chunk 36/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:184 score:20 win:false +Round 2/10 — ticks:616 score:20 win:false +Round 3/10 — ticks:272 score:17 win:false +Round 4/10 — ticks:179 score:36 win:false +Round 5/10 — ticks:133 score:22 win:false +Round 6/10 — ticks:272 score:34 win:false +Round 7/10 — ticks:179 score:44 win:false +Round 8/10 — ticks:300 score:21 win:false +Round 9/10 — ticks:226 score:26 win:false +Round 10/10 — ticks:232 score:17 win:false +Counter check passed: 870 == expected 870 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:536 score:54 win:false +Round 2/10 — ticks:2874 score:0 win:false +Round 3/10 — ticks:2926 score:0 win:false +Round 4/10 — ticks:2347 score:0 win:false +Round 5/10 — ticks:3366 score:0 win:false +Round 6/10 — ticks:466 score:104 win:false +Round 7/10 — ticks:1140 score:0 win:false +Round 8/10 — ticks:3411 score:0 win:false +Round 9/10 — ticks:2370 score:0 win:false +Round 10/10 — ticks:432 score:93 win:false +Counter check passed: 880 == expected 880 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2239 score:1 win:false +Round 2/10 — ticks:1186 score:65 win:false +Round 3/10 — ticks:1415 score:1 win:false +Round 4/10 — ticks:2279 score:60 win:false +Round 5/10 — ticks:1906 score:61 win:false +Round 6/10 — ticks:1083 score:63 win:false +Round 7/10 — ticks:2139 score:0 win:false +Round 8/10 — ticks:2460 score:3 win:false +Round 9/10 — ticks:1069 score:60 win:false +Round 10/10 — ticks:1900 score:6 win:false +Counter check passed: 890 == expected 890 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:626 score:143 win:true +Round 2/10 — ticks:962 score:56 win:true +Round 3/10 — ticks:1228 score:0 win:true +Round 4/10 — ticks:1182 score:0 win:false +Round 5/10 — ticks:1214 score:0 win:false +Round 6/10 — ticks:1015 score:64 win:false +Round 7/10 — ticks:1009 score:49 win:false +Round 8/10 — ticks:1242 score:0 win:false +Round 9/10 — ticks:1227 score:0 win:false +Round 10/10 — ticks:1272 score:0 win:false +Counter check passed: 900 == expected 900 +>>> [eval] win rate: 3/10 (30%) vs Target +=== Chunk 37/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:535 score:0 win:false +Round 2/10 — ticks:782 score:32 win:false +Round 3/10 — ticks:624 score:0 win:false +Round 4/10 — ticks:551 score:0 win:false +Round 5/10 — ticks:532 score:16 win:false +Round 6/10 — ticks:597 score:0 win:false +Round 7/10 — ticks:599 score:0 win:false +Round 8/10 — ticks:528 score:0 win:false +Round 9/10 — ticks:606 score:40 win:false +Round 10/10 — ticks:639 score:16 win:false +Counter check passed: 910 == expected 910 +=== Chunk 38/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:269 score:22 win:false +Round 2/10 — ticks:273 score:14 win:false +Round 3/10 — ticks:171 score:46 win:false +Round 4/10 — ticks:189 score:14 win:false +Round 5/10 — ticks:195 score:66 win:false +Round 6/10 — ticks:208 score:64 win:false +Round 7/10 — ticks:280 score:37 win:false +Round 8/10 — ticks:261 score:25 win:false +Round 9/10 — ticks:214 score:44 win:false +Round 10/10 — ticks:147 score:12 win:false +Counter check passed: 920 == expected 920 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1312 score:0 win:false +Round 2/10 — ticks:1096 score:0 win:false +Round 3/10 — ticks:1479 score:0 win:false +Round 4/10 — ticks:856 score:0 win:false +Round 5/10 — ticks:1184 score:0 win:false +Round 6/10 — ticks:715 score:0 win:false +Round 7/10 — ticks:743 score:0 win:false +Round 8/10 — ticks:709 score:0 win:false +Round 9/10 — ticks:1480 score:0 win:false +Round 10/10 — ticks:791 score:0 win:false +Counter check passed: 930 == expected 930 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2554 score:0 win:false +Round 2/10 — ticks:2287 score:0 win:false +Round 3/10 — ticks:2582 score:0 win:false +Round 4/10 — ticks:1559 score:22 win:false +Round 5/10 — ticks:2094 score:0 win:false +Round 6/10 — ticks:2333 score:0 win:false +Round 7/10 — ticks:2771 score:6 win:false +Round 8/10 — ticks:2162 score:0 win:false +Round 9/10 — ticks:2228 score:0 win:false +Round 10/10 — ticks:2581 score:0 win:false +Counter check passed: 940 == expected 940 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1362 score:0 win:false +Round 2/10 — ticks:1332 score:0 win:false +Round 3/10 — ticks:1332 score:0 win:false +Round 4/10 — ticks:1332 score:0 win:false +Round 5/10 — ticks:540 score:170 win:false +Round 6/10 — ticks:540 score:171 win:false +Round 7/10 — ticks:1332 score:0 win:false +Round 8/10 — ticks:1332 score:0 win:false +Round 9/10 — ticks:1332 score:0 win:false +Round 10/10 — ticks:1332 score:0 win:false +Counter check passed: 950 == expected 950 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 39/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:701 score:16 win:false +Round 2/10 — ticks:397 score:0 win:false +Round 3/10 — ticks:188 score:0 win:false +Round 4/10 — ticks:573 score:0 win:false +Round 5/10 — ticks:551 score:30 win:false +Round 6/10 — ticks:306 score:21 win:false +Round 7/10 — ticks:656 score:26 win:false +Round 8/10 — ticks:411 score:18 win:false +Round 9/10 — ticks:356 score:0 win:false +Round 10/10 — ticks:713 score:60 win:false +Counter check passed: 960 == expected 960 +=== Chunk 40/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:137 score:40 win:false +Round 2/10 — ticks:236 score:53 win:false +Round 3/10 — ticks:322 score:40 win:false +Round 4/10 — ticks:239 score:56 win:false +Round 5/10 — ticks:119 score:56 win:false +Round 6/10 — ticks:538 score:5 win:false +Round 7/10 — ticks:372 score:29 win:false +Round 8/10 — ticks:234 score:59 win:false +Round 9/10 — ticks:146 score:52 win:false +Round 10/10 — ticks:239 score:18 win:false +Counter check passed: 970 == expected 970 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2402 score:0 win:false +Round 2/10 — ticks:2975 score:0 win:false +Round 3/10 — ticks:2026 score:0 win:false +Round 4/10 — ticks:1800 score:0 win:false +Round 5/10 — ticks:2198 score:0 win:false +Round 6/10 — ticks:2937 score:0 win:false +Round 7/10 — ticks:2965 score:0 win:false +Round 8/10 — ticks:2250 score:0 win:false +Round 9/10 — ticks:2474 score:0 win:false +Round 10/10 — ticks:3066 score:0 win:false +Counter check passed: 980 == expected 980 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2214 score:4 win:false +Round 2/10 — ticks:1852 score:67 win:false +Round 3/10 — ticks:1500 score:60 win:false +Round 4/10 — ticks:1948 score:61 win:true +Round 5/10 — ticks:2311 score:10 win:false +Round 6/10 — ticks:2119 score:15 win:false +Round 7/10 — ticks:1957 score:4 win:false +Round 8/10 — ticks:2139 score:6 win:false +Round 9/10 — ticks:2680 score:2 win:false +Round 10/10 — ticks:1880 score:7 win:false +Counter check passed: 990 == expected 990 +>>> [eval] win rate: 1/10 (10%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1182 score:0 win:false +Round 2/10 — ticks:1182 score:0 win:false +Round 3/10 — ticks:1212 score:0 win:false +Round 4/10 — ticks:1212 score:0 win:false +Round 5/10 — ticks:1236 score:0 win:false +Round 6/10 — ticks:1134 score:16 win:false +Round 7/10 — ticks:876 score:91 win:false +Round 8/10 — ticks:1111 score:26 win:false +Round 9/10 — ticks:1020 score:43 win:false +Round 10/10 — ticks:857 score:87 win:false +Counter check passed: 1000 == expected 1000 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 41/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:568 score:0 win:false +Round 2/10 — ticks:561 score:14 win:false +Round 3/10 — ticks:568 score:0 win:false +Round 4/10 — ticks:727 score:15 win:false +Round 5/10 — ticks:737 score:63 win:false +Round 6/10 — ticks:633 score:4 win:false +Round 7/10 — ticks:645 score:16 win:false +Round 8/10 — ticks:558 score:0 win:false +Round 9/10 — ticks:568 score:0 win:false +Round 10/10 — ticks:562 score:0 win:false +Counter check passed: 1010 == expected 1010 +=== Chunk 42/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:126 score:22 win:false +Round 2/10 — ticks:187 score:21 win:false +Round 3/10 — ticks:262 score:55 win:false +Round 4/10 — ticks:370 score:42 win:false +Round 5/10 — ticks:286 score:15 win:false +Round 6/10 — ticks:322 score:17 win:false +Round 7/10 — ticks:182 score:64 win:false +Round 8/10 — ticks:172 score:71 win:false +Round 9/10 — ticks:566 score:35 win:false +Round 10/10 — ticks:317 score:37 win:false +Counter check passed: 1020 == expected 1020 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2002 score:0 win:false +Round 2/10 — ticks:2052 score:0 win:false +Round 3/10 — ticks:2296 score:0 win:false +Round 4/10 — ticks:2444 score:0 win:false +Round 5/10 — ticks:1955 score:0 win:false +Round 6/10 — ticks:1482 score:6 win:false +Round 7/10 — ticks:1669 score:0 win:false +Round 8/10 — ticks:1445 score:20 win:false +Round 9/10 — ticks:2076 score:0 win:false +Round 10/10 — ticks:1836 score:0 win:false +Counter check passed: 1030 == expected 1030 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2070 score:4 win:false +Round 2/10 — ticks:1722 score:64 win:false +Round 3/10 — ticks:1649 score:60 win:false +Round 4/10 — ticks:1210 score:60 win:true +Round 5/10 — ticks:1587 score:63 win:true +Round 6/10 — ticks:1209 score:69 win:true +Round 7/10 — ticks:1330 score:60 win:true +Round 8/10 — ticks:2200 score:6 win:true +Round 9/10 — ticks:1033 score:60 win:true +Round 10/10 — ticks:1485 score:61 win:true +Counter check passed: 1040 == expected 1040 +>>> [eval] win rate: 7/10 (70%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:817 score:89 win:true +Round 2/10 — ticks:1151 score:0 win:false +Round 3/10 — ticks:1152 score:0 win:false +Round 4/10 — ticks:1152 score:0 win:false +Round 5/10 — ticks:1040 score:19 win:false +Round 6/10 — ticks:1074 score:22 win:false +Round 7/10 — ticks:1122 score:0 win:false +Round 8/10 — ticks:1138 score:0 win:false +Round 9/10 — ticks:1086 score:25 win:false +Round 10/10 — ticks:887 score:65 win:false +Counter check passed: 1050 == expected 1050 +>>> [eval] win rate: 1/10 (10%) vs Target +=== Chunk 43/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:497 score:38 win:false +Round 2/10 — ticks:861 score:57 win:false +Round 3/10 — ticks:673 score:23 win:false +Round 4/10 — ticks:612 score:0 win:false +Round 5/10 — ticks:599 score:0 win:false +Round 6/10 — ticks:588 score:0 win:false +Round 7/10 — ticks:592 score:0 win:false +Round 8/10 — ticks:589 score:0 win:false +Round 9/10 — ticks:629 score:15 win:false +Round 10/10 — ticks:684 score:14 win:false +Counter check passed: 1060 == expected 1060 +=== Chunk 44/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:610 score:0 win:false +Round 2/10 — ticks:594 score:0 win:false +Round 3/10 — ticks:607 score:0 win:false +Round 4/10 — ticks:1024 score:44 win:false +Round 5/10 — ticks:759 score:32 win:false +Round 6/10 — ticks:583 score:0 win:false +Round 7/10 — ticks:765 score:16 win:false +Round 8/10 — ticks:741 score:14 win:false +Round 9/10 — ticks:598 score:0 win:false +Round 10/10 — ticks:581 score:0 win:false +Counter check passed: 1070 == expected 1070 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1499 score:0 win:false +Round 2/10 — ticks:1824 score:0 win:false +Round 3/10 — ticks:1964 score:0 win:false +Round 4/10 — ticks:1522 score:0 win:false +Round 5/10 — ticks:1420 score:0 win:false +Round 6/10 — ticks:1762 score:0 win:false +Round 7/10 — ticks:2529 score:0 win:false +Round 8/10 — ticks:3851 score:0 win:false +Round 9/10 — ticks:1606 score:0 win:false +Round 10/10 — ticks:1659 score:0 win:false +Counter check passed: 1080 == expected 1080 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1832 score:4 win:false +Round 2/10 — ticks:1562 score:2 win:false +Round 3/10 — ticks:992 score:60 win:false +Round 4/10 — ticks:1283 score:62 win:false +Round 5/10 — ticks:1523 score:3 win:false +Round 6/10 — ticks:1276 score:2 win:false +Round 7/10 — ticks:981 score:60 win:false +Round 8/10 — ticks:1391 score:64 win:false +Round 9/10 — ticks:1112 score:1 win:false +Round 10/10 — ticks:1366 score:61 win:false +Counter check passed: 1090 == expected 1090 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1056 score:12 win:false +Round 2/10 — ticks:1026 score:12 win:false +Round 3/10 — ticks:1026 score:12 win:false +Round 4/10 — ticks:1326 score:7 win:false +Round 5/10 — ticks:1080 score:7 win:false +Round 6/10 — ticks:1432 score:60 win:false +Round 7/10 — ticks:898 score:62 win:false +Round 8/10 — ticks:1116 score:18 win:false +Round 9/10 — ticks:1048 score:15 win:false +Round 10/10 — ticks:1060 score:16 win:false +Counter check passed: 1100 == expected 1100 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 45/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:397 score:42 win:false +Round 2/10 — ticks:217 score:45 win:false +Round 3/10 — ticks:158 score:79 win:false +Round 4/10 — ticks:317 score:85 win:false +Round 5/10 — ticks:362 score:45 win:false +Round 6/10 — ticks:530 score:24 win:false +Round 7/10 — ticks:333 score:42 win:false +Round 8/10 — ticks:254 score:11 win:false +Round 9/10 — ticks:210 score:48 win:false +Round 10/10 — ticks:305 score:32 win:false +Counter check passed: 1110 == expected 1110 +=== Chunk 46/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:622 score:0 win:false +Round 2/10 — ticks:855 score:27 win:false +Round 3/10 — ticks:607 score:0 win:false +Round 4/10 — ticks:611 score:0 win:false +Round 5/10 — ticks:611 score:0 win:false +Round 6/10 — ticks:611 score:0 win:false +Round 7/10 — ticks:838 score:16 win:false +Round 8/10 — ticks:633 score:1 win:false +Round 9/10 — ticks:1065 score:61 win:false +Round 10/10 — ticks:1054 score:53 win:false +Counter check passed: 1120 == expected 1120 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1082 score:60 win:true +Round 2/10 — ticks:1183 score:0 win:false +Round 3/10 — ticks:1763 score:0 win:false +Round 4/10 — ticks:1567 score:0 win:false +Round 5/10 — ticks:1381 score:20 win:false +Round 6/10 — ticks:1577 score:0 win:false +Round 7/10 — ticks:2082 score:0 win:false +Round 8/10 — ticks:1513 score:60 win:false +Round 9/10 — ticks:1913 score:0 win:false +Round 10/10 — ticks:2200 score:0 win:false +Counter check passed: 1130 == expected 1130 +>>> [eval] win rate: 1/10 (10%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1036 score:60 win:true +Round 2/10 — ticks:1734 score:64 win:true +Round 3/10 — ticks:2129 score:10 win:true +Round 4/10 — ticks:1239 score:62 win:true +Round 5/10 — ticks:1509 score:62 win:true +Round 6/10 — ticks:1598 score:66 win:true +Round 7/10 — ticks:1538 score:60 win:true +Round 8/10 — ticks:1750 score:63 win:true +Round 9/10 — ticks:2103 score:3 win:true +Round 10/10 — ticks:1902 score:66 win:true +Counter check passed: 1140 == expected 1140 +>>> [eval] win rate: 10/10 (100%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1074 score:8 win:false +Round 2/10 — ticks:925 score:46 win:false +Round 3/10 — ticks:1122 score:0 win:false +Round 4/10 — ticks:1113 score:8 win:false +Round 5/10 — ticks:1332 score:84 win:false +Round 6/10 — ticks:1019 score:23 win:false +Round 7/10 — ticks:1451 score:0 win:false +Round 8/10 — ticks:1032 score:28 win:false +Round 9/10 — ticks:1050 score:32 win:false +Round 10/10 — ticks:1164 score:32 win:false +Counter check passed: 1150 == expected 1150 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 47/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:270 score:22 win:false +Round 2/10 — ticks:271 score:25 win:false +Round 3/10 — ticks:151 score:37 win:false +Round 4/10 — ticks:204 score:30 win:false +Round 5/10 — ticks:219 score:5 win:false +Round 6/10 — ticks:293 score:34 win:false +Round 7/10 — ticks:280 score:8 win:false +Round 8/10 — ticks:257 score:65 win:false +Round 9/10 — ticks:209 score:41 win:false +Round 10/10 — ticks:285 score:41 win:false +Counter check passed: 1160 == expected 1160 +=== Chunk 48/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:804 score:1 win:false +Round 2/10 — ticks:724 score:2 win:false +Round 3/10 — ticks:609 score:0 win:false +Round 4/10 — ticks:818 score:17 win:false +Round 5/10 — ticks:721 score:15 win:false +Round 6/10 — ticks:527 score:0 win:false +Round 7/10 — ticks:823 score:33 win:false +Round 8/10 — ticks:712 score:19 win:false +Round 9/10 — ticks:637 score:2 win:false +Round 10/10 — ticks:530 score:1 win:false +Counter check passed: 1170 == expected 1170 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1539 score:0 win:false +Round 2/10 — ticks:1019 score:11 win:false +Round 3/10 — ticks:2642 score:60 win:false +Round 4/10 — ticks:1667 score:0 win:false +Round 5/10 — ticks:2928 score:0 win:false +Round 6/10 — ticks:2801 score:60 win:false +Round 7/10 — ticks:1868 score:60 win:false +Round 8/10 — ticks:2326 score:60 win:false +Round 9/10 — ticks:1793 score:0 win:false +Round 10/10 — ticks:761 score:11 win:false +Counter check passed: 1180 == expected 1180 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1436 score:62 win:true +Round 2/10 — ticks:1262 score:60 win:true +Round 3/10 — ticks:2391 score:0 win:false +Round 4/10 — ticks:2608 score:0 win:false +Round 5/10 — ticks:1579 score:60 win:false +Round 6/10 — ticks:1482 score:62 win:false +Round 7/10 — ticks:2841 score:0 win:false +Round 8/10 — ticks:2507 score:0 win:false +Round 9/10 — ticks:2599 score:1 win:false +Round 10/10 — ticks:2660 score:0 win:false +Counter check passed: 1190 == expected 1190 +>>> [eval] win rate: 2/10 (20%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1422 score:60 win:true +Round 2/10 — ticks:1421 score:0 win:true +Round 3/10 — ticks:1449 score:0 win:true +Round 4/10 — ticks:1451 score:0 win:true +Round 5/10 — ticks:1451 score:0 win:true +Round 6/10 — ticks:1407 score:60 win:true +Round 7/10 — ticks:1422 score:60 win:true +Round 8/10 — ticks:1422 score:0 win:true +Round 9/10 — ticks:1368 score:70 win:true +Round 10/10 — ticks:1422 score:60 win:true +Counter check passed: 1200 == expected 1200 +>>> [eval] win rate: 10/10 (100%) vs Target +=== Chunk 49/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:544 score:1 win:false +Round 2/10 — ticks:650 score:1 win:false +Round 3/10 — ticks:857 score:107 win:false +Round 4/10 — ticks:619 score:0 win:false +Round 5/10 — ticks:744 score:3 win:false +Round 6/10 — ticks:917 score:62 win:false +Round 7/10 — ticks:761 score:16 win:false +Round 8/10 — ticks:614 score:2 win:false +Round 9/10 — ticks:637 score:16 win:false +Round 10/10 — ticks:615 score:0 win:false +Counter check passed: 1210 == expected 1210 +=== Chunk 50/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:606 score:0 win:false +Round 2/10 — ticks:857 score:17 win:false +Round 3/10 — ticks:667 score:0 win:false +Round 4/10 — ticks:641 score:0 win:false +Round 5/10 — ticks:599 score:0 win:false +Round 6/10 — ticks:845 score:1 win:false +Round 7/10 — ticks:642 score:19 win:false +Round 8/10 — ticks:709 score:13 win:false +Round 9/10 — ticks:667 score:0 win:false +Round 10/10 — ticks:551 score:15 win:false +Counter check passed: 1220 == expected 1220 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1731 score:1 win:false +Round 2/10 — ticks:1427 score:0 win:false +Round 3/10 — ticks:2541 score:63 win:false +Round 4/10 — ticks:1358 score:0 win:false +Round 5/10 — ticks:1339 score:0 win:false +Round 6/10 — ticks:2909 score:0 win:false +Round 7/10 — ticks:1542 score:0 win:false +Round 8/10 — ticks:3481 score:60 win:false +Round 9/10 — ticks:1272 score:0 win:false +Round 10/10 — ticks:2327 score:60 win:false +Counter check passed: 1230 == expected 1230 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1672 score:2 win:false +Round 2/10 — ticks:1261 score:63 win:false +Round 3/10 — ticks:1682 score:62 win:true +Round 4/10 — ticks:1410 score:63 win:true +Round 5/10 — ticks:1435 score:1 win:false +Round 6/10 — ticks:1392 score:3 win:false +Round 7/10 — ticks:1039 score:62 win:false +Round 8/10 — ticks:1436 score:61 win:true +Round 9/10 — ticks:1468 score:0 win:false +Round 10/10 — ticks:1096 score:61 win:true +Counter check passed: 1240 == expected 1240 +>>> [eval] win rate: 4/10 (40%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1451 score:0 win:false +Round 2/10 — ticks:1140 score:2 win:false +Round 3/10 — ticks:972 score:12 win:false +Round 4/10 — ticks:1197 score:6 win:false +Round 5/10 — ticks:1007 score:0 win:false +Round 6/10 — ticks:1007 score:0 win:false +Round 7/10 — ticks:1020 score:3 win:false +Round 8/10 — ticks:1021 score:0 win:false +Round 9/10 — ticks:956 score:36 win:false +Round 10/10 — ticks:1451 score:0 win:false +Counter check passed: 1250 == expected 1250 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 51/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:210 score:7 win:false +Round 2/10 — ticks:349 score:25 win:false +Round 3/10 — ticks:331 score:11 win:false +Round 4/10 — ticks:215 score:16 win:false +Round 5/10 — ticks:183 score:39 win:false +Round 6/10 — ticks:326 score:41 win:false +Round 7/10 — ticks:376 score:7 win:false +Round 8/10 — ticks:324 score:46 win:false +Round 9/10 — ticks:340 score:48 win:false +Round 10/10 — ticks:490 score:22 win:false +Counter check passed: 1260 == expected 1260 +=== Chunk 52/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:931 score:24 win:false +Round 2/10 — ticks:603 score:0 win:false +Round 3/10 — ticks:633 score:0 win:false +Round 4/10 — ticks:652 score:0 win:false +Round 5/10 — ticks:620 score:0 win:false +Round 6/10 — ticks:629 score:0 win:false +Round 7/10 — ticks:633 score:0 win:false +Round 8/10 — ticks:641 score:0 win:false +Round 9/10 — ticks:667 score:16 win:false +Round 10/10 — ticks:586 score:0 win:false +Counter check passed: 1270 == expected 1270 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1067 score:60 win:true +Round 2/10 — ticks:1317 score:60 win:true +Round 3/10 — ticks:1577 score:0 win:true +Round 4/10 — ticks:1650 score:0 win:false +Round 5/10 — ticks:2328 score:60 win:false +Round 6/10 — ticks:1325 score:0 win:false +Round 7/10 — ticks:1451 score:0 win:false +Round 8/10 — ticks:4437 score:0 win:false +Round 9/10 — ticks:2531 score:0 win:false +Round 10/10 — ticks:1314 score:0 win:false +Counter check passed: 1280 == expected 1280 +>>> [eval] win rate: 3/10 (30%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1036 score:61 win:true +Round 2/10 — ticks:1378 score:0 win:false +Round 3/10 — ticks:1563 score:60 win:true +Round 4/10 — ticks:1175 score:64 win:true +Round 5/10 — ticks:1407 score:5 win:true +Round 6/10 — ticks:1159 score:1 win:false +Round 7/10 — ticks:906 score:60 win:true +Round 8/10 — ticks:1856 score:62 win:true +Round 9/10 — ticks:1039 score:60 win:true +Round 10/10 — ticks:1185 score:60 win:true +Counter check passed: 1290 == expected 1290 +>>> [eval] win rate: 8/10 (80%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1422 score:60 win:true +Round 2/10 — ticks:1187 score:5 win:true +Round 3/10 — ticks:1422 score:60 win:true +Round 4/10 — ticks:1002 score:0 win:true +Round 5/10 — ticks:984 score:8 win:false +Round 6/10 — ticks:980 score:5 win:false +Round 7/10 — ticks:1002 score:0 win:false +Round 8/10 — ticks:1451 score:0 win:false +Round 9/10 — ticks:1011 score:14 win:false +Round 10/10 — ticks:1002 score:0 win:false +Counter check passed: 1300 == expected 1300 +>>> [eval] win rate: 4/10 (40%) vs Target +>>> [eval] new best composite (28.0000) -> sac_best.zip +=== Chunk 53/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:203 score:58 win:false +Round 2/10 — ticks:177 score:40 win:false +Round 3/10 — ticks:410 score:37 win:false +Round 4/10 — ticks:167 score:47 win:false +Round 5/10 — ticks:181 score:49 win:false +Round 6/10 — ticks:524 score:52 win:false +Round 7/10 — ticks:324 score:27 win:false +Round 8/10 — ticks:208 score:16 win:false +Round 9/10 — ticks:133 score:41 win:false +Round 10/10 — ticks:183 score:50 win:false +Counter check passed: 1310 == expected 1310 +=== Chunk 54/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:787 score:0 win:false +Round 2/10 — ticks:698 score:16 win:false +Round 3/10 — ticks:349 score:15 win:false +Round 4/10 — ticks:696 score:12 win:false +Round 5/10 — ticks:389 score:41 win:false +Round 6/10 — ticks:591 score:0 win:false +Round 7/10 — ticks:709 score:12 win:false +Round 8/10 — ticks:715 score:16 win:false +Round 9/10 — ticks:675 score:0 win:false +Round 10/10 — ticks:540 score:4 win:false +Counter check passed: 1320 == expected 1320 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1722 score:0 win:false +Round 2/10 — ticks:2227 score:0 win:false +Round 3/10 — ticks:2094 score:0 win:false +Round 4/10 — ticks:1921 score:0 win:false +Round 5/10 — ticks:1719 score:0 win:false +Round 6/10 — ticks:2049 score:0 win:false +Round 7/10 — ticks:1966 score:0 win:false +Round 8/10 — ticks:2061 score:0 win:false +Round 9/10 — ticks:1941 score:0 win:false +Round 10/10 — ticks:1640 score:60 win:false +Counter check passed: 1330 == expected 1330 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1814 score:1 win:false +Round 2/10 — ticks:1289 score:64 win:false +Round 3/10 — ticks:1387 score:63 win:true +Round 4/10 — ticks:1670 score:60 win:true +Round 5/10 — ticks:979 score:62 win:true +Round 6/10 — ticks:1352 score:60 win:true +Round 7/10 — ticks:1478 score:2 win:true +Round 8/10 — ticks:981 score:62 win:true +Round 9/10 — ticks:1968 score:66 win:true +Round 10/10 — ticks:1768 score:11 win:true +Counter check passed: 1340 == expected 1340 +>>> [eval] win rate: 8/10 (80%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1020 score:32 win:false +Round 2/10 — ticks:1128 score:5 win:false +Round 3/10 — ticks:1092 score:0 win:false +Round 4/10 — ticks:1140 score:9 win:false +Round 5/10 — ticks:1451 score:0 win:false +Round 6/10 — ticks:1047 score:26 win:false +Round 7/10 — ticks:1179 score:23 win:false +Round 8/10 — ticks:1116 score:18 win:false +Round 9/10 — ticks:1123 score:0 win:false +Round 10/10 — ticks:1122 score:0 win:false +Counter check passed: 1350 == expected 1350 +>>> [eval] win rate: 0/10 (0%) vs Target +>>> [eval] new best composite (33.3333) -> sac_best.zip +=== Chunk 55/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:608 score:0 win:false +Round 2/10 — ticks:577 score:10 win:false +Round 3/10 — ticks:696 score:19 win:false +Round 4/10 — ticks:637 score:0 win:false +Round 5/10 — ticks:536 score:0 win:false +Round 6/10 — ticks:617 score:16 win:false +Round 7/10 — ticks:877 score:84 win:false +Round 8/10 — ticks:628 score:16 win:false +Round 9/10 — ticks:668 score:0 win:false +Round 10/10 — ticks:651 score:0 win:false +Counter check passed: 1360 == expected 1360 +=== Chunk 56/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:706 score:48 win:false +Round 2/10 — ticks:636 score:12 win:false +Round 3/10 — ticks:698 score:6 win:false +Round 4/10 — ticks:333 score:3 win:false +Round 5/10 — ticks:611 score:0 win:false +Round 6/10 — ticks:782 score:29 win:false +Round 7/10 — ticks:735 score:0 win:false +Round 8/10 — ticks:778 score:1 win:false +Round 9/10 — ticks:503 score:0 win:false +Round 10/10 — ticks:925 score:0 win:false +Counter check passed: 1370 == expected 1370 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2582 score:0 win:false +Round 2/10 — ticks:1373 score:60 win:false +Round 3/10 — ticks:2126 score:0 win:false +Round 4/10 — ticks:1978 score:0 win:false +Round 5/10 — ticks:2021 score:0 win:false +Round 6/10 — ticks:1072 score:60 win:false +Round 7/10 — ticks:2536 score:0 win:false +Round 8/10 — ticks:2483 score:0 win:false +Round 9/10 — ticks:1669 score:0 win:false +Round 10/10 — ticks:1794 score:0 win:false +Counter check passed: 1380 == expected 1380 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1443 score:64 win:true +Round 2/10 — ticks:2319 score:62 win:true +Round 3/10 — ticks:1980 score:6 win:false +Round 4/10 — ticks:1870 score:66 win:true +Round 5/10 — ticks:1168 score:61 win:true +Round 6/10 — ticks:1439 score:3 win:false +Round 7/10 — ticks:955 score:61 win:true +Round 8/10 — ticks:1869 score:8 win:false +Round 9/10 — ticks:1961 score:1 win:false +Round 10/10 — ticks:1487 score:60 win:false +Counter check passed: 1390 == expected 1390 +>>> [eval] win rate: 5/10 (50%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1067 score:20 win:false +Round 2/10 — ticks:935 score:50 win:false +Round 3/10 — ticks:893 score:56 win:false +Round 4/10 — ticks:1116 score:13 win:false +Round 5/10 — ticks:1050 score:25 win:false +Round 6/10 — ticks:1074 score:21 win:false +Round 7/10 — ticks:1032 score:35 win:false +Round 8/10 — ticks:1088 score:12 win:false +Round 9/10 — ticks:943 score:54 win:false +Round 10/10 — ticks:1032 score:34 win:false +Counter check passed: 1400 == expected 1400 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 57/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:676 score:0 win:false +Round 2/10 — ticks:781 score:1 win:false +Round 3/10 — ticks:667 score:16 win:false +Round 4/10 — ticks:716 score:17 win:false +Round 5/10 — ticks:725 score:16 win:false +Round 6/10 — ticks:793 score:5 win:false +Round 7/10 — ticks:979 score:27 win:false +Round 8/10 — ticks:620 score:0 win:false +Round 9/10 — ticks:831 score:30 win:false +Round 10/10 — ticks:620 score:1 win:false +Counter check passed: 1410 == expected 1410 +=== Chunk 58/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:633 score:19 win:false +Round 2/10 — ticks:626 score:0 win:false +Round 3/10 — ticks:760 score:0 win:false +Round 4/10 — ticks:622 score:16 win:false +Round 5/10 — ticks:561 score:0 win:false +Round 6/10 — ticks:419 score:32 win:false +Round 7/10 — ticks:669 score:0 win:false +Round 8/10 — ticks:294 score:4 win:false +Round 9/10 — ticks:858 score:41 win:false +Round 10/10 — ticks:708 score:0 win:false +Counter check passed: 1420 == expected 1420 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1460 score:0 win:false +Round 2/10 — ticks:1856 score:0 win:false +Round 3/10 — ticks:781 score:0 win:false +Round 4/10 — ticks:928 score:0 win:false +Round 5/10 — ticks:1312 score:0 win:false +Round 6/10 — ticks:1335 score:0 win:false +Round 7/10 — ticks:1530 score:0 win:false +Round 8/10 — ticks:2448 score:0 win:false +Round 9/10 — ticks:949 score:22 win:false +Round 10/10 — ticks:2095 score:0 win:false +Counter check passed: 1430 == expected 1430 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2098 score:29 win:false +Round 2/10 — ticks:1459 score:63 win:false +Round 3/10 — ticks:1301 score:60 win:true +Round 4/10 — ticks:2197 score:60 win:true +Round 5/10 — ticks:1997 score:5 win:false +Round 6/10 — ticks:2208 score:5 win:false +Round 7/10 — ticks:2024 score:7 win:false +Round 8/10 — ticks:1168 score:4 win:false +Round 9/10 — ticks:2178 score:1 win:false +Round 10/10 — ticks:1482 score:71 win:false +Counter check passed: 1440 == expected 1440 +>>> [eval] win rate: 2/10 (20%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1152 score:0 win:false +Round 2/10 — ticks:1152 score:0 win:false +Round 3/10 — ticks:921 score:46 win:false +Round 4/10 — ticks:1152 score:0 win:false +Round 5/10 — ticks:1212 score:0 win:false +Round 6/10 — ticks:1167 score:0 win:false +Round 7/10 — ticks:983 score:38 win:false +Round 8/10 — ticks:915 score:49 win:false +Round 9/10 — ticks:1062 score:24 win:false +Round 10/10 — ticks:1122 score:0 win:false +Counter check passed: 1450 == expected 1450 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 59/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:668 score:16 win:false +Round 2/10 — ticks:631 score:16 win:false +Round 3/10 — ticks:745 score:16 win:false +Round 4/10 — ticks:654 score:1 win:false +Round 5/10 — ticks:800 score:50 win:false +Round 6/10 — ticks:779 score:17 win:false +Round 7/10 — ticks:654 score:0 win:false +Round 8/10 — ticks:586 score:0 win:false +Round 9/10 — ticks:803 score:17 win:false +Round 10/10 — ticks:629 score:0 win:false +Counter check passed: 1460 == expected 1460 +=== Chunk 60/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:767 score:18 win:false +Round 2/10 — ticks:704 score:0 win:false +Round 3/10 — ticks:707 score:16 win:false +Round 4/10 — ticks:756 score:34 win:false +Round 5/10 — ticks:654 score:1 win:false +Round 6/10 — ticks:687 score:0 win:false +Round 7/10 — ticks:772 score:16 win:false +Round 8/10 — ticks:723 score:16 win:false +Round 9/10 — ticks:764 score:16 win:false +Round 10/10 — ticks:1061 score:50 win:false +Counter check passed: 1470 == expected 1470 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2913 score:0 win:false +Round 2/10 — ticks:2461 score:0 win:false +Round 3/10 — ticks:910 score:65 win:false +Round 4/10 — ticks:2585 score:0 win:false +Round 5/10 — ticks:2659 score:0 win:false +Round 6/10 — ticks:2074 score:0 win:false +Round 7/10 — ticks:1352 score:0 win:false +Round 8/10 — ticks:3046 score:0 win:false +Round 9/10 — ticks:3251 score:0 win:false +Round 10/10 — ticks:3020 score:0 win:false +Counter check passed: 1480 == expected 1480 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1698 score:1 win:false +Round 2/10 — ticks:2013 score:3 win:false +Round 3/10 — ticks:1649 score:2 win:false +Round 4/10 — ticks:2198 score:1 win:false +Round 5/10 — ticks:2061 score:7 win:false +Round 6/10 — ticks:1186 score:60 win:false +Round 7/10 — ticks:1300 score:60 win:false +Round 8/10 — ticks:2062 score:4 win:false +Round 9/10 — ticks:1506 score:62 win:false +Round 10/10 — ticks:1471 score:3 win:false +Counter check passed: 1490 == expected 1490 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:807 score:98 win:true +Round 2/10 — ticks:1019 score:56 win:true +Round 3/10 — ticks:971 score:48 win:true +Round 4/10 — ticks:709 score:122 win:true +Round 5/10 — ticks:911 score:67 win:true +Round 6/10 — ticks:912 score:66 win:true +Round 7/10 — ticks:1212 score:0 win:true +Round 8/10 — ticks:1157 score:18 win:false +Round 9/10 — ticks:1188 score:0 win:false +Round 10/10 — ticks:965 score:49 win:false +Counter check passed: 1500 == expected 1500 +>>> [eval] win rate: 7/10 (70%) vs Target +=== Chunk 61/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:185 score:23 win:false +Round 2/10 — ticks:283 score:11 win:false +Round 3/10 — ticks:131 score:26 win:false +Round 4/10 — ticks:380 score:32 win:false +Round 5/10 — ticks:243 score:13 win:false +Round 6/10 — ticks:251 score:53 win:false +Round 7/10 — ticks:313 score:25 win:false +Round 8/10 — ticks:299 score:9 win:false +Round 9/10 — ticks:131 score:29 win:false +Round 10/10 — ticks:329 score:107 win:false +Counter check passed: 1510 == expected 1510 +=== Chunk 62/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:647 score:22 win:false +Round 2/10 — ticks:700 score:1 win:false +Round 3/10 — ticks:764 score:16 win:false +Round 4/10 — ticks:602 score:1 win:false +Round 5/10 — ticks:646 score:16 win:false +Round 6/10 — ticks:696 score:0 win:false +Round 7/10 — ticks:727 score:16 win:false +Round 8/10 — ticks:781 score:29 win:false +Round 9/10 — ticks:642 score:1 win:false +Round 10/10 — ticks:630 score:1 win:false +Counter check passed: 1520 == expected 1520 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2549 score:60 win:true +Round 2/10 — ticks:1631 score:60 win:true +Round 3/10 — ticks:1687 score:0 win:true +Round 4/10 — ticks:1452 score:0 win:false +Round 5/10 — ticks:1451 score:0 win:false +Round 6/10 — ticks:1222 score:0 win:false +Round 7/10 — ticks:1571 score:0 win:false +Round 8/10 — ticks:800 score:32 win:false +Round 9/10 — ticks:1255 score:0 win:false +Round 10/10 — ticks:1176 score:0 win:false +Counter check passed: 1530 == expected 1530 +>>> [eval] win rate: 3/10 (30%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1324 score:64 win:true +Round 2/10 — ticks:1788 score:3 win:false +Round 3/10 — ticks:1620 score:5 win:false +Round 4/10 — ticks:1808 score:61 win:false +Round 5/10 — ticks:2175 score:4 win:false +Round 6/10 — ticks:1693 score:3 win:false +Round 7/10 — ticks:2081 score:5 win:false +Round 8/10 — ticks:911 score:63 win:false +Round 9/10 — ticks:1389 score:61 win:false +Round 10/10 — ticks:850 score:61 win:false +Counter check passed: 1540 == expected 1540 +>>> [eval] win rate: 1/10 (10%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1038 score:0 win:false +Round 2/10 — ticks:1050 score:14 win:false +Round 3/10 — ticks:1442 score:60 win:false +Round 4/10 — ticks:1032 score:6 win:false +Round 5/10 — ticks:1049 score:0 win:false +Round 6/10 — ticks:1035 score:0 win:false +Round 7/10 — ticks:1032 score:0 win:false +Round 8/10 — ticks:936 score:40 win:false +Round 9/10 — ticks:1032 score:0 win:false +Round 10/10 — ticks:1032 score:0 win:false +Counter check passed: 1550 == expected 1550 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 63/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:542 score:0 win:false +Round 2/10 — ticks:708 score:10 win:false +Round 3/10 — ticks:593 score:0 win:false +Round 4/10 — ticks:683 score:0 win:false +Round 5/10 — ticks:610 score:0 win:false +Round 6/10 — ticks:726 score:0 win:false +Round 7/10 — ticks:751 score:0 win:false +Round 8/10 — ticks:817 score:0 win:false +Round 9/10 — ticks:590 score:9 win:false +Round 10/10 — ticks:470 score:0 win:false +Counter check passed: 1560 == expected 1560 +=== Chunk 64/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:847 score:32 win:false +Round 2/10 — ticks:766 score:16 win:false +Round 3/10 — ticks:633 score:0 win:false +Round 4/10 — ticks:801 score:2 win:false +Round 5/10 — ticks:547 score:0 win:false +Round 6/10 — ticks:643 score:0 win:false +Round 7/10 — ticks:661 score:1 win:false +Round 8/10 — ticks:713 score:16 win:false +Round 9/10 — ticks:781 score:0 win:false +Round 10/10 — ticks:565 score:0 win:false +Counter check passed: 1570 == expected 1570 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2570 score:0 win:false +Round 2/10 — ticks:1503 score:0 win:false +Round 3/10 — ticks:1701 score:2 win:false +Round 4/10 — ticks:2054 score:0 win:false +Round 5/10 — ticks:2252 score:0 win:false +Round 6/10 — ticks:1997 score:0 win:false +Round 7/10 — ticks:194 score:129 win:false +Round 8/10 — ticks:2080 score:0 win:false +Round 9/10 — ticks:2085 score:0 win:false +Round 10/10 — ticks:230 score:44 win:false +Counter check passed: 1580 == expected 1580 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1992 score:2 win:false +Round 2/10 — ticks:1930 score:60 win:false +Round 3/10 — ticks:1502 score:60 win:false +Round 4/10 — ticks:1872 score:62 win:false +Round 5/10 — ticks:2341 score:2 win:false +Round 6/10 — ticks:2153 score:1 win:false +Round 7/10 — ticks:2438 score:6 win:false +Round 8/10 — ticks:2580 score:0 win:false +Round 9/10 — ticks:2205 score:0 win:false +Round 10/10 — ticks:1096 score:61 win:false +Counter check passed: 1590 == expected 1590 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:828 score:94 win:true +Round 2/10 — ticks:1212 score:0 win:false +Round 3/10 — ticks:1086 score:37 win:false +Round 4/10 — ticks:604 score:153 win:true +Round 5/10 — ticks:1134 score:22 win:true +Round 6/10 — ticks:1086 score:30 win:false +Round 7/10 — ticks:1212 score:0 win:false +Round 8/10 — ticks:1182 score:0 win:false +Round 9/10 — ticks:1212 score:0 win:false +Round 10/10 — ticks:1036 score:49 win:false +Counter check passed: 1600 == expected 1600 +>>> [eval] win rate: 3/10 (30%) vs Target +=== Chunk 65/2500: 10 rounds vs SacTwin === +Training: SAC_LSTM_Bot vs SacTwin for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:649 score:0 win:false +Round 2/10 — ticks:744 score:0 win:false +Round 3/10 — ticks:691 score:16 win:false +Round 4/10 — ticks:948 score:16 win:false +Round 5/10 — ticks:748 score:15 win:false +Round 6/10 — ticks:652 score:0 win:false +Round 7/10 — ticks:751 score:0 win:false +Round 8/10 — ticks:592 score:0 win:false +Round 9/10 — ticks:835 score:32 win:false +Round 10/10 — ticks:777 score:16 win:false +Counter check passed: 1610 == expected 1610 +=== Chunk 66/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:904 score:48 win:false +Round 2/10 — ticks:642 score:2 win:false +Round 3/10 — ticks:783 score:16 win:false +Round 4/10 — ticks:727 score:0 win:false +Round 5/10 — ticks:638 score:1 win:false +Round 6/10 — ticks:844 score:33 win:false +Round 7/10 — ticks:644 score:0 win:false +Round 8/10 — ticks:803 score:46 win:false +Round 9/10 — ticks:732 score:0 win:false +Round 10/10 — ticks:878 score:0 win:false +Counter check passed: 1620 == expected 1620 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2288 score:0 win:false +Round 2/10 — ticks:2006 score:0 win:false +Round 3/10 — ticks:1949 score:0 win:false +Round 4/10 — ticks:2169 score:0 win:false +Round 5/10 — ticks:1976 score:0 win:false +Round 6/10 — ticks:2006 score:0 win:false +Round 7/10 — ticks:1839 score:0 win:false +Round 8/10 — ticks:2075 score:0 win:false +Round 9/10 — ticks:1771 score:0 win:false +Round 10/10 — ticks:2192 score:0 win:false +Counter check passed: 1630 == expected 1630 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2490 score:0 win:false +Round 2/10 — ticks:1868 score:1 win:false +Round 3/10 — ticks:2121 score:3 win:false +Round 4/10 — ticks:1803 score:9 win:false +Round 5/10 — ticks:2162 score:4 win:false +Round 6/10 — ticks:2348 score:0 win:false +Round 7/10 — ticks:2069 score:1 win:false +Round 8/10 — ticks:1872 score:2 win:false +Round 9/10 — ticks:2524 score:9 win:false +Round 10/10 — ticks:1677 score:60 win:false +Counter check passed: 1640 == expected 1640 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1013 score:47 win:false +Round 2/10 — ticks:1232 score:0 win:false +Round 3/10 — ticks:1018 score:57 win:false +Round 4/10 — ticks:857 score:82 win:false +Round 5/10 — ticks:1182 score:0 win:false +Round 6/10 — ticks:1140 score:14 win:false +Round 7/10 — ticks:1212 score:0 win:false +Round 8/10 — ticks:1234 score:0 win:false +Round 9/10 — ticks:1025 score:50 win:false +Round 10/10 — ticks:1044 score:38 win:false +Counter check passed: 1650 == expected 1650 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 67/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:161 score:55 win:false +Round 2/10 — ticks:166 score:51 win:false +Round 3/10 — ticks:307 score:16 win:false +Round 4/10 — ticks:175 score:19 win:false +Round 5/10 — ticks:254 score:35 win:false +Round 6/10 — ticks:183 score:41 win:false +Round 7/10 — ticks:316 score:21 win:false +Round 8/10 — ticks:455 score:29 win:false +Round 9/10 — ticks:248 score:51 win:false +Round 10/10 — ticks:157 score:26 win:false +Counter check passed: 1660 == expected 1660 +=== Chunk 68/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:575 score:0 win:false +Round 2/10 — ticks:529 score:0 win:false +Round 3/10 — ticks:692 score:16 win:false +Round 4/10 — ticks:589 score:0 win:false +Round 5/10 — ticks:549 score:0 win:false +Round 6/10 — ticks:603 score:0 win:false +Round 7/10 — ticks:638 score:0 win:false +Round 8/10 — ticks:676 score:0 win:false +Round 9/10 — ticks:632 score:0 win:false +Round 10/10 — ticks:921 score:7 win:false +Counter check passed: 1670 == expected 1670 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2300 score:0 win:false +Round 2/10 — ticks:2092 score:0 win:false +Round 3/10 — ticks:1956 score:0 win:false +Round 4/10 — ticks:1782 score:0 win:false +Round 5/10 — ticks:2126 score:0 win:false +Round 6/10 — ticks:1462 score:0 win:false +Round 7/10 — ticks:2130 score:0 win:false +Round 8/10 — ticks:2254 score:60 win:false +Round 9/10 — ticks:1974 score:0 win:false +Round 10/10 — ticks:1443 score:0 win:false +Counter check passed: 1680 == expected 1680 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1524 score:8 win:false +Round 2/10 — ticks:1111 score:62 win:false +Round 3/10 — ticks:1931 score:61 win:true +Round 4/10 — ticks:1378 score:62 win:true +Round 5/10 — ticks:1774 score:3 win:false +Round 6/10 — ticks:2465 score:64 win:true +Round 7/10 — ticks:1121 score:66 win:true +Round 8/10 — ticks:2525 score:68 win:true +Round 9/10 — ticks:1711 score:67 win:true +Round 10/10 — ticks:1437 score:65 win:true +Counter check passed: 1690 == expected 1690 +>>> [eval] win rate: 7/10 (70%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1122 score:0 win:false +Round 2/10 — ticks:1092 score:18 win:false +Round 3/10 — ticks:1422 score:60 win:false +Round 4/10 — ticks:1422 score:60 win:true +Round 5/10 — ticks:1019 score:32 win:false +Round 6/10 — ticks:1123 score:14 win:false +Round 7/10 — ticks:1075 score:21 win:false +Round 8/10 — ticks:1171 score:0 win:false +Round 9/10 — ticks:966 score:48 win:false +Round 10/10 — ticks:1150 score:22 win:false +Counter check passed: 1700 == expected 1700 +>>> [eval] win rate: 1/10 (10%) vs Target +=== Chunk 69/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:276 score:32 win:false +Round 2/10 — ticks:266 score:20 win:false +Round 3/10 — ticks:210 score:56 win:false +Round 4/10 — ticks:814 score:71 win:false +Round 5/10 — ticks:465 score:29 win:false +Round 6/10 — ticks:478 score:38 win:false +Round 7/10 — ticks:280 score:16 win:false +Round 8/10 — ticks:572 score:20 win:false +Round 9/10 — ticks:253 score:66 win:false +Round 10/10 — ticks:262 score:21 win:false +Counter check passed: 1710 == expected 1710 +=== Chunk 70/2500: 10 rounds vs SacTwin === +Training: SAC_LSTM_Bot vs SacTwin for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:673 score:0 win:false +Round 2/10 — ticks:614 score:0 win:false +Round 3/10 — ticks:592 score:0 win:false +Round 4/10 — ticks:697 score:0 win:false +Round 5/10 — ticks:567 score:8 win:false +Round 6/10 — ticks:797 score:12 win:false +Round 7/10 — ticks:613 score:0 win:false +Round 8/10 — ticks:747 score:0 win:false +Round 9/10 — ticks:503 score:64 win:false +Round 10/10 — ticks:600 score:0 win:false +Counter check passed: 1720 == expected 1720 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1991 score:0 win:false +Round 2/10 — ticks:1012 score:60 win:false +Round 3/10 — ticks:5534 score:0 win:false +Round 4/10 — ticks:2077 score:14 win:false +Round 5/10 — ticks:1984 score:0 win:false +Round 6/10 — ticks:1851 score:0 win:false +Round 7/10 — ticks:2193 score:0 win:false +Round 8/10 — ticks:2023 score:0 win:false +Round 9/10 — ticks:1490 score:60 win:false +Round 10/10 — ticks:1931 score:0 win:false +Counter check passed: 1730 == expected 1730 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2187 score:12 win:false +Round 2/10 — ticks:1532 score:10 win:false +Round 3/10 — ticks:1560 score:7 win:false +Round 4/10 — ticks:2005 score:3 win:false +Round 5/10 — ticks:2040 score:5 win:false +Round 6/10 — ticks:1172 score:61 win:false +Round 7/10 — ticks:1082 score:60 win:false +Round 8/10 — ticks:1652 score:3 win:false +Round 9/10 — ticks:1792 score:3 win:false +Round 10/10 — ticks:2060 score:75 win:false +Counter check passed: 1740 == expected 1740 +>>> [eval] win rate: 0/10 (0%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1146 score:1 win:false +Round 2/10 — ticks:1152 score:0 win:false +Round 3/10 — ticks:1122 score:0 win:false +Round 4/10 — ticks:1022 score:39 win:false +Round 5/10 — ticks:1068 score:15 win:false +Round 6/10 — ticks:1152 score:0 win:false +Round 7/10 — ticks:1050 score:23 win:false +Round 8/10 — ticks:1116 score:7 win:false +Round 9/10 — ticks:1085 score:22 win:false +Round 10/10 — ticks:1177 score:0 win:false +Counter check passed: 1750 == expected 1750 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 71/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:620 score:5 win:false +Round 2/10 — ticks:594 score:0 win:false +Round 3/10 — ticks:618 score:64 win:false +Round 4/10 — ticks:646 score:0 win:false +Round 5/10 — ticks:618 score:0 win:false +Round 6/10 — ticks:623 score:0 win:false +Round 7/10 — ticks:619 score:0 win:false +Round 8/10 — ticks:633 score:40 win:false +Round 9/10 — ticks:620 score:44 win:false +Round 10/10 — ticks:583 score:0 win:false +Counter check passed: 1760 == expected 1760 +=== Chunk 72/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:778 score:16 win:false +Round 2/10 — ticks:593 score:0 win:false +Round 3/10 — ticks:670 score:16 win:false +Round 4/10 — ticks:657 score:15 win:false +Round 5/10 — ticks:628 score:16 win:false +Round 6/10 — ticks:651 score:1 win:false +Round 7/10 — ticks:630 score:3 win:false +Round 8/10 — ticks:654 score:0 win:false +Round 9/10 — ticks:575 score:18 win:false +Round 10/10 — ticks:601 score:0 win:false +Counter check passed: 1770 == expected 1770 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1373 score:60 win:true +Round 2/10 — ticks:1810 score:0 win:false +Round 3/10 — ticks:2070 score:0 win:false +Round 4/10 — ticks:2489 score:0 win:false +Round 5/10 — ticks:2298 score:0 win:false +Round 6/10 — ticks:1072 score:60 win:false +Round 7/10 — ticks:2182 score:0 win:false +Round 8/10 — ticks:1627 score:20 win:false +Round 9/10 — ticks:1900 score:0 win:false +Round 10/10 — ticks:1467 score:0 win:false +Counter check passed: 1780 == expected 1780 +>>> [eval] win rate: 1/10 (10%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1564 score:64 win:true +Round 2/10 — ticks:1784 score:9 win:false +Round 3/10 — ticks:1898 score:70 win:true +Round 4/10 — ticks:1409 score:68 win:true +Round 5/10 — ticks:1570 score:7 win:false +Round 6/10 — ticks:1608 score:0 win:false +Round 7/10 — ticks:1006 score:60 win:false +Round 8/10 — ticks:2004 score:4 win:false +Round 9/10 — ticks:1371 score:61 win:false +Round 10/10 — ticks:1466 score:70 win:false +Counter check passed: 1790 == expected 1790 +>>> [eval] win rate: 3/10 (30%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1107 score:10 win:false +Round 2/10 — ticks:1422 score:60 win:true +Round 3/10 — ticks:984 score:31 win:false +Round 4/10 — ticks:1152 score:0 win:false +Round 5/10 — ticks:1008 score:38 win:false +Round 6/10 — ticks:1166 score:1 win:false +Round 7/10 — ticks:1178 score:0 win:false +Round 8/10 — ticks:1051 score:38 win:false +Round 9/10 — ticks:1144 score:7 win:false +Round 10/10 — ticks:1236 score:6 win:false +Counter check passed: 1800 == expected 1800 +>>> [eval] win rate: 1/10 (10%) vs Target +=== Chunk 73/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:492 score:20 win:false +Round 2/10 — ticks:295 score:17 win:false +Round 3/10 — ticks:187 score:30 win:false +Round 4/10 — ticks:296 score:23 win:false +Round 5/10 — ticks:292 score:36 win:false +Round 6/10 — ticks:290 score:12 win:false +Round 7/10 — ticks:327 score:71 win:false +Round 8/10 — ticks:216 score:32 win:false +Round 9/10 — ticks:159 score:43 win:false +Round 10/10 — ticks:204 score:36 win:false +Counter check passed: 1810 == expected 1810 +=== Chunk 74/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:673 score:18 win:false +Round 2/10 — ticks:663 score:0 win:false +Round 3/10 — ticks:714 score:2 win:false +Round 4/10 — ticks:590 score:3 win:false +Round 5/10 — ticks:676 score:13 win:false +Round 6/10 — ticks:888 score:59 win:false +Round 7/10 — ticks:607 score:16 win:false +Round 8/10 — ticks:729 score:34 win:false +Round 9/10 — ticks:684 score:1 win:false +Round 10/10 — ticks:645 score:0 win:false +Counter check passed: 1820 == expected 1820 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2775 score:60 win:true +Round 2/10 — ticks:1146 score:0 win:false +Round 3/10 — ticks:1209 score:20 win:false +Round 4/10 — ticks:1256 score:60 win:false +Round 5/10 — ticks:1293 score:0 win:false +Round 6/10 — ticks:1403 score:60 win:false +Round 7/10 — ticks:3261 score:60 win:false +Round 8/10 — ticks:1121 score:0 win:false +Round 9/10 — ticks:1685 score:0 win:false +Round 10/10 — ticks:1226 score:60 win:false +Counter check passed: 1830 == expected 1830 +>>> [eval] win rate: 1/10 (10%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1497 score:64 win:true +Round 2/10 — ticks:1234 score:61 win:true +Round 3/10 — ticks:1659 score:5 win:true +Round 4/10 — ticks:1578 score:63 win:true +Round 5/10 — ticks:1268 score:66 win:true +Round 6/10 — ticks:1309 score:60 win:true +Round 7/10 — ticks:1781 score:60 win:true +Round 8/10 — ticks:1492 score:63 win:true +Round 9/10 — ticks:1006 score:60 win:true +Round 10/10 — ticks:1121 score:0 win:true +Counter check passed: 1840 == expected 1840 +>>> [eval] win rate: 10/10 (100%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1048 score:0 win:false +Round 2/10 — ticks:953 score:19 win:false +Round 3/10 — ticks:960 score:19 win:false +Round 4/10 — ticks:1451 score:0 win:false +Round 5/10 — ticks:918 score:29 win:false +Round 6/10 — ticks:1032 score:12 win:false +Round 7/10 — ticks:1248 score:4 win:false +Round 8/10 — ticks:1100 score:19 win:false +Round 9/10 — ticks:1052 score:0 win:false +Round 10/10 — ticks:1132 score:12 win:false +Counter check passed: 1850 == expected 1850 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 75/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:664 score:0 win:false +Round 2/10 — ticks:664 score:0 win:false +Round 3/10 — ticks:375 score:16 win:false +Round 4/10 — ticks:875 score:0 win:false +Round 5/10 — ticks:475 score:16 win:false +Round 6/10 — ticks:722 score:7 win:false +Round 7/10 — ticks:803 score:16 win:false +Round 8/10 — ticks:691 score:0 win:false +Round 9/10 — ticks:1032 score:0 win:false +Round 10/10 — ticks:853 score:0 win:false +Counter check passed: 1860 == expected 1860 +=== Chunk 76/2500: 10 rounds vs RamFire === +Training: SAC_LSTM_Bot vs RamFire for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:160 score:25 win:false +Round 2/10 — ticks:318 score:18 win:false +Round 3/10 — ticks:297 score:22 win:false +Round 4/10 — ticks:152 score:27 win:false +Round 5/10 — ticks:233 score:51 win:false +Round 6/10 — ticks:132 score:21 win:false +Round 7/10 — ticks:275 score:32 win:false +Round 8/10 — ticks:167 score:17 win:false +Round 9/10 — ticks:136 score:36 win:false +Round 10/10 — ticks:463 score:39 win:false +Counter check passed: 1870 == expected 1870 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1514 score:0 win:false +Round 2/10 — ticks:1809 score:0 win:false +Round 3/10 — ticks:1052 score:60 win:false +Round 4/10 — ticks:1629 score:1 win:false +Round 5/10 — ticks:1279 score:0 win:false +Round 6/10 — ticks:1885 score:0 win:false +Round 7/10 — ticks:1724 score:0 win:false +Round 8/10 — ticks:2090 score:0 win:false +Round 9/10 — ticks:2050 score:0 win:false +Round 10/10 — ticks:1745 score:0 win:false +Counter check passed: 1880 == expected 1880 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2109 score:64 win:true +Round 2/10 — ticks:1451 score:61 win:true +Round 3/10 — ticks:1111 score:0 win:true +Round 4/10 — ticks:1919 score:63 win:true +Round 5/10 — ticks:1303 score:64 win:true +Round 6/10 — ticks:1166 score:61 win:true +Round 7/10 — ticks:1010 score:61 win:true +Round 8/10 — ticks:1508 score:64 win:true +Round 9/10 — ticks:1708 score:62 win:true +Round 10/10 — ticks:933 score:60 win:true +Counter check passed: 1890 == expected 1890 +>>> [eval] win rate: 10/10 (100%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1064 score:16 win:false +Round 2/10 — ticks:1026 score:16 win:false +Round 3/10 — ticks:1056 score:23 win:false +Round 4/10 — ticks:1074 score:0 win:false +Round 5/10 — ticks:1086 score:0 win:false +Round 6/10 — ticks:1078 score:1 win:false +Round 7/10 — ticks:1102 score:2 win:false +Round 8/10 — ticks:1267 score:24 win:false +Round 9/10 — ticks:949 score:32 win:false +Round 10/10 — ticks:1044 score:20 win:false +Counter check passed: 1900 == expected 1900 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 77/2500: 10 rounds vs Target === +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:601 score:0 win:false +Round 2/10 — ticks:668 score:0 win:false +Round 3/10 — ticks:641 score:0 win:false +Round 4/10 — ticks:983 score:34 win:false +Round 5/10 — ticks:988 score:30 win:false +Round 6/10 — ticks:667 score:0 win:false +Round 7/10 — ticks:621 score:0 win:false +Round 8/10 — ticks:794 score:26 win:false +Round 9/10 — ticks:742 score:8 win:false +Round 10/10 — ticks:794 score:15 win:false +Counter check passed: 1910 == expected 1910 +=== Chunk 78/2500: 10 rounds vs SacTwin === +Training: SAC_LSTM_Bot vs SacTwin for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:787 score:16 win:false +Round 2/10 — ticks:615 score:1 win:false +Round 3/10 — ticks:946 score:32 win:false +Round 4/10 — ticks:746 score:6 win:false +Round 5/10 — ticks:764 score:16 win:false +Round 6/10 — ticks:758 score:16 win:false +Round 7/10 — ticks:767 score:16 win:false +Round 8/10 — ticks:545 score:6 win:false +Round 9/10 — ticks:599 score:0 win:false +Round 10/10 — ticks:752 score:12 win:false +Counter check passed: 1920 == expected 1920 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:3592 score:0 win:false +Round 2/10 — ticks:2422 score:0 win:false +Round 3/10 — ticks:3670 score:0 win:false +Round 4/10 — ticks:2942 score:0 win:false +Round 5/10 — ticks:3241 score:0 win:false +Round 6/10 — ticks:2701 score:0 win:false +Round 7/10 — ticks:3118 score:0 win:false +Round 8/10 — ticks:3351 score:0 win:false +Round 9/10 — ticks:2493 score:0 win:false +Round 10/10 — ticks:2943 score:0 win:false +Counter check passed: 1930 == expected 1930 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:2193 score:6 win:false +Round 2/10 — ticks:1409 score:61 win:false +Round 3/10 — ticks:1547 score:61 win:false +Round 4/10 — ticks:1844 score:62 win:true +Round 5/10 — ticks:2623 score:3 win:false +Round 6/10 — ticks:2058 score:6 win:false +Round 7/10 — ticks:1853 score:60 win:false +Round 8/10 — ticks:2144 score:3 win:false +Round 9/10 — ticks:1382 score:60 win:false +Round 10/10 — ticks:1547 score:1 win:false +Counter check passed: 1940 == expected 1940 +>>> [eval] win rate: 1/10 (10%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:995 score:55 win:false +Round 2/10 — ticks:1182 score:0 win:false +Round 3/10 — ticks:1243 score:0 win:false +Round 4/10 — ticks:1239 score:0 win:false +Round 5/10 — ticks:1033 score:29 win:false +Round 6/10 — ticks:1203 score:0 win:false +Round 7/10 — ticks:1070 score:23 win:false +Round 8/10 — ticks:941 score:53 win:false +Round 9/10 — ticks:1071 score:34 win:false +Round 10/10 — ticks:995 score:50 win:false +Counter check passed: 1950 == expected 1950 +>>> [eval] win rate: 0/10 (0%) vs Target +=== Chunk 79/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:680 score:20 win:false +Round 2/10 — ticks:563 score:1 win:false +Round 3/10 — ticks:972 score:113 win:false +Round 4/10 — ticks:1019 score:31 win:false +Round 5/10 — ticks:734 score:16 win:false +Round 6/10 — ticks:772 score:0 win:false +Round 7/10 — ticks:804 score:0 win:false +Round 8/10 — ticks:887 score:33 win:false +Round 9/10 — ticks:703 score:30 win:false +Round 10/10 — ticks:764 score:12 win:false +Counter check passed: 1960 == expected 1960 +=== Chunk 80/2500: 10 rounds vs Crazy === +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:851 score:50 win:false +Round 2/10 — ticks:714 score:0 win:false +Round 3/10 — ticks:711 score:0 win:false +Round 4/10 — ticks:768 score:15 win:false +Round 5/10 — ticks:678 score:0 win:false +Round 6/10 — ticks:1010 score:29 win:false +Round 7/10 — ticks:744 score:16 win:false +Round 8/10 — ticks:1004 score:0 win:false +Round 9/10 — ticks:932 score:40 win:false +Round 10/10 — ticks:706 score:16 win:false +Counter check passed: 1970 == expected 1970 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:1457 score:4 win:false +Round 2/10 — ticks:2061 score:60 win:false +Round 3/10 — ticks:1411 score:0 win:false +Round 4/10 — ticks:1158 score:0 win:false +Round 5/10 — ticks:1452 score:0 win:false +Round 6/10 — ticks:1112 score:60 win:false +Round 7/10 — ticks:1295 score:6 win:false +Round 8/10 — ticks:1293 score:0 win:false +Round 9/10 — ticks:1263 score:0 win:false +Round 10/10 — ticks:1694 score:0 win:false +Counter check passed: 1980 == expected 1980 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1642 score:1 win:false +Round 2/10 — ticks:1572 score:63 win:false +Round 3/10 — ticks:2368 score:64 win:true +Round 4/10 — ticks:1652 score:4 win:false +Round 5/10 — ticks:1734 score:64 win:false +Round 6/10 — ticks:1051 score:0 win:false +Round 7/10 — ticks:1259 score:64 win:false +Round 8/10 — ticks:1057 score:2 win:false +Round 9/10 — ticks:2175 score:64 win:false +Round 10/10 — ticks:1410 score:3 win:false +Counter check passed: 1990 == expected 1990 +>>> [eval] win rate: 1/10 (10%) vs Crazy +>>> [eval] 10 deterministic rounds vs Target +Training: SAC_LSTM_Bot vs Target for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Target.tmp +Round 1/10 — ticks:1425 score:60 win:true +Round 2/10 — ticks:1405 score:60 win:true +Round 3/10 — ticks:1092 score:5 win:true +Round 4/10 — ticks:1058 score:1 win:true +Round 5/10 — ticks:878 score:35 win:false +Round 6/10 — ticks:1422 score:60 win:true +Round 7/10 — ticks:1038 score:15 win:false +Round 8/10 — ticks:942 score:34 win:false +Round 9/10 — ticks:1020 score:8 win:false +Round 10/10 — ticks:1402 score:60 win:false +Counter check passed: 2000 == expected 2000 +>>> [eval] win rate: 5/10 (50%) vs Target +=== Chunk 81/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:647 score:0 win:false +Round 2/10 — ticks:794 score:16 win:false +Round 3/10 — ticks:936 score:0 win:false +Round 4/10 — ticks:254 score:0 win:false +Round 5/10 — ticks:803 score:0 win:false +Round 6/10 — ticks:676 score:0 win:false +Round 7/10 — ticks:984 score:16 win:false +Round 8/10 — ticks:693 score:0 win:false +Round 9/10 — ticks:369 score:3 win:false +Round 10/10 — ticks:869 score:0 win:false +Counter check passed: 2010 == expected 2010 +=== Chunk 82/2500: 10 rounds vs Corners === +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/training_log.jsonl +Round 1/10 — ticks:494 score:0 win:false +Round 2/10 — ticks:770 score:5 win:false +Round 3/10 — ticks:687 score:0 win:false +Round 4/10 — ticks:511 score:0 win:false +Round 5/10 — ticks:795 score:0 win:false +Round 6/10 — ticks:705 score:0 win:false +Round 7/10 — ticks:755 score:16 win:false +Round 8/10 — ticks:739 score:16 win:false +Round 9/10 — ticks:778 score:0 win:false +Round 10/10 — ticks:485 score:16 win:false +Counter check passed: 2020 == expected 2020 +>>> [eval] 10 deterministic rounds vs Corners +Training: SAC_LSTM_Bot vs Corners for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Corners.tmp +Round 1/10 — ticks:2338 score:0 win:false +Round 2/10 — ticks:2499 score:0 win:false +Round 3/10 — ticks:3018 score:0 win:false +Round 4/10 — ticks:2781 score:0 win:false +Round 5/10 — ticks:2637 score:0 win:false +Round 6/10 — ticks:2546 score:0 win:false +Round 7/10 — ticks:2749 score:0 win:false +Round 8/10 — ticks:3267 score:0 win:false +Round 9/10 — ticks:2666 score:0 win:false +Round 10/10 — ticks:2666 score:0 win:false +Counter check passed: 2030 == expected 2030 +>>> [eval] win rate: 0/10 (0%) vs Corners +>>> [eval] 10 deterministic rounds vs Crazy +Training: SAC_LSTM_Bot vs Crazy for 10 rounds +Log: /home/davide/Projects/SirRoboGarage/SAC_LSTM_Bot/eval_log.jsonl.Crazy.tmp +Round 1/10 — ticks:1696 score:60 win:true diff --git a/SAC_LSTM_Bot/config.nims b/SAC_LSTM_Bot_garage/config.nims similarity index 79% rename from SAC_LSTM_Bot/config.nims rename to SAC_LSTM_Bot_garage/config.nims index 7bcea66..eb6d48f 100644 --- a/SAC_LSTM_Bot/config.nims +++ b/SAC_LSTM_Bot_garage/config.nims @@ -12,7 +12,7 @@ switch("path", thisDir() & "/src") when withDir(thisDir(), system.fileExists("nimble.paths")): include "nimble.paths" # end Nimble config -# Use the repo-vendored Tank Royale bot API (libs/) instead of the nimble pkg. +# Use the repo-vendored Tank Royale bot API (common_libs/) instead of the nimble pkg. # Must come AFTER the nimble.paths include: later --path wins the import search. -switch("path", thisDir() & "/../libs/tankroyale_botapi") -switch("path", thisDir() & "/../libs/radar_lock") +switch("path", thisDir() & "/../common_libs/tankroyale_botapi") +switch("path", thisDir() & "/../common_libs/radar_lock") diff --git a/SAC_LSTM_Bot_garage/docs/bozza_requisiti.md b/SAC_LSTM_Bot_garage/docs/bozza_requisiti.md new file mode 100644 index 0000000..a91d3c4 --- /dev/null +++ b/SAC_LSTM_Bot_garage/docs/bozza_requisiti.md @@ -0,0 +1,98 @@ +# Implementazione Agente DRL Recurrent-SAC (SAC-GRU) Nativo per Robocode TankRoyale + + Bot nativo basato sull'algoritmo **Recurrent Soft Actor-Critic (SAC-GRU)** addestrato per combattere nell'ambiente **Robocode TankRoyale**. + +Il bot deve connettersi direttamente al server WebSocket di TankRoyale tramite un'interfaccia client API nativa, senza l'uso di middleware o socket intermediari extra. Il sistema deve garantire il rispetto del limite rigido di **30 ms per turno** imposto dal simulatore, eseguendo l'inferenza e l'addestramento in modo concorrente all'interno dello stesso processo. + +--- + +## 1. Architettura Multi-Thread e Concorrenza (30 ms Tick Constraint) + +Per evitare il fenomeno degli "skipped turns", l'applicazione deve essere suddivisa in due thread principali coordinati nello stesso processo: + +1. **Thread 1: Realtime Async Event Loop (WebSocket Client)** + * Riceve i messaggi di evento dal server TankRoyale via WebSocket ad ogni tick. + * Estragga e normalizza il vettore di stato a 17 dimensioni ($S_t$). + * Esegue l'inferenza rapida dell'Actor ($< 2 \text{ ms}$) fornendo lo stato $S_t$ e lo stato nascosto corrente della GRU ($h_{t-1}$). + * Mappa le azioni restituite e invia immediatamente il `BotIntent` al server WebSocket. + * Invia la transizione $(S_t, A_t, R_t, S_{t+1}, D_t)$ a una coda/canale thread-safe (`Thread-safe Channel`). + +2. **Thread 2: Background Trainer Thread (SAC-GRU Engine)** + * Preleva le transizioni dal canale e le accumula in un **Sequential Replay Buffer**. + * Quando il buffer contiene un numero sufficiente di esperienze, estrae mini-batch di sequenze temporali. + * Esegue l'addestramento in background (Forward/Backward Pass dell'Actor, dei Dual Critic e dell'Alpha autotuning) sfruttando l'accelerazione hardware (GPU/CPU). + * Aggiorna periodicamente i pesi della rete Actor usata dal Thread 1 in modo thread-safe (es. scambio atomico di puntatori o mutua esclusione leggera). + +--- + +## 2. Specifiche dell'Ambiente DRL (POMDP) + +### 2.1 Vettore di Stato ($S \in \mathbb{R}^{17}$, Normalizzato in $[-1, 1]$) + +* `s[0]`: Posizione X propria ($X / \text{width}$) +* `s[1]`: Posizione Y propria ($Y / \text{height}$) +* `s[2]`: Orientamento scafo ($[-\pi, \pi] / \pi$) +* `s[3]`: Velocità lineare propria ($[-8, 8] / 8$) +* `s[4]`: Orientamento cannone ($[-\pi, \pi] / \pi$) +* `s[5]`: Orientamento radar ($[-\pi, \pi] / \pi$) +* `s[6]`: Temperatura del cannone ($[0, 3] / 3$) +* `s[7]`: Energia propria ($[0, 100] / 100$) +* `s[8]`: Distanza dal muro NORD ($(\text{height} - Y) / \text{height}$) +* `s[9]`: Distanza dal muro SUD ($Y / \text{height}$) +* `s[10]`: Distanza dal muro EST ($(\text{width} - X) / \text{width}$) +* `s[11]`: Distanza dal muro OVEST ($X / \text{width}$) +* `s[12]`: Ultima distanza rilevata del nemico ($[0, \text{max\_dist}] / \text{max\_dist}$) +* `s[13]`: Angolo relativo (bearing) del nemico ($[-\pi, \pi] / \pi$) +* `s[14]`: Orientamento del nemico ($[-\pi, \pi] / \pi$) +* `s[15]`: Velocità del nemico ($[-8, 8] / 8$) +* `s[16]`: Energia residua del nemico ($[0, 100] / 100$) + +### 2.2 Vettore delle Azioni Continuo ($A \in \mathbb{R}^4$, Output $[-1, 1]$) + +* `a[0]`: Rotazione scafo $\rightarrow$ Mappato su $[-10^\circ, +10^\circ]$ per tick. +* `a[1]`: Traslazione $\rightarrow$ Mappato su $[-8, +8]$ px/tick. +* `a[2]`: Rotazione cannone $\rightarrow$ Mappato su $[-20^\circ, +20^\circ]$ per tick. +* `a[3]`: Potenza di sparo $\rightarrow$ $\text{ReLU}(a_3) \times 3.0$ (Spara solo se $> 0.1$). + +### 2.3 Reward Function + +$$R_t = R_{\text{danno\_inflitto}} - R_{\text{danno\_subito}} + R_{\text{vittoria/sconfitta}} - R_{\text{muri}} - R_{\text{sparo\_vuoto}}$$ + +* Danno inflitto: $+ (4p + 2(p - 1))$ con $p \le 3$. +* Danno subito: $- (4p_{\text{nemico}} + 2(p_{\text{nemico}} - 1))$. +* Muri: $-5.0$ per tick di impatto. +* Sparo a vuoto: $-0.1 \times p$. +* Vittoria/Sconfitta: $+20.0$ / $-10.0$. + +--- + +## 3. Modelli Neurali e Meccanismi di Addestramento + +Tutte le reti devono integrare una cella ricorsiva **GRU (Gated Recurrent Unit)** per gestire la parziale osservabilità dell'arena (radar in rotazione): + +* **Recurrent Actor Network $\pi_\phi(a_t | s_{:t}, h_{t-1})$:** + * Feature Extractor: Linear/Dense ($17 \rightarrow 128$) + Attivazione + * Memory: GRU Layer (Input: $128$, Hidden: $128$) + * Heads: Linear/Dense ($128 \rightarrow 64$) $\rightarrow$ Outputs: $\mu \in \mathbb{R}^4$ e $\log \sigma \in \mathbb{R}^4$ (Clamped $[-20, 2]$) + * Sampling: Reparameterization Trick con squashing $\tanh$. + +* **Recurrent Dual-Critic Networks $Q_{\theta_1, \theta_2}(s_{:t}, a_{:t}, h_{t-1})$:** + * Fusion: Concatenazione di Stato e Azione ($17 + 4 = 21$) + * Feature Extractor: Linear/Dense ($21 \rightarrow 128$) + Attivazione + * Memory: GRU Layer (Input: $128$, Hidden: $128$) + * Q-Head: Linear/Dense ($128 \rightarrow 64$) $\rightarrow$ Output Q-Value scalare. + +* **Sequential Replay Buffer & Burn-in Strategy:** + * Campionamento di sequenze temporali contigue di lunghezza $L = 24$. + * **Burn-in ($L_{\text{burn}} = 8$ step):** I primi 8 step vengono usati unicamente per aggiornare lo stato nascosto $h$ della GRU, senza calcolo di loss o backpropagation. + * **Training ($L_{\text{train}} = 16$ step):** I successivi 16 step calcolano le loss dell'Actor, dei Critic e l'autotuning del parametro di temperatura $\alpha$ (con target $H_{\text{target}} = -4.0$). + +--- + +## 4. Requisiti di Strutturazione del Codice + +Fornisci il codice sorgente completo, modulare e pronto all'uso articolato nelle seguenti componenti: + +1. **Model Definitions:** Classi/Strutture per Actor, Critic e Target Networks basate su GRU. +2. **Sequential Replay Buffer:** Struttura dati thread-safe con supporto per estrazione di sequenze e gestione Burn-in. +3. **SAC-GRU Trainer Engine:** Algoritmo di aggiornamento, calcolo loss, gradient clipping ($1.0$) e soft update ($\tau = 0.005$). diff --git a/SAC_LSTM_Bot_garage/docs/campaign_dashboard.svg b/SAC_LSTM_Bot_garage/docs/campaign_dashboard.svg new file mode 100644 index 0000000..ac9a4ed --- /dev/null +++ b/SAC_LSTM_Bot_garage/docs/campaign_dashboard.svg @@ -0,0 +1,229 @@ + + +SAC-LSTM campaign dashboard - live run (current only) +generated 2026-08-24 12:15:51 - auto-reloads every 60 s (open this file in Chrome) +Test matches - win % vs opponents +raw dots = single test matches, thick = rolling-mean-10 +What: How often the bot wins against each opponent in test battles. +Axes: X = training progress (match number); Y = win rate, 0-100%. +Better: higher is better. + + + + + + + + + +1 + +2 + +0 + +20 + +40 + +60 + +80 + +100 +test match number (each opponent) +win rate (%) + + + + + + + + + + +Corners - 2 evals + +Crazy - 2 evals + +Target - 2 evals +Training losses (log) & alpha (linear) +training_metrics.jsonl - big early spikes are normal +What: How well the brain is learning: losses should fall; alpha sets explore/exploit. +Axes: X = training progress; left Y (log) = losses; right Y (linear) = alpha. +Better: lower losses = better; alpha falls over time as the bot gets confident. + + + + + + + + +1 + +2 + +4 + +5 + +6 + +0.01 + +0.1 + +1 + +10 + +100 +metric line number +loss (log) + + + + + + + + + +0 + +0.25 + +0.5 + +0.75 + +1 +alpha + + +critic_loss + +|actor_loss| + +alpha +Throughput - games per hour +method: training_metrics.jsonl 'epoch' deltas; 1 row = one 10-game chunk +What: How many games per hour the bot trains (its learning speed). +Axes: X = training progress (10-game chunks); Y = games per hour. +Better: higher = faster learning; a steady line beats a spiky one. + + + + + + + + +1 + +2 + +3 + +4 + +5 + +0 + +1083 + +2166 + +3249 + +4332 +chunk interval (10-game chunks) +games / hour + + + + + + +Max score per eval cycle +campaign_v4_stdout.log - max of the 10 deterministic round scores per eval +What: Best single-round score the bot managed in each test cycle. +Axes: X = eval cycle number; Y = best score achieved. +Better: higher is better; a rising trend means the bot is improving. + + + + + + + + +1 + +2 + +0 + +19 + +38 + +58 + +77 +eval cycle number +best single-round score + + + + + + + + + + + +Corners - 2 evals + +Crazy - 2 evals + +Target - 2 evals + +combined max + +Reading the signs +Regenerate anytime: python3 tools/plot_progress.py +Healthy patterns ✅ +• Both critic and actor losses trending down over time +• Alpha decaying slowly from ~1.0, + then plateauing — this is normal +• Win rates appearing and increasing in the eval panel +• Max scores rising in the max-score panel +• Alpha plateauing is NOT a problem — it means + exploration level is stable +Warning signs ⚠️ +• Losses exploding (suddenly jumping to + millions or billions) +• Win rates staying at 0% for a long time + after the first ~20 eval cycles +• Alpha reaching 0 — bot stops exploring entirely + (gets stuck) +• Max scores flatlining (no improvement + over many eval cycles) +• Any single loss value above 1e6 +What each metric means (brief) +• Critic loss: how wrong the bot's value + estimates are — should go down +• Actor loss: how well the bot's action policy + is doing — should go down overall + (some bumps are normal) +• Alpha: exploration-exploitation tradeoff — starts + high, settles at a positive value (NOT zero) +• Max score: best score achieved per eval cycle — + rising trend = learning + + diff --git a/SAC_LSTM_Bot/docs/campaign_notebook.md b/SAC_LSTM_Bot_garage/docs/campaign_notebook.md similarity index 100% rename from SAC_LSTM_Bot/docs/campaign_notebook.md rename to SAC_LSTM_Bot_garage/docs/campaign_notebook.md diff --git a/SAC_LSTM_Bot_garage/eval_log.jsonl.pre-merge b/SAC_LSTM_Bot_garage/eval_log.jsonl.pre-merge new file mode 100644 index 0000000..d1b006e --- /dev/null +++ b/SAC_LSTM_Bot_garage/eval_log.jsonl.pre-merge @@ -0,0 +1,30 @@ +{"type":"game","round":1,"ticks":1647,"score":0,"total_score":0,"win":false,"opponent":"Corners"} +{"type":"game","round":2,"ticks":1518,"score":0,"total_score":0,"win":false,"opponent":"Corners"} +{"type":"game","round":3,"ticks":1733,"score":0,"total_score":0,"win":false,"opponent":"Corners"} +{"type":"game","round":4,"ticks":1731,"score":0,"total_score":0,"win":false,"opponent":"Corners"} +{"type":"game","round":5,"ticks":1077,"score":17,"total_score":17,"win":false,"opponent":"Corners"} +{"type":"game","round":6,"ticks":1745,"score":0,"total_score":17,"win":false,"opponent":"Corners"} +{"type":"game","round":7,"ticks":1634,"score":0,"total_score":17,"win":false,"opponent":"Corners"} +{"type":"game","round":8,"ticks":1710,"score":1,"total_score":18,"win":false,"opponent":"Corners"} +{"type":"game","round":9,"ticks":2180,"score":60,"total_score":78,"win":false,"opponent":"Corners"} +{"type":"game","round":10,"ticks":1364,"score":0,"total_score":78,"win":false,"opponent":"Corners"} +{"type":"game","round":1,"ticks":1426,"score":68,"total_score":68,"win":true,"opponent":"Crazy"} +{"type":"game","round":2,"ticks":1649,"score":70,"total_score":138,"win":true,"opponent":"Crazy"} +{"type":"game","round":3,"ticks":1456,"score":64,"total_score":202,"win":true,"opponent":"Crazy"} +{"type":"game","round":4,"ticks":1032,"score":61,"total_score":263,"win":true,"opponent":"Crazy"} +{"type":"game","round":5,"ticks":1710,"score":1,"total_score":264,"win":true,"opponent":"Crazy"} +{"type":"game","round":6,"ticks":941,"score":61,"total_score":325,"win":true,"opponent":"Crazy"} +{"type":"game","round":7,"ticks":1455,"score":61,"total_score":386,"win":true,"opponent":"Crazy"} +{"type":"game","round":8,"ticks":1323,"score":66,"total_score":452,"win":true,"opponent":"Crazy"} +{"type":"game","round":9,"ticks":1035,"score":5,"total_score":457,"win":true,"opponent":"Crazy"} +{"type":"game","round":10,"ticks":1457,"score":65,"total_score":522,"win":true,"opponent":"Crazy"} +{"type":"game","round":1,"ticks":1014,"score":14,"total_score":14,"win":false,"opponent":"Target"} +{"type":"game","round":2,"ticks":1074,"score":20,"total_score":34,"win":false,"opponent":"Target"} +{"type":"game","round":3,"ticks":996,"score":6,"total_score":40,"win":false,"opponent":"Target"} +{"type":"game","round":4,"ticks":1451,"score":0,"total_score":40,"win":false,"opponent":"Target"} +{"type":"game","round":5,"ticks":970,"score":25,"total_score":65,"win":false,"opponent":"Target"} +{"type":"game","round":6,"ticks":1451,"score":0,"total_score":65,"win":false,"opponent":"Target"} +{"type":"game","round":7,"ticks":1044,"score":1,"total_score":66,"win":false,"opponent":"Target"} +{"type":"game","round":8,"ticks":1119,"score":13,"total_score":79,"win":false,"opponent":"Target"} +{"type":"game","round":9,"ticks":1184,"score":15,"total_score":94,"win":false,"opponent":"Target"} +{"type":"game","round":10,"ticks":1028,"score":9,"total_score":103,"win":false,"opponent":"Target"} diff --git a/SAC_LSTM_Bot/make_twin.sh b/SAC_LSTM_Bot_garage/make_twin.sh similarity index 100% rename from SAC_LSTM_Bot/make_twin.sh rename to SAC_LSTM_Bot_garage/make_twin.sh diff --git a/SAC_LSTM_Bot/sac_train.sh b/SAC_LSTM_Bot_garage/sac_train.sh similarity index 100% rename from SAC_LSTM_Bot/sac_train.sh rename to SAC_LSTM_Bot_garage/sac_train.sh diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot.json b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot.json similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot.json rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot.json diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot.nim b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot.nim similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot.nim rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot.nim diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot/.gitkeep b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/.gitkeep similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot/.gitkeep rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/.gitkeep diff --git a/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/actions b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/actions new file mode 100755 index 0000000..5b03ab0 Binary files /dev/null and b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/actions differ diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot/actions.nim b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/actions.nim similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot/actions.nim rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/actions.nim diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot/integration.nim b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/integration.nim similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot/integration.nim rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/integration.nim diff --git a/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/network b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/network new file mode 100755 index 0000000..0322edc Binary files /dev/null and b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/network differ diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot/network.nim b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/network.nim similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot/network.nim rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/network.nim diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot/replay_buffer.nim b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/replay_buffer.nim similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot/replay_buffer.nim rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/replay_buffer.nim diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot/rewards.nim b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/rewards.nim similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot/rewards.nim rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/rewards.nim diff --git a/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/state b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/state new file mode 100755 index 0000000..ddc9aa0 Binary files /dev/null and b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/state differ diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot/state.nim b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/state.nim similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot/state.nim rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/state.nim diff --git a/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/training b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/training new file mode 100755 index 0000000..c4e7e0e Binary files /dev/null and b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/training differ diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot/training.nim b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/training.nim similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot/training.nim rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/training.nim diff --git a/SAC_LSTM_Bot/src/SAC_LSTM_Bot/weights.nim b/SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/weights.nim similarity index 100% rename from SAC_LSTM_Bot/src/SAC_LSTM_Bot/weights.nim rename to SAC_LSTM_Bot_garage/src/SAC_LSTM_Bot/weights.nim diff --git a/SAC_LSTM_Bot/tests/config.nims b/SAC_LSTM_Bot_garage/tests/config.nims similarity index 100% rename from SAC_LSTM_Bot/tests/config.nims rename to SAC_LSTM_Bot_garage/tests/config.nims diff --git a/SAC_LSTM_Bot/tests/test_actions.nim b/SAC_LSTM_Bot_garage/tests/test_actions.nim similarity index 100% rename from SAC_LSTM_Bot/tests/test_actions.nim rename to SAC_LSTM_Bot_garage/tests/test_actions.nim diff --git a/SAC_LSTM_Bot/tests/test_integration.nim b/SAC_LSTM_Bot_garage/tests/test_integration.nim similarity index 100% rename from SAC_LSTM_Bot/tests/test_integration.nim rename to SAC_LSTM_Bot_garage/tests/test_integration.nim diff --git a/SAC_LSTM_Bot/tests/test_network.nim b/SAC_LSTM_Bot_garage/tests/test_network.nim similarity index 100% rename from SAC_LSTM_Bot/tests/test_network.nim rename to SAC_LSTM_Bot_garage/tests/test_network.nim diff --git a/SAC_LSTM_Bot/tests/test_replay_buffer.nim b/SAC_LSTM_Bot_garage/tests/test_replay_buffer.nim similarity index 100% rename from SAC_LSTM_Bot/tests/test_replay_buffer.nim rename to SAC_LSTM_Bot_garage/tests/test_replay_buffer.nim diff --git a/SAC_LSTM_Bot/tests/test_rewards.nim b/SAC_LSTM_Bot_garage/tests/test_rewards.nim similarity index 100% rename from SAC_LSTM_Bot/tests/test_rewards.nim rename to SAC_LSTM_Bot_garage/tests/test_rewards.nim diff --git a/SAC_LSTM_Bot/tests/test_state.nim b/SAC_LSTM_Bot_garage/tests/test_state.nim similarity index 100% rename from SAC_LSTM_Bot/tests/test_state.nim rename to SAC_LSTM_Bot_garage/tests/test_state.nim diff --git a/SAC_LSTM_Bot/tests/test_training.nim b/SAC_LSTM_Bot_garage/tests/test_training.nim similarity index 100% rename from SAC_LSTM_Bot/tests/test_training.nim rename to SAC_LSTM_Bot_garage/tests/test_training.nim diff --git a/SAC_LSTM_Bot/tests/test_weights.nim b/SAC_LSTM_Bot_garage/tests/test_weights.nim similarity index 100% rename from SAC_LSTM_Bot/tests/test_weights.nim rename to SAC_LSTM_Bot_garage/tests/test_weights.nim diff --git a/SAC_LSTM_Bot_garage/tools/.watch_dashboard.lock b/SAC_LSTM_Bot_garage/tools/.watch_dashboard.lock new file mode 100644 index 0000000..e69de29 diff --git a/SAC_LSTM_Bot/tools/plot_progress.py b/SAC_LSTM_Bot_garage/tools/plot_progress.py similarity index 100% rename from SAC_LSTM_Bot/tools/plot_progress.py rename to SAC_LSTM_Bot_garage/tools/plot_progress.py diff --git a/SAC_LSTM_Bot/tools/watch_dashboard.sh b/SAC_LSTM_Bot_garage/tools/watch_dashboard.sh similarity index 100% rename from SAC_LSTM_Bot/tools/watch_dashboard.sh rename to SAC_LSTM_Bot_garage/tools/watch_dashboard.sh diff --git a/SAC_LSTM_Bot_garage/training_metrics.jsonl.pre-merge b/SAC_LSTM_Bot_garage/training_metrics.jsonl.pre-merge new file mode 100644 index 0000000..d6aac04 --- /dev/null +++ b/SAC_LSTM_Bot_garage/training_metrics.jsonl.pre-merge @@ -0,0 +1,6 @@ +{"epoch":1787565804.965847,"steps":1,"buffer_size":24,"drained":1,"grad_steps":1,"critic_loss":6.929736,"actor_loss":13.433716,"alpha_loss":-0.0044489726,"alpha":0.9753562} +{"epoch":1787565814.1075847,"steps":1,"buffer_size":24,"drained":1,"grad_steps":1,"critic_loss":0.05124796,"actor_loss":12.885783,"alpha_loss":0.016930042,"alpha":0.9762861} +{"epoch":1787565961.245973,"steps":1,"buffer_size":24,"drained":1,"grad_steps":1,"critic_loss":0.4263701,"actor_loss":14.863115,"alpha_loss":0.03347406,"alpha":0.97734594} +{"epoch":1787565971.2967772,"steps":1,"buffer_size":24,"drained":1,"grad_steps":1,"critic_loss":0.30882663,"actor_loss":15.45638,"alpha_loss":0.047085714,"alpha":0.97881573} +{"epoch":1787566172.4240468,"steps":1,"buffer_size":24,"drained":1,"grad_steps":1,"critic_loss":3.1835616,"actor_loss":22.56434,"alpha_loss":0.117146604,"alpha":0.9814878} +{"epoch":1787566184.1664138,"steps":1,"buffer_size":24,"drained":1,"grad_steps":1,"critic_loss":2.150265,"actor_loss":22.027954,"alpha_loss":0.07355834,"alpha":0.98294044} diff --git a/SAC_LSTM_Bot_garage/weights/best_score.txt b/SAC_LSTM_Bot_garage/weights/best_score.txt new file mode 100644 index 0000000..20bce2f --- /dev/null +++ b/SAC_LSTM_Bot_garage/weights/best_score.txt @@ -0,0 +1 @@ +33.3333 diff --git a/SAC_LSTM_Bot_garage/weights/ma_history_Corners.txt b/SAC_LSTM_Bot_garage/weights/ma_history_Corners.txt new file mode 100644 index 0000000..56c9579 --- /dev/null +++ b/SAC_LSTM_Bot_garage/weights/ma_history_Corners.txt @@ -0,0 +1 @@ +0 10 0 0 0 \ No newline at end of file diff --git a/SAC_LSTM_Bot_garage/weights/ma_history_Crazy.txt b/SAC_LSTM_Bot_garage/weights/ma_history_Crazy.txt new file mode 100644 index 0000000..80ef797 --- /dev/null +++ b/SAC_LSTM_Bot_garage/weights/ma_history_Crazy.txt @@ -0,0 +1 @@ +10 100 0 0 100 \ No newline at end of file diff --git a/SAC_LSTM_Bot_garage/weights/ma_history_Target.txt b/SAC_LSTM_Bot_garage/weights/ma_history_Target.txt new file mode 100644 index 0000000..7a46dce --- /dev/null +++ b/SAC_LSTM_Bot_garage/weights/ma_history_Target.txt @@ -0,0 +1 @@ +0 0 0 10 0 \ No newline at end of file diff --git a/SAC_LSTM_Bot_garage/weights/round_counter.txt b/SAC_LSTM_Bot_garage/weights/round_counter.txt new file mode 100644 index 0000000..e2d43aa --- /dev/null +++ b/SAC_LSTM_Bot_garage/weights/round_counter.txt @@ -0,0 +1 @@ +2395 \ No newline at end of file diff --git a/SAC_LSTM_Bot_garage/weights/sac_best.zip b/SAC_LSTM_Bot_garage/weights/sac_best.zip new file mode 100644 index 0000000..d9098d2 Binary files /dev/null and b/SAC_LSTM_Bot_garage/weights/sac_best.zip differ diff --git a/SAC_LSTM_Bot_garage/weights/sac_latest.zip b/SAC_LSTM_Bot_garage/weights/sac_latest.zip new file mode 100644 index 0000000..5768c40 Binary files /dev/null and b/SAC_LSTM_Bot_garage/weights/sac_latest.zip differ diff --git a/SAC_LSTM_Bot_garage/weights/sac_latest.zip.tmp.e0f21a.part b/SAC_LSTM_Bot_garage/weights/sac_latest.zip.tmp.e0f21a.part new file mode 100644 index 0000000..7a9fb02 Binary files /dev/null and b/SAC_LSTM_Bot_garage/weights/sac_latest.zip.tmp.e0f21a.part differ diff --git a/SAC_LSTM_Bot_garage/weights/sac_latest.zip.tmp.l542ex.part b/SAC_LSTM_Bot_garage/weights/sac_latest.zip.tmp.l542ex.part new file mode 100644 index 0000000..e04ca9d Binary files /dev/null and b/SAC_LSTM_Bot_garage/weights/sac_latest.zip.tmp.l542ex.part differ diff --git a/SAC_LSTM_Bot_garage/weights_smoke49_backup/best_score.txt b/SAC_LSTM_Bot_garage/weights_smoke49_backup/best_score.txt new file mode 100644 index 0000000..573541a --- /dev/null +++ b/SAC_LSTM_Bot_garage/weights_smoke49_backup/best_score.txt @@ -0,0 +1 @@ +0 diff --git a/SAC_LSTM_Bot_garage/weights_smoke49_backup/round_counter.txt b/SAC_LSTM_Bot_garage/weights_smoke49_backup/round_counter.txt new file mode 100644 index 0000000..b5db9c4 --- /dev/null +++ b/SAC_LSTM_Bot_garage/weights_smoke49_backup/round_counter.txt @@ -0,0 +1 @@ +139 \ No newline at end of file diff --git a/SAC_LSTM_Bot_garage/weights_smoke49_backup/sac_best.zip b/SAC_LSTM_Bot_garage/weights_smoke49_backup/sac_best.zip new file mode 100644 index 0000000..412c051 Binary files /dev/null and b/SAC_LSTM_Bot_garage/weights_smoke49_backup/sac_best.zip differ diff --git a/SAC_LSTM_Bot_garage/weights_smoke49_backup/sac_latest.zip b/SAC_LSTM_Bot_garage/weights_smoke49_backup/sac_latest.zip new file mode 100644 index 0000000..ebdca94 Binary files /dev/null and b/SAC_LSTM_Bot_garage/weights_smoke49_backup/sac_latest.zip differ diff --git a/SAC_LSTM_Bot_garage/weights_v1_archive/best_score.txt b/SAC_LSTM_Bot_garage/weights_v1_archive/best_score.txt new file mode 100644 index 0000000..29d6383 --- /dev/null +++ b/SAC_LSTM_Bot_garage/weights_v1_archive/best_score.txt @@ -0,0 +1 @@ +100 diff --git a/SAC_LSTM_Bot_garage/weights_v1_archive/round_counter.txt b/SAC_LSTM_Bot_garage/weights_v1_archive/round_counter.txt new file mode 100644 index 0000000..b042c25 --- /dev/null +++ b/SAC_LSTM_Bot_garage/weights_v1_archive/round_counter.txt @@ -0,0 +1 @@ +38912 \ No newline at end of file diff --git a/SAC_LSTM_Bot_garage/weights_v1_archive/sac_best.zip b/SAC_LSTM_Bot_garage/weights_v1_archive/sac_best.zip new file mode 100644 index 0000000..bc58c8a Binary files /dev/null and b/SAC_LSTM_Bot_garage/weights_v1_archive/sac_best.zip differ diff --git a/SAC_LSTM_Bot_garage/weights_v1_archive/sac_latest.zip b/SAC_LSTM_Bot_garage/weights_v1_archive/sac_latest.zip new file mode 100644 index 0000000..98b692b Binary files /dev/null and b/SAC_LSTM_Bot_garage/weights_v1_archive/sac_latest.zip differ diff --git a/libs/radar_lock/radar_lock.nim b/common_libs/radar_lock/radar_lock.nim similarity index 100% rename from libs/radar_lock/radar_lock.nim rename to common_libs/radar_lock/radar_lock.nim diff --git a/libs/radar_lock/radar_lock.nimble b/common_libs/radar_lock/radar_lock.nimble similarity index 100% rename from libs/radar_lock/radar_lock.nimble rename to common_libs/radar_lock/radar_lock.nimble diff --git a/libs/radar_lock/tests/test_radar_lock b/common_libs/radar_lock/tests/test_radar_lock similarity index 100% rename from libs/radar_lock/tests/test_radar_lock rename to common_libs/radar_lock/tests/test_radar_lock diff --git a/libs/radar_lock/tests/test_radar_lock.nim b/common_libs/radar_lock/tests/test_radar_lock.nim similarity index 100% rename from libs/radar_lock/tests/test_radar_lock.nim rename to common_libs/radar_lock/tests/test_radar_lock.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi.nim b/common_libs/tankroyale_botapi/tankroyale_botapi.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi.nimble b/common_libs/tankroyale_botapi/tankroyale_botapi.nimble similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi.nimble rename to common_libs/tankroyale_botapi/tankroyale_botapi.nimble diff --git a/libs/tankroyale_botapi/tankroyale_botapi/bot.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/bot.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/bot.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/bot.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi/bot_info.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/bot_info.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/bot_info.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/bot_info.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi/color.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/color.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/color.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/color.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi/constants.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/constants.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/constants.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/constants.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi/event_queue.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/event_queue.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/event_queue.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/event_queue.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi/graphics.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/graphics.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/graphics.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/graphics.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi/json_parse.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/json_parse.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/json_parse.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/json_parse.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi/schemas.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/schemas.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/schemas.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/schemas.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi/utils.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/utils.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/utils.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/utils.nim diff --git a/libs/tankroyale_botapi/tankroyale_botapi/ws_client.nim b/common_libs/tankroyale_botapi/tankroyale_botapi/ws_client.nim similarity index 100% rename from libs/tankroyale_botapi/tankroyale_botapi/ws_client.nim rename to common_libs/tankroyale_botapi/tankroyale_botapi/ws_client.nim diff --git a/docs/papers/neuroevolution/2011_competitive_coevolution_neat.pdf b/docs/papers/neuroevolution/2011_competitive_coevolution_neat.pdf new file mode 100644 index 0000000..2989629 Binary files /dev/null and b/docs/papers/neuroevolution/2011_competitive_coevolution_neat.pdf differ diff --git a/docs/papers/neuroevolution/2017_deep_neuroevolution_uber.pdf b/docs/papers/neuroevolution/2017_deep_neuroevolution_uber.pdf new file mode 100644 index 0000000..dc498e5 Binary files /dev/null and b/docs/papers/neuroevolution/2017_deep_neuroevolution_uber.pdf differ diff --git a/docs/papers/neuroevolution/2017_es_scalable_alternative_rl_openai.pdf b/docs/papers/neuroevolution/2017_es_scalable_alternative_rl_openai.pdf new file mode 100644 index 0000000..b1f6427 Binary files /dev/null and b/docs/papers/neuroevolution/2017_es_scalable_alternative_rl_openai.pdf differ diff --git a/docs/papers/neuroevolution/2018_back_to_basics_es.pdf b/docs/papers/neuroevolution/2018_back_to_basics_es.pdf new file mode 100644 index 0000000..19b6811 Binary files /dev/null and b/docs/papers/neuroevolution/2018_back_to_basics_es.pdf differ diff --git a/docs/papers/neuroevolution/2018_challenges_high_dim_rl_es.pdf b/docs/papers/neuroevolution/2018_challenges_high_dim_rl_es.pdf new file mode 100644 index 0000000..1f3505d Binary files /dev/null and b/docs/papers/neuroevolution/2018_challenges_high_dim_rl_es.pdf differ diff --git a/docs/papers/neuroevolution/2018_playing_atari_six_neurons.pdf b/docs/papers/neuroevolution/2018_playing_atari_six_neurons.pdf new file mode 100644 index 0000000..39503aa Binary files /dev/null and b/docs/papers/neuroevolution/2018_playing_atari_six_neurons.pdf differ diff --git a/docs/papers/neuroevolution/2018_recurrent_world_models.pdf b/docs/papers/neuroevolution/2018_recurrent_world_models.pdf new file mode 100644 index 0000000..0ffc8f6 Binary files /dev/null and b/docs/papers/neuroevolution/2018_recurrent_world_models.pdf differ diff --git a/docs/papers/neuroevolution/2018_world_models.pdf b/docs/papers/neuroevolution/2018_world_models.pdf new file mode 100644 index 0000000..19639ce Binary files /dev/null and b/docs/papers/neuroevolution/2018_world_models.pdf differ diff --git a/docs/papers/neuroevolution/2021_deep_neuroevolution_squeezes_small_networks.pdf b/docs/papers/neuroevolution/2021_deep_neuroevolution_squeezes_small_networks.pdf new file mode 100644 index 0000000..eaa2cbe Binary files /dev/null and b/docs/papers/neuroevolution/2021_deep_neuroevolution_squeezes_small_networks.pdf differ diff --git a/docs/papers/neuroevolution/2023_evolving_generalist_controllers.pdf b/docs/papers/neuroevolution/2023_evolving_generalist_controllers.pdf new file mode 100644 index 0000000..604d166 Binary files /dev/null and b/docs/papers/neuroevolution/2023_evolving_generalist_controllers.pdf differ diff --git a/docs/papers/neuroevolution/2023_neuroevolution_recurrent_architectures.pdf b/docs/papers/neuroevolution/2023_neuroevolution_recurrent_architectures.pdf new file mode 100644 index 0000000..1c910f0 Binary files /dev/null and b/docs/papers/neuroevolution/2023_neuroevolution_recurrent_architectures.pdf differ diff --git a/docs/papers/neuroevolution/2025_echo_networks.pdf b/docs/papers/neuroevolution/2025_echo_networks.pdf new file mode 100644 index 0000000..343c663 Binary files /dev/null and b/docs/papers/neuroevolution/2025_echo_networks.pdf differ diff --git a/docs/papers/neuroevolution/2025_seq103.pdf b/docs/papers/neuroevolution/2025_seq103.pdf new file mode 100644 index 0000000..f9bed8d Binary files /dev/null and b/docs/papers/neuroevolution/2025_seq103.pdf differ diff --git a/tools/battle_runner/run.sh b/tools/battle_runner/run.sh index e827a59..fbbb812 100755 --- a/tools/battle_runner/run.sh +++ b/tools/battle_runner/run.sh @@ -5,7 +5,7 @@ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" JAR="${TANK_ROYALE_JAR:-/home/davide/Projects/tank-royale/runner/examples/lib/robocode-tankroyale-runner.jar}" -PPO_BOT_SRC="$REPO_ROOT/PPO_Bot" +PPO_BOT_SRC="$REPO_ROOT/PPO_Bot_garage" export PPO_BOT_DIR="$PPO_BOT_SRC" export SAMPLE_BOTS_DIR="${SAMPLE_BOTS_DIR:-/home/davide/Projects/tank-royale/sample-bots/java/build/archive}" diff --git a/tools/training_runner/CURRICULUM_STATE.md b/tools/training_runner/CURRICULUM_STATE.md new file mode 100644 index 0000000..0f2b9a6 --- /dev/null +++ b/tools/training_runner/CURRICULUM_STATE.md @@ -0,0 +1,187 @@ +# PPO Curriculum — Running State File +Chunk 1 of larger campaign. Source of truth for resuming. +Bots (easy->hard order): Fire, MyFirstDroid, Target, MyFirstLeader, Crazy, MyFirstBot, PaintingBot, Corners. +Protocol: BLOCK (train to N+200) -> GATE (frozen eval to N+350, PASS >=148/150) -> snapshot best__r. +Maintenance from 3rd mastered bot on: frozen eval 100 rounds per mastered bot; bar >=97/100; else replay. +GATE bar: >=148/150. MAINT bar: >=97/100. Max 3 attempts per bot. + +## Baseline (verified pre-chunk) +- round_counter.txt = 10905 +- Weights proven (frozen eval): Fire/Target/Crazy/MyFirstDroid/MyFirstLeader 100%, + MyFirstBot/PaintingBot 99%, Corners 93%, VelocityBot 10%, TrackFire/RamFire/SpinBot/Walls 0%, + MyFirstTeam 0% (1v5, flagged). +- Bot launchers chmod-fixed. Logs rotate per phase. Snapshots = cp -a of weights/latest. + +--- + +## Bot 1: Fire +- block1: 2026-08-19 16:41, counter 10905 -> 11105 (200 train rounds, 200 train lines, 199W/1L, 0 NaN, no crash) + log: logs/train_Fire_block1_20260819_164245.jsonl +- gate1: 2026-08-19 16:42, eval to 11255 (150 rounds, 0 train lines, 149W) -> PASS >=148 + log: logs/eval_Fire_gate_20260819_164311.jsonl +- SNAPSHOT best_Fire_r11255: MISSING (operator error: snapshots/ dir absent; cp failed, training overwrote weights before retry). RECOVERY below. +- block2 (REDO): 2026-08-19 16:46, counter 11605 -> 11805 (200 train, 200W, 0 NaN). Log: logs/train_Fire_block2_20260819_164631.jsonl +- gate2 (REDO): 2026-08-19 16:47, eval to 11955 (150 rounds, 0 train lines, 150W) -> PASS. Log: logs/eval_Fire_gate2_20260819_164740.jsonl +- SNAPSHOT: snapshots/best_Fire_r11955 (40 files) +- STATUS: PASS (150/150) +- maint (post-Target): 100/100 PASS. Log: logs/eval_Fire_maint_20260819_164849.jsonl + +## Bot 2: MyFirstDroid +- block1: 2026-08-19 16:43, counter 11255 -> 11455 (200 train rounds, 200 train lines, 200W, 0 NaN) + ANOMALY: operator Ctrl-C at round ~127 triggered run.sh crash-restart (">>> Restart #2, 73 rounds remaining"); round sequence in log continuous (11256..11455, no gaps), slice valid. Log: logs/train_MyFirstDroid_block1_20260819_164349.jsonl +- gate1: 2026-08-19 16:44, eval to 11605 (150 rounds, 0 train lines, 150W) -> PASS. Log: logs/eval_MyFirstDroid_gate_20260819_164506.jsonl +- SNAPSHOT: snapshots/best_MyFirstDroid_r11605 (40 files) +- STATUS: PASS (150/150) +- maint (post-Target): 100/100 PASS. Log: logs/eval_MyFirstDroid_maint_20260819_164919.jsonl + +## Bot 3: Target +- block1: 2026-08-19 16:48, counter 11955 -> 12155 (200 train, 200W, 0 NaN). Log: logs/train_Target_block1_20260819_164823.jsonl +- gate1: 2026-08-19 16:49, eval to 12305 (150 rounds, 0 train lines, 150W) -> PASS. Log: logs/eval_Target_gate_20260819_164928.jsonl +- SNAPSHOT: snapshots/best_Target_r12305 (40 files) +- STATUS: PASS (150/150) +- maint (post-self): 100/100 PASS. Log: logs/eval_Target_maint_20260819_165033.jsonl +- MAINTENANCE ROUND 1 (post-Target): Fire 100/100, MyFirstDroid 100/100, Target 100/100. NO regressions. No replays. + +## Bot 4: MyFirstLeader +- block1: 2026-08-19 17:06, counter 12605 -> 12805 (200 train, 200W, 0 NaN). Log: logs/train_MyFirstLeader_block1_20260819_170632.jsonl +- gate1: 2026-08-19 17:07, eval to 12955 (150 rounds, 0 train, 150W) -> PASS. Log: logs/eval_MyFirstLeader_gate_20260819_170720.jsonl +- SNAPSHOT: snapshots/best_MyFirstLeader_r12955 (40 files) +- STATUS: PASS (150/150) +- maint r2 (post-self): 100/100 PASS. Log: logs/eval_MyFirstLeader_maint_20260819_171104.jsonl +- maint r3 (post-Crazy): 100/100 PASS. Log: logs/eval_MyFirstLeader_maint_20260819_171246.jsonl +- MAINTENANCE ROUND 2 (post-Leader): Fire 100, MyFirstDroid 100, Target 100, MyFirstLeader 100 -> NO regressions, no replays. + +## Bot 5: Crazy +- block1: 2026-08-19 17:12, counter 13355 -> 13555 (200 train, 200W, 0 NaN). Log: logs/train_Crazy_block1_20260819_171246.jsonl +- gate1: 2026-08-19 17:13, eval to 13705 (150 rounds, 0 train, 150W) -> PASS. Log: logs/eval_Crazy_gate_20260819_171346.jsonl +- SNAPSHOT: snapshots/best_Crazy_r13705 (40 files) +- STATUS: PASS (150/150) +- maint r3 (post-self): 99/100 PASS. Log: logs/eval_Crazy_maint_20260819_171623.jsonl +- MAINTENANCE ROUND 3 (post-Crazy): Fire 99, MyFirstDroid 100, Target 100, MyFirstLeader 100, Crazy 99 -> NO regressions, no replays. + ANOMALY (logs): mid-run log rename at 17:00:44 (before Droid maint eval finished) split Droid/Target round lines across files; win evidence intact + (Droid 100 game lines win, Target 100 game lines win). Logs: eval_MyFirstDroid_maint_20260819_170044.jsonl (85 round+100 game), + eval_Target_maint_20260819_170055.jsonl (100 game). No crash; counter continuity verified (13805->13905->14005). + +## Bot 6: MyFirstBot +- block1: 2026-08-19 17:18, counter 14205 -> 14405 (200 train, 0W/200L, 0 NaN) — REGRESSION vs baseline 99%; policy loses every round. + Log: logs/train_MyFirstBot_block1_20260819_171827.jsonl +- gate1: eval to 14555: 0/150 FAIL. Log: logs/eval_MyFirstBot_gate1_20260819_171920.jsonl +- block2: 2026-08-19 17:22, counter 14555 -> 14955 (400 train, 0W/400L). Log: logs/train_MyFirstBot_block2_20260819_172215.jsonl +- gate2: eval to 15105: 0/150 FAIL. Log: logs/eval_MyFirstBot_gate2_20260819_172327.jsonl +- block3: 2026-08-19 17:24, counter 15105 -> 15505 (400 train, 0W/400L). Log: logs/train_MyFirstBot_block3_20260819_172448.jsonl +- gate3: eval to 15655: 0/150 FAIL. Log: logs/eval_MyFirstBot_gate3_20260819_172625.jsonl +- STATUS: OPEN (3 attempts, 1000 train + 450 gate rounds, 0 wins total; eval mechanicals verified: 0 train lines in gates, counter advances, no NaN). Likely policy basin shift (aggressive brawler vs stationary out-damager). Snapshot anyway: snapshots/best_MyFirstBot_r15655. +- Chunk 2/3 to revisit (possibly via PaintingBot/Corners transfer). + +## Bot 7: PaintingBot +- CATASTROPHE (previous session overshoot): run.sh ran unbounded from 15655 to 31694 (16039 rounds) + vs PaintingBot; 3/16027 wins (0%). Policy collapsed. Log: logs/train_PaintingBot_catastrophe_20260819_191718.jsonl + (0 NaN, no coredump, but weights destroyed by repeated loss signal). +- RECOVERY: 2026-08-19 19:17 — restored weights from snapshots/best_Crazy_r13705; round_counter stays 31694. + ROOT CAUSE: Crazy-snapshot weights cannot beat PaintingBot (chunk training caused catastrophic forgetting; + baseline 99% was from pre-chunk Fire-campaign weights). best_Fire_r11955 (closest to baseline) needed. +- block1: 2026-08-19 19:18, counter 31694 -> 31894 (200 train rounds from Crazy restore; 0/200 wins) + log: logs/train_PaintingBot_block1_20260819_192027.jsonl +- gate1: 2026-08-19 19:21, eval to 32044 (150 rounds, 0 train lines, 0/150) -> FAIL + log: logs/eval_PaintingBot_gate1_20260819_192129.jsonl +- RESTORE: best_Fire_r11955 (pre-chunk-adjacent, known 99% vs PaintingBot). Counter stays 32044. +- block2: 2026-08-19 19:23, counter 32044 -> 32444 (400 train rounds, 400/400 wins, 0 NaN) + log: logs/train_PaintingBot_block2_20260819_192325.jsonl +- gate2: 2026-08-19 19:24, eval to 32594 (150 rounds, 0 train lines, 146/150) -> FAIL (bar >=148) + log: logs/eval_PaintingBot_gate2_20260819_192401.jsonl +- block3: 2026-08-19 19:24, counter 32594 -> 32994 (400 train rounds, 400/400 wins, 0 NaN) + log: logs/train_PaintingBot_block3_20260819_192507.jsonl +- gate3: 2026-08-19 19:26, eval to 33144 (150 rounds, 0 train lines, 147/150) -> FAIL (bar >=148) + log: logs/eval_PaintingBot_gate3_20260819_192630.jsonl +- STATUS: OPEN (3 attempts: block1 0/200 from Crazy, block2 400/400 from Fire, block3 400/400 from Fire; + gate results 0/150, 146/150, 147/150 — high variance, bar missed by 1-4 in gates 2+3). + Likely issue: gate runs single JVM with Corners-like random-state dependency (initial corner selection for + PaintingBot = random; policy may be sensitive to specific PaintingBot seed/state at eval time). + Snapshot: snapshots/best_PaintingBot_r33144. +- MAINTENANCE (post-OPEN, 2026-08-19 19:27): Fire 100, MyFirstDroid 100, Target 100, MyFirstLeader 100, + Crazy 99 — NO regressions. No replays. + Logs: eval_Fire_maint_20260819_192658.jsonl, eval_MyFirstDroid_maint_20260819_XXXXXX.jsonl, etc. + +## Bot 8: Corners +- NOTE: Corners bot switches corner on death when losing. Single-JVM gate has fixed initial corner; + policy must handle all 4 corner positions. Training (each JVM = new random corner) cycles all 4. +- block1: 2026-08-19 19:29, counter 33644 -> 33844 (200 train rounds from PaintingBot weights; 78/200 wins, + declining trend: 1/50 in last 50). Training degraded policy. + log: logs/train_Corners_block1_20260819_192947.jsonl +- gate1: 2026-08-19 19:30, eval to 33994 (150 rounds, 0 train, 0/150) -> FAIL + log: logs/eval_Corners_gate1_20260819_193050.jsonl +- RESTORE: best_Fire_r11955 (same as PaintingBot recovery). Counter stays 33994. +- block2: 2026-08-19 19:32, counter 33994 -> 34394 (400 train rounds from Fire restore; 231/400 wins, + improving: 0/50 early, 50/50 last 50; 0 NaN). Policy converges during training. + log: logs/train_Corners_block2_20260819_193239.jsonl +- gate2: 2026-08-19 19:32, eval to 34544 (150 rounds, 0 train, 17/150) -> FAIL. + Gate starts wins then fails: 7 wins (favorable initial corner), then losses (unfavorable corners). + log: logs/eval_Corners_gate2_20260819_193510.jsonl +- block3: 2026-08-19 19:35, counter 34544 -> 34944 (400 train rounds; 343/400 wins, 0/50 early, + 50/50 last 50; 0 NaN). log: logs/train_Corners_block3_20260819_193622.jsonl +- gate3: 2026-08-19 19:37, eval to 35094 (150 rounds, 0 train, 148/150) -> PASS (exactly at bar) + log: logs/eval_Corners_gate3_20260819_193705.jsonl +- SNAPSHOT: snapshots/best_Corners_r35094 (40 files) +- STATUS: PASS (148/150, gate3) +- MAINTENANCE ROUND 5 (post-Corners PASS): Fire 100, MyFirstDroid 100, Target 100, MyFirstLeader 100, + Crazy 99 — NO regressions. No replays. + Final counter: 35594. + +--- + +## Chunk 1 Summary +- Mastered: Fire, MyFirstDroid, Target, MyFirstLeader, Crazy, Corners (6 bots) +- OPEN: MyFirstBot, PaintingBot +- Final round_counter: 35594 +- Active weights: best_Corners_r35094 restore point +- Snapshots: best_Fire_r11955, best_MyFirstDroid_r11605, best_Target_r12305, + best_MyFirstLeader_r12955, best_Crazy_r13705, best_PaintingBot_r33144, best_Corners_r35094 + (best_MyFirstBot_r15655 = OPEN snapshot) +- Key findings: chunk training causes forgetting of PaintingBot/Corners — pre-chunk weights + (best_Fire_r11955 as proxy) needed to re-learn these. Corners gate is corner-position-variance + sensitive (single JVM, single random corner for full eval run). + +--- + +## Chunk 2 (session 2026-08-19, agent: claude-code) + +### PaintingBot retry +- Restored best_PaintingBot_r33144 weights +- Training block: 200 rounds, 15.5% win rate (exploration noise; 57% in last 50 rounds) +- Gate eval 1 (frozen, stochastic): 145/150 — FAIL (losses rounds 1-5, cold-start) +- Training block 2: 200 more rounds, 200/200 (100%) in training mode +- Gate eval 2: 147/150 — FAIL (losses rounds 1, 2, 6) +- Gate eval 3: 146/150 — FAIL (losses rounds 1, 2, 5, 6) +- Deterministic eval fix attempted (mean action instead of sampling): 0/150 — REVERTED + - Root cause: policy trained with Gaussian noise; mean action is degenerate + - PPOB_EVAL_ONLY already correct: freezes weights but keeps stochastic sampling +- PaintingBot: OPEN (cold-start EnemyTracker history buffer = ~3-5 early-round losses; 97%+ once warmed up) +- Snapshot: best_PaintingBot_r36603 + +### Maintenance evals (from best_Corners_r35094 restore) +- Fire: 100/100 PASS +- MyFirstDroid: 100/100 PASS +- Target: 100/100 PASS +- MyFirstLeader: 100/100 PASS +- Crazy: 100/100 PASS +- Corners: 93/100 FAIL → replay 200 rounds (200/200 training) → re-eval 100/100 PASS + +### MyFirstBot investigation +- 500 training rounds: 17 wins in rounds 1-18 (carry-over), then 0/482 +- Total across chunks: ~2400 rounds, near-zero learning signal +- Root cause analysis — architectural hard counter: + 1. No bullet-in-flight state representation → can't correlate fire decisions with dodge response + 2. Aim space too tight (±12.5% arena around enemy) → can't aim at predicted post-dodge position + 3. Credit assignment chain too long: fire → bullet travel → hit → dodge → needed different aim + 4. State[15] (enemy turn rate) CAN detect the dodge, but can't ANTICIPATE it + 5. MyFirstBot's key mechanic: 90° perpendicular turn on every bullet hit + constant gun sweep +- MyFirstBot: OPEN (needs state/action space architecture changes, not more training) + +### Chunk 2 Summary +- Mastered: Fire, MyFirstDroid, Target, MyFirstLeader, Crazy, Corners (6/8 — unchanged) +- OPEN: PaintingBot (cold-start variance, 97%+ capable), MyFirstBot (architectural gap) +- Final round_counter: ~38003 +- Active weights: post-maintenance with Corners replay +- Next steps: + - PaintingBot: add EnemyTracker pre-population or warm-up rounds to fix cold-start + - MyFirstBot: add bullet-in-flight features to state vector; widen aim space; or accept as beyond current architecture diff --git a/tools/training_runner/RunTraining.class b/tools/training_runner/RunTraining.class new file mode 100644 index 0000000..eb4df4f Binary files /dev/null and b/tools/training_runner/RunTraining.class differ diff --git a/tools/training_runner/curriculum_retrain.sh b/tools/training_runner/curriculum_retrain.sh index 3383e20..0044c59 100755 --- a/tools/training_runner/curriculum_retrain.sh +++ b/tools/training_runner/curriculum_retrain.sh @@ -5,7 +5,7 @@ set -uo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" -PPO_BOT_SRC="$REPO_ROOT/PPO_Bot" +PPO_BOT_SRC="$REPO_ROOT/PPO_Bot_garage" # Source hyperparams (but we'll override opponent/rounds/log per phase) ENV_FILE="$SCRIPT_DIR/training.env" diff --git a/tools/training_runner/generalist_train.sh b/tools/training_runner/generalist_train.sh index 3d9fbbc..f359be3 100755 --- a/tools/training_runner/generalist_train.sh +++ b/tools/training_runner/generalist_train.sh @@ -32,7 +32,7 @@ export LC_ALL=C SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" -PPO_BOT_SRC="$REPO_ROOT/PPO_Bot" +PPO_BOT_SRC="$REPO_ROOT/PPO_Bot_garage" ENV_FILE="$SCRIPT_DIR/training.env" [ -f "$ENV_FILE" ] && set -a && . "$ENV_FILE" && set +a diff --git a/tools/training_runner/logs/curriculum_retrain_summary.txt b/tools/training_runner/logs/curriculum_retrain_summary.txt new file mode 100644 index 0000000..820b27c --- /dev/null +++ b/tools/training_runner/logs/curriculum_retrain_summary.txt @@ -0,0 +1,74 @@ +=== PPO_Bot v2 curriculum retrain — mer 19 ago 2026, 20:56:46, CEST === + +══ Fire (train=200 gate=150) ══ + [train] 200 rounds... +=== PPO_Bot v2 curriculum retrain — mer 19 ago 2026, 21:13:27, CEST === + +══ Fire (train=200 gate=150) ══ + [train] 200 rounds... +=== PPO_Bot v2 curriculum retrain — mer 19 ago 2026, 21:36:42, CEST === + +══ Fire (train=200 gate=150) ══ + [train] 200 rounds... +=== PPO_Bot v2 curriculum retrain — gio 20 ago 2026, 09:52:58, CEST === + +══ Fire (train=200 gate=150) ══ + [train] 200 rounds... + [train] done + [eval] 150 rounds... + [gate] FAIL (0 +0/150) + +══ MyFirstDroid (train=200 gate=150) ══ + [train] 200 rounds... +=== PPO_Bot v2 curriculum retrain — gio 20 ago 2026, 10:01:06, CEST === + +══ Fire (train=200 gate=150) ══ + [train] 200 rounds... + [train] done + [eval] 150 rounds... + [gate] FAIL (0/150) + +══ MyFirstDroid (train=200 gate=150) ══ + [train] 200 rounds... + [train] done + [eval] 150 rounds... + [gate] FAIL (141/150) + +══ Target (train=200 gate=150) ══ + [train] 200 rounds... + [train] done + [eval] 150 rounds... + [gate] FAIL (130/150) + +══ MyFirstLeader (train=200 gate=150) ══ + [train] 200 rounds... + [train] done + [eval] 150 rounds... + [gate] PASS (150/150) + +══ Crazy (train=200 gate=150) ══ + [train] 200 rounds... + [train] done + [eval] 150 rounds... + [gate] FAIL (13/150) + +══ Corners (train=400 gate=150) ══ + [train] 400 rounds... + [train] done + [eval] 150 rounds... + [gate] FAIL (0/150) + +══ PaintingBot (train=400 gate=150) ══ + [train] 400 rounds... + [train] done + [eval] 150 rounds... + [gate] FAIL (1/150) + +══ MyFirstBot (train=1000 gate=150) ══ + [train] 1000 rounds... + [train] done + [eval] 150 rounds... + [gate] FAIL (0/150) + +=== curriculum complete — gio 20 ago 2026, 10:24:24, CEST === diff --git a/tools/training_runner/logs/myfirstbot_train1_20260819_202905.jsonl.stdout.txt b/tools/training_runner/logs/myfirstbot_train1_20260819_202905.jsonl.stdout.txt new file mode 100644 index 0000000..34b44d4 --- /dev/null +++ b/tools/training_runner/logs/myfirstbot_train1_20260819_202905.jsonl.stdout.txt @@ -0,0 +1 @@ +Error: PPO_BOT_DIR env var not set diff --git a/tools/training_runner/logs/myfirstbot_train1_20260819_202913.jsonl.stdout.txt b/tools/training_runner/logs/myfirstbot_train1_20260819_202913.jsonl.stdout.txt new file mode 100644 index 0000000..62f5293 --- /dev/null +++ b/tools/training_runner/logs/myfirstbot_train1_20260819_202913.jsonl.stdout.txt @@ -0,0 +1,503 @@ +Training: PPO_Bot vs MyFirstBot for 500 rounds +Log: /home/davide/Projects/SirRoboGarage/tools/training_runner/logs/myfirstbot_train1_20260819_202913.jsonl +Round 1/500 — ticks:533 score:182 win:true +Round 2/500 — ticks:414 score:207 win:true +Round 3/500 — ticks:604 score:201 win:true +Round 4/500 — ticks:561 score:86 win:true +Round 5/500 — ticks:588 score:48 win:true +Round 6/500 — ticks:757 score:62 win:true +Round 7/500 — ticks:526 score:18 win:true +Round 8/500 — ticks:754 score:55 win:true +Round 9/500 — ticks:560 score:201 win:true +Round 10/500 — ticks:636 score:16 win:true +Round 11/500 — ticks:603 score:64 win:true +Round 12/500 — ticks:568 score:1 win:true +Round 13/500 — ticks:622 score:33 win:true +Round 14/500 — ticks:523 score:64 win:false +Round 15/500 — ticks:454 score:181 win:true +Round 16/500 — ticks:746 score:112 win:true +Round 17/500 — ticks:604 score:64 win:true +Round 18/500 — ticks:677 score:80 win:true +Round 19/500 — ticks:663 score:80 win:false +Round 20/500 — ticks:638 score:33 win:false +Round 21/500 — ticks:595 score:49 win:false +Round 22/500 — ticks:599 score:32 win:false +Round 23/500 — ticks:607 score:40 win:false +Round 24/500 — ticks:551 score:3 win:false +Round 25/500 — ticks:466 score:48 win:false +Round 26/500 — ticks:673 score:65 win:false +Round 27/500 — ticks:409 score:77 win:false +Round 28/500 — ticks:604 score:64 win:false +Round 29/500 — ticks:635 score:48 win:false +Round 30/500 — ticks:635 score:79 win:false +Round 31/500 — ticks:792 score:98 win:false +Round 32/500 — ticks:747 score:108 win:false +Round 33/500 — ticks:657 score:197 win:false +Round 34/500 — ticks:764 score:88 win:false +Round 35/500 — ticks:635 score:51 win:false +Round 36/500 — ticks:416 score:194 win:false +Round 37/500 — ticks:534 score:177 win:false +Round 38/500 — ticks:663 score:67 win:false +Round 39/500 — ticks:597 score:66 win:false +Round 40/500 — ticks:786 score:89 win:false +Round 41/500 — ticks:749 score:78 win:false +Round 42/500 — ticks:574 score:32 win:false +Round 43/500 — ticks:569 score:70 win:false +Round 44/500 — ticks:518 score:98 win:false +Round 45/500 — ticks:680 score:57 win:false +Round 46/500 — ticks:805 score:103 win:false +Round 47/500 — ticks:678 score:64 win:false +Round 48/500 — ticks:749 score:66 win:false +Round 49/500 — ticks:812 score:96 win:false +Round 50/500 — ticks:679 score:73 win:false +Round 51/500 — ticks:661 score:48 win:false +Round 52/500 — ticks:684 score:49 win:false +Round 53/500 — ticks:558 score:32 win:false +Round 54/500 — ticks:767 score:81 win:false +Round 55/500 — ticks:694 score:50 win:false +Round 56/500 — ticks:631 score:64 win:false +Round 57/500 — ticks:639 score:64 win:false +Round 58/500 — ticks:630 score:201 win:false +Round 59/500 — ticks:589 score:196 win:false +Round 60/500 — ticks:586 score:51 win:false +Round 61/500 — ticks:709 score:64 win:false +Round 62/500 — ticks:694 score:192 win:false +Round 63/500 — ticks:529 score:200 win:false +Round 64/500 — ticks:538 score:204 win:false +Round 65/500 — ticks:611 score:50 win:false +Round 66/500 — ticks:609 score:214 win:false +Round 67/500 — ticks:479 score:0 win:false +Round 68/500 — ticks:669 score:100 win:false +Round 69/500 — ticks:788 score:112 win:false +Round 70/500 — ticks:640 score:85 win:false +Round 71/500 — ticks:423 score:62 win:false +Round 72/500 — ticks:786 score:81 win:false +Round 73/500 — ticks:509 score:49 win:false +Round 74/500 — ticks:685 score:47 win:false +Round 75/500 — ticks:310 score:55 win:false +Round 76/500 — ticks:695 score:81 win:false +Round 77/500 — ticks:668 score:63 win:false +Round 78/500 — ticks:710 score:52 win:false +Round 79/500 — ticks:611 score:9 win:false +Round 80/500 — ticks:465 score:170 win:false +Round 81/500 — ticks:521 score:49 win:false +Round 82/500 — ticks:634 score:178 win:false +Round 83/500 — ticks:787 score:97 win:false +Round 84/500 — ticks:660 score:60 win:false +Round 85/500 — ticks:390 score:158 win:false +Round 86/500 — ticks:756 score:59 win:false +Round 87/500 — ticks:607 score:33 win:false +Round 88/500 — ticks:607 score:32 win:false +Round 89/500 — ticks:613 score:68 win:false +Round 90/500 — ticks:770 score:112 win:false +Round 91/500 — ticks:483 score:48 win:false +Round 92/500 — ticks:665 score:64 win:false +Round 93/500 — ticks:708 score:80 win:false +Round 94/500 — ticks:526 score:17 win:false +Round 95/500 — ticks:641 score:39 win:false +Round 96/500 — ticks:709 score:47 win:false +Round 97/500 — ticks:676 score:80 win:false +Round 98/500 — ticks:593 score:33 win:false +Round 99/500 — ticks:839 score:97 win:false +Round 100/500 — ticks:637 score:65 win:false +Round 101/500 — ticks:792 score:80 win:false +Round 102/500 — ticks:611 score:32 win:false +Round 103/500 — ticks:639 score:32 win:false +Round 104/500 — ticks:622 score:43 win:false +Round 105/500 — ticks:396 score:171 win:false +Round 106/500 — ticks:674 score:85 win:false +Round 107/500 — ticks:410 score:43 win:false +Round 108/500 — ticks:634 score:33 win:false +Round 109/500 — ticks:734 score:48 win:false +Round 110/500 — ticks:707 score:207 win:false +Round 111/500 — ticks:700 score:66 win:false +Round 112/500 — ticks:754 score:96 win:false +Round 113/500 — ticks:703 score:66 win:false +Round 114/500 — ticks:637 score:49 win:false +Round 115/500 — ticks:677 score:51 win:false +Round 116/500 — ticks:656 score:35 win:false +Round 117/500 — ticks:441 score:206 win:false +Round 118/500 — ticks:653 score:64 win:false +Round 119/500 — ticks:517 score:121 win:false +Round 120/500 — ticks:750 score:60 win:false +Round 121/500 — ticks:609 score:32 win:false +Round 122/500 — ticks:807 score:48 win:false +Round 123/500 — ticks:640 score:33 win:false +Round 124/500 — ticks:385 score:24 win:false +Round 125/500 — ticks:860 score:113 win:false +Round 126/500 — ticks:734 score:49 win:false +Round 127/500 — ticks:757 score:81 win:false +Round 128/500 — ticks:630 score:49 win:false +Round 129/500 — ticks:587 score:32 win:false +Round 130/500 — ticks:702 score:73 win:false +Round 131/500 — ticks:564 score:16 win:false +Round 132/500 — ticks:632 score:93 win:false +Round 133/500 — ticks:692 score:82 win:false +Round 134/500 — ticks:743 score:116 win:false +Round 135/500 — ticks:758 score:76 win:false +Round 136/500 — ticks:575 score:46 win:false +Round 137/500 — ticks:386 score:88 win:false +Round 138/500 — ticks:626 score:17 win:false +Round 139/500 — ticks:821 score:85 win:false +Round 140/500 — ticks:640 score:169 win:false +Round 141/500 — ticks:735 score:49 win:false +Round 142/500 — ticks:558 score:18 win:false +Round 143/500 — ticks:654 score:30 win:false +Round 144/500 — ticks:604 score:32 win:false +Round 145/500 — ticks:710 score:56 win:false +Round 146/500 — ticks:688 score:196 win:false +Round 147/500 — ticks:714 score:50 win:false +Round 148/500 — ticks:690 score:42 win:false +Round 149/500 — ticks:387 score:186 win:false +Round 150/500 — ticks:911 score:84 win:false +Round 151/500 — ticks:653 score:33 win:false +Round 152/500 — ticks:681 score:67 win:false +Round 153/500 — ticks:605 score:17 win:false +Round 154/500 — ticks:734 score:58 win:false +Round 155/500 — ticks:793 score:105 win:false +Round 156/500 — ticks:784 score:78 win:false +Round 157/500 — ticks:620 score:32 win:false +Round 158/500 — ticks:713 score:48 win:false +Round 159/500 — ticks:669 score:67 win:false +Round 160/500 — ticks:594 score:30 win:false +Round 161/500 — ticks:558 score:17 win:false +Round 162/500 — ticks:609 score:48 win:false +Round 163/500 — ticks:658 score:50 win:false +Round 164/500 — ticks:596 score:32 win:false +Round 165/500 — ticks:684 score:64 win:false +Round 166/500 — ticks:579 score:234 win:false +Round 167/500 — ticks:827 score:100 win:false +Round 168/500 — ticks:562 score:80 win:false +Round 169/500 — ticks:727 score:64 win:false +Round 170/500 — ticks:865 score:17 win:false +Round 171/500 — ticks:704 score:48 win:false +Round 172/500 — ticks:533 score:16 win:false +Round 173/500 — ticks:684 score:91 win:false +Round 174/500 — ticks:600 score:33 win:false +Round 175/500 — ticks:786 score:64 win:false +Round 176/500 — ticks:767 score:65 win:false +Round 177/500 — ticks:877 score:98 win:false +Round 178/500 — ticks:734 score:64 win:false +Round 179/500 — ticks:592 score:34 win:false +Round 180/500 — ticks:730 score:53 win:false +Round 181/500 — ticks:672 score:176 win:false +Round 182/500 — ticks:484 score:33 win:false +Round 183/500 — ticks:600 score:18 win:false +Round 184/500 — ticks:628 score:21 win:false +Round 185/500 — ticks:729 score:36 win:false +Round 186/500 — ticks:822 score:61 win:false +Round 187/500 — ticks:764 score:64 win:false +Round 188/500 — ticks:715 score:199 win:false +Round 189/500 — ticks:556 score:77 win:false +Round 190/500 — ticks:574 score:21 win:false +Round 191/500 — ticks:708 score:65 win:false +Round 192/500 — ticks:580 score:2 win:false +Round 193/500 — ticks:771 score:66 win:false +Round 194/500 — ticks:692 score:33 win:false +Round 195/500 — ticks:759 score:48 win:false +Round 196/500 — ticks:829 score:63 win:false +Round 197/500 — ticks:767 score:65 win:false +Round 198/500 — ticks:246 score:115 win:false +Round 199/500 — ticks:642 score:47 win:false +Round 200/500 — ticks:712 score:27 win:false +Round 201/500 — ticks:711 score:51 win:false +Round 202/500 — ticks:752 score:49 win:false +Round 203/500 — ticks:654 score:48 win:false +Round 204/500 — ticks:602 score:33 win:false +Round 205/500 — ticks:556 score:20 win:false +Round 206/500 — ticks:799 score:73 win:false +Round 207/500 — ticks:874 score:81 win:false +Round 208/500 — ticks:917 score:95 win:false +Round 209/500 — ticks:615 score:16 win:false +Round 210/500 — ticks:776 score:86 win:false +Round 211/500 — ticks:869 score:113 win:false +Round 212/500 — ticks:887 score:81 win:false +Round 213/500 — ticks:675 score:66 win:false +Round 214/500 — ticks:541 score:2 win:false +Round 215/500 — ticks:717 score:45 win:false +Round 216/500 — ticks:817 score:55 win:false +Round 217/500 — ticks:760 score:66 win:false +Round 218/500 — ticks:688 score:33 win:false +Round 219/500 — ticks:658 score:44 win:false +Round 220/500 — ticks:492 score:205 win:false +Round 221/500 — ticks:753 score:50 win:false +Round 222/500 — ticks:882 score:97 win:false +Round 223/500 — ticks:782 score:100 win:false +Round 224/500 — ticks:650 score:49 win:false +Round 225/500 — ticks:712 score:44 win:false +Round 226/500 — ticks:734 score:57 win:false +Round 227/500 — ticks:580 score:201 win:false +Round 228/500 — ticks:708 score:212 win:false +Round 229/500 — ticks:710 score:4 win:false +Round 230/500 — ticks:655 score:37 win:false +Round 231/500 — ticks:677 score:31 win:false +Round 232/500 — ticks:549 score:132 win:false +Round 233/500 — ticks:474 score:22 win:false +Round 234/500 — ticks:819 score:80 win:false +Round 235/500 — ticks:872 score:127 win:false +Round 236/500 — ticks:691 score:70 win:false +Round 237/500 — ticks:680 score:30 win:false +Round 238/500 — ticks:645 score:31 win:false +Round 239/500 — ticks:628 score:76 win:false +Round 240/500 — ticks:681 score:52 win:false +Round 241/500 — ticks:555 score:2 win:false +Round 242/500 — ticks:811 score:78 win:false +Round 243/500 — ticks:777 score:115 win:false +Round 244/500 — ticks:649 score:33 win:false +Round 245/500 — ticks:500 score:55 win:false +Round 246/500 — ticks:751 score:49 win:false +Round 247/500 — ticks:847 score:62 win:false +Round 248/500 — ticks:726 score:17 win:false +Round 249/500 — ticks:639 score:64 win:false +Round 250/500 — ticks:696 score:54 win:false +Round 251/500 — ticks:757 score:83 win:false +Round 252/500 — ticks:860 score:193 win:false +Round 253/500 — ticks:596 score:1 win:false +Round 254/500 — ticks:765 score:91 win:false +Round 255/500 — ticks:748 score:96 win:false +Round 256/500 — ticks:841 score:90 win:false +Round 257/500 — ticks:675 score:66 win:false +Round 258/500 — ticks:573 score:92 win:false +Round 259/500 — ticks:762 score:69 win:false +Round 260/500 — ticks:678 score:64 win:false +Round 261/500 — ticks:647 score:64 win:false +Round 262/500 — ticks:668 score:33 win:false +Round 263/500 — ticks:752 score:20 win:false +Round 264/500 — ticks:774 score:66 win:false +Round 265/500 — ticks:642 score:72 win:false +Round 266/500 — ticks:668 score:32 win:false +Round 267/500 — ticks:678 score:38 win:false +Round 268/500 — ticks:603 score:230 win:false +Round 269/500 — ticks:711 score:46 win:false +Round 270/500 — ticks:937 score:65 win:false +Round 271/500 — ticks:683 score:66 win:false +Round 272/500 — ticks:755 score:65 win:false +Round 273/500 — ticks:554 score:0 win:false +Round 274/500 — ticks:750 score:33 win:false +Round 275/500 — ticks:901 score:113 win:false +Round 276/500 — ticks:812 score:109 win:false +Round 277/500 — ticks:704 score:82 win:false +Round 278/500 — ticks:663 score:101 win:false +Round 279/500 — ticks:636 score:48 win:false +Round 280/500 — ticks:484 score:201 win:false +Round 281/500 — ticks:634 score:68 win:false +Round 282/500 — ticks:766 score:58 win:false +Round 283/500 — ticks:886 score:112 win:false +Round 284/500 — ticks:676 score:115 win:false +Round 285/500 — ticks:530 score:200 win:false +Round 286/500 — ticks:531 score:17 win:false +Round 287/500 — ticks:463 score:203 win:false +Round 288/500 — ticks:599 score:17 win:false +Round 289/500 — ticks:636 score:46 win:false +Round 290/500 — ticks:832 score:79 win:false +Round 291/500 — ticks:557 score:69 win:false +Round 292/500 — ticks:763 score:81 win:false +Round 293/500 — ticks:566 score:192 win:false +Round 294/500 — ticks:807 score:54 win:false +Round 295/500 — ticks:698 score:81 win:false +Round 296/500 — ticks:694 score:185 win:false +Round 297/500 — ticks:806 score:56 win:false +Round 298/500 — ticks:852 score:113 win:false +Round 299/500 — ticks:681 score:209 win:false +Round 300/500 — ticks:530 score:1 win:false +Round 301/500 — ticks:508 score:17 win:false +Round 302/500 — ticks:220 score:79 win:false +Round 303/500 — ticks:712 score:65 win:false +Round 304/500 — ticks:709 score:97 win:false +Round 305/500 — ticks:792 score:198 win:false +Round 306/500 — ticks:825 score:105 win:false +Round 307/500 — ticks:710 score:188 win:false +Round 308/500 — ticks:655 score:72 win:false +Round 309/500 — ticks:807 score:199 win:false +Round 310/500 — ticks:659 score:17 win:false +Round 311/500 — ticks:744 score:50 win:false +Round 312/500 — ticks:674 score:65 win:false +Round 313/500 — ticks:713 score:112 win:false +Round 314/500 — ticks:699 score:48 win:false +Round 315/500 — ticks:753 score:212 win:false +Round 316/500 — ticks:832 score:185 win:false +Round 317/500 — ticks:617 score:46 win:false +Round 318/500 — ticks:839 score:95 win:false +Round 319/500 — ticks:718 score:96 win:false +Round 320/500 — ticks:369 score:101 win:false +Round 321/500 — ticks:532 score:18 win:false +Round 322/500 — ticks:570 score:130 win:false +Round 323/500 — ticks:476 score:33 win:false +Round 324/500 — ticks:548 score:17 win:false +Round 325/500 — ticks:693 score:83 win:false +Round 326/500 — ticks:498 score:96 win:false +Round 327/500 — ticks:782 score:200 win:false +Round 328/500 — ticks:500 score:210 win:false +Round 329/500 — ticks:685 score:52 win:false +Round 330/500 — ticks:579 score:16 win:false +Round 331/500 — ticks:751 score:50 win:false +Round 332/500 — ticks:649 score:20 win:false +Round 333/500 — ticks:512 score:63 win:false +Round 334/500 — ticks:681 score:90 win:false +Round 335/500 — ticks:656 score:50 win:false +Round 336/500 — ticks:647 score:80 win:false +Round 337/500 — ticks:639 score:82 win:false +Round 338/500 — ticks:592 score:51 win:false +Round 339/500 — ticks:552 score:59 win:false +Round 340/500 — ticks:738 score:108 win:false +Round 341/500 — ticks:677 score:63 win:false +Round 342/500 — ticks:793 score:96 win:false +Round 343/500 — ticks:907 score:95 win:false +Round 344/500 — ticks:644 score:208 win:false +Round 345/500 — ticks:438 score:62 win:false +Round 346/500 — ticks:760 score:98 win:false +Round 347/500 — ticks:605 score:40 win:false +Round 348/500 — ticks:639 score:86 win:false +Round 349/500 — ticks:510 score:32 win:false +Round 350/500 — ticks:184 score:213 win:false +Round 351/500 — ticks:590 score:213 win:false +Round 352/500 — ticks:977 score:68 win:false +Round 353/500 — ticks:639 score:50 win:false +Round 354/500 — ticks:547 score:33 win:false +Round 355/500 — ticks:597 score:65 win:false +Round 356/500 — ticks:828 score:80 win:false +Round 357/500 — ticks:640 score:38 win:false +Round 358/500 — ticks:663 score:206 win:false +Round 359/500 — ticks:678 score:176 win:false +Round 360/500 — ticks:561 score:33 win:false +Round 361/500 — ticks:614 score:59 win:false +Round 362/500 — ticks:744 score:40 win:false +Round 363/500 — ticks:653 score:208 win:false +Round 364/500 — ticks:665 score:49 win:false +Round 365/500 — ticks:593 score:47 win:false +Round 366/500 — ticks:782 score:65 win:false +Round 367/500 — ticks:665 score:82 win:false +Round 368/500 — ticks:647 score:65 win:false +Round 369/500 — ticks:629 score:96 win:false +Round 370/500 — ticks:534 score:196 win:false +Round 371/500 — ticks:715 score:33 win:false +Round 372/500 — ticks:635 score:49 win:false +Round 373/500 — ticks:627 score:71 win:false +Round 374/500 — ticks:792 score:74 win:false +Round 375/500 — ticks:599 score:80 win:false +Round 376/500 — ticks:788 score:205 win:false +Round 377/500 — ticks:729 score:65 win:false +Round 378/500 — ticks:484 score:192 win:false +Round 379/500 — ticks:562 score:40 win:false +Round 380/500 — ticks:367 score:175 win:false +Round 381/500 — ticks:638 score:33 win:false +Round 382/500 — ticks:636 score:2 win:false +Round 383/500 — ticks:663 score:99 win:false +Round 384/500 — ticks:860 score:48 win:false +Round 385/500 — ticks:672 score:65 win:false +Round 386/500 — ticks:347 score:71 win:false +Round 387/500 — ticks:684 score:92 win:false +Round 388/500 — ticks:907 score:96 win:false +Round 389/500 — ticks:690 score:32 win:false +Round 390/500 — ticks:876 score:100 win:false +Round 391/500 — ticks:451 score:1 win:false +Round 392/500 — ticks:478 score:0 win:false +Round 393/500 — ticks:666 score:94 win:false +Round 394/500 — ticks:734 score:64 win:false +Round 395/500 — ticks:681 score:66 win:false +Round 396/500 — ticks:682 score:79 win:false +Round 397/500 — ticks:588 score:73 win:false +Round 398/500 — ticks:638 score:46 win:false +Round 399/500 — ticks:619 score:45 win:false +Round 400/500 — ticks:369 score:204 win:false +Round 401/500 — ticks:614 score:49 win:false +Round 402/500 — ticks:786 score:49 win:false +Round 403/500 — ticks:1280 score:103 win:false +Round 404/500 — ticks:683 score:96 win:false +Round 405/500 — ticks:692 score:51 win:false +Round 406/500 — ticks:753 score:77 win:false +Round 407/500 — ticks:547 score:48 win:false +Round 408/500 — ticks:467 score:48 win:false +Round 409/500 — ticks:605 score:146 win:false +Round 410/500 — ticks:601 score:72 win:false +Round 411/500 — ticks:531 score:187 win:false +Round 412/500 — ticks:592 score:64 win:false +Round 413/500 — ticks:715 score:68 win:false +Round 414/500 — ticks:646 score:175 win:false +Round 415/500 — ticks:259 score:235 win:false +Round 416/500 — ticks:667 score:81 win:false +Round 417/500 — ticks:531 score:35 win:false +Round 418/500 — ticks:974 score:97 win:false +Round 419/500 — ticks:636 score:37 win:false +Round 420/500 — ticks:769 score:33 win:false +Round 421/500 — ticks:667 score:64 win:false +Round 422/500 — ticks:565 score:64 win:false +Round 423/500 — ticks:904 score:101 win:false +Round 424/500 — ticks:621 score:63 win:false +Round 425/500 — ticks:798 score:97 win:false +Round 426/500 — ticks:805 score:97 win:false +Round 427/500 — ticks:660 score:17 win:false +Round 428/500 — ticks:720 score:48 win:false +Round 429/500 — ticks:560 score:32 win:false +Round 430/500 — ticks:901 score:66 win:false +Round 431/500 — ticks:718 score:65 win:false +Round 432/500 — ticks:824 score:62 win:false +Round 433/500 — ticks:904 score:95 win:false +Round 434/500 — ticks:680 score:49 win:false +Round 435/500 — ticks:838 score:103 win:false +Round 436/500 — ticks:761 score:52 win:false +Round 437/500 — ticks:561 score:34 win:false +Round 438/500 — ticks:625 score:59 win:false +Round 439/500 — ticks:789 score:69 win:false +Round 440/500 — ticks:602 score:31 win:false +Round 441/500 — ticks:547 score:39 win:false +Round 442/500 — ticks:790 score:84 win:false +Round 443/500 — ticks:641 score:33 win:false +Round 444/500 — ticks:585 score:54 win:false +Round 445/500 — ticks:578 score:179 win:false +Round 446/500 — ticks:654 score:81 win:false +Round 447/500 — ticks:635 score:6 win:false +Round 448/500 — ticks:697 score:35 win:false +Round 449/500 — ticks:807 score:192 win:false +Round 450/500 — ticks:518 score:0 win:false +Round 451/500 — ticks:834 score:86 win:false +Round 452/500 — ticks:702 score:49 win:false +Round 453/500 — ticks:671 score:86 win:false +Round 454/500 — ticks:525 score:189 win:false +Round 455/500 — ticks:750 score:80 win:false +Round 456/500 — ticks:641 score:32 win:false +Round 457/500 — ticks:600 score:33 win:false +Round 458/500 — ticks:565 score:16 win:false +Round 459/500 — ticks:557 score:2 win:false +Round 460/500 — ticks:686 score:31 win:false +Round 461/500 — ticks:606 score:18 win:false +Round 462/500 — ticks:581 score:33 win:false +Round 463/500 — ticks:707 score:125 win:false +Round 464/500 — ticks:828 score:83 win:false +Round 465/500 — ticks:601 score:17 win:false +Round 466/500 — ticks:644 score:64 win:false +Round 467/500 — ticks:787 score:48 win:false +Round 468/500 — ticks:827 score:81 win:false +Round 469/500 — ticks:601 score:13 win:false +Round 470/500 — ticks:818 score:75 win:false +Round 471/500 — ticks:605 score:34 win:false +Round 472/500 — ticks:748 score:48 win:false +Round 473/500 — ticks:484 score:0 win:false +Round 474/500 — ticks:753 score:48 win:false +Round 475/500 — ticks:675 score:50 win:false +Round 476/500 — ticks:623 score:35 win:false +Round 477/500 — ticks:906 score:95 win:false +Round 478/500 — ticks:683 score:66 win:false +Round 479/500 — ticks:783 score:81 win:false +Round 480/500 — ticks:748 score:110 win:false +Round 481/500 — ticks:690 score:64 win:false +Round 482/500 — ticks:694 score:16 win:false +Round 483/500 — ticks:656 score:30 win:false +Round 484/500 — ticks:688 score:192 win:false +Round 485/500 — ticks:512 score:46 win:false +Round 486/500 — ticks:694 score:77 win:false +Round 487/500 — ticks:474 score:178 win:false +Round 488/500 — ticks:403 score:182 win:false +Round 489/500 — ticks:598 score:36 win:false +Round 490/500 — ticks:199 score:132 win:false +Round 491/500 — ticks:378 score:158 win:false +Round 492/500 — ticks:531 score:33 win:false +Round 493/500 — ticks:749 score:84 win:false +Round 494/500 — ticks:720 score:14 win:false +Round 495/500 — ticks:653 score:79 win:false +Round 496/500 — ticks:828 score:113 win:false +Round 497/500 — ticks:595 score:5 win:false +Round 498/500 — ticks:717 score:198 win:false +Round 499/500 — ticks:794 score:193 win:false +Round 500/500 — ticks:487 score:0 win:false +Counter check passed: 38003 == expected 38003 diff --git a/tools/training_runner/mixed_train.sh b/tools/training_runner/mixed_train.sh index abc621e..fa97c8e 100755 --- a/tools/training_runner/mixed_train.sh +++ b/tools/training_runner/mixed_train.sh @@ -5,7 +5,7 @@ set -uo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" -PPO_BOT_SRC="$REPO_ROOT/PPO_Bot" +PPO_BOT_SRC="$REPO_ROOT/PPO_Bot_garage" ENV_FILE="$SCRIPT_DIR/training.env" [ -f "$ENV_FILE" ] && set -a && . "$ENV_FILE" && set +a diff --git a/tools/training_runner/run.sh b/tools/training_runner/run.sh index 41affe2..273c0c8 100755 --- a/tools/training_runner/run.sh +++ b/tools/training_runner/run.sh @@ -27,7 +27,7 @@ OPPONENT="${1:-${TRAINING_OPPONENT:-Target}}" TOTAL_ROUNDS="${2:-${TRAINING_ROUNDS:-100}}" JAR="${TANK_ROYALE_JAR:-/home/davide/Projects/tank-royale/runner/examples/lib/robocode-tankroyale-runner.jar}" -PPO_BOT_SRC="$REPO_ROOT/PPO_Bot" +PPO_BOT_SRC="$REPO_ROOT/PPO_Bot_garage" export PPO_BOT_DIR="$PPO_BOT_SRC" export SAMPLE_BOTS_DIR="${SAMPLE_BOTS_DIR:-/home/davide/Projects/tank-royale/sample-bots/java/build/archive}" diff --git a/tools/training_runner/snapshots/best_Corners_r35094/actor_b1.npy b/tools/training_runner/snapshots/best_Corners_r35094/actor_b1.npy new file mode 100644 index 0000000..309e7c7 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/actor_b2.npy b/tools/training_runner/snapshots/best_Corners_r35094/actor_b2.npy new file mode 100644 index 0000000..c61ff05 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/actor_b3.npy b/tools/training_runner/snapshots/best_Corners_r35094/actor_b3.npy new file mode 100644 index 0000000..9355c9e Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/actor_w1.npy b/tools/training_runner/snapshots/best_Corners_r35094/actor_w1.npy new file mode 100644 index 0000000..6e2d3d4 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/actor_w2.npy b/tools/training_runner/snapshots/best_Corners_r35094/actor_w2.npy new file mode 100644 index 0000000..7f98b0d Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/actor_w3.npy b/tools/training_runner/snapshots/best_Corners_r35094/actor_w3.npy new file mode 100644 index 0000000..2934e7e Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_ab1_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab1_m.npy new file mode 100644 index 0000000..640386d Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_ab1_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab1_v.npy new file mode 100644 index 0000000..70cada6 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_ab2_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab2_m.npy new file mode 100644 index 0000000..0569eb2 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_ab2_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab2_v.npy new file mode 100644 index 0000000..9386f6d Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_ab3_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab3_m.npy new file mode 100644 index 0000000..cf570ca Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_ab3_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab3_v.npy new file mode 100644 index 0000000..a046fab Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_aw1_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw1_m.npy new file mode 100644 index 0000000..8e8799d Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_aw1_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw1_v.npy new file mode 100644 index 0000000..881d1e2 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_aw2_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw2_m.npy new file mode 100644 index 0000000..d7b2b60 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_aw2_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw2_v.npy new file mode 100644 index 0000000..92112a1 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_aw3_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw3_m.npy new file mode 100644 index 0000000..cc5c57b Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_aw3_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw3_v.npy new file mode 100644 index 0000000..3e9a1cc Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cb1_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb1_m.npy new file mode 100644 index 0000000..1867780 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cb1_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb1_v.npy new file mode 100644 index 0000000..9615c7a Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cb2_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb2_m.npy new file mode 100644 index 0000000..fc190ef Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cb2_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb2_v.npy new file mode 100644 index 0000000..9f17553 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cb3_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb3_m.npy new file mode 100644 index 0000000..82ba8c8 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cb3_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb3_v.npy new file mode 100644 index 0000000..d507295 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cw1_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw1_m.npy new file mode 100644 index 0000000..a028fd2 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cw1_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw1_v.npy new file mode 100644 index 0000000..c0a5803 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cw2_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw2_m.npy new file mode 100644 index 0000000..312d35e Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cw2_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw2_v.npy new file mode 100644 index 0000000..005ff1f Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cw3_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw3_m.npy new file mode 100644 index 0000000..a93939a Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_cw3_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw3_v.npy new file mode 100644 index 0000000..8a61186 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_logstd_m.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_logstd_m.npy new file mode 100644 index 0000000..6271249 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_logstd_v.npy b/tools/training_runner/snapshots/best_Corners_r35094/adam_logstd_v.npy new file mode 100644 index 0000000..e1cf079 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/adam_t.txt b/tools/training_runner/snapshots/best_Corners_r35094/adam_t.txt new file mode 100644 index 0000000..73f4098 --- /dev/null +++ b/tools/training_runner/snapshots/best_Corners_r35094/adam_t.txt @@ -0,0 +1,13 @@ +374720 +374720 +374720 +374720 +374720 +374720 +374720 +374720 +374720 +374720 +374720 +374720 +374720 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_Corners_r35094/critic_b1.npy b/tools/training_runner/snapshots/best_Corners_r35094/critic_b1.npy new file mode 100644 index 0000000..25f41df Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/critic_b2.npy b/tools/training_runner/snapshots/best_Corners_r35094/critic_b2.npy new file mode 100644 index 0000000..44794d6 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/critic_b3.npy b/tools/training_runner/snapshots/best_Corners_r35094/critic_b3.npy new file mode 100644 index 0000000..a5b434a Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/critic_w1.npy b/tools/training_runner/snapshots/best_Corners_r35094/critic_w1.npy new file mode 100644 index 0000000..df7e9cf Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/critic_w2.npy b/tools/training_runner/snapshots/best_Corners_r35094/critic_w2.npy new file mode 100644 index 0000000..60e4886 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/critic_w3.npy b/tools/training_runner/snapshots/best_Corners_r35094/critic_w3.npy new file mode 100644 index 0000000..6c7cce1 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_Corners_r35094/log_std.npy b/tools/training_runner/snapshots/best_Corners_r35094/log_std.npy new file mode 100644 index 0000000..e971017 Binary files /dev/null and b/tools/training_runner/snapshots/best_Corners_r35094/log_std.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/actor_b1.npy b/tools/training_runner/snapshots/best_Crazy_r13705/actor_b1.npy new file mode 100644 index 0000000..b077156 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/actor_b2.npy b/tools/training_runner/snapshots/best_Crazy_r13705/actor_b2.npy new file mode 100644 index 0000000..d800446 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/actor_b3.npy b/tools/training_runner/snapshots/best_Crazy_r13705/actor_b3.npy new file mode 100644 index 0000000..03aefaa Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/actor_w1.npy b/tools/training_runner/snapshots/best_Crazy_r13705/actor_w1.npy new file mode 100644 index 0000000..b32dedc Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/actor_w2.npy b/tools/training_runner/snapshots/best_Crazy_r13705/actor_w2.npy new file mode 100644 index 0000000..633f27a Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/actor_w3.npy b/tools/training_runner/snapshots/best_Crazy_r13705/actor_w3.npy new file mode 100644 index 0000000..1477712 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab1_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab1_m.npy new file mode 100644 index 0000000..05a4d70 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab1_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab1_v.npy new file mode 100644 index 0000000..59500be Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab2_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab2_m.npy new file mode 100644 index 0000000..96b1827 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab2_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab2_v.npy new file mode 100644 index 0000000..d062454 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab3_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab3_m.npy new file mode 100644 index 0000000..0770bb0 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab3_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab3_v.npy new file mode 100644 index 0000000..7976179 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw1_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw1_m.npy new file mode 100644 index 0000000..45d9a42 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw1_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw1_v.npy new file mode 100644 index 0000000..fdd2732 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw2_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw2_m.npy new file mode 100644 index 0000000..0f7d8dd Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw2_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw2_v.npy new file mode 100644 index 0000000..1b5d63c Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw3_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw3_m.npy new file mode 100644 index 0000000..f5ff0ce Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw3_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw3_v.npy new file mode 100644 index 0000000..584422d Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb1_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb1_m.npy new file mode 100644 index 0000000..b875924 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb1_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb1_v.npy new file mode 100644 index 0000000..2aff0d5 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb2_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb2_m.npy new file mode 100644 index 0000000..aa66fae Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb2_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb2_v.npy new file mode 100644 index 0000000..1fe3c77 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb3_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb3_m.npy new file mode 100644 index 0000000..1ff4a68 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb3_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb3_v.npy new file mode 100644 index 0000000..9d740d0 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw1_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw1_m.npy new file mode 100644 index 0000000..25cecd5 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw1_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw1_v.npy new file mode 100644 index 0000000..37ecde7 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw2_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw2_m.npy new file mode 100644 index 0000000..0097c3c Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw2_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw2_v.npy new file mode 100644 index 0000000..58d7678 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw3_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw3_m.npy new file mode 100644 index 0000000..f2929df Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw3_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw3_v.npy new file mode 100644 index 0000000..86fdb9d Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_logstd_m.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_logstd_m.npy new file mode 100644 index 0000000..dffb137 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_logstd_v.npy b/tools/training_runner/snapshots/best_Crazy_r13705/adam_logstd_v.npy new file mode 100644 index 0000000..9595181 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/adam_t.txt b/tools/training_runner/snapshots/best_Crazy_r13705/adam_t.txt new file mode 100644 index 0000000..663a8c4 --- /dev/null +++ b/tools/training_runner/snapshots/best_Crazy_r13705/adam_t.txt @@ -0,0 +1,13 @@ +381996 +381996 +381996 +381996 +381996 +381996 +381996 +381996 +381996 +381996 +381996 +381996 +381996 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/critic_b1.npy b/tools/training_runner/snapshots/best_Crazy_r13705/critic_b1.npy new file mode 100644 index 0000000..d34a849 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/critic_b2.npy b/tools/training_runner/snapshots/best_Crazy_r13705/critic_b2.npy new file mode 100644 index 0000000..62b4e31 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/critic_b3.npy b/tools/training_runner/snapshots/best_Crazy_r13705/critic_b3.npy new file mode 100644 index 0000000..8befe54 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/critic_w1.npy b/tools/training_runner/snapshots/best_Crazy_r13705/critic_w1.npy new file mode 100644 index 0000000..57bb4d8 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/critic_w2.npy b/tools/training_runner/snapshots/best_Crazy_r13705/critic_w2.npy new file mode 100644 index 0000000..ea0ad48 Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/critic_w3.npy b/tools/training_runner/snapshots/best_Crazy_r13705/critic_w3.npy new file mode 100644 index 0000000..007f3ca Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_Crazy_r13705/log_std.npy b/tools/training_runner/snapshots/best_Crazy_r13705/log_std.npy new file mode 100644 index 0000000..36e89df Binary files /dev/null and b/tools/training_runner/snapshots/best_Crazy_r13705/log_std.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/actor_b1.npy b/tools/training_runner/snapshots/best_Fire_r11955/actor_b1.npy new file mode 100644 index 0000000..4c1a573 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/actor_b2.npy b/tools/training_runner/snapshots/best_Fire_r11955/actor_b2.npy new file mode 100644 index 0000000..a507759 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/actor_b3.npy b/tools/training_runner/snapshots/best_Fire_r11955/actor_b3.npy new file mode 100644 index 0000000..46d293a Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/actor_w1.npy b/tools/training_runner/snapshots/best_Fire_r11955/actor_w1.npy new file mode 100644 index 0000000..15059f9 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/actor_w2.npy b/tools/training_runner/snapshots/best_Fire_r11955/actor_w2.npy new file mode 100644 index 0000000..cc406fd Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/actor_w3.npy b/tools/training_runner/snapshots/best_Fire_r11955/actor_w3.npy new file mode 100644 index 0000000..104aabe Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_ab1_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab1_m.npy new file mode 100644 index 0000000..4446837 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_ab1_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab1_v.npy new file mode 100644 index 0000000..df79b55 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_ab2_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab2_m.npy new file mode 100644 index 0000000..3b1a639 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_ab2_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab2_v.npy new file mode 100644 index 0000000..b901b52 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_ab3_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab3_m.npy new file mode 100644 index 0000000..c8fece4 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_ab3_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab3_v.npy new file mode 100644 index 0000000..3bd4b8c Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_aw1_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw1_m.npy new file mode 100644 index 0000000..5e099ef Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_aw1_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw1_v.npy new file mode 100644 index 0000000..43b3109 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_aw2_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw2_m.npy new file mode 100644 index 0000000..036ec57 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_aw2_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw2_v.npy new file mode 100644 index 0000000..e4f9405 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_aw3_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw3_m.npy new file mode 100644 index 0000000..49371a5 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_aw3_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw3_v.npy new file mode 100644 index 0000000..11c5ef5 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cb1_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb1_m.npy new file mode 100644 index 0000000..10dc9a8 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cb1_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb1_v.npy new file mode 100644 index 0000000..0cac7e4 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cb2_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb2_m.npy new file mode 100644 index 0000000..488b455 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cb2_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb2_v.npy new file mode 100644 index 0000000..8b0751e Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cb3_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb3_m.npy new file mode 100644 index 0000000..6c5d731 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cb3_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb3_v.npy new file mode 100644 index 0000000..b093d16 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cw1_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw1_m.npy new file mode 100644 index 0000000..18bf20f Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cw1_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw1_v.npy new file mode 100644 index 0000000..42c32b0 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cw2_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw2_m.npy new file mode 100644 index 0000000..f3a1175 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cw2_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw2_v.npy new file mode 100644 index 0000000..653a70f Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cw3_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw3_m.npy new file mode 100644 index 0000000..aef2948 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_cw3_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw3_v.npy new file mode 100644 index 0000000..880da6f Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_logstd_m.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_logstd_m.npy new file mode 100644 index 0000000..02e8df8 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_logstd_v.npy b/tools/training_runner/snapshots/best_Fire_r11955/adam_logstd_v.npy new file mode 100644 index 0000000..ac21059 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/adam_t.txt b/tools/training_runner/snapshots/best_Fire_r11955/adam_t.txt new file mode 100644 index 0000000..68dd77d --- /dev/null +++ b/tools/training_runner/snapshots/best_Fire_r11955/adam_t.txt @@ -0,0 +1,13 @@ +347532 +347532 +347532 +347532 +347532 +347532 +347532 +347532 +347532 +347532 +347532 +347532 +347532 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_Fire_r11955/critic_b1.npy b/tools/training_runner/snapshots/best_Fire_r11955/critic_b1.npy new file mode 100644 index 0000000..f0bb4b4 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/critic_b2.npy b/tools/training_runner/snapshots/best_Fire_r11955/critic_b2.npy new file mode 100644 index 0000000..0cb5b58 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/critic_b3.npy b/tools/training_runner/snapshots/best_Fire_r11955/critic_b3.npy new file mode 100644 index 0000000..0086182 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/critic_w1.npy b/tools/training_runner/snapshots/best_Fire_r11955/critic_w1.npy new file mode 100644 index 0000000..dd15db0 Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/critic_w2.npy b/tools/training_runner/snapshots/best_Fire_r11955/critic_w2.npy new file mode 100644 index 0000000..56caa5b Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/critic_w3.npy b/tools/training_runner/snapshots/best_Fire_r11955/critic_w3.npy new file mode 100644 index 0000000..6dbd67a Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_Fire_r11955/log_std.npy b/tools/training_runner/snapshots/best_Fire_r11955/log_std.npy new file mode 100644 index 0000000..540fa6e Binary files /dev/null and b/tools/training_runner/snapshots/best_Fire_r11955/log_std.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_b1.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_b1.npy new file mode 100644 index 0000000..e1e359e Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_b2.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_b2.npy new file mode 100644 index 0000000..205f4f0 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_b3.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_b3.npy new file mode 100644 index 0000000..a837540 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_w1.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_w1.npy new file mode 100644 index 0000000..06b8428 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_w2.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_w2.npy new file mode 100644 index 0000000..68aa4f8 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_w3.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_w3.npy new file mode 100644 index 0000000..8458ff0 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab1_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab1_m.npy new file mode 100644 index 0000000..6b5512f Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab1_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab1_v.npy new file mode 100644 index 0000000..5659f35 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab2_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab2_m.npy new file mode 100644 index 0000000..863f1b2 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab2_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab2_v.npy new file mode 100644 index 0000000..e8f088f Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab3_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab3_m.npy new file mode 100644 index 0000000..5c2c781 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab3_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab3_v.npy new file mode 100644 index 0000000..a4827d0 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw1_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw1_m.npy new file mode 100644 index 0000000..304eea4 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw1_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw1_v.npy new file mode 100644 index 0000000..ed3ac28 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw2_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw2_m.npy new file mode 100644 index 0000000..638b7fd Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw2_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw2_v.npy new file mode 100644 index 0000000..04267c2 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw3_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw3_m.npy new file mode 100644 index 0000000..1c8e5f7 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw3_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw3_v.npy new file mode 100644 index 0000000..2e55084 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb1_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb1_m.npy new file mode 100644 index 0000000..3b58612 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb1_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb1_v.npy new file mode 100644 index 0000000..859eb94 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb2_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb2_m.npy new file mode 100644 index 0000000..90d5e43 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb2_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb2_v.npy new file mode 100644 index 0000000..73f755b Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb3_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb3_m.npy new file mode 100644 index 0000000..37b5872 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb3_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb3_v.npy new file mode 100644 index 0000000..fe3db06 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw1_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw1_m.npy new file mode 100644 index 0000000..7eea56c Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw1_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw1_v.npy new file mode 100644 index 0000000..79e3642 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw2_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw2_m.npy new file mode 100644 index 0000000..82b57e9 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw2_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw2_v.npy new file mode 100644 index 0000000..c79238e Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw3_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw3_m.npy new file mode 100644 index 0000000..3dd60d5 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw3_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw3_v.npy new file mode 100644 index 0000000..f535301 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_logstd_m.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_logstd_m.npy new file mode 100644 index 0000000..dd8d043 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_logstd_v.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_logstd_v.npy new file mode 100644 index 0000000..39e6032 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_t.txt b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_t.txt new file mode 100644 index 0000000..8ecd1eb --- /dev/null +++ b/tools/training_runner/snapshots/best_MyFirstBot_r15655/adam_t.txt @@ -0,0 +1,13 @@ +444844 +444844 +444844 +444844 +444844 +444844 +444844 +444844 +444844 +444844 +444844 +444844 +444844 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_b1.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_b1.npy new file mode 100644 index 0000000..09e0f47 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_b2.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_b2.npy new file mode 100644 index 0000000..faaff3f Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_b3.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_b3.npy new file mode 100644 index 0000000..98cecb9 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_w1.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_w1.npy new file mode 100644 index 0000000..05afc9a Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_w2.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_w2.npy new file mode 100644 index 0000000..94778c3 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_w3.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_w3.npy new file mode 100644 index 0000000..1c5a230 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstBot_r15655/log_std.npy b/tools/training_runner/snapshots/best_MyFirstBot_r15655/log_std.npy new file mode 100644 index 0000000..15dad8f Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstBot_r15655/log_std.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_b1.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_b1.npy new file mode 100644 index 0000000..078ec39 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_b2.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_b2.npy new file mode 100644 index 0000000..ff18f16 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_b3.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_b3.npy new file mode 100644 index 0000000..adea926 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_w1.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_w1.npy new file mode 100644 index 0000000..d0dd043 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_w2.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_w2.npy new file mode 100644 index 0000000..4ef5c2e Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_w3.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_w3.npy new file mode 100644 index 0000000..de863cd Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab1_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab1_m.npy new file mode 100644 index 0000000..c7e012d Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab1_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab1_v.npy new file mode 100644 index 0000000..fd63192 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab2_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab2_m.npy new file mode 100644 index 0000000..48487d9 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab2_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab2_v.npy new file mode 100644 index 0000000..72a7ffc Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab3_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab3_m.npy new file mode 100644 index 0000000..aa1313b Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab3_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab3_v.npy new file mode 100644 index 0000000..4c2b224 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw1_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw1_m.npy new file mode 100644 index 0000000..8373bea Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw1_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw1_v.npy new file mode 100644 index 0000000..9300196 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw2_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw2_m.npy new file mode 100644 index 0000000..4a1c0df Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw2_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw2_v.npy new file mode 100644 index 0000000..bb9a550 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw3_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw3_m.npy new file mode 100644 index 0000000..6aa37f3 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw3_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw3_v.npy new file mode 100644 index 0000000..3430028 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb1_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb1_m.npy new file mode 100644 index 0000000..7d132ad Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb1_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb1_v.npy new file mode 100644 index 0000000..c86423e Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb2_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb2_m.npy new file mode 100644 index 0000000..a2f85da Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb2_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb2_v.npy new file mode 100644 index 0000000..12ddc2d Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb3_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb3_m.npy new file mode 100644 index 0000000..68cffbb Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb3_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb3_v.npy new file mode 100644 index 0000000..a38f2ca Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw1_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw1_m.npy new file mode 100644 index 0000000..49d3270 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw1_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw1_v.npy new file mode 100644 index 0000000..eecf332 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw2_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw2_m.npy new file mode 100644 index 0000000..652109a Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw2_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw2_v.npy new file mode 100644 index 0000000..e7cf997 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw3_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw3_m.npy new file mode 100644 index 0000000..14fbbbc Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw3_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw3_v.npy new file mode 100644 index 0000000..505da7a Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_logstd_m.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_logstd_m.npy new file mode 100644 index 0000000..775634d Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_logstd_v.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_logstd_v.npy new file mode 100644 index 0000000..76946a2 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_t.txt b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_t.txt new file mode 100644 index 0000000..99b597b --- /dev/null +++ b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/adam_t.txt @@ -0,0 +1,13 @@ +340440 +340440 +340440 +340440 +340440 +340440 +340440 +340440 +340440 +340440 +340440 +340440 +340440 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_b1.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_b1.npy new file mode 100644 index 0000000..b72d048 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_b2.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_b2.npy new file mode 100644 index 0000000..8ce0cab Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_b3.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_b3.npy new file mode 100644 index 0000000..4427dc3 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_w1.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_w1.npy new file mode 100644 index 0000000..1212a64 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_w2.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_w2.npy new file mode 100644 index 0000000..a97ac82 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_w3.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_w3.npy new file mode 100644 index 0000000..4738238 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstDroid_r11605/log_std.npy b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/log_std.npy new file mode 100644 index 0000000..688baea Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstDroid_r11605/log_std.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_b1.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_b1.npy new file mode 100644 index 0000000..c9b2b8b Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_b2.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_b2.npy new file mode 100644 index 0000000..10532d7 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_b3.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_b3.npy new file mode 100644 index 0000000..23377e4 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_w1.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_w1.npy new file mode 100644 index 0000000..56ac045 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_w2.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_w2.npy new file mode 100644 index 0000000..f4d021f Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_w3.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_w3.npy new file mode 100644 index 0000000..b900c3c Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab1_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab1_m.npy new file mode 100644 index 0000000..1a4a38e Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab1_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab1_v.npy new file mode 100644 index 0000000..63f6103 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab2_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab2_m.npy new file mode 100644 index 0000000..a1b58d1 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab2_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab2_v.npy new file mode 100644 index 0000000..442725c Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab3_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab3_m.npy new file mode 100644 index 0000000..83f5ba0 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab3_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab3_v.npy new file mode 100644 index 0000000..a0f610a Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw1_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw1_m.npy new file mode 100644 index 0000000..8ed07d8 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw1_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw1_v.npy new file mode 100644 index 0000000..185b033 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw2_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw2_m.npy new file mode 100644 index 0000000..4224b9b Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw2_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw2_v.npy new file mode 100644 index 0000000..d3a347c Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw3_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw3_m.npy new file mode 100644 index 0000000..acf9a29 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw3_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw3_v.npy new file mode 100644 index 0000000..48e0786 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb1_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb1_m.npy new file mode 100644 index 0000000..0cca616 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb1_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb1_v.npy new file mode 100644 index 0000000..b1ae9fe Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb2_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb2_m.npy new file mode 100644 index 0000000..9c3ef9c Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb2_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb2_v.npy new file mode 100644 index 0000000..a22932c Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb3_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb3_m.npy new file mode 100644 index 0000000..b8b7c9d Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb3_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb3_v.npy new file mode 100644 index 0000000..875c5fc Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw1_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw1_m.npy new file mode 100644 index 0000000..4f82eb7 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw1_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw1_v.npy new file mode 100644 index 0000000..8d37543 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw2_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw2_m.npy new file mode 100644 index 0000000..4d3af7b Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw2_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw2_v.npy new file mode 100644 index 0000000..ba77cae Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw3_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw3_m.npy new file mode 100644 index 0000000..ddac336 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw3_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw3_v.npy new file mode 100644 index 0000000..2fa7098 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_logstd_m.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_logstd_m.npy new file mode 100644 index 0000000..6a00103 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_logstd_v.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_logstd_v.npy new file mode 100644 index 0000000..27c63bc Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_t.txt b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_t.txt new file mode 100644 index 0000000..def7cd6 --- /dev/null +++ b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/adam_t.txt @@ -0,0 +1,13 @@ +368144 +368144 +368144 +368144 +368144 +368144 +368144 +368144 +368144 +368144 +368144 +368144 +368144 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_b1.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_b1.npy new file mode 100644 index 0000000..33a60bb Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_b2.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_b2.npy new file mode 100644 index 0000000..f23031b Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_b3.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_b3.npy new file mode 100644 index 0000000..aad4106 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_w1.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_w1.npy new file mode 100644 index 0000000..df3ca3b Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_w2.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_w2.npy new file mode 100644 index 0000000..c957eec Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_w3.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_w3.npy new file mode 100644 index 0000000..1e758e3 Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_MyFirstLeader_r12955/log_std.npy b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/log_std.npy new file mode 100644 index 0000000..7a2488f Binary files /dev/null and b/tools/training_runner/snapshots/best_MyFirstLeader_r12955/log_std.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_b1.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_b1.npy new file mode 100644 index 0000000..cd136db Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_b2.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_b2.npy new file mode 100644 index 0000000..b1cdd49 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_b3.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_b3.npy new file mode 100644 index 0000000..5397b09 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_w1.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_w1.npy new file mode 100644 index 0000000..8e94833 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_w2.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_w2.npy new file mode 100644 index 0000000..693243e Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_w3.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_w3.npy new file mode 100644 index 0000000..c1e571a Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab1_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab1_m.npy new file mode 100644 index 0000000..b6ca639 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab1_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab1_v.npy new file mode 100644 index 0000000..b498b6d Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab2_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab2_m.npy new file mode 100644 index 0000000..eee3e53 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab2_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab2_v.npy new file mode 100644 index 0000000..f1df341 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab3_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab3_m.npy new file mode 100644 index 0000000..cc9f0ce Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab3_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab3_v.npy new file mode 100644 index 0000000..2c5fc07 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw1_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw1_m.npy new file mode 100644 index 0000000..cc786c6 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw1_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw1_v.npy new file mode 100644 index 0000000..8a9ea89 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw2_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw2_m.npy new file mode 100644 index 0000000..979abef Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw2_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw2_v.npy new file mode 100644 index 0000000..a7d194c Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw3_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw3_m.npy new file mode 100644 index 0000000..69cc9a9 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw3_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw3_v.npy new file mode 100644 index 0000000..f95325c Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb1_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb1_m.npy new file mode 100644 index 0000000..da003b5 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb1_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb1_v.npy new file mode 100644 index 0000000..8e5dd76 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb2_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb2_m.npy new file mode 100644 index 0000000..ed85a14 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb2_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb2_v.npy new file mode 100644 index 0000000..deaab93 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb3_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb3_m.npy new file mode 100644 index 0000000..fc02b1a Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb3_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb3_v.npy new file mode 100644 index 0000000..2909648 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw1_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw1_m.npy new file mode 100644 index 0000000..b856b44 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw1_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw1_v.npy new file mode 100644 index 0000000..843bc74 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw2_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw2_m.npy new file mode 100644 index 0000000..939efa8 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw2_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw2_v.npy new file mode 100644 index 0000000..dc79c90 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw3_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw3_m.npy new file mode 100644 index 0000000..b397bb2 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw3_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw3_v.npy new file mode 100644 index 0000000..911f407 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_logstd_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_logstd_m.npy new file mode 100644 index 0000000..512443b Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_logstd_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_logstd_v.npy new file mode 100644 index 0000000..82bc32a Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_t.txt b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_t.txt new file mode 100644 index 0000000..85bbe48 --- /dev/null +++ b/tools/training_runner/snapshots/best_PaintingBot_r33144/adam_t.txt @@ -0,0 +1,13 @@ +376972 +376972 +376972 +376972 +376972 +376972 +376972 +376972 +376972 +376972 +376972 +376972 +376972 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_b1.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_b1.npy new file mode 100644 index 0000000..84f66bf Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_b2.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_b2.npy new file mode 100644 index 0000000..5242d32 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_b3.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_b3.npy new file mode 100644 index 0000000..86910dc Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_w1.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_w1.npy new file mode 100644 index 0000000..c025d6f Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_w2.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_w2.npy new file mode 100644 index 0000000..c8e2498 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_w3.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_w3.npy new file mode 100644 index 0000000..f190a97 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r33144/log_std.npy b/tools/training_runner/snapshots/best_PaintingBot_r33144/log_std.npy new file mode 100644 index 0000000..eb65db2 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r33144/log_std.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_b1.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_b1.npy new file mode 100644 index 0000000..f476fcc Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_b2.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_b2.npy new file mode 100644 index 0000000..08e77f2 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_b3.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_b3.npy new file mode 100644 index 0000000..55777ed Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_w1.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_w1.npy new file mode 100644 index 0000000..f4daf1e Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_w2.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_w2.npy new file mode 100644 index 0000000..4dbc14a Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_w3.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_w3.npy new file mode 100644 index 0000000..f37b14c Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab1_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab1_m.npy new file mode 100644 index 0000000..cffd5c3 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab1_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab1_v.npy new file mode 100644 index 0000000..8caf765 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab2_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab2_m.npy new file mode 100644 index 0000000..1520349 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab2_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab2_v.npy new file mode 100644 index 0000000..d204fd0 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab3_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab3_m.npy new file mode 100644 index 0000000..a86582b Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab3_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab3_v.npy new file mode 100644 index 0000000..2831b25 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw1_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw1_m.npy new file mode 100644 index 0000000..ba6181d Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw1_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw1_v.npy new file mode 100644 index 0000000..0965696 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw2_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw2_m.npy new file mode 100644 index 0000000..532bc40 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw2_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw2_v.npy new file mode 100644 index 0000000..30b3310 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw3_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw3_m.npy new file mode 100644 index 0000000..63108bb Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw3_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw3_v.npy new file mode 100644 index 0000000..3aac35a Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb1_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb1_m.npy new file mode 100644 index 0000000..501ba58 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb1_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb1_v.npy new file mode 100644 index 0000000..3103849 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb2_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb2_m.npy new file mode 100644 index 0000000..ce11a82 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb2_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb2_v.npy new file mode 100644 index 0000000..1f21ce1 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb3_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb3_m.npy new file mode 100644 index 0000000..e8fdc7a Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb3_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb3_v.npy new file mode 100644 index 0000000..8d3593f Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw1_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw1_m.npy new file mode 100644 index 0000000..9108b80 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw1_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw1_v.npy new file mode 100644 index 0000000..14d9856 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw2_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw2_m.npy new file mode 100644 index 0000000..12f54d9 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw2_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw2_v.npy new file mode 100644 index 0000000..6944686 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw3_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw3_m.npy new file mode 100644 index 0000000..0b185f6 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw3_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw3_v.npy new file mode 100644 index 0000000..8c53b6c Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_logstd_m.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_logstd_m.npy new file mode 100644 index 0000000..f68bb48 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_logstd_v.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_logstd_v.npy new file mode 100644 index 0000000..7d80962 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_t.txt b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_t.txt new file mode 100644 index 0000000..7981571 --- /dev/null +++ b/tools/training_runner/snapshots/best_PaintingBot_r36603/adam_t.txt @@ -0,0 +1,13 @@ +392204 +392204 +392204 +392204 +392204 +392204 +392204 +392204 +392204 +392204 +392204 +392204 +392204 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_b1.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_b1.npy new file mode 100644 index 0000000..26c0a79 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_b2.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_b2.npy new file mode 100644 index 0000000..f0dcc75 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_b3.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_b3.npy new file mode 100644 index 0000000..f969918 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_w1.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_w1.npy new file mode 100644 index 0000000..f851c58 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_w2.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_w2.npy new file mode 100644 index 0000000..df5fcce Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_w3.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_w3.npy new file mode 100644 index 0000000..a90677a Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_PaintingBot_r36603/log_std.npy b/tools/training_runner/snapshots/best_PaintingBot_r36603/log_std.npy new file mode 100644 index 0000000..d7ebae0 Binary files /dev/null and b/tools/training_runner/snapshots/best_PaintingBot_r36603/log_std.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/actor_b1.npy b/tools/training_runner/snapshots/best_Target_r12305/actor_b1.npy new file mode 100644 index 0000000..54c27bc Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/actor_b2.npy b/tools/training_runner/snapshots/best_Target_r12305/actor_b2.npy new file mode 100644 index 0000000..31c2213 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/actor_b3.npy b/tools/training_runner/snapshots/best_Target_r12305/actor_b3.npy new file mode 100644 index 0000000..3c99525 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/actor_w1.npy b/tools/training_runner/snapshots/best_Target_r12305/actor_w1.npy new file mode 100644 index 0000000..fcf91df Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/actor_w2.npy b/tools/training_runner/snapshots/best_Target_r12305/actor_w2.npy new file mode 100644 index 0000000..e735a7d Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/actor_w3.npy b/tools/training_runner/snapshots/best_Target_r12305/actor_w3.npy new file mode 100644 index 0000000..8f26d5d Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_ab1_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_ab1_m.npy new file mode 100644 index 0000000..bc16796 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_ab1_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_ab1_v.npy new file mode 100644 index 0000000..ab6d104 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_ab2_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_ab2_m.npy new file mode 100644 index 0000000..e693d2b Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_ab2_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_ab2_v.npy new file mode 100644 index 0000000..5b34089 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_ab3_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_ab3_m.npy new file mode 100644 index 0000000..8b52220 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_ab3_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_ab3_v.npy new file mode 100644 index 0000000..78ff0ea Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_aw1_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_aw1_m.npy new file mode 100644 index 0000000..6ce14cd Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_aw1_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_aw1_v.npy new file mode 100644 index 0000000..cbf1aa1 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_aw2_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_aw2_m.npy new file mode 100644 index 0000000..8596b40 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_aw2_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_aw2_v.npy new file mode 100644 index 0000000..2644a64 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_aw3_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_aw3_m.npy new file mode 100644 index 0000000..db13041 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_aw3_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_aw3_v.npy new file mode 100644 index 0000000..9c2141f Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cb1_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cb1_m.npy new file mode 100644 index 0000000..be13f4c Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cb1_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cb1_v.npy new file mode 100644 index 0000000..24656c5 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cb2_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cb2_m.npy new file mode 100644 index 0000000..1b7df7c Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cb2_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cb2_v.npy new file mode 100644 index 0000000..77abd5b Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cb3_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cb3_m.npy new file mode 100644 index 0000000..b98a66d Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cb3_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cb3_v.npy new file mode 100644 index 0000000..bf67f94 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cw1_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cw1_m.npy new file mode 100644 index 0000000..5153905 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cw1_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cw1_v.npy new file mode 100644 index 0000000..ec120ff Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cw2_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cw2_m.npy new file mode 100644 index 0000000..2b5d76d Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cw2_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cw2_v.npy new file mode 100644 index 0000000..ff48448 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cw3_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cw3_m.npy new file mode 100644 index 0000000..2e6d679 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_cw3_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_cw3_v.npy new file mode 100644 index 0000000..53300cf Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_logstd_m.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_logstd_m.npy new file mode 100644 index 0000000..7f1e450 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_logstd_v.npy b/tools/training_runner/snapshots/best_Target_r12305/adam_logstd_v.npy new file mode 100644 index 0000000..987e701 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/adam_t.txt b/tools/training_runner/snapshots/best_Target_r12305/adam_t.txt new file mode 100644 index 0000000..b84d676 --- /dev/null +++ b/tools/training_runner/snapshots/best_Target_r12305/adam_t.txt @@ -0,0 +1,13 @@ +358020 +358020 +358020 +358020 +358020 +358020 +358020 +358020 +358020 +358020 +358020 +358020 +358020 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_Target_r12305/critic_b1.npy b/tools/training_runner/snapshots/best_Target_r12305/critic_b1.npy new file mode 100644 index 0000000..ff8347e Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/critic_b2.npy b/tools/training_runner/snapshots/best_Target_r12305/critic_b2.npy new file mode 100644 index 0000000..e781b90 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/critic_b3.npy b/tools/training_runner/snapshots/best_Target_r12305/critic_b3.npy new file mode 100644 index 0000000..c309cf3 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/critic_w1.npy b/tools/training_runner/snapshots/best_Target_r12305/critic_w1.npy new file mode 100644 index 0000000..0c008d7 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/critic_w2.npy b/tools/training_runner/snapshots/best_Target_r12305/critic_w2.npy new file mode 100644 index 0000000..b8a8ab7 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/critic_w3.npy b/tools/training_runner/snapshots/best_Target_r12305/critic_w3.npy new file mode 100644 index 0000000..63700ec Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_Target_r12305/log_std.npy b/tools/training_runner/snapshots/best_Target_r12305/log_std.npy new file mode 100644 index 0000000..e853594 Binary files /dev/null and b/tools/training_runner/snapshots/best_Target_r12305/log_std.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/actor_b1.npy b/tools/training_runner/snapshots/best_post_maint_r38003/actor_b1.npy new file mode 100644 index 0000000..f39c3fc Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/actor_b2.npy b/tools/training_runner/snapshots/best_post_maint_r38003/actor_b2.npy new file mode 100644 index 0000000..7b40e85 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/actor_b3.npy b/tools/training_runner/snapshots/best_post_maint_r38003/actor_b3.npy new file mode 100644 index 0000000..e771ba8 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/actor_w1.npy b/tools/training_runner/snapshots/best_post_maint_r38003/actor_w1.npy new file mode 100644 index 0000000..4b2387b Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/actor_w2.npy b/tools/training_runner/snapshots/best_post_maint_r38003/actor_w2.npy new file mode 100644 index 0000000..680b23a Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/actor_w3.npy b/tools/training_runner/snapshots/best_post_maint_r38003/actor_w3.npy new file mode 100644 index 0000000..5c9c63b Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab1_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab1_m.npy new file mode 100644 index 0000000..8f3a01a Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab1_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab1_v.npy new file mode 100644 index 0000000..8487eed Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab2_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab2_m.npy new file mode 100644 index 0000000..61e0629 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab2_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab2_v.npy new file mode 100644 index 0000000..7f05a94 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab3_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab3_m.npy new file mode 100644 index 0000000..a25e638 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab3_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab3_v.npy new file mode 100644 index 0000000..862a224 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw1_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw1_m.npy new file mode 100644 index 0000000..5ca6ceb Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw1_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw1_v.npy new file mode 100644 index 0000000..c6da504 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw2_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw2_m.npy new file mode 100644 index 0000000..1b897ab Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw2_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw2_v.npy new file mode 100644 index 0000000..a67d3f4 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw3_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw3_m.npy new file mode 100644 index 0000000..29673e7 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw3_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw3_v.npy new file mode 100644 index 0000000..7b941a8 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb1_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb1_m.npy new file mode 100644 index 0000000..850d8a7 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb1_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb1_v.npy new file mode 100644 index 0000000..cd600ee Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb2_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb2_m.npy new file mode 100644 index 0000000..be977fe Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb2_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb2_v.npy new file mode 100644 index 0000000..b7f3f74 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb3_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb3_m.npy new file mode 100644 index 0000000..82a030b Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb3_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb3_v.npy new file mode 100644 index 0000000..f478816 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw1_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw1_m.npy new file mode 100644 index 0000000..00d36df Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw1_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw1_v.npy new file mode 100644 index 0000000..528fc6f Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw2_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw2_m.npy new file mode 100644 index 0000000..6a517ed Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw2_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw2_v.npy new file mode 100644 index 0000000..65abed7 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw3_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw3_m.npy new file mode 100644 index 0000000..4b7dbbf Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw3_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw3_v.npy new file mode 100644 index 0000000..356d0e9 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_logstd_m.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_logstd_m.npy new file mode 100644 index 0000000..5767380 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_logstd_v.npy b/tools/training_runner/snapshots/best_post_maint_r38003/adam_logstd_v.npy new file mode 100644 index 0000000..5105c14 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/adam_t.txt b/tools/training_runner/snapshots/best_post_maint_r38003/adam_t.txt new file mode 100644 index 0000000..ab0eb3f --- /dev/null +++ b/tools/training_runner/snapshots/best_post_maint_r38003/adam_t.txt @@ -0,0 +1,13 @@ +402796 +402796 +402796 +402796 +402796 +402796 +402796 +402796 +402796 +402796 +402796 +402796 +402796 \ No newline at end of file diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/critic_b1.npy b/tools/training_runner/snapshots/best_post_maint_r38003/critic_b1.npy new file mode 100644 index 0000000..3075ad4 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/critic_b2.npy b/tools/training_runner/snapshots/best_post_maint_r38003/critic_b2.npy new file mode 100644 index 0000000..90f668a Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/critic_b3.npy b/tools/training_runner/snapshots/best_post_maint_r38003/critic_b3.npy new file mode 100644 index 0000000..0c7bcf9 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/critic_w1.npy b/tools/training_runner/snapshots/best_post_maint_r38003/critic_w1.npy new file mode 100644 index 0000000..e77858d Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/critic_w2.npy b/tools/training_runner/snapshots/best_post_maint_r38003/critic_w2.npy new file mode 100644 index 0000000..d3c3de2 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/critic_w3.npy b/tools/training_runner/snapshots/best_post_maint_r38003/critic_w3.npy new file mode 100644 index 0000000..4a51cde Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/best_post_maint_r38003/log_std.npy b/tools/training_runner/snapshots/best_post_maint_r38003/log_std.npy new file mode 100644 index 0000000..aa77ea2 Binary files /dev/null and b/tools/training_runner/snapshots/best_post_maint_r38003/log_std.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/actor_b1.npy b/tools/training_runner/snapshots/generalist_best_r1000/actor_b1.npy new file mode 100644 index 0000000..02acd51 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/actor_b2.npy b/tools/training_runner/snapshots/generalist_best_r1000/actor_b2.npy new file mode 100644 index 0000000..f863a32 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/actor_b3.npy b/tools/training_runner/snapshots/generalist_best_r1000/actor_b3.npy new file mode 100644 index 0000000..131cab8 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/actor_w1.npy b/tools/training_runner/snapshots/generalist_best_r1000/actor_w1.npy new file mode 100644 index 0000000..c8e20b8 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/actor_w2.npy b/tools/training_runner/snapshots/generalist_best_r1000/actor_w2.npy new file mode 100644 index 0000000..b48ff0b Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/actor_w3.npy b/tools/training_runner/snapshots/generalist_best_r1000/actor_w3.npy new file mode 100644 index 0000000..562af28 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_ab1_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab1_m.npy new file mode 100644 index 0000000..758357d Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_ab1_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab1_v.npy new file mode 100644 index 0000000..d288a6c Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_ab2_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab2_m.npy new file mode 100644 index 0000000..df44393 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_ab2_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab2_v.npy new file mode 100644 index 0000000..edd9885 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_ab3_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab3_m.npy new file mode 100644 index 0000000..01a1857 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_ab3_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab3_v.npy new file mode 100644 index 0000000..1ad331e Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_aw1_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw1_m.npy new file mode 100644 index 0000000..de7b8b8 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_aw1_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw1_v.npy new file mode 100644 index 0000000..69a01a1 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_aw2_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw2_m.npy new file mode 100644 index 0000000..3feac21 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_aw2_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw2_v.npy new file mode 100644 index 0000000..2cbc003 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_aw3_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw3_m.npy new file mode 100644 index 0000000..2d66af5 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_aw3_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw3_v.npy new file mode 100644 index 0000000..add5ec4 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cb1_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb1_m.npy new file mode 100644 index 0000000..4db34de Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cb1_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb1_v.npy new file mode 100644 index 0000000..858b85a Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cb2_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb2_m.npy new file mode 100644 index 0000000..5c9e4be Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cb2_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb2_v.npy new file mode 100644 index 0000000..4eaefa9 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cb3_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb3_m.npy new file mode 100644 index 0000000..57c0a72 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cb3_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb3_v.npy new file mode 100644 index 0000000..1431264 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cw1_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw1_m.npy new file mode 100644 index 0000000..c6a168a Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cw1_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw1_v.npy new file mode 100644 index 0000000..cb88a3c Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cw2_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw2_m.npy new file mode 100644 index 0000000..67c4e33 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cw2_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw2_v.npy new file mode 100644 index 0000000..78ee31d Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cw3_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw3_m.npy new file mode 100644 index 0000000..21fe820 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_cw3_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw3_v.npy new file mode 100644 index 0000000..3840630 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_logstd_m.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_logstd_m.npy new file mode 100644 index 0000000..b82fe2f Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_logstd_v.npy b/tools/training_runner/snapshots/generalist_best_r1000/adam_logstd_v.npy new file mode 100644 index 0000000..de5ffee Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/adam_t.txt b/tools/training_runner/snapshots/generalist_best_r1000/adam_t.txt new file mode 100644 index 0000000..f289ac0 --- /dev/null +++ b/tools/training_runner/snapshots/generalist_best_r1000/adam_t.txt @@ -0,0 +1,13 @@ +1556 +1556 +1556 +1556 +1556 +1556 +1556 +1556 +1556 +1556 +1556 +1556 +1556 \ No newline at end of file diff --git a/tools/training_runner/snapshots/generalist_best_r1000/critic_b1.npy b/tools/training_runner/snapshots/generalist_best_r1000/critic_b1.npy new file mode 100644 index 0000000..ba92f5f Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/critic_b2.npy b/tools/training_runner/snapshots/generalist_best_r1000/critic_b2.npy new file mode 100644 index 0000000..6c7bd48 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/critic_b3.npy b/tools/training_runner/snapshots/generalist_best_r1000/critic_b3.npy new file mode 100644 index 0000000..bb11bb9 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/critic_w1.npy b/tools/training_runner/snapshots/generalist_best_r1000/critic_w1.npy new file mode 100644 index 0000000..f447748 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/critic_w2.npy b/tools/training_runner/snapshots/generalist_best_r1000/critic_w2.npy new file mode 100644 index 0000000..93a20e5 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/critic_w3.npy b/tools/training_runner/snapshots/generalist_best_r1000/critic_w3.npy new file mode 100644 index 0000000..0ec81b7 Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/generalist_best_r1000/log_std.npy b/tools/training_runner/snapshots/generalist_best_r1000/log_std.npy new file mode 100644 index 0000000..83d4a5d Binary files /dev/null and b/tools/training_runner/snapshots/generalist_best_r1000/log_std.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_b1.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_b1.npy new file mode 100644 index 0000000..27a9d95 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_b2.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_b2.npy new file mode 100644 index 0000000..27bb520 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_b3.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_b3.npy new file mode 100644 index 0000000..2bf5bbf Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_w1.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_w1.npy new file mode 100644 index 0000000..d210d4e Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_w2.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_w2.npy new file mode 100644 index 0000000..5663e13 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_w3.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_w3.npy new file mode 100644 index 0000000..2a6c043 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab1_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab1_m.npy new file mode 100644 index 0000000..33dddeb Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab1_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab1_v.npy new file mode 100644 index 0000000..544fbdc Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab2_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab2_m.npy new file mode 100644 index 0000000..1185f32 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab2_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab2_v.npy new file mode 100644 index 0000000..9464665 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab3_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab3_m.npy new file mode 100644 index 0000000..524ffa8 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab3_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab3_v.npy new file mode 100644 index 0000000..de3f070 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw1_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw1_m.npy new file mode 100644 index 0000000..bb69063 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw1_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw1_v.npy new file mode 100644 index 0000000..de2b9ba Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw2_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw2_m.npy new file mode 100644 index 0000000..7c7d608 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw2_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw2_v.npy new file mode 100644 index 0000000..713ee35 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw3_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw3_m.npy new file mode 100644 index 0000000..98308de Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw3_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw3_v.npy new file mode 100644 index 0000000..9da9bbd Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb1_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb1_m.npy new file mode 100644 index 0000000..ef89469 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb1_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb1_v.npy new file mode 100644 index 0000000..be0dc0e Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb2_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb2_m.npy new file mode 100644 index 0000000..b6387b2 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb2_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb2_v.npy new file mode 100644 index 0000000..8824e94 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb3_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb3_m.npy new file mode 100644 index 0000000..04a9580 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb3_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb3_v.npy new file mode 100644 index 0000000..fcc69f6 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw1_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw1_m.npy new file mode 100644 index 0000000..b07d020 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw1_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw1_v.npy new file mode 100644 index 0000000..7d6b734 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw2_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw2_m.npy new file mode 100644 index 0000000..9acbfcf Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw2_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw2_v.npy new file mode 100644 index 0000000..81af40d Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw3_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw3_m.npy new file mode 100644 index 0000000..4ac3e84 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw3_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw3_v.npy new file mode 100644 index 0000000..d6dd904 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_logstd_m.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_logstd_m.npy new file mode 100644 index 0000000..34db1c3 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_logstd_v.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_logstd_v.npy new file mode 100644 index 0000000..724d6f2 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_t.txt b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_t.txt new file mode 100644 index 0000000..e443c0d --- /dev/null +++ b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/adam_t.txt @@ -0,0 +1,13 @@ +381256 +381256 +381256 +381256 +381256 +381256 +381256 +381256 +381256 +381256 +381256 +381256 +381256 \ No newline at end of file diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_b1.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_b1.npy new file mode 100644 index 0000000..8270306 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_b2.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_b2.npy new file mode 100644 index 0000000..feeac09 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_b3.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_b3.npy new file mode 100644 index 0000000..aa46798 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_w1.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_w1.npy new file mode 100644 index 0000000..f35022c Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_w2.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_w2.npy new file mode 100644 index 0000000..cc3fef7 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_w3.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_w3.npy new file mode 100644 index 0000000..71451b4 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/pre_MyFirstBot_r37503/log_std.npy b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/log_std.npy new file mode 100644 index 0000000..031e1c4 Binary files /dev/null and b/tools/training_runner/snapshots/pre_MyFirstBot_r37503/log_std.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_b1.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_b1.npy new file mode 100644 index 0000000..f075004 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_b1.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_b2.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_b2.npy new file mode 100644 index 0000000..a1f7fb2 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_b2.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_b3.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_b3.npy new file mode 100644 index 0000000..07174fc Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_b3.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_w1.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_w1.npy new file mode 100644 index 0000000..367f7c6 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_w1.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_w2.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_w2.npy new file mode 100644 index 0000000..5a64b64 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_w2.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_w3.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_w3.npy new file mode 100644 index 0000000..2e59f37 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/actor_w3.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab1_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab1_m.npy new file mode 100644 index 0000000..ad898d5 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab1_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab1_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab1_v.npy new file mode 100644 index 0000000..5c74bf0 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab1_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab2_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab2_m.npy new file mode 100644 index 0000000..85bda51 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab2_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab2_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab2_v.npy new file mode 100644 index 0000000..5200f0c Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab2_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab3_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab3_m.npy new file mode 100644 index 0000000..9f75f5d Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab3_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab3_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab3_v.npy new file mode 100644 index 0000000..b663bb8 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_ab3_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw1_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw1_m.npy new file mode 100644 index 0000000..3d0fce8 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw1_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw1_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw1_v.npy new file mode 100644 index 0000000..200c6ff Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw1_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw2_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw2_m.npy new file mode 100644 index 0000000..547bf42 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw2_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw2_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw2_v.npy new file mode 100644 index 0000000..708170a Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw2_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw3_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw3_m.npy new file mode 100644 index 0000000..41d7225 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw3_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw3_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw3_v.npy new file mode 100644 index 0000000..d386edb Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_aw3_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb1_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb1_m.npy new file mode 100644 index 0000000..28b3a8a Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb1_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb1_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb1_v.npy new file mode 100644 index 0000000..30a341f Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb1_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb2_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb2_m.npy new file mode 100644 index 0000000..774ab80 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb2_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb2_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb2_v.npy new file mode 100644 index 0000000..eea901f Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb2_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb3_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb3_m.npy new file mode 100644 index 0000000..f0872a9 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb3_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb3_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb3_v.npy new file mode 100644 index 0000000..1893f30 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cb3_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw1_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw1_m.npy new file mode 100644 index 0000000..b5671ea Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw1_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw1_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw1_v.npy new file mode 100644 index 0000000..0d7f600 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw1_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw2_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw2_m.npy new file mode 100644 index 0000000..2353059 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw2_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw2_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw2_v.npy new file mode 100644 index 0000000..921bbc2 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw2_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw3_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw3_m.npy new file mode 100644 index 0000000..eee5fc4 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw3_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw3_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw3_v.npy new file mode 100644 index 0000000..48f86cd Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_cw3_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_logstd_m.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_logstd_m.npy new file mode 100644 index 0000000..e0480ca Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_logstd_m.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_logstd_v.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_logstd_v.npy new file mode 100644 index 0000000..f2559f3 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_logstd_v.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_t.txt b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_t.txt new file mode 100644 index 0000000..db44821 --- /dev/null +++ b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/adam_t.txt @@ -0,0 +1,13 @@ +30756 +30756 +30756 +30756 +30756 +30756 +30756 +30756 +30756 +30756 +30756 +30756 +30756 \ No newline at end of file diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_b1.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_b1.npy new file mode 100644 index 0000000..4ab65ab Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_b1.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_b2.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_b2.npy new file mode 100644 index 0000000..564cec6 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_b2.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_b3.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_b3.npy new file mode 100644 index 0000000..86a66a5 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_b3.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_w1.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_w1.npy new file mode 100644 index 0000000..2d422ec Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_w1.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_w2.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_w2.npy new file mode 100644 index 0000000..d101a54 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_w2.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_w3.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_w3.npy new file mode 100644 index 0000000..b1e8435 Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/critic_w3.npy differ diff --git a/tools/training_runner/snapshots/v2_MyFirstLeader_r150/log_std.npy b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/log_std.npy new file mode 100644 index 0000000..09bb96a Binary files /dev/null and b/tools/training_runner/snapshots/v2_MyFirstLeader_r150/log_std.npy differ