Generalized Multi-agent Social Simulation Framework
Gang Li, Jie Lin, Yining Tang, Ziteng Wang, Yirui Huang, Junyu Zhang, Shuang Luo, Chao Wu, Yike Guo
TL;DR
The paper addresses scalability, reusability, and memory efficiency in multi-agent social simulations by introducing a modular, object-oriented framework with hierarchical base classes and a memory summarization mechanism. It presents a retrieval-then-summarization memory pipeline and demonstrates how derived classes can customize environments to model online social interactions. The approach yields improvements across Self-Knowledge, Reaction, General Response, and Memory System metrics in controlled benchmarks, with ablation confirming the value of memory summarization. End-to-end evaluations in online-discussion scenarios show increasingly nuanced and policy-aware agent behavior, aided by internet information access. Overall, the framework enhances realism and adaptability in large-scale social simulations and provides a pathway for reusable, configurable agent-based environments.
Abstract
Multi-agent social interaction has clearly benefited from Large Language Models. However, current simulation systems still face challenges such as difficulties in scaling to diverse scenarios and poor reusability due to a lack of modular design. To address these issues, we designed and developed a modular, object-oriented framework that organically integrates various base classes through a hierarchical structure, harvesting scalability and reusability. We inherited the framework to realize common derived classes. Additionally, a memory summarization mechanism is proposed to filter and distill relevant information from raw memory data, prioritizing contextually salient events and interactions. By selecting and combining some necessary derived classes, we customized a specific simulated environment. Utilizing this simulated environment, we successfully simulated human interactions on social media, replicating real-world online social behaviors. The source code for the project will be released and evolve.
