gym 搭建 RL 環境

2022-09-18 02:27:32 字數 1534 閱讀 3093

gym的呼叫遵從以下的順序

env = gym.make('x')

observation = env.reset()

for i in range(time_steps):

env.render()

action = policy(observation)

observation, reward, done, info = env.step(action)

if done:

……break

env.close()

例程是乙個簡單的策略,杆左斜車左移,右斜則右移。

import gym

import numpy as np

env = gym.make('cartpole-v0')

t_all =

action_bef = 0

for i_episode in range(5):

observation = env.reset()

for t in range(100):

env.render()

cp, cv, pa, pv = observation

if abs(pa)<= 0.1:

action = 1 -action_bef

elif pa >= 0:

action = 1

elif pa <= 0:

action = 0

observation, reward, done, info = env.step(action)

action_bef = action

if done:

# print("episode finished after {} timesteps".format(t+1))

break

if t ==99:

env.close()

print(t_all)

print(np.mean(t_all))

乙個完整的gym環境包括以下函式:類構建、初始化、

開啟gym.envs目錄:/usr/local/lib/python3.7/site-packages/gym/envs

將自己編寫的myenv.py拷貝至乙個aa目錄

envs/aa下__init__.py新增from gym.envs.classic_control.myenv import myenv

env下__init__.py新增

register(

id='myenv-v0',

entry_point='gym.envs.classic_control:myenv,

max_episode_steps=999,

)

id = 'myenv-v0'

env = gym.make('id')

env.reset()

env.step()

env.sloce()

gym初級 初始gym環境(二)

import gym env gym.make cartpole v0 print env.action space print env.observation space 輸出結果為 discrete 2 box 4,意思是動作空間中的動作是離散 discrete 的2個動作,狀態空間中的狀態是4...

強化學習 蛇棋遊戲gym環境搭建

學習強化學習精要核心演算法與tensorflow實現這本書中,關於蛇棋遊戲利用gym搭建。遊戲的規則非常簡單,詳細請參考馮超的書 強化學習精要核心演算法與tensorflow實現 下面是遊戲的具體實現 import numpy as np import gym from gym.spaces imp...

ubuntu16 04 配置gym環境

conda是乙個開源包管理系統和環境管理系統,用於安裝多個版本的軟體包及其依賴關係,並在它們之間輕鬆切換。它適用於linux,os x和windows,是為python程式建立的,但可以打包和分發任何軟體。anaconda是乙個開源的python發行版本,包含了conda python等180多個科...