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