跳转到主要内容

用于在强化学习智能体中再现支配层级的环境

项目描述

Chicken Coop

  • 完整论文
  • 即将推出:扩展摘要
  • 即将推出:海报
  • 即将推出:演示文稿
  • 即将推出:演讲视频

这是我们将在AAMAS 2024上发表的论文《强化学习智能体中涌现的支配层级》的配套代码。

摘要

现代强化学习(RL)算法能够在各种任务中超越人类。多智能体强化学习(MARL)环境提出额外的挑战,而混合动机智能体群体中的成功合作则依赖于个体和群体目标之间微妙的平衡。社会惯例和规范,通常受人类机构启发,被用作实现这种平衡的工具。

在本文中,我们研究了一种根本的、被广泛研究的社会惯例,这种惯例在动物和人类社会中都支撑着合作:支配层级。

我们将支配层级的动物学理论应用于人工智能体,尽可能少地修改已建立的术语和定义。我们证明了在没有明确编程或内在奖励的情况下,强化学习智能体的群体可以发明、学习、执行并向新群体传播支配层级。涌现的支配层级结构与在鸡、老鼠、鱼类和其他物种中研究过的层级结构相似。

鸡舍是一个多智能体环境,智能体在其中学习如何形成相互之间的支配等级,就像动物社会中形成的等级一样。该环境是经典斗鸡游戏的多玩家变体。

上图显示了六个智能体(以不同颜色的线条表示)在四个示例鸡舍种群中的攻击性水平。顶行中的两个种群形成传递性的支配等级,而底行中的两个种群形成非传递性的支配等级。

安装

在Python 3.11上进行了测试。

# Set up virtualenv if needed:
python -m venv chicken-coop-env
source chicken-coop-env/bin/activate

pip install chicken-coop

# Run tests
_test_chicken_coop

用法

基本运行

chicken_coop run

论文中使用的主体运行

chicken_coop run --moniker paper-run --use-tune --n-tune-samples 300

将经验丰富的智能体移植到天真种群中

chicken_coop transplant --moniker paper-transplant --visitor-trek \
  ~/.chicken_coop/<YOUR_PREVIOUS_RUN>

消除对手感知准确性

chicken_coop run --moniker paper-ablate-observation --use-tune --n-tune-samples 10 \
  --observation-accuracy 0.0 \
  --observation-accuracy 0.1 \
  --observation-accuracy 0.2 \
  --observation-accuracy 0.3 \
  --observation-accuracy 0.4 \
  --observation-accuracy 0.5 \
  --observation-accuracy 0.6 \
  --observation-accuracy 0.7 \
  --observation-accuracy 0.8 \
  --observation-accuracy 0.9 \
  --observation-accuracy 1.0

研究非线性

chicken_coop run --moniker paper-cycles --use-tune --n-tune-samples 30 --n-agents 12 \
  --learning-rate 3e-05

引用

如果您使用了鸡舍模块或我们的论文中的任何见解,请引用我们的论文

@inproceedings{rachum2024dh,
  title = {Emergent Dominance Hierarchies in Reinforcement Learning Agents},
  author = {Rachum, Ram and Nakar, Yonatan and Tomlinson, Bill and Alon, Nitay and Mirsky, Reuth},
  year = 2024,
  publisher = {International Foundation for Autonomous Agents and Multiagent Systems},
  booktitle = {Proceedings of the 2024 International Conference on Autonomous Agents and Multiagent Systems},
  location = {Auckland, New Zealand},
  series = {AAMAS '24}
}

项目详情


下载文件

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

源代码分发

chicken_coop-0.0.5.tar.gz (50.8 kB 查看哈希值)

上传时间 源代码

构建分发

chicken_coop-0.0.5-py2.py3-none-any.whl (63.8 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面