TypeError: __init__() got an unexpected keyword argument ‘timestep_limit‘ 解决方案

在尝试运行自定义的gym环境时遇到了TypeError,原因是使用了`timestep_limit`关键字,但该参数已被更改为`max_episode_steps`。通过查阅相关资料并更新代码,将`timestep_limit`替换为`max_episode_steps`解决了问题。

问题描述

今天在运行自己创建的环境时,在执行以下代码时报错:

gym.envs.registration.register(
    id='Fourrooms-v0',
    entry_point='fourrooms:Fourrooms',
    timestep_limit=20000,
    reward_threshold=1,
)

 错误描述:

  File "/opt/conda/envs/moc/lib/python3.7/site-packages/gym/envs/registration.py", line 153, in register
    return registry.register(id, **kwargs)
  File "/opt/conda/envs/moc/lib/python3.7/site-packages/gym/envs/registration.py", line 147, in register
    self.env_specs[id] = EnvSpec(id, **kwargs)
TypeError: __init__() got an unexpected keyword argument 'timestep_limit'

解决方案

通过查阅:https://github.com/MattChanTK/gym-maze/issues/8

timestep_limit被重新命名成了max_episode_steps,因此,将代码中的timestep_limit修改为max_episode_steps即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值