码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • gym强化学习环境搭建


    1、安装依赖库

    通过测试发现除了gym以外,pygame也是是必须的
    pip install tensorflow
    pip install keras
    pip install keras-rl
    pip install PyOpenGL
    pip install pyglet1.5.11
    pip install gym
    0.19.0 #测试0.19.0可以正常运行,0.26.0,fit input错误
    pip install pygame

    2、测试代码

    gym.make()必须指定渲染模式如 env = gym.make(“CartPole-v1”, render_mode = “human”),测试发现 render_mode = “human” 会正常显示游戏画面,而 render_mode=“rgb_array” 不会显示游戏画面
    env.step的返回值有之前的4个变为了5个
    observation, reward, done, info,_ = env.step(action)

    import gym
    
    env = gym.make("CartPole-v1", render_mode = "human")	# 创建环境
    for i_episode in range(20):		
    	observation = env.reset()	# 保存环境初始状态
    	for t in range(100):
    		env.render()
    		#print(observation)		# [位置,加速度,角度,角加速度]
    		action = env.action_space.sample()	# 获取一个动作
    		observation, reward, done, info,_ = env.step(action)	# 获取执行上面动作的结果
    		if done:
    			print("Episode finished after {} timesteps".format(t + 1))
    			break
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    3、源码
    import gym
    import tensorflow as tf
    import keras
    from tensorflow.keras.models import Sequential
    from tensorflow.keras.layers import Dense, Activation, Flatten
    from tensorflow.keras.optimizers import Adam
    from rl.agents import DQNAgent
    from rl.policy import BoltzmannQPolicy
    from rl.memory import SequentialMemory
    
    
    def build_agent(nb_actions,model):
        memory = SequentialMemory(limit=50000, window_length=1
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
  • 相关阅读:
    vscode两个项目环境不一致怎么办
    100 Gbps 网卡的 TCP 困境
    算法通关村——盘点面试大热门之区间问题
    从实时应用角度谈通信总线仲裁机制和网络流控
    拍案叫绝!阿里内部开源Spring Boot实战+进阶+面试攻略手慢无
    递归之谜:解析无限嵌套的美
    机器人中的数值优化(八)——拟牛顿方法(上)
    MindSpore社区群组介绍系列之四——WG-Research
    JVM诊断及工具笔记(4) 使用visualvm分析JVM堆内存泄漏
    Ceph-deploy跳过gpg-key验证(离线环境安装Ceph)
  • 原文地址:https://blog.csdn.net/haodawei123/article/details/127956164
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号