highway_env中自定义环境

本文介绍了如何基于gym0.26版本的highway_env创建自定义驾驶环境。首先,通过复制intersection_env并修改类名为MyIntersection,然后在gym注册表中添加新环境的注册信息。接着,在__init__.py中更新导入,最后通过gym.make()测试新环境。作者计划后续分享更多关于环境修改和函数解析的内容。
摘要由CSDN通过智能技术生成

前言

highway_env中集成了很多强化学习或者控制算法测试的驾驶环境,但很多时候我们需要依据需求对环境进行自定义,这里给出了自定义环境的一些步骤,主要是基于gym==0.26版本。

创建步骤

建议利用已有环境模板,创建一个新的环境。

创建一个自己的环境主要有以下步骤:

1.复制intersection_env代码,创建自己的环境文件myIntersection_env

创建位置我选择的是和其他环境在一个文件夹中,即envs文件夹

2.修改类名,注意把所有类名修改完

class MyIntersection(AbstractEnv):

3.导入gym的注册表文件

from gym import register

4.添加注册信息

register(
    id='myIntersection-v0',#调用环境时的id
    entry_point='highway_env.envs:MyIntersection',#此处的feiv0应该与上文所述的类名相同
)

其中id是在调用环境会使用到名称,entry_point最后是之前改的类名

5.在__init__.py中更新

from highway_env.envs.highway_env import *
from highway_env.envs.merge_env import *
from highway_env.envs.parking_env import *
from highway_env.envs.roundabout_env import *
from highway_env.envs.two_way_env import *
from highway_env.envs.intersection_env import *
from highway_env.envs.lane_keeping_env import *
from highway_env.envs.u_turn_env import *
from highway_env.envs.exit_env import *
from highway_env.envs.racetrack_env import *
from highway_env.envs.myIntersection_env import *

最后一行就是添加的环境文件名

6.测试环境

import gym
import pprint
from highway_env.envs.common.abstract import AbstractEnv
env_name = 'myIntersection-v0'
env = gym.make(env_name)

第一次发博客,其中有很多错误的地方,希望能得到原谅。上面只是简单的环境文件创建,后续还会更新一些环境修改和函数解析的具体文章,希望能和大家互相交流,互相学习。

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值