【问题标题】:Unable to see stable-baselines output?看不到稳定基线输出?
【发布时间】:2022-12-17 13:33:07
【问题描述】:

问候!

我是 stable-baselines3 的新手,但我看过很多关于它的实现和自定义环境制定的教程。

使用 gym 和 stable-baselines3 SAC 算法开发我的模型后,我应用 (check_env) 函数检查可能的错误,一切都很完美。但是,每当我运行代码时,我看到的唯一输出是:

使用 cpu 设备 将环境包装在 DummyVecEnv 中

并且训练会话将在没有任何输出或将模型保存到目录文件中的情况下停止。

请问有什么问题,我已经将详细设置为 1。

此致, 密歇根州

【问题讨论】:

  • 请提供足够的代码,以便其他人可以更好地理解或重现问题。

标签: python stable-baselines


【解决方案1】:

我的代码也有类似的问题。它只显示“使用 cpu 设备”,而不是在我的环境中打印监控变量。此外,当我使用 env = make_vec_env(env_id, n_envs=num_cpu) 而不是 SubprocVecEnv,然后它打印我的变量,但似乎没有使用所有 CPU 内核!

谢谢

import gym
import numpy as np

from stable_baselines3 import DQN, PPO, A2C, SAC
from stable_baselines3.common.evaluation import evaluate_policy

from stable_baselines3.common.vec_env import DummyVecEnv, SubprocVecEnv
from stable_baselines3.common.utils import set_random_seed
from stable_baselines3.common.evaluation import evaluate_policy
from stable_baselines3.common.env_util import make_vec_env

from gym.envs.registration import load_env_plugins as _load_env_plugins
from gym.envs.registration import make, register, registry, spec

register(
    id="SmartCHP-v0",
    entry_point="SmartCHP_env:CHPEnv"
)


def make_env(env_id, rank, seed=0):
    """
    Utility function for multiprocessed env.

    :param env_id: (str) the environment ID
    :param num_env: (int) the number of environments you wish to have in subprocesses
    :param seed: (int) the inital seed for RNG
    :param rank: (int) index of the subprocess
    """
    def _init():
        env = gym.make(env_id)
        env.seed(seed + rank)
        return env
    set_random_seed(seed)
    return _init

env_id = "SmartCHP-v0"


if __name__ == '__main__':
    env_id = "SmartCHP-v0"
    num_cpu = 16  # Number of processes to use
    # Create the vectorized environment
    env = SubprocVecEnv([make_env(env_id, i) for i in range(num_cpu)])
    # env = make_vec_env(env_id, n_envs=num_cpu)   

    model = A2C('MlpPolicy', env, verbose=1).learn(total_timesteps=int(2*24*98))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-17
    • 2020-10-25
    • 1970-01-01
    • 2021-10-14
    • 2021-11-09
    • 2012-01-08
    • 2012-08-06
    • 1970-01-01
    相关资源
    最近更新 更多