KaptainKris commited on
Commit
bf1b1e5
·
verified ·
1 Parent(s): 6fe1b4c

Promote 128x128 PPO LunarLander-v3 model

Browse files
Files changed (6) hide show
  1. README.md +48 -26
  2. config.json +7 -1
  3. ppo-LunarLander-v3.zip +2 -2
  4. replay.mp4 +2 -2
  5. results.json +135 -1
  6. training_config.json +28 -0
README.md CHANGED
@@ -1,37 +1,59 @@
1
  ---
2
  library_name: stable-baselines3
 
3
  tags:
4
- - LunarLander-v3
5
- - deep-reinforcement-learning
6
- - reinforcement-learning
7
  - stable-baselines3
8
- model-index:
9
- - name: PPO
10
- results:
11
- - task:
12
- type: reinforcement-learning
13
- name: reinforcement-learning
14
- dataset:
15
- name: LunarLander-v3
16
- type: LunarLander-v3
17
- metrics:
18
- - type: mean_reward
19
- value: 268.65 +/- 18.51
20
- name: mean_reward
21
- verified: false
22
  ---
23
 
24
- # **PPO** Agent playing **LunarLander-v3**
25
- This is a trained model of a **PPO** agent playing **LunarLander-v3**
26
- using the [stable-baselines3 library](https://github.com/DLR-RM/stable-baselines3).
 
 
27
 
28
- ## Usage (with Stable-baselines3)
29
- TODO: Add your code
30
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
 
32
  ```python
33
- from stable_baselines3 import ...
34
- from huggingface_sb3 import load_from_hub
 
 
 
 
 
35
 
36
- ...
37
- ```
 
1
  ---
2
  library_name: stable-baselines3
3
+ pipeline_tag: reinforcement-learning
4
  tags:
 
 
 
5
  - stable-baselines3
6
+ - reinforcement-learning
7
+ - deep-reinforcement-learning
8
+ - PPO
9
+ - LunarLander-v3
 
 
 
 
 
 
 
 
 
 
10
  ---
11
 
12
+ # PPO agent for LunarLander-v3
13
+
14
+ This repository contains a Stable-Baselines3 PPO actor–critic agent trained on `LunarLander-v3`.
15
+
16
+ ## Evaluation
17
 
18
+ Deterministic evaluation over 100 fixed-seed episodes:
 
19
 
20
+ | Metric | Value |
21
+ |---|---:|
22
+ | Mean reward | 280.66 |
23
+ | Standard deviation | 34.31 |
24
+ | Course-style score (`mean - std`) | 246.34 |
25
+ | Episodes scoring at least 200 | 99.0% |
26
+ | Minimum reward | 4.31 |
27
+ | Maximum reward | 322.05 |
28
+
29
+ The candidate was compared with the previous Hub model on the same 100 fixed seeds. The selection metric was `mean_reward` and the observed improvement was +12.575.
30
+
31
+ ## Architecture
32
+
33
+ - Algorithm: PPO
34
+ - Policy: MLP actor–critic
35
+ - Actor hidden layers: `[128, 128]`
36
+ - Critic hidden layers: `[128, 128]`
37
+
38
+ ## Replay
39
+
40
+ Replay seed: `42`
41
+ Replay reward: `266.92`
42
+
43
+ <video controls autoplay loop muted width="640">
44
+ <source src="https://huggingface.co/KaptainKris/HuggingFace_RL_Course/resolve/main/replay.mp4" type="video/mp4">
45
+ </video>
46
+
47
+ ## Load the model
48
 
49
  ```python
50
+ from huggingface_hub import hf_hub_download
51
+ from stable_baselines3 import PPO
52
+
53
+ checkpoint = hf_hub_download(
54
+ repo_id="KaptainKris/HuggingFace_RL_Course",
55
+ filename="ppo-LunarLander-v3.zip",
56
+ )
57
 
58
+ model = PPO.load(checkpoint)
59
+ ```
config.json CHANGED
@@ -1 +1,7 @@
1
- {"policy_class": {":type:": "<class 'abc.ABCMeta'>", ":serialized:": "gAWVOwAAAAAAAACMIXN0YWJsZV9iYXNlbGluZXMzLmNvbW1vbi5wb2xpY2llc5SMEUFjdG9yQ3JpdGljUG9saWN5lJOULg==", "__module__": "stable_baselines3.common.policies", "__doc__": "\n Policy class for actor-critic algorithms (has both policy and value prediction).\n Used by A2C, PPO and the likes.\n\n :param observation_space: Observation space\n :param action_space: Action space\n :param lr_schedule: Learning rate schedule (could be constant)\n :param net_arch: The specification of the policy and value networks.\n :param activation_fn: Activation function\n :param ortho_init: Whether to use or not orthogonal initialization\n :param use_sde: Whether to use State Dependent Exploration or not\n :param log_std_init: Initial value for the log standard deviation\n :param full_std: Whether to use (n_features x n_actions) parameters\n for the std instead of only (n_features,) when using gSDE\n :param use_expln: Use ``expln()`` function instead of ``exp()`` to ensure\n a positive standard deviation (cf paper). It allows to keep variance\n above zero and prevent it from growing too fast. In practice, ``exp()`` is usually enough.\n :param squash_output: Whether to squash the output using a tanh function,\n this allows to ensure boundaries when using gSDE.\n :param features_extractor_class: Features extractor to use.\n :param features_extractor_kwargs: Keyword arguments\n to pass to the features extractor.\n :param share_features_extractor: If True, the features extractor is shared between the policy and value networks.\n :param normalize_images: Whether to normalize images or not,\n dividing by 255.0 (True by default)\n :param optimizer_class: The optimizer to use,\n ``th.optim.Adam`` by default\n :param optimizer_kwargs: Additional keyword arguments,\n excluding the learning rate, to pass to the optimizer\n ", "__init__": "<function ActorCriticPolicy.__init__ at 0x7c6ee5f9dee0>", "_get_constructor_parameters": "<function ActorCriticPolicy._get_constructor_parameters at 0x7c6ee5f9df80>", "reset_noise": "<function ActorCriticPolicy.reset_noise at 0x7c6ee5f9e020>", "_build_mlp_extractor": "<function ActorCriticPolicy._build_mlp_extractor at 0x7c6ee5f9e0c0>", "_build": "<function ActorCriticPolicy._build at 0x7c6ee5f9e160>", "forward": "<function ActorCriticPolicy.forward at 0x7c6ee5f9e200>", "extract_features": "<function ActorCriticPolicy.extract_features at 0x7c6ee5f9e2a0>", "_get_action_dist_from_latent": "<function ActorCriticPolicy._get_action_dist_from_latent at 0x7c6ee5f9e340>", "_predict": "<function ActorCriticPolicy._predict at 0x7c6ee5f9e3e0>", "evaluate_actions": "<function ActorCriticPolicy.evaluate_actions at 0x7c6ee5f9e480>", "get_distribution": "<function ActorCriticPolicy.get_distribution at 0x7c6ee5f9e520>", "predict_values": "<function ActorCriticPolicy.predict_values at 0x7c6ee5f9e5c0>", "__abstractmethods__": "frozenset()", "_abc_impl": "<_abc._abc_data object at 0x7c6ee5f8e0c0>"}, "verbose": 1, "policy_kwargs": {}, "num_timesteps": 1015808, "_total_timesteps": 1000000, "_num_timesteps_at_start": 0, "seed": null, "action_noise": null, "start_time": 1783877776887598446, "learning_rate": 0.0003, "tensorboard_log": null, "_last_obs": {":type:": "<class 'numpy.ndarray'>", ":serialized:": "gAWVdgIAAAAAAACME251bXB5Ll9jb3JlLm51bWVyaWOUjAtfZnJvbWJ1ZmZlcpSTlCiWAAIAAAAAAABzX0q+HKZyvNtw5DpGWRU55I7gPdMk67kAAIA/AACAP7PecT1WHks/re47PE6VEr94vJY83IdFvAAAAAAAAAAAmmR+PeLdOz+G0KM91bTzvoe+jj1mKe+7AAAAAAAAAAAmu04+zvCdPT0kR76Dlu29RX2IPKnwlbkAAAAAAAAAAAB8XjxEFVY/NTUgvCAEBb8sH2Y8KPxPvAAAAAAAAAAAZu/lvXsslbrKlHG05fBVMGVrILvNdJczAACAPwAAgD9mlvO6xJyvPTfDtD2nSkW+KjSCPVB5YjwAAAAAAAAAAE15P72sdZo/er9kvva8H78FEIW9aFXAvAAAAAAAAAAAmo3YPI5N3j0mUaO+j/ZMvjKslb0Ix2E6AAAAAAAAAACaLU89KSx0OYYSlz3aQTu+zaIFPVsMxL4AAAAAAACAP0bnIj5HH0c/PpuXPRDXE7+cFbM9aOwCPQAAAAAAAAAAmgczPENjPz+m57k8r7D+vtXaoLx6QIC8AAAAAAAAAADTEG0+MbO5Pg7pS75bwb6+IzzHPAb7Ar0AAAAAAAAAAJrTZz2cLDs9gM7gvUXHeL7IiKS8W+gIPQAAAAAAAAAAmi5ivRFMOz5d65e8U694vqmm3bvKsfk8AAAAAAAAAABm0iu+tqVJvJ1knLvHPfm5hSi4PWatyzoAAIA/AACAP5SMBW51bXB5lIwFZHR5cGWUk5SMAmY0lImIh5RSlChLA4wBPJROTk5K/////0r/////SwB0lGJLEEsIhpSMAUOUdJRSlC4="}, "_last_episode_starts": {":type:": "<class 'numpy.ndarray'>", ":serialized:": "gAWVhAAAAAAAAACME251bXB5Ll9jb3JlLm51bWVyaWOUjAtfZnJvbWJ1ZmZlcpSTlCiWEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlIwFbnVtcHmUjAVkdHlwZZSTlIwCYjGUiYiHlFKUKEsDjAF8lE5OTkr/////Sv////9LAHSUYksQhZSMAUOUdJRSlC4="}, "_last_original_obs": null, "_episode_num": 0, "use_sde": false, "sde_sample_freq": -1, "_current_progress_remaining": -0.015808000000000044, "_stats_window_size": 100, "ep_info_buffer": {":type:": "<class 'collections.deque'>", ":serialized:": "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"}, "ep_success_buffer": {":type:": "<class 'collections.deque'>", ":serialized:": "gAWVIAAAAAAAAACMC2NvbGxlY3Rpb25zlIwFZGVxdWWUk5QpS2SGlFKULg=="}, "_n_updates": 310, "observation_space": {":type:": "<class 'gymnasium.spaces.box.Box'>", ":serialized:": "gAWVxQEAAAAAAACMFGd5bW5hc2l1bS5zcGFjZXMuYm94lIwDQm94lJOUKYGUfZQojAVkdHlwZZSMBW51bXB5lIwFZHR5cGWUk5SMAmY0lImIh5RSlChLA4wBPJROTk5K/////0r/////SwB0lGKMBl9zaGFwZZRLCIWUjANsb3eUjBNudW1weS5fY29yZS5udW1lcmljlIwLX2Zyb21idWZmZXKUk5QoliAAAAAAAAAAAAAgwAAAIMAAACDBAAAgwdsPycAAACDBAAAAgAAAAICUaAtLCIWUjAFDlHSUUpSMDWJvdW5kZWRfYmVsb3eUaBMolggAAAAAAAAAAQEBAQEBAQGUaAiMAmIxlImIh5RSlChLA4wBfJROTk5K/////0r/////SwB0lGJLCIWUaBZ0lFKUjARoaWdolGgTKJYgAAAAAAAAAAAAIEAAACBAAAAgQQAAIEHbD8lAAAAgQQAAgD8AAIA/lGgLSwiFlGgWdJRSlIwNYm91bmRlZF9hYm92ZZRoEyiWCAAAAAAAAAABAQEBAQEBAZRoHUsIhZRoFnSUUpSMCGxvd19yZXBylE6MCWhpZ2hfcmVwcpROjApfbnBfcmFuZG9tlE51Yi4=", "dtype": "float32", "_shape": [8], "low": "[ -2.5 -2.5 -10. -10. -6.2831855 -10.\n -0. -0. ]", "bounded_below": "[ True True True True True True True True]", "high": "[ 2.5 2.5 10. 10. 6.2831855 10.\n 1. 1. ]", "bounded_above": "[ True True True True True True True True]", "low_repr": null, "high_repr": null, "_np_random": null}, "action_space": {":type:": "<class 'gymnasium.spaces.discrete.Discrete'>", ":serialized:": "gAWV3AAAAAAAAACMGWd5bW5hc2l1bS5zcGFjZXMuZGlzY3JldGWUjAhEaXNjcmV0ZZSTlCmBlH2UKIwFZHR5cGWUjAVudW1weZSMBWR0eXBllJOUjAJpOJSJiIeUUpQoSwOMATyUTk5OSv////9K/////0sAdJRijAFulIwWbnVtcHkuX2NvcmUubXVsdGlhcnJheZSMBnNjYWxhcpSTlGgLQwgEAAAAAAAAAJSGlFKUjAVzdGFydJRoEWgLQwgAAAAAAAAAAJSGlFKUjAZfc2hhcGWUKYwKX25wX3JhbmRvbZROdWIu", "dtype": "int64", "n": "4", "start": "0", "_shape": [], "_np_random": null}, "n_envs": 16, "n_steps": 2048, "gamma": 0.99, "gae_lambda": 0.95, "ent_coef": 0.0, "vf_coef": 0.5, "max_grad_norm": 0.5, "rollout_buffer_class": {":type:": "<class 'abc.ABCMeta'>", ":serialized:": "gAWVNgAAAAAAAACMIHN0YWJsZV9iYXNlbGluZXMzLmNvbW1vbi5idWZmZXJzlIwNUm9sbG91dEJ1ZmZlcpSTlC4=", "__module__": "stable_baselines3.common.buffers", "__annotations__": "{'observations': <class 'numpy.ndarray'>, 'actions': <class 'numpy.ndarray'>, 'rewards': <class 'numpy.ndarray'>, 'advantages': <class 'numpy.ndarray'>, 'returns': <class 'numpy.ndarray'>, 'episode_starts': <class 'numpy.ndarray'>, 'log_probs': <class 'numpy.ndarray'>, 'values': <class 'numpy.ndarray'>}", "__doc__": "\n Rollout buffer used in on-policy algorithms like A2C/PPO.\n It corresponds to ``buffer_size`` transitions collected\n using the current policy.\n This experience will be discarded after the policy update.\n In order to use PPO objective, we also store the current value of each state\n and the log probability of each taken action.\n\n The term rollout here refers to the model-free notion and should not\n be used with the concept of rollout used in model-based RL or planning.\n Hence, it is only involved in policy and value function training but not action selection.\n\n :param buffer_size: Max number of element in the buffer\n :param observation_space: Observation space\n :param action_space: Action space\n :param device: PyTorch device\n :param gae_lambda: Factor for trade-off of bias vs variance for Generalized Advantage Estimator\n Equivalent to classic advantage when set to 1.\n :param gamma: Discount factor\n :param n_envs: Number of parallel environments\n ", "__init__": "<function RolloutBuffer.__init__ at 0x7c6ee63b6ca0>", "reset": "<function RolloutBuffer.reset at 0x7c6ee63b6d40>", "compute_returns_and_advantage": "<function RolloutBuffer.compute_returns_and_advantage at 0x7c6ee63b6de0>", "add": "<function RolloutBuffer.add at 0x7c6ee63b6f20>", "get": "<function RolloutBuffer.get at 0x7c6ee63b6fc0>", "_get_samples": "<function RolloutBuffer._get_samples at 0x7c6ee63b7060>", "__abstractmethods__": "frozenset()", "_abc_impl": "<_abc._abc_data object at 0x7c6ee6384600>"}, "rollout_buffer_kwargs": {}, "batch_size": 64, "n_epochs": 10, "clip_range": {":type:": "<class 'stable_baselines3.common.utils.FloatSchedule'>", ":serialized:": "gAWVeQAAAAAAAACMHnN0YWJsZV9iYXNlbGluZXMzLmNvbW1vbi51dGlsc5SMDUZsb2F0U2NoZWR1bGWUk5QpgZR9lIwOdmFsdWVfc2NoZWR1bGWUaACMEENvbnN0YW50U2NoZWR1bGWUk5QpgZR9lIwDdmFslEc/yZmZmZmZmnNic2Iu", "value_schedule": "ConstantSchedule(val=0.2)"}, "clip_range_vf": null, "normalize_advantage": true, "target_kl": null, "lr_schedule": {":type:": "<class 'stable_baselines3.common.utils.FloatSchedule'>", ":serialized:": "gAWVeQAAAAAAAACMHnN0YWJsZV9iYXNlbGluZXMzLmNvbW1vbi51dGlsc5SMDUZsb2F0U2NoZWR1bGWUk5QpgZR9lIwOdmFsdWVfc2NoZWR1bGWUaACMEENvbnN0YW50U2NoZWR1bGWUk5QpgZR9lIwDdmFslEc/M6kqMFUyYXNic2Iu", "value_schedule": "ConstantSchedule(val=0.0003)"}, "system_info": {"OS": "Linux-6.6.122+-x86_64-with-glibc2.35 # 1 SMP Thu Apr 30 18:17:14 UTC 2026", "Python": "3.12.13", "Stable-Baselines3": "2.9.0", "PyTorch": "2.11.0+cu128", "GPU Enabled": "True", "Numpy": "2.0.2", "Cloudpickle": "3.1.2", "Gymnasium": "1.3.0", "OpenAI Gym": "0.25.2"}}
 
 
 
 
 
 
 
1
+ {
2
+ "algorithm": "PPO",
3
+ "env_id": "LunarLander-v3",
4
+ "model_name": "ppo-LunarLander-v3",
5
+ "mean_reward": 280.65702628540856,
6
+ "std_reward": 34.31442136477228
7
+ }
ppo-LunarLander-v3.zip CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:4e1a3e42b9b522784f82a2957e1a5d12a052896064f74508e9d35d29c5b8b39a
3
- size 149506
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3481069a7f02d1cc45b2199def51f0b358a443ee93f33fee7672203211fc7ae5
3
+ size 463958
replay.mp4 CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:32ccdf869b3853992e0c12d72e60d6a2d9f39d4bb55b959c390afa3da4bdee3b
3
- size 162020
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:945999e92f8a0016e603ddfc478da5f65b6c3962e4076ee0965beb272c308512
3
+ size 35915
results.json CHANGED
@@ -1 +1,135 @@
1
- {"mean_reward": 268.6505499, "std_reward": 18.514042849671732, "is_deterministic": true, "n_eval_episodes": 10, "eval_datetime": "2026-07-12T18:08:22.196159"}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "env_id": "LunarLander-v3",
3
+ "env_kwargs": {},
4
+ "selection_metric": "mean_reward",
5
+ "min_improvement": 0.0,
6
+ "candidate": {
7
+ "mean_reward": 280.65702628540856,
8
+ "std_reward": 34.31442136477228,
9
+ "course_score": 246.3426049206363,
10
+ "success_rate_200": 0.99,
11
+ "mean_episode_length": 219.81,
12
+ "min_reward": 4.306382930665833,
13
+ "max_reward": 322.0482304101894,
14
+ "n_episodes": 100
15
+ },
16
+ "current_hub": {
17
+ "mean_reward": 268.08165448651226,
18
+ "std_reward": 27.115744906788834,
19
+ "course_score": 240.96590957972342,
20
+ "success_rate_200": 0.98,
21
+ "mean_episode_length": 276.98,
22
+ "min_reward": 113.58891609387271,
23
+ "max_reward": 307.32158342228956,
24
+ "n_episodes": 100
25
+ },
26
+ "improvement": 12.575371798896299,
27
+ "evaluation_seeds": [
28
+ 10000,
29
+ 10001,
30
+ 10002,
31
+ 10003,
32
+ 10004,
33
+ 10005,
34
+ 10006,
35
+ 10007,
36
+ 10008,
37
+ 10009,
38
+ 10010,
39
+ 10011,
40
+ 10012,
41
+ 10013,
42
+ 10014,
43
+ 10015,
44
+ 10016,
45
+ 10017,
46
+ 10018,
47
+ 10019,
48
+ 10020,
49
+ 10021,
50
+ 10022,
51
+ 10023,
52
+ 10024,
53
+ 10025,
54
+ 10026,
55
+ 10027,
56
+ 10028,
57
+ 10029,
58
+ 10030,
59
+ 10031,
60
+ 10032,
61
+ 10033,
62
+ 10034,
63
+ 10035,
64
+ 10036,
65
+ 10037,
66
+ 10038,
67
+ 10039,
68
+ 10040,
69
+ 10041,
70
+ 10042,
71
+ 10043,
72
+ 10044,
73
+ 10045,
74
+ 10046,
75
+ 10047,
76
+ 10048,
77
+ 10049,
78
+ 10050,
79
+ 10051,
80
+ 10052,
81
+ 10053,
82
+ 10054,
83
+ 10055,
84
+ 10056,
85
+ 10057,
86
+ 10058,
87
+ 10059,
88
+ 10060,
89
+ 10061,
90
+ 10062,
91
+ 10063,
92
+ 10064,
93
+ 10065,
94
+ 10066,
95
+ 10067,
96
+ 10068,
97
+ 10069,
98
+ 10070,
99
+ 10071,
100
+ 10072,
101
+ 10073,
102
+ 10074,
103
+ 10075,
104
+ 10076,
105
+ 10077,
106
+ 10078,
107
+ 10079,
108
+ 10080,
109
+ 10081,
110
+ 10082,
111
+ 10083,
112
+ 10084,
113
+ 10085,
114
+ 10086,
115
+ 10087,
116
+ 10088,
117
+ 10089,
118
+ 10090,
119
+ 10091,
120
+ 10092,
121
+ 10093,
122
+ 10094,
123
+ 10095,
124
+ 10096,
125
+ 10097,
126
+ 10098,
127
+ 10099
128
+ ],
129
+ "replay": {
130
+ "path": "/content/hf-staging/KaptainKris__HuggingFace_RL_Course/replay.mp4",
131
+ "seed": 42,
132
+ "reward": 266.92386324755154,
133
+ "steps": 222
134
+ }
135
+ }
training_config.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "experiment_name": "ppo_lunarlander_128x128",
3
+ "env_id": "LunarLander-v3",
4
+ "env_kwargs": {},
5
+ "total_timesteps": 5000000,
6
+ "n_envs": 16,
7
+ "seed": 42,
8
+ "actor_layers": [
9
+ 128,
10
+ 128
11
+ ],
12
+ "critic_layers": [
13
+ 128,
14
+ 128
15
+ ],
16
+ "learning_rate": 0.0003,
17
+ "n_steps": 1024,
18
+ "batch_size": 64,
19
+ "n_epochs": 4,
20
+ "gamma": 0.999,
21
+ "gae_lambda": 0.98,
22
+ "ent_coef": 0.01,
23
+ "clip_range": 0.2,
24
+ "eval_every_timesteps": 50000,
25
+ "checkpoint_every_timesteps": 100000,
26
+ "n_eval_episodes": 20,
27
+ "device": "cpu"
28
+ }