Views
No views yet
1from stable_baselines3 import ...
2from huggingface_sb3 import load_from_hub
3
4def fast_start_decay(initial_value, final_value, power=2): #Power law decay
5 """
6 LR decreases FAST at the beginning, then slowly later.
7 power > 1 makes the curve drop faster early.
8 """
9 def lr_func(progress_remaining):
10 # progress_remaining: 1 → 0
11 t = 1 - progress_remaining # 0 → 1
12 return initial_value - (initial_value - final_value) * (t ** (1/power))
13 return lr_func
14
15
16env = make_vec_env('LunarLander-v2', n_envs=8, vec_env_cls=SubprocVecEnv)
17
18
19model = PPO(
20 policy="MlpPolicy",
21 env=env,
22 n_steps=2048,
23 batch_size=64,
24 n_epochs=10,
25 gamma=0.998,
26 gae_lambda=0.97,
27 learning_rate=fast_start_decay(0.001, 0.0001, 2),
28 clip_range=fast_start_decay(0.8, 0.1, 3),
29 ent_coef=0.01,
30 tensorboard_log="./ppo_lunarlander_tb/",
31)
32
33model.learn(total_timesteps=int(8e5), tb_log_name="PPO_LunarLander")
34
35...