First Try
Browse files- README.md +29 -0
- SnowballTarget.onnx +3 -0
- SnowballTarget/SnowballTarget-149984.onnx +3 -0
- SnowballTarget/SnowballTarget-149984.pt +3 -0
- SnowballTarget/SnowballTarget-199984.onnx +3 -0
- SnowballTarget/SnowballTarget-199984.pt +3 -0
- SnowballTarget/SnowballTarget-200112.onnx +3 -0
- SnowballTarget/SnowballTarget-200112.pt +3 -0
- SnowballTarget/SnowballTarget-249944.onnx +3 -0
- SnowballTarget/SnowballTarget-249944.pt +3 -0
- SnowballTarget/SnowballTarget-299968.onnx +3 -0
- SnowballTarget/SnowballTarget-299968.pt +3 -0
- SnowballTarget/SnowballTarget-349992.onnx +3 -0
- SnowballTarget/SnowballTarget-349992.pt +3 -0
- SnowballTarget/SnowballTarget-399992.onnx +3 -0
- SnowballTarget/SnowballTarget-399992.pt +3 -0
- SnowballTarget/SnowballTarget-400312.onnx +3 -0
- SnowballTarget/SnowballTarget-400312.pt +3 -0
- SnowballTarget/SnowballTarget-49936.onnx +3 -0
- SnowballTarget/SnowballTarget-49936.pt +3 -0
- SnowballTarget/SnowballTarget-99960.onnx +3 -0
- SnowballTarget/SnowballTarget-99960.pt +3 -0
- SnowballTarget/checkpoint.pt +3 -0
- SnowballTarget/events.out.tfevents.1679250876.0cf92822df4f.7419.0 +3 -0
- config.json +1 -0
- configuration.yaml +77 -0
- run_logs/Player-0.log +259 -0
- run_logs/timers.json +377 -0
- run_logs/training_status.json +101 -0
README.md
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
library_name: ml-agents
|
| 3 |
+
tags:
|
| 4 |
+
- SnowballTarget
|
| 5 |
+
- deep-reinforcement-learning
|
| 6 |
+
- reinforcement-learning
|
| 7 |
+
- ML-Agents-SnowballTarget
|
| 8 |
+
---
|
| 9 |
+
|
| 10 |
+
# **ppo** Agent playing **SnowballTarget**
|
| 11 |
+
This is a trained model of a **ppo** agent playing **SnowballTarget** using the [Unity ML-Agents Library](https://github.com/Unity-Technologies/ml-agents).
|
| 12 |
+
|
| 13 |
+
## Usage (with ML-Agents)
|
| 14 |
+
The Documentation: https://github.com/huggingface/ml-agents#get-started
|
| 15 |
+
We wrote a complete tutorial to learn to train your first agent using ML-Agents and publish it to the Hub:
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
### Resume the training
|
| 19 |
+
```
|
| 20 |
+
mlagents-learn <your_configuration_file_path.yaml> --run-id=<run_id> --resume
|
| 21 |
+
```
|
| 22 |
+
### Watch your Agent play
|
| 23 |
+
You can watch your agent **playing directly in your browser:**.
|
| 24 |
+
|
| 25 |
+
1. Go to https://huggingface.co/spaces/unity/ML-Agents-SnowballTarget
|
| 26 |
+
2. Step 1: Find your model_id: janzw/ppo-SnowballTarget1
|
| 27 |
+
3. Step 2: Select your *.nn /*.onnx file
|
| 28 |
+
4. Click on Watch the agent play 👀
|
| 29 |
+
|
SnowballTarget.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:ebd5a82c2736532a7bf46840d6ac33e19da99845c040bc3443d40822a18cd023
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-149984.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d5e4df01bcafd8440982f21f990fe2e99ed8df1313d53b9711c550326828b01c
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-149984.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:82e756e9b0ff145e7d6020c057c5c9303595d937a3770a021ffe04c574dc7e73
|
| 3 |
+
size 3843968
|
SnowballTarget/SnowballTarget-199984.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:69fcfd5ec3b52f66818bdf72d4415d0458a32293cba39b5a42d8cf7eae3b86bd
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-199984.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:c1050d004c2ce00d207eafafa6c0bffa437cc3c87481a5d37af8e59fdc2f37d4
|
| 3 |
+
size 3843968
|
SnowballTarget/SnowballTarget-200112.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:8b8751b493c6f1eca779a9a2dfdafb97117e5df95ed92d80ca695814ad329f57
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-200112.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:6cf134c3625ad5515a303905b11ccaee8fdc77cc97c09625f166354b8a6b5924
|
| 3 |
+
size 3843968
|
SnowballTarget/SnowballTarget-249944.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4fa2fcac4127a10e394101ddb2541b8e6e9287335e6959440a41a1e36b572f48
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-249944.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:84ddff62d453ed4cc1ef2c7055bae9924ddd86e13f4f6573025fbe13857832ab
|
| 3 |
+
size 3843968
|
SnowballTarget/SnowballTarget-299968.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d4079c48ffe08bbe47037f1df61cc6557f81542809e111033b9d75301a315373
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-299968.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:3f63f65c4244b615dd6fb1754a986d2573b632ae48e4e2543ef4c2ea48603071
|
| 3 |
+
size 3843968
|
SnowballTarget/SnowballTarget-349992.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:ba9ed2a359c5a5c78fb65c52cd8bb4bcd28e8b8ceeed2a0f0865bbbaa352c624
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-349992.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:30fe25fd13b68aa7558fab2f7c62bc5d6e628fea8e41835383fba622bc10090b
|
| 3 |
+
size 3843968
|
SnowballTarget/SnowballTarget-399992.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:ebd5a82c2736532a7bf46840d6ac33e19da99845c040bc3443d40822a18cd023
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-399992.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:3911f1dd1aa222c777672d221de87d178b4be08d38309016c092b778637c54eb
|
| 3 |
+
size 3843968
|
SnowballTarget/SnowballTarget-400312.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:ebd5a82c2736532a7bf46840d6ac33e19da99845c040bc3443d40822a18cd023
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-400312.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:acfec05e1b1b9cff98b60b8b5f526c0bc701b2a7c50ed51de8a8b20398e081bc
|
| 3 |
+
size 3843968
|
SnowballTarget/SnowballTarget-49936.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:eb6e53b75d5a658444abce29297416b7c63697e586613fa3b57db3610c5c5a4f
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-49936.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:45ca2e94d80af7cc5d578681616e33811bafd35a3059ca812833bdc698c002d3
|
| 3 |
+
size 3843968
|
SnowballTarget/SnowballTarget-99960.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:0c3b9ff6b93b4359e320b12c549a21254b4a892a709dd6d66fa30ba95eb509bf
|
| 3 |
+
size 646532
|
SnowballTarget/SnowballTarget-99960.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:432af3311c413a26a5bf7ee0d8cfd4df4a813262e06673f101e0bfe630e38bbb
|
| 3 |
+
size 3843968
|
SnowballTarget/checkpoint.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:acfec05e1b1b9cff98b60b8b5f526c0bc701b2a7c50ed51de8a8b20398e081bc
|
| 3 |
+
size 3843968
|
SnowballTarget/events.out.tfevents.1679250876.0cf92822df4f.7419.0
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:092c5cf5a98d8fd450db92888e22238fa5a219e86ad0fd4a6211556e62f7a013
|
| 3 |
+
size 39872
|
config.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"default_settings": null, "behaviors": {"SnowballTarget": {"trainer_type": "ppo", "hyperparameters": {"batch_size": 128, "buffer_size": 2048, "learning_rate": 0.0003, "beta": 0.005, "epsilon": 0.2, "lambd": 0.95, "num_epoch": 3, "shared_critic": false, "learning_rate_schedule": "linear", "beta_schedule": "linear", "epsilon_schedule": "linear"}, "checkpoint_interval": 50000, "network_settings": {"normalize": false, "hidden_units": 256, "num_layers": 2, "vis_encode_type": "simple", "memory": null, "goal_conditioning_type": "hyper", "deterministic": false}, "reward_signals": {"extrinsic": {"gamma": 0.99, "strength": 1.0, "network_settings": {"normalize": false, "hidden_units": 128, "num_layers": 2, "vis_encode_type": "simple", "memory": null, "goal_conditioning_type": "hyper", "deterministic": false}}}, "init_path": null, "keep_checkpoints": 10, "even_checkpoints": false, "max_steps": 400000, "time_horizon": 64, "summary_freq": 10000, "threaded": true, "self_play": null, "behavioral_cloning": null}}, "env_settings": {"env_path": "./training-envs-executables/linux/SnowballTarget/SnowballTarget", "env_args": null, "base_port": 5005, "num_envs": 1, "num_areas": 1, "seed": -1, "max_lifetime_restarts": 10, "restarts_rate_limit_n": 1, "restarts_rate_limit_period_s": 60}, "engine_settings": {"width": 84, "height": 84, "quality_level": 5, "time_scale": 20, "target_frame_rate": -1, "capture_frame_rate": 60, "no_graphics": true}, "environment_parameters": null, "checkpoint_settings": {"run_id": "SnowballTarget1", "initialize_from": null, "load_model": false, "resume": false, "force": true, "train_model": false, "inference": false, "results_dir": "results"}, "torch_settings": {"device": null}, "debug": false}
|
configuration.yaml
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
default_settings: null
|
| 2 |
+
behaviors:
|
| 3 |
+
SnowballTarget:
|
| 4 |
+
trainer_type: ppo
|
| 5 |
+
hyperparameters:
|
| 6 |
+
batch_size: 128
|
| 7 |
+
buffer_size: 2048
|
| 8 |
+
learning_rate: 0.0003
|
| 9 |
+
beta: 0.005
|
| 10 |
+
epsilon: 0.2
|
| 11 |
+
lambd: 0.95
|
| 12 |
+
num_epoch: 3
|
| 13 |
+
shared_critic: false
|
| 14 |
+
learning_rate_schedule: linear
|
| 15 |
+
beta_schedule: linear
|
| 16 |
+
epsilon_schedule: linear
|
| 17 |
+
checkpoint_interval: 50000
|
| 18 |
+
network_settings:
|
| 19 |
+
normalize: false
|
| 20 |
+
hidden_units: 256
|
| 21 |
+
num_layers: 2
|
| 22 |
+
vis_encode_type: simple
|
| 23 |
+
memory: null
|
| 24 |
+
goal_conditioning_type: hyper
|
| 25 |
+
deterministic: false
|
| 26 |
+
reward_signals:
|
| 27 |
+
extrinsic:
|
| 28 |
+
gamma: 0.99
|
| 29 |
+
strength: 1.0
|
| 30 |
+
network_settings:
|
| 31 |
+
normalize: false
|
| 32 |
+
hidden_units: 128
|
| 33 |
+
num_layers: 2
|
| 34 |
+
vis_encode_type: simple
|
| 35 |
+
memory: null
|
| 36 |
+
goal_conditioning_type: hyper
|
| 37 |
+
deterministic: false
|
| 38 |
+
init_path: null
|
| 39 |
+
keep_checkpoints: 10
|
| 40 |
+
even_checkpoints: false
|
| 41 |
+
max_steps: 400000
|
| 42 |
+
time_horizon: 64
|
| 43 |
+
summary_freq: 10000
|
| 44 |
+
threaded: true
|
| 45 |
+
self_play: null
|
| 46 |
+
behavioral_cloning: null
|
| 47 |
+
env_settings:
|
| 48 |
+
env_path: ./training-envs-executables/linux/SnowballTarget/SnowballTarget
|
| 49 |
+
env_args: null
|
| 50 |
+
base_port: 5005
|
| 51 |
+
num_envs: 1
|
| 52 |
+
num_areas: 1
|
| 53 |
+
seed: -1
|
| 54 |
+
max_lifetime_restarts: 10
|
| 55 |
+
restarts_rate_limit_n: 1
|
| 56 |
+
restarts_rate_limit_period_s: 60
|
| 57 |
+
engine_settings:
|
| 58 |
+
width: 84
|
| 59 |
+
height: 84
|
| 60 |
+
quality_level: 5
|
| 61 |
+
time_scale: 20
|
| 62 |
+
target_frame_rate: -1
|
| 63 |
+
capture_frame_rate: 60
|
| 64 |
+
no_graphics: true
|
| 65 |
+
environment_parameters: null
|
| 66 |
+
checkpoint_settings:
|
| 67 |
+
run_id: SnowballTarget1
|
| 68 |
+
initialize_from: null
|
| 69 |
+
load_model: false
|
| 70 |
+
resume: false
|
| 71 |
+
force: true
|
| 72 |
+
train_model: false
|
| 73 |
+
inference: false
|
| 74 |
+
results_dir: results
|
| 75 |
+
torch_settings:
|
| 76 |
+
device: null
|
| 77 |
+
debug: false
|
run_logs/Player-0.log
ADDED
|
@@ -0,0 +1,259 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Mono path[0] = '/content/ml-agents/training-envs-executables/linux/SnowballTarget/SnowballTarget_Data/Managed'
|
| 2 |
+
Mono config path = '/content/ml-agents/training-envs-executables/linux/SnowballTarget/SnowballTarget_Data/MonoBleedingEdge/etc'
|
| 3 |
+
Preloaded 'lib_burst_generated.so'
|
| 4 |
+
Preloaded 'libgrpc_csharp_ext.x64.so'
|
| 5 |
+
Initialize engine version: 2021.3.14f1 (eee1884e7226)
|
| 6 |
+
[Subsystems] Discovering subsystems at path /content/ml-agents/training-envs-executables/linux/SnowballTarget/SnowballTarget_Data/UnitySubsystems
|
| 7 |
+
Forcing GfxDevice: Null
|
| 8 |
+
GfxDevice: creating device client; threaded=0; jobified=0
|
| 9 |
+
NullGfxDevice:
|
| 10 |
+
Version: NULL 1.0 [1.0]
|
| 11 |
+
Renderer: Null Device
|
| 12 |
+
Vendor: Unity Technologies
|
| 13 |
+
ALSA lib confmisc.c:767:(parse_card) cannot find card '0'
|
| 14 |
+
ALSA lib conf.c:4732:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
|
| 15 |
+
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
|
| 16 |
+
ALSA lib conf.c:4732:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
|
| 17 |
+
ALSA lib confmisc.c:1246:(snd_func_refer) error evaluating name
|
| 18 |
+
ALSA lib conf.c:4732:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
|
| 19 |
+
ALSA lib conf.c:5220:(snd_config_expand) Evaluate error: No such file or directory
|
| 20 |
+
ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM default
|
| 21 |
+
FMOD failed to initialize the output device.: "Error initializing output device. " (60)
|
| 22 |
+
Forced to initialize FMOD to to the device driver's system output rate 48000, this may impact performance and/or give inconsistent experiences compared to selected sample rate 48000
|
| 23 |
+
ALSA lib confmisc.c:767:(parse_card) cannot find card '0'
|
| 24 |
+
ALSA lib conf.c:4732:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
|
| 25 |
+
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
|
| 26 |
+
ALSA lib conf.c:4732:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
|
| 27 |
+
ALSA lib confmisc.c:1246:(snd_func_refer) error evaluating name
|
| 28 |
+
ALSA lib conf.c:4732:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
|
| 29 |
+
ALSA lib conf.c:5220:(snd_config_expand) Evaluate error: No such file or directory
|
| 30 |
+
ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM default
|
| 31 |
+
FMOD failed to initialize the output device.: "Error initializing output device. " (60)
|
| 32 |
+
FMOD initialized on nosound output
|
| 33 |
+
Begin MonoManager ReloadAssembly
|
| 34 |
+
- Completed reload, in 0.082 seconds
|
| 35 |
+
ERROR: Shader Sprites/Default shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
|
| 36 |
+
ERROR: Shader Sprites/Mask shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
|
| 37 |
+
ERROR: Shader Legacy Shaders/VertexLit shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
|
| 38 |
+
WARNING: Shader Unsupported: 'Standard' - All subshaders removed
|
| 39 |
+
WARNING: Shader Did you use #pragma only_renderers and omit this platform?
|
| 40 |
+
WARNING: Shader If subshaders removal was intentional, you may have forgotten turning Fallback off?
|
| 41 |
+
ERROR: Shader Standard shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
|
| 42 |
+
WARNING: Shader Unsupported: 'Standard' - All subshaders removed
|
| 43 |
+
WARNING: Shader Did you use #pragma only_renderers and omit this platform?
|
| 44 |
+
WARNING: Shader If subshaders removal was intentional, you may have forgotten turning Fallback off?
|
| 45 |
+
UnloadTime: 0.669050 ms
|
| 46 |
+
ERROR: Shader UI/Default shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
|
| 47 |
+
requesting resize 84 x 84
|
| 48 |
+
Setting up 1 worker threads for Enlighten.
|
| 49 |
+
Memory Statistics:
|
| 50 |
+
[ALLOC_TEMP_TLS] TLS Allocator
|
| 51 |
+
StackAllocators :
|
| 52 |
+
[ALLOC_TEMP_MAIN]
|
| 53 |
+
Peak usage frame count: [8.0 KB-16.0 KB]: 10740 frames, [16.0 KB-32.0 KB]: 182 frames, [2.0 MB-4.0 MB]: 1 frames
|
| 54 |
+
Initial Block Size 4.0 MB
|
| 55 |
+
Current Block Size 4.0 MB
|
| 56 |
+
Peak Allocated Bytes 2.0 MB
|
| 57 |
+
Overflow Count 0
|
| 58 |
+
[ALLOC_TEMP_Loading.AsyncRead]
|
| 59 |
+
Initial Block Size 64.0 KB
|
| 60 |
+
Current Block Size 64.0 KB
|
| 61 |
+
Peak Allocated Bytes 198 B
|
| 62 |
+
Overflow Count 0
|
| 63 |
+
[ALLOC_TEMP_Loading.PreloadManager]
|
| 64 |
+
Initial Block Size 256.0 KB
|
| 65 |
+
Current Block Size 304.0 KB
|
| 66 |
+
Peak Allocated Bytes 228.9 KB
|
| 67 |
+
Overflow Count 4
|
| 68 |
+
[ALLOC_TEMP_Background Job.Worker 8]
|
| 69 |
+
Initial Block Size 32.0 KB
|
| 70 |
+
Current Block Size 32.0 KB
|
| 71 |
+
Peak Allocated Bytes 0 B
|
| 72 |
+
Overflow Count 0
|
| 73 |
+
[ALLOC_TEMP_Background Job.Worker 9]
|
| 74 |
+
Initial Block Size 32.0 KB
|
| 75 |
+
Current Block Size 32.0 KB
|
| 76 |
+
Peak Allocated Bytes 0 B
|
| 77 |
+
Overflow Count 0
|
| 78 |
+
[ALLOC_TEMP_Job.Worker 0]
|
| 79 |
+
Initial Block Size 256.0 KB
|
| 80 |
+
Current Block Size 256.0 KB
|
| 81 |
+
Peak Allocated Bytes 3.6 KB
|
| 82 |
+
Overflow Count 0
|
| 83 |
+
[ALLOC_TEMP_Background Job.Worker 10]
|
| 84 |
+
Initial Block Size 32.0 KB
|
| 85 |
+
Current Block Size 32.0 KB
|
| 86 |
+
Peak Allocated Bytes 0 B
|
| 87 |
+
Overflow Count 0
|
| 88 |
+
[ALLOC_TEMP_Background Job.Worker 14]
|
| 89 |
+
Initial Block Size 32.0 KB
|
| 90 |
+
Current Block Size 32.0 KB
|
| 91 |
+
Peak Allocated Bytes 0 B
|
| 92 |
+
Overflow Count 0
|
| 93 |
+
[ALLOC_TEMP_Background Job.Worker 6]
|
| 94 |
+
Initial Block Size 32.0 KB
|
| 95 |
+
Current Block Size 32.0 KB
|
| 96 |
+
Peak Allocated Bytes 0 B
|
| 97 |
+
Overflow Count 0
|
| 98 |
+
[ALLOC_TEMP_Background Job.Worker 12]
|
| 99 |
+
Initial Block Size 32.0 KB
|
| 100 |
+
Current Block Size 32.0 KB
|
| 101 |
+
Peak Allocated Bytes 0 B
|
| 102 |
+
Overflow Count 0
|
| 103 |
+
[ALLOC_TEMP_EnlightenWorker]
|
| 104 |
+
Initial Block Size 64.0 KB
|
| 105 |
+
Current Block Size 64.0 KB
|
| 106 |
+
Peak Allocated Bytes 0 B
|
| 107 |
+
Overflow Count 0
|
| 108 |
+
[ALLOC_TEMP_Background Job.Worker 15]
|
| 109 |
+
Initial Block Size 32.0 KB
|
| 110 |
+
Current Block Size 32.0 KB
|
| 111 |
+
Peak Allocated Bytes 0 B
|
| 112 |
+
Overflow Count 0
|
| 113 |
+
[ALLOC_TEMP_Background Job.Worker 1]
|
| 114 |
+
Initial Block Size 32.0 KB
|
| 115 |
+
Current Block Size 32.0 KB
|
| 116 |
+
Peak Allocated Bytes 0 B
|
| 117 |
+
Overflow Count 0
|
| 118 |
+
[ALLOC_TEMP_Background Job.Worker 2]
|
| 119 |
+
Initial Block Size 32.0 KB
|
| 120 |
+
Current Block Size 32.0 KB
|
| 121 |
+
Peak Allocated Bytes 0 B
|
| 122 |
+
Overflow Count 0
|
| 123 |
+
[ALLOC_TEMP_Background Job.Worker 7]
|
| 124 |
+
Initial Block Size 32.0 KB
|
| 125 |
+
Current Block Size 32.0 KB
|
| 126 |
+
Peak Allocated Bytes 0 B
|
| 127 |
+
Overflow Count 0
|
| 128 |
+
[ALLOC_TEMP_AssetGarbageCollectorHelper]
|
| 129 |
+
Initial Block Size 64.0 KB
|
| 130 |
+
Current Block Size 64.0 KB
|
| 131 |
+
Peak Allocated Bytes 0 B
|
| 132 |
+
Overflow Count 0
|
| 133 |
+
[ALLOC_TEMP_Background Job.Worker 5]
|
| 134 |
+
Initial Block Size 32.0 KB
|
| 135 |
+
Current Block Size 32.0 KB
|
| 136 |
+
Peak Allocated Bytes 0 B
|
| 137 |
+
Overflow Count 0
|
| 138 |
+
[ALLOC_TEMP_Background Job.Worker 13]
|
| 139 |
+
Initial Block Size 32.0 KB
|
| 140 |
+
Current Block Size 32.0 KB
|
| 141 |
+
Peak Allocated Bytes 0 B
|
| 142 |
+
Overflow Count 0
|
| 143 |
+
[ALLOC_TEMP_Background Job.Worker 11]
|
| 144 |
+
Initial Block Size 32.0 KB
|
| 145 |
+
Current Block Size 32.0 KB
|
| 146 |
+
Peak Allocated Bytes 0 B
|
| 147 |
+
Overflow Count 0
|
| 148 |
+
[ALLOC_TEMP_Background Job.Worker 3]
|
| 149 |
+
Initial Block Size 32.0 KB
|
| 150 |
+
Current Block Size 32.0 KB
|
| 151 |
+
Peak Allocated Bytes 0 B
|
| 152 |
+
Overflow Count 0
|
| 153 |
+
[ALLOC_TEMP_Background Job.Worker 0]
|
| 154 |
+
Initial Block Size 32.0 KB
|
| 155 |
+
Current Block Size 32.0 KB
|
| 156 |
+
Peak Allocated Bytes 0 B
|
| 157 |
+
Overflow Count 0
|
| 158 |
+
[ALLOC_TEMP_Background Job.Worker 4]
|
| 159 |
+
Initial Block Size 32.0 KB
|
| 160 |
+
Current Block Size 32.0 KB
|
| 161 |
+
Peak Allocated Bytes 0 B
|
| 162 |
+
Overflow Count 0
|
| 163 |
+
[ALLOC_TEMP_BatchDeleteObjects]
|
| 164 |
+
Initial Block Size 64.0 KB
|
| 165 |
+
Current Block Size 64.0 KB
|
| 166 |
+
Peak Allocated Bytes 0 B
|
| 167 |
+
Overflow Count 0
|
| 168 |
+
[ALLOC_DEFAULT] Dual Thread Allocator
|
| 169 |
+
Peak main deferred allocation count 41
|
| 170 |
+
[ALLOC_BUCKET]
|
| 171 |
+
Large Block size 4.0 MB
|
| 172 |
+
Used Block count 1
|
| 173 |
+
Peak Allocated bytes 1.0 MB
|
| 174 |
+
[ALLOC_DEFAULT_MAIN]
|
| 175 |
+
Peak usage frame count: [4.0 MB-8.0 MB]: 10923 frames
|
| 176 |
+
Requested Block Size 16.0 MB
|
| 177 |
+
Peak Block count 1
|
| 178 |
+
Peak Allocated memory 8.7 MB
|
| 179 |
+
Peak Large allocation bytes 0 B
|
| 180 |
+
[ALLOC_DEFAULT_THREAD]
|
| 181 |
+
Peak usage frame count: [16.0 MB-32.0 MB]: 10923 frames
|
| 182 |
+
Requested Block Size 16.0 MB
|
| 183 |
+
Peak Block count 1
|
| 184 |
+
Peak Allocated memory 17.8 MB
|
| 185 |
+
Peak Large allocation bytes 16.0 MB
|
| 186 |
+
[ALLOC_TEMP_JOB_1_FRAME]
|
| 187 |
+
Initial Block Size 2.0 MB
|
| 188 |
+
Used Block Count 1
|
| 189 |
+
Overflow Count (too large) 0
|
| 190 |
+
Overflow Count (full) 0
|
| 191 |
+
[ALLOC_TEMP_JOB_2_FRAMES]
|
| 192 |
+
Initial Block Size 2.0 MB
|
| 193 |
+
Used Block Count 1
|
| 194 |
+
Overflow Count (too large) 0
|
| 195 |
+
Overflow Count (full) 0
|
| 196 |
+
[ALLOC_TEMP_JOB_4_FRAMES (JobTemp)]
|
| 197 |
+
Initial Block Size 2.0 MB
|
| 198 |
+
Used Block Count 2
|
| 199 |
+
Overflow Count (too large) 0
|
| 200 |
+
Overflow Count (full) 0
|
| 201 |
+
[ALLOC_TEMP_JOB_ASYNC (Background)]
|
| 202 |
+
Initial Block Size 1.0 MB
|
| 203 |
+
Used Block Count 3
|
| 204 |
+
Overflow Count (too large) 0
|
| 205 |
+
Overflow Count (full) 0
|
| 206 |
+
[ALLOC_GFX] Dual Thread Allocator
|
| 207 |
+
Peak main deferred allocation count 0
|
| 208 |
+
[ALLOC_BUCKET]
|
| 209 |
+
Large Block size 4.0 MB
|
| 210 |
+
Used Block count 1
|
| 211 |
+
Peak Allocated bytes 1.0 MB
|
| 212 |
+
[ALLOC_GFX_MAIN]
|
| 213 |
+
Peak usage frame count: [32.0 KB-64.0 KB]: 9554 frames, [64.0 KB-128.0 KB]: 1369 frames
|
| 214 |
+
Requested Block Size 16.0 MB
|
| 215 |
+
Peak Block count 1
|
| 216 |
+
Peak Allocated memory 66.8 KB
|
| 217 |
+
Peak Large allocation bytes 0 B
|
| 218 |
+
[ALLOC_GFX_THREAD]
|
| 219 |
+
Peak usage frame count: [32.0 KB-64.0 KB]: 10923 frames
|
| 220 |
+
Requested Block Size 16.0 MB
|
| 221 |
+
Peak Block count 1
|
| 222 |
+
Peak Allocated memory 39.6 KB
|
| 223 |
+
Peak Large allocation bytes 0 B
|
| 224 |
+
[ALLOC_CACHEOBJECTS] Dual Thread Allocator
|
| 225 |
+
Peak main deferred allocation count 0
|
| 226 |
+
[ALLOC_BUCKET]
|
| 227 |
+
Large Block size 4.0 MB
|
| 228 |
+
Used Block count 1
|
| 229 |
+
Peak Allocated bytes 1.0 MB
|
| 230 |
+
[ALLOC_CACHEOBJECTS_MAIN]
|
| 231 |
+
Peak usage frame count: [0.5 MB-1.0 MB]: 10923 frames
|
| 232 |
+
Requested Block Size 4.0 MB
|
| 233 |
+
Peak Block count 1
|
| 234 |
+
Peak Allocated memory 0.6 MB
|
| 235 |
+
Peak Large allocation bytes 0 B
|
| 236 |
+
[ALLOC_CACHEOBJECTS_THREAD]
|
| 237 |
+
Peak usage frame count: [0.5 MB-1.0 MB]: 10922 frames, [2.0 MB-4.0 MB]: 1 frames
|
| 238 |
+
Requested Block Size 4.0 MB
|
| 239 |
+
Peak Block count 1
|
| 240 |
+
Peak Allocated memory 2.2 MB
|
| 241 |
+
Peak Large allocation bytes 0 B
|
| 242 |
+
[ALLOC_TYPETREE] Dual Thread Allocator
|
| 243 |
+
Peak main deferred allocation count 0
|
| 244 |
+
[ALLOC_BUCKET]
|
| 245 |
+
Large Block size 4.0 MB
|
| 246 |
+
Used Block count 1
|
| 247 |
+
Peak Allocated bytes 1.0 MB
|
| 248 |
+
[ALLOC_TYPETREE_MAIN]
|
| 249 |
+
Peak usage frame count: [0-1.0 KB]: 10923 frames
|
| 250 |
+
Requested Block Size 2.0 MB
|
| 251 |
+
Peak Block count 1
|
| 252 |
+
Peak Allocated memory 1.0 KB
|
| 253 |
+
Peak Large allocation bytes 0 B
|
| 254 |
+
[ALLOC_TYPETREE_THREAD]
|
| 255 |
+
Peak usage frame count: [1.0 KB-2.0 KB]: 10923 frames
|
| 256 |
+
Requested Block Size 2.0 MB
|
| 257 |
+
Peak Block count 1
|
| 258 |
+
Peak Allocated memory 1.7 KB
|
| 259 |
+
Peak Large allocation bytes 0 B
|
run_logs/timers.json
ADDED
|
@@ -0,0 +1,377 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "root",
|
| 3 |
+
"gauges": {
|
| 4 |
+
"SnowballTarget.Policy.Entropy.mean": {
|
| 5 |
+
"value": 0.7540989518165588,
|
| 6 |
+
"min": 0.7509713768959045,
|
| 7 |
+
"max": 2.8544716835021973,
|
| 8 |
+
"count": 40
|
| 9 |
+
},
|
| 10 |
+
"SnowballTarget.Policy.Entropy.sum": {
|
| 11 |
+
"value": 7631.4814453125,
|
| 12 |
+
"min": 7178.53515625,
|
| 13 |
+
"max": 29232.64453125,
|
| 14 |
+
"count": 40
|
| 15 |
+
},
|
| 16 |
+
"SnowballTarget.Step.mean": {
|
| 17 |
+
"value": 399992.0,
|
| 18 |
+
"min": 9952.0,
|
| 19 |
+
"max": 399992.0,
|
| 20 |
+
"count": 40
|
| 21 |
+
},
|
| 22 |
+
"SnowballTarget.Step.sum": {
|
| 23 |
+
"value": 399992.0,
|
| 24 |
+
"min": 9952.0,
|
| 25 |
+
"max": 399992.0,
|
| 26 |
+
"count": 40
|
| 27 |
+
},
|
| 28 |
+
"SnowballTarget.Policy.ExtrinsicValueEstimate.mean": {
|
| 29 |
+
"value": 13.709442138671875,
|
| 30 |
+
"min": 0.37919145822525024,
|
| 31 |
+
"max": 13.748085975646973,
|
| 32 |
+
"count": 40
|
| 33 |
+
},
|
| 34 |
+
"SnowballTarget.Policy.ExtrinsicValueEstimate.sum": {
|
| 35 |
+
"value": 2673.34130859375,
|
| 36 |
+
"min": 73.56314086914062,
|
| 37 |
+
"max": 2813.556640625,
|
| 38 |
+
"count": 40
|
| 39 |
+
},
|
| 40 |
+
"SnowballTarget.Environment.EpisodeLength.mean": {
|
| 41 |
+
"value": 199.0,
|
| 42 |
+
"min": 199.0,
|
| 43 |
+
"max": 199.0,
|
| 44 |
+
"count": 40
|
| 45 |
+
},
|
| 46 |
+
"SnowballTarget.Environment.EpisodeLength.sum": {
|
| 47 |
+
"value": 8756.0,
|
| 48 |
+
"min": 8756.0,
|
| 49 |
+
"max": 10945.0,
|
| 50 |
+
"count": 40
|
| 51 |
+
},
|
| 52 |
+
"SnowballTarget.Losses.PolicyLoss.mean": {
|
| 53 |
+
"value": 0.06753559517200497,
|
| 54 |
+
"min": 0.06183863029844931,
|
| 55 |
+
"max": 0.0765778742175362,
|
| 56 |
+
"count": 40
|
| 57 |
+
},
|
| 58 |
+
"SnowballTarget.Losses.PolicyLoss.sum": {
|
| 59 |
+
"value": 0.2701423806880199,
|
| 60 |
+
"min": 0.24752901096484956,
|
| 61 |
+
"max": 0.36887590581717833,
|
| 62 |
+
"count": 40
|
| 63 |
+
},
|
| 64 |
+
"SnowballTarget.Losses.ValueLoss.mean": {
|
| 65 |
+
"value": 0.17932815506469968,
|
| 66 |
+
"min": 0.1226801106183534,
|
| 67 |
+
"max": 0.26482234918603714,
|
| 68 |
+
"count": 40
|
| 69 |
+
},
|
| 70 |
+
"SnowballTarget.Losses.ValueLoss.sum": {
|
| 71 |
+
"value": 0.7173126202587987,
|
| 72 |
+
"min": 0.4907204424734136,
|
| 73 |
+
"max": 1.3241117459301857,
|
| 74 |
+
"count": 40
|
| 75 |
+
},
|
| 76 |
+
"SnowballTarget.Policy.LearningRate.mean": {
|
| 77 |
+
"value": 3.891098702999994e-06,
|
| 78 |
+
"min": 3.891098702999994e-06,
|
| 79 |
+
"max": 0.000295941001353,
|
| 80 |
+
"count": 40
|
| 81 |
+
},
|
| 82 |
+
"SnowballTarget.Policy.LearningRate.sum": {
|
| 83 |
+
"value": 1.5564394811999976e-05,
|
| 84 |
+
"min": 1.5564394811999976e-05,
|
| 85 |
+
"max": 0.0014425800191399996,
|
| 86 |
+
"count": 40
|
| 87 |
+
},
|
| 88 |
+
"SnowballTarget.Policy.Epsilon.mean": {
|
| 89 |
+
"value": 0.101297,
|
| 90 |
+
"min": 0.101297,
|
| 91 |
+
"max": 0.19864700000000002,
|
| 92 |
+
"count": 40
|
| 93 |
+
},
|
| 94 |
+
"SnowballTarget.Policy.Epsilon.sum": {
|
| 95 |
+
"value": 0.405188,
|
| 96 |
+
"min": 0.405188,
|
| 97 |
+
"max": 0.98086,
|
| 98 |
+
"count": 40
|
| 99 |
+
},
|
| 100 |
+
"SnowballTarget.Policy.Beta.mean": {
|
| 101 |
+
"value": 7.472029999999992e-05,
|
| 102 |
+
"min": 7.472029999999992e-05,
|
| 103 |
+
"max": 0.004932485299999999,
|
| 104 |
+
"count": 40
|
| 105 |
+
},
|
| 106 |
+
"SnowballTarget.Policy.Beta.sum": {
|
| 107 |
+
"value": 0.00029888119999999966,
|
| 108 |
+
"min": 0.00029888119999999966,
|
| 109 |
+
"max": 0.024044914,
|
| 110 |
+
"count": 40
|
| 111 |
+
},
|
| 112 |
+
"SnowballTarget.Environment.CumulativeReward.mean": {
|
| 113 |
+
"value": 27.068181818181817,
|
| 114 |
+
"min": 3.272727272727273,
|
| 115 |
+
"max": 27.068181818181817,
|
| 116 |
+
"count": 40
|
| 117 |
+
},
|
| 118 |
+
"SnowballTarget.Environment.CumulativeReward.sum": {
|
| 119 |
+
"value": 1191.0,
|
| 120 |
+
"min": 144.0,
|
| 121 |
+
"max": 1469.0,
|
| 122 |
+
"count": 40
|
| 123 |
+
},
|
| 124 |
+
"SnowballTarget.Policy.ExtrinsicReward.mean": {
|
| 125 |
+
"value": 27.068181818181817,
|
| 126 |
+
"min": 3.272727272727273,
|
| 127 |
+
"max": 27.068181818181817,
|
| 128 |
+
"count": 40
|
| 129 |
+
},
|
| 130 |
+
"SnowballTarget.Policy.ExtrinsicReward.sum": {
|
| 131 |
+
"value": 1191.0,
|
| 132 |
+
"min": 144.0,
|
| 133 |
+
"max": 1469.0,
|
| 134 |
+
"count": 40
|
| 135 |
+
},
|
| 136 |
+
"SnowballTarget.IsTraining.mean": {
|
| 137 |
+
"value": 1.0,
|
| 138 |
+
"min": 1.0,
|
| 139 |
+
"max": 1.0,
|
| 140 |
+
"count": 40
|
| 141 |
+
},
|
| 142 |
+
"SnowballTarget.IsTraining.sum": {
|
| 143 |
+
"value": 1.0,
|
| 144 |
+
"min": 1.0,
|
| 145 |
+
"max": 1.0,
|
| 146 |
+
"count": 40
|
| 147 |
+
}
|
| 148 |
+
},
|
| 149 |
+
"metadata": {
|
| 150 |
+
"timer_format_version": "0.1.0",
|
| 151 |
+
"start_time_seconds": "1679250873",
|
| 152 |
+
"python_version": "3.9.16 (main, Dec 7 2022, 01:11:51) \n[GCC 9.4.0]",
|
| 153 |
+
"command_line_arguments": "/usr/local/bin/mlagents-learn --force ./config/ppo/SnowballTarget.yaml --env=./training-envs-executables/linux/SnowballTarget/SnowballTarget --run-id=SnowballTarget1 --no-graphics",
|
| 154 |
+
"mlagents_version": "0.31.0.dev0",
|
| 155 |
+
"mlagents_envs_version": "0.31.0.dev0",
|
| 156 |
+
"communication_protocol_version": "1.5.0",
|
| 157 |
+
"pytorch_version": "1.11.0+cu102",
|
| 158 |
+
"numpy_version": "1.21.2",
|
| 159 |
+
"end_time_seconds": "1679251765"
|
| 160 |
+
},
|
| 161 |
+
"total": 891.8117125760002,
|
| 162 |
+
"count": 1,
|
| 163 |
+
"self": 0.8525653340002464,
|
| 164 |
+
"children": {
|
| 165 |
+
"run_training.setup": {
|
| 166 |
+
"total": 0.09895160700011729,
|
| 167 |
+
"count": 1,
|
| 168 |
+
"self": 0.09895160700011729
|
| 169 |
+
},
|
| 170 |
+
"TrainerController.start_learning": {
|
| 171 |
+
"total": 890.8601956349999,
|
| 172 |
+
"count": 1,
|
| 173 |
+
"self": 1.0520900850065118,
|
| 174 |
+
"children": {
|
| 175 |
+
"TrainerController._reset_env": {
|
| 176 |
+
"total": 5.457522214000164,
|
| 177 |
+
"count": 1,
|
| 178 |
+
"self": 5.457522214000164
|
| 179 |
+
},
|
| 180 |
+
"TrainerController.advance": {
|
| 181 |
+
"total": 884.1411102139932,
|
| 182 |
+
"count": 36410,
|
| 183 |
+
"self": 0.48831130802022926,
|
| 184 |
+
"children": {
|
| 185 |
+
"env_step": {
|
| 186 |
+
"total": 883.652798905973,
|
| 187 |
+
"count": 36410,
|
| 188 |
+
"self": 636.8254537769212,
|
| 189 |
+
"children": {
|
| 190 |
+
"SubprocessEnvManager._take_step": {
|
| 191 |
+
"total": 246.3199526060389,
|
| 192 |
+
"count": 36410,
|
| 193 |
+
"self": 4.135007505025669,
|
| 194 |
+
"children": {
|
| 195 |
+
"TorchPolicy.evaluate": {
|
| 196 |
+
"total": 242.18494510101323,
|
| 197 |
+
"count": 36410,
|
| 198 |
+
"self": 242.18494510101323
|
| 199 |
+
}
|
| 200 |
+
}
|
| 201 |
+
},
|
| 202 |
+
"workers": {
|
| 203 |
+
"total": 0.507392523012868,
|
| 204 |
+
"count": 36410,
|
| 205 |
+
"self": 0.0,
|
| 206 |
+
"children": {
|
| 207 |
+
"worker_root": {
|
| 208 |
+
"total": 888.0916931100242,
|
| 209 |
+
"count": 36410,
|
| 210 |
+
"is_parallel": true,
|
| 211 |
+
"self": 421.3944678570206,
|
| 212 |
+
"children": {
|
| 213 |
+
"run_training.setup": {
|
| 214 |
+
"total": 0.0,
|
| 215 |
+
"count": 0,
|
| 216 |
+
"is_parallel": true,
|
| 217 |
+
"self": 0.0,
|
| 218 |
+
"children": {
|
| 219 |
+
"steps_from_proto": {
|
| 220 |
+
"total": 0.0019270519999281532,
|
| 221 |
+
"count": 1,
|
| 222 |
+
"is_parallel": true,
|
| 223 |
+
"self": 0.0005869359995358536,
|
| 224 |
+
"children": {
|
| 225 |
+
"_process_rank_one_or_two_observation": {
|
| 226 |
+
"total": 0.0013401160003922996,
|
| 227 |
+
"count": 10,
|
| 228 |
+
"is_parallel": true,
|
| 229 |
+
"self": 0.0013401160003922996
|
| 230 |
+
}
|
| 231 |
+
}
|
| 232 |
+
},
|
| 233 |
+
"UnityEnvironment.step": {
|
| 234 |
+
"total": 0.04759080799999538,
|
| 235 |
+
"count": 1,
|
| 236 |
+
"is_parallel": true,
|
| 237 |
+
"self": 0.0004915520000849938,
|
| 238 |
+
"children": {
|
| 239 |
+
"UnityEnvironment._generate_step_input": {
|
| 240 |
+
"total": 0.000303345000020272,
|
| 241 |
+
"count": 1,
|
| 242 |
+
"is_parallel": true,
|
| 243 |
+
"self": 0.000303345000020272
|
| 244 |
+
},
|
| 245 |
+
"communicator.exchange": {
|
| 246 |
+
"total": 0.04522522000002027,
|
| 247 |
+
"count": 1,
|
| 248 |
+
"is_parallel": true,
|
| 249 |
+
"self": 0.04522522000002027
|
| 250 |
+
},
|
| 251 |
+
"steps_from_proto": {
|
| 252 |
+
"total": 0.0015706909998698393,
|
| 253 |
+
"count": 1,
|
| 254 |
+
"is_parallel": true,
|
| 255 |
+
"self": 0.0003334949999498349,
|
| 256 |
+
"children": {
|
| 257 |
+
"_process_rank_one_or_two_observation": {
|
| 258 |
+
"total": 0.0012371959999200044,
|
| 259 |
+
"count": 10,
|
| 260 |
+
"is_parallel": true,
|
| 261 |
+
"self": 0.0012371959999200044
|
| 262 |
+
}
|
| 263 |
+
}
|
| 264 |
+
}
|
| 265 |
+
}
|
| 266 |
+
}
|
| 267 |
+
}
|
| 268 |
+
},
|
| 269 |
+
"UnityEnvironment.step": {
|
| 270 |
+
"total": 466.6972252530036,
|
| 271 |
+
"count": 36409,
|
| 272 |
+
"is_parallel": true,
|
| 273 |
+
"self": 18.36872623301565,
|
| 274 |
+
"children": {
|
| 275 |
+
"UnityEnvironment._generate_step_input": {
|
| 276 |
+
"total": 10.109062429934966,
|
| 277 |
+
"count": 36409,
|
| 278 |
+
"is_parallel": true,
|
| 279 |
+
"self": 10.109062429934966
|
| 280 |
+
},
|
| 281 |
+
"communicator.exchange": {
|
| 282 |
+
"total": 376.9459000480133,
|
| 283 |
+
"count": 36409,
|
| 284 |
+
"is_parallel": true,
|
| 285 |
+
"self": 376.9459000480133
|
| 286 |
+
},
|
| 287 |
+
"steps_from_proto": {
|
| 288 |
+
"total": 61.273536542039665,
|
| 289 |
+
"count": 36409,
|
| 290 |
+
"is_parallel": true,
|
| 291 |
+
"self": 11.93635280790022,
|
| 292 |
+
"children": {
|
| 293 |
+
"_process_rank_one_or_two_observation": {
|
| 294 |
+
"total": 49.337183734139444,
|
| 295 |
+
"count": 364090,
|
| 296 |
+
"is_parallel": true,
|
| 297 |
+
"self": 49.337183734139444
|
| 298 |
+
}
|
| 299 |
+
}
|
| 300 |
+
}
|
| 301 |
+
}
|
| 302 |
+
}
|
| 303 |
+
}
|
| 304 |
+
}
|
| 305 |
+
}
|
| 306 |
+
}
|
| 307 |
+
}
|
| 308 |
+
}
|
| 309 |
+
}
|
| 310 |
+
},
|
| 311 |
+
"trainer_threads": {
|
| 312 |
+
"total": 0.0002868589999707183,
|
| 313 |
+
"count": 1,
|
| 314 |
+
"self": 0.0002868589999707183,
|
| 315 |
+
"children": {
|
| 316 |
+
"thread_root": {
|
| 317 |
+
"total": 0.0,
|
| 318 |
+
"count": 0,
|
| 319 |
+
"is_parallel": true,
|
| 320 |
+
"self": 0.0,
|
| 321 |
+
"children": {
|
| 322 |
+
"trainer_advance": {
|
| 323 |
+
"total": 877.583537931085,
|
| 324 |
+
"count": 773222,
|
| 325 |
+
"is_parallel": true,
|
| 326 |
+
"self": 20.18850114104498,
|
| 327 |
+
"children": {
|
| 328 |
+
"process_trajectory": {
|
| 329 |
+
"total": 487.6788062670373,
|
| 330 |
+
"count": 773222,
|
| 331 |
+
"is_parallel": true,
|
| 332 |
+
"self": 485.30850892303783,
|
| 333 |
+
"children": {
|
| 334 |
+
"RLTrainer._checkpoint": {
|
| 335 |
+
"total": 2.370297343999482,
|
| 336 |
+
"count": 8,
|
| 337 |
+
"is_parallel": true,
|
| 338 |
+
"self": 2.370297343999482
|
| 339 |
+
}
|
| 340 |
+
}
|
| 341 |
+
},
|
| 342 |
+
"_update_policy": {
|
| 343 |
+
"total": 369.71623052300265,
|
| 344 |
+
"count": 181,
|
| 345 |
+
"is_parallel": true,
|
| 346 |
+
"self": 136.69635624398938,
|
| 347 |
+
"children": {
|
| 348 |
+
"TorchPPOOptimizer.update": {
|
| 349 |
+
"total": 233.01987427901327,
|
| 350 |
+
"count": 9228,
|
| 351 |
+
"is_parallel": true,
|
| 352 |
+
"self": 233.01987427901327
|
| 353 |
+
}
|
| 354 |
+
}
|
| 355 |
+
}
|
| 356 |
+
}
|
| 357 |
+
}
|
| 358 |
+
}
|
| 359 |
+
}
|
| 360 |
+
}
|
| 361 |
+
},
|
| 362 |
+
"TrainerController._save_models": {
|
| 363 |
+
"total": 0.20918626299999232,
|
| 364 |
+
"count": 1,
|
| 365 |
+
"self": 0.002009664000070188,
|
| 366 |
+
"children": {
|
| 367 |
+
"RLTrainer._checkpoint": {
|
| 368 |
+
"total": 0.20717659899992213,
|
| 369 |
+
"count": 1,
|
| 370 |
+
"self": 0.20717659899992213
|
| 371 |
+
}
|
| 372 |
+
}
|
| 373 |
+
}
|
| 374 |
+
}
|
| 375 |
+
}
|
| 376 |
+
}
|
| 377 |
+
}
|
run_logs/training_status.json
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"SnowballTarget": {
|
| 3 |
+
"checkpoints": [
|
| 4 |
+
{
|
| 5 |
+
"steps": 49936,
|
| 6 |
+
"file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-49936.onnx",
|
| 7 |
+
"reward": 13.272727272727273,
|
| 8 |
+
"creation_time": 1679250990.9877121,
|
| 9 |
+
"auxillary_file_paths": [
|
| 10 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-49936.pt"
|
| 11 |
+
]
|
| 12 |
+
},
|
| 13 |
+
{
|
| 14 |
+
"steps": 99960,
|
| 15 |
+
"file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-99960.onnx",
|
| 16 |
+
"reward": 20.545454545454547,
|
| 17 |
+
"creation_time": 1679251101.704787,
|
| 18 |
+
"auxillary_file_paths": [
|
| 19 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-99960.pt"
|
| 20 |
+
]
|
| 21 |
+
},
|
| 22 |
+
{
|
| 23 |
+
"steps": 149984,
|
| 24 |
+
"file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-149984.onnx",
|
| 25 |
+
"reward": 24.272727272727273,
|
| 26 |
+
"creation_time": 1679251213.4032304,
|
| 27 |
+
"auxillary_file_paths": [
|
| 28 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-149984.pt"
|
| 29 |
+
]
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"steps": 199984,
|
| 33 |
+
"file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-199984.onnx",
|
| 34 |
+
"reward": 24.90909090909091,
|
| 35 |
+
"creation_time": 1679251322.2511601,
|
| 36 |
+
"auxillary_file_paths": [
|
| 37 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-199984.pt"
|
| 38 |
+
]
|
| 39 |
+
},
|
| 40 |
+
{
|
| 41 |
+
"steps": 249944,
|
| 42 |
+
"file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-249944.onnx",
|
| 43 |
+
"reward": 25.727272727272727,
|
| 44 |
+
"creation_time": 1679251431.4669619,
|
| 45 |
+
"auxillary_file_paths": [
|
| 46 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-249944.pt"
|
| 47 |
+
]
|
| 48 |
+
},
|
| 49 |
+
{
|
| 50 |
+
"steps": 299968,
|
| 51 |
+
"file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-299968.onnx",
|
| 52 |
+
"reward": 26.818181818181817,
|
| 53 |
+
"creation_time": 1679251543.8751936,
|
| 54 |
+
"auxillary_file_paths": [
|
| 55 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-299968.pt"
|
| 56 |
+
]
|
| 57 |
+
},
|
| 58 |
+
{
|
| 59 |
+
"steps": 349992,
|
| 60 |
+
"file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-349992.onnx",
|
| 61 |
+
"reward": 27.363636363636363,
|
| 62 |
+
"creation_time": 1679251654.2755432,
|
| 63 |
+
"auxillary_file_paths": [
|
| 64 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-349992.pt"
|
| 65 |
+
]
|
| 66 |
+
},
|
| 67 |
+
{
|
| 68 |
+
"steps": 399992,
|
| 69 |
+
"file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-399992.onnx",
|
| 70 |
+
"reward": 27.272727272727273,
|
| 71 |
+
"creation_time": 1679251764.5977087,
|
| 72 |
+
"auxillary_file_paths": [
|
| 73 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-399992.pt"
|
| 74 |
+
]
|
| 75 |
+
},
|
| 76 |
+
{
|
| 77 |
+
"steps": 400312,
|
| 78 |
+
"file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-400312.onnx",
|
| 79 |
+
"reward": 27.272727272727273,
|
| 80 |
+
"creation_time": 1679251764.8490276,
|
| 81 |
+
"auxillary_file_paths": [
|
| 82 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-400312.pt"
|
| 83 |
+
]
|
| 84 |
+
}
|
| 85 |
+
],
|
| 86 |
+
"final_checkpoint": {
|
| 87 |
+
"steps": 400312,
|
| 88 |
+
"file_path": "results/SnowballTarget1/SnowballTarget.onnx",
|
| 89 |
+
"reward": 27.272727272727273,
|
| 90 |
+
"creation_time": 1679251764.8490276,
|
| 91 |
+
"auxillary_file_paths": [
|
| 92 |
+
"results/SnowballTarget1/SnowballTarget/SnowballTarget-400312.pt"
|
| 93 |
+
]
|
| 94 |
+
}
|
| 95 |
+
},
|
| 96 |
+
"metadata": {
|
| 97 |
+
"stats_format_version": "0.3.0",
|
| 98 |
+
"mlagents_version": "0.31.0.dev0",
|
| 99 |
+
"torch_version": "1.11.0+cu102"
|
| 100 |
+
}
|
| 101 |
+
}
|