QTypeMix: Enhancing Multi-Agent Cooperative Strategies through Heterogeneous and Homogeneous Value Decomposition

Songchen Fu, Shaojing Zhao, Ta Li, YongHong Yan
8/12/2024
cs.MAcs.AI

No official code found. Best implementation: linkjoker1006/pymarl3 (3 stars, Apache-2.0, last commit 2025-02-18).

Abstract

In multi-agent cooperative tasks, the presence of heterogeneous agents is familiar. Compared to cooperation among homogeneous agents, collaboration requires considering the best-suited sub-tasks for each agent. However, the operation of multi-agent systems often involves a large amount of complex interaction information, making it more challenging to learn heterogeneous strategies. Related multi-agent reinforcement learning methods sometimes use grouping mechanisms to form smaller cooperative groups or leverage prior domain knowledge to learn strategies for different roles. In contrast, agents should learn deeper role features without relying on additional information. Therefore, we propose QTypeMix, which divides the value decomposition process into homogeneous and heterogeneous stages. QTypeMix learns to extract type features from local historical observations through the TE loss. In addition, we introduce advanced network structures containing attention mechanisms and hypernets to enhance the representation capability and achieve the value decomposition process. The results of testing the proposed method on 14 maps from SMAC and SMACv2 show that QTypeMix achieves state-of-the-art performance in tasks of varying difficulty.

View on arXivView PDF

Code Implementations(1)

Apache-2.0

We added our proposed QTypeMix method to the pymarl3 framework and optimized some code details.

30Shell, PythonAug 12, 20241 years agoApache-2.0

Similar Papers

Cite this paper

@article{fu2024qtypemix,
  title  = {QTypeMix: Enhancing Multi-Agent Cooperative Strategies through Heterogeneous and Homogeneous Value Decomposition},
  author = {Songchen Fu and Shaojing Zhao and Ta Li and YongHong Yan},
  year   = {2024},
  eprint = {2408.07098},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2408.07098v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2408.07098.svg)](https://codeofpaper.com/paper/2408.07098)

Discussion