From be695233fed005f055a127c628036b52434b5d73 Mon Sep 17 00:00:00 2001 From: tactino <18781106300@163.com> Date: Fri, 2 Oct 2026 21:10:28 -0400 Subject: [PATCH 1/4] E56: protocol, after the pilots and before the registered runs - on Hopper, which ends episodes when it falls, do E54's and E55's findings hold, and what do faults in terminations do E54's 21 client faults plus terminated:drop and terminated:as-trunc, and the 2 log faults, at doses one, 0.01 and 1.0; seeds 0-2 traced and ledgered, seeds 10-19 fault-free; 244 runs. Status rule: last tenth of the log beats the first tenth by 1,000. --- experiments/e56-hopper-faults/PROTOCOL.md | 159 +++++++ .../e56-hopper-faults/faulty_client.py | 442 ++++++++++++++++++ experiments/e56-hopper-faults/jobs.py | 43 ++ experiments/e56-hopper-faults/ledger.py | 190 ++++++++ experiments/e56-hopper-faults/merge_runs.py | 47 ++ .../results/pilot/budget.txt | 11 + .../results/pilot/fault-ledger.csv | 29 ++ .../results/pilot/fault-pilot.txt | 35 ++ .../results/pilot/fault-runs.csv | 29 ++ experiments/e56-hopper-faults/run.sh | 49 ++ experiments/e56-hopper-faults/summarise.py | 278 +++++++++++ experiments/e56-hopper-faults/train.py | 303 ++++++++++++ 12 files changed, 1615 insertions(+) create mode 100644 experiments/e56-hopper-faults/PROTOCOL.md create mode 100644 experiments/e56-hopper-faults/faulty_client.py create mode 100644 experiments/e56-hopper-faults/jobs.py create mode 100644 experiments/e56-hopper-faults/ledger.py create mode 100644 experiments/e56-hopper-faults/merge_runs.py create mode 100644 experiments/e56-hopper-faults/results/pilot/budget.txt create mode 100644 experiments/e56-hopper-faults/results/pilot/fault-ledger.csv create mode 100644 experiments/e56-hopper-faults/results/pilot/fault-pilot.txt create mode 100644 experiments/e56-hopper-faults/results/pilot/fault-runs.csv create mode 100644 experiments/e56-hopper-faults/run.sh create mode 100644 experiments/e56-hopper-faults/summarise.py create mode 100644 experiments/e56-hopper-faults/train.py diff --git a/experiments/e56-hopper-faults/PROTOCOL.md b/experiments/e56-hopper-faults/PROTOCOL.md new file mode 100644 index 0000000..d9b8d55 --- /dev/null +++ b/experiments/e56-hopper-faults/PROTOCOL.md @@ -0,0 +1,159 @@ +# E56 measurement protocol (pre-registered) + +**Written 2026-10-02, after the pilots in `results/pilot/`, before the +registered runs.** + +This file must not be edited after the first registered data point. Anything +learned afterwards goes in `AMENDMENT.md`, dated. + +--- + +## The question + +E54 and E55 injected faults at the boundary of two forgiving environments, +Pendulum and HalfCheetah, which never end an episode early. So faults in +episode ends hardly mattered there. Hopper ends an episode when it falls, +and it is harder to learn. So: + +**On Hopper, do E54's and E55's findings hold?** +- **The status rule:** does it still miss most faults? +- **The two checks:** do byte identity and reconciliation still catch every + fault between them? +- **The ledger:** does the step ledger still catch and locate every fault in + what crosses? + +**And what do faults in terminations do?** + +--- + +## Declared in advance: what was already known + +1. **The code**, E55's with these changes: + - `faulty_client.py` adds `terminated:drop` (a termination is not sent) + and `terminated:as-trunc` (a termination is sent as a time limit). + - `train.py` adds `hopper`: Hopper-v5 at SB3's defaults, with 16 x 256 + frames per rollout, as E50's HalfCheetah, for 1,024,000 steps. + - `ledger.py` judges one run at a time (`--run`). `run.sh` judges each + traced run as it ends and deletes its traces: Hopper's are 150 MB a run. + - `summarise.py` has Hopper's status rule, below. +2. **The faults:** E54's 21 client faults, E56's two above, and E54's two + log faults, at doses `one`, `0.01` and `1.0`. E54's controls. +3. **The budget pilot** (`results/pilot/budget.txt`): + - Fault-free Hopper learned on seeds 9 and 10. The mean return of the last + tenth of the trainer's log beat the first tenth's by 2,016 and 2,169. + - Seed 9 traced and ledgered ended on the same weights as untraced + (`2f370852`); its ledger found no difference. + - A run took about 250 s, three at a time. +4. **The fault pilot**, seed 9, every fault at one value plus the controls, + 10 at a time (`results/pilot/fault-runs.csv`, `fault-ledger.csv`): + - `none`, `delay-1ms` and `wire-float64` ended on `2f370852`, the budget + pilot's weights. + - The status rule caught none of the 25 faults. + - The weights caught 19 of the 23 client faults. They missed the four + `final-obs` faults: each changed one final observation, at an episode + that ended in a termination. SB3 bootstraps from a final observation + only at a time limit, so PPO never read the changed value. + - The record caught 9: + - the three reward faults but `reward:f16`; + - `terminated:spurious`, `truncated:drop`, `terminated:drop` and + `step:fill`; + - the two log faults. + - The ledger caught and located all 23 client faults, and found no + difference in the controls and log faults: 28 of 28 right. + +--- + +## Design + +On guangzhao, `bash run.sh results registered 10`, ports 8900-8909: +- Hopper, seeds 0-2: the 3 controls, and the 25 faults at the 3 doses, all + traced and ledgered. That is 3 x (3 + 75) = 234 runs. +- Hopper, seeds 10-19: fault-free, not traced, for the strict check's band. + That is 10 runs. + +244 runs in all. Then `python ledger.py results`, `python summarise.py +results`, `python merge_runs.py results`. + +--- + +## How each check is judged + +As in E54 and E55, with Hopper's status rule. +- **rule:** Hopper's episodes vary in length, so the rule counts episodes. + The mean return of the last tenth of the trainer's log must beat the first + tenth's by at least **1,000**, about half of what the fault-free pilots + gained. A log with fewer than 20 episodes fails. +- **strict:** the mean return of the last tenth, against the mean and + standard deviation of seeds 10-19. More than 3 s.d. away is caught. +- **weights, record, bridge:** as in E54. +- **ledger:** as in E55, including its definition of a right first + difference. `terminated:drop` shows in the episode end, and + `terminated:as-trunc` in the time limit. + +--- + +## Checks that the runs are valid + +- **V1:** every run reaches 1,024,000 steps, and its client exits 0. +- **V2:** the three controls end on the same weights as `none` at each of + seeds 0-2. The machine running 10 at a time, the trace and the ledger + change nothing. + +--- + +## Predictions, and what falsifies each + +**P1 - Byte identity sees every change that training reads.** Every run of a +client fault other than the four `final-obs` faults, with a changed value, +ends on weights other than `none`'s at its seed. +- Falsified by one such run on `none`'s weights. +- The `final-obs` faults are reported, not predicted. Their changed values + matter only where an episode ends at the time limit. + +**P2 - and nothing else.** The two log faults end on `none`'s weights at +every seed and dose. Falsified by one that does not. + +**P3 - The status rule misses most faults.** Over client- and log-fault runs +with a changed value: +- at doses one and 0.01, the rule catches at most 10% at each dose; +- at dose 1.0, at most 60%. + +Falsified by more at any dose. + +**P4 - Reconciliation sees what changes the books, and only that.** +- It catches every run, at doses 0.01 and 1.0 with a changed value, of: + - `reward:zero`, `reward:stale`, `reward:swap`; + - `terminated:spurious`, `terminated:drop`, `truncated:drop`. +- It catches `step:fill` at 0.01, and both log faults at every dose with a + changed value. +- It catches no run of any of these: + - an `obs`, `action` or `final-obs` fault; + - `truncated:as-term` or `terminated:as-trunc`. +- Falsified by one run against any of these. +- Reported, not predicted: + - `reward:f16`; + - every fault at one value; + - `step:fill` at 1.0. + +**P5 - The bridge's log sees only the trainer's side.** It catches every +log-fault run with a changed value and no client-fault run. Falsified by +one run against either. + +**P6 - The ledger catches and locates every fault in what crosses.** Every +client-fault run with a changed value is caught, and its first difference +is right. This includes the `final-obs` faults that leave the weights alone. +It finds no difference in any control or log-fault run. Falsified by one run +against either. + +**P7 - Between them, the ledger and the record catch every silent fault.** +Every client- and log-fault run with a changed value is caught by one of +them. Falsified by one that neither catches. + +> Grounds: the fault pilot, and E54-E55. Hopper's terminations are most of +> its episode ends: that is why the `final-obs` faults are left out of P1, +> and why E56 adds `terminated:drop` and `terminated:as-trunc`. + +**Reported, not predicted:** +- the strict check at every dose, and its false alarms on seeds 10-19; +- the `final-obs` faults' weights, at each dose; +- every run's final return and wall clock. diff --git a/experiments/e56-hopper-faults/faulty_client.py b/experiments/e56-hopper-faults/faulty_client.py new file mode 100644 index 0000000..c2076cc --- /dev/null +++ b/experiments/e56-hopper-faults/faulty_client.py @@ -0,0 +1,442 @@ +"""E56's env client: E55's faulty_client.py, plus two faults in terminations. + +Hopper ends an episode when it falls, which Pendulum and HalfCheetah never do. Two +faults touch those ends: + terminated:drop a termination is not sent: the client resets, the trainer + sees the episode go on + terminated:as-trunc a termination is sent as a time limit, so the trainer + bootstraps from a state the episode cannot leave +Everything below is E55's, unchanged. + +E55's docstring: + +E55's env client: E54's faulty_client.py, plus a step ledger at the environment. + +--ledger writes, for every env, what that environment itself took and gave +at each of its steps: the observation it had given before the step, the +action it was handed, and the reward, flags and observation it returned. +The ledger is a gymnasium wrapper around each environment, outside the +client's own code, so a fault in the client's encoding does not reach it. +Everything below is E54's, unchanged. + +E54's docstring: + +E54's env client: E50's gym_client.py, with one fault injected at the boundary. + + python faulty_client.py --port 8854 --seed 0 --fault reward:stale --dose 0.01 \ + --record runs/.../env_record.csv + +With --fault none it sends exactly what E50's client sent. Otherwise it +changes one field of what crosses the wire, with one operator, in a share of +the cells (vector step, env) where that field crosses. The environments +themselves are untouched, and --record writes each episode's return and +length as the environments produced them, before any fault: the record a +trainer's log can be checked against. + +Fields and operators. Each field takes the operators that make sense for it: + obs the observation in an infer (what the policy acts on) + action the action the client applies (as it decodes the reply) + reward the reward in a feedback + final-obs the observation an episode ended on, in its feedback (SB3 + bootstraps from it at a time limit) + zero the value replaced by zeros (a default filled in) + stale the value from the step before (a buffer reused) + swap the value from the next slot, (i + 1) mod n (a slot mixed up) + f16 the value rounded through float16 (a lossy encoding) + clip (action only) clipped to half its range: [-1, 1] for Pendulum's + [-2, 2] (a client that assumes another range) + terminated:spurious sent true where the episode did not end + truncated:drop a time limit is not sent: the client resets, the trainer + sees the episode go on + truncated:as-term a time limit is sent as a termination + step:fill the env is not stepped, and its feedback is filled in: + reward 0, the same observation, no episode end +(log:drop-first and log:short are the trainer's log's, in train.py.) + +Faults the bridge rejects, at one cell; the run is expected to fail loudly: + indices:reorder a feedback's rows, env_indices included, in reverse order + reward:short-array a feedback with one reward too few + +Controls, which change nothing training receives: + none, delay-1ms (sleep 1 ms before each feedback), wire-float64 + (observations sent as float64; the values are Pendulum's float32s). + +Doses: "one" is a single cell: in env 0, the first eligible one at or after +vector step 3,250 (no episode ends there) whose value the operator changes; a number p is each eligible cell with probability p, drawn +from a generator seeded 54 whatever the training seed, so every seed gets the +same cells. --record's sibling fault.json counts the cells whose value the +fault actually changed. +""" + +from __future__ import annotations + +import argparse +import csv +import json +import pathlib +import time + +import gymnasium as gym +import numpy as np +import websockets.exceptions +import websockets.sync.client + +from plugrl_protocol import msgpack_numpy + +STOP_REASON = "plugrl-server-stop" +CONTROLS = ("none", "delay-1ms", "wire-float64") +VALUE_OPS = ("zero", "stale", "swap", "f16") +SILENT = ( + tuple(f"obs:{op}" for op in VALUE_OPS) + + tuple(f"action:{op}" for op in VALUE_OPS + ("clip",)) + + tuple(f"reward:{op}" for op in VALUE_OPS) + + tuple(f"final-obs:{op}" for op in VALUE_OPS) + + ("terminated:spurious", "truncated:drop", "truncated:as-term", "step:fill") + + ("terminated:drop", "terminated:as-trunc") +) +LOUD = ("indices:reorder", "reward:short-array") +FAULTS = CONTROLS + SILENT + LOUD +ONE_STEP = 3_249 # 0-based: the 3,250th vector step, not an episode's last + + +def observation(obs: np.ndarray, fault: str) -> dict: + if fault == "wire-float64": + obs = obs.astype(np.float64) + return {"images": {}, "states": {"obs": obs}, "text": "gym"} + + +class LedgerEnv(gym.Wrapper): + """Records what the environment took and gave, step by step, as float32.""" + + def __init__(self, env) -> None: + super().__init__(env) + self.obs_in, self.action, self.reward = [], [], [] + self.terminated, self.truncated, self.obs_out = [], [], [] + self.current = None + + def reset(self, **kwargs): + obs, info = self.env.reset(**kwargs) + self.current = np.asarray(obs, dtype=np.float32).copy() + return obs, info + + def step(self, action): + obs, reward, terminated, truncated, info = self.env.step(action) + out = np.asarray(obs, dtype=np.float32).copy() + self.obs_in.append(self.current) + self.action.append(np.asarray(action, dtype=np.float32).copy()) + self.reward.append(np.float32(reward)) + self.terminated.append(bool(terminated)) + self.truncated.append(bool(truncated)) + self.obs_out.append(out) + self.current = out + return obs, reward, terminated, truncated, info + + def arrays(self, i: int) -> dict: + return { + f"obs_in{i}": np.stack(self.obs_in) + if self.obs_in + else np.zeros((0, 1), np.float32), + f"action{i}": np.stack(self.action) + if self.action + else np.zeros((0, 1), np.float32), + f"reward{i}": np.asarray(self.reward, dtype=np.float32), + f"terminated{i}": np.asarray(self.terminated, dtype=np.bool_), + f"truncated{i}": np.asarray(self.truncated, dtype=np.bool_), + f"obs_out{i}": np.stack(self.obs_out) + if self.obs_out + else np.zeros((0, 1), np.float32), + } + + +def connect(uri: str, deadline: float): + while True: + try: + return websockets.sync.client.connect( + uri, compression=None, max_size=None, open_timeout=10 + ) + except (OSError, websockets.exceptions.InvalidHandshake): + if time.monotonic() > deadline: + raise + time.sleep(0.1) + + +class Selector: + """Which cells a fault hits: the same ones for every training seed.""" + + def __init__(self, n: int, dose: str) -> None: + self.n = n + self.dose = dose + self.rng = np.random.default_rng(54) + self.one_done = False + self.hit_now = False + self.u = np.ones(n) + + def draw(self) -> None: + self.u = self.rng.random(self.n) # one draw per vector step, always + self.hit_now = False + + def hits(self, step: int, eligible: np.ndarray) -> np.ndarray: + if self.dose == "one": + out = np.zeros(self.n, dtype=np.bool_) + if not self.one_done and step >= ONE_STEP and eligible[0]: + out[0] = True + self.one_done = True + self.hit_now = True + return out + return eligible & (self.u < float(self.dose)) + + +def apply( + op: str, + values: np.ndarray, + hit: np.ndarray, + previous: np.ndarray, + bound: float = 1.0, +) -> np.ndarray: + """Return values with the operator applied in the hit rows.""" + out = values.copy() + if not hit.any(): + return out + if op == "zero": + out[hit] = 0 + elif op == "stale": + out[hit] = previous[hit] + elif op == "swap": + out[hit] = np.roll(values, -1, axis=0)[hit] + elif op == "f16": + out[hit] = values[hit].astype(np.float16).astype(values.dtype) + elif op == "clip": + out[hit] = np.clip(values[hit], -bound / 2, bound / 2) + else: + raise ValueError(op) + return out + + +def changed(new: np.ndarray, old: np.ndarray) -> np.ndarray: + """The rows (envs) in which new differs from old.""" + diff = new != old + return diff.reshape(len(diff), -1).any(axis=1) + + +def main() -> int: + p = argparse.ArgumentParser(description=__doc__) + p.add_argument("--host", default="127.0.0.1") + p.add_argument("--port", type=int, default=8854) + p.add_argument("--num-envs", type=int, default=16) + p.add_argument("--seed", type=int, default=0) + p.add_argument("--env-id", default="Pendulum-v1") + p.add_argument("--action-high", type=float, default=2.0) + p.add_argument("--fault", choices=FAULTS, default="none") + p.add_argument("--dose", default="1.0") + p.add_argument("--record", required=True) + p.add_argument("--ledger", required=True) + a = p.parse_args() + + n, fault = a.num_envs, a.fault + field, _, op = fault.partition(":") + dose = "one" if fault in LOUD else a.dose + select = Selector(n, dose) + envs = [LedgerEnv(gym.make(a.env_id)) for _ in range(n)] + obs = np.stack([env.reset(seed=a.seed + i)[0] for i, env in enumerate(envs)]) + obs = obs.astype(np.float32) + indices = np.arange(n, dtype=np.int64) + step_ids = np.zeros(n, dtype=np.int64) + packer = msgpack_numpy.Packer() + steps = 0 + cells = 0 + every = np.ones(n, dtype=np.bool_) + first: list[int] | None = None # the first changed cell, [vector step, env] + + def tally(rows: np.ndarray) -> None: + nonlocal cells, first + if select.hit_now and not rows.any(): + select.one_done = ( + False # "one": that cell's value did not change; try the next + ) + if rows.any(): + cells += int(rows.sum()) + if first is None: + first = [steps, int(np.flatnonzero(rows)[0])] + + # What the environments produced, before any fault. + ep_return = np.zeros(n, dtype=np.float64) + ep_length = np.zeros(n, dtype=np.int64) + episodes = np.zeros(n, dtype=np.int64) + record_path = pathlib.Path(a.record) + record = open(record_path, "w", encoding="utf-8", newline="") + writer = csv.writer(record) + writer.writerow(["step", "env", "episode", "return", "length"]) + + prev_obs = obs.copy() + prev_actions = None + prev_rewards = np.zeros(n, dtype=np.float32) + + def finish(reason: str) -> int: + record.close() + ledger = {} + for i, env in enumerate(envs): + ledger.update(env.arrays(i)) + np.savez_compressed(a.ledger, **ledger) + (record_path.parent / "fault.json").write_text( + json.dumps( + { + "fault": fault, + "dose": dose, + "cells": cells, + "first": first, + "steps": steps, + } + ) + + "\n" + ) + print( + f"closed after {steps} steps: {reason!r}; {cells} cells changed", flush=True + ) + return 0 if reason == STOP_REASON else 1 + + ws = connect(f"ws://{a.host}:{a.port}", time.monotonic() + 120) + with ws: + msgpack_numpy.unpackb(ws.recv()) # the metadata; nothing in it is needed + try: + while True: + select.draw() + sent = obs + if field == "obs": + sent = apply(op, obs, select.hits(steps, every), prev_obs) + tally(changed(sent, obs)) + ws.send( + packer.pack( + { + "message_type": "infer", + "data": observation(sent, fault), + "env_indices": indices, + "step_ids": step_ids.copy(), + } + ) + ) + prev_obs = obs.copy() + reply = msgpack_numpy.unpackb(ws.recv()) + received = np.asarray(reply["data"]["action"])[0] # [H, n, d] -> [n, d] + actions = received + if field == "action": + previous = ( + np.zeros_like(received) + if prev_actions is None + else prev_actions + ) + actions = apply( + op, received, select.hits(steps, every), previous, a.action_high + ) + tally(changed(actions, received)) + prev_actions = received.copy() + skip = np.zeros(n, dtype=np.bool_) + if field == "step": + skip = select.hits(steps, every) + tally(skip) + ended = np.empty_like(obs) + after = np.empty_like(obs) + rewards = np.zeros(n, dtype=np.float32) + terminated = np.zeros(n, dtype=np.bool_) + truncated = np.zeros(n, dtype=np.bool_) + sent_ids = step_ids.copy() + for i, env in enumerate(envs): + if skip[i]: + ended[i] = obs[i] + after[i] = obs[i] + step_ids[i] += 1 + continue + o, r, te, tr, _ = env.step(actions[i]) + ended[i] = o + rewards[i], terminated[i], truncated[i] = r, te, tr + ep_return[i] += float(rewards[i]) + ep_length[i] += 1 + if te or tr: + episodes[i] += 1 + writer.writerow( + [ + steps + 1, + i, + episodes[i], + f"{ep_return[i]:.6f}", + ep_length[i], + ] + ) + ep_return[i] = 0.0 + ep_length[i] = 0 + after[i] = env.reset()[0] + step_ids[i] = 0 + else: + after[i] = o + step_ids[i] += 1 + true_rewards = rewards + ends = terminated | truncated + final = ended + if field == "reward" and op in VALUE_OPS: + rewards = apply( + op, true_rewards, select.hits(steps, every), prev_rewards + ) + tally(changed(rewards, true_rewards)) + elif field == "final-obs": + final = apply(op, ended, select.hits(steps, ends), obs) + tally(changed(final, ended)) + elif fault == "terminated:spurious": + hit = select.hits(steps, ~terminated) + terminated = terminated | hit + tally(hit) + elif fault == "truncated:drop": + hit = select.hits(steps, truncated) + truncated = truncated & ~hit + tally(hit) + elif fault == "truncated:as-term": + hit = select.hits(steps, truncated) + terminated = terminated | hit + truncated = truncated & ~hit + tally(hit) + elif fault == "terminated:drop": + hit = select.hits(steps, terminated) + terminated = terminated & ~hit + tally(hit) + elif fault == "terminated:as-trunc": + hit = select.hits(steps, terminated) + terminated = terminated & ~hit + truncated = truncated | hit + tally(hit) + prev_rewards = true_rewards.copy() + if fault == "delay-1ms": + time.sleep(0.001) + order = indices + fields = { + "obs": observation(final, fault), + "rewards": rewards, + "terminated": terminated, + "truncated": truncated, + "info": {}, + } + if fault in LOUD and select.hits(steps, every)[0]: + tally(indices == 0) + if fault == "indices:reorder": + order = indices[::-1].copy() + fields["obs"] = observation(final[::-1].copy(), fault) + for key in ("rewards", "terminated", "truncated"): + fields[key] = fields[key][::-1].copy() + sent_ids = sent_ids[::-1].copy() + else: + fields["rewards"] = rewards[:-1].copy() + ws.send( + packer.pack( + { + "message_type": "feedback", + "env_indices": order, + "step_ids": sent_ids, + "data": fields, + } + ) + ) + obs = after + steps += 1 + except websockets.exceptions.ConnectionClosed as closed: + return finish(closed.rcvd.reason if closed.rcvd is not None else "") + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/experiments/e56-hopper-faults/jobs.py b/experiments/e56-hopper-faults/jobs.py new file mode 100644 index 0000000..533bf9e --- /dev/null +++ b/experiments/e56-hopper-faults/jobs.py @@ -0,0 +1,43 @@ +"""E56's runs, one line each: env fault dose seed trace. + + python jobs.py registered > jobs.txt + python jobs.py pilot > jobs.txt + +registered (PROTOCOL.md): Hopper, seeds 0-2, every run traced and ledgered: +the 3 controls, and the 23 client faults (E54's 21 and E56's two +termination faults) and 2 log faults at doses one, 0.01 and 1.0. Seeds +10-19 fault-free, for the strict check's band. pilot: seed 9, the controls +and every fault at one cell. +""" + +from __future__ import annotations + +import sys + +from faulty_client import CONTROLS, SILENT + +LOG = ("log:drop-first", "log:short") +DOSES = ("one", "0.01", "1.0") + + +def hopper(seed: int, doses=DOSES) -> list[str]: + jobs = [f"hopper {c} 1.0 {seed} trace" for c in CONTROLS] + jobs += [f"hopper {f} {d} {seed} trace" for f in SILENT + LOG for d in doses] + return jobs + + +def main() -> int: + which = sys.argv[1] + if which == "registered": + jobs = [j for seed in (0, 1, 2) for j in hopper(seed)] + jobs += [f"hopper none 1.0 {s} notrace" for s in range(10, 20)] + elif which == "pilot": + jobs = hopper(9, doses=("one",)) + else: + raise SystemExit(f"unknown: {which}") + print("\n".join(jobs)) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/experiments/e56-hopper-faults/ledger.py b/experiments/e56-hopper-faults/ledger.py new file mode 100644 index 0000000..113c5c7 --- /dev/null +++ b/experiments/e56-hopper-faults/ledger.py @@ -0,0 +1,190 @@ +"""E56: E55's ledger.py, judging one run at a time. + + python ledger.py --run results/hopper/obs__stale/one/seed0 # writes its ledger.json + python ledger.py results # writes results/ledger.csv + +Hopper's traces are too large to keep, so run.sh judges each run as it ends, +keeps ledger.json, and deletes trace.npz and ledger.npz. The summary reads +ledger.json where there is one. Two faults are E56's: terminated:drop shows +in the episode end, terminated:as-trunc in the time limit. + +E55's docstring: + +E55: the trainer's view of each step against the environment's own ledger. + + python ledger.py results # writes results/ledger.csv + +For each run with both trace.npz (what the trainer sent and received, step by +step, from train.py --trace) and ledger.npz (what each environment took and +gave, from faulty_client.py --ledger), and for each env, the two step +sequences are compared in order, value for value: +- obs: the observation the trainer acted on, against the one the environment + had given before that step; +- action: the action the trainer sent, against the one the environment was + handed; +- reward: the reward the trainer got, against the one the environment + returned; +- end: whether the trainer saw the episode end, against terminated or + truncated; +- limit: whether the trainer saw a time limit (SB3's TimeLimit.truncated), + against truncated and not terminated; +- final: at an episode end, the observation the trainer got as the final one, + against the one the environment returned; +- steps: the number of steps on each side. +No fault-free run is needed, and the two sides need not be on one machine. + +A run is caught if anything differs. The first difference is (step, env, +field), the lowest step first, then the lowest env, then the order above. It +is right if that step and env are the fault's first changed cell +(fault.json), and the field is the one the fault touches. +""" + +from __future__ import annotations + +import csv +import json +import pathlib +import sys + +import numpy as np + +FIELDS = ("obs", "action", "reward", "end", "limit", "final", "steps") +EXPECTED = { + "obs": ("obs",), + "action": ("action",), + "reward": ("reward",), + "final-obs": ("final",), + "terminated:spurious": ("end", "limit"), + "truncated:drop": ("end",), + "truncated:as-term": ("limit",), + "terminated:drop": ("end",), + "terminated:as-trunc": ("limit",), + "step:fill": FIELDS, +} + + +def load(path: pathlib.Path) -> dict: + with np.load(path) as z: # an NpzFile decompresses on every access + return {k: z[k] for k in z.files} + + +def differences(trace: dict, ledger: dict) -> tuple[int, tuple[int, int, str] | None]: + """(cells that differ, first difference as (step, env, field)).""" + steps, n = trace["rewards"].shape + acted = np.concatenate([trace["first_obs"][None], trace["nexts"][:-1]]) + count, first = 0, None + for i in range(n): + k = len(ledger[f"reward{i}"]) + m = min(k, steps) + if m == 0: # one side has no steps at all (every step skipped, say) + count += abs(k - steps) + if k != steps and (first is None or (0, i) < (first[0], first[1])): + first = (0, i, "steps") + continue + te, tr = ledger[f"terminated{i}"][:m], ledger[f"truncated{i}"][:m] + ends = trace["ends"][:m, i] + per_field = { + "obs": (acted[:m, i] != ledger[f"obs_in{i}"][:m]) + .reshape(m, -1) + .any(axis=1), + "action": (trace["actions"][:m, i] != ledger[f"action{i}"][:m]) + .reshape(m, -1) + .any(axis=1), + "reward": trace["rewards"][:m, i] != ledger[f"reward{i}"][:m], + "end": ends != (te | tr), + "limit": trace["truncs"][:m, i] != (tr & ~te), + "final": ends + & (trace["finals"][:m, i] != ledger[f"obs_out{i}"][:m]) + .reshape(m, -1) + .any(axis=1), + } + bad = np.zeros(m, dtype=np.bool_) + for f in FIELDS[:-1]: + bad |= per_field[f] + count += int(bad.sum()) + abs(k - steps) + rows = np.flatnonzero(bad) + if len(rows): + t = int(rows[0]) + field = next(f for f in FIELDS[:-1] if per_field[f][t]) + here = (t, i, field) + elif k != steps: + here = (m, i, "steps") + else: + continue + if first is None or (here[0], here[1]) < (first[0], first[1]): + first = here + return count, first + + +def expected(fault: str) -> tuple[str, ...]: + return EXPECTED.get(fault, EXPECTED.get(fault.partition(":")[0], ())) + + +def judge(run: pathlib.Path, root: pathlib.Path) -> dict: + fault = run.parent.parent.name.replace("__", ":") + info = ( + json.loads((run / "fault.json").read_text()) + if (run / "fault.json").exists() + else {} + ) + result = json.loads((run / "result.json").read_text()) + cells = ( + result.get("log_cells") if fault.startswith("log:") else info.get("cells", 0) + ) + count, first = differences(load(run / "trace.npz"), load(run / "ledger.npz")) + injected = info.get("first") + if ( + fault.startswith("log:") + or fault in ("none", "delay-1ms", "wire-float64") + or not cells + ): + right = first is None # nothing that crossed should differ + else: + right = ( + first is not None + and injected is not None + and (first[0], first[1]) == (injected[0], injected[1]) + and first[2] in expected(fault) + ) + return dict( + run=str(run.relative_to(root)).replace("\\", "/"), + fault=fault, + dose=run.parent.name, + seed=run.name.removeprefix("seed"), + cells=cells, + caught=int(first is not None), + differing=count, + injected="" if injected is None else f"{injected[0]}/{injected[1]}", + found="" if first is None else f"{first[0]}/{first[1]} {first[2]}", + right=int(right), + ) + + +def main() -> int: + if len(sys.argv) > 2 and sys.argv[1] == "--run": + run = pathlib.Path(sys.argv[2]) + row = judge(run, run.parent.parent.parent.parent) + (run / "ledger.json").write_text(json.dumps(row) + "\n") + print(row) + return 0 + root = pathlib.Path(sys.argv[1]) if len(sys.argv) > 1 else pathlib.Path("results") + rows = [] + for res in sorted(root.glob("*/*/*/seed*/result.json")): + run = res.parent + if (run / "ledger.json").exists(): + rows.append(json.loads((run / "ledger.json").read_text())) + elif (run / "trace.npz").exists() and (run / "ledger.npz").exists(): + rows.append(judge(run, root)) + with open(root / "ledger.csv", "w", encoding="utf-8", newline="") as f: + w = csv.DictWriter(f, fieldnames=list(rows[0])) + w.writeheader() + w.writerows(rows) + wrong = [r for r in rows if not r["right"]] + print(f"{len(rows)} runs compared; right: {len(rows) - len(wrong)}") + for r in wrong: + print(" not right:", r) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/experiments/e56-hopper-faults/merge_runs.py b/experiments/e56-hopper-faults/merge_runs.py new file mode 100644 index 0000000..490ece7 --- /dev/null +++ b/experiments/e56-hopper-faults/merge_runs.py @@ -0,0 +1,47 @@ +"""E54: merge each run's result.json, fault.json and log tails into one file. + + python merge_runs.py results # writes results/runs.jsonl + +One line per run: its env, fault, dose and seed (from its directory), its +result.json and fault.json, and the last line of its client.log and +train.log. +""" + +from __future__ import annotations + +import json +import pathlib +import sys + + +def last_line(path: pathlib.Path) -> str: + if not path.exists(): + return "" + lines = path.read_text(encoding="utf-8", errors="replace").strip().splitlines() + return lines[-1] if lines else "" + + +def main() -> int: + root = pathlib.Path(sys.argv[1]) if len(sys.argv) > 1 else pathlib.Path("results") + out = [] + for res in sorted(root.glob("*/*/*/seed*/result.json")): + run = res.parent + line = { + "env": run.parent.parent.parent.name, + "fault": run.parent.parent.name.replace("__", ":"), + "dose": run.parent.name, + "seed": int(run.name.removeprefix("seed")), + "result": json.loads(res.read_text()), + } + if (run / "fault.json").exists(): + line["fault_json"] = json.loads((run / "fault.json").read_text()) + line["client_log"] = last_line(run / "client.log") + line["train_log"] = last_line(run / "train.log") + out.append(json.dumps(line, sort_keys=True)) + (root / "runs.jsonl").write_text("\n".join(out) + "\n", encoding="utf-8") + print(len(out), "runs") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/experiments/e56-hopper-faults/results/pilot/budget.txt b/experiments/e56-hopper-faults/results/pilot/budget.txt new file mode 100644 index 0000000..fa8e410 --- /dev/null +++ b/experiments/e56-hopper-faults/results/pilot/budget.txt @@ -0,0 +1,11 @@ +E56 budget pilot, 2026-10-02 17:58-18:03, guangzhao, three runs at a time. +Hopper-v5, fault-free, 1,024,000 steps, SB3 defaults, 16 envs x 256 frames per rollout. +Columns: run, final weights (SHA-256 prefix), model.learn() seconds, episodes logged, +mean return of each tenth of the trainer's log (in order), last tenth minus first tenth. + +none, seed 9 2f370852 250.0 s 3210 episodes [19, 84, 204, 387, 868, 1537, 1732, 1740, 1991, 2035] gain 2016 +none, seed 9, traced+ledgered 2f370852 251.3 s 3210 episodes [19, 84, 204, 387, 868, 1537, 1732, 1740, 1991, 2035] gain 2016 +none, seed 10 d5a3ae29 251.3 s 3848 episodes [21, 130, 259, 451, 640, 736, 1005, 1476, 1696, 2173] gain 2169 + +Traced and ledgered run: peak memory of train.py 682 MB; trace.npz 55 MB, ledger.npz 97 MB. +Its ledger found no difference between the two sides. diff --git a/experiments/e56-hopper-faults/results/pilot/fault-ledger.csv b/experiments/e56-hopper-faults/results/pilot/fault-ledger.csv new file mode 100644 index 0000000..5f0e805 --- /dev/null +++ b/experiments/e56-hopper-faults/results/pilot/fault-ledger.csv @@ -0,0 +1,29 @@ +run,fault,dose,seed,cells,caught,differing,injected,found,right +hopper/action__clip/one/seed9,action:clip,one,9,1,1,1,3249/0,3249/0 action,1 +hopper/action__f16/one/seed9,action:f16,one,9,1,1,1,3249/0,3249/0 action,1 +hopper/action__stale/one/seed9,action:stale,one,9,1,1,1,3249/0,3249/0 action,1 +hopper/action__swap/one/seed9,action:swap,one,9,1,1,1,3249/0,3249/0 action,1 +hopper/action__zero/one/seed9,action:zero,one,9,1,1,1,3249/0,3249/0 action,1 +hopper/delay-1ms/1.0/seed9,delay-1ms,1.0,9,0,0,0,,,1 +hopper/final-obs__f16/one/seed9,final-obs:f16,one,9,1,1,1,3266/0,3266/0 final,1 +hopper/final-obs__stale/one/seed9,final-obs:stale,one,9,1,1,1,3266/0,3266/0 final,1 +hopper/final-obs__swap/one/seed9,final-obs:swap,one,9,1,1,1,3266/0,3266/0 final,1 +hopper/final-obs__zero/one/seed9,final-obs:zero,one,9,1,1,1,3266/0,3266/0 final,1 +hopper/log__drop-first/one/seed9,log:drop-first,one,9,1,0,0,,,1 +hopper/log__short/one/seed9,log:short,one,9,1,0,0,,,1 +hopper/none/1.0/seed9,none,1.0,9,0,0,0,,,1 +hopper/obs__f16/one/seed9,obs:f16,one,9,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__stale/one/seed9,obs:stale,one,9,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__swap/one/seed9,obs:swap,one,9,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__zero/one/seed9,obs:zero,one,9,1,1,1,3249/0,3249/0 obs,1 +hopper/reward__f16/one/seed9,reward:f16,one,9,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__stale/one/seed9,reward:stale,one,9,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__swap/one/seed9,reward:swap,one,9,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__zero/one/seed9,reward:zero,one,9,1,1,1,3249/0,3249/0 reward,1 +hopper/step__fill/one/seed9,step:fill,one,9,1,1,60751,3249/0,3249/0 action,1 +hopper/terminated__as-trunc/one/seed9,terminated:as-trunc,one,9,1,1,1,3266/0,3266/0 limit,1 +hopper/terminated__drop/one/seed9,terminated:drop,one,9,1,1,1,3266/0,3266/0 end,1 +hopper/terminated__spurious/one/seed9,terminated:spurious,one,9,1,1,1,3249/0,3249/0 end,1 +hopper/truncated__as-term/one/seed9,truncated:as-term,one,9,1,1,1,12259/0,12259/0 limit,1 +hopper/truncated__drop/one/seed9,truncated:drop,one,9,1,1,1,12259/0,12259/0 end,1 +hopper/wire-float64/1.0/seed9,wire-float64,1.0,9,0,0,0,,,1 diff --git a/experiments/e56-hopper-faults/results/pilot/fault-pilot.txt b/experiments/e56-hopper-faults/results/pilot/fault-pilot.txt new file mode 100644 index 0000000..2f29fea --- /dev/null +++ b/experiments/e56-hopper-faults/results/pilot/fault-pilot.txt @@ -0,0 +1,35 @@ +{'run': 'hopper/none/1.0/seed9', 'fault': 'none', 'dose': '1.0', 'seed': '9', 'cells': 0, 'caught': 0, 'differing': 0, 'injected': '', 'found': '', 'right': 1} + 18:20:59 up 28 days, 7:22, 1 user, load average: 4.45, 7.94, 6.58 +E56_DONE +0 +28 runs compared; right: 28 +hopper wire-float64 1.0 0 0/1 0/1 - 0/1 0/1 0/1 +hopper obs:zero one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper obs:stale one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper obs:swap one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper obs:f16 one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper action:zero one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper action:stale one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper action:swap one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper action:f16 one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper action:clip one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper reward:zero one 1 0/1 0/1 - 1/1 1/1 0/1 +hopper reward:stale one 1 0/1 0/1 - 1/1 1/1 0/1 +hopper reward:swap one 1 0/1 0/1 - 1/1 1/1 0/1 +hopper reward:f16 one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper final-obs:zero one 1 0/1 0/1 - 0/1 0/1 0/1 +hopper final-obs:stale one 1 0/1 0/1 - 0/1 0/1 0/1 +hopper final-obs:swap one 1 0/1 0/1 - 0/1 0/1 0/1 +hopper final-obs:f16 one 1 0/1 0/1 - 0/1 0/1 0/1 +hopper terminated:spurious one 1 0/1 0/1 - 1/1 1/1 0/1 +hopper truncated:drop one 1 0/1 0/1 - 1/1 1/1 0/1 +hopper truncated:as-term one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper step:fill one 1 0/1 0/1 - 1/1 1/1 0/1 +hopper terminated:drop one 1 0/1 0/1 - 1/1 1/1 0/1 +hopper terminated:as-trunc one 1 0/1 0/1 - 1/1 0/1 0/1 +hopper log:drop-first one 1 0/1 0/1 - 0/1 1/1 1/1 +hopper log:short one 1 0/1 0/1 - 0/1 1/1 1/1 + +share of runs caught, by dose (runs with a changed cell; either = weights or record) + +incomplete without an error: none diff --git a/experiments/e56-hopper-faults/results/pilot/fault-runs.csv b/experiments/e56-hopper-faults/results/pilot/fault-runs.csv new file mode 100644 index 0000000..18b5445 --- /dev/null +++ b/experiments/e56-hopper-faults/results/pilot/fault-runs.csv @@ -0,0 +1,29 @@ +env,fault,dose,seed,cells,raises,rule,strict,weights,record,bridge,gain,last,episodes,sha,learn_s,raised,complete +hopper,action:clip,one,9,1,0,0,,1,0,0,1697.3,1716.6,3399,3633506a,284.292,,1 +hopper,action:f16,one,9,1,0,0,,1,0,0,1916.5,1935.5,3342,7bee812e,284.431,,1 +hopper,action:stale,one,9,1,0,0,,1,0,0,2012.1,2031.2,3190,491ba7a3,282.043,,1 +hopper,action:swap,one,9,1,0,0,,1,0,0,1832.3,1852.2,3642,5f13ad70,281.285,,1 +hopper,action:zero,one,9,1,0,0,,1,0,0,2155.1,2174.4,3402,a78814e1,280.791,,1 +hopper,delay-1ms,1.0,9,0,0,0,,0,0,0,2016.2,2035.3,3210,2f370852,381.097,,1 +hopper,final-obs:f16,one,9,1,0,0,,0,0,0,2016.2,2035.3,3210,2f370852,284.465,,1 +hopper,final-obs:stale,one,9,1,0,0,,0,0,0,2016.2,2035.3,3210,2f370852,284.665,,1 +hopper,final-obs:swap,one,9,1,0,0,,0,0,0,2016.2,2035.3,3210,2f370852,285.769,,1 +hopper,final-obs:zero,one,9,1,0,0,,0,0,0,2016.2,2035.3,3210,2f370852,285.531,,1 +hopper,log:drop-first,one,9,1,0,0,,0,1,1,2016.3,2035.3,3210,2f370852,273.237,,1 +hopper,log:short,one,9,1,0,0,,0,1,1,2016.2,2035.3,3210,2f370852,273.952,,1 +hopper,none,1.0,9,0,0,0,,0,0,0,2016.2,2035.3,3210,2f370852,280.197,,1 +hopper,obs:f16,one,9,1,0,0,,1,0,0,1728.7,1748.0,3417,5c71d38d,279.335,,1 +hopper,obs:stale,one,9,1,0,0,,1,0,0,1907.3,1926.2,3371,442b8992,281.449,,1 +hopper,obs:swap,one,9,1,0,0,,1,0,0,1821.0,1840.1,3212,cb518738,283.658,,1 +hopper,obs:zero,one,9,1,0,0,,1,0,0,2271.5,2290.5,3352,50d6d95e,280.648,,1 +hopper,reward:f16,one,9,1,0,0,,1,0,0,2495.3,2513.9,3134,fd40d6ec,285.888,,1 +hopper,reward:stale,one,9,1,0,0,,1,1,0,1738.3,1757.3,3340,469f914d,285.35,,1 +hopper,reward:swap,one,9,1,0,0,,1,1,0,1984.2,2003.1,3323,ae0c0fd4,284.278,,1 +hopper,reward:zero,one,9,1,0,0,,1,1,0,2123.9,2142.9,3260,fe544539,286.826,,1 +hopper,step:fill,one,9,1,0,0,,1,1,0,1628.2,1648.0,3501,41b2991b,274.156,,1 +hopper,terminated:as-trunc,one,9,1,0,0,,1,0,0,2078.3,2097.2,3329,71ffd9c8,273.543,,1 +hopper,terminated:drop,one,9,1,0,0,,1,1,0,1803.9,1823.1,3424,d42e5374,274.397,,1 +hopper,terminated:spurious,one,9,1,0,0,,1,1,0,1975.3,1994.6,3447,64fdf2d7,276.329,,1 +hopper,truncated:as-term,one,9,1,0,0,,1,0,0,1796.0,1815.1,3199,69ed3eef,273.775,,1 +hopper,truncated:drop,one,9,1,0,0,,1,1,0,1955.2,1974.3,3166,be6d553d,263.975,,1 +hopper,wire-float64,1.0,9,0,0,0,,0,0,0,2016.2,2035.3,3210,2f370852,280.266,,1 diff --git a/experiments/e56-hopper-faults/run.sh b/experiments/e56-hopper-faults/run.sh new file mode 100644 index 0000000..6ae0a19 --- /dev/null +++ b/experiments/e56-hopper-faults/run.sh @@ -0,0 +1,49 @@ +#!/usr/bin/env bash +# E56's runs on guangzhao, W at a time, each worker on its own port. +# bash run.sh results registered [W] # PROTOCOL.md; W defaults to 10 +# bash run.sh pilot pilot [W] +# Writes DIR////seed/, with train.log in it. +# A traced run is judged by ledger.py as soon as it ends (ledger.json), and +# its trace.npz and ledger.npz are deleted: Hopper's are too large to keep. +set -uo pipefail +export PATH="$HOME/.local/bin:$PATH" OMP_NUM_THREADS=1 +PY="$HOME/zuogou/plugrl/bridges-venv/bin/python" +cd "$(dirname "$0")" +DIR="${1:?results dir}"; WHICH="${2:?registered or pilot}"; W="${3:-10}" +mkdir -p "$DIR" +"$PY" jobs.py "$WHICH" > "$DIR/jobs.txt" +uptime | tee "$DIR/load.txt" +(cd "$HOME/zuogou/plugrl/plugrl-bridges" && find src -name "*.py" | sort | xargs sha256sum) > "$DIR/bridges-src.sha256" +sha256sum train.py faulty_client.py jobs.py ledger.py > "$DIR/e56-src.sha256" +echo "$(wc -l < "$DIR/jobs.txt") runs, $W at a time" + +worker() { + local w=$1 port=$((8900 + $1)) + # Every W-th job, starting at the w-th. + awk -v w="$w" -v W="$W" 'NR % W == w' "$DIR/jobs.txt" | while read -r env fault dose seed trace; do + # A process left on the port would take the next run's client (E53). + if ! "$PY" -c "import socket,sys; s=socket.socket(); sys.exit(0 if s.connect_ex(('127.0.0.1',$port)) else 1)"; then + echo "worker $w: port $port in use; stopping"; return 1 + fi + out="$DIR/$env/${fault//:/__}/$dose/seed$seed" + mkdir -p "$out" + flag=""; [ "$trace" = trace ] && flag="--trace" + "$PY" train.py --env "$env" --fault "$fault" --dose "$dose" --seed "$seed" \ + --out "$out" --port "$port" $flag > "$out/train.log" 2>&1 || echo "worker $w: train.py exited $? on $out" + if [ "$trace" = trace ]; then + if "$PY" ledger.py --run "$out" > "$out/ledger.log" 2>&1; then + rm -f "$out/trace.npz" "$out/ledger.npz" + else + echo "worker $w: ledger.py failed on $out; kept its npz" + fi + fi + done + echo "worker $w done" +} + +for w in $(seq 0 $((W - 1))); do + worker "$w" & +done +wait +uptime | tee -a "$DIR/load.txt" +echo E56_DONE diff --git a/experiments/e56-hopper-faults/summarise.py b/experiments/e56-hopper-faults/summarise.py new file mode 100644 index 0000000..bdec07c --- /dev/null +++ b/experiments/e56-hopper-faults/summarise.py @@ -0,0 +1,278 @@ +"""E54: what each check says about each fault, at each dose. + + python summarise.py results # registered: writes runs.csv, by_dose.csv + python summarise.py pilot + +Runs are DIR////seed/. For each, six checks, +each "catches" the fault or not: +- raises: the run stopped on an error (the bridge rejected a message). +- rule: the trainer's log (monitor.csv) fails the env's status rule, E44's for + Pendulum and E43's for HalfCheetah. Batches are 16 consecutive episodes. + Pendulum: batches 20 to the last at least 500 above batches 1-2. + HalfCheetah: batches 21-25 at least 200 above batch 1. +- strict: the mean of those last batches, in the trainer's log, is more than + 3 standard deviations from the mean of the fault-free runs at seeds 10-19. +- weights: the final weights' SHA-256 differs from the fault-free run's at the + same seed, on the same machine. +- record: the trainer's log disagrees with the client's record of what the + environments produced (env_record.csv, in order of the step each episode + ended on, then env): returns to 1e-4 relative plus 0.01, lengths exactly. +- bridge: the trainer's log disagrees with the bridge's own log + (episodes.csv), which counts where the rewards arrive, on the trainer's side + of the wire. +A fault whose run changed no cell (fault.json; for the log faults, +result.json's log_cells) is reported, and left out of the shares caught. +""" + +from __future__ import annotations + +import csv +import json +import pathlib +import statistics +import sys +from collections import defaultdict + +HERE = pathlib.Path(__file__).resolve().parent +sys.path.insert(0, str(HERE)) +from faulty_client import CONTROLS, LOUD, SILENT # noqa: E402 + +LOG = ("log:drop-first", "log:short") +FAULTS = CONTROLS + SILENT + LOG + LOUD +CHECKS = ("raises", "rule", "strict", "weights", "record", "bridge") +STEPS = {"pendulum": 102_400, "halfcheetah": 409_600, "hopper": 1_024_000} +# E50's fault-free bridge runs on guangzhao (seed 9: E50's pilot). +E50_WEIGHTS = { + ("pendulum", 0): "ec5b8226", + ("pendulum", 1): "062e92e3", + ("pendulum", 2): "3a8d968f", + ("pendulum", 9): "3721266c", + ("halfcheetah", 0): "8261c03a", + ("halfcheetah", 1): "86564694", + ("halfcheetah", 2): "65cc8843", + ("halfcheetah", 9): "0260ca9d", +} +BAND_SEEDS = range(10, 20) + + +def read_csv(path: pathlib.Path, skip_header: bool = False) -> list[dict]: + with open(path, encoding="utf-8", newline="") as f: + if skip_header: + next(f) # VecMonitor's JSON header + return list(csv.DictReader(f)) + + +def monitor(run: pathlib.Path) -> list[tuple[float, int]]: + return [(float(r["r"]), int(r["l"])) for r in read_csv(run / "monitor.csv", True)] + + +def ordered(rows: list[dict], key: str) -> list[tuple[float, int]]: + rows.sort(key=lambda r: (int(r["step"]), int(r[key]))) + return [(float(r["return"]), int(r["length"])) for r in rows] + + +def agree(log, truth) -> bool: + return len(log) == len(truth) and all( + abs(r - t) <= 1e-4 * max(1.0, abs(t)) + 0.01 and n == m + for (r, n), (t, m) in zip(log, truth) + ) + + +def window(env: str, episodes) -> tuple[float, float] | None: + """(gain, last-window mean) by the env's status rule, or None if too short.""" + returns = [r for r, _ in episodes] + batches = [ + statistics.mean(returns[i : i + 16]) for i in range(0, len(returns) - 15, 16) + ] + if env == "hopper": + # Hopper's episodes vary in length, so its windows count episodes: the + # first and the last tenth of the trainer's log, at least 20 episodes. + if len(returns) < 20: + return None + k = len(returns) // 10 + first, last = statistics.mean(returns[:k]), statistics.mean(returns[-k:]) + return last - first, last + if env == "pendulum": + if len(batches) < 20: + return None + first, last = statistics.mean(batches[0:2]), statistics.mean(batches[19:]) + else: + if len(batches) < 25: + return None + first, last = batches[0], statistics.mean(batches[20:25]) + return last - first, last + + +def bar(env: str) -> float: + if env == "hopper": + return 1000.0 # E56's, fixed after its budget pilot (PROTOCOL.md) + return 500.0 if env == "pendulum" else 200.0 + + +def runs(root: pathlib.Path): + for res in sorted(root.glob("*/*/*/seed*/result.json")): + run = res.parent + env = run.parent.parent.parent.name + fault = run.parent.parent.name.replace("__", ":") + yield env, fault, run.parent.name, int(run.name.removeprefix("seed")), run + + +def main() -> int: + root = pathlib.Path(sys.argv[1]) if len(sys.argv) > 1 else HERE / "results" + table = {} + for env, fault, dose, seed, run in runs(root): + res = json.loads((run / "result.json").read_text()) + info = run / "fault.json" + cells = json.loads(info.read_text())["cells"] if info.exists() else None + if fault in LOG: + cells = res.get("log_cells") + if fault in CONTROLS: + cells = 0 + log = monitor(run) + w = window(env, log) + table[env, fault, dose, seed] = dict( + raised=res.get("raised", ""), + complete=res["steps"] == STEPS[env] and res.get("client_rc") == 0, + sha=res["weights_sha256"], + gain=None if w is None else w[0], + last=None if w is None else w[1], + record=agree(log, ordered(read_csv(run / "env_record.csv"), "env")), + bridge=agree(log, ordered(read_csv(run / "episodes.csv"), "slot")), + cells=cells, + episodes=len(log), + learn_s=res["learn_s"], + ) + + rows = [] + for (env, fault, dose, seed), t in sorted(table.items()): + clean = table.get((env, "none", "1.0", seed)) + band = [table[env, "none", "1.0", s]["last"] for s in BAND_SEEDS + if (env, "none", "1.0", s) in table] # fmt: skip + mu = statistics.mean(band) if len(band) >= 2 else None + sd = statistics.stdev(band) if len(band) >= 2 else None + raised = bool(t["raised"]) + caught = dict( + raises=raised, + rule=not raised and (t["gain"] is None or t["gain"] < bar(env)), + strict=None + if mu is None or raised + else (t["last"] is None or abs(t["last"] - mu) > 3 * sd), + weights=None if clean is None or raised else t["sha"] != clean["sha"], + record=not raised and not t["record"], + bridge=not raised and not t["bridge"], + ) + rows.append( + dict( + env=env, + fault=fault, + dose=dose, + seed=seed, + cells=t["cells"], + **{k: "" if v is None else int(v) for k, v in caught.items()}, + gain="" if t["gain"] is None else round(t["gain"], 1), + last="" if t["last"] is None else round(t["last"], 1), + episodes=t["episodes"], + sha=t["sha"][:8], + learn_s=t["learn_s"], + raised=t["raised"][:80], + complete=int(t["complete"]), + ) + ) + with open(root / "runs.csv", "w", encoding="utf-8", newline="") as f: + out = csv.DictWriter(f, fieldnames=list(rows[0])) + out.writeheader() + out.writerows(rows) + + # Per fault and dose: how many of the seeds each check caught. + groups = defaultdict(list) + for r in rows: + if r["seed"] in BAND_SEEDS: + continue + groups[r["env"], r["fault"], r["dose"]].append(r) + print( + f"{'env':11s} {'fault':20s} {'dose':6s} cells " + + " ".join(f"{c:>7s}" for c in CHECKS) + ) + for (env, fault, dose), rs in sorted( + groups.items(), key=lambda g: (g[0][0], FAULTS.index(g[0][1]), g[0][2]) + ): + cells = "/".join(str(r["cells"]) for r in rs) + counts = [] + for c in CHECKS: + vals = [r[c] for r in rs if r[c] != ""] + counts.append(f"{sum(vals)}/{len(vals)}" if vals else "-") + print( + f"{env:11s} {fault:20s} {dose:6s} {cells:>5s} " + + " ".join(f"{x:>7s}" for x in counts) + ) + + # The figure: per env, dose and kind of fault, the share of runs with a + # changed cell that each check caught; "either" is weights or record. + kinds = {"client": SILENT, "log": LOG, "all": SILENT + LOG} + shares = [] + for env in ("pendulum", "halfcheetah", "hopper"): + for kind, members in kinds.items(): + for dose in ("one", "0.001", "0.01", "0.1", "1.0"): + rs = [r for r in rows if r["env"] == env and r["dose"] == dose + and r["fault"] in members and r["seed"] not in BAND_SEEDS + and r["cells"] not in (0, None)] # fmt: skip + if not rs: + continue + line = dict(env=env, kind=kind, dose=dose, runs=len(rs)) + for c in CHECKS: + vals = [r[c] for r in rs if r[c] != ""] + line[c] = round(sum(vals) / len(vals), 3) if vals else "" + line["either"] = round( + sum(r["weights"] or r["record"] for r in rs) / len(rs), 3 + ) + shares.append(line) + with open(root / "by_dose.csv", "w", encoding="utf-8", newline="") as f: + out = csv.DictWriter( + f, fieldnames=["env", "kind", "dose", "runs", *CHECKS, "either"] + ) + out.writeheader() + out.writerows(shares) + print() + print( + "share of runs caught, by dose (runs with a changed cell; either = weights or record)" + ) + for s in shares: + print( + f" {s['env']:11s} {s['kind']:6s} {s['dose']:6s} n={s['runs']:3d} " + + " ".join(f"{c} {s[c]}" for c in (*CHECKS, "either")) + ) + + print() + for (env, seed), want in sorted(E50_WEIGHTS.items()): + t = table.get((env, "none", "1.0", seed)) + if t is not None: + print( + f"{env} none at seed {seed}: {t['sha'][:8]}, E50's {want}: " + f"{'same' if t['sha'].startswith(want) else 'DIFFERENT'}" + ) + for env in ("pendulum", "halfcheetah", "hopper"): + band = [table[env, "none", "1.0", s]["last"] for s in BAND_SEEDS + if (env, "none", "1.0", s) in table] # fmt: skip + if len(band) >= 2: + print( + f"{env} fault-free band, seeds 10-19: mean {statistics.mean(band):.1f}, " + f"sd {statistics.stdev(band):.1f}, min {min(band):.1f}, max {max(band):.1f}" + ) + if len(band) >= 3: + # The strict check's false alarms: each fault-free seed judged by + # the band of the other nine. + alarms = 0 + for i, x in enumerate(band): + rest = band[:i] + band[i + 1 :] + alarms += abs(x - statistics.mean(rest)) > 3 * statistics.stdev(rest) + print( + f"{env} strict check on fault-free seeds 10-19, each against the other " + f"nine: {alarms} of {len(band)} flagged" + ) + incomplete = [k for k, t in table.items() if not t["complete"] and not t["raised"]] + print("incomplete without an error:", incomplete or "none") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/experiments/e56-hopper-faults/train.py b/experiments/e56-hopper-faults/train.py new file mode 100644 index 0000000..2198209 --- /dev/null +++ b/experiments/e56-hopper-faults/train.py @@ -0,0 +1,303 @@ +"""E56: E55's train.py, with Hopper-v5. + +- hopper: Hopper-v5, SB3's defaults with 16 x 256 frames per rollout, as + HalfCheetah in E50. Hopper ends an episode when it falls. --total overrides + the budget, for the pilot only. +Everything below is E55's, unchanged. + +E55's docstring: + +E55: E54's train.py, with the client's step ledger, and a client elsewhere. + +Two changes from E54's: +- the client is also given --ledger, and writes ledger.npz beside the run; +- with --external-client, no client is started here: the bridge listens on + every address, and a client started on another machine (cross.sh) connects + to it. The run's client_rc is then the other machine's to record. +Run it with --trace: ledger.py compares trace.npz, what the trainer sent and +received, with ledger.npz, what the environments took and gave. + +E54's docstring: + +E54: SB3's PPO behind the bridge, with one fault at the boundary. + + python train.py --env pendulum --fault reward:stale --dose 0.01 --seed 0 \ + --out runs/... [--port 8854] [--trace] + +E50's bridge arm, unchanged but for the fault: 16 environments in +faulty_client.py, another process, on one connection, behind plugrl-bridges' +PlugRLVecEnv; then VecMonitor, then PPO, one torch thread, CPU. +- pendulum: Pendulum-v1, 102,400 steps, rl-baselines3-zoo's settings, E50's. +- halfcheetah: HalfCheetah-v5, 409,600 steps, SB3's defaults, E50's. + +Every fault but two is the client's (faulty_client.py lists them). The two +here are in the trainer's log, and leave what PPO gets as it came: +- log:drop-first: VecMonitor's logged return leaves out the episode's first + reward (the kind of fault E51 found in Gymnasium's RecordEpisodeStatistics); +- log:short: VecMonitor's logged length is one step short (E51's other half). +Their doses count episodes: "one" is the 256th logged, a number p each with +probability p, from a generator seeded 54. + +With --trace, a pass-through wrapper between the bridge and VecMonitor keeps +what crossed the wire as the trainer saw it, step by step: the actions sent, +and the rewards, episode ends, final observations and next observations +received. trace.npz holds them, for localise.py. + +The run directory gets result.json (the final weights' SHA-256, the time +model.learn() took, and the error if the run raised one), monitor.csv (the +trainer's log), episodes.csv (the bridge's log, counted where the rewards +arrive on the trainer's side of the wire), env_record.csv and fault.json (the +client's), client.log, model.zip (the final policy, saved after its hash is +taken, for rendering), and trace.npz with --trace. +""" + +from __future__ import annotations + +import argparse +import hashlib +import json +import pathlib +import subprocess +import sys +import time + +import gymnasium as gym +import numpy as np +import torch +from stable_baselines3 import PPO +from stable_baselines3.common.vec_env import VecEnvWrapper, VecMonitor + +HERE = pathlib.Path(__file__).resolve().parent +sys.path.insert(0, str(HERE)) +from faulty_client import FAULTS as CLIENT_FAULTS # noqa: E402 (E56's copy) + +NUM_ENVS = 16 +ENVS = { + "pendulum": dict( + id="Pendulum-v1", + total=102_400, + action=(1, 2.0), + # plugrl-bridges examples/sb3/ppo.py, preset "pendulum"; E50's. + ppo=dict( + n_steps=256, + gamma=0.9, + gae_lambda=0.95, + n_epochs=10, + ent_coef=0.0, + learning_rate=1e-3, + clip_range=0.2, + use_sde=True, + sde_sample_freq=4, + ), + ), + "halfcheetah": dict( + id="HalfCheetah-v5", + total=409_600, + action=(6, 1.0), + ppo=dict(n_steps=256), + ), + "hopper": dict( + id="Hopper-v5", + total=1_024_000, + action=(3, 1.0), + ppo=dict(n_steps=256), + ), +} +LOG_FAULTS = ("log:drop-first", "log:short") +FAULTS = CLIENT_FAULTS + LOG_FAULTS + + +class FaultyLogMonitor(VecMonitor): + """VecMonitor with one fault in the episodes it logs; PPO's data is untouched. + + step_wait is SB3 2.9.0's VecMonitor.step_wait, but for the two marked lines. + """ + + def __init__(self, venv, filename: str, fault: str, dose: str) -> None: + super().__init__(venv, filename=filename) + self.fault, self.dose = fault, dose + self.rng = np.random.default_rng(54) + self.first_reward = np.zeros(self.num_envs, dtype=np.float32) + self.logged = 0 + self.cells = 0 + + def _hit(self) -> bool: + k, u = self.logged, self.rng.random() + self.logged += 1 + return k == 255 if self.dose == "one" else u < float(self.dose) + + def step_wait(self): + starting = self.episode_lengths == 0 + obs, rewards, dones, infos = self.venv.step_wait() + self.first_reward[starting] = rewards[starting] + self.episode_returns += rewards + self.episode_lengths += 1 + new_infos = list(infos[:]) + for i in range(len(dones)): + if dones[i]: + info = infos[i].copy() + episode_return = self.episode_returns[i] + episode_length = self.episode_lengths[i] + if self._hit(): # the fault + self.cells += 1 + if self.fault == "log:drop-first": + episode_return = episode_return - self.first_reward[i] + else: + episode_length = episode_length - 1 + episode_info = { + "r": episode_return, + "l": episode_length, + "t": round(time.time() - self.t_start, 6), + } + for key in self.info_keywords: + episode_info[key] = info[key] + info["episode"] = episode_info + self.episode_count += 1 + self.episode_returns[i] = 0 + self.episode_lengths[i] = 0 + if self.results_writer: + self.results_writer.write_row(episode_info) + new_infos[i] = info + return obs, rewards, dones, new_infos + + +class WireTrace(VecEnvWrapper): + """What crossed the wire, as the trainer saw it; passes everything through.""" + + def __init__(self, venv) -> None: + super().__init__(venv) + self.actions, self.rewards, self.ends, self.truncs = [], [], [], [] + self.finals, self.nexts = [], [] + self.first_obs = None + + def reset(self): + obs = self.venv.reset() + if self.first_obs is None: + self.first_obs = np.array(obs, copy=True) + return obs + + def step_async(self, actions) -> None: + self.actions.append(np.array(actions, dtype=np.float32, copy=True)) + self.venv.step_async(actions) + + def step_wait(self): + obs, rewards, dones, infos = self.venv.step_wait() + final = np.zeros_like(obs) + trunc = np.zeros(len(dones), dtype=np.bool_) + for i in np.flatnonzero(dones): + final[i] = infos[i]["terminal_observation"] + trunc[i] = infos[i]["TimeLimit.truncated"] + self.rewards.append(np.array(rewards, copy=True)) + self.ends.append(np.array(dones, copy=True)) + self.truncs.append(trunc) + self.finals.append(final) + self.nexts.append(np.array(obs, copy=True)) + return obs, rewards, dones, infos + + def save(self, path: pathlib.Path) -> None: + np.savez_compressed( + path, + first_obs=self.first_obs, + actions=np.stack(self.actions), + rewards=np.stack(self.rewards), + ends=np.stack(self.ends), + truncs=np.stack(self.truncs), + finals=np.stack(self.finals), + nexts=np.stack(self.nexts), + ) + + +def weights_sha256(model: PPO) -> str: + h = hashlib.sha256() + for name, tensor in sorted(model.policy.state_dict().items()): + h.update(name.encode()) + h.update(tensor.detach().cpu().contiguous().numpy().tobytes()) + return h.hexdigest() + + +def main() -> int: + p = argparse.ArgumentParser(description=__doc__) + p.add_argument("--env", choices=sorted(ENVS), required=True) + p.add_argument("--fault", choices=FAULTS, required=True) + p.add_argument("--dose", default="1.0") + p.add_argument("--seed", type=int, required=True) + p.add_argument("--out", required=True) + p.add_argument("--port", type=int, default=8854) + p.add_argument("--trace", action="store_true") + p.add_argument("--external-client", action="store_true") + p.add_argument("--total", type=int, default=None, help="pilot only") + a = p.parse_args() + spec = dict(ENVS[a.env]) + if a.total is not None: + spec["total"] = a.total + out = pathlib.Path(a.out).resolve() + out.mkdir(parents=True, exist_ok=True) + torch.set_num_threads(1) + + from plugrl_bridges.sb3 import PlugRLVecEnv + + dim, high = spec["action"] + client_fault = a.fault if a.fault in CLIENT_FAULTS else "none" + client = None + if not a.external_client: + client_log = open(out / "client.log", "w", encoding="utf-8") + client = subprocess.Popen( + [sys.executable, str(HERE / "faulty_client.py"), "--port", str(a.port), + "--num-envs", str(NUM_ENVS), "--seed", str(a.seed), "--env-id", spec["id"], + "--action-high", str(high), "--fault", client_fault, "--dose", a.dose, + "--record", str(out / "env_record.csv"), + "--ledger", str(out / "ledger.npz")], + stdout=client_log, stderr=subprocess.STDOUT, + ) # fmt: skip + env = PlugRLVecEnv( + num_envs=NUM_ENVS, + action_space=gym.spaces.Box(-high, high, (dim,), np.float32), + port=a.port, + host="0.0.0.0" if a.external_client else "127.0.0.1", + timeout=60.0, + episode_log=str(out / "episodes.csv"), + ) + trace = WireTrace(env) if a.trace else None + inner = trace if trace is not None else env + if a.fault in LOG_FAULTS: + env = FaultyLogMonitor(inner, str(out / "monitor.csv"), a.fault, a.dose) + else: + env = VecMonitor(inner, filename=str(out / "monitor.csv")) + # PPO(seed=) seeds torch and numpy; the client resets env i with seed + i. + model = PPO("MlpPolicy", env, seed=a.seed, device="cpu", verbose=0, **spec["ppo"]) + result = {"env": a.env, "fault": a.fault, "dose": a.dose, "seed": a.seed} + start = time.perf_counter() + try: + model.learn(total_timesteps=spec["total"]) + except Exception as exc: # a fault the bridge rejects ends the run here + result["raised"] = f"{type(exc).__name__}: {exc}" + result.update( + weights_sha256=weights_sha256(model), + learn_s=round(time.perf_counter() - start, 3), + steps=model.num_timesteps, + torch=torch.__version__, + ) + if isinstance(env, FaultyLogMonitor): + result["log_cells"] = env.cells + model.save(out / "model.zip") + if trace is not None: + trace.save(out / "trace.npz") + try: + env.close() + except Exception as exc: + result["close_raised"] = f"{type(exc).__name__}: {exc}" + if client is None: + result["client_rc"] = "external" + else: + try: + result["client_rc"] = client.wait(timeout=60) + except subprocess.TimeoutExpired: + client.kill() + result["client_rc"] = "killed" + (out / "result.json").write_text(json.dumps(result, indent=2) + "\n") + print(json.dumps(result)) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) From 574a1c93674708fcd8fcbe53dca1e6a343f91e28 Mon Sep 17 00:00:00 2001 From: tactino <18781106300@163.com> Date: Fri, 2 Oct 2026 23:19:36 -0400 Subject: [PATCH 2/4] E56: findings - on Hopper, which ends episodes when it falls, the step ledger catches and locates all 207 client-fault runs, and the curve checks miss every one at one value Registered runs, 244 of 244 complete; every check and prediction holds. Status rule 0/3/33 of 69 client-fault runs at doses one/0.01/1.0; byte identity 57/69/69 (it misses the four final-obs faults at one value, which change a final observation PPO never reads); ledger 69/69/69 with no false alarm in 27 control and log-fault runs; ledger or record 225 of 225. verdicts.py is committed unchanged; FINDINGS.md says when it was written. --- experiments/e56-hopper-faults/FINDINGS.md | 114 ++++++++ .../results/bridges-src.sha256 | 6 + .../e56-hopper-faults/results/by_dose.csv | 10 + .../e56-hopper-faults/results/e56-src.sha256 | 4 + .../e56-hopper-faults/results/jobs.txt | 244 +++++++++++++++++ .../e56-hopper-faults/results/ledger.csv | 235 +++++++++++++++++ .../e56-hopper-faults/results/ledger.out | 1 + .../e56-hopper-faults/results/load.txt | 2 + .../e56-hopper-faults/results/merge.out | 1 + .../e56-hopper-faults/results/runs.csv | 245 ++++++++++++++++++ .../e56-hopper-faults/results/runs.jsonl | 244 +++++++++++++++++ .../e56-hopper-faults/results/summarise.out | 94 +++++++ .../e56-hopper-faults/results/verdicts.txt | 10 + experiments/e56-hopper-faults/verdicts.py | 107 ++++++++ 14 files changed, 1317 insertions(+) create mode 100644 experiments/e56-hopper-faults/FINDINGS.md create mode 100644 experiments/e56-hopper-faults/results/bridges-src.sha256 create mode 100644 experiments/e56-hopper-faults/results/by_dose.csv create mode 100644 experiments/e56-hopper-faults/results/e56-src.sha256 create mode 100644 experiments/e56-hopper-faults/results/jobs.txt create mode 100644 experiments/e56-hopper-faults/results/ledger.csv create mode 100644 experiments/e56-hopper-faults/results/ledger.out create mode 100644 experiments/e56-hopper-faults/results/load.txt create mode 100644 experiments/e56-hopper-faults/results/merge.out create mode 100644 experiments/e56-hopper-faults/results/runs.csv create mode 100644 experiments/e56-hopper-faults/results/runs.jsonl create mode 100644 experiments/e56-hopper-faults/results/summarise.out create mode 100644 experiments/e56-hopper-faults/results/verdicts.txt create mode 100644 experiments/e56-hopper-faults/verdicts.py diff --git a/experiments/e56-hopper-faults/FINDINGS.md b/experiments/e56-hopper-faults/FINDINGS.md new file mode 100644 index 0000000..2c7232c --- /dev/null +++ b/experiments/e56-hopper-faults/FINDINGS.md @@ -0,0 +1,114 @@ +# E56: on Hopper, which ends episodes when it falls, the step ledger still catches and locates every fault in what crosses, and a learning curve still misses most of them + +2026-10-02 · guangzhao (E54's `bridges-venv`) · protocol: +[`PROTOCOL.md`](PROTOCOL.md), after the pilots in `results/pilot/`, before +the registered runs · no amendment + +`verdicts.py`, which judges the predictions as `PROTOCOL.md` words them, was +not in the protocol's commit. It was last changed at 21:12 EDT. That is +after the registered runs started (21:10) and before the first one ended +(21:15). It is committed here unchanged. + +--- + +## The result + +E54's 21 client faults plus two in terminations (`terminated:drop`, +`terminated:as-trunc`) and E54's two log faults, on Hopper-v5 at doses one, +0.01 and 1.0. Seeds 0-2 traced and ledgered, and seeds 10-19 fault-free for +the strict check's band. Each run is 1,024,000 steps. + +Client-fault runs with a changed value, 69 at each dose: + +| dose | status rule | strict | byte identity | record | step ledger | +| --- | --- | --- | --- | --- | --- | +| one value | 0 | 0 | 57 | 19 | **69** | +| 0.01 | 3 | 3 | 69 | 21 | **69** | +| 1.0 | 33 | 34 | 69 | 18 | **69** | + +The ledger found no difference in any of the 27 control and log-fault runs. +The strict check flagged none of the ten fault-free seeds, each judged +against the other nine. + +Every check and prediction holds (`results/verdicts.txt`): +- **V1:** all 244 runs reached 1,024,000 steps; every client exited 0. +- **V2:** `delay-1ms` and `wire-float64` ended on `none`'s weights at seeds + 0-2. +- **P1:** byte identity caught 171 of 171 client-fault runs with a changed + value, outside the `final-obs` faults. +- **P2:** the log faults ended on `none`'s weights in 18 of 18 runs. +- **P3:** the status rule caught 0 of 75 runs at one value, 3 of 75 at 0.01 + and 33 of 75 at 1.0 (caps 10%, 10%, 60%). +- **P4:** the record caught every run it was predicted to catch and none it + was predicted to miss. +- **P5:** the bridge's log caught 18 of 18 log-fault runs and 0 of 207 + client-fault runs. +- **P6:** the ledger caught 207 of 207 client-fault runs, and each first + difference was the fault's first changed cell; no difference in 27 of 27 + control and log-fault runs. +- **P7:** the ledger or the record caught 225 of 225 runs with a changed + value. + +--- + +## What it means + +**E54's and E55's findings hold on an environment that ends episodes +early.** +- One changed value moved the final return by a median of 197. The fault-free + seeds' standard deviation is 259. Neither curve check caught any of the 69. +- At dose 1.0, every value changed, and 11 faults still passed both curve + checks at all three seeds. Among them were `obs:f16`, `action:stale`, + `reward:stale`, `truncated:drop` and all four `final-obs` faults. +- The ledger caught and located all 207 client-fault runs, with no fault-free + run to compare against. + +**A fault can cross without changing the weights, and only the ledger sees +it.** At one value, each `final-obs` fault changed the final observation of +an episode that ended in a fall, at vector step 3,255-3,379, env 0. SB3 +bootstraps from a final observation only at a time limit, so PPO never read +the changed value. The weights were `none`'s in 12 of 12 runs. This was +expected from the pilot and left out of P1. The ledger caught and located +all 12. + +The value is read again as soon as the same fault lands at a time limit. At +doses 0.01 and 1.0 it does, and byte identity caught 24 of 24. A check that +looks only at the weights says "no fault" about a boundary that is +corrupting final observations. That is right for this run and this trainer, +and wrong for any trainer that reads them. + +**Faults in terminations are silent too, and they behave unlike each other.** +- `terminated:drop` loses a fall. At 0.01 it passed both curve checks at + every seed, and the record and the ledger caught it. +- `terminated:as-trunc` sends a fall as a time limit. It changes nothing in + the record's books, so the record missed it at every dose. The ledger + caught it every time, and so did byte identity. +- At 1.0 the status rule caught all six runs. `terminated:as-trunc` broke + learning. With `terminated:drop`, the trainer's log held no episode at + all, while the environment's record held 7,178 at seed 0. +- `truncated:as-term` and `truncated:drop` passed both curve checks at every + dose. + +--- + +## What E56 does not show + +* **Any trainer but SB3's PPO.** Whether a fault in final observations + reaches the weights depends on how a trainer bootstraps. E56 shows one + trainer. +* **Faults inside the environment.** The ledger compares what crosses. A + fault before the wrapper is beyond it, as in E55. +* **A ledger checked while the run goes on.** The two sides were compared + after each run. +* **Across machines.** E55 showed the ledger across two machines on + Pendulum; E56 ran on one. + +Kept here, in `results/`: `ledger.csv` (`ledger.py`), `runs.csv`, +`by_dose.csv` and `summarise.out` (`summarise.py`), `runs.jsonl` +(`merge_runs.py`, every run's `result.json` and `fault.json`), and +`verdicts.txt` (`verdicts.py`), with the source hashes. The per-run directories are kept +on guangzhao and not committed. Each one holds the episode logs, the env +record, the final policy and `ledger.json`. Each traced run's trace and +ledger arrays were deleted once judged, as `run.sh` says: they are 150 MB a +run. A run on one machine is deterministic, so rerunning its line of +`jobs.txt` reproduces them. diff --git a/experiments/e56-hopper-faults/results/bridges-src.sha256 b/experiments/e56-hopper-faults/results/bridges-src.sha256 new file mode 100644 index 0000000..755002f --- /dev/null +++ b/experiments/e56-hopper-faults/results/bridges-src.sha256 @@ -0,0 +1,6 @@ +766ad3d83be9696dff26543ce2fb35c3c31cb845fc42cb148d411b263e8bf9b5 src/plugrl_bridges/gym.py +e89ebb2c4ed69ed5788cd945bc4d36ecc023949627433818b98d9ea43d1fa7d5 src/plugrl_bridges/__init__.py +4001b6400d4031504525949fa721ad425fa0cb16a91cf30537dfd6d5859d8336 src/plugrl_bridges/observations.py +1c22fca6e0f01e8ec730ee893568cc301d2d21c3e16cc2102c22959ced00ff08 src/plugrl_bridges/rlinf.py +f02264e551925eed72ba2e4dfb5159f7e174e4ac7231aa122689ef2172484646 src/plugrl_bridges/sb3.py +0e56388fea17a73d4defcb437d3a4b6c8392c609dfca07efe92343e6cac72656 src/plugrl_bridges/server.py diff --git a/experiments/e56-hopper-faults/results/by_dose.csv b/experiments/e56-hopper-faults/results/by_dose.csv new file mode 100644 index 0000000..204c639 --- /dev/null +++ b/experiments/e56-hopper-faults/results/by_dose.csv @@ -0,0 +1,10 @@ +env,kind,dose,runs,raises,rule,strict,weights,record,bridge,either +hopper,client,one,69,0.0,0.0,0.0,0.826,0.275,0.0,0.826 +hopper,client,0.01,69,0.0,0.043,0.043,1.0,0.304,0.0,1.0 +hopper,client,1.0,69,0.0,0.478,0.493,1.0,0.261,0.0,1.0 +hopper,log,one,6,0.0,0.0,0.0,0.0,1.0,1.0,1.0 +hopper,log,0.01,6,0.0,0.0,0.0,0.0,1.0,1.0,1.0 +hopper,log,1.0,6,0.0,0.0,0.0,0.0,1.0,1.0,1.0 +hopper,all,one,75,0.0,0.0,0.0,0.76,0.333,0.08,0.84 +hopper,all,0.01,75,0.0,0.04,0.04,0.92,0.36,0.08,1.0 +hopper,all,1.0,75,0.0,0.44,0.453,0.92,0.32,0.08,1.0 diff --git a/experiments/e56-hopper-faults/results/e56-src.sha256 b/experiments/e56-hopper-faults/results/e56-src.sha256 new file mode 100644 index 0000000..2358753 --- /dev/null +++ b/experiments/e56-hopper-faults/results/e56-src.sha256 @@ -0,0 +1,4 @@ +e14ca4e355eada9c51a1449843523461628837d072ef8bbd1b568f88b6c5452a train.py +f8e7272a9ee0f628840a6f511ded0b51004fdf654a6432d6eed9ea2496a6d476 faulty_client.py +65bf16507e17cdf0cfd697dcdf49e6bbec47f0c6f5b53fda07a904a942a79a9c jobs.py +4141d87a5fdaca55a4b4d80b82a99a09bce6c27ff8e1d9c64f56f6d457729520 ledger.py diff --git a/experiments/e56-hopper-faults/results/jobs.txt b/experiments/e56-hopper-faults/results/jobs.txt new file mode 100644 index 0000000..9762c13 --- /dev/null +++ b/experiments/e56-hopper-faults/results/jobs.txt @@ -0,0 +1,244 @@ +hopper none 1.0 0 trace +hopper delay-1ms 1.0 0 trace +hopper wire-float64 1.0 0 trace +hopper obs:zero one 0 trace +hopper obs:zero 0.01 0 trace +hopper obs:zero 1.0 0 trace +hopper obs:stale one 0 trace +hopper obs:stale 0.01 0 trace +hopper obs:stale 1.0 0 trace +hopper obs:swap one 0 trace +hopper obs:swap 0.01 0 trace +hopper obs:swap 1.0 0 trace +hopper obs:f16 one 0 trace +hopper obs:f16 0.01 0 trace +hopper obs:f16 1.0 0 trace +hopper action:zero one 0 trace +hopper action:zero 0.01 0 trace +hopper action:zero 1.0 0 trace +hopper action:stale one 0 trace +hopper action:stale 0.01 0 trace +hopper action:stale 1.0 0 trace +hopper action:swap one 0 trace +hopper action:swap 0.01 0 trace +hopper action:swap 1.0 0 trace +hopper action:f16 one 0 trace +hopper action:f16 0.01 0 trace +hopper action:f16 1.0 0 trace +hopper action:clip one 0 trace +hopper action:clip 0.01 0 trace +hopper action:clip 1.0 0 trace +hopper reward:zero one 0 trace +hopper reward:zero 0.01 0 trace +hopper reward:zero 1.0 0 trace +hopper reward:stale one 0 trace +hopper reward:stale 0.01 0 trace +hopper reward:stale 1.0 0 trace +hopper reward:swap one 0 trace +hopper reward:swap 0.01 0 trace +hopper reward:swap 1.0 0 trace +hopper reward:f16 one 0 trace +hopper reward:f16 0.01 0 trace +hopper reward:f16 1.0 0 trace +hopper final-obs:zero one 0 trace +hopper final-obs:zero 0.01 0 trace +hopper final-obs:zero 1.0 0 trace +hopper final-obs:stale one 0 trace +hopper final-obs:stale 0.01 0 trace +hopper final-obs:stale 1.0 0 trace +hopper final-obs:swap one 0 trace +hopper final-obs:swap 0.01 0 trace +hopper final-obs:swap 1.0 0 trace +hopper final-obs:f16 one 0 trace +hopper final-obs:f16 0.01 0 trace +hopper final-obs:f16 1.0 0 trace +hopper terminated:spurious one 0 trace +hopper terminated:spurious 0.01 0 trace +hopper terminated:spurious 1.0 0 trace +hopper truncated:drop one 0 trace +hopper truncated:drop 0.01 0 trace +hopper truncated:drop 1.0 0 trace +hopper truncated:as-term one 0 trace +hopper truncated:as-term 0.01 0 trace +hopper truncated:as-term 1.0 0 trace +hopper step:fill one 0 trace +hopper step:fill 0.01 0 trace +hopper step:fill 1.0 0 trace +hopper terminated:drop one 0 trace +hopper terminated:drop 0.01 0 trace +hopper terminated:drop 1.0 0 trace +hopper terminated:as-trunc one 0 trace +hopper terminated:as-trunc 0.01 0 trace +hopper terminated:as-trunc 1.0 0 trace +hopper log:drop-first one 0 trace +hopper log:drop-first 0.01 0 trace +hopper log:drop-first 1.0 0 trace +hopper log:short one 0 trace +hopper log:short 0.01 0 trace +hopper log:short 1.0 0 trace +hopper none 1.0 1 trace +hopper delay-1ms 1.0 1 trace +hopper wire-float64 1.0 1 trace +hopper obs:zero one 1 trace +hopper obs:zero 0.01 1 trace +hopper obs:zero 1.0 1 trace +hopper obs:stale one 1 trace +hopper obs:stale 0.01 1 trace +hopper obs:stale 1.0 1 trace +hopper obs:swap one 1 trace +hopper obs:swap 0.01 1 trace +hopper obs:swap 1.0 1 trace +hopper obs:f16 one 1 trace +hopper obs:f16 0.01 1 trace +hopper obs:f16 1.0 1 trace +hopper action:zero one 1 trace +hopper action:zero 0.01 1 trace +hopper action:zero 1.0 1 trace +hopper action:stale one 1 trace +hopper action:stale 0.01 1 trace +hopper action:stale 1.0 1 trace +hopper action:swap one 1 trace +hopper action:swap 0.01 1 trace +hopper action:swap 1.0 1 trace +hopper action:f16 one 1 trace +hopper action:f16 0.01 1 trace +hopper action:f16 1.0 1 trace +hopper action:clip one 1 trace +hopper action:clip 0.01 1 trace +hopper action:clip 1.0 1 trace +hopper reward:zero one 1 trace +hopper reward:zero 0.01 1 trace +hopper reward:zero 1.0 1 trace +hopper reward:stale one 1 trace +hopper reward:stale 0.01 1 trace +hopper reward:stale 1.0 1 trace +hopper reward:swap one 1 trace +hopper reward:swap 0.01 1 trace +hopper reward:swap 1.0 1 trace +hopper reward:f16 one 1 trace +hopper reward:f16 0.01 1 trace +hopper reward:f16 1.0 1 trace +hopper final-obs:zero one 1 trace +hopper final-obs:zero 0.01 1 trace +hopper final-obs:zero 1.0 1 trace +hopper final-obs:stale one 1 trace +hopper final-obs:stale 0.01 1 trace +hopper final-obs:stale 1.0 1 trace +hopper final-obs:swap one 1 trace +hopper final-obs:swap 0.01 1 trace +hopper final-obs:swap 1.0 1 trace +hopper final-obs:f16 one 1 trace +hopper final-obs:f16 0.01 1 trace +hopper final-obs:f16 1.0 1 trace +hopper terminated:spurious one 1 trace +hopper terminated:spurious 0.01 1 trace +hopper terminated:spurious 1.0 1 trace +hopper truncated:drop one 1 trace +hopper truncated:drop 0.01 1 trace +hopper truncated:drop 1.0 1 trace +hopper truncated:as-term one 1 trace +hopper truncated:as-term 0.01 1 trace +hopper truncated:as-term 1.0 1 trace +hopper step:fill one 1 trace +hopper step:fill 0.01 1 trace +hopper step:fill 1.0 1 trace +hopper terminated:drop one 1 trace +hopper terminated:drop 0.01 1 trace +hopper terminated:drop 1.0 1 trace +hopper terminated:as-trunc one 1 trace +hopper terminated:as-trunc 0.01 1 trace +hopper terminated:as-trunc 1.0 1 trace +hopper log:drop-first one 1 trace +hopper log:drop-first 0.01 1 trace +hopper log:drop-first 1.0 1 trace +hopper log:short one 1 trace +hopper log:short 0.01 1 trace +hopper log:short 1.0 1 trace +hopper none 1.0 2 trace +hopper delay-1ms 1.0 2 trace +hopper wire-float64 1.0 2 trace +hopper obs:zero one 2 trace +hopper obs:zero 0.01 2 trace +hopper obs:zero 1.0 2 trace +hopper obs:stale one 2 trace +hopper obs:stale 0.01 2 trace +hopper obs:stale 1.0 2 trace +hopper obs:swap one 2 trace +hopper obs:swap 0.01 2 trace +hopper obs:swap 1.0 2 trace +hopper obs:f16 one 2 trace +hopper obs:f16 0.01 2 trace +hopper obs:f16 1.0 2 trace +hopper action:zero one 2 trace +hopper action:zero 0.01 2 trace +hopper action:zero 1.0 2 trace +hopper action:stale one 2 trace +hopper action:stale 0.01 2 trace +hopper action:stale 1.0 2 trace +hopper action:swap one 2 trace +hopper action:swap 0.01 2 trace +hopper action:swap 1.0 2 trace +hopper action:f16 one 2 trace +hopper action:f16 0.01 2 trace +hopper action:f16 1.0 2 trace +hopper action:clip one 2 trace +hopper action:clip 0.01 2 trace +hopper action:clip 1.0 2 trace +hopper reward:zero one 2 trace +hopper reward:zero 0.01 2 trace +hopper reward:zero 1.0 2 trace +hopper reward:stale one 2 trace +hopper reward:stale 0.01 2 trace +hopper reward:stale 1.0 2 trace +hopper reward:swap one 2 trace +hopper reward:swap 0.01 2 trace +hopper reward:swap 1.0 2 trace +hopper reward:f16 one 2 trace +hopper reward:f16 0.01 2 trace +hopper reward:f16 1.0 2 trace +hopper final-obs:zero one 2 trace +hopper final-obs:zero 0.01 2 trace +hopper final-obs:zero 1.0 2 trace +hopper final-obs:stale one 2 trace +hopper final-obs:stale 0.01 2 trace +hopper final-obs:stale 1.0 2 trace +hopper final-obs:swap one 2 trace +hopper final-obs:swap 0.01 2 trace +hopper final-obs:swap 1.0 2 trace +hopper final-obs:f16 one 2 trace +hopper final-obs:f16 0.01 2 trace +hopper final-obs:f16 1.0 2 trace +hopper terminated:spurious one 2 trace +hopper terminated:spurious 0.01 2 trace +hopper terminated:spurious 1.0 2 trace +hopper truncated:drop one 2 trace +hopper truncated:drop 0.01 2 trace +hopper truncated:drop 1.0 2 trace +hopper truncated:as-term one 2 trace +hopper truncated:as-term 0.01 2 trace +hopper truncated:as-term 1.0 2 trace +hopper step:fill one 2 trace +hopper step:fill 0.01 2 trace +hopper step:fill 1.0 2 trace +hopper terminated:drop one 2 trace +hopper terminated:drop 0.01 2 trace +hopper terminated:drop 1.0 2 trace +hopper terminated:as-trunc one 2 trace +hopper terminated:as-trunc 0.01 2 trace +hopper terminated:as-trunc 1.0 2 trace +hopper log:drop-first one 2 trace +hopper log:drop-first 0.01 2 trace +hopper log:drop-first 1.0 2 trace +hopper log:short one 2 trace +hopper log:short 0.01 2 trace +hopper log:short 1.0 2 trace +hopper none 1.0 10 notrace +hopper none 1.0 11 notrace +hopper none 1.0 12 notrace +hopper none 1.0 13 notrace +hopper none 1.0 14 notrace +hopper none 1.0 15 notrace +hopper none 1.0 16 notrace +hopper none 1.0 17 notrace +hopper none 1.0 18 notrace +hopper none 1.0 19 notrace diff --git a/experiments/e56-hopper-faults/results/ledger.csv b/experiments/e56-hopper-faults/results/ledger.csv new file mode 100644 index 0000000..2b0cc7a --- /dev/null +++ b/experiments/e56-hopper-faults/results/ledger.csv @@ -0,0 +1,235 @@ +run,fault,dose,seed,cells,caught,differing,injected,found,right +hopper/action__clip/0.01/seed0,action:clip,0.01,0,9025,1,9025,5/7,5/7 action,1 +hopper/action__clip/0.01/seed1,action:clip,0.01,1,9424,1,9424,5/7,5/7 action,1 +hopper/action__clip/0.01/seed2,action:clip,0.01,2,9420,1,9420,5/7,5/7 action,1 +hopper/action__clip/1.0/seed0,action:clip,1.0,0,963542,1,963542,0/0,0/0 action,1 +hopper/action__clip/1.0/seed1,action:clip,1.0,1,962566,1,962566,0/0,0/0 action,1 +hopper/action__clip/1.0/seed2,action:clip,1.0,2,975678,1,975678,0/0,0/0 action,1 +hopper/action__clip/one/seed0,action:clip,one,0,1,1,1,3249/0,3249/0 action,1 +hopper/action__clip/one/seed1,action:clip,one,1,1,1,1,3249/0,3249/0 action,1 +hopper/action__clip/one/seed2,action:clip,one,2,1,1,1,3249/0,3249/0 action,1 +hopper/action__f16/0.01/seed0,action:f16,0.01,0,9882,1,9882,5/7,5/7 action,1 +hopper/action__f16/0.01/seed1,action:f16,0.01,1,9875,1,9875,5/7,5/7 action,1 +hopper/action__f16/0.01/seed2,action:f16,0.01,2,9772,1,9772,5/7,5/7 action,1 +hopper/action__f16/1.0/seed0,action:f16,1.0,0,1005791,1,1005791,0/0,0/0 action,1 +hopper/action__f16/1.0/seed1,action:f16,1.0,1,990123,1,990123,0/0,0/0 action,1 +hopper/action__f16/1.0/seed2,action:f16,1.0,2,1010459,1,1010459,0/0,0/0 action,1 +hopper/action__f16/one/seed0,action:f16,one,0,1,1,1,3249/0,3249/0 action,1 +hopper/action__f16/one/seed1,action:f16,one,1,1,1,1,3249/0,3249/0 action,1 +hopper/action__f16/one/seed2,action:f16,one,2,1,1,1,3249/0,3249/0 action,1 +hopper/action__stale/0.01/seed0,action:stale,0.01,0,10067,1,10067,5/7,5/7 action,1 +hopper/action__stale/0.01/seed1,action:stale,0.01,1,10067,1,10067,5/7,5/7 action,1 +hopper/action__stale/0.01/seed2,action:stale,0.01,2,10062,1,10062,5/7,5/7 action,1 +hopper/action__stale/1.0/seed0,action:stale,1.0,0,1022705,1,1022705,0/0,0/0 action,1 +hopper/action__stale/1.0/seed1,action:stale,1.0,1,1021290,1,1021290,0/0,0/0 action,1 +hopper/action__stale/1.0/seed2,action:stale,1.0,2,1021873,1,1021873,0/0,0/0 action,1 +hopper/action__stale/one/seed0,action:stale,one,0,1,1,1,3249/0,3249/0 action,1 +hopper/action__stale/one/seed1,action:stale,one,1,1,1,1,3249/0,3249/0 action,1 +hopper/action__stale/one/seed2,action:stale,one,2,1,1,1,3249/0,3249/0 action,1 +hopper/action__swap/0.01/seed0,action:swap,0.01,0,10063,1,10063,5/7,5/7 action,1 +hopper/action__swap/0.01/seed1,action:swap,0.01,1,10066,1,10066,5/7,5/7 action,1 +hopper/action__swap/0.01/seed2,action:swap,0.01,2,10062,1,10062,5/7,5/7 action,1 +hopper/action__swap/1.0/seed0,action:swap,1.0,0,1023968,1,1023968,0/0,0/0 action,1 +hopper/action__swap/1.0/seed1,action:swap,1.0,1,1023975,1,1023975,0/0,0/0 action,1 +hopper/action__swap/1.0/seed2,action:swap,1.0,2,1023986,1,1023986,0/0,0/0 action,1 +hopper/action__swap/one/seed0,action:swap,one,0,1,1,1,3249/0,3249/0 action,1 +hopper/action__swap/one/seed1,action:swap,one,1,1,1,1,3249/0,3249/0 action,1 +hopper/action__swap/one/seed2,action:swap,one,2,1,1,1,3249/0,3249/0 action,1 +hopper/action__zero/0.01/seed0,action:zero,0.01,0,10067,1,10067,5/7,5/7 action,1 +hopper/action__zero/0.01/seed1,action:zero,0.01,1,10067,1,10067,5/7,5/7 action,1 +hopper/action__zero/0.01/seed2,action:zero,0.01,2,10067,1,10067,5/7,5/7 action,1 +hopper/action__zero/1.0/seed0,action:zero,1.0,0,1024000,1,1024000,0/0,0/0 action,1 +hopper/action__zero/1.0/seed1,action:zero,1.0,1,1024000,1,1024000,0/0,0/0 action,1 +hopper/action__zero/1.0/seed2,action:zero,1.0,2,1024000,1,1024000,0/0,0/0 action,1 +hopper/action__zero/one/seed0,action:zero,one,0,1,1,1,3249/0,3249/0 action,1 +hopper/action__zero/one/seed1,action:zero,one,1,1,1,1,3249/0,3249/0 action,1 +hopper/action__zero/one/seed2,action:zero,one,2,1,1,1,3249/0,3249/0 action,1 +hopper/delay-1ms/1.0/seed0,delay-1ms,1.0,0,0,0,0,,,1 +hopper/delay-1ms/1.0/seed1,delay-1ms,1.0,1,0,0,0,,,1 +hopper/delay-1ms/1.0/seed2,delay-1ms,1.0,2,0,0,0,,,1 +hopper/final-obs__f16/0.01/seed0,final-obs:f16,0.01,0,37,1,37,50/10,50/10 final,1 +hopper/final-obs__f16/0.01/seed1,final-obs:f16,0.01,1,42,1,42,166/7,166/7 final,1 +hopper/final-obs__f16/0.01/seed2,final-obs:f16,0.01,2,31,1,31,294/7,294/7 final,1 +hopper/final-obs__f16/1.0/seed0,final-obs:f16,1.0,0,3374,1,3374,10/0,10/0 final,1 +hopper/final-obs__f16/1.0/seed1,final-obs:f16,1.0,1,3457,1,3457,7/14,7/14 final,1 +hopper/final-obs__f16/1.0/seed2,final-obs:f16,1.0,2,3483,1,3483,8/2,8/2 final,1 +hopper/final-obs__f16/one/seed0,final-obs:f16,one,0,1,1,1,3267/0,3267/0 final,1 +hopper/final-obs__f16/one/seed1,final-obs:f16,one,1,1,1,1,3255/0,3255/0 final,1 +hopper/final-obs__f16/one/seed2,final-obs:f16,one,2,1,1,1,3379/0,3379/0 final,1 +hopper/final-obs__stale/0.01/seed0,final-obs:stale,0.01,0,43,1,43,50/10,50/10 final,1 +hopper/final-obs__stale/0.01/seed1,final-obs:stale,0.01,1,43,1,43,166/7,166/7 final,1 +hopper/final-obs__stale/0.01/seed2,final-obs:stale,0.01,2,29,1,29,294/7,294/7 final,1 +hopper/final-obs__stale/1.0/seed0,final-obs:stale,1.0,0,3424,1,3424,10/0,10/0 final,1 +hopper/final-obs__stale/1.0/seed1,final-obs:stale,1.0,1,3328,1,3328,7/14,7/14 final,1 +hopper/final-obs__stale/1.0/seed2,final-obs:stale,1.0,2,3505,1,3505,8/2,8/2 final,1 +hopper/final-obs__stale/one/seed0,final-obs:stale,one,0,1,1,1,3267/0,3267/0 final,1 +hopper/final-obs__stale/one/seed1,final-obs:stale,one,1,1,1,1,3255/0,3255/0 final,1 +hopper/final-obs__stale/one/seed2,final-obs:stale,one,2,1,1,1,3379/0,3379/0 final,1 +hopper/final-obs__swap/0.01/seed0,final-obs:swap,0.01,0,40,1,40,50/10,50/10 final,1 +hopper/final-obs__swap/0.01/seed1,final-obs:swap,0.01,1,36,1,36,166/7,166/7 final,1 +hopper/final-obs__swap/0.01/seed2,final-obs:swap,0.01,2,31,1,31,294/7,294/7 final,1 +hopper/final-obs__swap/1.0/seed0,final-obs:swap,1.0,0,3429,1,3429,10/0,10/0 final,1 +hopper/final-obs__swap/1.0/seed1,final-obs:swap,1.0,1,3505,1,3505,7/14,7/14 final,1 +hopper/final-obs__swap/1.0/seed2,final-obs:swap,1.0,2,3447,1,3447,8/2,8/2 final,1 +hopper/final-obs__swap/one/seed0,final-obs:swap,one,0,1,1,1,3267/0,3267/0 final,1 +hopper/final-obs__swap/one/seed1,final-obs:swap,one,1,1,1,1,3255/0,3255/0 final,1 +hopper/final-obs__swap/one/seed2,final-obs:swap,one,2,1,1,1,3379/0,3379/0 final,1 +hopper/final-obs__zero/0.01/seed0,final-obs:zero,0.01,0,36,1,36,50/10,50/10 final,1 +hopper/final-obs__zero/0.01/seed1,final-obs:zero,0.01,1,35,1,35,166/7,166/7 final,1 +hopper/final-obs__zero/0.01/seed2,final-obs:zero,0.01,2,28,1,28,294/7,294/7 final,1 +hopper/final-obs__zero/1.0/seed0,final-obs:zero,1.0,0,3440,1,3440,10/0,10/0 final,1 +hopper/final-obs__zero/1.0/seed1,final-obs:zero,1.0,1,3397,1,3397,7/14,7/14 final,1 +hopper/final-obs__zero/1.0/seed2,final-obs:zero,1.0,2,3453,1,3453,8/2,8/2 final,1 +hopper/final-obs__zero/one/seed0,final-obs:zero,one,0,1,1,1,3267/0,3267/0 final,1 +hopper/final-obs__zero/one/seed1,final-obs:zero,one,1,1,1,1,3255/0,3255/0 final,1 +hopper/final-obs__zero/one/seed2,final-obs:zero,one,2,1,1,1,3379/0,3379/0 final,1 +hopper/log__drop-first/0.01/seed0,log:drop-first,0.01,0,30,0,0,,,1 +hopper/log__drop-first/0.01/seed1,log:drop-first,0.01,1,29,0,0,,,1 +hopper/log__drop-first/0.01/seed2,log:drop-first,0.01,2,32,0,0,,,1 +hopper/log__drop-first/1.0/seed0,log:drop-first,1.0,0,3357,0,0,,,1 +hopper/log__drop-first/1.0/seed1,log:drop-first,1.0,1,3271,0,0,,,1 +hopper/log__drop-first/1.0/seed2,log:drop-first,1.0,2,3552,0,0,,,1 +hopper/log__drop-first/one/seed0,log:drop-first,one,0,1,0,0,,,1 +hopper/log__drop-first/one/seed1,log:drop-first,one,1,1,0,0,,,1 +hopper/log__drop-first/one/seed2,log:drop-first,one,2,1,0,0,,,1 +hopper/log__short/0.01/seed0,log:short,0.01,0,30,0,0,,,1 +hopper/log__short/0.01/seed1,log:short,0.01,1,29,0,0,,,1 +hopper/log__short/0.01/seed2,log:short,0.01,2,32,0,0,,,1 +hopper/log__short/1.0/seed0,log:short,1.0,0,3357,0,0,,,1 +hopper/log__short/1.0/seed1,log:short,1.0,1,3271,0,0,,,1 +hopper/log__short/1.0/seed2,log:short,1.0,2,3552,0,0,,,1 +hopper/log__short/one/seed0,log:short,one,0,1,0,0,,,1 +hopper/log__short/one/seed1,log:short,one,1,1,0,0,,,1 +hopper/log__short/one/seed2,log:short,one,2,1,0,0,,,1 +hopper/none/1.0/seed0,none,1.0,0,0,0,0,,,1 +hopper/none/1.0/seed1,none,1.0,1,0,0,0,,,1 +hopper/none/1.0/seed2,none,1.0,2,0,0,0,,,1 +hopper/obs__f16/0.01/seed0,obs:f16,0.01,0,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__f16/0.01/seed1,obs:f16,0.01,1,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__f16/0.01/seed2,obs:f16,0.01,2,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__f16/1.0/seed0,obs:f16,1.0,0,1024016,1,1024000,0/0,0/0 obs,1 +hopper/obs__f16/1.0/seed1,obs:f16,1.0,1,1024016,1,1024000,0/0,0/0 obs,1 +hopper/obs__f16/1.0/seed2,obs:f16,1.0,2,1024016,1,1024000,0/0,0/0 obs,1 +hopper/obs__f16/one/seed0,obs:f16,one,0,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__f16/one/seed1,obs:f16,one,1,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__f16/one/seed2,obs:f16,one,2,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__stale/0.01/seed0,obs:stale,0.01,0,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__stale/0.01/seed1,obs:stale,0.01,1,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__stale/0.01/seed2,obs:stale,0.01,2,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__stale/1.0/seed0,obs:stale,1.0,0,1024000,1,1023984,1/0,1/0 obs,1 +hopper/obs__stale/1.0/seed1,obs:stale,1.0,1,1024000,1,1023984,1/0,1/0 obs,1 +hopper/obs__stale/1.0/seed2,obs:stale,1.0,2,1024000,1,1023984,1/0,1/0 obs,1 +hopper/obs__stale/one/seed0,obs:stale,one,0,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__stale/one/seed1,obs:stale,one,1,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__stale/one/seed2,obs:stale,one,2,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__swap/0.01/seed0,obs:swap,0.01,0,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__swap/0.01/seed1,obs:swap,0.01,1,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__swap/0.01/seed2,obs:swap,0.01,2,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__swap/1.0/seed0,obs:swap,1.0,0,1024016,1,1024000,0/0,0/0 obs,1 +hopper/obs__swap/1.0/seed1,obs:swap,1.0,1,1024016,1,1024000,0/0,0/0 obs,1 +hopper/obs__swap/1.0/seed2,obs:swap,1.0,2,1024016,1,1024000,0/0,0/0 obs,1 +hopper/obs__swap/one/seed0,obs:swap,one,0,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__swap/one/seed1,obs:swap,one,1,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__swap/one/seed2,obs:swap,one,2,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__zero/0.01/seed0,obs:zero,0.01,0,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__zero/0.01/seed1,obs:zero,0.01,1,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__zero/0.01/seed2,obs:zero,0.01,2,10067,1,10067,5/7,5/7 obs,1 +hopper/obs__zero/1.0/seed0,obs:zero,1.0,0,1024016,1,1024000,0/0,0/0 obs,1 +hopper/obs__zero/1.0/seed1,obs:zero,1.0,1,1024016,1,1024000,0/0,0/0 obs,1 +hopper/obs__zero/1.0/seed2,obs:zero,1.0,2,1024016,1,1024000,0/0,0/0 obs,1 +hopper/obs__zero/one/seed0,obs:zero,one,0,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__zero/one/seed1,obs:zero,one,1,1,1,1,3249/0,3249/0 obs,1 +hopper/obs__zero/one/seed2,obs:zero,one,2,1,1,1,3249/0,3249/0 obs,1 +hopper/reward__f16/0.01/seed0,reward:f16,0.01,0,10066,1,10066,5/7,5/7 reward,1 +hopper/reward__f16/0.01/seed1,reward:f16,0.01,1,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__f16/0.01/seed2,reward:f16,0.01,2,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__f16/1.0/seed0,reward:f16,1.0,0,1023872,1,1023872,0/0,0/0 reward,1 +hopper/reward__f16/1.0/seed1,reward:f16,1.0,1,1023882,1,1023882,0/0,0/0 reward,1 +hopper/reward__f16/1.0/seed2,reward:f16,1.0,2,1023890,1,1023890,0/0,0/0 reward,1 +hopper/reward__f16/one/seed0,reward:f16,one,0,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__f16/one/seed1,reward:f16,one,1,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__f16/one/seed2,reward:f16,one,2,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__stale/0.01/seed0,reward:stale,0.01,0,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__stale/0.01/seed1,reward:stale,0.01,1,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__stale/0.01/seed2,reward:stale,0.01,2,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__stale/1.0/seed0,reward:stale,1.0,0,1023999,1,1023999,0/0,0/0 reward,1 +hopper/reward__stale/1.0/seed1,reward:stale,1.0,1,1023999,1,1023999,0/0,0/0 reward,1 +hopper/reward__stale/1.0/seed2,reward:stale,1.0,2,1024000,1,1024000,0/0,0/0 reward,1 +hopper/reward__stale/one/seed0,reward:stale,one,0,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__stale/one/seed1,reward:stale,one,1,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__stale/one/seed2,reward:stale,one,2,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__swap/0.01/seed0,reward:swap,0.01,0,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__swap/0.01/seed1,reward:swap,0.01,1,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__swap/0.01/seed2,reward:swap,0.01,2,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__swap/1.0/seed0,reward:swap,1.0,0,1024000,1,1024000,0/0,0/0 reward,1 +hopper/reward__swap/1.0/seed1,reward:swap,1.0,1,1024000,1,1024000,0/0,0/0 reward,1 +hopper/reward__swap/1.0/seed2,reward:swap,1.0,2,1024000,1,1024000,0/0,0/0 reward,1 +hopper/reward__swap/one/seed0,reward:swap,one,0,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__swap/one/seed1,reward:swap,one,1,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__swap/one/seed2,reward:swap,one,2,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__zero/0.01/seed0,reward:zero,0.01,0,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__zero/0.01/seed1,reward:zero,0.01,1,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__zero/0.01/seed2,reward:zero,0.01,2,10067,1,10067,5/7,5/7 reward,1 +hopper/reward__zero/1.0/seed0,reward:zero,1.0,0,1024000,1,1024000,0/0,0/0 reward,1 +hopper/reward__zero/1.0/seed1,reward:zero,1.0,1,1024000,1,1024000,0/0,0/0 reward,1 +hopper/reward__zero/1.0/seed2,reward:zero,1.0,2,1024000,1,1024000,0/0,0/0 reward,1 +hopper/reward__zero/one/seed0,reward:zero,one,0,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__zero/one/seed1,reward:zero,one,1,1,1,1,3249/0,3249/0 reward,1 +hopper/reward__zero/one/seed2,reward:zero,one,2,1,1,1,3249/0,3249/0 reward,1 +hopper/step__fill/0.01/seed0,step:fill,0.01,0,10067,1,1022058,5/7,5/7 action,1 +hopper/step__fill/0.01/seed1,step:fill,0.01,1,10067,1,1022058,5/7,5/7 action,1 +hopper/step__fill/0.01/seed2,step:fill,0.01,2,10067,1,1022058,5/7,5/7 action,1 +hopper/step__fill/1.0/seed0,step:fill,1.0,0,1024000,1,1024000,0/0,0/0 steps,1 +hopper/step__fill/1.0/seed1,step:fill,1.0,1,1024000,1,1024000,0/0,0/0 steps,1 +hopper/step__fill/1.0/seed2,step:fill,1.0,2,1024000,1,1024000,0/0,0/0 steps,1 +hopper/step__fill/one/seed0,step:fill,one,0,1,1,60751,3249/0,3249/0 action,1 +hopper/step__fill/one/seed1,step:fill,one,1,1,1,60751,3249/0,3249/0 action,1 +hopper/step__fill/one/seed2,step:fill,one,2,1,1,60751,3249/0,3249/0 action,1 +hopper/terminated__as-trunc/0.01/seed0,terminated:as-trunc,0.01,0,42,1,42,50/10,50/10 limit,1 +hopper/terminated__as-trunc/0.01/seed1,terminated:as-trunc,0.01,1,38,1,38,166/7,166/7 limit,1 +hopper/terminated__as-trunc/0.01/seed2,terminated:as-trunc,0.01,2,28,1,28,294/7,294/7 limit,1 +hopper/terminated__as-trunc/1.0/seed0,terminated:as-trunc,1.0,0,7552,1,7552,10/0,10/0 limit,1 +hopper/terminated__as-trunc/1.0/seed1,terminated:as-trunc,1.0,1,7880,1,7880,7/14,7/14 limit,1 +hopper/terminated__as-trunc/1.0/seed2,terminated:as-trunc,1.0,2,6856,1,6856,8/2,8/2 limit,1 +hopper/terminated__as-trunc/one/seed0,terminated:as-trunc,one,0,1,1,1,3267/0,3267/0 limit,1 +hopper/terminated__as-trunc/one/seed1,terminated:as-trunc,one,1,1,1,1,3255/0,3255/0 limit,1 +hopper/terminated__as-trunc/one/seed2,terminated:as-trunc,one,2,1,1,1,3379/0,3379/0 limit,1 +hopper/terminated__drop/0.01/seed0,terminated:drop,0.01,0,24,1,24,50/10,50/10 end,1 +hopper/terminated__drop/0.01/seed1,terminated:drop,0.01,1,37,1,37,166/7,166/7 end,1 +hopper/terminated__drop/0.01/seed2,terminated:drop,0.01,2,39,1,39,294/7,294/7 end,1 +hopper/terminated__drop/1.0/seed0,terminated:drop,1.0,0,7178,1,7178,10/0,10/0 end,1 +hopper/terminated__drop/1.0/seed1,terminated:drop,1.0,1,6873,1,6873,7/14,7/14 end,1 +hopper/terminated__drop/1.0/seed2,terminated:drop,1.0,2,7201,1,7201,8/2,8/2 end,1 +hopper/terminated__drop/one/seed0,terminated:drop,one,0,1,1,1,3267/0,3267/0 end,1 +hopper/terminated__drop/one/seed1,terminated:drop,one,1,1,1,1,3255/0,3255/0 end,1 +hopper/terminated__drop/one/seed2,terminated:drop,one,2,1,1,1,3379/0,3379/0 end,1 +hopper/terminated__spurious/0.01/seed0,terminated:spurious,0.01,0,10000,1,10000,5/7,5/7 end,1 +hopper/terminated__spurious/0.01/seed1,terminated:spurious,0.01,1,10008,1,10008,5/7,5/7 end,1 +hopper/terminated__spurious/0.01/seed2,terminated:spurious,0.01,2,10007,1,10007,5/7,5/7 end,1 +hopper/terminated__spurious/1.0/seed0,terminated:spurious,1.0,0,999951,1,999951,0/0,0/0 end,1 +hopper/terminated__spurious/1.0/seed1,terminated:spurious,1.0,1,1003087,1,1003087,0/0,0/0 end,1 +hopper/terminated__spurious/1.0/seed2,terminated:spurious,1.0,2,998368,1,998368,0/0,0/0 end,1 +hopper/terminated__spurious/one/seed0,terminated:spurious,one,0,1,1,1,3249/0,3249/0 end,1 +hopper/terminated__spurious/one/seed1,terminated:spurious,one,1,1,1,1,3249/0,3249/0 end,1 +hopper/terminated__spurious/one/seed2,terminated:spurious,one,2,1,1,1,3249/0,3249/0 end,1 +hopper/truncated__as-term/0.01/seed0,truncated:as-term,0.01,0,3,1,3,21625/1,21625/1 limit,1 +hopper/truncated__as-term/0.01/seed1,truncated:as-term,0.01,1,1,1,1,23863/2,23863/2 limit,1 +hopper/truncated__as-term/0.01/seed2,truncated:as-term,0.01,2,1,1,1,28407/13,28407/13 limit,1 +hopper/truncated__as-term/1.0/seed0,truncated:as-term,1.0,0,103,1,103,21205/13,21205/13 limit,1 +hopper/truncated__as-term/1.0/seed1,truncated:as-term,1.0,1,145,1,145,13936/12,13936/12 limit,1 +hopper/truncated__as-term/1.0/seed2,truncated:as-term,1.0,2,163,1,163,13952/0,13952/0 limit,1 +hopper/truncated__as-term/one/seed0,truncated:as-term,one,0,1,1,1,27399/0,27399/0 limit,1 +hopper/truncated__as-term/one/seed1,truncated:as-term,one,1,1,1,1,16718/0,16718/0 limit,1 +hopper/truncated__as-term/one/seed2,truncated:as-term,one,2,1,1,1,13952/0,13952/0 limit,1 +hopper/truncated__drop/0.01/seed0,truncated:drop,0.01,0,1,1,1,21625/1,21625/1 end,1 +hopper/truncated__drop/0.01/seed1,truncated:drop,0.01,1,1,1,1,23863/2,23863/2 end,1 +hopper/truncated__drop/0.01/seed2,truncated:drop,0.01,2,2,1,2,28407/13,28407/13 end,1 +hopper/truncated__drop/1.0/seed0,truncated:drop,1.0,0,103,1,103,21205/13,21205/13 end,1 +hopper/truncated__drop/1.0/seed1,truncated:drop,1.0,1,119,1,119,13936/12,13936/12 end,1 +hopper/truncated__drop/1.0/seed2,truncated:drop,1.0,2,95,1,95,13952/0,13952/0 end,1 +hopper/truncated__drop/one/seed0,truncated:drop,one,0,1,1,1,27399/0,27399/0 end,1 +hopper/truncated__drop/one/seed1,truncated:drop,one,1,1,1,1,16718/0,16718/0 end,1 +hopper/truncated__drop/one/seed2,truncated:drop,one,2,1,1,1,13952/0,13952/0 end,1 +hopper/wire-float64/1.0/seed0,wire-float64,1.0,0,0,0,0,,,1 +hopper/wire-float64/1.0/seed1,wire-float64,1.0,1,0,0,0,,,1 +hopper/wire-float64/1.0/seed2,wire-float64,1.0,2,0,0,0,,,1 diff --git a/experiments/e56-hopper-faults/results/ledger.out b/experiments/e56-hopper-faults/results/ledger.out new file mode 100644 index 0000000..0db0e58 --- /dev/null +++ b/experiments/e56-hopper-faults/results/ledger.out @@ -0,0 +1 @@ +234 runs compared; right: 234 diff --git a/experiments/e56-hopper-faults/results/load.txt b/experiments/e56-hopper-faults/results/load.txt new file mode 100644 index 0000000..8f9632a --- /dev/null +++ b/experiments/e56-hopper-faults/results/load.txt @@ -0,0 +1,2 @@ + 21:10:43 up 28 days, 10:12, 1 user, load average: 0.35, 0.37, 0.45 + 23:13:02 up 28 days, 12:14, 1 user, load average: 3.25, 6.75, 9.04 diff --git a/experiments/e56-hopper-faults/results/merge.out b/experiments/e56-hopper-faults/results/merge.out new file mode 100644 index 0000000..d2a9b60 --- /dev/null +++ b/experiments/e56-hopper-faults/results/merge.out @@ -0,0 +1 @@ +244 runs diff --git a/experiments/e56-hopper-faults/results/runs.csv b/experiments/e56-hopper-faults/results/runs.csv new file mode 100644 index 0000000..9d44f02 --- /dev/null +++ b/experiments/e56-hopper-faults/results/runs.csv @@ -0,0 +1,245 @@ +env,fault,dose,seed,cells,raises,rule,strict,weights,record,bridge,gain,last,episodes,sha,learn_s,raised,complete +hopper,action:clip,0.01,0,9025,0,0,0,1,0,0,1961.5,1978.6,2971,6d8a059d,288.594,,1 +hopper,action:clip,0.01,1,9424,0,0,0,1,0,0,1774.6,1794.9,3711,bdd175c3,284.147,,1 +hopper,action:clip,0.01,2,9420,0,0,0,1,0,0,1877.6,1896.9,3890,e7929304,284.827,,1 +hopper,action:clip,1.0,0,963542,0,1,1,1,0,0,692.2,787.6,6633,38a5ded5,293.096,,1 +hopper,action:clip,1.0,1,962566,0,0,1,1,0,0,1133.6,1201.3,5413,cfad8be0,288.068,,1 +hopper,action:clip,1.0,2,975678,0,1,1,1,0,0,262.5,372.3,7675,24f64c24,291.43,,1 +hopper,action:clip,one,0,1,0,0,0,1,0,0,2326.9,2344.5,3131,8be60679,286.277,,1 +hopper,action:clip,one,1,1,0,0,0,1,0,0,1778.6,1797.0,3302,52489707,283.621,,1 +hopper,action:clip,one,2,1,0,0,0,1,0,0,1602.6,1620.8,3648,fc696b76,284.622,,1 +hopper,action:f16,0.01,0,9882,0,0,0,1,0,0,1798.2,1816.2,3414,2e0158cf,283.756,,1 +hopper,action:f16,0.01,1,9875,0,0,0,1,0,0,2079.0,2096.8,3158,81ec6cfb,282.216,,1 +hopper,action:f16,0.01,2,9772,0,0,0,1,0,0,2181.0,2197.9,3197,d35e7771,283.956,,1 +hopper,action:f16,1.0,0,1005791,0,0,0,1,0,0,2350.5,2368.1,3075,d44914f5,287.673,,1 +hopper,action:f16,1.0,1,990123,0,0,0,1,0,0,1996.3,2014.9,3239,16ef799d,283.155,,1 +hopper,action:f16,1.0,2,1010459,0,0,0,1,0,0,2287.1,2304.0,3235,ce3db36d,286.034,,1 +hopper,action:f16,one,0,1,0,0,0,1,0,0,1765.3,1783.1,3345,179aeb27,286.78,,1 +hopper,action:f16,one,1,1,0,0,0,1,0,0,1814.2,1834.4,3671,4635140f,282.764,,1 +hopper,action:f16,one,2,1,0,0,0,1,0,0,2175.8,2192.5,3269,f4266978,284.721,,1 +hopper,action:stale,0.01,0,10067,0,0,0,1,0,0,1718.1,1737.5,3722,44aa1d08,287.35,,1 +hopper,action:stale,0.01,1,10067,0,0,0,1,0,0,1928.9,1947.7,3320,279da55f,284.747,,1 +hopper,action:stale,0.01,2,10062,0,0,0,1,0,0,2244.8,2262.4,3658,2e0a1dbe,286.493,,1 +hopper,action:stale,1.0,0,1022705,0,0,0,1,0,0,1964.7,1981.9,3205,25538fca,289.194,,1 +hopper,action:stale,1.0,1,1021290,0,0,0,1,0,0,1856.6,1877.2,3651,2bff1555,284.089,,1 +hopper,action:stale,1.0,2,1021873,0,0,0,1,0,0,1926.2,1944.8,3971,d144972a,286.31,,1 +hopper,action:stale,one,0,1,0,0,0,1,0,0,1841.3,1858.9,3189,16b63912,285.939,,1 +hopper,action:stale,one,1,1,0,0,0,1,0,0,2048.9,2067.3,3326,fbe29342,284.356,,1 +hopper,action:stale,one,2,1,0,0,0,1,0,0,1877.3,1895.5,3611,2b7e62ad,287.061,,1 +hopper,action:swap,0.01,0,10063,0,0,0,1,0,0,1594.5,1612.8,3370,b116e227,288.015,,1 +hopper,action:swap,0.01,1,10066,0,0,0,1,0,0,2058.6,2076.6,3225,0a61ea98,284.877,,1 +hopper,action:swap,0.01,2,10062,0,0,0,1,0,0,2017.1,2035.2,3702,e045239b,286.439,,1 +hopper,action:swap,1.0,0,1023968,0,1,1,1,0,0,-9.4,8.1,70209,1f07144f,294.513,,1 +hopper,action:swap,1.0,1,1023975,0,1,1,1,0,0,-14.9,7.3,54973,20dec241,294.904,,1 +hopper,action:swap,1.0,2,1023986,0,1,1,1,0,0,-10.2,5.6,58541,52a8e45b,291.92,,1 +hopper,action:swap,one,0,1,0,0,0,1,0,0,2113.6,2131.2,3183,8a23ae42,285.764,,1 +hopper,action:swap,one,1,1,0,0,0,1,0,0,2149.9,2167.7,3159,1c793580,283.441,,1 +hopper,action:swap,one,2,1,0,0,0,1,0,0,2289.8,2307.1,3338,0a6e64d7,283.767,,1 +hopper,action:zero,0.01,0,10067,0,0,0,1,0,0,1973.8,1991.8,3537,b3bedcf3,286.249,,1 +hopper,action:zero,0.01,1,10067,0,0,0,1,0,0,1533.0,1552.0,3587,df18c84b,283.39,,1 +hopper,action:zero,0.01,2,10067,0,0,0,1,0,0,1752.3,1770.9,3953,cfa28245,286.364,,1 +hopper,action:zero,1.0,0,1024000,0,1,1,1,0,0,-3.4,147.0,6765,a83be1a7,296.873,,1 +hopper,action:zero,1.0,1,1024000,0,1,1,1,0,0,-3.4,147.3,6762,fe7fb370,293.718,,1 +hopper,action:zero,1.0,2,1024000,0,1,1,1,0,0,-3.6,146.5,6776,1ae6351d,297.211,,1 +hopper,action:zero,one,0,1,0,0,0,1,0,0,1999.4,2017.1,3200,233ff646,286.173,,1 +hopper,action:zero,one,1,1,0,0,0,1,0,0,2204.5,2222.6,3250,c65411f9,283.458,,1 +hopper,action:zero,one,2,1,0,0,0,1,0,0,1739.4,1757.2,3453,182c7eab,286.515,,1 +hopper,delay-1ms,1.0,0,0,0,0,0,0,0,0,1736.9,1754.8,3357,13daa014,384.673,,1 +hopper,delay-1ms,1.0,1,0,0,0,0,0,0,0,2250.6,2268.9,3271,da9f3114,382.305,,1 +hopper,delay-1ms,1.0,2,0,0,0,0,0,0,0,1759.8,1777.8,3552,dc7c18bd,380.056,,1 +hopper,final-obs:f16,0.01,0,37,0,0,0,1,0,0,1930.7,1948.7,3414,dab6bfa5,283.468,,1 +hopper,final-obs:f16,0.01,1,42,0,0,0,1,0,0,2048.4,2066.4,3227,32b4a88c,282.474,,1 +hopper,final-obs:f16,0.01,2,31,0,0,0,1,0,0,1951.9,1970.0,3574,a4c1c920,281.887,,1 +hopper,final-obs:f16,1.0,0,3374,0,0,0,1,0,0,1927.6,1945.6,3374,0822d8cd,284.466,,1 +hopper,final-obs:f16,1.0,1,3457,0,0,0,1,0,0,1768.2,1787.0,3457,f79ba434,281.268,,1 +hopper,final-obs:f16,1.0,2,3483,0,0,0,1,0,0,1971.2,1989.2,3483,81b212a4,283.113,,1 +hopper,final-obs:f16,one,0,1,0,0,0,0,0,0,1736.9,1754.8,3357,13daa014,283.419,,1 +hopper,final-obs:f16,one,1,1,0,0,0,0,0,0,2250.6,2268.9,3271,da9f3114,282.012,,1 +hopper,final-obs:f16,one,2,1,0,0,0,0,0,0,1759.8,1777.8,3552,dc7c18bd,285.024,,1 +hopper,final-obs:stale,0.01,0,43,0,0,0,1,0,0,1761.6,1779.5,3346,d9789c49,285.624,,1 +hopper,final-obs:stale,0.01,1,43,0,0,0,1,0,0,1957.0,1975.4,3300,ab9b4b7b,281.858,,1 +hopper,final-obs:stale,0.01,2,29,0,0,0,1,0,0,2072.4,2090.4,3503,d20a7273,283.606,,1 +hopper,final-obs:stale,1.0,0,3424,0,0,0,1,0,0,1942.8,1960.8,3424,c16e62f3,284.189,,1 +hopper,final-obs:stale,1.0,1,3328,0,0,0,1,0,0,1937.4,1955.7,3328,94fe0250,283.519,,1 +hopper,final-obs:stale,1.0,2,3505,0,0,0,1,0,0,1976.6,1994.6,3505,66dc8455,281.437,,1 +hopper,final-obs:stale,one,0,1,0,0,0,0,0,0,1736.9,1754.8,3357,13daa014,283.531,,1 +hopper,final-obs:stale,one,1,1,0,0,0,0,0,0,2250.6,2268.9,3271,da9f3114,282.085,,1 +hopper,final-obs:stale,one,2,1,0,0,0,0,0,0,1759.8,1777.8,3552,dc7c18bd,282.769,,1 +hopper,final-obs:swap,0.01,0,40,0,0,0,1,0,0,1811.7,1829.5,3460,b3cb8a2d,284.806,,1 +hopper,final-obs:swap,0.01,1,36,0,0,0,1,0,0,1896.0,1914.3,3271,33911c22,279.533,,1 +hopper,final-obs:swap,0.01,2,31,0,0,0,1,0,0,1820.9,1838.9,3575,f51c5465,282.766,,1 +hopper,final-obs:swap,1.0,0,3429,0,0,0,1,0,0,1837.1,1855.0,3429,88e663e0,284.423,,1 +hopper,final-obs:swap,1.0,1,3505,0,0,0,1,0,0,1906.3,1925.4,3505,1184a831,283.291,,1 +hopper,final-obs:swap,1.0,2,3447,0,0,0,1,0,0,2007.3,2025.1,3447,3fdf94e1,283.355,,1 +hopper,final-obs:swap,one,0,1,0,0,0,0,0,0,1736.9,1754.8,3357,13daa014,285.125,,1 +hopper,final-obs:swap,one,1,1,0,0,0,0,0,0,2250.6,2268.9,3271,da9f3114,283.178,,1 +hopper,final-obs:swap,one,2,1,0,0,0,0,0,0,1759.8,1777.8,3552,dc7c18bd,283.545,,1 +hopper,final-obs:zero,0.01,0,36,0,0,0,1,0,0,1818.2,1836.1,3430,53b50822,283.19,,1 +hopper,final-obs:zero,0.01,1,35,0,0,0,1,0,0,1871.8,1890.2,3334,4fda6f17,282.095,,1 +hopper,final-obs:zero,0.01,2,28,0,0,0,1,0,0,2035.1,2053.1,3485,853b75a0,283.764,,1 +hopper,final-obs:zero,1.0,0,3440,0,0,0,1,0,0,1840.2,1858.2,3440,5443fa72,283.616,,1 +hopper,final-obs:zero,1.0,1,3397,0,0,0,1,0,0,1904.3,1922.8,3397,fc096467,281.652,,1 +hopper,final-obs:zero,1.0,2,3453,0,0,0,1,0,0,2016.3,2034.1,3453,8d9a34a3,283.231,,1 +hopper,final-obs:zero,one,0,1,0,0,0,0,0,0,1736.9,1754.8,3357,13daa014,284.2,,1 +hopper,final-obs:zero,one,1,1,0,0,0,0,0,0,2250.6,2268.9,3271,da9f3114,283.577,,1 +hopper,final-obs:zero,one,2,1,0,0,0,0,0,0,1759.8,1777.8,3552,dc7c18bd,283.449,,1 +hopper,log:drop-first,0.01,0,30,0,0,0,0,1,1,1736.9,1754.8,3357,13daa014,280.407,,1 +hopper,log:drop-first,0.01,1,29,0,0,0,0,1,1,2250.6,2268.8,3271,da9f3114,280.383,,1 +hopper,log:drop-first,0.01,2,32,0,0,0,0,1,1,1759.7,1777.8,3552,dc7c18bd,283.283,,1 +hopper,log:drop-first,1.0,0,3357,0,0,0,0,1,1,1736.9,1753.8,3357,13daa014,282.426,,1 +hopper,log:drop-first,1.0,1,3271,0,0,0,0,1,1,2250.5,2267.8,3271,da9f3114,281.365,,1 +hopper,log:drop-first,1.0,2,3552,0,0,0,0,1,1,1759.7,1776.8,3552,dc7c18bd,279.09,,1 +hopper,log:drop-first,one,0,1,0,0,0,0,1,1,1736.9,1754.8,3357,13daa014,280.985,,1 +hopper,log:drop-first,one,1,1,0,0,0,0,1,1,2250.6,2268.9,3271,da9f3114,277.655,,1 +hopper,log:drop-first,one,2,1,0,0,0,0,1,1,1759.8,1777.8,3552,dc7c18bd,280.48,,1 +hopper,log:short,0.01,0,30,0,0,0,0,1,1,1736.9,1754.8,3357,13daa014,281.682,,1 +hopper,log:short,0.01,1,29,0,0,0,0,1,1,2250.6,2268.9,3271,da9f3114,280.077,,1 +hopper,log:short,0.01,2,32,0,0,0,0,1,1,1759.8,1777.8,3552,dc7c18bd,279.556,,1 +hopper,log:short,1.0,0,3357,0,0,0,0,1,1,1736.9,1754.8,3357,13daa014,281.587,,1 +hopper,log:short,1.0,1,3271,0,0,0,0,1,1,2250.6,2268.9,3271,da9f3114,281.885,,1 +hopper,log:short,1.0,2,3552,0,0,0,0,1,1,1759.8,1777.8,3552,dc7c18bd,281.696,,1 +hopper,log:short,one,0,1,0,0,0,0,1,1,1736.9,1754.8,3357,13daa014,282.216,,1 +hopper,log:short,one,1,1,0,0,0,0,1,1,2250.6,2268.9,3271,da9f3114,280.289,,1 +hopper,log:short,one,2,1,0,0,0,0,1,1,1759.8,1777.8,3552,dc7c18bd,278.288,,1 +hopper,none,1.0,0,0,0,0,0,0,0,0,1736.9,1754.8,3357,13daa014,282.973,,1 +hopper,none,1.0,1,0,0,0,0,0,0,0,2250.6,2268.9,3271,da9f3114,281.983,,1 +hopper,none,1.0,2,0,0,0,0,0,0,0,1759.8,1777.8,3552,dc7c18bd,283.044,,1 +hopper,none,1.0,10,0,0,0,0,0,0,0,2169.5,2190.9,3848,d5a3ae29,276.377,,1 +hopper,none,1.0,11,0,0,0,0,0,0,0,2249.1,2267.8,3342,2308827d,278.125,,1 +hopper,none,1.0,12,0,0,0,0,0,0,0,1909.0,1930.3,3356,9ee81f6e,276.252,,1 +hopper,none,1.0,13,0,0,0,0,0,0,0,2200.3,2218.7,3327,f48b7b6b,266.729,,1 +hopper,none,1.0,14,0,0,0,0,0,0,0,1591.8,1612.8,3598,e75667e3,275.453,,1 +hopper,none,1.0,15,0,0,0,0,0,0,0,2171.2,2190.5,3324,6e5886cd,269.889,,1 +hopper,none,1.0,16,0,0,0,0,0,0,0,2252.5,2271.7,3400,af5afed3,255.868,,1 +hopper,none,1.0,17,0,0,0,0,0,0,0,1675.9,1693.8,3686,5aff75d6,255.188,,1 +hopper,none,1.0,18,0,0,0,0,0,0,0,2173.2,2190.1,3603,03cbf434,254.875,,1 +hopper,none,1.0,19,0,0,0,0,0,0,0,1729.5,1747.9,3403,53d2bb4d,261.27,,1 +hopper,obs:f16,0.01,0,10067,0,0,0,1,0,0,1772.3,1790.1,3468,bc35ca61,286.778,,1 +hopper,obs:f16,0.01,1,10067,0,0,0,1,0,0,1618.1,1636.8,3442,e860d985,282.716,,1 +hopper,obs:f16,0.01,2,10067,0,0,0,1,0,0,1918.8,1936.8,3481,e25b790c,284.905,,1 +hopper,obs:f16,1.0,0,1024016,0,0,0,1,0,0,1820.1,1838.1,3434,0b88c98a,288.138,,1 +hopper,obs:f16,1.0,1,1024016,0,0,0,1,0,0,1741.1,1759.7,3157,a39c8fdc,282.658,,1 +hopper,obs:f16,1.0,2,1024016,0,0,0,1,0,0,2198.4,2215.4,3294,992371df,285.414,,1 +hopper,obs:f16,one,0,1,0,0,0,1,0,0,1998.2,2016.1,3298,53f4d25d,284.209,,1 +hopper,obs:f16,one,1,1,0,0,0,1,0,0,2126.0,2144.1,3233,453a803a,284.115,,1 +hopper,obs:f16,one,2,1,0,0,0,1,0,0,1954.0,1972.1,3573,3a996d59,281.953,,1 +hopper,obs:stale,0.01,0,10067,0,0,0,1,0,0,1771.5,1789.6,3341,b50d63b7,282.439,,1 +hopper,obs:stale,0.01,1,10067,0,0,0,1,0,0,2294.9,2312.3,2994,b5b8c46a,283.419,,1 +hopper,obs:stale,0.01,2,10067,0,0,0,1,0,0,1730.8,1748.2,3397,b7db0b90,284.206,,1 +hopper,obs:stale,1.0,0,1024000,0,0,0,1,0,0,1309.0,1328.3,3885,5c7c9824,284.779,,1 +hopper,obs:stale,1.0,1,1024000,0,1,1,1,0,0,957.8,991.0,5085,96c4ca77,285.353,,1 +hopper,obs:stale,1.0,2,1024000,0,0,0,1,0,0,1810.0,1829.8,4143,9543c655,283.701,,1 +hopper,obs:stale,one,0,1,0,0,0,1,0,0,2018.7,2036.6,3405,c74f370d,283.289,,1 +hopper,obs:stale,one,1,1,0,0,0,1,0,0,2052.7,2070.6,3212,50ca29ec,283.539,,1 +hopper,obs:stale,one,2,1,0,0,0,1,0,0,2068.5,2086.7,3628,41e61933,283.193,,1 +hopper,obs:swap,0.01,0,10067,0,0,0,1,0,0,1613.9,1632.0,3560,7e429cff,284.781,,1 +hopper,obs:swap,0.01,1,10067,0,0,0,1,0,0,1611.4,1631.3,3619,9bf6d868,284.4,,1 +hopper,obs:swap,0.01,2,10067,0,0,0,1,0,0,1493.2,1513.4,4166,16a1a6b5,285.56,,1 +hopper,obs:swap,1.0,0,1024016,0,1,1,1,0,0,49.4,101.9,21465,9f5758c0,297.845,,1 +hopper,obs:swap,1.0,1,1024016,0,1,1,1,0,0,51.3,104.7,23786,96d218df,292.723,,1 +hopper,obs:swap,1.0,2,1024016,0,1,1,1,0,0,56.4,108.6,20676,1056980e,293.809,,1 +hopper,obs:swap,one,0,1,0,0,0,1,0,0,1692.4,1710.4,3302,d066684e,283.275,,1 +hopper,obs:swap,one,1,1,0,0,0,1,0,0,2166.6,2184.7,3224,ab2dff3d,281.652,,1 +hopper,obs:swap,one,2,1,0,0,0,1,0,0,2209.6,2227.0,3427,b8dceb9c,281.232,,1 +hopper,obs:zero,0.01,0,10067,0,0,0,1,0,0,1653.2,1671.7,3630,134d754d,282.551,,1 +hopper,obs:zero,0.01,1,10067,0,0,0,1,0,0,1573.8,1594.3,3654,76045eee,284.493,,1 +hopper,obs:zero,0.01,2,10067,0,0,0,1,0,0,1879.4,1897.6,3665,b905d051,281.922,,1 +hopper,obs:zero,1.0,0,1024016,0,1,1,1,0,0,47.7,102.3,24192,9299661a,291.658,,1 +hopper,obs:zero,1.0,1,1024016,0,1,1,1,0,0,34.1,88.7,21166,15147da6,292.718,,1 +hopper,obs:zero,1.0,2,1024016,0,1,1,1,0,0,55.9,109.8,20206,ace7d78f,292.969,,1 +hopper,obs:zero,one,0,1,0,0,0,1,0,0,2055.9,2073.6,3220,8344511e,281.989,,1 +hopper,obs:zero,one,1,1,0,0,0,1,0,0,1571.6,1589.9,3353,d7a8bcef,282.647,,1 +hopper,obs:zero,one,2,1,0,0,0,1,0,0,2030.4,2048.2,3451,1582d021,282.04,,1 +hopper,reward:f16,0.01,0,10066,0,0,0,1,0,0,1730.9,1749.0,3384,9db6abe8,283.823,,1 +hopper,reward:f16,0.01,1,10067,0,0,0,1,0,0,1985.1,2003.4,3343,abe9c4c1,284.948,,1 +hopper,reward:f16,0.01,2,10067,0,0,0,1,0,0,1922.7,1940.2,3412,71f23cdd,282.389,,1 +hopper,reward:f16,1.0,0,1023872,0,0,0,1,0,0,1974.5,1992.5,3335,ff75b00a,282.499,,1 +hopper,reward:f16,1.0,1,1023882,0,0,0,1,0,0,1887.0,1905.4,3181,a8b32d4e,282.84,,1 +hopper,reward:f16,1.0,2,1023890,0,0,0,1,0,0,1719.6,1737.5,3527,906dcd4e,281.962,,1 +hopper,reward:f16,one,0,1,0,0,0,1,0,0,1934.0,1951.9,3340,fafbc73d,284.768,,1 +hopper,reward:f16,one,1,1,0,0,0,1,0,0,1929.4,1948.0,3378,e06d8d8c,284.142,,1 +hopper,reward:f16,one,2,1,0,0,0,1,0,0,2486.1,2502.9,3230,17ba85af,282.299,,1 +hopper,reward:stale,0.01,0,10067,0,0,0,1,1,0,2190.8,2208.9,3419,66bd30a5,286.756,,1 +hopper,reward:stale,0.01,1,10067,0,0,0,1,1,0,2202.5,2220.7,3367,21dbf1f4,282.059,,1 +hopper,reward:stale,0.01,2,10067,0,0,0,1,1,0,2051.8,2069.5,3446,165d0c7e,283.473,,1 +hopper,reward:stale,1.0,0,1023999,0,0,0,1,1,0,1967.2,1985.1,3349,e92ff4da,287.142,,1 +hopper,reward:stale,1.0,1,1023999,0,0,0,1,1,0,2065.5,2083.4,3290,a01b5fe5,282.857,,1 +hopper,reward:stale,1.0,2,1024000,0,0,0,1,1,0,1883.2,1901.1,3467,625d58d1,283.436,,1 +hopper,reward:stale,one,0,1,0,0,0,1,0,0,1864.7,1882.7,3327,c05ce218,286.386,,1 +hopper,reward:stale,one,1,1,0,0,0,1,1,0,1630.5,1650.2,3652,7a049739,284.599,,1 +hopper,reward:stale,one,2,1,0,0,0,1,0,0,1955.6,1973.7,3604,f962b077,284.214,,1 +hopper,reward:swap,0.01,0,10067,0,0,0,1,1,0,1909.1,1927.1,3367,4d889602,288.998,,1 +hopper,reward:swap,0.01,1,10067,0,0,0,1,1,0,1861.9,1880.3,3296,6052ed84,283.781,,1 +hopper,reward:swap,0.01,2,10067,0,0,0,1,1,0,2248.8,2266.3,3415,38d84a8b,282.42,,1 +hopper,reward:swap,1.0,0,1024000,0,1,1,1,1,0,992.6,1006.1,1824,83d234b3,302.549,,1 +hopper,reward:swap,1.0,1,1024000,0,1,1,1,1,0,992.1,1005.8,1871,af362146,297.387,,1 +hopper,reward:swap,1.0,2,1024000,0,1,1,1,1,0,972.9,986.5,1827,9d7614b4,298.729,,1 +hopper,reward:swap,one,0,1,0,0,0,1,1,0,2155.5,2173.5,3447,40b97b3b,289.226,,1 +hopper,reward:swap,one,1,1,0,0,0,1,1,0,2150.1,2168.5,3311,91bd93bb,282.607,,1 +hopper,reward:swap,one,2,1,0,0,0,1,1,0,2056.9,2075.0,3664,db70a417,282.206,,1 +hopper,reward:zero,0.01,0,10067,0,0,0,1,1,0,1821.3,1839.2,3243,725bef31,284.512,,1 +hopper,reward:zero,0.01,1,10067,0,0,0,1,1,0,1855.4,1873.7,3338,1827574c,284.217,,1 +hopper,reward:zero,0.01,2,10067,0,0,0,1,1,0,1898.0,1915.9,3674,add9fb50,285.119,,1 +hopper,reward:zero,1.0,0,1024000,0,1,1,1,1,0,0.0,0.0,28732,1c1f9d61,294.914,,1 +hopper,reward:zero,1.0,1,1024000,0,1,1,1,1,0,0.0,0.0,51805,7b1220df,292.817,,1 +hopper,reward:zero,1.0,2,1024000,0,1,1,1,1,0,0.0,0.0,102149,60f405bc,293.866,,1 +hopper,reward:zero,one,0,1,0,0,0,1,1,0,1860.7,1878.4,3232,062be833,286.902,,1 +hopper,reward:zero,one,1,1,0,0,0,1,1,0,1924.6,1942.9,3285,a8a2cceb,283.079,,1 +hopper,reward:zero,one,2,1,0,0,0,1,1,0,2184.8,2202.6,3438,032d0fdb,285.604,,1 +hopper,step:fill,0.01,0,10067,0,0,0,1,1,0,1619.4,1637.7,3495,344f13fc,284.402,,1 +hopper,step:fill,0.01,1,10067,0,0,0,1,1,0,2221.9,2240.5,3321,e29fba07,282.033,,1 +hopper,step:fill,0.01,2,10067,0,0,0,1,1,0,1873.9,1891.4,3529,a93f1571,282.821,,1 +hopper,step:fill,1.0,0,1024000,0,1,1,1,0,0,,,0,54dd6b3a,190.709,,1 +hopper,step:fill,1.0,1,1024000,0,1,1,1,0,0,,,0,f0d9a30d,187.998,,1 +hopper,step:fill,1.0,2,1024000,0,1,1,1,0,0,,,0,1f3f0052,188.333,,1 +hopper,step:fill,one,0,1,0,0,0,1,1,0,1782.5,1800.2,3235,678f362f,281.855,,1 +hopper,step:fill,one,1,1,0,0,0,1,1,0,2062.3,2080.1,3192,0ad39777,279.656,,1 +hopper,step:fill,one,2,1,0,0,0,1,1,0,2162.7,2180.7,3524,dc482495,281.897,,1 +hopper,terminated:as-trunc,0.01,0,42,0,0,0,1,0,0,1917.7,1936.0,3400,ed3079b7,281.93,,1 +hopper,terminated:as-trunc,0.01,1,38,0,0,0,1,0,0,1864.0,1882.8,3485,2370a04f,279.935,,1 +hopper,terminated:as-trunc,0.01,2,28,0,0,0,1,0,0,1885.1,1903.7,3920,dfd89e43,281.333,,1 +hopper,terminated:as-trunc,1.0,0,7552,0,1,1,1,0,0,393.1,459.8,7554,5ec55c9b,285.865,,1 +hopper,terminated:as-trunc,1.0,1,7880,0,1,1,1,0,0,565.3,632.5,7880,7854334f,284.521,,1 +hopper,terminated:as-trunc,1.0,2,6856,0,1,1,1,0,0,572.5,618.6,6856,e6715198,284.579,,1 +hopper,terminated:as-trunc,one,0,1,0,0,0,1,0,0,2081.7,2099.4,3239,cd28dc41,281.305,,1 +hopper,terminated:as-trunc,one,1,1,0,0,0,1,0,0,2227.4,2245.5,3255,df3b7dea,281.366,,1 +hopper,terminated:as-trunc,one,2,1,0,0,0,1,0,0,1964.1,1981.1,3303,0301697f,283.99,,1 +hopper,terminated:drop,0.01,0,24,0,0,0,1,1,0,1655.0,1673.5,3332,a7f1ba6f,283.118,,1 +hopper,terminated:drop,0.01,1,37,0,0,0,1,1,0,1537.9,1557.3,3515,c0b1970d,282.123,,1 +hopper,terminated:drop,0.01,2,39,0,0,0,1,1,0,1700.2,1717.6,3418,c77d5ed8,283.119,,1 +hopper,terminated:drop,1.0,0,7178,0,1,1,1,1,0,,,0,8589d941,284.155,,1 +hopper,terminated:drop,1.0,1,6873,0,1,1,1,1,0,,,0,74024aca,282.487,,1 +hopper,terminated:drop,1.0,2,7201,0,1,1,1,1,0,,,0,af6d0f6d,285.103,,1 +hopper,terminated:drop,one,0,1,0,0,0,1,1,0,2040.1,2057.9,3367,abff6921,282.338,,1 +hopper,terminated:drop,one,1,1,0,0,0,1,1,0,1856.4,1874.8,3318,fd6db757,280.44,,1 +hopper,terminated:drop,one,2,1,0,0,0,1,1,0,1999.5,2017.5,3538,e1d130e1,282.046,,1 +hopper,terminated:spurious,0.01,0,10000,0,1,1,1,1,0,157.0,223.1,15643,f2aaa548,286.983,,1 +hopper,terminated:spurious,0.01,1,10008,0,1,1,1,1,0,129.8,197.4,16324,beffce16,285.99,,1 +hopper,terminated:spurious,0.01,2,10007,0,1,1,1,1,0,148.8,214.6,16536,7ffeb15d,284.587,,1 +hopper,terminated:spurious,1.0,0,999951,0,1,1,1,1,0,0.4,2.0,1024000,19c835d8,305.494,,1 +hopper,terminated:spurious,1.0,1,1003087,0,1,1,1,1,0,0.6,2.2,1024000,bc17908b,301.313,,1 +hopper,terminated:spurious,1.0,2,998368,0,1,1,1,1,0,0.4,2.0,1024000,bc723cdc,302.227,,1 +hopper,terminated:spurious,one,0,1,0,0,0,1,1,0,2241.2,2258.9,3211,f89379d8,284.515,,1 +hopper,terminated:spurious,one,1,1,0,0,0,1,1,0,1980.9,1999.2,3264,9d4e2b0a,283.356,,1 +hopper,terminated:spurious,one,2,1,0,0,0,1,1,0,2046.4,2063.2,3221,550d977f,284.985,,1 +hopper,truncated:as-term,0.01,0,3,0,0,0,1,0,0,2314.8,2332.7,3296,fc2b4c5a,282.454,,1 +hopper,truncated:as-term,0.01,1,1,0,0,0,1,0,0,1614.9,1633.4,3411,d658d08b,281.054,,1 +hopper,truncated:as-term,0.01,2,1,0,0,0,1,0,0,2047.4,2065.3,3518,7ea8931e,280.98,,1 +hopper,truncated:as-term,1.0,0,103,0,0,0,1,0,0,1799.9,1817.8,3475,6cc70f32,283.365,,1 +hopper,truncated:as-term,1.0,1,145,0,0,0,1,0,0,1996.4,2014.9,3398,6165442f,280.013,,1 +hopper,truncated:as-term,1.0,2,163,0,0,0,1,0,0,1988.1,2006.0,3511,2d622c59,283.279,,1 +hopper,truncated:as-term,one,0,1,0,0,0,1,0,0,1954.7,1972.5,3360,c0c310c6,284.731,,1 +hopper,truncated:as-term,one,1,1,0,0,0,1,0,0,2063.1,2080.9,3178,a3ef8fa9,281.857,,1 +hopper,truncated:as-term,one,2,1,0,0,0,1,0,0,1886.1,1904.1,3485,4044fb86,284.026,,1 +hopper,truncated:drop,0.01,0,1,0,0,0,1,1,0,1848.4,1866.3,3432,339bf434,284.972,,1 +hopper,truncated:drop,0.01,1,1,0,0,0,1,1,0,2045.1,2063.4,3333,abe45244,282.22,,1 +hopper,truncated:drop,0.01,2,2,0,0,0,1,1,0,1766.6,1784.8,3614,61c5468c,281.748,,1 +hopper,truncated:drop,1.0,0,103,0,0,0,1,1,0,2149.4,2167.4,3441,43393fb8,283.555,,1 +hopper,truncated:drop,1.0,1,119,0,0,0,1,1,0,1845.6,1864.0,3326,1497fee0,281.277,,1 +hopper,truncated:drop,1.0,2,95,0,0,0,1,1,0,1581.3,1599.4,3593,00272617,283.681,,1 +hopper,truncated:drop,one,0,1,0,0,0,1,1,0,1704.6,1722.5,3326,dcfe43fe,284.095,,1 +hopper,truncated:drop,one,1,1,0,0,0,1,1,0,1834.7,1852.9,3290,dc04fce5,281.538,,1 +hopper,truncated:drop,one,2,1,0,0,0,1,1,0,1955.9,1973.7,3453,655e7475,283.225,,1 +hopper,wire-float64,1.0,0,0,0,0,0,0,0,0,1736.9,1754.8,3357,13daa014,282.303,,1 +hopper,wire-float64,1.0,1,0,0,0,0,0,0,0,2250.6,2268.9,3271,da9f3114,282.401,,1 +hopper,wire-float64,1.0,2,0,0,0,0,0,0,0,1759.8,1777.8,3552,dc7c18bd,279.633,,1 diff --git a/experiments/e56-hopper-faults/results/runs.jsonl b/experiments/e56-hopper-faults/results/runs.jsonl new file mode 100644 index 0000000..5b888fc --- /dev/null +++ b/experiments/e56-hopper-faults/results/runs.jsonl @@ -0,0 +1,244 @@ +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 9025 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:clip", "fault_json": {"cells": 9025, "dose": "0.01", "fault": "action:clip", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:clip", "learn_s": 288.594, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "6d8a059d9ba5666fd77a05dc05175e1c7224382598776567c04618fa8d3610b6"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:clip\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"6d8a059d9ba5666fd77a05dc05175e1c7224382598776567c04618fa8d3610b6\", \"learn_s\": 288.594, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 9424 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:clip", "fault_json": {"cells": 9424, "dose": "0.01", "fault": "action:clip", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:clip", "learn_s": 284.147, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "bdd175c3f9cad61916d547a307c57b2d9760e53836fb580563e8f8d6f2c69057"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:clip\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"bdd175c3f9cad61916d547a307c57b2d9760e53836fb580563e8f8d6f2c69057\", \"learn_s\": 284.147, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 9420 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:clip", "fault_json": {"cells": 9420, "dose": "0.01", "fault": "action:clip", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:clip", "learn_s": 284.827, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e7929304c36bbfd34b8a9f8c440a5f090b956efe08d149065de8693082ab2430"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:clip\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"e7929304c36bbfd34b8a9f8c440a5f090b956efe08d149065de8693082ab2430\", \"learn_s\": 284.827, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 963542 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:clip", "fault_json": {"cells": 963542, "dose": "1.0", "fault": "action:clip", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:clip", "learn_s": 293.096, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "38a5ded5d97a865c13468a64bcefcf2a01e970d9ae3bad322a98d353d1d96d93"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:clip\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"38a5ded5d97a865c13468a64bcefcf2a01e970d9ae3bad322a98d353d1d96d93\", \"learn_s\": 293.096, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 962566 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:clip", "fault_json": {"cells": 962566, "dose": "1.0", "fault": "action:clip", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:clip", "learn_s": 288.068, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "cfad8be03c0addd00f47772131fc426b56b7baf4df33e4fbdc7dc1ccc0cf0d1e"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:clip\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"cfad8be03c0addd00f47772131fc426b56b7baf4df33e4fbdc7dc1ccc0cf0d1e\", \"learn_s\": 288.068, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 975678 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:clip", "fault_json": {"cells": 975678, "dose": "1.0", "fault": "action:clip", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:clip", "learn_s": 291.43, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "24f64c248c87413cf992a5970147cfafd9a22cccc03975939214a336552e1fde"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:clip\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"24f64c248c87413cf992a5970147cfafd9a22cccc03975939214a336552e1fde\", \"learn_s\": 291.43, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:clip", "fault_json": {"cells": 1, "dose": "one", "fault": "action:clip", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:clip", "learn_s": 286.277, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "8be606793294fb9dfba751c0c67d3ed096e6c0bc223c7cf8936898a17b2e8fcf"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:clip\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"8be606793294fb9dfba751c0c67d3ed096e6c0bc223c7cf8936898a17b2e8fcf\", \"learn_s\": 286.277, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:clip", "fault_json": {"cells": 1, "dose": "one", "fault": "action:clip", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:clip", "learn_s": 283.621, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "52489707b076729358d8500839bd8dad462f321d332e9e950525a0b9099c9ebb"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:clip\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"52489707b076729358d8500839bd8dad462f321d332e9e950525a0b9099c9ebb\", \"learn_s\": 283.621, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:clip", "fault_json": {"cells": 1, "dose": "one", "fault": "action:clip", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:clip", "learn_s": 284.622, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "fc696b7621b2db1b3dbfc065f609fc39ae8bce50edb49c5cb40c4fbfda477710"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:clip\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"fc696b7621b2db1b3dbfc065f609fc39ae8bce50edb49c5cb40c4fbfda477710\", \"learn_s\": 284.622, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 9882 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:f16", "fault_json": {"cells": 9882, "dose": "0.01", "fault": "action:f16", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:f16", "learn_s": 283.756, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "2e0158cf1b7519139af56a6d2312d137f66d0c86a545236f42dca7220fc1dc1e"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:f16\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"2e0158cf1b7519139af56a6d2312d137f66d0c86a545236f42dca7220fc1dc1e\", \"learn_s\": 283.756, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 9875 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:f16", "fault_json": {"cells": 9875, "dose": "0.01", "fault": "action:f16", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:f16", "learn_s": 282.216, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "81ec6cfb652a142efe373e3af6240d95fea9919e4959ae94687aa2fba109de17"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:f16\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"81ec6cfb652a142efe373e3af6240d95fea9919e4959ae94687aa2fba109de17\", \"learn_s\": 282.216, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 9772 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:f16", "fault_json": {"cells": 9772, "dose": "0.01", "fault": "action:f16", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:f16", "learn_s": 283.956, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "d35e777155810c31a568f720fd17b6393a2d597fad254b5ae76d4ca6eb4786b3"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:f16\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"d35e777155810c31a568f720fd17b6393a2d597fad254b5ae76d4ca6eb4786b3\", \"learn_s\": 283.956, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1005791 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:f16", "fault_json": {"cells": 1005791, "dose": "1.0", "fault": "action:f16", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:f16", "learn_s": 287.673, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "d44914f595d31aed9c8b068745450b55945804072b662b6cef1761ced26ad4cc"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:f16\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"d44914f595d31aed9c8b068745450b55945804072b662b6cef1761ced26ad4cc\", \"learn_s\": 287.673, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 990123 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:f16", "fault_json": {"cells": 990123, "dose": "1.0", "fault": "action:f16", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:f16", "learn_s": 283.155, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "16ef799dbd02c3d81b145e0e245213b52d114cebcabd713b1319eb20c7b25de6"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:f16\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"16ef799dbd02c3d81b145e0e245213b52d114cebcabd713b1319eb20c7b25de6\", \"learn_s\": 283.155, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1010459 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:f16", "fault_json": {"cells": 1010459, "dose": "1.0", "fault": "action:f16", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:f16", "learn_s": 286.034, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "ce3db36dcd69cf9baa33f1dedaea90d21b8caa707748fc563e45840d868711bf"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:f16\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"ce3db36dcd69cf9baa33f1dedaea90d21b8caa707748fc563e45840d868711bf\", \"learn_s\": 286.034, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "action:f16", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:f16", "learn_s": 286.78, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "179aeb271cb5b8be2cff8c73a705d7abe585c127889afb23ac0d0d60f3f5c8e0"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:f16\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"179aeb271cb5b8be2cff8c73a705d7abe585c127889afb23ac0d0d60f3f5c8e0\", \"learn_s\": 286.78, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "action:f16", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:f16", "learn_s": 282.764, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "4635140f79cdbdb89d0f720c7302c4f0c54e2165b1d92b85c5d7ee8079020e47"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:f16\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"4635140f79cdbdb89d0f720c7302c4f0c54e2165b1d92b85c5d7ee8079020e47\", \"learn_s\": 282.764, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "action:f16", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:f16", "learn_s": 284.721, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "f4266978100d99b58c4346f8af2b15e71e924eb77008842ddb8cd2841be6eda0"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:f16\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"f4266978100d99b58c4346f8af2b15e71e924eb77008842ddb8cd2841be6eda0\", \"learn_s\": 284.721, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:stale", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "action:stale", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:stale", "learn_s": 287.35, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "44aa1d0847c86cb3cc729cb078cd0679c9d480fcb3c6ec45b73570b20c11c0d4"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:stale\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"44aa1d0847c86cb3cc729cb078cd0679c9d480fcb3c6ec45b73570b20c11c0d4\", \"learn_s\": 287.35, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:stale", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "action:stale", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:stale", "learn_s": 284.747, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "279da55f814002f96655124c29c28ff53c2074dc3f675c4dc9f375d5fa798d9a"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:stale\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"279da55f814002f96655124c29c28ff53c2074dc3f675c4dc9f375d5fa798d9a\", \"learn_s\": 284.747, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10062 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:stale", "fault_json": {"cells": 10062, "dose": "0.01", "fault": "action:stale", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:stale", "learn_s": 286.493, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "2e0a1dbe5d17847f415133d66c4fd8843711a91159dc58525403e5ada77db7d2"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:stale\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"2e0a1dbe5d17847f415133d66c4fd8843711a91159dc58525403e5ada77db7d2\", \"learn_s\": 286.493, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1022705 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:stale", "fault_json": {"cells": 1022705, "dose": "1.0", "fault": "action:stale", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:stale", "learn_s": 289.194, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "25538fcaba0ae8ca84d30562337c1a23079f09e2711b883c244ac6cad22f1e77"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:stale\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"25538fcaba0ae8ca84d30562337c1a23079f09e2711b883c244ac6cad22f1e77\", \"learn_s\": 289.194, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1021290 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:stale", "fault_json": {"cells": 1021290, "dose": "1.0", "fault": "action:stale", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:stale", "learn_s": 284.089, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "2bff15554612027a5c0379094a580533f6f763423ef0ff99295021735911604d"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:stale\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"2bff15554612027a5c0379094a580533f6f763423ef0ff99295021735911604d\", \"learn_s\": 284.089, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1021873 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:stale", "fault_json": {"cells": 1021873, "dose": "1.0", "fault": "action:stale", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:stale", "learn_s": 286.31, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "d144972a341810c7e8958bb91f6cba47e12ce9fe312e1509db048d648debacfb"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:stale\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"d144972a341810c7e8958bb91f6cba47e12ce9fe312e1509db048d648debacfb\", \"learn_s\": 286.31, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "action:stale", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:stale", "learn_s": 285.939, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "16b63912e3ffcea7811f0aafb9af4c93a16462ce7793392556af64a66f4a640e"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:stale\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"16b63912e3ffcea7811f0aafb9af4c93a16462ce7793392556af64a66f4a640e\", \"learn_s\": 285.939, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "action:stale", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:stale", "learn_s": 284.356, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "fbe29342cf4b3fcef2ef9296e685603e2390d35b9e7139dca32d80230d5e594d"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:stale\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"fbe29342cf4b3fcef2ef9296e685603e2390d35b9e7139dca32d80230d5e594d\", \"learn_s\": 284.356, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "action:stale", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:stale", "learn_s": 287.061, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "2b7e62ad2b10491b0f3634384381b17bbd60e4c8f57a6dd6f3418f97d567e2a6"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:stale\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"2b7e62ad2b10491b0f3634384381b17bbd60e4c8f57a6dd6f3418f97d567e2a6\", \"learn_s\": 287.061, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10063 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:swap", "fault_json": {"cells": 10063, "dose": "0.01", "fault": "action:swap", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:swap", "learn_s": 288.015, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "b116e227b4b40c2682ab94c42e68c54b071969dbb0481fc6b0171881d98ab63a"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:swap\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"b116e227b4b40c2682ab94c42e68c54b071969dbb0481fc6b0171881d98ab63a\", \"learn_s\": 288.015, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10066 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:swap", "fault_json": {"cells": 10066, "dose": "0.01", "fault": "action:swap", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:swap", "learn_s": 284.877, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "0a61ea98049df963b246d85973c3923fd14dc9f7cea8e038bebb5597eba5d3ee"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:swap\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"0a61ea98049df963b246d85973c3923fd14dc9f7cea8e038bebb5597eba5d3ee\", \"learn_s\": 284.877, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10062 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:swap", "fault_json": {"cells": 10062, "dose": "0.01", "fault": "action:swap", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:swap", "learn_s": 286.439, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e045239bb551e6ae67af2e5c36a4fc4519b612ccac5ea5276ed31d877aea4059"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:swap\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"e045239bb551e6ae67af2e5c36a4fc4519b612ccac5ea5276ed31d877aea4059\", \"learn_s\": 286.439, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1023968 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:swap", "fault_json": {"cells": 1023968, "dose": "1.0", "fault": "action:swap", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:swap", "learn_s": 294.513, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1f07144f8544cec3a689c48febac4d06e8bbdab92ee8e87db75e6d960c221c17"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:swap\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"1f07144f8544cec3a689c48febac4d06e8bbdab92ee8e87db75e6d960c221c17\", \"learn_s\": 294.513, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1023975 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:swap", "fault_json": {"cells": 1023975, "dose": "1.0", "fault": "action:swap", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:swap", "learn_s": 294.904, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "20dec2412b00c7fe90458ba5c99f4cdd18b70e2d68d1ec690d29e3b53278139b"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:swap\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"20dec2412b00c7fe90458ba5c99f4cdd18b70e2d68d1ec690d29e3b53278139b\", \"learn_s\": 294.904, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1023986 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:swap", "fault_json": {"cells": 1023986, "dose": "1.0", "fault": "action:swap", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:swap", "learn_s": 291.92, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "52a8e45b1bc8bd2a8ae05c18e9010e6f7fe2ee1ff82e18c8e6eac170ad8a86eb"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:swap\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"52a8e45b1bc8bd2a8ae05c18e9010e6f7fe2ee1ff82e18c8e6eac170ad8a86eb\", \"learn_s\": 291.92, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "action:swap", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:swap", "learn_s": 285.764, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "8a23ae427a653d9791c5d7b37f4b975db44d6610f6f152c6295a000b0522de82"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:swap\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"8a23ae427a653d9791c5d7b37f4b975db44d6610f6f152c6295a000b0522de82\", \"learn_s\": 285.764, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "action:swap", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:swap", "learn_s": 283.441, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1c79358033473ba8139d8efe7f2ffa4667b4a66c742e8f4dcdbf10d33ba22800"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:swap\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"1c79358033473ba8139d8efe7f2ffa4667b4a66c742e8f4dcdbf10d33ba22800\", \"learn_s\": 283.441, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "action:swap", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:swap", "learn_s": 283.767, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "0a6e64d730abb120305a970ef919aff46c73ec0c536fe0705f778a8cdc33c22d"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:swap\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"0a6e64d730abb120305a970ef919aff46c73ec0c536fe0705f778a8cdc33c22d\", \"learn_s\": 283.767, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:zero", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "action:zero", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:zero", "learn_s": 286.249, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "b3bedcf395a7ef4c162e7bdf7d71d27ffebc23303d1ee8ade7c4368441d49f3b"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:zero\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"b3bedcf395a7ef4c162e7bdf7d71d27ffebc23303d1ee8ade7c4368441d49f3b\", \"learn_s\": 286.249, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:zero", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "action:zero", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:zero", "learn_s": 283.39, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "df18c84b5c148b9988991f347f0572030f71194566494189e393b512327c3b8b"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:zero\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"df18c84b5c148b9988991f347f0572030f71194566494189e393b512327c3b8b\", \"learn_s\": 283.39, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "action:zero", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "action:zero", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "action:zero", "learn_s": 286.364, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "cfa2824571363c37bfd1dc24e0167369cab2a50a9f6d245153f6b4b9cf0dd92b"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:zero\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"cfa2824571363c37bfd1dc24e0167369cab2a50a9f6d245153f6b4b9cf0dd92b\", \"learn_s\": 286.364, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:zero", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "action:zero", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:zero", "learn_s": 296.873, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "a83be1a7a02b884e78904a309e32dd4888bbceb3b6789cdf0c2458517809d899"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:zero\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"a83be1a7a02b884e78904a309e32dd4888bbceb3b6789cdf0c2458517809d899\", \"learn_s\": 296.873, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:zero", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "action:zero", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:zero", "learn_s": 293.718, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "fe7fb370f9448ae8b1abee84681364b7184f3cf1e37de630406264cb8b14612c"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:zero\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"fe7fb370f9448ae8b1abee84681364b7184f3cf1e37de630406264cb8b14612c\", \"learn_s\": 293.718, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "action:zero", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "action:zero", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "action:zero", "learn_s": 297.211, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1ae6351d253172caa82f800067c77ca6d913d262aee03cd2dcd63a31b3df8164"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:zero\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"1ae6351d253172caa82f800067c77ca6d913d262aee03cd2dcd63a31b3df8164\", \"learn_s\": 297.211, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "action:zero", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:zero", "learn_s": 286.173, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "233ff6469524d57defba9453abb9800cb8deaf20e1b0411dbd2a5d6c902825da"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:zero\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"233ff6469524d57defba9453abb9800cb8deaf20e1b0411dbd2a5d6c902825da\", \"learn_s\": 286.173, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "action:zero", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:zero", "learn_s": 283.458, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "c65411f9b69e2bdf0a928d82b24783bcb770befdfbf3764baf10dad1cf4eebb3"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:zero\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"c65411f9b69e2bdf0a928d82b24783bcb770befdfbf3764baf10dad1cf4eebb3\", \"learn_s\": 283.458, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "action:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "action:zero", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "action:zero", "learn_s": 286.515, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "182c7eabe099f31e8a9c59fd9759cb8d84dc40071604eb86ae9d49afbd642a27"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"action:zero\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"182c7eabe099f31e8a9c59fd9759cb8d84dc40071604eb86ae9d49afbd642a27\", \"learn_s\": 286.515, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "delay-1ms", "fault_json": {"cells": 0, "dose": "1.0", "fault": "delay-1ms", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "delay-1ms", "learn_s": 384.673, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"delay-1ms\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 384.673, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "delay-1ms", "fault_json": {"cells": 0, "dose": "1.0", "fault": "delay-1ms", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "delay-1ms", "learn_s": 382.305, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"delay-1ms\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 382.305, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "delay-1ms", "fault_json": {"cells": 0, "dose": "1.0", "fault": "delay-1ms", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "delay-1ms", "learn_s": 380.056, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"delay-1ms\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 380.056, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 37 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:f16", "fault_json": {"cells": 37, "dose": "0.01", "fault": "final-obs:f16", "first": [50, 10], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:f16", "learn_s": 283.468, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dab6bfa5680677a6570e8c1786b469c933ac39ac270d9b0e2cc54ebc71e746e0"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:f16\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"dab6bfa5680677a6570e8c1786b469c933ac39ac270d9b0e2cc54ebc71e746e0\", \"learn_s\": 283.468, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 42 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:f16", "fault_json": {"cells": 42, "dose": "0.01", "fault": "final-obs:f16", "first": [166, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:f16", "learn_s": 282.474, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "32b4a88c7b3d5c32c64a1cea6fde116e92058d3e02728da1f44a9b2c5b22b7c1"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:f16\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"32b4a88c7b3d5c32c64a1cea6fde116e92058d3e02728da1f44a9b2c5b22b7c1\", \"learn_s\": 282.474, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 31 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:f16", "fault_json": {"cells": 31, "dose": "0.01", "fault": "final-obs:f16", "first": [294, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:f16", "learn_s": 281.887, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "a4c1c92080e2f8a5220e0732d43012b218311abb82ae595bc8e0ab5ff4ce16ff"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:f16\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"a4c1c92080e2f8a5220e0732d43012b218311abb82ae595bc8e0ab5ff4ce16ff\", \"learn_s\": 281.887, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3374 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:f16", "fault_json": {"cells": 3374, "dose": "1.0", "fault": "final-obs:f16", "first": [10, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:f16", "learn_s": 284.466, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "0822d8cd2eed4353844d1f867c8e0e84115c5a6c2302a031544e977ff1a0eddc"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:f16\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"0822d8cd2eed4353844d1f867c8e0e84115c5a6c2302a031544e977ff1a0eddc\", \"learn_s\": 284.466, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3457 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:f16", "fault_json": {"cells": 3457, "dose": "1.0", "fault": "final-obs:f16", "first": [7, 14], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:f16", "learn_s": 281.268, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "f79ba4343ee2f03ccfe13abf063eced0a8bbb664439c7d8fbd0c4f2ce8717b8c"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:f16\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"f79ba4343ee2f03ccfe13abf063eced0a8bbb664439c7d8fbd0c4f2ce8717b8c\", \"learn_s\": 281.268, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3483 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:f16", "fault_json": {"cells": 3483, "dose": "1.0", "fault": "final-obs:f16", "first": [8, 2], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:f16", "learn_s": 283.113, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "81b212a4b110bd9bdbac534c166d6c521c86bbd196ea83f3f2405497d7c20449"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:f16\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"81b212a4b110bd9bdbac534c166d6c521c86bbd196ea83f3f2405497d7c20449\", \"learn_s\": 283.113, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:f16", "first": [3267, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:f16", "learn_s": 283.419, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:f16\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 283.419, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:f16", "first": [3255, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:f16", "learn_s": 282.012, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:f16\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 282.012, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:f16", "first": [3379, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:f16", "learn_s": 285.024, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:f16\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 285.024, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 43 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:stale", "fault_json": {"cells": 43, "dose": "0.01", "fault": "final-obs:stale", "first": [50, 10], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:stale", "learn_s": 285.624, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "d9789c49116b817cda95526ed91d4bbce08e4030a9d28d11208b96cd29500cf3"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:stale\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"d9789c49116b817cda95526ed91d4bbce08e4030a9d28d11208b96cd29500cf3\", \"learn_s\": 285.624, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 43 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:stale", "fault_json": {"cells": 43, "dose": "0.01", "fault": "final-obs:stale", "first": [166, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:stale", "learn_s": 281.858, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "ab9b4b7be881754e1601c037a5f2d4a699998618a52134cd4e76b04e578ec523"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:stale\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"ab9b4b7be881754e1601c037a5f2d4a699998618a52134cd4e76b04e578ec523\", \"learn_s\": 281.858, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 29 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:stale", "fault_json": {"cells": 29, "dose": "0.01", "fault": "final-obs:stale", "first": [294, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:stale", "learn_s": 283.606, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "d20a72738b4a45d1f7f0caa15ff5510bbcd3ccf30d90b821da5910028096b6a1"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:stale\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"d20a72738b4a45d1f7f0caa15ff5510bbcd3ccf30d90b821da5910028096b6a1\", \"learn_s\": 283.606, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3424 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:stale", "fault_json": {"cells": 3424, "dose": "1.0", "fault": "final-obs:stale", "first": [10, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:stale", "learn_s": 284.189, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "c16e62f321c87c081edcfb130a1e33f078c920efe7c5f8bd79534e42fa2eda87"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:stale\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"c16e62f321c87c081edcfb130a1e33f078c920efe7c5f8bd79534e42fa2eda87\", \"learn_s\": 284.189, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3328 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:stale", "fault_json": {"cells": 3328, "dose": "1.0", "fault": "final-obs:stale", "first": [7, 14], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:stale", "learn_s": 283.519, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "94fe0250b4dea91729ddc211a7021efa7563f3f01d2c6b20f312317d35a6bda3"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:stale\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"94fe0250b4dea91729ddc211a7021efa7563f3f01d2c6b20f312317d35a6bda3\", \"learn_s\": 283.519, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3505 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:stale", "fault_json": {"cells": 3505, "dose": "1.0", "fault": "final-obs:stale", "first": [8, 2], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:stale", "learn_s": 281.437, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "66dc845526abc636b946c40bdaf21f9570f78d5ec6cdd1b2b6bab5f4459c11aa"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:stale\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"66dc845526abc636b946c40bdaf21f9570f78d5ec6cdd1b2b6bab5f4459c11aa\", \"learn_s\": 281.437, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:stale", "first": [3267, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:stale", "learn_s": 283.531, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:stale\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 283.531, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:stale", "first": [3255, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:stale", "learn_s": 282.085, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:stale\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 282.085, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:stale", "first": [3379, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:stale", "learn_s": 282.769, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:stale\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 282.769, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 40 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:swap", "fault_json": {"cells": 40, "dose": "0.01", "fault": "final-obs:swap", "first": [50, 10], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:swap", "learn_s": 284.806, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "b3cb8a2d9f113ae4661094c4eb194f21a7b4276bcef514b731ef2e8abebc6d13"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:swap\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"b3cb8a2d9f113ae4661094c4eb194f21a7b4276bcef514b731ef2e8abebc6d13\", \"learn_s\": 284.806, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 36 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:swap", "fault_json": {"cells": 36, "dose": "0.01", "fault": "final-obs:swap", "first": [166, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:swap", "learn_s": 279.533, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "33911c220fc499a5bb737f9b9797894f1c926ac304ba47d89b5885b2e19bf19a"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:swap\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"33911c220fc499a5bb737f9b9797894f1c926ac304ba47d89b5885b2e19bf19a\", \"learn_s\": 279.533, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 31 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:swap", "fault_json": {"cells": 31, "dose": "0.01", "fault": "final-obs:swap", "first": [294, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:swap", "learn_s": 282.766, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "f51c546502321d6009d3cdf35b96ea82b5f28e2c0bc98f253f4f3d82c3f0d65a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:swap\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"f51c546502321d6009d3cdf35b96ea82b5f28e2c0bc98f253f4f3d82c3f0d65a\", \"learn_s\": 282.766, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3429 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:swap", "fault_json": {"cells": 3429, "dose": "1.0", "fault": "final-obs:swap", "first": [10, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:swap", "learn_s": 284.423, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "88e663e0aa63edbe1bf5b712e166c8e1d1c1f1ad6f6f1513b9291747319a6997"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:swap\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"88e663e0aa63edbe1bf5b712e166c8e1d1c1f1ad6f6f1513b9291747319a6997\", \"learn_s\": 284.423, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3505 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:swap", "fault_json": {"cells": 3505, "dose": "1.0", "fault": "final-obs:swap", "first": [7, 14], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:swap", "learn_s": 283.291, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1184a831ffecd7f2447077b02d472efc3b4d5b1fbd1418cba597773f757e3299"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:swap\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"1184a831ffecd7f2447077b02d472efc3b4d5b1fbd1418cba597773f757e3299\", \"learn_s\": 283.291, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3447 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:swap", "fault_json": {"cells": 3447, "dose": "1.0", "fault": "final-obs:swap", "first": [8, 2], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:swap", "learn_s": 283.355, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "3fdf94e1cbb467cf5bd36916e9c9b2b9bc26070f284eac27c9015cc94c0d1a44"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:swap\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"3fdf94e1cbb467cf5bd36916e9c9b2b9bc26070f284eac27c9015cc94c0d1a44\", \"learn_s\": 283.355, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:swap", "first": [3267, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:swap", "learn_s": 285.125, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:swap\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 285.125, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:swap", "first": [3255, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:swap", "learn_s": 283.178, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:swap\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 283.178, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:swap", "first": [3379, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:swap", "learn_s": 283.545, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:swap\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 283.545, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 36 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:zero", "fault_json": {"cells": 36, "dose": "0.01", "fault": "final-obs:zero", "first": [50, 10], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:zero", "learn_s": 283.19, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "53b50822d3aba9ab51c94ced2fe3e8d69d24e605e9090be9e085fff7695211c3"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:zero\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"53b50822d3aba9ab51c94ced2fe3e8d69d24e605e9090be9e085fff7695211c3\", \"learn_s\": 283.19, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 35 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:zero", "fault_json": {"cells": 35, "dose": "0.01", "fault": "final-obs:zero", "first": [166, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:zero", "learn_s": 282.095, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "4fda6f17c76ba8bf8bf2f47a4f404542882f2a0e1b78b3c4f00b0b8cbbb827e1"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:zero\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"4fda6f17c76ba8bf8bf2f47a4f404542882f2a0e1b78b3c4f00b0b8cbbb827e1\", \"learn_s\": 282.095, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 28 cells changed", "dose": "0.01", "env": "hopper", "fault": "final-obs:zero", "fault_json": {"cells": 28, "dose": "0.01", "fault": "final-obs:zero", "first": [294, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "final-obs:zero", "learn_s": 283.764, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "853b75a039a12721315d52bd3e2d954a3adcc1eb4022542e171c2fb638cc6f7c"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:zero\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"853b75a039a12721315d52bd3e2d954a3adcc1eb4022542e171c2fb638cc6f7c\", \"learn_s\": 283.764, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3440 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:zero", "fault_json": {"cells": 3440, "dose": "1.0", "fault": "final-obs:zero", "first": [10, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:zero", "learn_s": 283.616, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "5443fa7211250e02485047ab698b6f4f11acca3032b15668e90760bf50ea210e"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:zero\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"5443fa7211250e02485047ab698b6f4f11acca3032b15668e90760bf50ea210e\", \"learn_s\": 283.616, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3397 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:zero", "fault_json": {"cells": 3397, "dose": "1.0", "fault": "final-obs:zero", "first": [7, 14], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:zero", "learn_s": 281.652, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "fc0964671b926f346e8ac1b5eb96185a5d1f4e50c2a409826e3e6d3a79bbe5b1"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:zero\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"fc0964671b926f346e8ac1b5eb96185a5d1f4e50c2a409826e3e6d3a79bbe5b1\", \"learn_s\": 281.652, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3453 cells changed", "dose": "1.0", "env": "hopper", "fault": "final-obs:zero", "fault_json": {"cells": 3453, "dose": "1.0", "fault": "final-obs:zero", "first": [8, 2], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "final-obs:zero", "learn_s": 283.231, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "8d9a34a362fec684dd182bf62326f3e8e5db92a3f3531a2431dc114000a6fa59"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:zero\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"8d9a34a362fec684dd182bf62326f3e8e5db92a3f3531a2431dc114000a6fa59\", \"learn_s\": 283.231, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:zero", "first": [3267, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:zero", "learn_s": 284.2, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:zero\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 284.2, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:zero", "first": [3255, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:zero", "learn_s": 283.577, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:zero\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 283.577, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "final-obs:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "final-obs:zero", "first": [3379, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "final-obs:zero", "learn_s": 283.449, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"final-obs:zero\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 283.449, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "0.01", "env": "hopper", "fault": "log:drop-first", "fault_json": {"cells": 0, "dose": "0.01", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "log:drop-first", "learn_s": 280.407, "log_cells": 30, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:drop-first\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 280.407, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 30, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "0.01", "env": "hopper", "fault": "log:drop-first", "fault_json": {"cells": 0, "dose": "0.01", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "log:drop-first", "learn_s": 280.383, "log_cells": 29, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:drop-first\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 280.383, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 29, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "0.01", "env": "hopper", "fault": "log:drop-first", "fault_json": {"cells": 0, "dose": "0.01", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "log:drop-first", "learn_s": 283.283, "log_cells": 32, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:drop-first\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 283.283, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 32, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "log:drop-first", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "log:drop-first", "learn_s": 282.426, "log_cells": 3357, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:drop-first\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 282.426, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 3357, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "log:drop-first", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "log:drop-first", "learn_s": 281.365, "log_cells": 3271, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:drop-first\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 281.365, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 3271, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "log:drop-first", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "log:drop-first", "learn_s": 279.09, "log_cells": 3552, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:drop-first\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 279.09, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 3552, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "one", "env": "hopper", "fault": "log:drop-first", "fault_json": {"cells": 0, "dose": "one", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "log:drop-first", "learn_s": 280.985, "log_cells": 1, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:drop-first\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 280.985, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 1, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "one", "env": "hopper", "fault": "log:drop-first", "fault_json": {"cells": 0, "dose": "one", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "log:drop-first", "learn_s": 277.655, "log_cells": 1, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:drop-first\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 277.655, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 1, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "one", "env": "hopper", "fault": "log:drop-first", "fault_json": {"cells": 0, "dose": "one", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "log:drop-first", "learn_s": 280.48, "log_cells": 1, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:drop-first\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 280.48, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 1, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "0.01", "env": "hopper", "fault": "log:short", "fault_json": {"cells": 0, "dose": "0.01", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "log:short", "learn_s": 281.682, "log_cells": 30, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:short\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 281.682, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 30, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "0.01", "env": "hopper", "fault": "log:short", "fault_json": {"cells": 0, "dose": "0.01", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "log:short", "learn_s": 280.077, "log_cells": 29, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:short\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 280.077, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 29, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "0.01", "env": "hopper", "fault": "log:short", "fault_json": {"cells": 0, "dose": "0.01", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "log:short", "learn_s": 279.556, "log_cells": 32, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:short\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 279.556, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 32, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "log:short", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "log:short", "learn_s": 281.587, "log_cells": 3357, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:short\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 281.587, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 3357, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "log:short", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "log:short", "learn_s": 281.885, "log_cells": 3271, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:short\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 281.885, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 3271, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "log:short", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "log:short", "learn_s": 281.696, "log_cells": 3552, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:short\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 281.696, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 3552, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "one", "env": "hopper", "fault": "log:short", "fault_json": {"cells": 0, "dose": "one", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "log:short", "learn_s": 282.216, "log_cells": 1, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:short\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 282.216, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 1, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "one", "env": "hopper", "fault": "log:short", "fault_json": {"cells": 0, "dose": "one", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "log:short", "learn_s": 280.289, "log_cells": 1, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:short\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 280.289, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 1, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "one", "env": "hopper", "fault": "log:short", "fault_json": {"cells": 0, "dose": "one", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "log:short", "learn_s": 278.288, "log_cells": 1, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"log:short\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 278.288, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"log_cells\": 1, \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 282.973, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 282.973, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 281.983, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 281.983, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 276.377, "seed": 10, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "d5a3ae295d1210de734820e1c0749cceb8b96dac1c772c88decf2f1087070059"}, "seed": 10, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 10, \"weights_sha256\": \"d5a3ae295d1210de734820e1c0749cceb8b96dac1c772c88decf2f1087070059\", \"learn_s\": 276.377, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 278.125, "seed": 11, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "2308827de76222e9f194bf0058c451ffb7c375861ac31aebf8ccdc522b674ef8"}, "seed": 11, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 11, \"weights_sha256\": \"2308827de76222e9f194bf0058c451ffb7c375861ac31aebf8ccdc522b674ef8\", \"learn_s\": 278.125, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 276.252, "seed": 12, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "9ee81f6e7fb0390e7d3eb97fb8d8e35ee7fa89bb32d21cf58d54add5b3b993a9"}, "seed": 12, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 12, \"weights_sha256\": \"9ee81f6e7fb0390e7d3eb97fb8d8e35ee7fa89bb32d21cf58d54add5b3b993a9\", \"learn_s\": 276.252, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 266.729, "seed": 13, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "f48b7b6b125cdace6f3f3ba6c05bdcad6be2901767a56a8bebaf4bd3b8cbf5fd"}, "seed": 13, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 13, \"weights_sha256\": \"f48b7b6b125cdace6f3f3ba6c05bdcad6be2901767a56a8bebaf4bd3b8cbf5fd\", \"learn_s\": 266.729, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 275.453, "seed": 14, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e75667e3271722247267a2def55dd4539f2a9eaa8fa8e6519130d9604e1ab569"}, "seed": 14, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 14, \"weights_sha256\": \"e75667e3271722247267a2def55dd4539f2a9eaa8fa8e6519130d9604e1ab569\", \"learn_s\": 275.453, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 269.889, "seed": 15, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "6e5886cd039efe3b6506b8f14679fad591e97dd58c8015a23aa2b142ee21019f"}, "seed": 15, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 15, \"weights_sha256\": \"6e5886cd039efe3b6506b8f14679fad591e97dd58c8015a23aa2b142ee21019f\", \"learn_s\": 269.889, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 255.868, "seed": 16, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "af5afed349d7dd21c7fde1c9629818275a0701b44521c3b7536ecc1d544a2c6c"}, "seed": 16, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 16, \"weights_sha256\": \"af5afed349d7dd21c7fde1c9629818275a0701b44521c3b7536ecc1d544a2c6c\", \"learn_s\": 255.868, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 255.188, "seed": 17, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "5aff75d60f88844aec1b5f2fbd87d39ed515762783a637301f2ea52b71c0cbb0"}, "seed": 17, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 17, \"weights_sha256\": \"5aff75d60f88844aec1b5f2fbd87d39ed515762783a637301f2ea52b71c0cbb0\", \"learn_s\": 255.188, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 254.875, "seed": 18, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "03cbf4348db50d3db0e7fbb2692e2f31f8407760ed2ab6f61d4acd0a0e485239"}, "seed": 18, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 18, \"weights_sha256\": \"03cbf4348db50d3db0e7fbb2692e2f31f8407760ed2ab6f61d4acd0a0e485239\", \"learn_s\": 254.875, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 261.27, "seed": 19, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "53d2bb4daf49d58f01b067321e74f8edda15b2d2ca5e26bc55e5a6eda152a56c"}, "seed": 19, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 19, \"weights_sha256\": \"53d2bb4daf49d58f01b067321e74f8edda15b2d2ca5e26bc55e5a6eda152a56c\", \"learn_s\": 261.27, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "none", "fault_json": {"cells": 0, "dose": "1.0", "fault": "none", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "none", "learn_s": 283.044, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"none\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 283.044, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:f16", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:f16", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:f16", "learn_s": 286.778, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "bc35ca617eb625c727015a63772d833a722973a00542b6576201bee3d230e59f"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:f16\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"bc35ca617eb625c727015a63772d833a722973a00542b6576201bee3d230e59f\", \"learn_s\": 286.778, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:f16", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:f16", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:f16", "learn_s": 282.716, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e860d98535f95f6f7f332453d14a2939db3894809958d20c0d149c2532d3c0e5"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:f16\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"e860d98535f95f6f7f332453d14a2939db3894809958d20c0d149c2532d3c0e5\", \"learn_s\": 282.716, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:f16", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:f16", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:f16", "learn_s": 284.905, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e25b790cc561b06aeddbf2fd53eceef8ed50552e68e3603f46102596ac976cb4"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:f16\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"e25b790cc561b06aeddbf2fd53eceef8ed50552e68e3603f46102596ac976cb4\", \"learn_s\": 284.905, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024016 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:f16", "fault_json": {"cells": 1024016, "dose": "1.0", "fault": "obs:f16", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:f16", "learn_s": 288.138, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "0b88c98ace320426c458bd2e94e8459b82fedb6e663014b44a748d617b1c2cc5"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:f16\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"0b88c98ace320426c458bd2e94e8459b82fedb6e663014b44a748d617b1c2cc5\", \"learn_s\": 288.138, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024016 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:f16", "fault_json": {"cells": 1024016, "dose": "1.0", "fault": "obs:f16", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:f16", "learn_s": 282.658, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "a39c8fdc0e3a9962a8124330b46459c50c0badc084b83e9f6058e83d8f395e2f"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:f16\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"a39c8fdc0e3a9962a8124330b46459c50c0badc084b83e9f6058e83d8f395e2f\", \"learn_s\": 282.658, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024016 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:f16", "fault_json": {"cells": 1024016, "dose": "1.0", "fault": "obs:f16", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:f16", "learn_s": 285.414, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "992371dfd26d1a018503d6a35c78866f191a7a1139f547a699ce8f78e7dc32b3"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:f16\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"992371dfd26d1a018503d6a35c78866f191a7a1139f547a699ce8f78e7dc32b3\", \"learn_s\": 285.414, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:f16", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:f16", "learn_s": 284.209, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "53f4d25d54f7bdb658838f2909911983763501a0a428b8987138953147473c68"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:f16\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"53f4d25d54f7bdb658838f2909911983763501a0a428b8987138953147473c68\", \"learn_s\": 284.209, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:f16", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:f16", "learn_s": 284.115, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "453a803a9356f8d8e3e662a088219273398adedb6ba4987983fa533bf97385c0"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:f16\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"453a803a9356f8d8e3e662a088219273398adedb6ba4987983fa533bf97385c0\", \"learn_s\": 284.115, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:f16", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:f16", "learn_s": 281.953, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "3a996d595048c4563b0d73de2d23f12b50d446388ae96720c6c0001f8bd884b8"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:f16\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"3a996d595048c4563b0d73de2d23f12b50d446388ae96720c6c0001f8bd884b8\", \"learn_s\": 281.953, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:stale", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:stale", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:stale", "learn_s": 282.439, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "b50d63b7c369a41eb4fc2c9d63b449f72776bebaa09ce1a66b26c8675bdadf58"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:stale\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"b50d63b7c369a41eb4fc2c9d63b449f72776bebaa09ce1a66b26c8675bdadf58\", \"learn_s\": 282.439, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:stale", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:stale", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:stale", "learn_s": 283.419, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "b5b8c46a74b9d92570ce494a3913985d0190ca0a850d60f2de8160437d36a54a"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:stale\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"b5b8c46a74b9d92570ce494a3913985d0190ca0a850d60f2de8160437d36a54a\", \"learn_s\": 283.419, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:stale", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:stale", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:stale", "learn_s": 284.206, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "b7db0b909948b7dc4267947f7b4988c11264eea4e303fefed6d4034f01fc02bc"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:stale\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"b7db0b909948b7dc4267947f7b4988c11264eea4e303fefed6d4034f01fc02bc\", \"learn_s\": 284.206, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:stale", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "obs:stale", "first": [1, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:stale", "learn_s": 284.779, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "5c7c98242651483ad1c517dff19dfe924d99dd4d3eaf781224cff4a96c6ba3e2"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:stale\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"5c7c98242651483ad1c517dff19dfe924d99dd4d3eaf781224cff4a96c6ba3e2\", \"learn_s\": 284.779, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:stale", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "obs:stale", "first": [1, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:stale", "learn_s": 285.353, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "96c4ca77bfc122a199bdad330120edfe7c08d9eb058d07e9fe88b2f8926a3ccc"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:stale\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"96c4ca77bfc122a199bdad330120edfe7c08d9eb058d07e9fe88b2f8926a3ccc\", \"learn_s\": 285.353, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:stale", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "obs:stale", "first": [1, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:stale", "learn_s": 283.701, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "9543c655d577d95313a7896ceb84a329f3d068b8cdfa914f0cba23ee17b21ab4"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:stale\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"9543c655d577d95313a7896ceb84a329f3d068b8cdfa914f0cba23ee17b21ab4\", \"learn_s\": 283.701, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:stale", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:stale", "learn_s": 283.289, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "c74f370dc22e48838aed7e7cfc316427158590de5e5869acd3f28188bed88815"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:stale\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"c74f370dc22e48838aed7e7cfc316427158590de5e5869acd3f28188bed88815\", \"learn_s\": 283.289, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:stale", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:stale", "learn_s": 283.539, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "50ca29ec510773a8bd2a4ee1a2cbe62cee2a2fd2ae224f9041667c7b3b6d4aed"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:stale\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"50ca29ec510773a8bd2a4ee1a2cbe62cee2a2fd2ae224f9041667c7b3b6d4aed\", \"learn_s\": 283.539, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:stale", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:stale", "learn_s": 283.193, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "41e61933bf7fdbe1235d97a10b868bf3cf15b937febbe3bf22bc20d44f63220c"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:stale\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"41e61933bf7fdbe1235d97a10b868bf3cf15b937febbe3bf22bc20d44f63220c\", \"learn_s\": 283.193, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:swap", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:swap", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:swap", "learn_s": 284.781, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "7e429cffa206446f4d8dd142155b45b825edbf5eec4fad243ba7551a5279bf45"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:swap\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"7e429cffa206446f4d8dd142155b45b825edbf5eec4fad243ba7551a5279bf45\", \"learn_s\": 284.781, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:swap", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:swap", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:swap", "learn_s": 284.4, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "9bf6d868f459123a55423d1e86627bbe1615f5f8cf62f9285768e92c4c8f6c82"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:swap\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"9bf6d868f459123a55423d1e86627bbe1615f5f8cf62f9285768e92c4c8f6c82\", \"learn_s\": 284.4, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:swap", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:swap", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:swap", "learn_s": 285.56, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "16a1a6b584e260a60899fe3c3493ced3d28276b7a5c0e241d53dfb6382801bd1"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:swap\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"16a1a6b584e260a60899fe3c3493ced3d28276b7a5c0e241d53dfb6382801bd1\", \"learn_s\": 285.56, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024016 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:swap", "fault_json": {"cells": 1024016, "dose": "1.0", "fault": "obs:swap", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:swap", "learn_s": 297.845, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "9f5758c01ddb7916d757a2d9cb56d88923fe95a2d896fbd6eaf3628e734ba9e2"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:swap\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"9f5758c01ddb7916d757a2d9cb56d88923fe95a2d896fbd6eaf3628e734ba9e2\", \"learn_s\": 297.845, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024016 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:swap", "fault_json": {"cells": 1024016, "dose": "1.0", "fault": "obs:swap", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:swap", "learn_s": 292.723, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "96d218df9a21c693c28b67b8378fac0d536bd60e81c02e3c6ebee16c76cceece"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:swap\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"96d218df9a21c693c28b67b8378fac0d536bd60e81c02e3c6ebee16c76cceece\", \"learn_s\": 292.723, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024016 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:swap", "fault_json": {"cells": 1024016, "dose": "1.0", "fault": "obs:swap", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:swap", "learn_s": 293.809, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1056980eead63c09b1b49574f06eeb3332043038cd5fd53691bc16e051af5065"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:swap\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"1056980eead63c09b1b49574f06eeb3332043038cd5fd53691bc16e051af5065\", \"learn_s\": 293.809, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:swap", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:swap", "learn_s": 283.275, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "d066684ef5a7ebee604c6da8107cc6ea98ef7271d5145851322347741dc39731"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:swap\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"d066684ef5a7ebee604c6da8107cc6ea98ef7271d5145851322347741dc39731\", \"learn_s\": 283.275, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:swap", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:swap", "learn_s": 281.652, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "ab2dff3d15991508d868f7ad4619b12162671e2a8d6d8d3f7d4e65d49d48fc50"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:swap\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"ab2dff3d15991508d868f7ad4619b12162671e2a8d6d8d3f7d4e65d49d48fc50\", \"learn_s\": 281.652, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:swap", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:swap", "learn_s": 281.232, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "b8dceb9c2310337d233439e393838eab07ea768e811fd51ab72d2a56bde2f67c"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:swap\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"b8dceb9c2310337d233439e393838eab07ea768e811fd51ab72d2a56bde2f67c\", \"learn_s\": 281.232, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:zero", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:zero", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:zero", "learn_s": 282.551, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "134d754deae68744b5c4d86fd4be9ef7d8f3da4861b45d078f7bfc85c7747929"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:zero\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"134d754deae68744b5c4d86fd4be9ef7d8f3da4861b45d078f7bfc85c7747929\", \"learn_s\": 282.551, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:zero", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:zero", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:zero", "learn_s": 284.493, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "76045eee5470569ab2042fb95fe35bedb566b2dde7977751764f6cb1ba2262e6"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:zero\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"76045eee5470569ab2042fb95fe35bedb566b2dde7977751764f6cb1ba2262e6\", \"learn_s\": 284.493, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "obs:zero", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "obs:zero", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "obs:zero", "learn_s": 281.922, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "b905d051d768aac189455619ac643aa04b6a5d732a8376354f524a8dcae9086a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:zero\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"b905d051d768aac189455619ac643aa04b6a5d732a8376354f524a8dcae9086a\", \"learn_s\": 281.922, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024016 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:zero", "fault_json": {"cells": 1024016, "dose": "1.0", "fault": "obs:zero", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:zero", "learn_s": 291.658, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "9299661af8404c188b2a498fe15cfe94d421105ccafd952d91c2b9c7092d6ed6"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:zero\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"9299661af8404c188b2a498fe15cfe94d421105ccafd952d91c2b9c7092d6ed6\", \"learn_s\": 291.658, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024016 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:zero", "fault_json": {"cells": 1024016, "dose": "1.0", "fault": "obs:zero", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:zero", "learn_s": 292.718, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "15147da68969e7a21412e71cffa0e341d03a8fc7dca34d7cfa04c600cf60c066"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:zero\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"15147da68969e7a21412e71cffa0e341d03a8fc7dca34d7cfa04c600cf60c066\", \"learn_s\": 292.718, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024016 cells changed", "dose": "1.0", "env": "hopper", "fault": "obs:zero", "fault_json": {"cells": 1024016, "dose": "1.0", "fault": "obs:zero", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "obs:zero", "learn_s": 292.969, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "ace7d78ffe796d11b4da61b898cc0f001030959f6b15c99e65869d62534fa325"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:zero\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"ace7d78ffe796d11b4da61b898cc0f001030959f6b15c99e65869d62534fa325\", \"learn_s\": 292.969, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:zero", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:zero", "learn_s": 281.989, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "8344511e9f612b2b8603d93a61b96b20d93c9cabcd0852c030503452e9765bb4"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:zero\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"8344511e9f612b2b8603d93a61b96b20d93c9cabcd0852c030503452e9765bb4\", \"learn_s\": 281.989, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:zero", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:zero", "learn_s": 282.647, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "d7a8bcef38300d69dfcfaa14a9972fb86f2b5ef94aaa3db8c5c5b7c93711c6cc"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:zero\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"d7a8bcef38300d69dfcfaa14a9972fb86f2b5ef94aaa3db8c5c5b7c93711c6cc\", \"learn_s\": 282.647, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "obs:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "obs:zero", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "obs:zero", "learn_s": 282.04, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1582d0217bd0f4f565b9f79e9c7fbe827b6a0b3273692a21605b39c36f845aa3"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"obs:zero\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"1582d0217bd0f4f565b9f79e9c7fbe827b6a0b3273692a21605b39c36f845aa3\", \"learn_s\": 282.04, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10066 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:f16", "fault_json": {"cells": 10066, "dose": "0.01", "fault": "reward:f16", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:f16", "learn_s": 283.823, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "9db6abe89ea9dfa4247d23b70a782827564dd216a179fdd9acdca8f6022aa2bd"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:f16\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"9db6abe89ea9dfa4247d23b70a782827564dd216a179fdd9acdca8f6022aa2bd\", \"learn_s\": 283.823, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:f16", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:f16", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:f16", "learn_s": 284.948, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "abe9c4c1f3c9ea72bb45df3b7313067a3f416464a51e8dd09d271e68a7e8a27c"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:f16\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"abe9c4c1f3c9ea72bb45df3b7313067a3f416464a51e8dd09d271e68a7e8a27c\", \"learn_s\": 284.948, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:f16", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:f16", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:f16", "learn_s": 282.389, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "71f23cdda19b8c34ea3e9231487017d7325025d7b766e98ca4b58f83b2021aae"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:f16\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"71f23cdda19b8c34ea3e9231487017d7325025d7b766e98ca4b58f83b2021aae\", \"learn_s\": 282.389, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1023872 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:f16", "fault_json": {"cells": 1023872, "dose": "1.0", "fault": "reward:f16", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:f16", "learn_s": 282.499, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "ff75b00aeaf4bd9a38df337f7e8c9a6c4ca6efce72a598c843a323115c48af0a"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:f16\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"ff75b00aeaf4bd9a38df337f7e8c9a6c4ca6efce72a598c843a323115c48af0a\", \"learn_s\": 282.499, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1023882 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:f16", "fault_json": {"cells": 1023882, "dose": "1.0", "fault": "reward:f16", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:f16", "learn_s": 282.84, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "a8b32d4e6edbbd97ec7f917f767e4d80b098fb460ae832a3397219e085f7b4c5"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:f16\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"a8b32d4e6edbbd97ec7f917f767e4d80b098fb460ae832a3397219e085f7b4c5\", \"learn_s\": 282.84, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1023890 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:f16", "fault_json": {"cells": 1023890, "dose": "1.0", "fault": "reward:f16", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:f16", "learn_s": 281.962, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "906dcd4e80702e7bc1dc1da25e78e52882d3ea023e20ade186aaf737692c7b9b"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:f16\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"906dcd4e80702e7bc1dc1da25e78e52882d3ea023e20ade186aaf737692c7b9b\", \"learn_s\": 281.962, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:f16", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:f16", "learn_s": 284.768, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "fafbc73d98b5075f1d012b2987060a7cfc596fed6598274e7f2ad1ccd6d2ebf6"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:f16\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"fafbc73d98b5075f1d012b2987060a7cfc596fed6598274e7f2ad1ccd6d2ebf6\", \"learn_s\": 284.768, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:f16", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:f16", "learn_s": 284.142, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e06d8d8c4d2256adf5df5746eae3e862072fca76a5b0d318350d42aaf1fd672a"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:f16\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"e06d8d8c4d2256adf5df5746eae3e862072fca76a5b0d318350d42aaf1fd672a\", \"learn_s\": 284.142, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:f16", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:f16", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:f16", "learn_s": 282.299, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "17ba85af840c9e5df328b3bfa6cc0e4784191170a3b38c3823907e3c638b8c9d"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:f16\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"17ba85af840c9e5df328b3bfa6cc0e4784191170a3b38c3823907e3c638b8c9d\", \"learn_s\": 282.299, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:stale", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:stale", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:stale", "learn_s": 286.756, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "66bd30a58175af25e3ff8c3408d5e11c8c74089dd4afd7ce9fdb0e511ff98c6d"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:stale\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"66bd30a58175af25e3ff8c3408d5e11c8c74089dd4afd7ce9fdb0e511ff98c6d\", \"learn_s\": 286.756, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:stale", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:stale", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:stale", "learn_s": 282.059, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "21dbf1f4470b8b5833b98add132a29bcb5a691acf1336e73825233fd89b88648"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:stale\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"21dbf1f4470b8b5833b98add132a29bcb5a691acf1336e73825233fd89b88648\", \"learn_s\": 282.059, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:stale", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:stale", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:stale", "learn_s": 283.473, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "165d0c7e0cb6cea2dae060c585ecfca05f7e78d23019142a8a4ece95eb615504"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:stale\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"165d0c7e0cb6cea2dae060c585ecfca05f7e78d23019142a8a4ece95eb615504\", \"learn_s\": 283.473, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1023999 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:stale", "fault_json": {"cells": 1023999, "dose": "1.0", "fault": "reward:stale", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:stale", "learn_s": 287.142, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e92ff4da5b877d689855281056699fe0dccc2bd9f7ac8d934f22e5892d8ef9a7"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:stale\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"e92ff4da5b877d689855281056699fe0dccc2bd9f7ac8d934f22e5892d8ef9a7\", \"learn_s\": 287.142, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1023999 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:stale", "fault_json": {"cells": 1023999, "dose": "1.0", "fault": "reward:stale", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:stale", "learn_s": 282.857, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "a01b5fe5ac9c6c33b586725372420862fa74f29cb367ce5736926c4c353f4a65"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:stale\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"a01b5fe5ac9c6c33b586725372420862fa74f29cb367ce5736926c4c353f4a65\", \"learn_s\": 282.857, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:stale", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "reward:stale", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:stale", "learn_s": 283.436, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "625d58d1e48dcc92cc8f58528cfdd4ba590ee7e6b0ff98f8c959d622bae99cf7"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:stale\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"625d58d1e48dcc92cc8f58528cfdd4ba590ee7e6b0ff98f8c959d622bae99cf7\", \"learn_s\": 283.436, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:stale", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:stale", "learn_s": 286.386, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "c05ce2183ec35ca5c2ae376a597fa873170826461c4df38bd5a58a1108655794"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:stale\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"c05ce2183ec35ca5c2ae376a597fa873170826461c4df38bd5a58a1108655794\", \"learn_s\": 286.386, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:stale", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:stale", "learn_s": 284.599, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "7a0497396cd3a8bc595c983826656f96e2c1d62f353d4478b5df201356130d82"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:stale\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"7a0497396cd3a8bc595c983826656f96e2c1d62f353d4478b5df201356130d82\", \"learn_s\": 284.599, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:stale", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:stale", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:stale", "learn_s": 284.214, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "f962b0778edb3d6c502a54e7a716d98aa4b6fb33e6ac342e256677f171877907"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:stale\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"f962b0778edb3d6c502a54e7a716d98aa4b6fb33e6ac342e256677f171877907\", \"learn_s\": 284.214, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:swap", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:swap", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:swap", "learn_s": 288.998, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "4d889602c312ad870352cc07c542dd633a434d66653fc7301f6818846eba2f95"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:swap\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"4d889602c312ad870352cc07c542dd633a434d66653fc7301f6818846eba2f95\", \"learn_s\": 288.998, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:swap", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:swap", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:swap", "learn_s": 283.781, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "6052ed843a0a3b8e5eb6cff66f6b890f075f0fb9d068c9532e20b4ad8b1b1f94"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:swap\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"6052ed843a0a3b8e5eb6cff66f6b890f075f0fb9d068c9532e20b4ad8b1b1f94\", \"learn_s\": 283.781, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:swap", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:swap", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:swap", "learn_s": 282.42, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "38d84a8b0fdc976ab678a1868953c08bde696e87be69ef9df5586fbcded21e28"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:swap\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"38d84a8b0fdc976ab678a1868953c08bde696e87be69ef9df5586fbcded21e28\", \"learn_s\": 282.42, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:swap", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "reward:swap", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:swap", "learn_s": 302.549, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "83d234b3ca21c26fc763de3caa1da0b70e2b91e830fe4354b40eb6260451585d"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:swap\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"83d234b3ca21c26fc763de3caa1da0b70e2b91e830fe4354b40eb6260451585d\", \"learn_s\": 302.549, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:swap", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "reward:swap", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:swap", "learn_s": 297.387, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "af3621465d0b714a83e711fa384f767fb03608f8691a93ec25aad88247afe3cd"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:swap\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"af3621465d0b714a83e711fa384f767fb03608f8691a93ec25aad88247afe3cd\", \"learn_s\": 297.387, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:swap", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "reward:swap", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:swap", "learn_s": 298.729, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "9d7614b4fb2c11cb20ff59d116d2c0eb219d9512a4242e59175941e1d7ed93d6"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:swap\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"9d7614b4fb2c11cb20ff59d116d2c0eb219d9512a4242e59175941e1d7ed93d6\", \"learn_s\": 298.729, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:swap", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:swap", "learn_s": 289.226, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "40b97b3b09570c0bf342e641607526a40963810a5c45ea9ae6552ef782d577e2"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:swap\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"40b97b3b09570c0bf342e641607526a40963810a5c45ea9ae6552ef782d577e2\", \"learn_s\": 289.226, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:swap", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:swap", "learn_s": 282.607, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "91bd93bbc18b94c5e23c1b29f5504ede115a2b9faeab37693235998500554f80"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:swap\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"91bd93bbc18b94c5e23c1b29f5504ede115a2b9faeab37693235998500554f80\", \"learn_s\": 282.607, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:swap", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:swap", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:swap", "learn_s": 282.206, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "db70a41750b542f9dade265503dc398e4be4bc0efeb47afa9378dffcc9a9c6c1"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:swap\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"db70a41750b542f9dade265503dc398e4be4bc0efeb47afa9378dffcc9a9c6c1\", \"learn_s\": 282.206, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:zero", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:zero", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:zero", "learn_s": 284.512, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "725bef31396999fcff4a20be4178b3ae4cc0da580c0be02bfa08695a5abdf412"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:zero\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"725bef31396999fcff4a20be4178b3ae4cc0da580c0be02bfa08695a5abdf412\", \"learn_s\": 284.512, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:zero", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:zero", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:zero", "learn_s": 284.217, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1827574c55a1df5021450c97cea71435e63c003c7d75d8dcbfa9254ea4b5bd7f"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:zero\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"1827574c55a1df5021450c97cea71435e63c003c7d75d8dcbfa9254ea4b5bd7f\", \"learn_s\": 284.217, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "reward:zero", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "reward:zero", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "reward:zero", "learn_s": 285.119, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "add9fb502a79ff701fb7c39ba1a6f98618dd1b3072a59d3f7cea89c75ea5d1a1"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:zero\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"add9fb502a79ff701fb7c39ba1a6f98618dd1b3072a59d3f7cea89c75ea5d1a1\", \"learn_s\": 285.119, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:zero", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "reward:zero", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:zero", "learn_s": 294.914, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1c1f9d619ef36e0d6112215df50eeebc000388bb1186b2c47d6e4a569066a1eb"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:zero\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"1c1f9d619ef36e0d6112215df50eeebc000388bb1186b2c47d6e4a569066a1eb\", \"learn_s\": 294.914, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:zero", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "reward:zero", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:zero", "learn_s": 292.817, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "7b1220df6eb8ccefa4620184ad020ee5fd08a57bd6786e8c1e083880ca4ceec5"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:zero\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"7b1220df6eb8ccefa4620184ad020ee5fd08a57bd6786e8c1e083880ca4ceec5\", \"learn_s\": 292.817, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "reward:zero", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "reward:zero", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "reward:zero", "learn_s": 293.866, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "60f405bc339a2e159fa33fc902890bd1c14157cf3b3782815f3de0f92270cdc6"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:zero\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"60f405bc339a2e159fa33fc902890bd1c14157cf3b3782815f3de0f92270cdc6\", \"learn_s\": 293.866, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:zero", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:zero", "learn_s": 286.902, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "062be8339ffe12e2979d2cadaee7070f2c9740b49e3749205efc723a4b30b638"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:zero\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"062be8339ffe12e2979d2cadaee7070f2c9740b49e3749205efc723a4b30b638\", \"learn_s\": 286.902, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:zero", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:zero", "learn_s": 283.079, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "a8a2cceb689d50046de37f08cc869775eb3f9d67988186d6447781160a18ca99"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:zero\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"a8a2cceb689d50046de37f08cc869775eb3f9d67988186d6447781160a18ca99\", \"learn_s\": 283.079, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "reward:zero", "fault_json": {"cells": 1, "dose": "one", "fault": "reward:zero", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "reward:zero", "learn_s": 285.604, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "032d0fdb1049f1cc3f3e3d5563fef916131f9d8cbb8733cdc438bdaa6c83da57"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"reward:zero\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"032d0fdb1049f1cc3f3e3d5563fef916131f9d8cbb8733cdc438bdaa6c83da57\", \"learn_s\": 285.604, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "step:fill", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "step:fill", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "step:fill", "learn_s": 284.402, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "344f13fcf6e30b5072e4281503ce0f23cc4fdcbfa81e89767ac5ba63ad7e7aa7"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"step:fill\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"344f13fcf6e30b5072e4281503ce0f23cc4fdcbfa81e89767ac5ba63ad7e7aa7\", \"learn_s\": 284.402, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "step:fill", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "step:fill", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "step:fill", "learn_s": 282.033, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e29fba07366e546e49fb443347d6707635a295c498045372a20848b61641bd3c"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"step:fill\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"e29fba07366e546e49fb443347d6707635a295c498045372a20848b61641bd3c\", \"learn_s\": 282.033, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10067 cells changed", "dose": "0.01", "env": "hopper", "fault": "step:fill", "fault_json": {"cells": 10067, "dose": "0.01", "fault": "step:fill", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "step:fill", "learn_s": 282.821, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "a93f15716b51bc8c91b32bc50fa0e78638b5621d6ede4e98a9094c0153061bb2"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"step:fill\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"a93f15716b51bc8c91b32bc50fa0e78638b5621d6ede4e98a9094c0153061bb2\", \"learn_s\": 282.821, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "step:fill", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "step:fill", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "step:fill", "learn_s": 190.709, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "54dd6b3a8d8481965305e28c8c8213f1efb06dff9dbd68e42f24f10bfb60aa51"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"step:fill\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"54dd6b3a8d8481965305e28c8c8213f1efb06dff9dbd68e42f24f10bfb60aa51\", \"learn_s\": 190.709, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "step:fill", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "step:fill", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "step:fill", "learn_s": 187.998, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "f0d9a30d35bf5cbd9d8d4755ba7c6177136254bab00dcea935a457dfff063028"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"step:fill\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"f0d9a30d35bf5cbd9d8d4755ba7c6177136254bab00dcea935a457dfff063028\", \"learn_s\": 187.998, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1024000 cells changed", "dose": "1.0", "env": "hopper", "fault": "step:fill", "fault_json": {"cells": 1024000, "dose": "1.0", "fault": "step:fill", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "step:fill", "learn_s": 188.333, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1f3f0052f5fa9a999e2ff5bca62ef16bdf246c4cb88b3c063ff41a6dba6eedd3"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"step:fill\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"1f3f0052f5fa9a999e2ff5bca62ef16bdf246c4cb88b3c063ff41a6dba6eedd3\", \"learn_s\": 188.333, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "step:fill", "fault_json": {"cells": 1, "dose": "one", "fault": "step:fill", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "step:fill", "learn_s": 281.855, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "678f362fd98ec9568babbe81d87b8e8cd68a4ad9f5b270ba32133d5e9dd2535d"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"step:fill\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"678f362fd98ec9568babbe81d87b8e8cd68a4ad9f5b270ba32133d5e9dd2535d\", \"learn_s\": 281.855, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "step:fill", "fault_json": {"cells": 1, "dose": "one", "fault": "step:fill", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "step:fill", "learn_s": 279.656, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "0ad39777b21bdc3aea992d81a2472a111e3ec0bd6190b870b7b4e3c02d446678"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"step:fill\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"0ad39777b21bdc3aea992d81a2472a111e3ec0bd6190b870b7b4e3c02d446678\", \"learn_s\": 279.656, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "step:fill", "fault_json": {"cells": 1, "dose": "one", "fault": "step:fill", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "step:fill", "learn_s": 281.897, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc48249505c5b3b53aae507aa1e6e0b9817b9c7796275ab586ee4d0eaedaf1b0"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"step:fill\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"dc48249505c5b3b53aae507aa1e6e0b9817b9c7796275ab586ee4d0eaedaf1b0\", \"learn_s\": 281.897, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 42 cells changed", "dose": "0.01", "env": "hopper", "fault": "terminated:as-trunc", "fault_json": {"cells": 42, "dose": "0.01", "fault": "terminated:as-trunc", "first": [50, 10], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "terminated:as-trunc", "learn_s": 281.93, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "ed3079b7f3c47e3324888b0be93907123fda539830408bf3f449c725e6ad346d"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:as-trunc\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"ed3079b7f3c47e3324888b0be93907123fda539830408bf3f449c725e6ad346d\", \"learn_s\": 281.93, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 38 cells changed", "dose": "0.01", "env": "hopper", "fault": "terminated:as-trunc", "fault_json": {"cells": 38, "dose": "0.01", "fault": "terminated:as-trunc", "first": [166, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "terminated:as-trunc", "learn_s": 279.935, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "2370a04f10a4f0dd3be3fb459f3eaf26aa215f245830a3e8e49faccf643331e1"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:as-trunc\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"2370a04f10a4f0dd3be3fb459f3eaf26aa215f245830a3e8e49faccf643331e1\", \"learn_s\": 279.935, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 28 cells changed", "dose": "0.01", "env": "hopper", "fault": "terminated:as-trunc", "fault_json": {"cells": 28, "dose": "0.01", "fault": "terminated:as-trunc", "first": [294, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "terminated:as-trunc", "learn_s": 281.333, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dfd89e43dcaca0cdc0b98e712d6d59ae875c76e627a5a1f3137fa48a5db87a2b"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:as-trunc\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"dfd89e43dcaca0cdc0b98e712d6d59ae875c76e627a5a1f3137fa48a5db87a2b\", \"learn_s\": 281.333, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 7552 cells changed", "dose": "1.0", "env": "hopper", "fault": "terminated:as-trunc", "fault_json": {"cells": 7552, "dose": "1.0", "fault": "terminated:as-trunc", "first": [10, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "terminated:as-trunc", "learn_s": 285.865, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "5ec55c9b2038d3787fd2c11d1f473f1e3972da30ed0c14052cbe3cc681d9f004"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:as-trunc\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"5ec55c9b2038d3787fd2c11d1f473f1e3972da30ed0c14052cbe3cc681d9f004\", \"learn_s\": 285.865, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 7880 cells changed", "dose": "1.0", "env": "hopper", "fault": "terminated:as-trunc", "fault_json": {"cells": 7880, "dose": "1.0", "fault": "terminated:as-trunc", "first": [7, 14], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "terminated:as-trunc", "learn_s": 284.521, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "7854334fb8a2680915b7e1facd33899fea26708e3d0c659703db689aab868655"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:as-trunc\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"7854334fb8a2680915b7e1facd33899fea26708e3d0c659703db689aab868655\", \"learn_s\": 284.521, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 6856 cells changed", "dose": "1.0", "env": "hopper", "fault": "terminated:as-trunc", "fault_json": {"cells": 6856, "dose": "1.0", "fault": "terminated:as-trunc", "first": [8, 2], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "terminated:as-trunc", "learn_s": 284.579, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e671519844e9b62135643a6ec8aa4d9202ffe83912b925c08890e2d600cab00e"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:as-trunc\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"e671519844e9b62135643a6ec8aa4d9202ffe83912b925c08890e2d600cab00e\", \"learn_s\": 284.579, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "terminated:as-trunc", "fault_json": {"cells": 1, "dose": "one", "fault": "terminated:as-trunc", "first": [3267, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "terminated:as-trunc", "learn_s": 281.305, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "cd28dc41d46c853d3a18b4f63f72b1d12d20dc85d6da9f78d364a05cbf481f09"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:as-trunc\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"cd28dc41d46c853d3a18b4f63f72b1d12d20dc85d6da9f78d364a05cbf481f09\", \"learn_s\": 281.305, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "terminated:as-trunc", "fault_json": {"cells": 1, "dose": "one", "fault": "terminated:as-trunc", "first": [3255, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "terminated:as-trunc", "learn_s": 281.366, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "df3b7dea4bac4c0a69577a936f196adf77c517406d71711f826c7bdbb5718be8"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:as-trunc\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"df3b7dea4bac4c0a69577a936f196adf77c517406d71711f826c7bdbb5718be8\", \"learn_s\": 281.366, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "terminated:as-trunc", "fault_json": {"cells": 1, "dose": "one", "fault": "terminated:as-trunc", "first": [3379, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "terminated:as-trunc", "learn_s": 283.99, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "0301697fb4b76c63222df269b0da57f45380e19f44a7b18ff62351b119785a0c"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:as-trunc\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"0301697fb4b76c63222df269b0da57f45380e19f44a7b18ff62351b119785a0c\", \"learn_s\": 283.99, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 24 cells changed", "dose": "0.01", "env": "hopper", "fault": "terminated:drop", "fault_json": {"cells": 24, "dose": "0.01", "fault": "terminated:drop", "first": [50, 10], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "terminated:drop", "learn_s": 283.118, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "a7f1ba6ff20aba1ee9040835ce72b7e2b78a6a5608e1dd5228e6732403eb00e3"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:drop\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"a7f1ba6ff20aba1ee9040835ce72b7e2b78a6a5608e1dd5228e6732403eb00e3\", \"learn_s\": 283.118, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 37 cells changed", "dose": "0.01", "env": "hopper", "fault": "terminated:drop", "fault_json": {"cells": 37, "dose": "0.01", "fault": "terminated:drop", "first": [166, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "terminated:drop", "learn_s": 282.123, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "c0b1970d877a086a775fd9cbe850ecd1aa0c4e04a6ca807e0471549fb291a31b"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:drop\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"c0b1970d877a086a775fd9cbe850ecd1aa0c4e04a6ca807e0471549fb291a31b\", \"learn_s\": 282.123, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 39 cells changed", "dose": "0.01", "env": "hopper", "fault": "terminated:drop", "fault_json": {"cells": 39, "dose": "0.01", "fault": "terminated:drop", "first": [294, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "terminated:drop", "learn_s": 283.119, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "c77d5ed8db1a678a1962544a73b3c20ef010df616add90fe05e1a9486e7d7a08"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:drop\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"c77d5ed8db1a678a1962544a73b3c20ef010df616add90fe05e1a9486e7d7a08\", \"learn_s\": 283.119, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 7178 cells changed", "dose": "1.0", "env": "hopper", "fault": "terminated:drop", "fault_json": {"cells": 7178, "dose": "1.0", "fault": "terminated:drop", "first": [10, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "terminated:drop", "learn_s": 284.155, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "8589d94180f3804294a183181c2eb090fbf4c0e5d3230942e07feddd7ed18be0"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:drop\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"8589d94180f3804294a183181c2eb090fbf4c0e5d3230942e07feddd7ed18be0\", \"learn_s\": 284.155, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 6873 cells changed", "dose": "1.0", "env": "hopper", "fault": "terminated:drop", "fault_json": {"cells": 6873, "dose": "1.0", "fault": "terminated:drop", "first": [7, 14], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "terminated:drop", "learn_s": 282.487, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "74024aca38fa077d3880ef832334f65b1263ed53e50a1d7cb19568060a3f12ed"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:drop\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"74024aca38fa077d3880ef832334f65b1263ed53e50a1d7cb19568060a3f12ed\", \"learn_s\": 282.487, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 7201 cells changed", "dose": "1.0", "env": "hopper", "fault": "terminated:drop", "fault_json": {"cells": 7201, "dose": "1.0", "fault": "terminated:drop", "first": [8, 2], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "terminated:drop", "learn_s": 285.103, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "af6d0f6d54534fbdd128907a9380479e520e4569b5ce193ed30400221bf0a833"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:drop\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"af6d0f6d54534fbdd128907a9380479e520e4569b5ce193ed30400221bf0a833\", \"learn_s\": 285.103, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "terminated:drop", "fault_json": {"cells": 1, "dose": "one", "fault": "terminated:drop", "first": [3267, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "terminated:drop", "learn_s": 282.338, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "abff69218fb3a34722f87440d7c17385cd70671f1b111e9b93b8424055716644"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:drop\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"abff69218fb3a34722f87440d7c17385cd70671f1b111e9b93b8424055716644\", \"learn_s\": 282.338, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "terminated:drop", "fault_json": {"cells": 1, "dose": "one", "fault": "terminated:drop", "first": [3255, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "terminated:drop", "learn_s": 280.44, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "fd6db7570bbe421713f7595531f8178649615bc5ed548a57242544b858b1f340"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:drop\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"fd6db7570bbe421713f7595531f8178649615bc5ed548a57242544b858b1f340\", \"learn_s\": 280.44, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "terminated:drop", "fault_json": {"cells": 1, "dose": "one", "fault": "terminated:drop", "first": [3379, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "terminated:drop", "learn_s": 282.046, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "e1d130e1721530c8a4ad9ecbecdb1e25c436ae33139f588f0c8c0db0d62643a4"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:drop\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"e1d130e1721530c8a4ad9ecbecdb1e25c436ae33139f588f0c8c0db0d62643a4\", \"learn_s\": 282.046, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10000 cells changed", "dose": "0.01", "env": "hopper", "fault": "terminated:spurious", "fault_json": {"cells": 10000, "dose": "0.01", "fault": "terminated:spurious", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "terminated:spurious", "learn_s": 286.983, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "f2aaa54834eacf17a108f0ca1a048d5d80f402915a9e742866968418fb48fad8"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:spurious\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"f2aaa54834eacf17a108f0ca1a048d5d80f402915a9e742866968418fb48fad8\", \"learn_s\": 286.983, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10008 cells changed", "dose": "0.01", "env": "hopper", "fault": "terminated:spurious", "fault_json": {"cells": 10008, "dose": "0.01", "fault": "terminated:spurious", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "terminated:spurious", "learn_s": 285.99, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "beffce16cdfbf0aa4ba09c366ab43ac42401ffa8c6c0e7869f294b9089d2642b"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:spurious\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"beffce16cdfbf0aa4ba09c366ab43ac42401ffa8c6c0e7869f294b9089d2642b\", \"learn_s\": 285.99, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 10007 cells changed", "dose": "0.01", "env": "hopper", "fault": "terminated:spurious", "fault_json": {"cells": 10007, "dose": "0.01", "fault": "terminated:spurious", "first": [5, 7], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "terminated:spurious", "learn_s": 284.587, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "7ffeb15d75ecec995d96de36d24aad704ea26449e316ddd4b7633e38fa5f04ea"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:spurious\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"7ffeb15d75ecec995d96de36d24aad704ea26449e316ddd4b7633e38fa5f04ea\", \"learn_s\": 284.587, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 999951 cells changed", "dose": "1.0", "env": "hopper", "fault": "terminated:spurious", "fault_json": {"cells": 999951, "dose": "1.0", "fault": "terminated:spurious", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "terminated:spurious", "learn_s": 305.494, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "19c835d869d32df7a3f43baae5d289389d356e09a30f7dcbe4248e02d3799977"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:spurious\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"19c835d869d32df7a3f43baae5d289389d356e09a30f7dcbe4248e02d3799977\", \"learn_s\": 305.494, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1003087 cells changed", "dose": "1.0", "env": "hopper", "fault": "terminated:spurious", "fault_json": {"cells": 1003087, "dose": "1.0", "fault": "terminated:spurious", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "terminated:spurious", "learn_s": 301.313, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "bc17908bde334d4b780d69c85638681b9d7a38affc824ac06b5ea86b2bed49c6"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:spurious\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"bc17908bde334d4b780d69c85638681b9d7a38affc824ac06b5ea86b2bed49c6\", \"learn_s\": 301.313, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 998368 cells changed", "dose": "1.0", "env": "hopper", "fault": "terminated:spurious", "fault_json": {"cells": 998368, "dose": "1.0", "fault": "terminated:spurious", "first": [0, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "terminated:spurious", "learn_s": 302.227, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "bc723cdc687a5a049a4594ab6ce28e0e72e4e883cd38ffa7b9247271450dec8a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:spurious\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"bc723cdc687a5a049a4594ab6ce28e0e72e4e883cd38ffa7b9247271450dec8a\", \"learn_s\": 302.227, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "terminated:spurious", "fault_json": {"cells": 1, "dose": "one", "fault": "terminated:spurious", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "terminated:spurious", "learn_s": 284.515, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "f89379d841b4c7cd4a4b68fd3b7129c2ae9356c086e6b9ed5dc07b4ba74fc03f"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:spurious\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"f89379d841b4c7cd4a4b68fd3b7129c2ae9356c086e6b9ed5dc07b4ba74fc03f\", \"learn_s\": 284.515, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "terminated:spurious", "fault_json": {"cells": 1, "dose": "one", "fault": "terminated:spurious", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "terminated:spurious", "learn_s": 283.356, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "9d4e2b0ace6f007b427da0f15172d2c721625f81b7f7683ad1b4b60ef7e31f3e"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:spurious\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"9d4e2b0ace6f007b427da0f15172d2c721625f81b7f7683ad1b4b60ef7e31f3e\", \"learn_s\": 283.356, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "terminated:spurious", "fault_json": {"cells": 1, "dose": "one", "fault": "terminated:spurious", "first": [3249, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "terminated:spurious", "learn_s": 284.985, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "550d977f680b482c46a223909547e5613d135d1590f6252062bfda41f933ecbb"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"terminated:spurious\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"550d977f680b482c46a223909547e5613d135d1590f6252062bfda41f933ecbb\", \"learn_s\": 284.985, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 3 cells changed", "dose": "0.01", "env": "hopper", "fault": "truncated:as-term", "fault_json": {"cells": 3, "dose": "0.01", "fault": "truncated:as-term", "first": [21625, 1], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "truncated:as-term", "learn_s": 282.454, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "fc2b4c5a290f8c8a4f6af36955641822ed9c9e23f867ba6c855995d0fc5f5942"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:as-term\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"fc2b4c5a290f8c8a4f6af36955641822ed9c9e23f867ba6c855995d0fc5f5942\", \"learn_s\": 282.454, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "0.01", "env": "hopper", "fault": "truncated:as-term", "fault_json": {"cells": 1, "dose": "0.01", "fault": "truncated:as-term", "first": [23863, 2], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "truncated:as-term", "learn_s": 281.054, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "d658d08b5584772f138e455a15d1f5a3396042e8aaa3b45d08ab85dcdccdd261"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:as-term\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"d658d08b5584772f138e455a15d1f5a3396042e8aaa3b45d08ab85dcdccdd261\", \"learn_s\": 281.054, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "0.01", "env": "hopper", "fault": "truncated:as-term", "fault_json": {"cells": 1, "dose": "0.01", "fault": "truncated:as-term", "first": [28407, 13], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "truncated:as-term", "learn_s": 280.98, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "7ea8931e20147174546c9089681e958545a6eebe430ce73a5c92983411011d31"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:as-term\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"7ea8931e20147174546c9089681e958545a6eebe430ce73a5c92983411011d31\", \"learn_s\": 280.98, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 103 cells changed", "dose": "1.0", "env": "hopper", "fault": "truncated:as-term", "fault_json": {"cells": 103, "dose": "1.0", "fault": "truncated:as-term", "first": [21205, 13], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "truncated:as-term", "learn_s": 283.365, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "6cc70f3282c9f529a4c6a764b69222624f3e0e52f4008df7d9738ccb891ca67f"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:as-term\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"6cc70f3282c9f529a4c6a764b69222624f3e0e52f4008df7d9738ccb891ca67f\", \"learn_s\": 283.365, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 145 cells changed", "dose": "1.0", "env": "hopper", "fault": "truncated:as-term", "fault_json": {"cells": 145, "dose": "1.0", "fault": "truncated:as-term", "first": [13936, 12], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "truncated:as-term", "learn_s": 280.013, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "6165442f82f5c1f8dd5a63cb617d58fa77c6a74a30409ded0c11f949f645d1f4"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:as-term\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"6165442f82f5c1f8dd5a63cb617d58fa77c6a74a30409ded0c11f949f645d1f4\", \"learn_s\": 280.013, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 163 cells changed", "dose": "1.0", "env": "hopper", "fault": "truncated:as-term", "fault_json": {"cells": 163, "dose": "1.0", "fault": "truncated:as-term", "first": [13952, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "truncated:as-term", "learn_s": 283.279, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "2d622c5947c4b760afc0535312a419808694ff5fcc5ddcaad3c7082eba2468e6"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:as-term\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"2d622c5947c4b760afc0535312a419808694ff5fcc5ddcaad3c7082eba2468e6\", \"learn_s\": 283.279, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "truncated:as-term", "fault_json": {"cells": 1, "dose": "one", "fault": "truncated:as-term", "first": [27399, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "truncated:as-term", "learn_s": 284.731, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "c0c310c601d3c47e4898c4171dcb23e9e6798b24f8d116b09fc69c8b02b49793"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:as-term\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"c0c310c601d3c47e4898c4171dcb23e9e6798b24f8d116b09fc69c8b02b49793\", \"learn_s\": 284.731, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "truncated:as-term", "fault_json": {"cells": 1, "dose": "one", "fault": "truncated:as-term", "first": [16718, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "truncated:as-term", "learn_s": 281.857, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "a3ef8fa93742f29e977659c37593038fc7940259ade707a93cd0589c075953be"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:as-term\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"a3ef8fa93742f29e977659c37593038fc7940259ade707a93cd0589c075953be\", \"learn_s\": 281.857, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "truncated:as-term", "fault_json": {"cells": 1, "dose": "one", "fault": "truncated:as-term", "first": [13952, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "truncated:as-term", "learn_s": 284.026, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "4044fb86567bbf788adbb615241fa31e3cf5cbf34d579227876d89d661c571f5"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:as-term\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"4044fb86567bbf788adbb615241fa31e3cf5cbf34d579227876d89d661c571f5\", \"learn_s\": 284.026, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "0.01", "env": "hopper", "fault": "truncated:drop", "fault_json": {"cells": 1, "dose": "0.01", "fault": "truncated:drop", "first": [21625, 1], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "truncated:drop", "learn_s": 284.972, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "339bf4345382f7d60c4f085f19087fd117b2c9dade65f45b81a02f47448b30a7"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:drop\", \"dose\": \"0.01\", \"seed\": 0, \"weights_sha256\": \"339bf4345382f7d60c4f085f19087fd117b2c9dade65f45b81a02f47448b30a7\", \"learn_s\": 284.972, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "0.01", "env": "hopper", "fault": "truncated:drop", "fault_json": {"cells": 1, "dose": "0.01", "fault": "truncated:drop", "first": [23863, 2], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "truncated:drop", "learn_s": 282.22, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "abe45244d6fdc3daf93394de5e9e4596c438df2af007fc217bba7eb91141471a"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:drop\", \"dose\": \"0.01\", \"seed\": 1, \"weights_sha256\": \"abe45244d6fdc3daf93394de5e9e4596c438df2af007fc217bba7eb91141471a\", \"learn_s\": 282.22, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 2 cells changed", "dose": "0.01", "env": "hopper", "fault": "truncated:drop", "fault_json": {"cells": 2, "dose": "0.01", "fault": "truncated:drop", "first": [28407, 13], "steps": 64000}, "result": {"client_rc": 0, "dose": "0.01", "env": "hopper", "fault": "truncated:drop", "learn_s": 281.748, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "61c5468c205eafdb949fd998519bee6308ff4ed6095270275f386ce57aaf39d3"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:drop\", \"dose\": \"0.01\", \"seed\": 2, \"weights_sha256\": \"61c5468c205eafdb949fd998519bee6308ff4ed6095270275f386ce57aaf39d3\", \"learn_s\": 281.748, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 103 cells changed", "dose": "1.0", "env": "hopper", "fault": "truncated:drop", "fault_json": {"cells": 103, "dose": "1.0", "fault": "truncated:drop", "first": [21205, 13], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "truncated:drop", "learn_s": 283.555, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "43393fb831f032e18029a02954adcbedf66fb492dce3637720713504c3334956"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:drop\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"43393fb831f032e18029a02954adcbedf66fb492dce3637720713504c3334956\", \"learn_s\": 283.555, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 119 cells changed", "dose": "1.0", "env": "hopper", "fault": "truncated:drop", "fault_json": {"cells": 119, "dose": "1.0", "fault": "truncated:drop", "first": [13936, 12], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "truncated:drop", "learn_s": 281.277, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "1497fee0a3a711d43d8ad2e3305024fbc1ec1146b59e9734ae42481da1d1a98c"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:drop\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"1497fee0a3a711d43d8ad2e3305024fbc1ec1146b59e9734ae42481da1d1a98c\", \"learn_s\": 281.277, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 95 cells changed", "dose": "1.0", "env": "hopper", "fault": "truncated:drop", "fault_json": {"cells": 95, "dose": "1.0", "fault": "truncated:drop", "first": [13952, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "truncated:drop", "learn_s": 283.681, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "002726172e075baa5ee886dc6426a123bfeac45f5e29cb979ee99f413b9d6cd3"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:drop\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"002726172e075baa5ee886dc6426a123bfeac45f5e29cb979ee99f413b9d6cd3\", \"learn_s\": 283.681, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "truncated:drop", "fault_json": {"cells": 1, "dose": "one", "fault": "truncated:drop", "first": [27399, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "truncated:drop", "learn_s": 284.095, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dcfe43fee0c0ced8cccf7e34812c95d804d7eacdc0896e33f2e18328883bea95"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:drop\", \"dose\": \"one\", \"seed\": 0, \"weights_sha256\": \"dcfe43fee0c0ced8cccf7e34812c95d804d7eacdc0896e33f2e18328883bea95\", \"learn_s\": 284.095, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "truncated:drop", "fault_json": {"cells": 1, "dose": "one", "fault": "truncated:drop", "first": [16718, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "truncated:drop", "learn_s": 281.538, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc04fce5b760e583962fd61e6003526164993e6d046692f31fbec7cd164a3ccf"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:drop\", \"dose\": \"one\", \"seed\": 1, \"weights_sha256\": \"dc04fce5b760e583962fd61e6003526164993e6d046692f31fbec7cd164a3ccf\", \"learn_s\": 281.538, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 1 cells changed", "dose": "one", "env": "hopper", "fault": "truncated:drop", "fault_json": {"cells": 1, "dose": "one", "fault": "truncated:drop", "first": [13952, 0], "steps": 64000}, "result": {"client_rc": 0, "dose": "one", "env": "hopper", "fault": "truncated:drop", "learn_s": 283.225, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "655e747578fd30d17ddc3e8acbc89e6e81862da22070454337c4a8cfcbff1e8a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"truncated:drop\", \"dose\": \"one\", \"seed\": 2, \"weights_sha256\": \"655e747578fd30d17ddc3e8acbc89e6e81862da22070454337c4a8cfcbff1e8a\", \"learn_s\": 283.225, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "wire-float64", "fault_json": {"cells": 0, "dose": "1.0", "fault": "wire-float64", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "wire-float64", "learn_s": 282.303, "seed": 0, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef"}, "seed": 0, "train_log": "{\"env\": \"hopper\", \"fault\": \"wire-float64\", \"dose\": \"1.0\", \"seed\": 0, \"weights_sha256\": \"13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef\", \"learn_s\": 282.303, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "wire-float64", "fault_json": {"cells": 0, "dose": "1.0", "fault": "wire-float64", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "wire-float64", "learn_s": 282.401, "seed": 1, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135"}, "seed": 1, "train_log": "{\"env\": \"hopper\", \"fault\": \"wire-float64\", \"dose\": \"1.0\", \"seed\": 1, \"weights_sha256\": \"da9f31140c42f3ed929c712df636d131c87bb8a1f470cd72d9015e482f236135\", \"learn_s\": 282.401, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} +{"client_log": "closed after 64000 steps: 'plugrl-server-stop'; 0 cells changed", "dose": "1.0", "env": "hopper", "fault": "wire-float64", "fault_json": {"cells": 0, "dose": "1.0", "fault": "wire-float64", "first": null, "steps": 64000}, "result": {"client_rc": 0, "dose": "1.0", "env": "hopper", "fault": "wire-float64", "learn_s": 279.633, "seed": 2, "steps": 1024000, "torch": "2.14.1+cpu", "weights_sha256": "dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a"}, "seed": 2, "train_log": "{\"env\": \"hopper\", \"fault\": \"wire-float64\", \"dose\": \"1.0\", \"seed\": 2, \"weights_sha256\": \"dc7c18bd2cf7bfc39cf7c01d4b5a38009291b25f6320fe6587bf58523ac33f6a\", \"learn_s\": 279.633, \"steps\": 1024000, \"torch\": \"2.14.1+cpu\", \"client_rc\": 0}"} diff --git a/experiments/e56-hopper-faults/results/summarise.out b/experiments/e56-hopper-faults/results/summarise.out new file mode 100644 index 0000000..93b0bd9 --- /dev/null +++ b/experiments/e56-hopper-faults/results/summarise.out @@ -0,0 +1,94 @@ +env fault dose cells raises rule strict weights record bridge +hopper none 1.0 0/0/0 0/3 0/3 0/3 0/3 0/3 0/3 +hopper delay-1ms 1.0 0/0/0 0/3 0/3 0/3 0/3 0/3 0/3 +hopper wire-float64 1.0 0/0/0 0/3 0/3 0/3 0/3 0/3 0/3 +hopper obs:zero 0.01 10067/10067/10067 0/3 0/3 0/3 3/3 0/3 0/3 +hopper obs:zero 1.0 1024016/1024016/1024016 0/3 3/3 3/3 3/3 0/3 0/3 +hopper obs:zero one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper obs:stale 0.01 10067/10067/10067 0/3 0/3 0/3 3/3 0/3 0/3 +hopper obs:stale 1.0 1024000/1024000/1024000 0/3 1/3 1/3 3/3 0/3 0/3 +hopper obs:stale one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper obs:swap 0.01 10067/10067/10067 0/3 0/3 0/3 3/3 0/3 0/3 +hopper obs:swap 1.0 1024016/1024016/1024016 0/3 3/3 3/3 3/3 0/3 0/3 +hopper obs:swap one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper obs:f16 0.01 10067/10067/10067 0/3 0/3 0/3 3/3 0/3 0/3 +hopper obs:f16 1.0 1024016/1024016/1024016 0/3 0/3 0/3 3/3 0/3 0/3 +hopper obs:f16 one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:zero 0.01 10067/10067/10067 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:zero 1.0 1024000/1024000/1024000 0/3 3/3 3/3 3/3 0/3 0/3 +hopper action:zero one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:stale 0.01 10067/10067/10062 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:stale 1.0 1022705/1021290/1021873 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:stale one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:swap 0.01 10063/10066/10062 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:swap 1.0 1023968/1023975/1023986 0/3 3/3 3/3 3/3 0/3 0/3 +hopper action:swap one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:f16 0.01 9882/9875/9772 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:f16 1.0 1005791/990123/1010459 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:f16 one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:clip 0.01 9025/9424/9420 0/3 0/3 0/3 3/3 0/3 0/3 +hopper action:clip 1.0 963542/962566/975678 0/3 2/3 3/3 3/3 0/3 0/3 +hopper action:clip one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper reward:zero 0.01 10067/10067/10067 0/3 0/3 0/3 3/3 3/3 0/3 +hopper reward:zero 1.0 1024000/1024000/1024000 0/3 3/3 3/3 3/3 3/3 0/3 +hopper reward:zero one 1/1/1 0/3 0/3 0/3 3/3 3/3 0/3 +hopper reward:stale 0.01 10067/10067/10067 0/3 0/3 0/3 3/3 3/3 0/3 +hopper reward:stale 1.0 1023999/1023999/1024000 0/3 0/3 0/3 3/3 3/3 0/3 +hopper reward:stale one 1/1/1 0/3 0/3 0/3 3/3 1/3 0/3 +hopper reward:swap 0.01 10067/10067/10067 0/3 0/3 0/3 3/3 3/3 0/3 +hopper reward:swap 1.0 1024000/1024000/1024000 0/3 3/3 3/3 3/3 3/3 0/3 +hopper reward:swap one 1/1/1 0/3 0/3 0/3 3/3 3/3 0/3 +hopper reward:f16 0.01 10066/10067/10067 0/3 0/3 0/3 3/3 0/3 0/3 +hopper reward:f16 1.0 1023872/1023882/1023890 0/3 0/3 0/3 3/3 0/3 0/3 +hopper reward:f16 one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper final-obs:zero 0.01 36/35/28 0/3 0/3 0/3 3/3 0/3 0/3 +hopper final-obs:zero 1.0 3440/3397/3453 0/3 0/3 0/3 3/3 0/3 0/3 +hopper final-obs:zero one 1/1/1 0/3 0/3 0/3 0/3 0/3 0/3 +hopper final-obs:stale 0.01 43/43/29 0/3 0/3 0/3 3/3 0/3 0/3 +hopper final-obs:stale 1.0 3424/3328/3505 0/3 0/3 0/3 3/3 0/3 0/3 +hopper final-obs:stale one 1/1/1 0/3 0/3 0/3 0/3 0/3 0/3 +hopper final-obs:swap 0.01 40/36/31 0/3 0/3 0/3 3/3 0/3 0/3 +hopper final-obs:swap 1.0 3429/3505/3447 0/3 0/3 0/3 3/3 0/3 0/3 +hopper final-obs:swap one 1/1/1 0/3 0/3 0/3 0/3 0/3 0/3 +hopper final-obs:f16 0.01 37/42/31 0/3 0/3 0/3 3/3 0/3 0/3 +hopper final-obs:f16 1.0 3374/3457/3483 0/3 0/3 0/3 3/3 0/3 0/3 +hopper final-obs:f16 one 1/1/1 0/3 0/3 0/3 0/3 0/3 0/3 +hopper terminated:spurious 0.01 10000/10008/10007 0/3 3/3 3/3 3/3 3/3 0/3 +hopper terminated:spurious 1.0 999951/1003087/998368 0/3 3/3 3/3 3/3 3/3 0/3 +hopper terminated:spurious one 1/1/1 0/3 0/3 0/3 3/3 3/3 0/3 +hopper truncated:drop 0.01 1/1/2 0/3 0/3 0/3 3/3 3/3 0/3 +hopper truncated:drop 1.0 103/119/95 0/3 0/3 0/3 3/3 3/3 0/3 +hopper truncated:drop one 1/1/1 0/3 0/3 0/3 3/3 3/3 0/3 +hopper truncated:as-term 0.01 3/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper truncated:as-term 1.0 103/145/163 0/3 0/3 0/3 3/3 0/3 0/3 +hopper truncated:as-term one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper step:fill 0.01 10067/10067/10067 0/3 0/3 0/3 3/3 3/3 0/3 +hopper step:fill 1.0 1024000/1024000/1024000 0/3 3/3 3/3 3/3 0/3 0/3 +hopper step:fill one 1/1/1 0/3 0/3 0/3 3/3 3/3 0/3 +hopper terminated:drop 0.01 24/37/39 0/3 0/3 0/3 3/3 3/3 0/3 +hopper terminated:drop 1.0 7178/6873/7201 0/3 3/3 3/3 3/3 3/3 0/3 +hopper terminated:drop one 1/1/1 0/3 0/3 0/3 3/3 3/3 0/3 +hopper terminated:as-trunc 0.01 42/38/28 0/3 0/3 0/3 3/3 0/3 0/3 +hopper terminated:as-trunc 1.0 7552/7880/6856 0/3 3/3 3/3 3/3 0/3 0/3 +hopper terminated:as-trunc one 1/1/1 0/3 0/3 0/3 3/3 0/3 0/3 +hopper log:drop-first 0.01 30/29/32 0/3 0/3 0/3 0/3 3/3 3/3 +hopper log:drop-first 1.0 3357/3271/3552 0/3 0/3 0/3 0/3 3/3 3/3 +hopper log:drop-first one 1/1/1 0/3 0/3 0/3 0/3 3/3 3/3 +hopper log:short 0.01 30/29/32 0/3 0/3 0/3 0/3 3/3 3/3 +hopper log:short 1.0 3357/3271/3552 0/3 0/3 0/3 0/3 3/3 3/3 +hopper log:short one 1/1/1 0/3 0/3 0/3 0/3 3/3 3/3 + +share of runs caught, by dose (runs with a changed cell; either = weights or record) + hopper client one n= 69 raises 0.0 rule 0.0 strict 0.0 weights 0.826 record 0.275 bridge 0.0 either 0.826 + hopper client 0.01 n= 69 raises 0.0 rule 0.043 strict 0.043 weights 1.0 record 0.304 bridge 0.0 either 1.0 + hopper client 1.0 n= 69 raises 0.0 rule 0.478 strict 0.493 weights 1.0 record 0.261 bridge 0.0 either 1.0 + hopper log one n= 6 raises 0.0 rule 0.0 strict 0.0 weights 0.0 record 1.0 bridge 1.0 either 1.0 + hopper log 0.01 n= 6 raises 0.0 rule 0.0 strict 0.0 weights 0.0 record 1.0 bridge 1.0 either 1.0 + hopper log 1.0 n= 6 raises 0.0 rule 0.0 strict 0.0 weights 0.0 record 1.0 bridge 1.0 either 1.0 + hopper all one n= 75 raises 0.0 rule 0.0 strict 0.0 weights 0.76 record 0.333 bridge 0.08 either 0.84 + hopper all 0.01 n= 75 raises 0.0 rule 0.04 strict 0.04 weights 0.92 record 0.36 bridge 0.08 either 1.0 + hopper all 1.0 n= 75 raises 0.0 rule 0.44 strict 0.453 weights 0.92 record 0.32 bridge 0.08 either 1.0 + +hopper fault-free band, seeds 10-19: mean 2031.4, sd 259.2, min 1612.8, max 2271.7 +hopper strict check on fault-free seeds 10-19, each against the other nine: 0 of 10 flagged +incomplete without an error: none diff --git a/experiments/e56-hopper-faults/results/verdicts.txt b/experiments/e56-hopper-faults/results/verdicts.txt new file mode 100644 index 0000000..ff1cd3f --- /dev/null +++ b/experiments/e56-hopper-faults/results/verdicts.txt @@ -0,0 +1,10 @@ +V1: holds - 244 of 244 complete +V2: holds - controls on none's weights: 6 of 6 +P1: holds - weights differ in 171 of 171 +P2: holds - log faults on none's weights: 18 of 18 +P3: holds - one: 0/75 (0.0%, cap 10%); 0.01: 3/75 (4.0%, cap 10%); 1.0: 33/75 (44.0%, cap 60%) +P4: holds - missed 0, caught 0 it should not +P5: holds - bridge caught 18 of 18 log-fault runs, 0 of 207 client-fault runs +P6: holds - caught and right in 207 of 207 client-fault runs; no difference in 27 of 27 control and log-fault runs +P7: holds - ledger or record caught 225 of 225 +reported: final-obs runs (fault, dose, seed, weights caught): [('final-obs:f16', '0.01', '0', '1'), ('final-obs:f16', '0.01', '1', '1'), ('final-obs:f16', '0.01', '2', '1'), ('final-obs:f16', '1.0', '0', '1'), ('final-obs:f16', '1.0', '1', '1'), ('final-obs:f16', '1.0', '2', '1'), ('final-obs:f16', 'one', '0', '0'), ('final-obs:f16', 'one', '1', '0'), ('final-obs:f16', 'one', '2', '0'), ('final-obs:stale', '0.01', '0', '1'), ('final-obs:stale', '0.01', '1', '1'), ('final-obs:stale', '0.01', '2', '1'), ('final-obs:stale', '1.0', '0', '1'), ('final-obs:stale', '1.0', '1', '1'), ('final-obs:stale', '1.0', '2', '1'), ('final-obs:stale', 'one', '0', '0'), ('final-obs:stale', 'one', '1', '0'), ('final-obs:stale', 'one', '2', '0'), ('final-obs:swap', '0.01', '0', '1'), ('final-obs:swap', '0.01', '1', '1'), ('final-obs:swap', '0.01', '2', '1'), ('final-obs:swap', '1.0', '0', '1'), ('final-obs:swap', '1.0', '1', '1'), ('final-obs:swap', '1.0', '2', '1'), ('final-obs:swap', 'one', '0', '0'), ('final-obs:swap', 'one', '1', '0'), ('final-obs:swap', 'one', '2', '0'), ('final-obs:zero', '0.01', '0', '1'), ('final-obs:zero', '0.01', '1', '1'), ('final-obs:zero', '0.01', '2', '1'), ('final-obs:zero', '1.0', '0', '1'), ('final-obs:zero', '1.0', '1', '1'), ('final-obs:zero', '1.0', '2', '1'), ('final-obs:zero', 'one', '0', '0'), ('final-obs:zero', 'one', '1', '0'), ('final-obs:zero', 'one', '2', '0')] diff --git a/experiments/e56-hopper-faults/verdicts.py b/experiments/e56-hopper-faults/verdicts.py new file mode 100644 index 0000000..3325ac9 --- /dev/null +++ b/experiments/e56-hopper-faults/verdicts.py @@ -0,0 +1,107 @@ +"""E56: judge PROTOCOL.md's checks and predictions from runs.csv and ledger.csv. + + python verdicts.py results # prints, and writes results/verdicts.txt + +Each prediction is judged as PROTOCOL.md words it, on seeds 0-2, over runs +whose fault changed at least one value. +""" + +from __future__ import annotations + +import csv +import pathlib +import sys + +HERE = pathlib.Path(__file__).resolve().parent +sys.path.insert(0, str(HERE)) +from faulty_client import CONTROLS, LOUD, SILENT # noqa: E402 + +LOG = ("log:drop-first", "log:short") +SEEDS = {"0", "1", "2"} +FINAL_OBS = tuple(f for f in SILENT if f.startswith("final-obs:")) + + +def read(path: pathlib.Path) -> list[dict]: + with open(path, encoding="utf-8", newline="") as f: + return list(csv.DictReader(f)) + + +def main() -> int: + root = pathlib.Path(sys.argv[1]) if len(sys.argv) > 1 else HERE / "results" + rows = read(root / "runs.csv") + ledger = read(root / "ledger.csv") + reg = [r for r in rows if r["seed"] in SEEDS] + changed = [r for r in reg if r["fault"] not in CONTROLS + LOUD and r["cells"] not in ("", "0", "None")] + out = [] + + def verdict(name: str, ok: bool, detail: str) -> None: + out.append(f"{name}: {'holds' if ok else 'FAILS'} - {detail}") + + def runs_of(rs) -> list: + return [(r["fault"], r["dose"], r["seed"]) for r in rs] + + bad = [r for r in rows if r["complete"] != "1"] + verdict("V1", not bad, f"{len(rows) - len(bad)} of {len(rows)} complete" + (f"; not: {runs_of(bad)[:5]}" if bad else "")) + none = {r["seed"]: r["sha"] for r in reg if r["fault"] == "none"} + ctrl = [r for r in reg if r["fault"] in ("delay-1ms", "wire-float64")] + v2_bad = [r for r in ctrl if r["sha"] != none.get(r["seed"])] + verdict("V2", not v2_bad and len(ctrl) == 6, f"controls on none's weights: {len(ctrl) - len(v2_bad)} of {len(ctrl)}") + + client = [r for r in changed if r["fault"] in SILENT] + p1 = [r for r in client if r["fault"] not in FINAL_OBS] + p1_bad = [r for r in p1 if r["weights"] != "1"] + verdict("P1", not p1_bad, f"weights differ in {len(p1) - len(p1_bad)} of {len(p1)}" + (f"; not: {runs_of(p1_bad)}" if p1_bad else "")) + + logs = [r for r in changed if r["fault"] in LOG] + p2_bad = [r for r in logs if r["weights"] != "0"] + verdict("P2", not p2_bad, f"log faults on none's weights: {len(logs) - len(p2_bad)} of {len(logs)}") + + p3_ok, parts = True, [] + for dose, cap in (("one", 0.10), ("0.01", 0.10), ("1.0", 0.60)): + rs = [r for r in client + logs if r["dose"] == dose] + n = sum(r["rule"] == "1" for r in rs) + p3_ok &= n / len(rs) <= cap + parts.append(f"{dose}: {n}/{len(rs)} ({n / len(rs):.1%}, cap {cap:.0%})") + verdict("P3", p3_ok, "; ".join(parts)) + + must = ("reward:zero", "reward:stale", "reward:swap", "terminated:spurious", "terminated:drop", "truncated:drop") + never = tuple(f for f in SILENT if f.split(":")[0] in ("obs", "action", "final-obs")) + ( + "truncated:as-term", + "terminated:as-trunc", + ) + miss = [r for r in changed if r["fault"] in must and r["dose"] in ("0.01", "1.0") and r["record"] != "1"] + miss += [r for r in changed if r["fault"] == "step:fill" and r["dose"] == "0.01" and r["record"] != "1"] + miss += [r for r in logs if r["record"] != "1"] + false = [r for r in changed if r["fault"] in never and r["record"] == "1"] + verdict("P4", not miss and not false, f"missed {len(miss)}, caught {len(false)} it should not" + + (f"; missed: {runs_of(miss)[:8]}" if miss else "") + (f"; caught: {runs_of(false)[:8]}" if false else "")) + + p5_ok = all(r["bridge"] == "1" for r in logs) and all(r["bridge"] == "0" for r in client) + verdict("P5", p5_ok, f"bridge caught {sum(r['bridge'] == '1' for r in logs)} of {len(logs)} log-fault runs, " + f"{sum(r['bridge'] == '1' for r in client)} of {len(client)} client-fault runs") + + led = [r for r in ledger if r["seed"] in SEEDS] + led_client = [r for r in led if r["fault"] in SILENT and r["cells"] not in ("", "0")] + led_quiet = [r for r in led if r["fault"] in CONTROLS + LOG] + p6_bad = [r for r in led_client if r["caught"] != "1" or r["right"] != "1"] + p6_false = [r for r in led_quiet if r["caught"] != "0"] + verdict("P6", not p6_bad and not p6_false, + f"caught and right in {len(led_client) - len(p6_bad)} of {len(led_client)} client-fault runs; " + f"no difference in {len(led_quiet) - len(p6_false)} of {len(led_quiet)} control and log-fault runs" + + (f"; not: {[(r['fault'], r['dose'], r['seed'], r['found']) for r in p6_bad][:6]}" if p6_bad else "")) + + caught_ledger = {(r["fault"], r["dose"], r["seed"]) for r in led if r["caught"] == "1"} + p7_miss = [r for r in client + logs + if r["record"] != "1" and (r["fault"], r["dose"], r["seed"]) not in caught_ledger] # fmt: skip + verdict("P7", not p7_miss, f"ledger or record caught {len(client + logs) - len(p7_miss)} of {len(client + logs)}") + + fo = [(r["fault"], r["dose"], r["seed"], r["weights"]) for r in client if r["fault"] in FINAL_OBS] + out.append(f"reported: final-obs runs (fault, dose, seed, weights caught): {fo}") + text = "\n".join(out) + print(text) + (root / "verdicts.txt").write_bytes((text + "\n").encode("utf-8")) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) From 4ff31cb63914ba7ac99e5035906c712284f8bfb3 Mon Sep 17 00:00:00 2001 From: tactino <18781106300@163.com> Date: Sat, 3 Oct 2026 00:16:37 -0400 Subject: [PATCH 3/4] E57: protocol, after the pilot and before the registered runs - evaluated on a clean environment, is a policy trained through a boundary fault worse, and are the faults both curve checks miss? Every E54 and E56 final policy (834) plays 50 deterministic episodes in a fresh gymnasium env, seeds 10000-10049. Harmed = clean return more than 3 s.d. below the fault-free band (seeds 10-19). Predictions: few false alarms (P1), no measurable harm at one value (P2), Pendulum reward:zero harmed behind a perfect-looking log (P3). evaluate.py, run.sh, summarise.py and verdicts.py are committed here, before any registered run. --- experiments/e57-clean-eval/PROTOCOL.md | 118 +++++++++++++++++ experiments/e57-clean-eval/evaluate.py | 64 ++++++++++ .../clean_eval.json | 1 + .../clean_eval.json | 1 + .../clean_eval.json | 1 + .../clean_eval.json | 1 + .../clean_eval.json | 1 + .../clean_eval.json | 1 + .../clean_eval.json | 1 + .../clean_eval.json | 1 + .../clean_eval.json | 1 + experiments/e57-clean-eval/run.sh | 21 ++++ experiments/e57-clean-eval/summarise.py | 119 ++++++++++++++++++ experiments/e57-clean-eval/verdicts.py | 62 +++++++++ 14 files changed, 393 insertions(+) create mode 100644 experiments/e57-clean-eval/PROTOCOL.md create mode 100644 experiments/e57-clean-eval/evaluate.py create mode 100644 experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_none_1.0_seed0/clean_eval.json create mode 100644 experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_none_1.0_seed10/clean_eval.json create mode 100644 experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_obs__f16_1.0_seed0/clean_eval.json create mode 100644 experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_none_1.0_seed0/clean_eval.json create mode 100644 experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_none_1.0_seed10/clean_eval.json create mode 100644 experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_obs__f16_1.0_seed0/clean_eval.json create mode 100644 experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_none_1.0_seed0/clean_eval.json create mode 100644 experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_none_1.0_seed10/clean_eval.json create mode 100644 experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_obs__f16_1.0_seed0/clean_eval.json create mode 100644 experiments/e57-clean-eval/run.sh create mode 100644 experiments/e57-clean-eval/summarise.py create mode 100644 experiments/e57-clean-eval/verdicts.py diff --git a/experiments/e57-clean-eval/PROTOCOL.md b/experiments/e57-clean-eval/PROTOCOL.md new file mode 100644 index 0000000..33043c8 --- /dev/null +++ b/experiments/e57-clean-eval/PROTOCOL.md @@ -0,0 +1,118 @@ +# E57 measurement protocol (pre-registered) + +**Written 2026-10-03, after the pilot in `results/pilot/`, before the +registered runs.** + +This file must not be edited after the first registered data point. Anything +learned afterwards goes in `AMENDMENT.md`, dated. + +--- + +## The question + +E54 and E56 judged each run by what the trainer saw: its own log, its +weights, or the two sides' records. None of them asks what a faulted run +leaves behind, the policy. Reviewers asked whether the faults matter at all. + +**Evaluated on a clean environment, is a policy trained through a fault +worse than one trained without it? In particular, are the faults that both +curve checks miss?** And does the trainer's log agree with the clean +evaluation? + +--- + +## Declared in advance: what was already known + +1. **The policies.** Every E54 and E56 run saved its final policy + (`model.zip`): 590 runs of E54 (Pendulum, HalfCheetah) and 244 of E56 + (Hopper). Their outcomes under the gain threshold, seed spread, byte + identity, record and ledger are published (`runs.csv`, `ledger.csv`). No + policy had been evaluated outside training before the pilot. +2. **The pilot** (`results/pilot/`), 20 episodes each, on guangzhao: + + | env | `none` seed 0 | `none` seed 10 | `obs:f16` 1.0 seed 0 | + | --- | --- | --- | --- | + | Pendulum | -147.0 | -139.1 | -139.7 | + | HalfCheetah | 647.1 | 779.8 | 851.2 | + | Hopper | 3368.9 | 3651.3 | 1633.5 (mean length 482) | + + Pendulum's episodes vary by about 100 (initial states); HalfCheetah's by + about 130; Hopper's by 10-580. An evaluation took 0.3-2.5 s. + +--- + +## Design + +`evaluate.py RUN_DIR OUT_DIR --episodes 50`. It does the following: +- loads the run's `model.zip` on CPU, with one torch thread; +- makes a fresh `gymnasium.make(id)` at default settings (Pendulum-v1, + HalfCheetah-v5, Hopper-v5), with no bridge, client, wrapper or fault; +- plays 50 episodes with `deterministic=True`, reset with seeds 10000-10049, + which are the same for every policy; +- writes `clean_eval.json`: each episode's return and length, and their mean, + the **clean return**. + +Every run directory of E54 and E56 that holds a `model.zip` is evaluated: +834 runs, 12 at a time on guangzhao (`run.sh`). Then `python summarise.py` +and `python verdicts.py`. + +--- + +## How each run is judged + +- **The fault-free band**, per environment: the clean returns of `none` at + seeds 10-19. The band is its mean and standard deviation. +- **Harmed:** a run's clean return is more than 3 standard deviations below + the band's mean. The rule is the seed-spread check's, applied to the clean + return, and only on the low side. A fault-free seed among 10-19 is judged + against the other nine. +- **Silent on the curve:** the run passed both the gain threshold and seed + spread (`rule` = 0 and `strict` = 0 in E54's or E56's `runs.csv`). +- **The log's error:** the trainer's logged final return (`last` in + `runs.csv`) minus the clean return. + +Boundary faults are E54's 21 client faults (23 on Hopper). Log faults, +controls (`none`, `delay-1ms`, `wire-float64`) and the two loud faults +(`indices:reorder`, `reward:short-array`) are reported separately. The +loud faults raised an error, so they are left out of every count. + +--- + +## Checks that the runs are valid + +- **V1:** all 834 evaluations complete, each with 50 episodes. +- **V2:** two runs with the same weights hash get the same clean return. The + controls and log faults ended on `none`'s weights, so this tests that + evaluation is deterministic. + +--- + +## Predictions, and what falsifies each + +**P1 - The harm rule raises few false alarms.** It flags at most 1 of the +ten fault-free seeds 10-19 in each environment, each judged against the +other nine. Falsified by 2 or more in any environment. + +**P2 - One changed value does no measurable harm.** At dose `one`, at most +10% of boundary-fault runs are harmed, in each environment. Falsified by +more. + +**P3 - A zeroed reward leaves a policy that does not work, behind a log +that looks perfect.** On Pendulum at dose 1.0, `reward:zero` is harmed at +all three seeds, while its log reads 0, the best return Pendulum can give. +Falsified by any seed not harmed. + +> Grounds: P1, E54's and E56's seed-spread false alarms (0, 1, 0 of ten). P2, +> one changed value moved the logged return about as much as a change of +> seed (E54, E56). P3, with every reward zero PPO's advantages are zero +> after normalisation, and nothing is learned. + +**Reported, not predicted:** +- **The main count.** Among boundary-fault runs, at each dose: + - how many are harmed; + - how many are harmed while silent on the curve. +- **The faults behind it.** Every fault and dose that was silent on the curve + at all three seeds and harmed at two or more. +- **The log's error.** For each kind, against the fault-free runs' range. +- **The pilot's lead.** Whether Hopper's `obs:f16` at 1.0 is harmed at seeds 1 + and 2. The pilot saw it at seed 0 only. diff --git a/experiments/e57-clean-eval/evaluate.py b/experiments/e57-clean-eval/evaluate.py new file mode 100644 index 0000000..6d5a9d9 --- /dev/null +++ b/experiments/e57-clean-eval/evaluate.py @@ -0,0 +1,64 @@ +"""E57: evaluate one run's final policy on a clean environment. + + python evaluate.py RUN_DIR OUT_DIR [--episodes N] + +RUN_DIR is an E54 or E56 run directory (model.zip, result.json). The policy +acts deterministically in a fresh gymnasium environment of the same id, at +its default settings, for N episodes reset with seeds 10000, 10001, ... No +bridge, no env client, no fault. Writes OUT_DIR/clean_eval.json. +""" + +import argparse +import json +import pathlib +import time + +import gymnasium as gym +import numpy as np +import torch +from stable_baselines3 import PPO + +IDS = {"pendulum": "Pendulum-v1", "halfcheetah": "HalfCheetah-v5", "hopper": "Hopper-v5"} +SEED0 = 10_000 + + +def main() -> int: + ap = argparse.ArgumentParser() + ap.add_argument("run", type=pathlib.Path) + ap.add_argument("out", type=pathlib.Path) + ap.add_argument("--episodes", type=int, default=20) + a = ap.parse_args() + torch.set_num_threads(1) + + res = json.loads((a.run / "result.json").read_text()) + env = gym.make(IDS[res["env"]]) + model = PPO.load(a.run / "model.zip", device="cpu") + + returns, lengths = [], [] + t0 = time.time() + for k in range(a.episodes): + obs, _ = env.reset(seed=SEED0 + k) + done, ret, n = False, 0.0, 0 + while not done: + act, _ = model.predict(obs, deterministic=True) + obs, r, term, trunc, _ = env.step(act) + ret += float(r) + n += 1 + done = term or trunc + returns.append(ret) + lengths.append(n) + + out = dict( + env=res["env"], fault=res["fault"], dose=res["dose"], seed=res["seed"], + weights_sha256=res["weights_sha256"], episodes=a.episodes, + returns=returns, lengths=lengths, mean=float(np.mean(returns)), + eval_s=round(time.time() - t0, 3), + ) + a.out.mkdir(parents=True, exist_ok=True) + (a.out / "clean_eval.json").write_text(json.dumps(out)) + print(json.dumps({k: out[k] for k in ("env", "fault", "dose", "seed", "mean", "eval_s")})) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_none_1.0_seed0/clean_eval.json b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_none_1.0_seed0/clean_eval.json new file mode 100644 index 0000000..f955b4d --- /dev/null +++ b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_none_1.0_seed0/clean_eval.json @@ -0,0 +1 @@ +{"env": "halfcheetah", "fault": "none", "dose": "1.0", "seed": 0, "weights_sha256": "8261c03a5b604bf51d281f80b5a1b7388b9ecb845f7dea1f4ac8e141146886e1", "episodes": 20, "returns": [651.3234362808489, 696.2781656870862, 457.64691140055936, 719.6892388681085, 770.8939605452848, 692.4743877630106, 690.9157875583197, 664.4332815274836, 426.51696380134877, 750.943370696577, 615.6042047909582, 469.3785269595863, 662.618710156006, 724.2538544019615, 677.2488278432409, 792.2352990503962, 351.3828695739779, 638.1224243751633, 830.7964619192353, 659.4809622459012], "lengths": [1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000], "mean": 647.1118822722527, "eval_s": 1.853} \ No newline at end of file diff --git a/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_none_1.0_seed10/clean_eval.json b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_none_1.0_seed10/clean_eval.json new file mode 100644 index 0000000..82d118f --- /dev/null +++ b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_none_1.0_seed10/clean_eval.json @@ -0,0 +1 @@ +{"env": "halfcheetah", "fault": "none", "dose": "1.0", "seed": 10, "weights_sha256": "a14df8cd72aeddb785c16f675d6214b4c0e9b0288cb48bade6ef9832f0636e72", "episodes": 20, "returns": [908.992906528071, 798.0622444063571, 834.8269480516399, 861.7588342301656, 671.6906998393595, 690.2348618102058, 823.04533078838, 952.5620003200672, 819.7638177500404, 961.9808441514579, 315.8738334752362, 893.4219227618573, 831.871036891478, 777.5199051167675, 632.6554938342715, 819.5329361523134, 850.6075704599257, 478.26193617321405, 943.5968694686496, 730.537552264455], "lengths": [1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000], "mean": 779.8398772236957, "eval_s": 1.812} \ No newline at end of file diff --git a/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_obs__f16_1.0_seed0/clean_eval.json b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_obs__f16_1.0_seed0/clean_eval.json new file mode 100644 index 0000000..36ec06c --- /dev/null +++ b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_halfcheetah_obs__f16_1.0_seed0/clean_eval.json @@ -0,0 +1 @@ +{"env": "halfcheetah", "fault": "obs:f16", "dose": "1.0", "seed": 0, "weights_sha256": "bfd9adbece1d1fc237193ed37a3755a697175a1b0414fe9b25375a17252f11fa", "episodes": 20, "returns": [902.9361746388151, 895.0753539798012, 867.532404387183, 898.5785154221388, 877.250657326663, 813.8040834600864, 499.73164316170073, 942.3308807016163, 832.7886597122447, 917.1675000351388, 888.4551547697322, 879.0018400901978, 754.9256621603416, 862.072819509723, 900.6832470258539, 822.6763016953425, 881.1377377803522, 832.6380501092463, 889.7950516756217, 865.1509525223811], "lengths": [1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000], "mean": 851.1866345082092, "eval_s": 1.994} \ No newline at end of file diff --git a/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_none_1.0_seed0/clean_eval.json b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_none_1.0_seed0/clean_eval.json new file mode 100644 index 0000000..c3e7439 --- /dev/null +++ b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_none_1.0_seed0/clean_eval.json @@ -0,0 +1 @@ +{"env": "pendulum", "fault": "none", "dose": "1.0", "seed": 0, "weights_sha256": "ec5b8226b227f3fa58bd771b411e3673b751ec2c062b010cf0dcef60baed42bc", "episodes": 20, "returns": [-0.606069784632254, -127.87956452531162, -130.55602317528292, -126.99531136451037, -268.0517554576323, -129.28876254287457, -276.22865412728487, -274.345028433382, -131.55061270241927, -0.7529306006592864, -250.57787816515716, -0.657350151429643, -263.12665856648846, -1.6163179230989386, -288.50654566692236, -0.5924826923941123, -274.2252146814768, -131.8219735024185, -133.55651415663112, -128.6710668345104], "lengths": [200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200], "mean": -146.98033575272586, "eval_s": 0.298} \ No newline at end of file diff --git a/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_none_1.0_seed10/clean_eval.json b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_none_1.0_seed10/clean_eval.json new file mode 100644 index 0000000..b9127d9 --- /dev/null +++ b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_none_1.0_seed10/clean_eval.json @@ -0,0 +1 @@ +{"env": "pendulum", "fault": "none", "dose": "1.0", "seed": 10, "weights_sha256": "4b5c8f2df2310767eca9864efacb3bb23b70ebe2816d644eba3047da0f75d1fd", "episodes": 20, "returns": [-1.345055564716433, -128.99849595329638, -132.2679291750097, -128.91724704544876, -269.0226065271199, -127.58905137510965, -271.8635722322068, -142.41458330422932, -133.13320410482996, -1.4739765433139627, -246.55385814143477, -1.4626804061421903, -250.48236399838922, -2.3633394163632193, -282.21824532147986, -1.3508471159041537, -263.7392933453349, -132.77984837073848, -134.13439727987054, -130.05515861379908], "lengths": [200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200], "mean": -139.10828769173685, "eval_s": 0.305} \ No newline at end of file diff --git a/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_obs__f16_1.0_seed0/clean_eval.json b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_obs__f16_1.0_seed0/clean_eval.json new file mode 100644 index 0000000..4748b18 --- /dev/null +++ b/experiments/e57-clean-eval/results/pilot/e54-boundary-faults_results_pendulum_obs__f16_1.0_seed0/clean_eval.json @@ -0,0 +1 @@ +{"env": "pendulum", "fault": "obs:f16", "dose": "1.0", "seed": 0, "weights_sha256": "6bd93edb7230cacb85550b44354f730ce295ba935b79400d7b0a0eee27feb54c", "episodes": 20, "returns": [-0.6148502847222538, -132.41961828831072, -135.25942367129457, -131.76644471085925, -266.83810574873667, -127.97829042128303, -273.76599189561944, -139.17173076058464, -136.09559530010796, -0.8128044903542682, -249.30802416340077, -0.6422430478390052, -251.32060725199315, -1.5906682832198593, -282.7034127005091, -0.5700696343421382, -261.2770329685088, -135.59073490063162, -132.7067860869225, -133.57138538569802], "lengths": [200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200], "mean": -139.7001909997469, "eval_s": 0.292} \ No newline at end of file diff --git a/experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_none_1.0_seed0/clean_eval.json b/experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_none_1.0_seed0/clean_eval.json new file mode 100644 index 0000000..1491ad7 --- /dev/null +++ b/experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_none_1.0_seed0/clean_eval.json @@ -0,0 +1 @@ +{"env": "hopper", "fault": "none", "dose": "1.0", "seed": 0, "weights_sha256": "13daa0142e18b9b947cc1f947014d6e46222902b7e92751a277bd271f745a0ef", "episodes": 20, "returns": [3535.660787262251, 3553.1947064922574, 2317.175320043081, 3540.1566842578504, 3543.777768352139, 3551.4380178924816, 3554.7992593801555, 2450.7444275937023, 3557.471994373874, 3555.7826748504667, 3566.675281385641, 3561.5672199772544, 3165.5111868620806, 3563.062375718484, 3559.8602567082185, 3564.547527405282, 3550.415193343448, 2585.3148668086537, 3551.056190629265, 3549.79485945411], "lengths": [1000, 1000, 612, 1000, 1000, 1000, 1000, 654, 1000, 1000, 1000, 1000, 842, 1000, 1000, 1000, 1000, 684, 1000, 1000], "mean": 3368.9003299395345, "eval_s": 2.388} \ No newline at end of file diff --git a/experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_none_1.0_seed10/clean_eval.json b/experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_none_1.0_seed10/clean_eval.json new file mode 100644 index 0000000..de2e412 --- /dev/null +++ b/experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_none_1.0_seed10/clean_eval.json @@ -0,0 +1 @@ +{"env": "hopper", "fault": "none", "dose": "1.0", "seed": 10, "weights_sha256": "d5a3ae295d1210de734820e1c0749cceb8b96dac1c772c88decf2f1087070059", "episodes": 20, "returns": [3655.3590510916865, 3644.4871137657647, 3655.728741264313, 3661.9561155117226, 3624.861410819209, 3635.8586701972695, 3631.335030254979, 3650.8436597907303, 3652.747050004136, 3654.6272943409763, 3660.238657064603, 3656.8643740073194, 3655.8339245776524, 3660.677531334535, 3656.7611321078543, 3642.555571671143, 3660.6933156673626, 3657.475136328713, 3647.7388874930575, 3658.4614451449943], "lengths": [1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000], "mean": 3651.2552056219006, "eval_s": 2.546} \ No newline at end of file diff --git a/experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_obs__f16_1.0_seed0/clean_eval.json b/experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_obs__f16_1.0_seed0/clean_eval.json new file mode 100644 index 0000000..0a7b7da --- /dev/null +++ b/experiments/e57-clean-eval/results/pilot/e56-hopper-faults_results_hopper_obs__f16_1.0_seed0/clean_eval.json @@ -0,0 +1 @@ +{"env": "hopper", "fault": "obs:f16", "dose": "1.0", "seed": 0, "weights_sha256": "0b88c98ace320426c458bd2e94e8459b82fedb6e663014b44a748d617b1c2cc5", "episodes": 20, "returns": [1185.3575695364227, 1449.1056958741244, 1453.5602127413536, 1252.0261061462352, 1468.015830852532, 1290.881145498214, 1285.2192677014775, 3356.463267298476, 1220.4963692535464, 1309.4698936381449, 1490.3647389104456, 1453.3022586372335, 1701.0866609159627, 1201.7808588855692, 1541.3838549545537, 2692.9326962402884, 1410.631657584418, 2586.1661345431985, 1840.5422086839878, 1480.9880026293386], "lengths": [362, 419, 420, 377, 424, 385, 384, 1000, 371, 391, 432, 419, 495, 366, 447, 805, 410, 743, 553, 430], "mean": 1633.488721526276, "eval_s": 1.221} \ No newline at end of file diff --git a/experiments/e57-clean-eval/run.sh b/experiments/e57-clean-eval/run.sh new file mode 100644 index 0000000..839d323 --- /dev/null +++ b/experiments/e57-clean-eval/run.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash +# E57 on guangzhao: evaluate every E54 and E56 final policy on a clean +# environment, 12 at a time. Writes results////seed/clean_eval.json. +# bash run.sh +set -uo pipefail +export OMP_NUM_THREADS=1 +PY="$HOME/zuogou/plugrl/bridges-venv/bin/python" +cd "$(dirname "$0")" +mkdir -p results +find ../e54-boundary-faults/results ../e56-hopper-faults/results -name model.zip \ + -not -path '*/pilot/*' -printf '%h\n' | sort > results/jobs.txt +sha256sum evaluate.py summarise.py > results/e57-src.sha256 +uptime | tee results/load.txt +echo "$(wc -l < results/jobs.txt) runs, 12 at a time" +xargs -P 12 -I{} sh -c ' + r="$1"; rel="${r#*/results/}" + "$0" evaluate.py "$r" "results/$rel" --episodes 50 > /dev/null 2> "results/$(echo "$rel" | tr / _).err" \ + && rm -f "results/$(echo "$rel" | tr / _).err" || echo "failed: $r" +' "$PY" {} < results/jobs.txt +uptime >> results/load.txt +echo E57_DONE diff --git a/experiments/e57-clean-eval/summarise.py b/experiments/e57-clean-eval/summarise.py new file mode 100644 index 0000000..c18dc1a --- /dev/null +++ b/experiments/e57-clean-eval/summarise.py @@ -0,0 +1,119 @@ +"""E57: join every clean evaluation with E54's and E56's runs.csv, and count. + + python summarise.py [results] + +Writes results/clean.csv (one row per run) and results/summary.txt. +""" + +import csv +import json +import pathlib +import statistics as st +import sys + +HERE = pathlib.Path(__file__).resolve().parent +RUNS = [HERE.parent / "e54-boundary-faults/results/runs.csv", + HERE.parent / "e56-hopper-faults/results/runs.csv"] +CONTROLS = {"none", "delay-1ms", "wire-float64"} +LOUD = {"indices:reorder", "reward:short-array"} + + +def kind(fault: str) -> str: + if fault in CONTROLS: + return "control" + if fault in LOUD: + return "loud" + if fault.startswith("log:"): + return "log" + return "boundary" + + +def load(root: pathlib.Path) -> list[dict]: + trained = {} + for path in RUNS: + for r in csv.DictReader(open(path)): + trained[(r["env"], r["fault"], r["dose"], int(r["seed"]))] = r + rows = [] + for f in sorted(root.glob("*/*/*/seed*/clean_eval.json")): + d = json.loads(f.read_text()) + t = trained[(d["env"], d["fault"], d["dose"], int(d["seed"]))] + rows.append(dict( + env=d["env"], fault=d["fault"], dose=d["dose"], seed=int(d["seed"]), kind=kind(d["fault"]), + episodes=d["episodes"], clean=round(d["mean"], 2), sha=d["weights_sha256"][:8], + rule=int(t["rule"]), strict=int(t["strict"]), + last=float(t["last"]) if t["last"] else None, + )) + return rows + + +def judge(rows: list[dict]) -> dict: + """Band per env (none, seeds 10-19); harmed = more than 3 s.d. below its mean.""" + bands = {} + for env in sorted({r["env"] for r in rows}): + band = [r for r in rows if r["env"] == env and r["fault"] == "none" and r["seed"] >= 10] + vals = [r["clean"] for r in band] + bands[env] = dict(mean=st.mean(vals), sd=st.stdev(vals), n=len(vals)) + # Each band seed judged against the other nine. + for r in band: + rest = [x["clean"] for x in band if x is not r] + r["harmed"] = int(r["clean"] < st.mean(rest) - 3 * st.stdev(rest)) + for r in rows: + if "harmed" not in r: + b = bands[r["env"]] + r["harmed"] = int(r["clean"] < b["mean"] - 3 * b["sd"]) + r["silent_curve"] = int(r["rule"] == 0 and r["strict"] == 0) + r["log_error"] = None if r["last"] is None else round(r["last"] - r["clean"], 2) + return bands + + +def main() -> int: + root = pathlib.Path(sys.argv[1]) if len(sys.argv) > 1 else HERE / "results" + rows = load(root) + bands = judge(rows) + cols = ["env", "fault", "dose", "seed", "kind", "episodes", "clean", "harmed", "rule", "strict", + "silent_curve", "last", "log_error", "sha"] + with open(root / "clean.csv", "w", newline="") as fh: + w = csv.DictWriter(fh, fieldnames=cols, lineterminator="\n") + w.writeheader() + for r in rows: + w.writerow({k: r[k] for k in cols}) + + out = [] + for env, b in bands.items(): + flagged = sum(r["harmed"] for r in rows if r["env"] == env and r["fault"] == "none" and r["seed"] >= 10) + out.append(f"{env}: band (none, seeds 10-19) mean {b['mean']:.1f} sd {b['sd']:.1f} n {b['n']}; " + f"harm bar {b['mean'] - 3 * b['sd']:.1f}; band seeds flagged against the other nine: {flagged} of 10") + out.append("") + out.append("boundary-fault runs, seeds 0-2: harmed / runs; harmed among those silent on the curve") + for env in bands: + for dose in ("one", "0.001", "0.01", "0.1", "1.0"): + d = [r for r in rows if r["env"] == env and r["dose"] == dose and r["kind"] == "boundary" and r["seed"] < 10] + if not d: + continue + s = [r for r in d if r["silent_curve"]] + out.append(f" {env:12} {dose:6} harmed {sum(r['harmed'] for r in d):3}/{len(d):<3} " + f"silent on the curve {len(s):3}, of them harmed {sum(r['harmed'] for r in s):3}") + out.append("") + out.append("faults silent on the curve at all three seeds and harmed at two or more (fault, dose: clean returns)") + for env in bands: + b = bands[env] + for (fault, dose) in sorted({(r["fault"], r["dose"]) for r in rows if r["env"] == env and r["kind"] == "boundary"}): + d = [r for r in rows if r["env"] == env and r["fault"] == fault and r["dose"] == dose and r["seed"] < 10] + if len(d) == 3 and all(r["silent_curve"] for r in d) and sum(r["harmed"] for r in d) >= 2: + z = [round((r["clean"] - b["mean"]) / b["sd"], 1) for r in d] + out.append(f" {env:12} {fault:20} {dose:6} clean {[r['clean'] for r in d]} in band s.d. {z}") + out.append("") + out.append("log error (logged final return - clean return): min / median / max by kind") + for env in bands: + for k in ("control", "boundary", "log"): + e = [r["log_error"] for r in rows if r["env"] == env and r["kind"] == k and r["log_error"] is not None] + if e: + out.append(f" {env:12} {k:9} n {len(e):3} {min(e):9.1f} {st.median(e):9.1f} {max(e):9.1f}") + text = "\n".join(out) + (root / "summary.txt").write_text(text + "\n") + print(text) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/experiments/e57-clean-eval/verdicts.py b/experiments/e57-clean-eval/verdicts.py new file mode 100644 index 0000000..12de40b --- /dev/null +++ b/experiments/e57-clean-eval/verdicts.py @@ -0,0 +1,62 @@ +"""E57: judge PROTOCOL.md's checks and predictions from results/clean.csv. + + python verdicts.py [results] # prints, and writes results/verdicts.txt +""" + +import csv +import pathlib +import sys +from collections import defaultdict + +HERE = pathlib.Path(__file__).resolve().parent + + +def main() -> int: + root = pathlib.Path(sys.argv[1]) if len(sys.argv) > 1 else HERE / "results" + rows = list(csv.DictReader(open(root / "clean.csv"))) + for r in rows: + r["seed"], r["harmed"], r["episodes"] = int(r["seed"]), int(r["harmed"]), int(r["episodes"]) + r["clean"] = float(r["clean"]) + out = [] + + jobs = (root / "jobs.txt").read_text().split() + full = sum(r["episodes"] == 50 for r in rows) + out.append(f"V1: {'holds' if full == len(jobs) == len(rows) else 'FAILS'} - " + f"{len(rows)} evaluations of {len(jobs)} runs, {full} with 50 episodes") + + by_sha = defaultdict(set) + for r in rows: + by_sha[(r["env"], r["sha"])].add(r["clean"]) + shared = [k for k in by_sha if sum(1 for r in rows if (r["env"], r["sha"]) == k) > 1] + bad = [k for k in shared if len(by_sha[k]) > 1] + out.append(f"V2: {'holds' if not bad else 'FAILS'} - {len(shared)} weights shared by two or more runs; " + f"{len(bad)} with differing clean returns {bad[:5]}") + + p1 = {} + for env in sorted({r["env"] for r in rows}): + p1[env] = sum(r["harmed"] for r in rows if r["env"] == env and r["fault"] == "none" and r["seed"] >= 10) + out.append(f"P1: {'holds' if max(p1.values()) <= 1 else 'FALSIFIED'} - band seeds flagged: {p1}") + + p2 = {} + for env in sorted({r["env"] for r in rows}): + d = [r for r in rows if r["env"] == env and r["dose"] == "one" and r["kind"] == "boundary" and r["seed"] < 10] + p2[env] = (sum(r["harmed"] for r in d), len(d)) + ok = all(h <= 0.10 * n for h, n in p2.values()) + out.append(f"P2: {'holds' if ok else 'FALSIFIED'} - harmed at one value (harmed, runs): {p2}") + + d = [r for r in rows if r["env"] == "pendulum" and r["fault"] == "reward:zero" and r["dose"] == "1.0" and r["seed"] < 10] + ok = len(d) == 3 and all(r["harmed"] for r in d) and all(r["last"] and float(r["last"]) == 0.0 for r in d) + out.append(f"P3: {'holds' if ok else 'FALSIFIED'} - pendulum reward:zero 1.0: " + f"{[(r['seed'], r['clean'], r['last'], r['harmed']) for r in d]}") + + h = [r for r in rows if r["env"] == "hopper" and r["fault"] == "obs:f16" and r["dose"] == "1.0" and r["seed"] < 10] + out.append(f"reported: hopper obs:f16 1.0 (seed, clean, harmed, silent on the curve): " + f"{[(r['seed'], r['clean'], r['harmed'], r['silent_curve']) for r in h]}") + text = "\n".join(out) + (root / "verdicts.txt").write_text(text + "\n") + print(text) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) From 73c74f8a1fff38c703e885e9beec7d4d2c0368ae Mon Sep 17 00:00:00 2001 From: tactino <18781106300@163.com> Date: Sat, 3 Oct 2026 00:26:31 -0400 Subject: [PATCH 4/4] E57: findings - on a clean environment, the policies behind the faults that both curve checks miss are as good as fault-free ones; every policy the faults wrecked, the curve checks had already caught 834 of 834 evaluations; V1, V2, P1-P3 hold. Harmed while silent on the curve: 5 of 255 runs on Pendulum (below all 13 fault-free runs), 0 on HalfCheetah and Hopper. Exploratory: silent runs sit 0.03-0.65 band s.d. above the band. Pendulum reward:zero logs 0 (best possible) while its policies score -1196 to -1639. One amendment: a parsing fix in summarise.py for the loud faults' blank cells, made before any output. --- experiments/e57-clean-eval/AMENDMENT.md | 18 + experiments/e57-clean-eval/FINDINGS.md | 110 +++ experiments/e57-clean-eval/explore.py | 51 ++ experiments/e57-clean-eval/results/clean.csv | 835 ++++++++++++++++++ .../e57-clean-eval/results/e57-src.sha256 | 2 + .../e57-clean-eval/results/explore.txt | 13 + experiments/e57-clean-eval/results/jobs.txt | 834 +++++++++++++++++ experiments/e57-clean-eval/results/load.txt | 2 + .../e57-clean-eval/results/registered.out | 3 + .../e57-clean-eval/results/summary.txt | 29 + .../e57-clean-eval/results/verdicts.txt | 6 + experiments/e57-clean-eval/summarise.py | 3 +- 12 files changed, 1905 insertions(+), 1 deletion(-) create mode 100644 experiments/e57-clean-eval/AMENDMENT.md create mode 100644 experiments/e57-clean-eval/FINDINGS.md create mode 100644 experiments/e57-clean-eval/explore.py create mode 100644 experiments/e57-clean-eval/results/clean.csv create mode 100644 experiments/e57-clean-eval/results/e57-src.sha256 create mode 100644 experiments/e57-clean-eval/results/explore.txt create mode 100644 experiments/e57-clean-eval/results/jobs.txt create mode 100644 experiments/e57-clean-eval/results/load.txt create mode 100644 experiments/e57-clean-eval/results/registered.out create mode 100644 experiments/e57-clean-eval/results/summary.txt create mode 100644 experiments/e57-clean-eval/results/verdicts.txt diff --git a/experiments/e57-clean-eval/AMENDMENT.md b/experiments/e57-clean-eval/AMENDMENT.md new file mode 100644 index 0000000..652cd86 --- /dev/null +++ b/experiments/e57-clean-eval/AMENDMENT.md @@ -0,0 +1,18 @@ +# E57 amendment + +## 2026-10-03 00:25 EDT: summarise.py read a blank cell as a number + +All 834 registered evaluations had finished and none had failed, before +anything was summarised. Then `summarise.py` stopped with +`ValueError: invalid literal for int() with base 10: ''`. + +The cause is the six runs of E54's two loud faults, `indices:reorder` and +`reward:short-array`. They raised an error, logged no return, and so have a +blank `strict` in E54's `runs.csv`. `summarise.py` converted `rule` and +`strict` to integers without allowing for a blank. + +The fix is in one line: a blank cell becomes `None`. A run with `None` is +not "silent on the curve". The protocol leaves the loud faults out of every +count, so the fix changes no count, no rule and no prediction. Nothing else +in `summarise.py`, `verdicts.py` or `evaluate.py` changed. No result had been +seen when the fix was made: the crash came before any output. diff --git a/experiments/e57-clean-eval/FINDINGS.md b/experiments/e57-clean-eval/FINDINGS.md new file mode 100644 index 0000000..7bd33af --- /dev/null +++ b/experiments/e57-clean-eval/FINDINGS.md @@ -0,0 +1,110 @@ +# E57: on a clean environment, the policies behind the faults that both curve checks miss are as good as fault-free ones; every policy the faults wrecked, the curve checks had already caught + +2026-10-03 · guangzhao (E54's `bridges-venv`) · protocol: +[`PROTOCOL.md`](PROTOCOL.md), after the pilot in `results/pilot/`, before +the registered runs · amended once, see [`AMENDMENT.md`](AMENDMENT.md): a +parsing fix in `summarise.py`, made before any output, that changes no count + +--- + +## The result + +Each of the 834 final policies of E54 and E56 was run on a fresh gymnasium +environment for 50 deterministic episodes, all policies on the same seeds. +"Harmed" means its mean return, the clean return, fell more than 3 standard +deviations below the fault-free band (`none`, seeds 10-19). + +Boundary-fault runs, seeds 0-2: + +| env | dose | harmed | silent on the curve | of them harmed | +| --- | --- | --- | --- | --- | +| Pendulum | one | 1/63 | 63 | 1 | +| | 0.001 | 2/63 | 58 | 1 | +| | 0.01 | 1/63 | 59 | 1 | +| | 0.1 | 6/63 | 50 | 2 | +| | 1.0 | 24/63 | 25 | 0 | +| HalfCheetah | one | 0/63 | 60 | 0 | +| | 0.01 | 0/63 | 57 | 0 | +| | 1.0 | 28/63 | 31 | 0 | +| Hopper | one | 0/69 | 69 | 0 | +| | 0.01 | 0/69 | 66 | 0 | +| | 1.0 | 19/69 | 35 | 0 | + +"Silent on the curve" means the run passed both the gain threshold and +seed spread. + +Every check and prediction holds (`results/verdicts.txt`): +- **V1:** 834 of 834 evaluations, each of 50 episodes. +- **V2:** the 12 weights shared by two or more runs got identical clean + returns, so evaluation is deterministic. +- **P1:** the harm rule flagged none of the ten fault-free band seeds in any + environment. +- **P2:** at one value, 1 of 63, 0 of 63 and 0 of 69 boundary-fault runs + were harmed. +- **P3:** Pendulum's `reward:zero` at every value logged 0, the best return + Pendulum gives, at all three seeds. Its policies scored -1196, -1550 and + -1639 on the clean environment, against a band of -186 ± 26. + +--- + +## What it means + +**Every policy the faults wrecked, the curve checks had already caught.** At +every value, the faults harmed 24, 28 and 19 runs. None of them passed +both curve checks. At HalfCheetah and Hopper, no run that passed both checks +was harmed, at any dose. + +**The faults the curve checks miss leave policies as good as fault-free +ones.** This is an exploratory analysis, not in the protocol (`explore.py`, +`results/explore.txt`). For each environment and dose, the runs silent on +the curve have a mean clean return 0.03-0.65 band s.d. *above* the band. +None is significantly below the 13 fault-free runs (two-sided Mann-Whitney +U). The one significant difference is upward: Pendulum at every value, +p = 0.003. At their own seed, they beat the fault-free twin by a median of 7-9 on +Pendulum, 63-101 on HalfCheetah and 142-368 on Hopper. That is consistent with a +change of seed, not with harm. + +**The exception is five Pendulum runs.** They passed both curve checks but +scored below every one of the 13 fault-free runs, whose worst was -238: +- `reward:f16` at 0.1%: -744; +- `obs:swap` at 1%: -506; +- `obs:stale` at one value: -430; +- `final-obs:f16` at 10%: -333; +- `obs:stale` at 10%: -277. + +That is 5 of 255 silent runs on Pendulum, against 0 of 13 fault-free. +Thirteen fault-free runs cannot tell a rare harm from a rare bad seed. + +**So a silent fault is silent on a clean evaluation too.** In these tasks, +with SB3's PPO, a fault that leaves the curve looking right also leaves +the policy looking right. What it changes is the run. The weights differ +from the run the authors think they trained, and with log faults or reward +faults, so do the numbers they report. Pendulum's `reward:zero` is the +extreme case: its log read 0, the best possible, while its policy scored +-1196 to -1639. Only a check of the boundary itself, the step ledger or the +episode record, tells such a run from a correct one. + +**On trusting the trainer's log.** For each run, the logged final return +minus the clean return is in `results/summary.txt`. The fault-free runs' +own gap is wide: Hopper's ranges from -1667 to +806. Training returns come +from stochastic actions and the clean return from deterministic ones. A +gap this wide hides all but gross reward faults. + +--- + +## What E57 does not show + +* **Any trainer but SB3's PPO, or any task but these three.** On a task + where small changes in the data matter more, such as sparse rewards, + long horizons or real robots, the same faults may harm the policy. +* **Harm too rare for 13 fault-free runs to bound.** The five Pendulum + outliers above are the edge of what this design can see. +* **Harm in a comparison between methods.** E57 compares policies with the + fault-free band, not one method with another. + +Kept here, in `results/`: `clean.csv` (`summarise.py`, one row per run, with +its clean return, harm, curve checks and logged return), `summary.txt`, +`verdicts.txt` (`verdicts.py`), `explore.txt` (`explore.py`), `jobs.txt`, +`load.txt`, `registered.out` and the source hashes. Each run's +`clean_eval.json`, with all 50 episodes, is kept on guangzhao. Evaluation +is deterministic (V2), so `run.sh` reproduces it. diff --git a/experiments/e57-clean-eval/explore.py b/experiments/e57-clean-eval/explore.py new file mode 100644 index 0000000..5372406 --- /dev/null +++ b/experiments/e57-clean-eval/explore.py @@ -0,0 +1,51 @@ +"""E57, exploratory (not in PROTOCOL.md): are the runs both curve checks miss +shifted as a group, though no single one is harmed? + + python explore.py [results] + +For each env and dose, the clean returns of boundary-fault runs that are +silent on the curve, in units of the fault-free band (none, seeds 10-19): +their mean z, and a two-sided Mann-Whitney U test against the 13 fault-free +runs (seeds 0-2 and 10-19). Also the clean-return gap between each such run +and the fault-free run at its own seed. Writes results/explore.txt. +""" + +import csv +import pathlib +import statistics as st +import sys + +from scipy.stats import mannwhitneyu + +HERE = pathlib.Path(__file__).resolve().parent + + +def main() -> int: + root = pathlib.Path(sys.argv[1]) if len(sys.argv) > 1 else HERE / "results" + rows = list(csv.DictReader(open(root / "clean.csv"))) + for r in rows: + r["seed"], r["clean"] = int(r["seed"]), float(r["clean"]) + out = ["exploratory: boundary-fault runs silent on the curve, against fault-free runs", + "env dose n mean z median z U-test p twin gap median (clean - none at same seed)"] + for env in sorted({r["env"] for r in rows}): + band = [r["clean"] for r in rows if r["env"] == env and r["fault"] == "none" and r["seed"] >= 10] + mu, sd = st.mean(band), st.stdev(band) + free = [r["clean"] for r in rows if r["env"] == env and r["fault"] == "none"] + twin = {r["seed"]: r["clean"] for r in rows if r["env"] == env and r["fault"] == "none"} + for dose in ("one", "0.001", "0.01", "0.1", "1.0"): + s = [r for r in rows if r["env"] == env and r["dose"] == dose and r["kind"] == "boundary" + and r["seed"] < 10 and r["silent_curve"] == "1"] + if not s: + continue + z = [(r["clean"] - mu) / sd for r in s] + p = mannwhitneyu([r["clean"] for r in s], free, alternative="two-sided").pvalue + gap = st.median(r["clean"] - twin[r["seed"]] for r in s) + out.append(f"{env:12} {dose:6} {len(s):3} {st.mean(z):6.2f} {st.median(z):8.2f} {p:8.3f} {gap:9.1f}") + text = "\n".join(out) + (root / "explore.txt").write_text(text + "\n") + print(text) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/experiments/e57-clean-eval/results/clean.csv b/experiments/e57-clean-eval/results/clean.csv new file mode 100644 index 0000000..9b299c8 --- /dev/null +++ b/experiments/e57-clean-eval/results/clean.csv @@ -0,0 +1,835 @@ +env,fault,dose,seed,kind,episodes,clean,harmed,rule,strict,silent_curve,last,log_error,sha +halfcheetah,action:clip,0.01,0,boundary,50,1131.19,0,0,0,1,706.5,-424.69,ec5a179d +halfcheetah,action:clip,0.01,1,boundary,50,835.7,0,0,0,1,258.8,-576.9,7eceb0cc +halfcheetah,action:clip,0.01,2,boundary,50,971.14,0,0,0,1,578.3,-392.84,35ecae43 +halfcheetah,action:clip,1.0,0,boundary,50,-234.69,1,0,1,0,1118.5,1353.19,8ee6a77d +halfcheetah,action:clip,1.0,1,boundary,50,-269.26,1,0,1,0,1148.4,1417.66,14847897 +halfcheetah,action:clip,1.0,2,boundary,50,-360.08,1,0,1,0,994.4,1354.48,ff882cd9 +halfcheetah,action:clip,one,0,boundary,50,926.03,0,0,0,1,476.1,-449.93,f7759731 +halfcheetah,action:clip,one,1,boundary,50,842.94,0,0,0,1,577.7,-265.24,cf4d7c9a +halfcheetah,action:clip,one,2,boundary,50,849.95,0,0,0,1,710.8,-139.15,9f06912c +halfcheetah,action:f16,0.01,0,boundary,50,920.49,0,0,0,1,526.4,-394.09,a01811f5 +halfcheetah,action:f16,0.01,1,boundary,50,1027.76,0,0,0,1,624.9,-402.86,fbd338e0 +halfcheetah,action:f16,0.01,2,boundary,50,734.64,0,0,0,1,590.0,-144.64,01547561 +halfcheetah,action:f16,1.0,0,boundary,50,941.44,0,0,0,1,575.9,-365.54,bf57cc96 +halfcheetah,action:f16,1.0,1,boundary,50,1050.5,0,0,0,1,594.4,-456.1,ae75b2d6 +halfcheetah,action:f16,1.0,2,boundary,50,842.72,0,0,0,1,507.9,-334.82,00ec2a01 +halfcheetah,action:f16,one,0,boundary,50,1000.49,0,0,0,1,500.7,-499.79,91d85ccb +halfcheetah,action:f16,one,1,boundary,50,782.65,0,0,0,1,488.8,-293.85,4014b47b +halfcheetah,action:f16,one,2,boundary,50,1191.03,0,0,0,1,818.1,-372.93,f3b2bad8 +halfcheetah,action:stale,0.01,0,boundary,50,879.57,0,0,0,1,537.5,-342.07,b0751b3a +halfcheetah,action:stale,0.01,1,boundary,50,1043.57,0,0,0,1,616.0,-427.57,41460c07 +halfcheetah,action:stale,0.01,2,boundary,50,660.89,0,0,0,1,553.2,-107.69,a25b31ba +halfcheetah,action:stale,1.0,0,boundary,50,419.45,0,0,1,0,30.5,-388.95,e3802a5d +halfcheetah,action:stale,1.0,1,boundary,50,370.58,0,0,0,1,254.4,-116.18,dd17a435 +halfcheetah,action:stale,1.0,2,boundary,50,733.52,0,0,0,1,402.8,-330.72,74196379 +halfcheetah,action:stale,one,0,boundary,50,797.6,0,0,0,1,328.4,-469.2,63d03276 +halfcheetah,action:stale,one,1,boundary,50,1160.24,0,0,0,1,605.8,-554.44,7e1a788a +halfcheetah,action:stale,one,2,boundary,50,958.32,0,0,0,1,661.6,-296.72,db4fec84 +halfcheetah,action:swap,0.01,0,boundary,50,641.77,0,0,0,1,356.2,-285.57,21898a3c +halfcheetah,action:swap,0.01,1,boundary,50,981.74,0,0,0,1,595.5,-386.24,90971b4a +halfcheetah,action:swap,0.01,2,boundary,50,841.9,0,0,0,1,530.4,-311.5,50bf08ce +halfcheetah,action:swap,1.0,0,boundary,50,-398.64,1,1,1,0,-360.2,38.44,a46e0958 +halfcheetah,action:swap,1.0,1,boundary,50,-608.15,1,1,1,0,-366.4,241.75,03050f8b +halfcheetah,action:swap,1.0,2,boundary,50,-322.58,1,1,1,0,-334.6,-12.02,33392cdc +halfcheetah,action:swap,one,0,boundary,50,919.89,0,0,0,1,503.2,-416.69,ef171afa +halfcheetah,action:swap,one,1,boundary,50,1518.52,0,0,0,1,616.1,-902.42,5e7659c6 +halfcheetah,action:swap,one,2,boundary,50,1090.05,0,0,0,1,611.7,-478.35,47c3f841 +halfcheetah,action:zero,0.01,0,boundary,50,901.43,0,0,0,1,517.0,-384.43,562a50ad +halfcheetah,action:zero,0.01,1,boundary,50,694.46,0,0,0,1,290.0,-404.46,d1cddc03 +halfcheetah,action:zero,0.01,2,boundary,50,1034.41,0,0,0,1,561.0,-473.41,bf2c4b43 +halfcheetah,action:zero,1.0,0,boundary,50,-463.52,1,1,1,0,-0.1,463.42,71e141b6 +halfcheetah,action:zero,1.0,1,boundary,50,-1521.24,1,1,1,0,-0.1,1521.14,50e349ce +halfcheetah,action:zero,1.0,2,boundary,50,-1213.03,1,1,1,0,-0.1,1212.93,34d1323f +halfcheetah,action:zero,one,0,boundary,50,1085.87,0,0,0,1,593.0,-492.87,7f4cc3d5 +halfcheetah,action:zero,one,1,boundary,50,883.19,0,0,0,1,482.0,-401.19,b5b83f62 +halfcheetah,action:zero,one,2,boundary,50,898.72,0,0,0,1,700.7,-198.02,d2c74325 +halfcheetah,final-obs:f16,0.01,0,boundary,50,849.15,0,0,0,1,444.3,-404.85,9df3b350 +halfcheetah,final-obs:f16,0.01,1,boundary,50,963.82,0,0,0,1,657.4,-306.42,6f562a9b +halfcheetah,final-obs:f16,0.01,2,boundary,50,1114.3,0,0,0,1,742.9,-371.4,4a37d428 +halfcheetah,final-obs:f16,1.0,0,boundary,50,948.65,0,0,0,1,493.1,-455.55,f750ab5d +halfcheetah,final-obs:f16,1.0,1,boundary,50,1637.62,0,0,0,1,736.7,-900.92,73173785 +halfcheetah,final-obs:f16,1.0,2,boundary,50,928.27,0,0,0,1,722.4,-205.87,7b42bf11 +halfcheetah,final-obs:f16,one,0,boundary,50,1057.5,0,0,0,1,558.9,-498.6,23b735c6 +halfcheetah,final-obs:f16,one,1,boundary,50,973.79,0,0,0,1,677.8,-295.99,67aa0867 +halfcheetah,final-obs:f16,one,2,boundary,50,1082.02,0,0,0,1,649.9,-432.12,d57d7e32 +halfcheetah,final-obs:stale,0.01,0,boundary,50,842.08,0,0,0,1,474.0,-368.08,4e63dcef +halfcheetah,final-obs:stale,0.01,1,boundary,50,978.38,0,0,0,1,629.7,-348.68,9049b7a0 +halfcheetah,final-obs:stale,0.01,2,boundary,50,1118.35,0,0,0,1,824.4,-293.95,5ff8d630 +halfcheetah,final-obs:stale,1.0,0,boundary,50,1255.75,0,0,0,1,707.7,-548.05,f3b8ca66 +halfcheetah,final-obs:stale,1.0,1,boundary,50,998.84,0,0,0,1,518.4,-480.44,0d4a77ab +halfcheetah,final-obs:stale,1.0,2,boundary,50,935.51,0,0,0,1,644.3,-291.21,cff4303f +halfcheetah,final-obs:stale,one,0,boundary,50,808.4,0,0,0,1,404.7,-403.7,946e386b +halfcheetah,final-obs:stale,one,1,boundary,50,949.91,0,0,0,1,607.5,-342.41,e7b8784a +halfcheetah,final-obs:stale,one,2,boundary,50,997.93,0,0,0,1,748.8,-249.13,1bec1000 +halfcheetah,final-obs:swap,0.01,0,boundary,50,850.84,0,0,0,1,439.9,-410.94,c8eb7cb5 +halfcheetah,final-obs:swap,0.01,1,boundary,50,853.07,0,0,0,1,586.8,-266.27,9ce1d515 +halfcheetah,final-obs:swap,0.01,2,boundary,50,1131.02,0,0,0,1,620.9,-510.12,64036db1 +halfcheetah,final-obs:swap,1.0,0,boundary,50,981.59,0,0,0,1,583.1,-398.49,f5eaca9e +halfcheetah,final-obs:swap,1.0,1,boundary,50,1538.26,0,0,0,1,503.5,-1034.76,3b5968a4 +halfcheetah,final-obs:swap,1.0,2,boundary,50,1101.74,0,0,0,1,657.2,-444.54,02a9c7bd +halfcheetah,final-obs:swap,one,0,boundary,50,894.17,0,0,0,1,424.4,-469.77,56d822f2 +halfcheetah,final-obs:swap,one,1,boundary,50,1094.01,0,0,0,1,721.1,-372.91,dfd049ad +halfcheetah,final-obs:swap,one,2,boundary,50,1060.68,0,0,0,1,657.7,-402.98,f3452536 +halfcheetah,final-obs:zero,0.01,0,boundary,50,1009.32,0,0,0,1,573.8,-435.52,1b8de501 +halfcheetah,final-obs:zero,0.01,1,boundary,50,912.64,0,0,0,1,652.2,-260.44,56adf1b7 +halfcheetah,final-obs:zero,0.01,2,boundary,50,1050.83,0,0,0,1,645.7,-405.13,17cf743d +halfcheetah,final-obs:zero,1.0,0,boundary,50,975.65,0,0,0,1,568.8,-406.85,894878e1 +halfcheetah,final-obs:zero,1.0,1,boundary,50,815.35,0,0,0,1,291.8,-523.55,49f32b02 +halfcheetah,final-obs:zero,1.0,2,boundary,50,825.11,0,0,0,1,584.1,-241.01,b4f41780 +halfcheetah,final-obs:zero,one,0,boundary,50,1022.02,0,0,0,1,572.4,-449.62,7c7a4867 +halfcheetah,final-obs:zero,one,1,boundary,50,914.18,0,0,0,1,622.3,-291.88,51f6ae06 +halfcheetah,final-obs:zero,one,2,boundary,50,1058.3,0,0,0,1,614.9,-443.4,b0b04148 +halfcheetah,log:drop-first,0.01,0,log,50,647.5,0,0,0,1,206.6,-440.9,8261c03a +halfcheetah,log:drop-first,0.01,1,log,50,935.8,0,0,0,1,604.3,-331.5,86564694 +halfcheetah,log:drop-first,0.01,2,log,50,970.83,0,0,0,1,711.6,-259.23,65cc8843 +halfcheetah,log:drop-first,1.0,0,log,50,647.5,0,0,0,1,206.4,-441.1,8261c03a +halfcheetah,log:drop-first,1.0,1,log,50,935.8,0,0,0,1,604.2,-331.6,86564694 +halfcheetah,log:drop-first,1.0,2,log,50,970.83,0,0,0,1,711.7,-259.13,65cc8843 +halfcheetah,log:drop-first,one,0,log,50,647.5,0,0,0,1,206.6,-440.9,8261c03a +halfcheetah,log:drop-first,one,1,log,50,935.8,0,0,0,1,604.3,-331.5,86564694 +halfcheetah,log:drop-first,one,2,log,50,970.83,0,0,0,1,711.6,-259.23,65cc8843 +halfcheetah,log:short,0.01,0,log,50,647.5,0,0,0,1,206.6,-440.9,8261c03a +halfcheetah,log:short,0.01,1,log,50,935.8,0,0,0,1,604.3,-331.5,86564694 +halfcheetah,log:short,0.01,2,log,50,970.83,0,0,0,1,711.6,-259.23,65cc8843 +halfcheetah,log:short,1.0,0,log,50,647.5,0,0,0,1,206.6,-440.9,8261c03a +halfcheetah,log:short,1.0,1,log,50,935.8,0,0,0,1,604.3,-331.5,86564694 +halfcheetah,log:short,1.0,2,log,50,970.83,0,0,0,1,711.6,-259.23,65cc8843 +halfcheetah,log:short,one,0,log,50,647.5,0,0,0,1,206.6,-440.9,8261c03a +halfcheetah,log:short,one,1,log,50,935.8,0,0,0,1,604.3,-331.5,86564694 +halfcheetah,log:short,one,2,log,50,970.83,0,0,0,1,711.6,-259.23,65cc8843 +halfcheetah,none,1.0,0,control,50,647.5,0,0,0,1,206.6,-440.9,8261c03a +halfcheetah,none,1.0,1,control,50,935.8,0,0,0,1,604.3,-331.5,86564694 +halfcheetah,none,1.0,10,control,50,787.88,0,0,0,1,327.9,-459.98,a14df8cd +halfcheetah,none,1.0,11,control,50,971.44,0,0,0,1,520.5,-450.94,a565e4a1 +halfcheetah,none,1.0,12,control,50,985.35,0,0,0,1,610.0,-375.35,634d7d37 +halfcheetah,none,1.0,13,control,50,1096.71,0,0,0,1,617.6,-479.11,dc8a23a3 +halfcheetah,none,1.0,14,control,50,880.72,0,0,0,1,474.8,-405.92,d31c08d5 +halfcheetah,none,1.0,15,control,50,949.75,0,0,0,1,520.4,-429.35,126daf08 +halfcheetah,none,1.0,16,control,50,505.24,0,0,0,1,152.4,-352.84,783e36d6 +halfcheetah,none,1.0,17,control,50,493.2,0,0,0,1,619.8,126.6,32a0bf84 +halfcheetah,none,1.0,18,control,50,895.41,0,0,0,1,485.0,-410.41,730fcd31 +halfcheetah,none,1.0,19,control,50,960.52,0,0,0,1,523.0,-437.52,8ed877cc +halfcheetah,none,1.0,2,control,50,970.83,0,0,0,1,711.6,-259.23,65cc8843 +halfcheetah,obs:f16,0.01,0,boundary,50,984.72,0,0,0,1,548.1,-436.62,253ad984 +halfcheetah,obs:f16,0.01,1,boundary,50,990.89,0,0,0,1,565.8,-425.09,533b211a +halfcheetah,obs:f16,0.01,2,boundary,50,911.38,0,0,0,1,654.2,-257.18,be11c8be +halfcheetah,obs:f16,1.0,0,boundary,50,872.43,0,0,0,1,477.3,-395.13,bfd9adbe +halfcheetah,obs:f16,1.0,1,boundary,50,849.1,0,0,0,1,529.8,-319.3,69ad858b +halfcheetah,obs:f16,1.0,2,boundary,50,1124.94,0,0,0,1,618.5,-506.44,752df5e1 +halfcheetah,obs:f16,one,0,boundary,50,1025.05,0,0,0,1,557.5,-467.55,eb75b798 +halfcheetah,obs:f16,one,1,boundary,50,856.75,0,0,0,1,584.9,-271.85,e147e00f +halfcheetah,obs:f16,one,2,boundary,50,1076.05,0,0,0,1,758.3,-317.75,245b4242 +halfcheetah,obs:stale,0.01,0,boundary,50,1144.33,0,0,0,1,604.6,-539.73,395d585f +halfcheetah,obs:stale,0.01,1,boundary,50,1113.29,0,0,0,1,465.9,-647.39,983100e4 +halfcheetah,obs:stale,0.01,2,boundary,50,923.47,0,0,0,1,506.2,-417.27,e7983591 +halfcheetah,obs:stale,1.0,0,boundary,50,167.48,1,0,1,0,9.7,-157.78,f6eb4fe1 +halfcheetah,obs:stale,1.0,1,boundary,50,447.55,0,0,0,1,504.1,56.55,1cc21e65 +halfcheetah,obs:stale,1.0,2,boundary,50,309.18,0,0,0,1,181.5,-127.68,7dd93559 +halfcheetah,obs:stale,one,0,boundary,50,846.58,0,0,0,1,551.1,-295.48,871b8995 +halfcheetah,obs:stale,one,1,boundary,50,922.51,0,0,0,1,533.2,-389.31,26dc0746 +halfcheetah,obs:stale,one,2,boundary,50,1005.36,0,0,0,1,600.8,-404.56,d909c6ce +halfcheetah,obs:swap,0.01,0,boundary,50,808.46,0,0,0,1,310.6,-497.86,d51b824a +halfcheetah,obs:swap,0.01,1,boundary,50,1098.38,0,0,0,1,593.5,-504.88,630e98be +halfcheetah,obs:swap,0.01,2,boundary,50,817.13,0,0,0,1,618.5,-198.63,865a3fd0 +halfcheetah,obs:swap,1.0,0,boundary,50,45.77,1,0,1,0,-150.3,-196.07,59cbe2ef +halfcheetah,obs:swap,1.0,1,boundary,50,-91.58,1,1,1,0,-167.8,-76.22,150621e8 +halfcheetah,obs:swap,1.0,2,boundary,50,-44.63,1,0,1,0,-114.3,-69.67,f98c1ebc +halfcheetah,obs:swap,one,0,boundary,50,727.22,0,0,0,1,327.4,-399.82,81776260 +halfcheetah,obs:swap,one,1,boundary,50,839.11,0,0,0,1,486.6,-352.51,370e715d +halfcheetah,obs:swap,one,2,boundary,50,1012.33,0,0,0,1,742.7,-269.63,e06e727f +halfcheetah,obs:zero,0.01,0,boundary,50,969.36,0,0,0,1,610.4,-358.96,f879169b +halfcheetah,obs:zero,0.01,1,boundary,50,970.21,0,0,0,1,593.3,-376.91,dee5d071 +halfcheetah,obs:zero,0.01,2,boundary,50,978.73,0,0,0,1,581.1,-397.63,2d981280 +halfcheetah,obs:zero,1.0,0,boundary,50,-74.66,1,0,1,0,-102.8,-28.14,bda2c4b3 +halfcheetah,obs:zero,1.0,1,boundary,50,-37.26,1,0,1,0,-28.0,9.26,3a4d3e4f +halfcheetah,obs:zero,1.0,2,boundary,50,-39.5,1,0,1,0,-97.3,-57.8,f1005610 +halfcheetah,obs:zero,one,0,boundary,50,769.82,0,0,0,1,450.5,-319.32,99315557 +halfcheetah,obs:zero,one,1,boundary,50,996.39,0,0,0,1,590.6,-405.79,29ff0dd3 +halfcheetah,obs:zero,one,2,boundary,50,1174.65,0,0,0,1,703.3,-471.35,75cd4907 +halfcheetah,reward:f16,0.01,0,boundary,50,869.95,0,0,0,1,455.8,-414.15,bccf9f6d +halfcheetah,reward:f16,0.01,1,boundary,50,1008.84,0,0,0,1,610.4,-398.44,0010ace3 +halfcheetah,reward:f16,0.01,2,boundary,50,1058.88,0,0,0,1,638.3,-420.58,304dca87 +halfcheetah,reward:f16,1.0,0,boundary,50,975.04,0,0,0,1,567.3,-407.74,267455a6 +halfcheetah,reward:f16,1.0,1,boundary,50,1133.53,0,0,0,1,250.7,-882.83,462878df +halfcheetah,reward:f16,1.0,2,boundary,50,683.49,0,0,0,1,641.6,-41.89,0df11866 +halfcheetah,reward:f16,one,0,boundary,50,950.17,0,0,0,1,550.7,-399.47,ab4d1427 +halfcheetah,reward:f16,one,1,boundary,50,818.85,0,0,0,1,541.9,-276.95,cec2abc4 +halfcheetah,reward:f16,one,2,boundary,50,1039.68,0,0,0,1,740.5,-299.18,848926bb +halfcheetah,reward:stale,0.01,0,boundary,50,917.89,0,0,0,1,556.6,-361.29,f5e5c0ef +halfcheetah,reward:stale,0.01,1,boundary,50,1025.57,0,0,0,1,672.3,-353.27,ecd5403d +halfcheetah,reward:stale,0.01,2,boundary,50,918.75,0,0,0,1,527.8,-390.95,24cc43f9 +halfcheetah,reward:stale,1.0,0,boundary,50,1067.42,0,0,0,1,531.9,-535.52,6d2bb921 +halfcheetah,reward:stale,1.0,1,boundary,50,861.11,0,0,0,1,536.7,-324.41,fc88296f +halfcheetah,reward:stale,1.0,2,boundary,50,537.79,0,0,0,1,634.3,96.51,d5c0f68a +halfcheetah,reward:stale,one,0,boundary,50,926.56,0,0,0,1,465.4,-461.16,fce9d70d +halfcheetah,reward:stale,one,1,boundary,50,632.89,0,0,0,1,598.3,-34.59,c8058732 +halfcheetah,reward:stale,one,2,boundary,50,1067.07,0,0,0,1,618.0,-449.07,2edd2c71 +halfcheetah,reward:swap,0.01,0,boundary,50,1048.64,0,0,0,1,380.4,-668.24,3f092318 +halfcheetah,reward:swap,0.01,1,boundary,50,947.95,0,0,0,1,519.5,-428.45,ed625ff5 +halfcheetah,reward:swap,0.01,2,boundary,50,1044.61,0,0,0,1,569.8,-474.81,bb78994b +halfcheetah,reward:swap,1.0,0,boundary,50,-368.8,1,1,1,0,-393.2,-24.4,7ebd034e +halfcheetah,reward:swap,1.0,1,boundary,50,-222.11,1,1,1,0,-347.3,-125.19,7d80b12d +halfcheetah,reward:swap,1.0,2,boundary,50,-345.51,1,1,1,0,-377.2,-31.69,b4f7d9f7 +halfcheetah,reward:swap,one,0,boundary,50,895.85,0,0,0,1,540.8,-355.05,6cdaf68c +halfcheetah,reward:swap,one,1,boundary,50,952.02,0,0,0,1,600.1,-351.92,b62566d1 +halfcheetah,reward:swap,one,2,boundary,50,1211.49,0,0,0,1,613.4,-598.09,597e2c62 +halfcheetah,reward:zero,0.01,0,boundary,50,909.97,0,0,0,1,479.2,-430.77,82efd41f +halfcheetah,reward:zero,0.01,1,boundary,50,933.32,0,0,0,1,582.9,-350.42,2706382b +halfcheetah,reward:zero,0.01,2,boundary,50,464.66,0,0,0,1,556.3,91.64,8bfc3469 +halfcheetah,reward:zero,1.0,0,boundary,50,-482.74,1,1,1,0,0.0,482.74,6b7ff3c6 +halfcheetah,reward:zero,1.0,1,boundary,50,-204.75,1,1,1,0,0.0,204.75,e66e1103 +halfcheetah,reward:zero,1.0,2,boundary,50,-308.79,1,1,1,0,0.0,308.79,7e326e2a +halfcheetah,reward:zero,one,0,boundary,50,951.35,0,0,0,1,523.6,-427.75,4ba64301 +halfcheetah,reward:zero,one,1,boundary,50,844.47,0,0,0,1,636.7,-207.77,c659b6c3 +halfcheetah,reward:zero,one,2,boundary,50,1182.16,0,0,0,1,652.8,-529.36,68ae5d65 +halfcheetah,step:fill,0.01,0,boundary,50,1065.96,0,0,0,1,628.8,-437.16,2f3101b7 +halfcheetah,step:fill,0.01,1,boundary,50,560.74,0,0,0,1,504.9,-55.84,bfb369a5 +halfcheetah,step:fill,0.01,2,boundary,50,983.43,0,0,0,1,556.8,-426.63,8f6334a0 +halfcheetah,step:fill,1.0,0,boundary,50,-1057.3,1,1,1,0,,,e1e8baad +halfcheetah,step:fill,1.0,1,boundary,50,-590.33,1,1,1,0,,,3287709c +halfcheetah,step:fill,1.0,2,boundary,50,-1072.39,1,1,1,0,,,12869326 +halfcheetah,step:fill,one,0,boundary,50,1049.17,0,0,0,1,574.1,-475.07,53c93857 +halfcheetah,step:fill,one,1,boundary,50,964.93,0,0,0,1,579.2,-385.73,1e17bf66 +halfcheetah,step:fill,one,2,boundary,50,1005.25,0,0,0,1,687.7,-317.55,c8819de7 +halfcheetah,terminated:spurious,0.01,0,boundary,50,722.81,0,1,1,0,-29.9,-752.71,e2343ceb +halfcheetah,terminated:spurious,0.01,1,boundary,50,651.42,0,1,1,0,-25.2,-676.62,f4ee2288 +halfcheetah,terminated:spurious,0.01,2,boundary,50,605.59,0,1,1,0,-26.5,-632.09,455961b2 +halfcheetah,terminated:spurious,1.0,0,boundary,50,-126.65,1,1,1,0,-0.2,126.45,74906e7c +halfcheetah,terminated:spurious,1.0,1,boundary,50,-212.53,1,1,1,0,-0.2,212.33,b0fe3376 +halfcheetah,terminated:spurious,1.0,2,boundary,50,-190.64,1,1,1,0,-0.3,190.34,dfc955f6 +halfcheetah,terminated:spurious,one,0,boundary,50,553.71,0,0,0,1,153.3,-400.41,c73bee27 +halfcheetah,terminated:spurious,one,1,boundary,50,675.33,0,0,0,1,402.7,-272.63,fc151425 +halfcheetah,terminated:spurious,one,2,boundary,50,1174.3,0,0,0,1,757.0,-417.3,17ee96dd +halfcheetah,truncated:as-term,0.01,0,boundary,50,923.15,0,0,0,1,556.2,-366.95,a135d640 +halfcheetah,truncated:as-term,0.01,1,boundary,50,962.73,0,0,0,1,585.0,-377.73,4dd488a0 +halfcheetah,truncated:as-term,0.01,2,boundary,50,1189.14,0,0,0,1,707.7,-481.44,4142bf18 +halfcheetah,truncated:as-term,1.0,0,boundary,50,916.95,0,0,0,1,561.7,-355.25,44569672 +halfcheetah,truncated:as-term,1.0,1,boundary,50,979.92,0,0,0,1,503.4,-476.52,31fe8d84 +halfcheetah,truncated:as-term,1.0,2,boundary,50,556.98,0,0,0,1,555.0,-1.98,4dd63686 +halfcheetah,truncated:as-term,one,0,boundary,50,923.77,0,0,0,1,510.6,-413.17,2cedd064 +halfcheetah,truncated:as-term,one,1,boundary,50,879.61,0,0,0,1,527.9,-351.71,911a4ab6 +halfcheetah,truncated:as-term,one,2,boundary,50,1225.0,0,0,0,1,730.3,-494.7,1e586fe2 +halfcheetah,truncated:drop,0.01,0,boundary,50,828.27,0,1,1,0,,,c04e6e0f +halfcheetah,truncated:drop,0.01,1,boundary,50,1065.37,0,1,1,0,,,89cbf6ff +halfcheetah,truncated:drop,0.01,2,boundary,50,1013.67,0,1,1,0,,,e13f7427 +halfcheetah,truncated:drop,1.0,0,boundary,50,979.3,0,1,1,0,,,61eb52a9 +halfcheetah,truncated:drop,1.0,1,boundary,50,894.5,0,1,1,0,,,3b93a0aa +halfcheetah,truncated:drop,1.0,2,boundary,50,572.13,0,1,1,0,,,1f5772fb +halfcheetah,truncated:drop,one,0,boundary,50,1022.17,0,1,1,0,,,112dda46 +halfcheetah,truncated:drop,one,1,boundary,50,992.04,0,1,1,0,,,0db88f4e +halfcheetah,truncated:drop,one,2,boundary,50,1056.68,0,1,1,0,,,f9390fe1 +hopper,action:clip,0.01,0,boundary,50,3456.6,0,0,0,1,1978.6,-1478.0,6d8a059d +hopper,action:clip,0.01,1,boundary,50,1707.66,0,0,0,1,1794.9,87.24,bdd175c3 +hopper,action:clip,0.01,2,boundary,50,3564.8,0,0,0,1,1896.9,-1667.9,e7929304 +hopper,action:clip,1.0,0,boundary,50,248.45,0,1,1,0,787.6,539.15,38a5ded5 +hopper,action:clip,1.0,1,boundary,50,235.77,0,0,1,0,1201.3,965.53,cfad8be0 +hopper,action:clip,1.0,2,boundary,50,698.01,0,1,1,0,372.3,-325.71,24f64c24 +hopper,action:clip,one,0,boundary,50,2556.9,0,0,0,1,2344.5,-212.4,8be60679 +hopper,action:clip,one,1,boundary,50,3451.47,0,0,0,1,1797.0,-1654.47,52489707 +hopper,action:clip,one,2,boundary,50,3524.4,0,0,0,1,1620.8,-1903.6,fc696b76 +hopper,action:f16,0.01,0,boundary,50,2798.11,0,0,0,1,1816.2,-981.91,2e0158cf +hopper,action:f16,0.01,1,boundary,50,3581.65,0,0,0,1,2096.8,-1484.85,81ec6cfb +hopper,action:f16,0.01,2,boundary,50,3591.43,0,0,0,1,2197.9,-1393.53,d35e7771 +hopper,action:f16,1.0,0,boundary,50,3503.92,0,0,0,1,2368.1,-1135.82,d44914f5 +hopper,action:f16,1.0,1,boundary,50,3596.8,0,0,0,1,2014.9,-1581.9,16ef799d +hopper,action:f16,1.0,2,boundary,50,3588.96,0,0,0,1,2304.0,-1284.96,ce3db36d +hopper,action:f16,one,0,boundary,50,2521.57,0,0,0,1,1783.1,-738.47,179aeb27 +hopper,action:f16,one,1,boundary,50,3049.9,0,0,0,1,1834.4,-1215.5,4635140f +hopper,action:f16,one,2,boundary,50,3536.54,0,0,0,1,2192.5,-1344.04,f4266978 +hopper,action:stale,0.01,0,boundary,50,1829.59,0,0,0,1,1737.5,-92.09,44aa1d08 +hopper,action:stale,0.01,1,boundary,50,3556.76,0,0,0,1,1947.7,-1609.06,279da55f +hopper,action:stale,0.01,2,boundary,50,3577.45,0,0,0,1,2262.4,-1315.05,2e0a1dbe +hopper,action:stale,1.0,0,boundary,50,3303.25,0,0,0,1,1981.9,-1321.35,25538fca +hopper,action:stale,1.0,1,boundary,50,3480.7,0,0,0,1,1877.2,-1603.5,2bff1555 +hopper,action:stale,1.0,2,boundary,50,1659.95,0,0,0,1,1944.8,284.85,d144972a +hopper,action:stale,one,0,boundary,50,3390.55,0,0,0,1,1858.9,-1531.65,16b63912 +hopper,action:stale,one,1,boundary,50,3557.98,0,0,0,1,2067.3,-1490.68,fbe29342 +hopper,action:stale,one,2,boundary,50,2776.87,0,0,0,1,1895.5,-881.37,2b7e62ad +hopper,action:swap,0.01,0,boundary,50,3531.94,0,0,0,1,1612.8,-1919.14,b116e227 +hopper,action:swap,0.01,1,boundary,50,3582.29,0,0,0,1,2076.6,-1505.69,0a61ea98 +hopper,action:swap,0.01,2,boundary,50,3461.62,0,0,0,1,2035.2,-1426.42,e045239b +hopper,action:swap,1.0,0,boundary,50,5.06,1,1,1,0,8.1,3.04,1f07144f +hopper,action:swap,1.0,1,boundary,50,18.65,1,1,1,0,7.3,-11.35,20dec241 +hopper,action:swap,1.0,2,boundary,50,61.63,1,1,1,0,5.6,-56.03,52a8e45b +hopper,action:swap,one,0,boundary,50,2670.46,0,0,0,1,2131.2,-539.26,8a23ae42 +hopper,action:swap,one,1,boundary,50,3625.8,0,0,0,1,2167.7,-1458.1,1c793580 +hopper,action:swap,one,2,boundary,50,3557.04,0,0,0,1,2307.1,-1249.94,0a6e64d7 +hopper,action:zero,0.01,0,boundary,50,3349.21,0,0,0,1,1991.8,-1357.41,b3bedcf3 +hopper,action:zero,0.01,1,boundary,50,2655.58,0,0,0,1,1552.0,-1103.58,df18c84b +hopper,action:zero,0.01,2,boundary,50,1669.71,0,0,0,1,1770.9,101.19,cfa28245 +hopper,action:zero,1.0,0,boundary,50,132.22,1,1,1,0,147.0,14.78,a83be1a7 +hopper,action:zero,1.0,1,boundary,50,1.2,1,1,1,0,147.3,146.1,fe7fb370 +hopper,action:zero,1.0,2,boundary,50,11.87,1,1,1,0,146.5,134.63,1ae6351d +hopper,action:zero,one,0,boundary,50,3604.62,0,0,0,1,2017.1,-1587.52,233ff646 +hopper,action:zero,one,1,boundary,50,1269.65,0,0,0,1,2222.6,952.95,c65411f9 +hopper,action:zero,one,2,boundary,50,2686.33,0,0,0,1,1757.2,-929.13,182c7eab +hopper,delay-1ms,1.0,0,control,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,delay-1ms,1.0,1,control,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,delay-1ms,1.0,2,control,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,final-obs:f16,0.01,0,boundary,50,1249.49,0,0,0,1,1948.7,699.21,dab6bfa5 +hopper,final-obs:f16,0.01,1,boundary,50,3586.41,0,0,0,1,2066.4,-1520.01,32b4a88c +hopper,final-obs:f16,0.01,2,boundary,50,1292.2,0,0,0,1,1970.0,677.8,a4c1c920 +hopper,final-obs:f16,1.0,0,boundary,50,3006.91,0,0,0,1,1945.6,-1061.31,0822d8cd +hopper,final-obs:f16,1.0,1,boundary,50,3567.33,0,0,0,1,1787.0,-1780.33,f79ba434 +hopper,final-obs:f16,1.0,2,boundary,50,1197.67,0,0,0,1,1989.2,791.53,81b212a4 +hopper,final-obs:f16,one,0,boundary,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,final-obs:f16,one,1,boundary,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,final-obs:f16,one,2,boundary,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,final-obs:stale,0.01,0,boundary,50,3494.07,0,0,0,1,1779.5,-1714.57,d9789c49 +hopper,final-obs:stale,0.01,1,boundary,50,3594.96,0,0,0,1,1975.4,-1619.56,ab9b4b7b +hopper,final-obs:stale,0.01,2,boundary,50,2886.18,0,0,0,1,2090.4,-795.78,d20a7273 +hopper,final-obs:stale,1.0,0,boundary,50,3538.06,0,0,0,1,1960.8,-1577.26,c16e62f3 +hopper,final-obs:stale,1.0,1,boundary,50,3520.35,0,0,0,1,1955.7,-1564.65,94fe0250 +hopper,final-obs:stale,1.0,2,boundary,50,3604.21,0,0,0,1,1994.6,-1609.61,66dc8455 +hopper,final-obs:stale,one,0,boundary,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,final-obs:stale,one,1,boundary,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,final-obs:stale,one,2,boundary,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,final-obs:swap,0.01,0,boundary,50,2584.87,0,0,0,1,1829.5,-755.37,b3cb8a2d +hopper,final-obs:swap,0.01,1,boundary,50,2065.61,0,0,0,1,1914.3,-151.31,33911c22 +hopper,final-obs:swap,0.01,2,boundary,50,2446.75,0,0,0,1,1838.9,-607.85,f51c5465 +hopper,final-obs:swap,1.0,0,boundary,50,3558.69,0,0,0,1,1855.0,-1703.69,88e663e0 +hopper,final-obs:swap,1.0,1,boundary,50,3561.6,0,0,0,1,1925.4,-1636.2,1184a831 +hopper,final-obs:swap,1.0,2,boundary,50,3355.54,0,0,0,1,2025.1,-1330.44,3fdf94e1 +hopper,final-obs:swap,one,0,boundary,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,final-obs:swap,one,1,boundary,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,final-obs:swap,one,2,boundary,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,final-obs:zero,0.01,0,boundary,50,1353.25,0,0,0,1,1836.1,482.85,53b50822 +hopper,final-obs:zero,0.01,1,boundary,50,3586.05,0,0,0,1,1890.2,-1695.85,4fda6f17 +hopper,final-obs:zero,0.01,2,boundary,50,3210.49,0,0,0,1,2053.1,-1157.39,853b75a0 +hopper,final-obs:zero,1.0,0,boundary,50,3191.61,0,0,0,1,1858.2,-1333.41,5443fa72 +hopper,final-obs:zero,1.0,1,boundary,50,1387.33,0,0,0,1,1922.8,535.47,fc096467 +hopper,final-obs:zero,1.0,2,boundary,50,1329.53,0,0,0,1,2034.1,704.57,8d9a34a3 +hopper,final-obs:zero,one,0,boundary,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,final-obs:zero,one,1,boundary,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,final-obs:zero,one,2,boundary,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,log:drop-first,0.01,0,log,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,log:drop-first,0.01,1,log,50,2602.3,0,0,0,1,2268.8,-333.5,da9f3114 +hopper,log:drop-first,0.01,2,log,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,log:drop-first,1.0,0,log,50,3421.52,0,0,0,1,1753.8,-1667.72,13daa014 +hopper,log:drop-first,1.0,1,log,50,2602.3,0,0,0,1,2267.8,-334.5,da9f3114 +hopper,log:drop-first,1.0,2,log,50,1288.72,0,0,0,1,1776.8,488.08,dc7c18bd +hopper,log:drop-first,one,0,log,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,log:drop-first,one,1,log,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,log:drop-first,one,2,log,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,log:short,0.01,0,log,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,log:short,0.01,1,log,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,log:short,0.01,2,log,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,log:short,1.0,0,log,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,log:short,1.0,1,log,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,log:short,1.0,2,log,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,log:short,one,0,log,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,log:short,one,1,log,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,log:short,one,2,log,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,none,1.0,0,control,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,none,1.0,1,control,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,none,1.0,10,control,50,3651.22,0,0,0,1,2190.9,-1460.32,d5a3ae29 +hopper,none,1.0,11,control,50,3558.53,0,0,0,1,2267.8,-1290.73,2308827d +hopper,none,1.0,12,control,50,2739.89,0,0,0,1,1930.3,-809.59,9ee81f6e +hopper,none,1.0,13,control,50,1412.84,0,0,0,1,2218.7,805.86,f48b7b6b +hopper,none,1.0,14,control,50,1706.07,0,0,0,1,1612.8,-93.27,e75667e3 +hopper,none,1.0,15,control,50,2672.23,0,0,0,1,2190.5,-481.73,6e5886cd +hopper,none,1.0,16,control,50,2711.51,0,0,0,1,2271.7,-439.81,af5afed3 +hopper,none,1.0,17,control,50,1703.03,0,0,0,1,1693.8,-9.23,5aff75d6 +hopper,none,1.0,18,control,50,3607.0,0,0,0,1,2190.1,-1416.9,03cbf434 +hopper,none,1.0,19,control,50,3412.04,0,0,0,1,1747.9,-1664.14,53d2bb4d +hopper,none,1.0,2,control,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +hopper,obs:f16,0.01,0,boundary,50,3596.94,0,0,0,1,1790.1,-1806.84,bc35ca61 +hopper,obs:f16,0.01,1,boundary,50,3490.92,0,0,0,1,1636.8,-1854.12,e860d985 +hopper,obs:f16,0.01,2,boundary,50,3437.37,0,0,0,1,1936.8,-1500.57,e25b790c +hopper,obs:f16,1.0,0,boundary,50,1505.25,0,0,0,1,1838.1,332.85,0b88c98a +hopper,obs:f16,1.0,1,boundary,50,3588.14,0,0,0,1,1759.7,-1828.44,a39c8fdc +hopper,obs:f16,1.0,2,boundary,50,3592.49,0,0,0,1,2215.4,-1377.09,992371df +hopper,obs:f16,one,0,boundary,50,3544.22,0,0,0,1,2016.1,-1528.12,53f4d25d +hopper,obs:f16,one,1,boundary,50,1527.57,0,0,0,1,2144.1,616.53,453a803a +hopper,obs:f16,one,2,boundary,50,3590.79,0,0,0,1,1972.1,-1618.69,3a996d59 +hopper,obs:stale,0.01,0,boundary,50,3493.91,0,0,0,1,1789.6,-1704.31,b50d63b7 +hopper,obs:stale,0.01,1,boundary,50,2608.45,0,0,0,1,2312.3,-296.15,b5b8c46a +hopper,obs:stale,0.01,2,boundary,50,3023.5,0,0,0,1,1748.2,-1275.3,b7db0b90 +hopper,obs:stale,1.0,0,boundary,50,2692.35,0,0,0,1,1328.3,-1364.05,5c7c9824 +hopper,obs:stale,1.0,1,boundary,50,942.02,0,1,1,0,991.0,48.98,96c4ca77 +hopper,obs:stale,1.0,2,boundary,50,3365.72,0,0,0,1,1829.8,-1535.92,9543c655 +hopper,obs:stale,one,0,boundary,50,3217.58,0,0,0,1,2036.6,-1180.98,c74f370d +hopper,obs:stale,one,1,boundary,50,3149.61,0,0,0,1,2070.6,-1079.01,50ca29ec +hopper,obs:stale,one,2,boundary,50,3566.91,0,0,0,1,2086.7,-1480.21,41e61933 +hopper,obs:swap,0.01,0,boundary,50,3571.37,0,0,0,1,1632.0,-1939.37,7e429cff +hopper,obs:swap,0.01,1,boundary,50,3240.32,0,0,0,1,1631.3,-1609.02,9bf6d868 +hopper,obs:swap,0.01,2,boundary,50,2433.84,0,0,0,1,1513.4,-920.44,16a1a6b5 +hopper,obs:swap,1.0,0,boundary,50,91.93,1,1,1,0,101.9,9.97,9f5758c0 +hopper,obs:swap,1.0,1,boundary,50,165.63,0,1,1,0,104.7,-60.93,96d218df +hopper,obs:swap,1.0,2,boundary,50,139.06,1,1,1,0,108.6,-30.46,1056980e +hopper,obs:swap,one,0,boundary,50,1473.43,0,0,0,1,1710.4,236.97,d066684e +hopper,obs:swap,one,1,boundary,50,2471.48,0,0,0,1,2184.7,-286.78,ab2dff3d +hopper,obs:swap,one,2,boundary,50,2103.88,0,0,0,1,2227.0,123.12,b8dceb9c +hopper,obs:zero,0.01,0,boundary,50,3582.65,0,0,0,1,1671.7,-1910.95,134d754d +hopper,obs:zero,0.01,1,boundary,50,3251.86,0,0,0,1,1594.3,-1657.56,76045eee +hopper,obs:zero,0.01,2,boundary,50,3512.84,0,0,0,1,1897.6,-1615.24,b905d051 +hopper,obs:zero,1.0,0,boundary,50,76.72,1,1,1,0,102.3,25.58,9299661a +hopper,obs:zero,1.0,1,boundary,50,66.32,1,1,1,0,88.7,22.38,15147da6 +hopper,obs:zero,1.0,2,boundary,50,100.8,1,1,1,0,109.8,9.0,ace7d78f +hopper,obs:zero,one,0,boundary,50,3556.27,0,0,0,1,2073.6,-1482.67,8344511e +hopper,obs:zero,one,1,boundary,50,3549.81,0,0,0,1,1589.9,-1959.91,d7a8bcef +hopper,obs:zero,one,2,boundary,50,3552.54,0,0,0,1,2048.2,-1504.34,1582d021 +hopper,reward:f16,0.01,0,boundary,50,3301.16,0,0,0,1,1749.0,-1552.16,9db6abe8 +hopper,reward:f16,0.01,1,boundary,50,1288.65,0,0,0,1,2003.4,714.75,abe9c4c1 +hopper,reward:f16,0.01,2,boundary,50,3587.59,0,0,0,1,1940.2,-1647.39,71f23cdd +hopper,reward:f16,1.0,0,boundary,50,3489.48,0,0,0,1,1992.5,-1496.98,ff75b00a +hopper,reward:f16,1.0,1,boundary,50,3409.9,0,0,0,1,1905.4,-1504.5,a8b32d4e +hopper,reward:f16,1.0,2,boundary,50,2760.34,0,0,0,1,1737.5,-1022.84,906dcd4e +hopper,reward:f16,one,0,boundary,50,3580.24,0,0,0,1,1951.9,-1628.34,fafbc73d +hopper,reward:f16,one,1,boundary,50,1294.95,0,0,0,1,1948.0,653.05,e06d8d8c +hopper,reward:f16,one,2,boundary,50,3247.54,0,0,0,1,2502.9,-744.64,17ba85af +hopper,reward:stale,0.01,0,boundary,50,1472.94,0,0,0,1,2208.9,735.96,66bd30a5 +hopper,reward:stale,0.01,1,boundary,50,3615.88,0,0,0,1,2220.7,-1395.18,21dbf1f4 +hopper,reward:stale,0.01,2,boundary,50,3240.26,0,0,0,1,2069.5,-1170.76,165d0c7e +hopper,reward:stale,1.0,0,boundary,50,3553.87,0,0,0,1,1985.1,-1568.77,e92ff4da +hopper,reward:stale,1.0,1,boundary,50,2821.33,0,0,0,1,2083.4,-737.93,a01b5fe5 +hopper,reward:stale,1.0,2,boundary,50,3555.24,0,0,0,1,1901.1,-1654.14,625d58d1 +hopper,reward:stale,one,0,boundary,50,3577.29,0,0,0,1,1882.7,-1694.59,c05ce218 +hopper,reward:stale,one,1,boundary,50,3508.21,0,0,0,1,1650.2,-1858.01,7a049739 +hopper,reward:stale,one,2,boundary,50,2847.42,0,0,0,1,1973.7,-873.72,f962b077 +hopper,reward:swap,0.01,0,boundary,50,3464.08,0,0,0,1,1927.1,-1536.98,4d889602 +hopper,reward:swap,0.01,1,boundary,50,1352.15,0,0,0,1,1880.3,528.15,6052ed84 +hopper,reward:swap,0.01,2,boundary,50,3462.04,0,0,0,1,2266.3,-1195.74,38d84a8b +hopper,reward:swap,1.0,0,boundary,50,1010.82,0,1,1,0,1006.1,-4.72,83d234b3 +hopper,reward:swap,1.0,1,boundary,50,1014.82,0,1,1,0,1005.8,-9.02,af362146 +hopper,reward:swap,1.0,2,boundary,50,991.16,0,1,1,0,986.5,-4.66,9d7614b4 +hopper,reward:swap,one,0,boundary,50,3598.38,0,0,0,1,2173.5,-1424.88,40b97b3b +hopper,reward:swap,one,1,boundary,50,1560.18,0,0,0,1,2168.5,608.32,91bd93bb +hopper,reward:swap,one,2,boundary,50,1416.82,0,0,0,1,2075.0,658.18,db70a417 +hopper,reward:zero,0.01,0,boundary,50,1586.35,0,0,0,1,1839.2,252.85,725bef31 +hopper,reward:zero,0.01,1,boundary,50,3516.98,0,0,0,1,1873.7,-1643.28,1827574c +hopper,reward:zero,0.01,2,boundary,50,3412.84,0,0,0,1,1915.9,-1496.94,add9fb50 +hopper,reward:zero,1.0,0,boundary,50,59.64,1,1,1,0,0.0,-59.64,1c1f9d61 +hopper,reward:zero,1.0,1,boundary,50,11.58,1,1,1,0,0.0,-11.58,7b1220df +hopper,reward:zero,1.0,2,boundary,50,2.83,1,1,1,0,0.0,-2.83,60f405bc +hopper,reward:zero,one,0,boundary,50,2497.95,0,0,0,1,1878.4,-619.55,062be833 +hopper,reward:zero,one,1,boundary,50,1817.13,0,0,0,1,1942.9,125.77,a8a2cceb +hopper,reward:zero,one,2,boundary,50,3494.61,0,0,0,1,2202.6,-1292.01,032d0fdb +hopper,step:fill,0.01,0,boundary,50,3367.99,0,0,0,1,1637.7,-1730.29,344f13fc +hopper,step:fill,0.01,1,boundary,50,2505.64,0,0,0,1,2240.5,-265.14,e29fba07 +hopper,step:fill,0.01,2,boundary,50,3283.72,0,0,0,1,1891.4,-1392.32,a93f1571 +hopper,step:fill,1.0,0,boundary,50,5.74,1,1,1,0,,,54dd6b3a +hopper,step:fill,1.0,1,boundary,50,6.13,1,1,1,0,,,f0d9a30d +hopper,step:fill,1.0,2,boundary,50,7.73,1,1,1,0,,,1f3f0052 +hopper,step:fill,one,0,boundary,50,3549.82,0,0,0,1,1800.2,-1749.62,678f362f +hopper,step:fill,one,1,boundary,50,3611.29,0,0,0,1,2080.1,-1531.19,0ad39777 +hopper,step:fill,one,2,boundary,50,3460.54,0,0,0,1,2180.7,-1279.84,dc482495 +hopper,terminated:as-trunc,0.01,0,boundary,50,3519.3,0,0,0,1,1936.0,-1583.3,ed3079b7 +hopper,terminated:as-trunc,0.01,1,boundary,50,2751.81,0,0,0,1,1882.8,-869.01,2370a04f +hopper,terminated:as-trunc,0.01,2,boundary,50,3472.93,0,0,0,1,1903.7,-1569.23,dfd89e43 +hopper,terminated:as-trunc,1.0,0,boundary,50,764.94,0,1,1,0,459.8,-305.14,5ec55c9b +hopper,terminated:as-trunc,1.0,1,boundary,50,786.16,0,1,1,0,632.5,-153.66,7854334f +hopper,terminated:as-trunc,1.0,2,boundary,50,833.02,0,1,1,0,618.6,-214.42,e6715198 +hopper,terminated:as-trunc,one,0,boundary,50,2259.45,0,0,0,1,2099.4,-160.05,cd28dc41 +hopper,terminated:as-trunc,one,1,boundary,50,3586.09,0,0,0,1,2245.5,-1340.59,df3b7dea +hopper,terminated:as-trunc,one,2,boundary,50,3338.22,0,0,0,1,1981.1,-1357.12,0301697f +hopper,terminated:drop,0.01,0,boundary,50,2113.56,0,0,0,1,1673.5,-440.06,a7f1ba6f +hopper,terminated:drop,0.01,1,boundary,50,688.58,0,0,0,1,1557.3,868.72,c0b1970d +hopper,terminated:drop,0.01,2,boundary,50,3321.4,0,0,0,1,1717.6,-1603.8,c77d5ed8 +hopper,terminated:drop,1.0,0,boundary,50,678.15,0,1,1,0,,,8589d941 +hopper,terminated:drop,1.0,1,boundary,50,730.15,0,1,1,0,,,74024aca +hopper,terminated:drop,1.0,2,boundary,50,679.19,0,1,1,0,,,af6d0f6d +hopper,terminated:drop,one,0,boundary,50,3553.62,0,0,0,1,2057.9,-1495.72,abff6921 +hopper,terminated:drop,one,1,boundary,50,2874.39,0,0,0,1,1874.8,-999.59,fd6db757 +hopper,terminated:drop,one,2,boundary,50,2493.64,0,0,0,1,2017.5,-476.14,e1d130e1 +hopper,terminated:spurious,0.01,0,boundary,50,838.11,0,1,1,0,223.1,-615.01,f2aaa548 +hopper,terminated:spurious,0.01,1,boundary,50,552.69,0,1,1,0,197.4,-355.29,beffce16 +hopper,terminated:spurious,0.01,2,boundary,50,554.4,0,1,1,0,214.6,-339.8,7ffeb15d +hopper,terminated:spurious,1.0,0,boundary,50,39.83,1,1,1,0,2.0,-37.83,19c835d8 +hopper,terminated:spurious,1.0,1,boundary,50,178.43,0,1,1,0,2.2,-176.23,bc17908b +hopper,terminated:spurious,1.0,2,boundary,50,91.65,1,1,1,0,2.0,-89.65,bc723cdc +hopper,terminated:spurious,one,0,boundary,50,3563.88,0,0,0,1,2258.9,-1304.98,f89379d8 +hopper,terminated:spurious,one,1,boundary,50,1476.21,0,0,0,1,1999.2,522.99,9d4e2b0a +hopper,terminated:spurious,one,2,boundary,50,3521.63,0,0,0,1,2063.2,-1458.43,550d977f +hopper,truncated:as-term,0.01,0,boundary,50,1170.23,0,0,0,1,2332.7,1162.47,fc2b4c5a +hopper,truncated:as-term,0.01,1,boundary,50,1748.97,0,0,0,1,1633.4,-115.57,d658d08b +hopper,truncated:as-term,0.01,2,boundary,50,3109.6,0,0,0,1,2065.3,-1044.3,7ea8931e +hopper,truncated:as-term,1.0,0,boundary,50,3443.72,0,0,0,1,1817.8,-1625.92,6cc70f32 +hopper,truncated:as-term,1.0,1,boundary,50,1744.75,0,0,0,1,2014.9,270.15,6165442f +hopper,truncated:as-term,1.0,2,boundary,50,3259.94,0,0,0,1,2006.0,-1253.94,2d622c59 +hopper,truncated:as-term,one,0,boundary,50,3611.32,0,0,0,1,1972.5,-1638.82,c0c310c6 +hopper,truncated:as-term,one,1,boundary,50,3232.66,0,0,0,1,2080.9,-1151.76,a3ef8fa9 +hopper,truncated:as-term,one,2,boundary,50,3033.63,0,0,0,1,1904.1,-1129.53,4044fb86 +hopper,truncated:drop,0.01,0,boundary,50,3384.78,0,0,0,1,1866.3,-1518.48,339bf434 +hopper,truncated:drop,0.01,1,boundary,50,2692.73,0,0,0,1,2063.4,-629.33,abe45244 +hopper,truncated:drop,0.01,2,boundary,50,1529.53,0,0,0,1,1784.8,255.27,61c5468c +hopper,truncated:drop,1.0,0,boundary,50,1334.83,0,0,0,1,2167.4,832.57,43393fb8 +hopper,truncated:drop,1.0,1,boundary,50,3449.78,0,0,0,1,1864.0,-1585.78,1497fee0 +hopper,truncated:drop,1.0,2,boundary,50,1656.91,0,0,0,1,1599.4,-57.51,00272617 +hopper,truncated:drop,one,0,boundary,50,3552.05,0,0,0,1,1722.5,-1829.55,dcfe43fe +hopper,truncated:drop,one,1,boundary,50,1985.88,0,0,0,1,1852.9,-132.98,dc04fce5 +hopper,truncated:drop,one,2,boundary,50,3546.73,0,0,0,1,1973.7,-1573.03,655e7475 +hopper,wire-float64,1.0,0,control,50,3421.52,0,0,0,1,1754.8,-1666.72,13daa014 +hopper,wire-float64,1.0,1,control,50,2602.3,0,0,0,1,2268.9,-333.4,da9f3114 +hopper,wire-float64,1.0,2,control,50,1288.72,0,0,0,1,1777.8,489.08,dc7c18bd +pendulum,action:clip,0.001,0,boundary,50,-169.32,0,0,1,0,-179.5,-10.18,c96a0e3a +pendulum,action:clip,0.001,1,boundary,50,-161.02,0,0,0,1,-197.6,-36.58,5f35479a +pendulum,action:clip,0.001,2,boundary,50,-169.42,0,0,0,1,-210.5,-41.08,5693bb59 +pendulum,action:clip,0.01,0,boundary,50,-175.08,0,0,0,1,-227.8,-52.72,96d41f53 +pendulum,action:clip,0.01,1,boundary,50,-170.54,0,0,1,0,-183.0,-12.46,f6c883c2 +pendulum,action:clip,0.01,2,boundary,50,-171.79,0,0,0,1,-229.0,-57.21,d6eebc9c +pendulum,action:clip,0.1,0,boundary,50,-171.67,0,0,0,1,-190.3,-18.63,02b0b664 +pendulum,action:clip,0.1,1,boundary,50,-165.21,0,0,0,1,-190.8,-25.59,7c24b984 +pendulum,action:clip,0.1,2,boundary,50,-169.16,0,0,0,1,-218.7,-49.54,bfdc084c +pendulum,action:clip,1.0,0,boundary,50,-169.23,0,0,1,0,-369.2,-199.97,9c89fd2e +pendulum,action:clip,1.0,1,boundary,50,-169.34,0,0,1,0,-362.0,-192.66,319f69be +pendulum,action:clip,1.0,2,boundary,50,-165.68,0,0,1,0,-361.2,-195.52,f19dd117 +pendulum,action:clip,one,0,boundary,50,-169.04,0,0,0,1,-187.9,-18.86,46222c2a +pendulum,action:clip,one,1,boundary,50,-169.76,0,0,0,1,-213.9,-44.14,ba4ba4cc +pendulum,action:clip,one,2,boundary,50,-176.32,0,0,0,1,-196.7,-20.38,6ccbd988 +pendulum,action:f16,0.001,0,boundary,50,-175.21,0,0,0,1,-194.1,-18.89,be8c6c8d +pendulum,action:f16,0.001,1,boundary,50,-169.9,0,0,0,1,-192.2,-22.3,1afff977 +pendulum,action:f16,0.001,2,boundary,50,-168.72,0,0,0,1,-208.5,-39.78,fc41ad45 +pendulum,action:f16,0.01,0,boundary,50,-178.0,0,0,0,1,-197.7,-19.7,0b05a50a +pendulum,action:f16,0.01,1,boundary,50,-182.94,0,0,0,1,-192.7,-9.76,b4f02fd1 +pendulum,action:f16,0.01,2,boundary,50,-165.45,0,0,0,1,-195.5,-30.05,d0384b0f +pendulum,action:f16,0.1,0,boundary,50,-172.61,0,0,0,1,-211.0,-38.39,ef66636a +pendulum,action:f16,0.1,1,boundary,50,-175.67,0,0,0,1,-185.4,-9.73,140e788c +pendulum,action:f16,0.1,2,boundary,50,-170.21,0,0,0,1,-193.6,-23.39,c36f4bc1 +pendulum,action:f16,1.0,0,boundary,50,-166.49,0,0,0,1,-194.0,-27.51,9f5f03a4 +pendulum,action:f16,1.0,1,boundary,50,-163.98,0,0,1,0,-177.8,-13.82,490d8a3f +pendulum,action:f16,1.0,2,boundary,50,-173.55,0,0,0,1,-192.1,-18.55,42e1ffc3 +pendulum,action:f16,one,0,boundary,50,-197.05,0,0,0,1,-211.6,-14.55,c86def24 +pendulum,action:f16,one,1,boundary,50,-173.99,0,0,0,1,-187.6,-13.61,93384ed4 +pendulum,action:f16,one,2,boundary,50,-173.49,0,0,0,1,-201.6,-28.11,32901a88 +pendulum,action:stale,0.001,0,boundary,50,-167.1,0,0,0,1,-199.9,-32.8,e1ae03c1 +pendulum,action:stale,0.001,1,boundary,50,-312.31,1,0,1,0,-353.4,-41.09,610b5cb5 +pendulum,action:stale,0.001,2,boundary,50,-166.9,0,0,0,1,-193.2,-26.3,c1adab4b +pendulum,action:stale,0.01,0,boundary,50,-168.83,0,0,0,1,-187.1,-18.27,523f9fdb +pendulum,action:stale,0.01,1,boundary,50,-171.12,0,0,0,1,-214.2,-43.08,a5ebc8a2 +pendulum,action:stale,0.01,2,boundary,50,-165.96,0,0,0,1,-195.0,-29.04,02583893 +pendulum,action:stale,0.1,0,boundary,50,-160.83,0,0,0,1,-197.7,-36.87,d6ae8045 +pendulum,action:stale,0.1,1,boundary,50,-176.11,0,0,0,1,-226.8,-50.69,fefa8cca +pendulum,action:stale,0.1,2,boundary,50,-171.65,0,0,0,1,-199.6,-27.95,5e58606e +pendulum,action:stale,1.0,0,boundary,50,-167.03,0,0,0,1,-193.6,-26.57,bcbbc6fc +pendulum,action:stale,1.0,1,boundary,50,-157.9,0,0,1,0,-175.8,-17.9,86d9270e +pendulum,action:stale,1.0,2,boundary,50,-159.02,0,0,1,0,-181.2,-22.18,fb489c27 +pendulum,action:stale,one,0,boundary,50,-171.76,0,0,0,1,-205.2,-33.44,aa1a75e2 +pendulum,action:stale,one,1,boundary,50,-177.72,0,0,0,1,-187.9,-10.18,fd625f6e +pendulum,action:stale,one,2,boundary,50,-160.92,0,0,0,1,-204.1,-43.18,d00464b8 +pendulum,action:swap,0.001,0,boundary,50,-177.36,0,0,0,1,-198.8,-21.44,963db528 +pendulum,action:swap,0.001,1,boundary,50,-165.98,0,0,0,1,-186.1,-20.12,74b5aa39 +pendulum,action:swap,0.001,2,boundary,50,-212.85,0,0,0,1,-196.8,16.05,fb249d01 +pendulum,action:swap,0.01,0,boundary,50,-163.78,0,0,0,1,-196.3,-32.52,e5ad4cab +pendulum,action:swap,0.01,1,boundary,50,-172.17,0,0,0,1,-214.4,-42.23,27dd148a +pendulum,action:swap,0.01,2,boundary,50,-172.13,0,0,0,1,-208.3,-36.17,a87eaf38 +pendulum,action:swap,0.1,0,boundary,50,-165.44,0,0,0,1,-241.7,-76.26,0bd3b36f +pendulum,action:swap,0.1,1,boundary,50,-170.91,0,0,1,0,-263.2,-92.29,6a01345d +pendulum,action:swap,0.1,2,boundary,50,-166.85,0,0,0,1,-242.2,-75.35,25533d12 +pendulum,action:swap,1.0,0,boundary,50,-1171.18,1,1,1,0,-1244.2,-73.02,889766d5 +pendulum,action:swap,1.0,1,boundary,50,-1609.28,1,1,1,0,-1223.7,385.58,fe95f321 +pendulum,action:swap,1.0,2,boundary,50,-1351.25,1,1,1,0,-1231.5,119.75,93086fa0 +pendulum,action:swap,one,0,boundary,50,-198.43,0,0,0,1,-192.6,5.83,9b3b2cd8 +pendulum,action:swap,one,1,boundary,50,-169.41,0,0,0,1,-194.8,-25.39,c5240226 +pendulum,action:swap,one,2,boundary,50,-161.11,0,0,0,1,-193.6,-32.49,7a44221a +pendulum,action:zero,0.001,0,boundary,50,-197.11,0,0,0,1,-223.2,-26.09,f026739b +pendulum,action:zero,0.001,1,boundary,50,-159.01,0,0,0,1,-190.3,-31.29,fb252878 +pendulum,action:zero,0.001,2,boundary,50,-169.76,0,0,0,1,-187.7,-17.94,bd98a512 +pendulum,action:zero,0.01,0,boundary,50,-175.92,0,0,0,1,-209.8,-33.88,ce2f2d84 +pendulum,action:zero,0.01,1,boundary,50,-166.1,0,0,0,1,-195.1,-29.0,414ad5c5 +pendulum,action:zero,0.01,2,boundary,50,-193.72,0,0,0,1,-195.7,-1.98,32a19fe7 +pendulum,action:zero,0.1,0,boundary,50,-164.86,0,0,0,1,-225.3,-60.44,e7d84007 +pendulum,action:zero,0.1,1,boundary,50,-168.55,0,0,0,1,-212.8,-44.25,f1c7df11 +pendulum,action:zero,0.1,2,boundary,50,-155.82,0,0,0,1,-212.5,-56.68,d6feb38a +pendulum,action:zero,1.0,0,boundary,50,-1559.43,1,1,1,0,-1214.6,344.83,fc69c04c +pendulum,action:zero,1.0,1,boundary,50,-1368.29,1,1,1,0,-1219.7,148.59,b2feb45b +pendulum,action:zero,1.0,2,boundary,50,-1344.58,1,1,1,0,-1232.7,111.88,9fd2c154 +pendulum,action:zero,one,0,boundary,50,-178.23,0,0,0,1,-214.8,-36.57,f4f801a9 +pendulum,action:zero,one,1,boundary,50,-167.85,0,0,0,1,-199.0,-31.15,476aadb0 +pendulum,action:zero,one,2,boundary,50,-165.27,0,0,0,1,-203.0,-37.73,2d5728a9 +pendulum,delay-1ms,1.0,0,control,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,delay-1ms,1.0,1,control,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,delay-1ms,1.0,2,control,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,final-obs:f16,0.001,0,boundary,50,-196.59,0,0,0,1,-200.7,-4.11,e34029d3 +pendulum,final-obs:f16,0.001,1,boundary,50,-169.35,0,0,0,1,-205.7,-36.35,d81de110 +pendulum,final-obs:f16,0.001,2,boundary,50,-170.96,0,0,0,1,-210.7,-39.74,21f35a0f +pendulum,final-obs:f16,0.01,0,boundary,50,-169.87,0,0,0,1,-234.5,-64.63,8b050884 +pendulum,final-obs:f16,0.01,1,boundary,50,-170.04,0,0,0,1,-189.3,-19.26,d1fea845 +pendulum,final-obs:f16,0.01,2,boundary,50,-243.8,0,0,0,1,-208.8,35.0,8d4f5d81 +pendulum,final-obs:f16,0.1,0,boundary,50,-332.87,1,0,0,1,-211.3,121.57,b890ca5d +pendulum,final-obs:f16,0.1,1,boundary,50,-169.71,0,0,0,1,-191.8,-22.09,98d60d01 +pendulum,final-obs:f16,0.1,2,boundary,50,-164.7,0,0,0,1,-193.0,-28.3,927524ca +pendulum,final-obs:f16,1.0,0,boundary,50,-172.55,0,0,0,1,-191.5,-18.95,3aaf60a0 +pendulum,final-obs:f16,1.0,1,boundary,50,-170.06,0,0,0,1,-186.7,-16.64,209d2f10 +pendulum,final-obs:f16,1.0,2,boundary,50,-162.68,0,0,0,1,-185.3,-22.62,3b34c6f2 +pendulum,final-obs:f16,one,0,boundary,50,-170.23,0,0,0,1,-199.3,-29.07,bf6e41a3 +pendulum,final-obs:f16,one,1,boundary,50,-168.31,0,0,0,1,-196.6,-28.29,18d8ddf9 +pendulum,final-obs:f16,one,2,boundary,50,-201.36,0,0,0,1,-202.5,-1.14,ab939388 +pendulum,final-obs:stale,0.001,0,boundary,50,-197.61,0,0,0,1,-203.3,-5.69,b2025182 +pendulum,final-obs:stale,0.001,1,boundary,50,-170.26,0,0,0,1,-204.9,-34.64,43e6e91f +pendulum,final-obs:stale,0.001,2,boundary,50,-166.36,0,0,0,1,-194.3,-27.94,02a0ebc8 +pendulum,final-obs:stale,0.01,0,boundary,50,-174.9,0,0,0,1,-214.0,-39.1,a059213f +pendulum,final-obs:stale,0.01,1,boundary,50,-194.51,0,0,0,1,-194.7,-0.19,f99f790f +pendulum,final-obs:stale,0.01,2,boundary,50,-180.21,0,0,0,1,-228.3,-48.09,e3e423de +pendulum,final-obs:stale,0.1,0,boundary,50,-170.67,0,0,1,0,-182.6,-11.93,4e044c07 +pendulum,final-obs:stale,0.1,1,boundary,50,-166.36,0,0,0,1,-201.1,-34.74,4611c4b7 +pendulum,final-obs:stale,0.1,2,boundary,50,-169.17,0,0,0,1,-205.8,-36.63,8a5819d6 +pendulum,final-obs:stale,1.0,0,boundary,50,-176.08,0,0,1,0,-260.8,-84.72,114f86a0 +pendulum,final-obs:stale,1.0,1,boundary,50,-172.84,0,0,0,1,-206.3,-33.46,2a99cc39 +pendulum,final-obs:stale,1.0,2,boundary,50,-168.28,0,0,0,1,-201.2,-32.92,64ddd2f4 +pendulum,final-obs:stale,one,0,boundary,50,-182.41,0,0,0,1,-203.0,-20.59,2cd3a46f +pendulum,final-obs:stale,one,1,boundary,50,-169.44,0,0,0,1,-190.0,-20.56,3d2b49b0 +pendulum,final-obs:stale,one,2,boundary,50,-171.66,0,0,0,1,-193.4,-21.74,9080a4bf +pendulum,final-obs:swap,0.001,0,boundary,50,-169.88,0,0,0,1,-198.6,-28.72,813800a8 +pendulum,final-obs:swap,0.001,1,boundary,50,-170.32,0,0,0,1,-205.8,-35.48,e3cb3e06 +pendulum,final-obs:swap,0.001,2,boundary,50,-165.98,0,0,0,1,-203.4,-37.42,50029099 +pendulum,final-obs:swap,0.01,0,boundary,50,-171.23,0,0,0,1,-198.7,-27.47,5bd0a6b2 +pendulum,final-obs:swap,0.01,1,boundary,50,-243.35,0,0,0,1,-199.0,44.35,c97adf0d +pendulum,final-obs:swap,0.01,2,boundary,50,-164.04,0,0,0,1,-200.6,-36.56,56c13906 +pendulum,final-obs:swap,0.1,0,boundary,50,-170.24,0,0,0,1,-209.1,-38.86,6b23376c +pendulum,final-obs:swap,0.1,1,boundary,50,-160.97,0,0,0,1,-193.7,-32.73,95344a14 +pendulum,final-obs:swap,0.1,2,boundary,50,-171.24,0,0,0,1,-205.2,-33.96,9645d7b2 +pendulum,final-obs:swap,1.0,0,boundary,50,-174.2,0,0,0,1,-212.6,-38.4,3f8956ed +pendulum,final-obs:swap,1.0,1,boundary,50,-175.43,0,0,0,1,-203.2,-27.77,c81ec51a +pendulum,final-obs:swap,1.0,2,boundary,50,-183.57,0,0,0,1,-202.0,-18.43,1b6b79fd +pendulum,final-obs:swap,one,0,boundary,50,-170.05,0,0,0,1,-189.5,-19.45,4e8492f7 +pendulum,final-obs:swap,one,1,boundary,50,-182.45,0,0,0,1,-198.7,-16.25,a85f2e22 +pendulum,final-obs:swap,one,2,boundary,50,-171.92,0,0,0,1,-191.0,-19.08,8f41be4c +pendulum,final-obs:zero,0.001,0,boundary,50,-171.5,0,0,0,1,-207.9,-36.4,52f5a966 +pendulum,final-obs:zero,0.001,1,boundary,50,-168.12,0,0,0,1,-204.8,-36.68,da4ee014 +pendulum,final-obs:zero,0.001,2,boundary,50,-167.45,0,0,0,1,-193.9,-26.45,97d053b1 +pendulum,final-obs:zero,0.01,0,boundary,50,-168.97,0,0,0,1,-188.6,-19.63,010adf87 +pendulum,final-obs:zero,0.01,1,boundary,50,-166.83,0,0,0,1,-217.2,-50.37,fcdec6da +pendulum,final-obs:zero,0.01,2,boundary,50,-239.71,0,0,0,1,-239.8,-0.09,4e34a328 +pendulum,final-obs:zero,0.1,0,boundary,50,-171.77,0,0,0,1,-216.6,-44.83,352a0dfc +pendulum,final-obs:zero,0.1,1,boundary,50,-296.76,1,0,1,0,-337.4,-40.64,b6bda6f1 +pendulum,final-obs:zero,0.1,2,boundary,50,-176.85,0,0,0,1,-218.2,-41.35,72354b6f +pendulum,final-obs:zero,1.0,0,boundary,50,-242.44,0,0,1,0,-313.6,-71.16,efd619dc +pendulum,final-obs:zero,1.0,1,boundary,50,-169.96,0,0,1,0,-253.0,-83.04,b56b40ae +pendulum,final-obs:zero,1.0,2,boundary,50,-173.29,0,0,1,0,-258.0,-84.71,226ab780 +pendulum,final-obs:zero,one,0,boundary,50,-198.23,0,0,0,1,-207.0,-8.77,bf033c56 +pendulum,final-obs:zero,one,1,boundary,50,-175.9,0,0,0,1,-202.5,-26.6,d0314318 +pendulum,final-obs:zero,one,2,boundary,50,-176.83,0,0,0,1,-216.0,-39.17,81a24d76 +pendulum,indices:reorder,one,0,loud,50,-172.59,0,0,,0,,,5333d4e3 +pendulum,indices:reorder,one,1,loud,50,-174.52,0,0,,0,,,afaa8757 +pendulum,indices:reorder,one,2,loud,50,-170.24,0,0,,0,,,fde67d33 +pendulum,log:drop-first,0.001,0,log,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,log:drop-first,0.001,1,log,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,log:drop-first,0.001,2,log,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,log:drop-first,0.01,0,log,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,log:drop-first,0.01,1,log,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,log:drop-first,0.01,2,log,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,log:drop-first,0.1,0,log,50,-200.52,0,0,0,1,-199.5,1.02,ec5b8226 +pendulum,log:drop-first,0.1,1,log,50,-174.6,0,0,0,1,-208.4,-33.8,062e92e3 +pendulum,log:drop-first,0.1,2,log,50,-176.0,0,0,0,1,-245.7,-69.7,3a8d968f +pendulum,log:drop-first,1.0,0,log,50,-200.52,0,0,0,1,-196.5,4.02,ec5b8226 +pendulum,log:drop-first,1.0,1,log,50,-174.6,0,0,0,1,-205.4,-30.8,062e92e3 +pendulum,log:drop-first,1.0,2,log,50,-176.0,0,0,0,1,-242.6,-66.6,3a8d968f +pendulum,log:drop-first,one,0,log,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,log:drop-first,one,1,log,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,log:drop-first,one,2,log,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,log:short,0.001,0,log,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,log:short,0.001,1,log,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,log:short,0.001,2,log,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,log:short,0.01,0,log,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,log:short,0.01,1,log,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,log:short,0.01,2,log,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,log:short,0.1,0,log,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,log:short,0.1,1,log,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,log:short,0.1,2,log,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,log:short,1.0,0,log,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,log:short,1.0,1,log,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,log:short,1.0,2,log,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,log:short,one,0,log,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,log:short,one,1,log,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,log:short,one,2,log,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,none,1.0,0,control,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,none,1.0,1,control,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,none,1.0,10,control,50,-170.02,0,0,0,1,-226.2,-56.18,4b5c8f2d +pendulum,none,1.0,11,control,50,-167.96,0,0,0,1,-210.7,-42.74,648cc27f +pendulum,none,1.0,12,control,50,-171.22,0,0,0,1,-215.4,-44.18,f60c2bd7 +pendulum,none,1.0,13,control,50,-238.31,0,0,0,1,-205.0,33.31,c11211ed +pendulum,none,1.0,14,control,50,-169.36,0,0,0,1,-225.4,-56.04,c69e3e42 +pendulum,none,1.0,15,control,50,-173.97,0,0,0,1,-221.9,-47.93,9e7baf1a +pendulum,none,1.0,16,control,50,-169.78,0,0,0,1,-205.0,-35.22,b4dafc53 +pendulum,none,1.0,17,control,50,-170.5,0,0,0,1,-234.7,-64.2,ae3c8039 +pendulum,none,1.0,18,control,50,-221.1,0,0,0,1,-200.5,20.6,af2a0223 +pendulum,none,1.0,19,control,50,-206.5,0,0,0,1,-222.0,-15.5,e1b7ed5c +pendulum,none,1.0,2,control,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f +pendulum,obs:f16,0.001,0,boundary,50,-177.27,0,0,0,1,-213.1,-35.83,99628584 +pendulum,obs:f16,0.001,1,boundary,50,-196.82,0,0,0,1,-193.9,2.92,ae53323b +pendulum,obs:f16,0.001,2,boundary,50,-162.12,0,0,0,1,-191.9,-29.78,f66f3be5 +pendulum,obs:f16,0.01,0,boundary,50,-177.81,0,0,0,1,-216.6,-38.79,8cdce0a6 +pendulum,obs:f16,0.01,1,boundary,50,-167.26,0,0,0,1,-191.9,-24.64,9efc34bd +pendulum,obs:f16,0.01,2,boundary,50,-166.67,0,0,0,1,-184.8,-18.13,a291b401 +pendulum,obs:f16,0.1,0,boundary,50,-175.38,0,0,0,1,-198.6,-23.22,e705e552 +pendulum,obs:f16,0.1,1,boundary,50,-176.53,0,0,0,1,-195.5,-18.97,458c24ce +pendulum,obs:f16,0.1,2,boundary,50,-163.82,0,0,1,0,-259.5,-95.68,67315f13 +pendulum,obs:f16,1.0,0,boundary,50,-169.95,0,0,0,1,-200.7,-30.75,6bd93edb +pendulum,obs:f16,1.0,1,boundary,50,-168.3,0,0,0,1,-194.5,-26.2,db006462 +pendulum,obs:f16,1.0,2,boundary,50,-167.1,0,0,0,1,-214.1,-47.0,0655bd23 +pendulum,obs:f16,one,0,boundary,50,-173.34,0,0,0,1,-220.9,-47.56,d1484e30 +pendulum,obs:f16,one,1,boundary,50,-167.63,0,0,0,1,-191.3,-23.67,7809451b +pendulum,obs:f16,one,2,boundary,50,-165.24,0,0,0,1,-193.1,-27.86,3026d8df +pendulum,obs:stale,0.001,0,boundary,50,-236.06,0,0,0,1,-196.4,39.66,229c165b +pendulum,obs:stale,0.001,1,boundary,50,-168.2,0,0,0,1,-189.4,-21.2,f75dec8d +pendulum,obs:stale,0.001,2,boundary,50,-174.27,0,0,0,1,-207.8,-33.53,17980b93 +pendulum,obs:stale,0.01,0,boundary,50,-161.93,0,0,0,1,-201.1,-39.17,0cbb3296 +pendulum,obs:stale,0.01,1,boundary,50,-172.37,0,0,0,1,-208.3,-35.93,2a0550ff +pendulum,obs:stale,0.01,2,boundary,50,-162.07,0,0,0,1,-191.2,-29.13,08b18278 +pendulum,obs:stale,0.1,0,boundary,50,-277.48,1,0,0,1,-207.2,70.28,cf301c7d +pendulum,obs:stale,0.1,1,boundary,50,-175.62,0,0,0,1,-218.8,-43.18,c99edca5 +pendulum,obs:stale,0.1,2,boundary,50,-187.83,0,0,0,1,-197.2,-9.37,9a8442c4 +pendulum,obs:stale,1.0,0,boundary,50,-249.92,0,0,1,0,-270.1,-20.18,bd9261b4 +pendulum,obs:stale,1.0,1,boundary,50,-162.11,0,0,0,1,-187.7,-25.59,3b8e0f67 +pendulum,obs:stale,1.0,2,boundary,50,-163.33,0,0,0,1,-186.1,-22.77,b2634e34 +pendulum,obs:stale,one,0,boundary,50,-172.45,0,0,0,1,-232.6,-60.15,765a1ee0 +pendulum,obs:stale,one,1,boundary,50,-429.93,1,0,0,1,-238.2,191.73,12613a2a +pendulum,obs:stale,one,2,boundary,50,-242.29,0,0,0,1,-200.6,41.69,978b430d +pendulum,obs:swap,0.001,0,boundary,50,-170.95,0,0,0,1,-210.6,-39.65,9ca3c02d +pendulum,obs:swap,0.001,1,boundary,50,-170.57,0,0,0,1,-185.3,-14.73,df38b2d7 +pendulum,obs:swap,0.001,2,boundary,50,-165.61,0,0,0,1,-192.2,-26.59,8126a1aa +pendulum,obs:swap,0.01,0,boundary,50,-238.74,0,0,0,1,-200.0,38.74,f6cb32fa +pendulum,obs:swap,0.01,1,boundary,50,-505.75,1,0,0,1,-212.2,293.55,deeb971c +pendulum,obs:swap,0.01,2,boundary,50,-175.66,0,0,0,1,-244.6,-68.94,407d9729 +pendulum,obs:swap,0.1,0,boundary,50,-247.51,0,0,1,0,-433.1,-185.59,0c30d1d9 +pendulum,obs:swap,0.1,1,boundary,50,-168.74,0,0,1,0,-325.5,-156.76,23e149f6 +pendulum,obs:swap,0.1,2,boundary,50,-165.27,0,0,1,0,-435.5,-270.23,94257467 +pendulum,obs:swap,1.0,0,boundary,50,-1172.18,1,1,1,0,-1217.5,-45.32,516c7ce6 +pendulum,obs:swap,1.0,1,boundary,50,-1613.51,1,1,1,0,-1219.5,394.01,ee7dcd35 +pendulum,obs:swap,1.0,2,boundary,50,-1343.89,1,1,1,0,-1214.5,129.39,220ba53a +pendulum,obs:swap,one,0,boundary,50,-173.7,0,0,0,1,-208.8,-35.1,3fb58b16 +pendulum,obs:swap,one,1,boundary,50,-165.06,0,0,0,1,-186.8,-21.74,9e1f81cd +pendulum,obs:swap,one,2,boundary,50,-169.21,0,0,0,1,-206.9,-37.69,bfb37b1a +pendulum,obs:zero,0.001,0,boundary,50,-172.31,0,0,0,1,-232.8,-60.49,aa6bbfc1 +pendulum,obs:zero,0.001,1,boundary,50,-169.75,0,0,0,1,-233.2,-63.45,dc412791 +pendulum,obs:zero,0.001,2,boundary,50,-175.37,0,0,0,1,-216.1,-40.73,e50671f5 +pendulum,obs:zero,0.01,0,boundary,50,-175.99,0,0,0,1,-230.2,-54.21,ed34c167 +pendulum,obs:zero,0.01,1,boundary,50,-166.28,0,0,0,1,-216.9,-50.62,3f052f94 +pendulum,obs:zero,0.01,2,boundary,50,-175.74,0,0,0,1,-210.3,-34.56,7b02c343 +pendulum,obs:zero,0.1,0,boundary,50,-221.4,0,0,1,0,-495.1,-273.7,d1791e56 +pendulum,obs:zero,0.1,1,boundary,50,-171.92,0,0,1,0,-331.5,-159.58,fc9a9d60 +pendulum,obs:zero,0.1,2,boundary,50,-229.19,0,0,1,0,-679.8,-450.61,085b1477 +pendulum,obs:zero,1.0,0,boundary,50,-1183.23,1,1,1,0,-1214.6,-31.37,6f23c454 +pendulum,obs:zero,1.0,1,boundary,50,-1181.59,1,1,1,0,-1219.7,-38.11,bfbe3209 +pendulum,obs:zero,1.0,2,boundary,50,-1176.68,1,1,1,0,-1232.7,-56.02,e1dbe226 +pendulum,obs:zero,one,0,boundary,50,-176.8,0,0,0,1,-193.3,-16.5,e2f06a8f +pendulum,obs:zero,one,1,boundary,50,-164.23,0,0,0,1,-197.4,-33.17,9be2e057 +pendulum,obs:zero,one,2,boundary,50,-170.49,0,0,0,1,-190.7,-20.21,2f7f6acc +pendulum,reward:f16,0.001,0,boundary,50,-170.95,0,0,0,1,-229.2,-58.25,52cf7ecc +pendulum,reward:f16,0.001,1,boundary,50,-167.84,0,0,0,1,-189.5,-21.66,91c2a04e +pendulum,reward:f16,0.001,2,boundary,50,-744.3,1,0,0,1,-222.1,522.2,20a63eaf +pendulum,reward:f16,0.01,0,boundary,50,-168.5,0,0,0,1,-200.8,-32.3,957547ea +pendulum,reward:f16,0.01,1,boundary,50,-165.19,0,0,0,1,-188.9,-23.71,ff01fa2a +pendulum,reward:f16,0.01,2,boundary,50,-172.65,0,0,0,1,-207.3,-34.65,1404abe1 +pendulum,reward:f16,0.1,0,boundary,50,-174.49,0,0,0,1,-208.7,-34.21,761d3243 +pendulum,reward:f16,0.1,1,boundary,50,-196.39,0,0,0,1,-184.4,11.99,b5be10fa +pendulum,reward:f16,0.1,2,boundary,50,-186.66,0,0,0,1,-190.4,-3.74,6c4077d0 +pendulum,reward:f16,1.0,0,boundary,50,-165.98,0,0,0,1,-205.8,-39.82,1d482f24 +pendulum,reward:f16,1.0,1,boundary,50,-170.76,0,0,0,1,-246.8,-76.04,add3c078 +pendulum,reward:f16,1.0,2,boundary,50,-167.96,0,0,0,1,-205.1,-37.14,c6599770 +pendulum,reward:f16,one,0,boundary,50,-171.98,0,0,0,1,-212.2,-40.22,e95cad4d +pendulum,reward:f16,one,1,boundary,50,-182.0,0,0,0,1,-205.3,-23.3,833fe81c +pendulum,reward:f16,one,2,boundary,50,-169.31,0,0,0,1,-198.1,-28.79,9bbbf32e +pendulum,reward:short-array,one,0,loud,50,-172.59,0,0,,0,,,5333d4e3 +pendulum,reward:short-array,one,1,loud,50,-174.52,0,0,,0,,,afaa8757 +pendulum,reward:short-array,one,2,loud,50,-170.24,0,0,,0,,,fde67d33 +pendulum,reward:stale,0.001,0,boundary,50,-171.96,0,0,0,1,-212.3,-40.34,bdaacf4d +pendulum,reward:stale,0.001,1,boundary,50,-170.8,0,0,0,1,-183.8,-13.0,39c8b7d4 +pendulum,reward:stale,0.001,2,boundary,50,-169.73,0,0,0,1,-205.8,-36.07,55e6f6cb +pendulum,reward:stale,0.01,0,boundary,50,-166.21,0,0,0,1,-201.5,-35.29,c3ecfd3a +pendulum,reward:stale,0.01,1,boundary,50,-195.35,0,0,0,1,-186.4,8.95,3d6114f7 +pendulum,reward:stale,0.01,2,boundary,50,-169.82,0,0,0,1,-202.1,-32.28,70133a54 +pendulum,reward:stale,0.1,0,boundary,50,-166.57,0,0,0,1,-200.3,-33.73,54a9cdf1 +pendulum,reward:stale,0.1,1,boundary,50,-167.87,0,0,0,1,-207.0,-39.13,98883dd9 +pendulum,reward:stale,0.1,2,boundary,50,-166.39,0,0,0,1,-203.3,-36.91,d1846c72 +pendulum,reward:stale,1.0,0,boundary,50,-171.52,0,0,0,1,-201.7,-30.18,982f942a +pendulum,reward:stale,1.0,1,boundary,50,-170.05,0,0,0,1,-187.4,-17.35,0cddc6e3 +pendulum,reward:stale,1.0,2,boundary,50,-166.97,0,0,0,1,-191.7,-24.73,87c6042c +pendulum,reward:stale,one,0,boundary,50,-199.7,0,0,0,1,-207.9,-8.2,755acd6f +pendulum,reward:stale,one,1,boundary,50,-170.0,0,0,0,1,-192.6,-22.6,29a4a30e +pendulum,reward:stale,one,2,boundary,50,-167.22,0,0,0,1,-199.5,-32.28,8b012764 +pendulum,reward:swap,0.001,0,boundary,50,-176.36,0,0,0,1,-193.1,-16.74,5be1abca +pendulum,reward:swap,0.001,1,boundary,50,-164.66,0,0,0,1,-206.5,-41.84,83e44dcc +pendulum,reward:swap,0.001,2,boundary,50,-252.39,0,0,0,1,-199.1,53.29,a6b6f114 +pendulum,reward:swap,0.01,0,boundary,50,-171.88,0,0,0,1,-193.7,-21.82,c5bef941 +pendulum,reward:swap,0.01,1,boundary,50,-170.05,0,0,0,1,-185.5,-15.45,49df93d6 +pendulum,reward:swap,0.01,2,boundary,50,-168.89,0,0,0,1,-220.7,-51.81,1f2b8986 +pendulum,reward:swap,0.1,0,boundary,50,-178.36,0,0,0,1,-243.8,-65.44,483edb81 +pendulum,reward:swap,0.1,1,boundary,50,-164.84,0,0,0,1,-241.7,-76.86,3396496c +pendulum,reward:swap,0.1,2,boundary,50,-167.38,0,0,0,1,-224.4,-57.02,998e1fa2 +pendulum,reward:swap,1.0,0,boundary,50,-1415.51,1,1,1,0,-1213.8,201.71,f15ee7af +pendulum,reward:swap,1.0,1,boundary,50,-1127.24,1,1,1,0,-1173.4,-46.16,333cd4cd +pendulum,reward:swap,1.0,2,boundary,50,-1569.02,1,1,1,0,-1353.2,215.82,5a1c7763 +pendulum,reward:swap,one,0,boundary,50,-175.07,0,0,0,1,-210.5,-35.43,67f6552c +pendulum,reward:swap,one,1,boundary,50,-200.42,0,0,0,1,-211.7,-11.28,38b7ad55 +pendulum,reward:swap,one,2,boundary,50,-164.66,0,0,0,1,-188.9,-24.24,dd11b659 +pendulum,reward:zero,0.001,0,boundary,50,-169.53,0,0,0,1,-188.2,-18.67,62b73298 +pendulum,reward:zero,0.001,1,boundary,50,-169.03,0,0,0,1,-190.5,-21.47,451c93c7 +pendulum,reward:zero,0.001,2,boundary,50,-175.53,0,0,0,1,-201.6,-26.07,e2a3a84a +pendulum,reward:zero,0.01,0,boundary,50,-169.98,0,0,0,1,-196.9,-26.92,11d1d7dc +pendulum,reward:zero,0.01,1,boundary,50,-168.73,0,0,0,1,-196.3,-27.57,e90c654b +pendulum,reward:zero,0.01,2,boundary,50,-173.11,0,0,0,1,-216.0,-42.89,57614cea +pendulum,reward:zero,0.1,0,boundary,50,-166.07,0,0,0,1,-194.0,-27.93,6230d345 +pendulum,reward:zero,0.1,1,boundary,50,-180.64,0,0,0,1,-221.8,-41.16,dc7fc3b4 +pendulum,reward:zero,0.1,2,boundary,50,-182.39,0,0,0,1,-211.9,-29.51,13b5a9ee +pendulum,reward:zero,1.0,0,boundary,50,-1195.55,1,1,1,0,0.0,1195.55,f3c1c4c3 +pendulum,reward:zero,1.0,1,boundary,50,-1549.63,1,1,1,0,0.0,1549.63,d483503e +pendulum,reward:zero,1.0,2,boundary,50,-1639.38,1,1,1,0,0.0,1639.38,092cb09b +pendulum,reward:zero,one,0,boundary,50,-172.09,0,0,0,1,-203.5,-31.41,e42c5fa8 +pendulum,reward:zero,one,1,boundary,50,-171.3,0,0,0,1,-209.0,-37.7,b0cdde97 +pendulum,reward:zero,one,2,boundary,50,-225.03,0,0,0,1,-204.8,20.23,77163c4c +pendulum,step:fill,0.001,0,boundary,50,-171.17,0,0,0,1,-190.8,-19.63,84594ba6 +pendulum,step:fill,0.001,1,boundary,50,-173.48,0,0,0,1,-190.2,-16.72,aaef822c +pendulum,step:fill,0.001,2,boundary,50,-169.14,0,0,0,1,-193.3,-24.16,9d28430e +pendulum,step:fill,0.01,0,boundary,50,-183.71,0,0,0,1,-188.7,-4.99,32ba03dd +pendulum,step:fill,0.01,1,boundary,50,-172.08,0,0,0,1,-199.4,-27.32,c201aca0 +pendulum,step:fill,0.01,2,boundary,50,-166.2,0,0,0,1,-206.3,-40.1,b14b76d2 +pendulum,step:fill,0.1,0,boundary,50,-179.04,0,0,0,1,-209.3,-30.26,7cc67c68 +pendulum,step:fill,0.1,1,boundary,50,-170.44,0,0,0,1,-221.1,-50.66,6a8df066 +pendulum,step:fill,0.1,2,boundary,50,-158.12,0,0,0,1,-239.3,-81.18,e53add0e +pendulum,step:fill,1.0,0,boundary,50,-1521.44,1,1,1,0,,,7c353631 +pendulum,step:fill,1.0,1,boundary,50,-1598.55,1,1,1,0,,,d303871d +pendulum,step:fill,1.0,2,boundary,50,-1451.93,1,1,1,0,,,36f6d91e +pendulum,step:fill,one,0,boundary,50,-172.22,0,0,0,1,-208.6,-36.38,1426c402 +pendulum,step:fill,one,1,boundary,50,-168.88,0,0,0,1,-212.3,-43.42,1b86e0d9 +pendulum,step:fill,one,2,boundary,50,-168.62,0,0,0,1,-194.4,-25.78,e2d1cee4 +pendulum,terminated:spurious,0.001,0,boundary,50,-170.31,0,0,1,0,-168.1,2.21,d6f284ed +pendulum,terminated:spurious,0.001,1,boundary,50,-174.73,0,0,1,0,-163.0,11.73,1e3f87cc +pendulum,terminated:spurious,0.001,2,boundary,50,-255.89,0,0,1,0,-178.6,77.29,eb7e82e2 +pendulum,terminated:spurious,0.01,0,boundary,50,-174.93,0,1,1,0,-178.6,-3.67,bfaf6961 +pendulum,terminated:spurious,0.01,1,boundary,50,-161.27,0,1,1,0,-142.4,18.87,d166081a +pendulum,terminated:spurious,0.01,2,boundary,50,-180.37,0,1,1,0,-152.5,27.87,66d62461 +pendulum,terminated:spurious,0.1,0,boundary,50,-623.94,1,1,1,0,-48.8,575.14,c336fac8 +pendulum,terminated:spurious,0.1,1,boundary,50,-667.9,1,1,1,0,-44.9,623.0,f1cfa982 +pendulum,terminated:spurious,0.1,2,boundary,50,-865.41,1,1,1,0,-50.6,814.81,711b8f59 +pendulum,terminated:spurious,1.0,0,boundary,50,-1388.18,1,1,1,0,-6.5,1381.68,f885d396 +pendulum,terminated:spurious,1.0,1,boundary,50,-1356.0,1,1,1,0,-6.3,1349.7,ef551e57 +pendulum,terminated:spurious,1.0,2,boundary,50,-1174.6,1,1,1,0,-6.0,1168.6,1611c255 +pendulum,terminated:spurious,one,0,boundary,50,-170.7,0,0,0,1,-210.5,-39.8,44d6e670 +pendulum,terminated:spurious,one,1,boundary,50,-167.63,0,0,0,1,-193.6,-25.97,ad8c101a +pendulum,terminated:spurious,one,2,boundary,50,-157.55,0,0,0,1,-193.1,-35.55,b9f30a62 +pendulum,truncated:as-term,0.001,0,boundary,50,-169.78,0,0,0,1,-200.8,-31.02,891f5fc9 +pendulum,truncated:as-term,0.001,1,boundary,50,-168.51,0,0,0,1,-202.5,-33.99,c098bfe9 +pendulum,truncated:as-term,0.001,2,boundary,50,-162.81,0,0,0,1,-196.6,-33.79,486d154e +pendulum,truncated:as-term,0.01,0,boundary,50,-194.48,0,0,0,1,-224.4,-29.92,9ea56785 +pendulum,truncated:as-term,0.01,1,boundary,50,-164.11,0,0,0,1,-195.1,-30.99,5e225449 +pendulum,truncated:as-term,0.01,2,boundary,50,-217.04,0,0,0,1,-206.6,10.44,8ffa7e42 +pendulum,truncated:as-term,0.1,0,boundary,50,-173.93,0,0,0,1,-211.8,-37.87,24da6230 +pendulum,truncated:as-term,0.1,1,boundary,50,-168.04,0,0,0,1,-191.1,-23.06,c6e6a98a +pendulum,truncated:as-term,0.1,2,boundary,50,-170.46,0,0,0,1,-195.9,-25.44,0f716951 +pendulum,truncated:as-term,1.0,0,boundary,50,-166.25,0,0,0,1,-204.6,-38.35,57eb5601 +pendulum,truncated:as-term,1.0,1,boundary,50,-165.36,0,0,0,1,-237.9,-72.54,2c8a0d7a +pendulum,truncated:as-term,1.0,2,boundary,50,-163.57,0,0,0,1,-208.8,-45.23,3292a6ce +pendulum,truncated:as-term,one,0,boundary,50,-171.16,0,0,0,1,-187.0,-15.84,1778bb25 +pendulum,truncated:as-term,one,1,boundary,50,-171.35,0,0,0,1,-194.8,-23.45,31459006 +pendulum,truncated:as-term,one,2,boundary,50,-173.56,0,0,0,1,-200.0,-26.44,bb2c9d55 +pendulum,truncated:drop,0.001,0,boundary,50,-195.56,0,0,0,1,-197.0,-1.44,e075c57a +pendulum,truncated:drop,0.001,1,boundary,50,-170.25,0,0,0,1,-205.3,-35.05,22cb06b9 +pendulum,truncated:drop,0.001,2,boundary,50,-169.98,0,0,0,1,-201.5,-31.52,496ca350 +pendulum,truncated:drop,0.01,0,boundary,50,-168.3,0,0,0,1,-194.0,-25.7,bfafb0fb +pendulum,truncated:drop,0.01,1,boundary,50,-168.15,0,0,0,1,-197.2,-29.05,db17509e +pendulum,truncated:drop,0.01,2,boundary,50,-176.03,0,0,0,1,-222.3,-46.27,8c5d0450 +pendulum,truncated:drop,0.1,0,boundary,50,-170.96,0,0,0,1,-242.9,-71.94,d4b1ea6c +pendulum,truncated:drop,0.1,1,boundary,50,-170.25,0,0,0,1,-241.8,-71.55,2f1eea58 +pendulum,truncated:drop,0.1,2,boundary,50,-167.43,0,0,0,1,-236.6,-69.17,48109f2c +pendulum,truncated:drop,1.0,0,boundary,50,-203.96,0,1,1,0,,,1a833295 +pendulum,truncated:drop,1.0,1,boundary,50,-161.45,0,1,1,0,,,c077fca8 +pendulum,truncated:drop,1.0,2,boundary,50,-177.85,0,1,1,0,,,85691232 +pendulum,truncated:drop,one,0,boundary,50,-171.57,0,0,0,1,-192.0,-20.43,754e49b9 +pendulum,truncated:drop,one,1,boundary,50,-173.81,0,0,0,1,-225.5,-51.69,b21d8718 +pendulum,truncated:drop,one,2,boundary,50,-165.34,0,0,0,1,-201.6,-36.26,4bc2ef7b +pendulum,wire-float64,1.0,0,control,50,-200.52,0,0,0,1,-199.8,0.72,ec5b8226 +pendulum,wire-float64,1.0,1,control,50,-174.6,0,0,0,1,-208.8,-34.2,062e92e3 +pendulum,wire-float64,1.0,2,control,50,-176.0,0,0,0,1,-246.0,-70.0,3a8d968f diff --git a/experiments/e57-clean-eval/results/e57-src.sha256 b/experiments/e57-clean-eval/results/e57-src.sha256 new file mode 100644 index 0000000..4fb0195 --- /dev/null +++ b/experiments/e57-clean-eval/results/e57-src.sha256 @@ -0,0 +1,2 @@ +277daf21ebd4d4b066dad5a800fa4b0f2af43e7d352d5a5af1655e3480272e0b evaluate.py +9cbe443184dc3b89fb5f77bfe06373a201590f51859b8c92e6569f0435e20501 summarise.py diff --git a/experiments/e57-clean-eval/results/explore.txt b/experiments/e57-clean-eval/results/explore.txt new file mode 100644 index 0000000..458df73 --- /dev/null +++ b/experiments/e57-clean-eval/results/explore.txt @@ -0,0 +1,13 @@ +exploratory: boundary-fault runs silent on the curve, against fault-free runs +env dose n mean z median z U-test p twin gap median (clean - none at same seed) +halfcheetah one 60 0.56 0.51 0.096 100.7 +halfcheetah 0.01 57 0.43 0.55 0.139 80.0 +halfcheetah 1.0 31 0.28 0.41 0.571 63.0 +hopper one 69 0.19 0.62 0.534 142.4 +hopper 0.01 66 0.16 0.67 0.539 168.3 +hopper 1.0 35 0.27 0.81 0.342 368.2 +pendulum one 63 0.24 0.55 0.195 6.8 +pendulum 0.001 58 0.03 0.60 0.053 6.5 +pendulum 0.01 59 0.09 0.54 0.208 7.3 +pendulum 0.1 50 0.36 0.60 0.061 8.4 +pendulum 1.0 25 0.65 0.68 0.003 9.2 diff --git a/experiments/e57-clean-eval/results/jobs.txt b/experiments/e57-clean-eval/results/jobs.txt new file mode 100644 index 0000000..295da0e --- /dev/null +++ b/experiments/e57-clean-eval/results/jobs.txt @@ -0,0 +1,834 @@ +../e54-boundary-faults/results/halfcheetah/action__clip/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/action__clip/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/action__clip/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/action__clip/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/action__clip/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/action__clip/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/action__clip/one/seed0 +../e54-boundary-faults/results/halfcheetah/action__clip/one/seed1 +../e54-boundary-faults/results/halfcheetah/action__clip/one/seed2 +../e54-boundary-faults/results/halfcheetah/action__f16/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/action__f16/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/action__f16/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/action__f16/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/action__f16/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/action__f16/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/action__f16/one/seed0 +../e54-boundary-faults/results/halfcheetah/action__f16/one/seed1 +../e54-boundary-faults/results/halfcheetah/action__f16/one/seed2 +../e54-boundary-faults/results/halfcheetah/action__stale/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/action__stale/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/action__stale/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/action__stale/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/action__stale/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/action__stale/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/action__stale/one/seed0 +../e54-boundary-faults/results/halfcheetah/action__stale/one/seed1 +../e54-boundary-faults/results/halfcheetah/action__stale/one/seed2 +../e54-boundary-faults/results/halfcheetah/action__swap/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/action__swap/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/action__swap/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/action__swap/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/action__swap/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/action__swap/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/action__swap/one/seed0 +../e54-boundary-faults/results/halfcheetah/action__swap/one/seed1 +../e54-boundary-faults/results/halfcheetah/action__swap/one/seed2 +../e54-boundary-faults/results/halfcheetah/action__zero/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/action__zero/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/action__zero/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/action__zero/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/action__zero/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/action__zero/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/action__zero/one/seed0 +../e54-boundary-faults/results/halfcheetah/action__zero/one/seed1 +../e54-boundary-faults/results/halfcheetah/action__zero/one/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__f16/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__f16/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__f16/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__f16/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__f16/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__f16/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__f16/one/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__f16/one/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__f16/one/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__stale/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__stale/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__stale/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__stale/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__stale/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__stale/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__stale/one/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__stale/one/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__stale/one/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__swap/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__swap/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__swap/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__swap/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__swap/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__swap/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__swap/one/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__swap/one/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__swap/one/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__zero/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__zero/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__zero/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__zero/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__zero/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__zero/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/final-obs__zero/one/seed0 +../e54-boundary-faults/results/halfcheetah/final-obs__zero/one/seed1 +../e54-boundary-faults/results/halfcheetah/final-obs__zero/one/seed2 +../e54-boundary-faults/results/halfcheetah/log__drop-first/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/log__drop-first/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/log__drop-first/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/log__drop-first/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/log__drop-first/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/log__drop-first/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/log__drop-first/one/seed0 +../e54-boundary-faults/results/halfcheetah/log__drop-first/one/seed1 +../e54-boundary-faults/results/halfcheetah/log__drop-first/one/seed2 +../e54-boundary-faults/results/halfcheetah/log__short/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/log__short/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/log__short/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/log__short/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/log__short/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/log__short/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/log__short/one/seed0 +../e54-boundary-faults/results/halfcheetah/log__short/one/seed1 +../e54-boundary-faults/results/halfcheetah/log__short/one/seed2 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed10 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed11 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed12 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed13 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed14 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed15 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed16 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed17 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed18 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed19 +../e54-boundary-faults/results/halfcheetah/none/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/obs__f16/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/obs__f16/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/obs__f16/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/obs__f16/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/obs__f16/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/obs__f16/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/obs__f16/one/seed0 +../e54-boundary-faults/results/halfcheetah/obs__f16/one/seed1 +../e54-boundary-faults/results/halfcheetah/obs__f16/one/seed2 +../e54-boundary-faults/results/halfcheetah/obs__stale/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/obs__stale/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/obs__stale/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/obs__stale/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/obs__stale/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/obs__stale/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/obs__stale/one/seed0 +../e54-boundary-faults/results/halfcheetah/obs__stale/one/seed1 +../e54-boundary-faults/results/halfcheetah/obs__stale/one/seed2 +../e54-boundary-faults/results/halfcheetah/obs__swap/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/obs__swap/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/obs__swap/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/obs__swap/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/obs__swap/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/obs__swap/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/obs__swap/one/seed0 +../e54-boundary-faults/results/halfcheetah/obs__swap/one/seed1 +../e54-boundary-faults/results/halfcheetah/obs__swap/one/seed2 +../e54-boundary-faults/results/halfcheetah/obs__zero/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/obs__zero/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/obs__zero/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/obs__zero/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/obs__zero/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/obs__zero/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/obs__zero/one/seed0 +../e54-boundary-faults/results/halfcheetah/obs__zero/one/seed1 +../e54-boundary-faults/results/halfcheetah/obs__zero/one/seed2 +../e54-boundary-faults/results/halfcheetah/reward__f16/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/reward__f16/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/reward__f16/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/reward__f16/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/reward__f16/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/reward__f16/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/reward__f16/one/seed0 +../e54-boundary-faults/results/halfcheetah/reward__f16/one/seed1 +../e54-boundary-faults/results/halfcheetah/reward__f16/one/seed2 +../e54-boundary-faults/results/halfcheetah/reward__stale/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/reward__stale/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/reward__stale/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/reward__stale/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/reward__stale/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/reward__stale/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/reward__stale/one/seed0 +../e54-boundary-faults/results/halfcheetah/reward__stale/one/seed1 +../e54-boundary-faults/results/halfcheetah/reward__stale/one/seed2 +../e54-boundary-faults/results/halfcheetah/reward__swap/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/reward__swap/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/reward__swap/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/reward__swap/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/reward__swap/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/reward__swap/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/reward__swap/one/seed0 +../e54-boundary-faults/results/halfcheetah/reward__swap/one/seed1 +../e54-boundary-faults/results/halfcheetah/reward__swap/one/seed2 +../e54-boundary-faults/results/halfcheetah/reward__zero/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/reward__zero/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/reward__zero/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/reward__zero/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/reward__zero/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/reward__zero/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/reward__zero/one/seed0 +../e54-boundary-faults/results/halfcheetah/reward__zero/one/seed1 +../e54-boundary-faults/results/halfcheetah/reward__zero/one/seed2 +../e54-boundary-faults/results/halfcheetah/step__fill/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/step__fill/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/step__fill/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/step__fill/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/step__fill/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/step__fill/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/step__fill/one/seed0 +../e54-boundary-faults/results/halfcheetah/step__fill/one/seed1 +../e54-boundary-faults/results/halfcheetah/step__fill/one/seed2 +../e54-boundary-faults/results/halfcheetah/terminated__spurious/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/terminated__spurious/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/terminated__spurious/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/terminated__spurious/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/terminated__spurious/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/terminated__spurious/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/terminated__spurious/one/seed0 +../e54-boundary-faults/results/halfcheetah/terminated__spurious/one/seed1 +../e54-boundary-faults/results/halfcheetah/terminated__spurious/one/seed2 +../e54-boundary-faults/results/halfcheetah/truncated__as-term/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/truncated__as-term/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/truncated__as-term/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/truncated__as-term/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/truncated__as-term/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/truncated__as-term/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/truncated__as-term/one/seed0 +../e54-boundary-faults/results/halfcheetah/truncated__as-term/one/seed1 +../e54-boundary-faults/results/halfcheetah/truncated__as-term/one/seed2 +../e54-boundary-faults/results/halfcheetah/truncated__drop/0.01/seed0 +../e54-boundary-faults/results/halfcheetah/truncated__drop/0.01/seed1 +../e54-boundary-faults/results/halfcheetah/truncated__drop/0.01/seed2 +../e54-boundary-faults/results/halfcheetah/truncated__drop/1.0/seed0 +../e54-boundary-faults/results/halfcheetah/truncated__drop/1.0/seed1 +../e54-boundary-faults/results/halfcheetah/truncated__drop/1.0/seed2 +../e54-boundary-faults/results/halfcheetah/truncated__drop/one/seed0 +../e54-boundary-faults/results/halfcheetah/truncated__drop/one/seed1 +../e54-boundary-faults/results/halfcheetah/truncated__drop/one/seed2 +../e54-boundary-faults/results/pendulum/action__clip/0.001/seed0 +../e54-boundary-faults/results/pendulum/action__clip/0.001/seed1 +../e54-boundary-faults/results/pendulum/action__clip/0.001/seed2 +../e54-boundary-faults/results/pendulum/action__clip/0.01/seed0 +../e54-boundary-faults/results/pendulum/action__clip/0.01/seed1 +../e54-boundary-faults/results/pendulum/action__clip/0.01/seed2 +../e54-boundary-faults/results/pendulum/action__clip/0.1/seed0 +../e54-boundary-faults/results/pendulum/action__clip/0.1/seed1 +../e54-boundary-faults/results/pendulum/action__clip/0.1/seed2 +../e54-boundary-faults/results/pendulum/action__clip/1.0/seed0 +../e54-boundary-faults/results/pendulum/action__clip/1.0/seed1 +../e54-boundary-faults/results/pendulum/action__clip/1.0/seed2 +../e54-boundary-faults/results/pendulum/action__clip/one/seed0 +../e54-boundary-faults/results/pendulum/action__clip/one/seed1 +../e54-boundary-faults/results/pendulum/action__clip/one/seed2 +../e54-boundary-faults/results/pendulum/action__f16/0.001/seed0 +../e54-boundary-faults/results/pendulum/action__f16/0.001/seed1 +../e54-boundary-faults/results/pendulum/action__f16/0.001/seed2 +../e54-boundary-faults/results/pendulum/action__f16/0.01/seed0 +../e54-boundary-faults/results/pendulum/action__f16/0.01/seed1 +../e54-boundary-faults/results/pendulum/action__f16/0.01/seed2 +../e54-boundary-faults/results/pendulum/action__f16/0.1/seed0 +../e54-boundary-faults/results/pendulum/action__f16/0.1/seed1 +../e54-boundary-faults/results/pendulum/action__f16/0.1/seed2 +../e54-boundary-faults/results/pendulum/action__f16/1.0/seed0 +../e54-boundary-faults/results/pendulum/action__f16/1.0/seed1 +../e54-boundary-faults/results/pendulum/action__f16/1.0/seed2 +../e54-boundary-faults/results/pendulum/action__f16/one/seed0 +../e54-boundary-faults/results/pendulum/action__f16/one/seed1 +../e54-boundary-faults/results/pendulum/action__f16/one/seed2 +../e54-boundary-faults/results/pendulum/action__stale/0.001/seed0 +../e54-boundary-faults/results/pendulum/action__stale/0.001/seed1 +../e54-boundary-faults/results/pendulum/action__stale/0.001/seed2 +../e54-boundary-faults/results/pendulum/action__stale/0.01/seed0 +../e54-boundary-faults/results/pendulum/action__stale/0.01/seed1 +../e54-boundary-faults/results/pendulum/action__stale/0.01/seed2 +../e54-boundary-faults/results/pendulum/action__stale/0.1/seed0 +../e54-boundary-faults/results/pendulum/action__stale/0.1/seed1 +../e54-boundary-faults/results/pendulum/action__stale/0.1/seed2 +../e54-boundary-faults/results/pendulum/action__stale/1.0/seed0 +../e54-boundary-faults/results/pendulum/action__stale/1.0/seed1 +../e54-boundary-faults/results/pendulum/action__stale/1.0/seed2 +../e54-boundary-faults/results/pendulum/action__stale/one/seed0 +../e54-boundary-faults/results/pendulum/action__stale/one/seed1 +../e54-boundary-faults/results/pendulum/action__stale/one/seed2 +../e54-boundary-faults/results/pendulum/action__swap/0.001/seed0 +../e54-boundary-faults/results/pendulum/action__swap/0.001/seed1 +../e54-boundary-faults/results/pendulum/action__swap/0.001/seed2 +../e54-boundary-faults/results/pendulum/action__swap/0.01/seed0 +../e54-boundary-faults/results/pendulum/action__swap/0.01/seed1 +../e54-boundary-faults/results/pendulum/action__swap/0.01/seed2 +../e54-boundary-faults/results/pendulum/action__swap/0.1/seed0 +../e54-boundary-faults/results/pendulum/action__swap/0.1/seed1 +../e54-boundary-faults/results/pendulum/action__swap/0.1/seed2 +../e54-boundary-faults/results/pendulum/action__swap/1.0/seed0 +../e54-boundary-faults/results/pendulum/action__swap/1.0/seed1 +../e54-boundary-faults/results/pendulum/action__swap/1.0/seed2 +../e54-boundary-faults/results/pendulum/action__swap/one/seed0 +../e54-boundary-faults/results/pendulum/action__swap/one/seed1 +../e54-boundary-faults/results/pendulum/action__swap/one/seed2 +../e54-boundary-faults/results/pendulum/action__zero/0.001/seed0 +../e54-boundary-faults/results/pendulum/action__zero/0.001/seed1 +../e54-boundary-faults/results/pendulum/action__zero/0.001/seed2 +../e54-boundary-faults/results/pendulum/action__zero/0.01/seed0 +../e54-boundary-faults/results/pendulum/action__zero/0.01/seed1 +../e54-boundary-faults/results/pendulum/action__zero/0.01/seed2 +../e54-boundary-faults/results/pendulum/action__zero/0.1/seed0 +../e54-boundary-faults/results/pendulum/action__zero/0.1/seed1 +../e54-boundary-faults/results/pendulum/action__zero/0.1/seed2 +../e54-boundary-faults/results/pendulum/action__zero/1.0/seed0 +../e54-boundary-faults/results/pendulum/action__zero/1.0/seed1 +../e54-boundary-faults/results/pendulum/action__zero/1.0/seed2 +../e54-boundary-faults/results/pendulum/action__zero/one/seed0 +../e54-boundary-faults/results/pendulum/action__zero/one/seed1 +../e54-boundary-faults/results/pendulum/action__zero/one/seed2 +../e54-boundary-faults/results/pendulum/delay-1ms/1.0/seed0 +../e54-boundary-faults/results/pendulum/delay-1ms/1.0/seed1 +../e54-boundary-faults/results/pendulum/delay-1ms/1.0/seed2 +../e54-boundary-faults/results/pendulum/final-obs__f16/0.001/seed0 +../e54-boundary-faults/results/pendulum/final-obs__f16/0.001/seed1 +../e54-boundary-faults/results/pendulum/final-obs__f16/0.001/seed2 +../e54-boundary-faults/results/pendulum/final-obs__f16/0.01/seed0 +../e54-boundary-faults/results/pendulum/final-obs__f16/0.01/seed1 +../e54-boundary-faults/results/pendulum/final-obs__f16/0.01/seed2 +../e54-boundary-faults/results/pendulum/final-obs__f16/0.1/seed0 +../e54-boundary-faults/results/pendulum/final-obs__f16/0.1/seed1 +../e54-boundary-faults/results/pendulum/final-obs__f16/0.1/seed2 +../e54-boundary-faults/results/pendulum/final-obs__f16/1.0/seed0 +../e54-boundary-faults/results/pendulum/final-obs__f16/1.0/seed1 +../e54-boundary-faults/results/pendulum/final-obs__f16/1.0/seed2 +../e54-boundary-faults/results/pendulum/final-obs__f16/one/seed0 +../e54-boundary-faults/results/pendulum/final-obs__f16/one/seed1 +../e54-boundary-faults/results/pendulum/final-obs__f16/one/seed2 +../e54-boundary-faults/results/pendulum/final-obs__stale/0.001/seed0 +../e54-boundary-faults/results/pendulum/final-obs__stale/0.001/seed1 +../e54-boundary-faults/results/pendulum/final-obs__stale/0.001/seed2 +../e54-boundary-faults/results/pendulum/final-obs__stale/0.01/seed0 +../e54-boundary-faults/results/pendulum/final-obs__stale/0.01/seed1 +../e54-boundary-faults/results/pendulum/final-obs__stale/0.01/seed2 +../e54-boundary-faults/results/pendulum/final-obs__stale/0.1/seed0 +../e54-boundary-faults/results/pendulum/final-obs__stale/0.1/seed1 +../e54-boundary-faults/results/pendulum/final-obs__stale/0.1/seed2 +../e54-boundary-faults/results/pendulum/final-obs__stale/1.0/seed0 +../e54-boundary-faults/results/pendulum/final-obs__stale/1.0/seed1 +../e54-boundary-faults/results/pendulum/final-obs__stale/1.0/seed2 +../e54-boundary-faults/results/pendulum/final-obs__stale/one/seed0 +../e54-boundary-faults/results/pendulum/final-obs__stale/one/seed1 +../e54-boundary-faults/results/pendulum/final-obs__stale/one/seed2 +../e54-boundary-faults/results/pendulum/final-obs__swap/0.001/seed0 +../e54-boundary-faults/results/pendulum/final-obs__swap/0.001/seed1 +../e54-boundary-faults/results/pendulum/final-obs__swap/0.001/seed2 +../e54-boundary-faults/results/pendulum/final-obs__swap/0.01/seed0 +../e54-boundary-faults/results/pendulum/final-obs__swap/0.01/seed1 +../e54-boundary-faults/results/pendulum/final-obs__swap/0.01/seed2 +../e54-boundary-faults/results/pendulum/final-obs__swap/0.1/seed0 +../e54-boundary-faults/results/pendulum/final-obs__swap/0.1/seed1 +../e54-boundary-faults/results/pendulum/final-obs__swap/0.1/seed2 +../e54-boundary-faults/results/pendulum/final-obs__swap/1.0/seed0 +../e54-boundary-faults/results/pendulum/final-obs__swap/1.0/seed1 +../e54-boundary-faults/results/pendulum/final-obs__swap/1.0/seed2 +../e54-boundary-faults/results/pendulum/final-obs__swap/one/seed0 +../e54-boundary-faults/results/pendulum/final-obs__swap/one/seed1 +../e54-boundary-faults/results/pendulum/final-obs__swap/one/seed2 +../e54-boundary-faults/results/pendulum/final-obs__zero/0.001/seed0 +../e54-boundary-faults/results/pendulum/final-obs__zero/0.001/seed1 +../e54-boundary-faults/results/pendulum/final-obs__zero/0.001/seed2 +../e54-boundary-faults/results/pendulum/final-obs__zero/0.01/seed0 +../e54-boundary-faults/results/pendulum/final-obs__zero/0.01/seed1 +../e54-boundary-faults/results/pendulum/final-obs__zero/0.01/seed2 +../e54-boundary-faults/results/pendulum/final-obs__zero/0.1/seed0 +../e54-boundary-faults/results/pendulum/final-obs__zero/0.1/seed1 +../e54-boundary-faults/results/pendulum/final-obs__zero/0.1/seed2 +../e54-boundary-faults/results/pendulum/final-obs__zero/1.0/seed0 +../e54-boundary-faults/results/pendulum/final-obs__zero/1.0/seed1 +../e54-boundary-faults/results/pendulum/final-obs__zero/1.0/seed2 +../e54-boundary-faults/results/pendulum/final-obs__zero/one/seed0 +../e54-boundary-faults/results/pendulum/final-obs__zero/one/seed1 +../e54-boundary-faults/results/pendulum/final-obs__zero/one/seed2 +../e54-boundary-faults/results/pendulum/indices__reorder/one/seed0 +../e54-boundary-faults/results/pendulum/indices__reorder/one/seed1 +../e54-boundary-faults/results/pendulum/indices__reorder/one/seed2 +../e54-boundary-faults/results/pendulum/log__drop-first/0.001/seed0 +../e54-boundary-faults/results/pendulum/log__drop-first/0.001/seed1 +../e54-boundary-faults/results/pendulum/log__drop-first/0.001/seed2 +../e54-boundary-faults/results/pendulum/log__drop-first/0.01/seed0 +../e54-boundary-faults/results/pendulum/log__drop-first/0.01/seed1 +../e54-boundary-faults/results/pendulum/log__drop-first/0.01/seed2 +../e54-boundary-faults/results/pendulum/log__drop-first/0.1/seed0 +../e54-boundary-faults/results/pendulum/log__drop-first/0.1/seed1 +../e54-boundary-faults/results/pendulum/log__drop-first/0.1/seed2 +../e54-boundary-faults/results/pendulum/log__drop-first/1.0/seed0 +../e54-boundary-faults/results/pendulum/log__drop-first/1.0/seed1 +../e54-boundary-faults/results/pendulum/log__drop-first/1.0/seed2 +../e54-boundary-faults/results/pendulum/log__drop-first/one/seed0 +../e54-boundary-faults/results/pendulum/log__drop-first/one/seed1 +../e54-boundary-faults/results/pendulum/log__drop-first/one/seed2 +../e54-boundary-faults/results/pendulum/log__short/0.001/seed0 +../e54-boundary-faults/results/pendulum/log__short/0.001/seed1 +../e54-boundary-faults/results/pendulum/log__short/0.001/seed2 +../e54-boundary-faults/results/pendulum/log__short/0.01/seed0 +../e54-boundary-faults/results/pendulum/log__short/0.01/seed1 +../e54-boundary-faults/results/pendulum/log__short/0.01/seed2 +../e54-boundary-faults/results/pendulum/log__short/0.1/seed0 +../e54-boundary-faults/results/pendulum/log__short/0.1/seed1 +../e54-boundary-faults/results/pendulum/log__short/0.1/seed2 +../e54-boundary-faults/results/pendulum/log__short/1.0/seed0 +../e54-boundary-faults/results/pendulum/log__short/1.0/seed1 +../e54-boundary-faults/results/pendulum/log__short/1.0/seed2 +../e54-boundary-faults/results/pendulum/log__short/one/seed0 +../e54-boundary-faults/results/pendulum/log__short/one/seed1 +../e54-boundary-faults/results/pendulum/log__short/one/seed2 +../e54-boundary-faults/results/pendulum/none/1.0/seed0 +../e54-boundary-faults/results/pendulum/none/1.0/seed1 +../e54-boundary-faults/results/pendulum/none/1.0/seed10 +../e54-boundary-faults/results/pendulum/none/1.0/seed11 +../e54-boundary-faults/results/pendulum/none/1.0/seed12 +../e54-boundary-faults/results/pendulum/none/1.0/seed13 +../e54-boundary-faults/results/pendulum/none/1.0/seed14 +../e54-boundary-faults/results/pendulum/none/1.0/seed15 +../e54-boundary-faults/results/pendulum/none/1.0/seed16 +../e54-boundary-faults/results/pendulum/none/1.0/seed17 +../e54-boundary-faults/results/pendulum/none/1.0/seed18 +../e54-boundary-faults/results/pendulum/none/1.0/seed19 +../e54-boundary-faults/results/pendulum/none/1.0/seed2 +../e54-boundary-faults/results/pendulum/obs__f16/0.001/seed0 +../e54-boundary-faults/results/pendulum/obs__f16/0.001/seed1 +../e54-boundary-faults/results/pendulum/obs__f16/0.001/seed2 +../e54-boundary-faults/results/pendulum/obs__f16/0.01/seed0 +../e54-boundary-faults/results/pendulum/obs__f16/0.01/seed1 +../e54-boundary-faults/results/pendulum/obs__f16/0.01/seed2 +../e54-boundary-faults/results/pendulum/obs__f16/0.1/seed0 +../e54-boundary-faults/results/pendulum/obs__f16/0.1/seed1 +../e54-boundary-faults/results/pendulum/obs__f16/0.1/seed2 +../e54-boundary-faults/results/pendulum/obs__f16/1.0/seed0 +../e54-boundary-faults/results/pendulum/obs__f16/1.0/seed1 +../e54-boundary-faults/results/pendulum/obs__f16/1.0/seed2 +../e54-boundary-faults/results/pendulum/obs__f16/one/seed0 +../e54-boundary-faults/results/pendulum/obs__f16/one/seed1 +../e54-boundary-faults/results/pendulum/obs__f16/one/seed2 +../e54-boundary-faults/results/pendulum/obs__stale/0.001/seed0 +../e54-boundary-faults/results/pendulum/obs__stale/0.001/seed1 +../e54-boundary-faults/results/pendulum/obs__stale/0.001/seed2 +../e54-boundary-faults/results/pendulum/obs__stale/0.01/seed0 +../e54-boundary-faults/results/pendulum/obs__stale/0.01/seed1 +../e54-boundary-faults/results/pendulum/obs__stale/0.01/seed2 +../e54-boundary-faults/results/pendulum/obs__stale/0.1/seed0 +../e54-boundary-faults/results/pendulum/obs__stale/0.1/seed1 +../e54-boundary-faults/results/pendulum/obs__stale/0.1/seed2 +../e54-boundary-faults/results/pendulum/obs__stale/1.0/seed0 +../e54-boundary-faults/results/pendulum/obs__stale/1.0/seed1 +../e54-boundary-faults/results/pendulum/obs__stale/1.0/seed2 +../e54-boundary-faults/results/pendulum/obs__stale/one/seed0 +../e54-boundary-faults/results/pendulum/obs__stale/one/seed1 +../e54-boundary-faults/results/pendulum/obs__stale/one/seed2 +../e54-boundary-faults/results/pendulum/obs__swap/0.001/seed0 +../e54-boundary-faults/results/pendulum/obs__swap/0.001/seed1 +../e54-boundary-faults/results/pendulum/obs__swap/0.001/seed2 +../e54-boundary-faults/results/pendulum/obs__swap/0.01/seed0 +../e54-boundary-faults/results/pendulum/obs__swap/0.01/seed1 +../e54-boundary-faults/results/pendulum/obs__swap/0.01/seed2 +../e54-boundary-faults/results/pendulum/obs__swap/0.1/seed0 +../e54-boundary-faults/results/pendulum/obs__swap/0.1/seed1 +../e54-boundary-faults/results/pendulum/obs__swap/0.1/seed2 +../e54-boundary-faults/results/pendulum/obs__swap/1.0/seed0 +../e54-boundary-faults/results/pendulum/obs__swap/1.0/seed1 +../e54-boundary-faults/results/pendulum/obs__swap/1.0/seed2 +../e54-boundary-faults/results/pendulum/obs__swap/one/seed0 +../e54-boundary-faults/results/pendulum/obs__swap/one/seed1 +../e54-boundary-faults/results/pendulum/obs__swap/one/seed2 +../e54-boundary-faults/results/pendulum/obs__zero/0.001/seed0 +../e54-boundary-faults/results/pendulum/obs__zero/0.001/seed1 +../e54-boundary-faults/results/pendulum/obs__zero/0.001/seed2 +../e54-boundary-faults/results/pendulum/obs__zero/0.01/seed0 +../e54-boundary-faults/results/pendulum/obs__zero/0.01/seed1 +../e54-boundary-faults/results/pendulum/obs__zero/0.01/seed2 +../e54-boundary-faults/results/pendulum/obs__zero/0.1/seed0 +../e54-boundary-faults/results/pendulum/obs__zero/0.1/seed1 +../e54-boundary-faults/results/pendulum/obs__zero/0.1/seed2 +../e54-boundary-faults/results/pendulum/obs__zero/1.0/seed0 +../e54-boundary-faults/results/pendulum/obs__zero/1.0/seed1 +../e54-boundary-faults/results/pendulum/obs__zero/1.0/seed2 +../e54-boundary-faults/results/pendulum/obs__zero/one/seed0 +../e54-boundary-faults/results/pendulum/obs__zero/one/seed1 +../e54-boundary-faults/results/pendulum/obs__zero/one/seed2 +../e54-boundary-faults/results/pendulum/reward__f16/0.001/seed0 +../e54-boundary-faults/results/pendulum/reward__f16/0.001/seed1 +../e54-boundary-faults/results/pendulum/reward__f16/0.001/seed2 +../e54-boundary-faults/results/pendulum/reward__f16/0.01/seed0 +../e54-boundary-faults/results/pendulum/reward__f16/0.01/seed1 +../e54-boundary-faults/results/pendulum/reward__f16/0.01/seed2 +../e54-boundary-faults/results/pendulum/reward__f16/0.1/seed0 +../e54-boundary-faults/results/pendulum/reward__f16/0.1/seed1 +../e54-boundary-faults/results/pendulum/reward__f16/0.1/seed2 +../e54-boundary-faults/results/pendulum/reward__f16/1.0/seed0 +../e54-boundary-faults/results/pendulum/reward__f16/1.0/seed1 +../e54-boundary-faults/results/pendulum/reward__f16/1.0/seed2 +../e54-boundary-faults/results/pendulum/reward__f16/one/seed0 +../e54-boundary-faults/results/pendulum/reward__f16/one/seed1 +../e54-boundary-faults/results/pendulum/reward__f16/one/seed2 +../e54-boundary-faults/results/pendulum/reward__short-array/one/seed0 +../e54-boundary-faults/results/pendulum/reward__short-array/one/seed1 +../e54-boundary-faults/results/pendulum/reward__short-array/one/seed2 +../e54-boundary-faults/results/pendulum/reward__stale/0.001/seed0 +../e54-boundary-faults/results/pendulum/reward__stale/0.001/seed1 +../e54-boundary-faults/results/pendulum/reward__stale/0.001/seed2 +../e54-boundary-faults/results/pendulum/reward__stale/0.01/seed0 +../e54-boundary-faults/results/pendulum/reward__stale/0.01/seed1 +../e54-boundary-faults/results/pendulum/reward__stale/0.01/seed2 +../e54-boundary-faults/results/pendulum/reward__stale/0.1/seed0 +../e54-boundary-faults/results/pendulum/reward__stale/0.1/seed1 +../e54-boundary-faults/results/pendulum/reward__stale/0.1/seed2 +../e54-boundary-faults/results/pendulum/reward__stale/1.0/seed0 +../e54-boundary-faults/results/pendulum/reward__stale/1.0/seed1 +../e54-boundary-faults/results/pendulum/reward__stale/1.0/seed2 +../e54-boundary-faults/results/pendulum/reward__stale/one/seed0 +../e54-boundary-faults/results/pendulum/reward__stale/one/seed1 +../e54-boundary-faults/results/pendulum/reward__stale/one/seed2 +../e54-boundary-faults/results/pendulum/reward__swap/0.001/seed0 +../e54-boundary-faults/results/pendulum/reward__swap/0.001/seed1 +../e54-boundary-faults/results/pendulum/reward__swap/0.001/seed2 +../e54-boundary-faults/results/pendulum/reward__swap/0.01/seed0 +../e54-boundary-faults/results/pendulum/reward__swap/0.01/seed1 +../e54-boundary-faults/results/pendulum/reward__swap/0.01/seed2 +../e54-boundary-faults/results/pendulum/reward__swap/0.1/seed0 +../e54-boundary-faults/results/pendulum/reward__swap/0.1/seed1 +../e54-boundary-faults/results/pendulum/reward__swap/0.1/seed2 +../e54-boundary-faults/results/pendulum/reward__swap/1.0/seed0 +../e54-boundary-faults/results/pendulum/reward__swap/1.0/seed1 +../e54-boundary-faults/results/pendulum/reward__swap/1.0/seed2 +../e54-boundary-faults/results/pendulum/reward__swap/one/seed0 +../e54-boundary-faults/results/pendulum/reward__swap/one/seed1 +../e54-boundary-faults/results/pendulum/reward__swap/one/seed2 +../e54-boundary-faults/results/pendulum/reward__zero/0.001/seed0 +../e54-boundary-faults/results/pendulum/reward__zero/0.001/seed1 +../e54-boundary-faults/results/pendulum/reward__zero/0.001/seed2 +../e54-boundary-faults/results/pendulum/reward__zero/0.01/seed0 +../e54-boundary-faults/results/pendulum/reward__zero/0.01/seed1 +../e54-boundary-faults/results/pendulum/reward__zero/0.01/seed2 +../e54-boundary-faults/results/pendulum/reward__zero/0.1/seed0 +../e54-boundary-faults/results/pendulum/reward__zero/0.1/seed1 +../e54-boundary-faults/results/pendulum/reward__zero/0.1/seed2 +../e54-boundary-faults/results/pendulum/reward__zero/1.0/seed0 +../e54-boundary-faults/results/pendulum/reward__zero/1.0/seed1 +../e54-boundary-faults/results/pendulum/reward__zero/1.0/seed2 +../e54-boundary-faults/results/pendulum/reward__zero/one/seed0 +../e54-boundary-faults/results/pendulum/reward__zero/one/seed1 +../e54-boundary-faults/results/pendulum/reward__zero/one/seed2 +../e54-boundary-faults/results/pendulum/step__fill/0.001/seed0 +../e54-boundary-faults/results/pendulum/step__fill/0.001/seed1 +../e54-boundary-faults/results/pendulum/step__fill/0.001/seed2 +../e54-boundary-faults/results/pendulum/step__fill/0.01/seed0 +../e54-boundary-faults/results/pendulum/step__fill/0.01/seed1 +../e54-boundary-faults/results/pendulum/step__fill/0.01/seed2 +../e54-boundary-faults/results/pendulum/step__fill/0.1/seed0 +../e54-boundary-faults/results/pendulum/step__fill/0.1/seed1 +../e54-boundary-faults/results/pendulum/step__fill/0.1/seed2 +../e54-boundary-faults/results/pendulum/step__fill/1.0/seed0 +../e54-boundary-faults/results/pendulum/step__fill/1.0/seed1 +../e54-boundary-faults/results/pendulum/step__fill/1.0/seed2 +../e54-boundary-faults/results/pendulum/step__fill/one/seed0 +../e54-boundary-faults/results/pendulum/step__fill/one/seed1 +../e54-boundary-faults/results/pendulum/step__fill/one/seed2 +../e54-boundary-faults/results/pendulum/terminated__spurious/0.001/seed0 +../e54-boundary-faults/results/pendulum/terminated__spurious/0.001/seed1 +../e54-boundary-faults/results/pendulum/terminated__spurious/0.001/seed2 +../e54-boundary-faults/results/pendulum/terminated__spurious/0.01/seed0 +../e54-boundary-faults/results/pendulum/terminated__spurious/0.01/seed1 +../e54-boundary-faults/results/pendulum/terminated__spurious/0.01/seed2 +../e54-boundary-faults/results/pendulum/terminated__spurious/0.1/seed0 +../e54-boundary-faults/results/pendulum/terminated__spurious/0.1/seed1 +../e54-boundary-faults/results/pendulum/terminated__spurious/0.1/seed2 +../e54-boundary-faults/results/pendulum/terminated__spurious/1.0/seed0 +../e54-boundary-faults/results/pendulum/terminated__spurious/1.0/seed1 +../e54-boundary-faults/results/pendulum/terminated__spurious/1.0/seed2 +../e54-boundary-faults/results/pendulum/terminated__spurious/one/seed0 +../e54-boundary-faults/results/pendulum/terminated__spurious/one/seed1 +../e54-boundary-faults/results/pendulum/terminated__spurious/one/seed2 +../e54-boundary-faults/results/pendulum/truncated__as-term/0.001/seed0 +../e54-boundary-faults/results/pendulum/truncated__as-term/0.001/seed1 +../e54-boundary-faults/results/pendulum/truncated__as-term/0.001/seed2 +../e54-boundary-faults/results/pendulum/truncated__as-term/0.01/seed0 +../e54-boundary-faults/results/pendulum/truncated__as-term/0.01/seed1 +../e54-boundary-faults/results/pendulum/truncated__as-term/0.01/seed2 +../e54-boundary-faults/results/pendulum/truncated__as-term/0.1/seed0 +../e54-boundary-faults/results/pendulum/truncated__as-term/0.1/seed1 +../e54-boundary-faults/results/pendulum/truncated__as-term/0.1/seed2 +../e54-boundary-faults/results/pendulum/truncated__as-term/1.0/seed0 +../e54-boundary-faults/results/pendulum/truncated__as-term/1.0/seed1 +../e54-boundary-faults/results/pendulum/truncated__as-term/1.0/seed2 +../e54-boundary-faults/results/pendulum/truncated__as-term/one/seed0 +../e54-boundary-faults/results/pendulum/truncated__as-term/one/seed1 +../e54-boundary-faults/results/pendulum/truncated__as-term/one/seed2 +../e54-boundary-faults/results/pendulum/truncated__drop/0.001/seed0 +../e54-boundary-faults/results/pendulum/truncated__drop/0.001/seed1 +../e54-boundary-faults/results/pendulum/truncated__drop/0.001/seed2 +../e54-boundary-faults/results/pendulum/truncated__drop/0.01/seed0 +../e54-boundary-faults/results/pendulum/truncated__drop/0.01/seed1 +../e54-boundary-faults/results/pendulum/truncated__drop/0.01/seed2 +../e54-boundary-faults/results/pendulum/truncated__drop/0.1/seed0 +../e54-boundary-faults/results/pendulum/truncated__drop/0.1/seed1 +../e54-boundary-faults/results/pendulum/truncated__drop/0.1/seed2 +../e54-boundary-faults/results/pendulum/truncated__drop/1.0/seed0 +../e54-boundary-faults/results/pendulum/truncated__drop/1.0/seed1 +../e54-boundary-faults/results/pendulum/truncated__drop/1.0/seed2 +../e54-boundary-faults/results/pendulum/truncated__drop/one/seed0 +../e54-boundary-faults/results/pendulum/truncated__drop/one/seed1 +../e54-boundary-faults/results/pendulum/truncated__drop/one/seed2 +../e54-boundary-faults/results/pendulum/wire-float64/1.0/seed0 +../e54-boundary-faults/results/pendulum/wire-float64/1.0/seed1 +../e54-boundary-faults/results/pendulum/wire-float64/1.0/seed2 +../e56-hopper-faults/results/hopper/action__clip/0.01/seed0 +../e56-hopper-faults/results/hopper/action__clip/0.01/seed1 +../e56-hopper-faults/results/hopper/action__clip/0.01/seed2 +../e56-hopper-faults/results/hopper/action__clip/1.0/seed0 +../e56-hopper-faults/results/hopper/action__clip/1.0/seed1 +../e56-hopper-faults/results/hopper/action__clip/1.0/seed2 +../e56-hopper-faults/results/hopper/action__clip/one/seed0 +../e56-hopper-faults/results/hopper/action__clip/one/seed1 +../e56-hopper-faults/results/hopper/action__clip/one/seed2 +../e56-hopper-faults/results/hopper/action__f16/0.01/seed0 +../e56-hopper-faults/results/hopper/action__f16/0.01/seed1 +../e56-hopper-faults/results/hopper/action__f16/0.01/seed2 +../e56-hopper-faults/results/hopper/action__f16/1.0/seed0 +../e56-hopper-faults/results/hopper/action__f16/1.0/seed1 +../e56-hopper-faults/results/hopper/action__f16/1.0/seed2 +../e56-hopper-faults/results/hopper/action__f16/one/seed0 +../e56-hopper-faults/results/hopper/action__f16/one/seed1 +../e56-hopper-faults/results/hopper/action__f16/one/seed2 +../e56-hopper-faults/results/hopper/action__stale/0.01/seed0 +../e56-hopper-faults/results/hopper/action__stale/0.01/seed1 +../e56-hopper-faults/results/hopper/action__stale/0.01/seed2 +../e56-hopper-faults/results/hopper/action__stale/1.0/seed0 +../e56-hopper-faults/results/hopper/action__stale/1.0/seed1 +../e56-hopper-faults/results/hopper/action__stale/1.0/seed2 +../e56-hopper-faults/results/hopper/action__stale/one/seed0 +../e56-hopper-faults/results/hopper/action__stale/one/seed1 +../e56-hopper-faults/results/hopper/action__stale/one/seed2 +../e56-hopper-faults/results/hopper/action__swap/0.01/seed0 +../e56-hopper-faults/results/hopper/action__swap/0.01/seed1 +../e56-hopper-faults/results/hopper/action__swap/0.01/seed2 +../e56-hopper-faults/results/hopper/action__swap/1.0/seed0 +../e56-hopper-faults/results/hopper/action__swap/1.0/seed1 +../e56-hopper-faults/results/hopper/action__swap/1.0/seed2 +../e56-hopper-faults/results/hopper/action__swap/one/seed0 +../e56-hopper-faults/results/hopper/action__swap/one/seed1 +../e56-hopper-faults/results/hopper/action__swap/one/seed2 +../e56-hopper-faults/results/hopper/action__zero/0.01/seed0 +../e56-hopper-faults/results/hopper/action__zero/0.01/seed1 +../e56-hopper-faults/results/hopper/action__zero/0.01/seed2 +../e56-hopper-faults/results/hopper/action__zero/1.0/seed0 +../e56-hopper-faults/results/hopper/action__zero/1.0/seed1 +../e56-hopper-faults/results/hopper/action__zero/1.0/seed2 +../e56-hopper-faults/results/hopper/action__zero/one/seed0 +../e56-hopper-faults/results/hopper/action__zero/one/seed1 +../e56-hopper-faults/results/hopper/action__zero/one/seed2 +../e56-hopper-faults/results/hopper/delay-1ms/1.0/seed0 +../e56-hopper-faults/results/hopper/delay-1ms/1.0/seed1 +../e56-hopper-faults/results/hopper/delay-1ms/1.0/seed2 +../e56-hopper-faults/results/hopper/final-obs__f16/0.01/seed0 +../e56-hopper-faults/results/hopper/final-obs__f16/0.01/seed1 +../e56-hopper-faults/results/hopper/final-obs__f16/0.01/seed2 +../e56-hopper-faults/results/hopper/final-obs__f16/1.0/seed0 +../e56-hopper-faults/results/hopper/final-obs__f16/1.0/seed1 +../e56-hopper-faults/results/hopper/final-obs__f16/1.0/seed2 +../e56-hopper-faults/results/hopper/final-obs__f16/one/seed0 +../e56-hopper-faults/results/hopper/final-obs__f16/one/seed1 +../e56-hopper-faults/results/hopper/final-obs__f16/one/seed2 +../e56-hopper-faults/results/hopper/final-obs__stale/0.01/seed0 +../e56-hopper-faults/results/hopper/final-obs__stale/0.01/seed1 +../e56-hopper-faults/results/hopper/final-obs__stale/0.01/seed2 +../e56-hopper-faults/results/hopper/final-obs__stale/1.0/seed0 +../e56-hopper-faults/results/hopper/final-obs__stale/1.0/seed1 +../e56-hopper-faults/results/hopper/final-obs__stale/1.0/seed2 +../e56-hopper-faults/results/hopper/final-obs__stale/one/seed0 +../e56-hopper-faults/results/hopper/final-obs__stale/one/seed1 +../e56-hopper-faults/results/hopper/final-obs__stale/one/seed2 +../e56-hopper-faults/results/hopper/final-obs__swap/0.01/seed0 +../e56-hopper-faults/results/hopper/final-obs__swap/0.01/seed1 +../e56-hopper-faults/results/hopper/final-obs__swap/0.01/seed2 +../e56-hopper-faults/results/hopper/final-obs__swap/1.0/seed0 +../e56-hopper-faults/results/hopper/final-obs__swap/1.0/seed1 +../e56-hopper-faults/results/hopper/final-obs__swap/1.0/seed2 +../e56-hopper-faults/results/hopper/final-obs__swap/one/seed0 +../e56-hopper-faults/results/hopper/final-obs__swap/one/seed1 +../e56-hopper-faults/results/hopper/final-obs__swap/one/seed2 +../e56-hopper-faults/results/hopper/final-obs__zero/0.01/seed0 +../e56-hopper-faults/results/hopper/final-obs__zero/0.01/seed1 +../e56-hopper-faults/results/hopper/final-obs__zero/0.01/seed2 +../e56-hopper-faults/results/hopper/final-obs__zero/1.0/seed0 +../e56-hopper-faults/results/hopper/final-obs__zero/1.0/seed1 +../e56-hopper-faults/results/hopper/final-obs__zero/1.0/seed2 +../e56-hopper-faults/results/hopper/final-obs__zero/one/seed0 +../e56-hopper-faults/results/hopper/final-obs__zero/one/seed1 +../e56-hopper-faults/results/hopper/final-obs__zero/one/seed2 +../e56-hopper-faults/results/hopper/log__drop-first/0.01/seed0 +../e56-hopper-faults/results/hopper/log__drop-first/0.01/seed1 +../e56-hopper-faults/results/hopper/log__drop-first/0.01/seed2 +../e56-hopper-faults/results/hopper/log__drop-first/1.0/seed0 +../e56-hopper-faults/results/hopper/log__drop-first/1.0/seed1 +../e56-hopper-faults/results/hopper/log__drop-first/1.0/seed2 +../e56-hopper-faults/results/hopper/log__drop-first/one/seed0 +../e56-hopper-faults/results/hopper/log__drop-first/one/seed1 +../e56-hopper-faults/results/hopper/log__drop-first/one/seed2 +../e56-hopper-faults/results/hopper/log__short/0.01/seed0 +../e56-hopper-faults/results/hopper/log__short/0.01/seed1 +../e56-hopper-faults/results/hopper/log__short/0.01/seed2 +../e56-hopper-faults/results/hopper/log__short/1.0/seed0 +../e56-hopper-faults/results/hopper/log__short/1.0/seed1 +../e56-hopper-faults/results/hopper/log__short/1.0/seed2 +../e56-hopper-faults/results/hopper/log__short/one/seed0 +../e56-hopper-faults/results/hopper/log__short/one/seed1 +../e56-hopper-faults/results/hopper/log__short/one/seed2 +../e56-hopper-faults/results/hopper/none/1.0/seed0 +../e56-hopper-faults/results/hopper/none/1.0/seed1 +../e56-hopper-faults/results/hopper/none/1.0/seed10 +../e56-hopper-faults/results/hopper/none/1.0/seed11 +../e56-hopper-faults/results/hopper/none/1.0/seed12 +../e56-hopper-faults/results/hopper/none/1.0/seed13 +../e56-hopper-faults/results/hopper/none/1.0/seed14 +../e56-hopper-faults/results/hopper/none/1.0/seed15 +../e56-hopper-faults/results/hopper/none/1.0/seed16 +../e56-hopper-faults/results/hopper/none/1.0/seed17 +../e56-hopper-faults/results/hopper/none/1.0/seed18 +../e56-hopper-faults/results/hopper/none/1.0/seed19 +../e56-hopper-faults/results/hopper/none/1.0/seed2 +../e56-hopper-faults/results/hopper/obs__f16/0.01/seed0 +../e56-hopper-faults/results/hopper/obs__f16/0.01/seed1 +../e56-hopper-faults/results/hopper/obs__f16/0.01/seed2 +../e56-hopper-faults/results/hopper/obs__f16/1.0/seed0 +../e56-hopper-faults/results/hopper/obs__f16/1.0/seed1 +../e56-hopper-faults/results/hopper/obs__f16/1.0/seed2 +../e56-hopper-faults/results/hopper/obs__f16/one/seed0 +../e56-hopper-faults/results/hopper/obs__f16/one/seed1 +../e56-hopper-faults/results/hopper/obs__f16/one/seed2 +../e56-hopper-faults/results/hopper/obs__stale/0.01/seed0 +../e56-hopper-faults/results/hopper/obs__stale/0.01/seed1 +../e56-hopper-faults/results/hopper/obs__stale/0.01/seed2 +../e56-hopper-faults/results/hopper/obs__stale/1.0/seed0 +../e56-hopper-faults/results/hopper/obs__stale/1.0/seed1 +../e56-hopper-faults/results/hopper/obs__stale/1.0/seed2 +../e56-hopper-faults/results/hopper/obs__stale/one/seed0 +../e56-hopper-faults/results/hopper/obs__stale/one/seed1 +../e56-hopper-faults/results/hopper/obs__stale/one/seed2 +../e56-hopper-faults/results/hopper/obs__swap/0.01/seed0 +../e56-hopper-faults/results/hopper/obs__swap/0.01/seed1 +../e56-hopper-faults/results/hopper/obs__swap/0.01/seed2 +../e56-hopper-faults/results/hopper/obs__swap/1.0/seed0 +../e56-hopper-faults/results/hopper/obs__swap/1.0/seed1 +../e56-hopper-faults/results/hopper/obs__swap/1.0/seed2 +../e56-hopper-faults/results/hopper/obs__swap/one/seed0 +../e56-hopper-faults/results/hopper/obs__swap/one/seed1 +../e56-hopper-faults/results/hopper/obs__swap/one/seed2 +../e56-hopper-faults/results/hopper/obs__zero/0.01/seed0 +../e56-hopper-faults/results/hopper/obs__zero/0.01/seed1 +../e56-hopper-faults/results/hopper/obs__zero/0.01/seed2 +../e56-hopper-faults/results/hopper/obs__zero/1.0/seed0 +../e56-hopper-faults/results/hopper/obs__zero/1.0/seed1 +../e56-hopper-faults/results/hopper/obs__zero/1.0/seed2 +../e56-hopper-faults/results/hopper/obs__zero/one/seed0 +../e56-hopper-faults/results/hopper/obs__zero/one/seed1 +../e56-hopper-faults/results/hopper/obs__zero/one/seed2 +../e56-hopper-faults/results/hopper/reward__f16/0.01/seed0 +../e56-hopper-faults/results/hopper/reward__f16/0.01/seed1 +../e56-hopper-faults/results/hopper/reward__f16/0.01/seed2 +../e56-hopper-faults/results/hopper/reward__f16/1.0/seed0 +../e56-hopper-faults/results/hopper/reward__f16/1.0/seed1 +../e56-hopper-faults/results/hopper/reward__f16/1.0/seed2 +../e56-hopper-faults/results/hopper/reward__f16/one/seed0 +../e56-hopper-faults/results/hopper/reward__f16/one/seed1 +../e56-hopper-faults/results/hopper/reward__f16/one/seed2 +../e56-hopper-faults/results/hopper/reward__stale/0.01/seed0 +../e56-hopper-faults/results/hopper/reward__stale/0.01/seed1 +../e56-hopper-faults/results/hopper/reward__stale/0.01/seed2 +../e56-hopper-faults/results/hopper/reward__stale/1.0/seed0 +../e56-hopper-faults/results/hopper/reward__stale/1.0/seed1 +../e56-hopper-faults/results/hopper/reward__stale/1.0/seed2 +../e56-hopper-faults/results/hopper/reward__stale/one/seed0 +../e56-hopper-faults/results/hopper/reward__stale/one/seed1 +../e56-hopper-faults/results/hopper/reward__stale/one/seed2 +../e56-hopper-faults/results/hopper/reward__swap/0.01/seed0 +../e56-hopper-faults/results/hopper/reward__swap/0.01/seed1 +../e56-hopper-faults/results/hopper/reward__swap/0.01/seed2 +../e56-hopper-faults/results/hopper/reward__swap/1.0/seed0 +../e56-hopper-faults/results/hopper/reward__swap/1.0/seed1 +../e56-hopper-faults/results/hopper/reward__swap/1.0/seed2 +../e56-hopper-faults/results/hopper/reward__swap/one/seed0 +../e56-hopper-faults/results/hopper/reward__swap/one/seed1 +../e56-hopper-faults/results/hopper/reward__swap/one/seed2 +../e56-hopper-faults/results/hopper/reward__zero/0.01/seed0 +../e56-hopper-faults/results/hopper/reward__zero/0.01/seed1 +../e56-hopper-faults/results/hopper/reward__zero/0.01/seed2 +../e56-hopper-faults/results/hopper/reward__zero/1.0/seed0 +../e56-hopper-faults/results/hopper/reward__zero/1.0/seed1 +../e56-hopper-faults/results/hopper/reward__zero/1.0/seed2 +../e56-hopper-faults/results/hopper/reward__zero/one/seed0 +../e56-hopper-faults/results/hopper/reward__zero/one/seed1 +../e56-hopper-faults/results/hopper/reward__zero/one/seed2 +../e56-hopper-faults/results/hopper/step__fill/0.01/seed0 +../e56-hopper-faults/results/hopper/step__fill/0.01/seed1 +../e56-hopper-faults/results/hopper/step__fill/0.01/seed2 +../e56-hopper-faults/results/hopper/step__fill/1.0/seed0 +../e56-hopper-faults/results/hopper/step__fill/1.0/seed1 +../e56-hopper-faults/results/hopper/step__fill/1.0/seed2 +../e56-hopper-faults/results/hopper/step__fill/one/seed0 +../e56-hopper-faults/results/hopper/step__fill/one/seed1 +../e56-hopper-faults/results/hopper/step__fill/one/seed2 +../e56-hopper-faults/results/hopper/terminated__as-trunc/0.01/seed0 +../e56-hopper-faults/results/hopper/terminated__as-trunc/0.01/seed1 +../e56-hopper-faults/results/hopper/terminated__as-trunc/0.01/seed2 +../e56-hopper-faults/results/hopper/terminated__as-trunc/1.0/seed0 +../e56-hopper-faults/results/hopper/terminated__as-trunc/1.0/seed1 +../e56-hopper-faults/results/hopper/terminated__as-trunc/1.0/seed2 +../e56-hopper-faults/results/hopper/terminated__as-trunc/one/seed0 +../e56-hopper-faults/results/hopper/terminated__as-trunc/one/seed1 +../e56-hopper-faults/results/hopper/terminated__as-trunc/one/seed2 +../e56-hopper-faults/results/hopper/terminated__drop/0.01/seed0 +../e56-hopper-faults/results/hopper/terminated__drop/0.01/seed1 +../e56-hopper-faults/results/hopper/terminated__drop/0.01/seed2 +../e56-hopper-faults/results/hopper/terminated__drop/1.0/seed0 +../e56-hopper-faults/results/hopper/terminated__drop/1.0/seed1 +../e56-hopper-faults/results/hopper/terminated__drop/1.0/seed2 +../e56-hopper-faults/results/hopper/terminated__drop/one/seed0 +../e56-hopper-faults/results/hopper/terminated__drop/one/seed1 +../e56-hopper-faults/results/hopper/terminated__drop/one/seed2 +../e56-hopper-faults/results/hopper/terminated__spurious/0.01/seed0 +../e56-hopper-faults/results/hopper/terminated__spurious/0.01/seed1 +../e56-hopper-faults/results/hopper/terminated__spurious/0.01/seed2 +../e56-hopper-faults/results/hopper/terminated__spurious/1.0/seed0 +../e56-hopper-faults/results/hopper/terminated__spurious/1.0/seed1 +../e56-hopper-faults/results/hopper/terminated__spurious/1.0/seed2 +../e56-hopper-faults/results/hopper/terminated__spurious/one/seed0 +../e56-hopper-faults/results/hopper/terminated__spurious/one/seed1 +../e56-hopper-faults/results/hopper/terminated__spurious/one/seed2 +../e56-hopper-faults/results/hopper/truncated__as-term/0.01/seed0 +../e56-hopper-faults/results/hopper/truncated__as-term/0.01/seed1 +../e56-hopper-faults/results/hopper/truncated__as-term/0.01/seed2 +../e56-hopper-faults/results/hopper/truncated__as-term/1.0/seed0 +../e56-hopper-faults/results/hopper/truncated__as-term/1.0/seed1 +../e56-hopper-faults/results/hopper/truncated__as-term/1.0/seed2 +../e56-hopper-faults/results/hopper/truncated__as-term/one/seed0 +../e56-hopper-faults/results/hopper/truncated__as-term/one/seed1 +../e56-hopper-faults/results/hopper/truncated__as-term/one/seed2 +../e56-hopper-faults/results/hopper/truncated__drop/0.01/seed0 +../e56-hopper-faults/results/hopper/truncated__drop/0.01/seed1 +../e56-hopper-faults/results/hopper/truncated__drop/0.01/seed2 +../e56-hopper-faults/results/hopper/truncated__drop/1.0/seed0 +../e56-hopper-faults/results/hopper/truncated__drop/1.0/seed1 +../e56-hopper-faults/results/hopper/truncated__drop/1.0/seed2 +../e56-hopper-faults/results/hopper/truncated__drop/one/seed0 +../e56-hopper-faults/results/hopper/truncated__drop/one/seed1 +../e56-hopper-faults/results/hopper/truncated__drop/one/seed2 +../e56-hopper-faults/results/hopper/wire-float64/1.0/seed0 +../e56-hopper-faults/results/hopper/wire-float64/1.0/seed1 +../e56-hopper-faults/results/hopper/wire-float64/1.0/seed2 diff --git a/experiments/e57-clean-eval/results/load.txt b/experiments/e57-clean-eval/results/load.txt new file mode 100644 index 0000000..9aebb6d --- /dev/null +++ b/experiments/e57-clean-eval/results/load.txt @@ -0,0 +1,2 @@ + 00:16:58 up 28 days, 13:18, 1 user, load average: 0.37, 0.25, 0.31 + 00:22:43 up 28 days, 13:24, 1 user, load average: 12.06, 8.48, 4.03 diff --git a/experiments/e57-clean-eval/results/registered.out b/experiments/e57-clean-eval/results/registered.out new file mode 100644 index 0000000..9c35597 --- /dev/null +++ b/experiments/e57-clean-eval/results/registered.out @@ -0,0 +1,3 @@ + 00:16:58 up 28 days, 13:18, 1 user, load average: 0.37, 0.25, 0.31 +834 runs, 12 at a time +E57_DONE diff --git a/experiments/e57-clean-eval/results/summary.txt b/experiments/e57-clean-eval/results/summary.txt new file mode 100644 index 0000000..50a52b0 --- /dev/null +++ b/experiments/e57-clean-eval/results/summary.txt @@ -0,0 +1,29 @@ +halfcheetah: band (none, seeds 10-19) mean 852.6 sd 202.5 n 10; harm bar 245.1; band seeds flagged against the other nine: 0 of 10 +hopper: band (none, seeds 10-19) mean 2717.4 sd 857.0 n 10; harm bar 146.5; band seeds flagged against the other nine: 0 of 10 +pendulum: band (none, seeds 10-19) mean -185.9 sd 26.1 n 10; harm bar -264.1; band seeds flagged against the other nine: 0 of 10 + +boundary-fault runs, seeds 0-2: harmed / runs; harmed among those silent on the curve + halfcheetah one harmed 0/63 silent on the curve 60, of them harmed 0 + halfcheetah 0.01 harmed 0/63 silent on the curve 57, of them harmed 0 + halfcheetah 1.0 harmed 28/63 silent on the curve 31, of them harmed 0 + hopper one harmed 0/69 silent on the curve 69, of them harmed 0 + hopper 0.01 harmed 0/69 silent on the curve 66, of them harmed 0 + hopper 1.0 harmed 19/69 silent on the curve 35, of them harmed 0 + pendulum one harmed 1/63 silent on the curve 63, of them harmed 1 + pendulum 0.001 harmed 2/63 silent on the curve 58, of them harmed 1 + pendulum 0.01 harmed 1/63 silent on the curve 59, of them harmed 1 + pendulum 0.1 harmed 6/63 silent on the curve 50, of them harmed 2 + pendulum 1.0 harmed 24/63 silent on the curve 25, of them harmed 0 + +faults silent on the curve at all three seeds and harmed at two or more (fault, dose: clean returns) + +log error (logged final return - clean return): min / median / max by kind + halfcheetah control n 13 -479.1 -410.4 126.6 + halfcheetah boundary n 177 -1034.8 -377.7 1521.1 + halfcheetah log n 18 -441.1 -331.5 -259.1 + hopper control n 19 -1666.7 -439.8 805.9 + hopper boundary n 201 -1959.9 -1129.5 1162.5 + hopper log n 18 -1667.7 -333.4 489.1 + pendulum control n 19 -70.0 -35.2 33.3 + pendulum boundary n 309 -450.6 -29.0 1639.4 + pendulum log n 30 -70.0 -34.2 4.0 diff --git a/experiments/e57-clean-eval/results/verdicts.txt b/experiments/e57-clean-eval/results/verdicts.txt new file mode 100644 index 0000000..48b04ee --- /dev/null +++ b/experiments/e57-clean-eval/results/verdicts.txt @@ -0,0 +1,6 @@ +V1: holds - 834 evaluations of 834 runs, 834 with 50 episodes +V2: holds - 12 weights shared by two or more runs; 0 with differing clean returns [] +P1: holds - band seeds flagged: {'halfcheetah': 0, 'hopper': 0, 'pendulum': 0} +P2: holds - harmed at one value (harmed, runs): {'halfcheetah': (0, 63), 'hopper': (0, 69), 'pendulum': (1, 63)} +P3: holds - pendulum reward:zero 1.0: [(0, -1195.55, '0.0', 1), (1, -1549.63, '0.0', 1), (2, -1639.38, '0.0', 1)] +reported: hopper obs:f16 1.0 (seed, clean, harmed, silent on the curve): [(0, 1505.25, 0, '1'), (1, 3588.14, 0, '1'), (2, 3592.49, 0, '1')] diff --git a/experiments/e57-clean-eval/summarise.py b/experiments/e57-clean-eval/summarise.py index c18dc1a..8df63c3 100644 --- a/experiments/e57-clean-eval/summarise.py +++ b/experiments/e57-clean-eval/summarise.py @@ -40,7 +40,8 @@ def load(root: pathlib.Path) -> list[dict]: rows.append(dict( env=d["env"], fault=d["fault"], dose=d["dose"], seed=int(d["seed"]), kind=kind(d["fault"]), episodes=d["episodes"], clean=round(d["mean"], 2), sha=d["weights_sha256"][:8], - rule=int(t["rule"]), strict=int(t["strict"]), + # The loud faults' runs have no `strict` (no return was logged); see AMENDMENT.md. + rule=int(t["rule"]) if t["rule"] else None, strict=int(t["strict"]) if t["strict"] else None, last=float(t["last"]) if t["last"] else None, )) return rows