yaaf:又一个代理框架

yaaf的Python项目详细描述


yaaf:又一个代理框架

一个极简强化学习框架。

安装

  $ pip install yaaf                               # Install YAAF
  $ pip install gym[atari]                         # Install OpenAI Gym's Atari environments
  $ git clone https://github.com/jmribeiro/yaaf    # Clone the repo for the examples and tutorials
  $ cd yaaf/examples                               
  $ python 0_space_invaders_random_agent.py        # Run example
  • 快速原型设计:只需几行代码就可以轻松地在环境中设置代理:

    # Setup the Environment
    environment = OpenAIGymEnvironment(name="SpaceInvaders-v0", render=True)
    
    # Setup the Agent
    agent = RandomAgent(environment.action_space)
    
    # Run the agent on the environment for 5 episodes
    runner = EpisodeRunners(agent, environment, episodes=5)
    runner.run()
    environment.close()
    
  • 简单性

    状态:具有给定形状的张量/numpy数组;

    actions:如果是离散动作空间,则为整数;如果是连续动作空间,则为浮点数;

    timesteps:以(state,action,reward,next,is_terminal,info)形式命名的元组

    agents:给定状态时能够执行操作的对象。如果可以训练,在给定时间段时能够学习

    environments:随时间演变的对象,在这些对象中,代理可以执行操作;

    runners:在环境中与参与者(代理或策略)交互的对象,在每个时间步通知观察者列表;

    metrics:在给定运行中评估代理或策略性能的对象。作为观察物传给赛跑者。

    presenters(todo):在给定运行中显示代理性能的对象。用于绘图和比较代理。

  • 结果再现性

    在给定的环境中创建和评估代理之后,可以将代理持久保存到磁盘上,这样程序员就可以加载经过预训练的代理,并在不同的场景中对它们进行比较。

    实现的代理

    计划的代理

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java testNG优先级和依赖性   java JPQL:以下WHERE子句使用继承时出现问题   java是否可以在JTable渲染器中进行查询?   java如何在javascript中向url添加变量并使用@PathVariable获取   在外部jframe中显示java控制台   java I无法连接到IBM MQ的QM错误2035 MQRC\u未授权   apache zookeeper如何解决Storm应用程序在本地集群中运行时出现的错误“java.net.ConnectException:连接被拒绝:connect”?   读取第一行的java文本文件具有键和第二行前进值   java在哪个线程池中affinityRun提交任务?如何配置线程数?   Java拆分字符串正则表达式:前导空格   如何在Java中读取Pop3服务器中的入站电子邮件   带/不带布局管理器的swing Java定位GUI组件   在Spring Webflux中使用域设置java多会话ID   http Java web将其内容刮除,但只刮除正文样式,然后不退出并永远运行   java图形绘制组件和循环故障