跳转到主要内容

部分观察的视觉强化学习领域。

项目描述

CowHerd

PyPI

CowHerd是一个部分观察的强化学习环境,玩家在区域内行走,并因挤奶而获得奖励。奶牛会试图逃跑,玩家可以放置围栏来帮助捕捉它们。CowHerd的实现基于Crafter环境。

Cow Herd Video

自己玩

您可以使用交互式窗口和键盘输入自己玩游戏。按键到动作、健康水平和库存状态的映射将打印到终端。

# Install with GUI
pip3 install 'cowherd[gui]'

# Start the game
cowherd

# Alternative way to start the game
python3 -m cowherd.run_gui

以下是一些可选的命令行标志

标志 默认 描述
--window <宽度> <高度> 800 800 以像素为单位的窗口大小,用作宽度和高度。
--fps <整数> 5 每秒更新环境的次数。
--record <filename>.mp4 None 记录轨迹的视频。
--num_cows 3 环境中奶牛的数量。
--view <宽度> <高度> 7 7 单元格布局大小;确定视图距离。
--length <整数> None 关卡的时间限制。
--seed <整数> None 确定世界生成和生物。

训练代理

安装: pip3 install -U cowherd

环境遵循OpenAI Gym接口

import cowherd

env = cowherd.Env(seed=0)
obs = env.reset()
assert obs.shape == (64, 64, 3)

done = False
while not done:
  action = env.action_space.sample()
  obs, reward, done, info = env.step(action)

环境详情

奖励

每当玩家给一头奶牛挤奶时,都会获得+1的奖励。

终止

关卡在1000步后终止。

观察空间

每个观察结果是一个RGB图像,显示了玩家周围世界的局部视图,以及代理的库存状态。

动作空间

动作空间是分类的。每个动作都是一个表示可能动作之一的整数索引。

整数 名称 描述
0 noop 什么都不做。
1 向左移动 向左行走。
2 向右移动 向右行走。
3 向上移动 向上行走。
4 向下移动 向下行走。
5 执行 拾起放置的栅栏或挤奶。
6 放置栅栏 在玩家前方放置栅栏。

问题

请在Github上打开一个issue

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

cowherd-0.3.0.tar.gz (74.2 kB 查看哈希值)

上传时间

由以下支持