
在一个虚拟的太空城市中模拟25个人工智能代理的行为!
三个要点
✔️ 一个通过使用大规模语言模型和互动代理来模拟人类行为的架构。
✔️ 构建了一个具有25个代理和虚拟游戏环境的人工村社会,以模拟群体行为
✔️ 验证结果证实了代理人之间形成了突发的群体动态关系
Generative Agents: Interactive Simulacra of Human Behavior
written by Joon Sung Park, Joseph C. O'Brien, Carrie J. Cai, Meredith Ringel Morris, Percy Liang, Michael S. Bernstein
(Submitted on 7 Apr 2023)
Comments: Published on arxiv.
Subjects: Human-Computer Interaction (cs.HC); Artificial Intelligence (cs.AI); Machine Learning (cs.LG)
code:![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
介绍
对人类行为的模拟是各个领域的重要研究领域,例如对虚拟空间中社区形成的考察、社交机器人和开放世界中更真实的游戏角色的开发,历来都是众多研究的主题。
然而,现有的研究有一个问题,即代理只能模拟仅以当前环境为条件的行为(例如,机器人需要采取什么行动来进入一个房间),这使得它无法再现复杂的环境,如真实世界。
本文介绍了一篇论文,该论文利用由记忆流、反思和规划三个元素组成的架构解决了上述问题,并通过由该架构生成的25个代理构建了一个人工村社会,成功地模拟了集体行为。本文介绍了一篇成功实现这一目标的论文。
代理人头像和通信
为了在本文中模拟集体行动,参考非常流行的RPG游戏《模拟人生》,创建了一个虚拟环境 "小镇",其中包括一个小镇和25个作为其居民的代理人。(见下图)
Smallville虚拟环境是使用Phaser(一种网页游戏开发框架)建立的,其中JSON数据由代理的输出行动更新,并为下一个时间步骤处理进程。为了建立每个代理人的档案,如其职业和与其他代理人的关系,以下自然语言处理描述被输入作为代理人的初始记忆。
在这个句子中,特工被赋予了一个名为约翰-林的人的初始记忆,他是一个药店职员,喜欢帮助别人。这样创建的代理人会自发地进行一些行动,如日常生活和在小镇的代理人之间建立关系。上述林俊杰的例子可以在下图中看到,他在早上6点左右醒来,做着刷牙、洗澡和吃早餐的晨练,与妻子梅和儿子艾迪快速交流问候,然后去工作。
另一个例子是一个叫伊莎贝拉-罗德里格斯的代理人的核查,其最初的记忆是在2月14日下午5-7点在一家叫霍布斯咖啡馆的商店组织一个情人节派对。
伊莎贝拉看到朋友和客户就开始邀请他们参加霍布斯咖啡馆的聚会,13日下午,她被观察到在咖啡馆装饰了一天。因此,在这一天,包括伊莎贝拉在内的五名特工聚集在霍布斯咖啡馆,并被观察到享受自己的派对,如下图所示。(IR是伊莎贝拉-罗德里格斯)
在这个验证中,只有伊莎贝拉举办派对的初始记忆是人为设置的,而所有的社会行为,如向朋友传播信息、装饰咖啡馆和在当天与朋友互动,都是由代理出现的。
从这两个例子中可以看出,值得注意的是,这些社会行为不是预先编程的,而是代理人之间从最初的记忆中产生的。
生成式代理架构
上述代理行为的基础是一种新的代理架构,它将大规模的语言模型与作为语言模型输出条件的相关信息的合成和检索机制结合在一起,如果没有这些架构,代理就不能根据过去的经验以一致的社会行为行事他们不能根据过去的经验以一致的社会行为方式行事。如下图所示,本文中的代理架构由内存流、反思和规划组成,通过利用这些架构和大规模的语言模型(本文中ChatGPT的gpt3.5-turbo)来实现使得生成的代理能够执行上述行为。
让我们逐一看一下。
记忆流
记忆流的主要作用是维护代理人的经验记录,它由一个记忆对象的列表组成,每个对象都包含一个自然语言描述,一个创建的时间戳和一个最近访问的类型戳。(见下图)
记忆流中最基本的元素是观察,它是由代理人直接感知的事件,一般来说,观察包括代理人自己执行的或感知到的由其他代理人执行的行动。(例如,重新安排椅子,在一杯咖啡中学习考试)。
代理人在决定行动时考虑什么是很重要的,在这种情况下,最有效的行动是由三个因素打分决定的:经常性、重要性和相关性。
频繁性给最近访问的对象分配较高的分数,因此,最近的行动和事件对代理人的行为有较高的影响。
IMPORTANCE通过给代理人认为重要的对象分配较高的分数来区分平凡和核心对象。例如,在房间里吃早餐等日常事件的重要性较低,而与重要人物告别等事件的重要性较高。
相关性(RELEVANCE)对与当前情况相关的对象给予较高的分数。例如,如果情况是一个学生正在和他的同学讨论为化学考试学习什么,那么与他们的早餐有关的对象将有较低的相关性,而与老师和学校作业有关的对象将有较高的相关性。
通过最小-最大比例和三个因素的加权组合,在[0, 1]的范围内将经常性、重要性和相关性的分数归一化,从而确定最终得分。
反思
反思是由代理人产生的更高层次的抽象思想,它在代理人内部定期产生。
在本文的实施过程中,当上述重要性分数的总和超过代理所识别的事件的某个阈值时,就会产生反映,在实践中,代理每天大约产生两到三个反映。
反射的第一步是决定代理将反映什么,为了做到这一点,代理的记忆流中最近的100个事件(例如,Klaus Mueller正在阅读一本关于豪华住宅区的书)在大语言中被查询到对模型进行查询。
然后,对于语言模型,"仅鉴于上述信息,我们可以回答关于声明中的主体的三个最突出的高级问题是什么?"(见只考虑到上面的信息,我们可以回答关于报表中的主体的3个最突出的高层次问题是什么?")。问题是这样问的。
语言模型对这个问题的反应会产生一个候选问题,如"Klaus Mueller对什么话题有热情?"(What topic is Klaus Mueller passionate about?),这就产生了一组候选问题。
使用生成的问题作为搜索查询,系统为每个问题收集相关的记忆,并提示用户引用特定的记忆作为回答问题的基础。这些提示的全文如下。
这个过程会产生诸如"克劳斯-穆勒致力于他对城市化的研究"这样的句子。然后,这些句子作为一个反射被存储在内存流中,其中包含一个指向被引用的内存对象的指针。
从这些序列中,代理人生成一个树状结构(反思树),包括代理人对外部环境的影响(观察),由叶子节点表示,以及由此产生的抽象思想(反思),如下图所示。
该图显示了克劳斯-穆勒的反思树,观察和反思反复合成,最终产生了 "克劳斯-穆勒对研究高度专注 "的自我认知。该图是克劳斯-穆勒的反思树。
规划
为了使代理人的行为一致,他们需要在较长的时间范围内规划他们的一天,包括过去的事件。规划被用来描述这些代理的未来行为,并确保其行为在一段时间内的一致性。
规划包含三个要素:位置、开始时间和持续时间,并以与反思相同的方式存储在记忆流中。
为了创建一个计划,采用了自上而下的方法,首先创建一个计划,给出当天计划的总体思路,然后由语言模型递归地生成计划的细节。为了创建第一个计划,在语言模型中输入代理人的一般描述(姓名、特征、最近事件的摘要等)和前一天的摘要。提示如下,在语言模型生成细节时,句子的后半部分未完成。
这些提示的结果是将代理人的日常计划粗略地分为五到八块,以上面一个叫Eddy Lin的代理人的提示为例,日常计划分为以下几部分。
早上8点起床,完成晨练→10点去橡树山学院上课→.. ....→下午1点到5点进行新的音乐创作→5点半吃晚饭→晚上11点前完成学校作业并睡觉
然后,代理将这个计划存储在主流中,并进一步分解,以创建更详细的行动。例如,上述从下午1点到5点进行新作的计划可以分解为以下内容
下午1点:开始集思广益,为作文出谋划策 → 下午4点:在复习和修改作文前休息一下,养精蓄锐
然后将其进一步分解为每5-15分钟的行动,如下图所示。
下午4点:吃点水果、燕麦片或坚果之类的小点心 → 下午4点05分:在工作区走一走 → .. . → 下午4点50分:清理工作区
代理人可以根据环境影响和代理人之间的相互作用在中途改变这些计划,而且这些计划在每个时间步长都会动态更新。
端对端评估
在本文中,上述架构用生活在Smallville的25个代理进行了验证,以证明它能够更可靠地模拟集体行动。
测量
信息扩散是社会和行为科学中普遍研究的现象,预计当有重要信息时,这种信息扩散会在代理人之间发生。
为了测试这种情况是否发生,我们在两天内对斯莫尔维尔的25名特工测量了两个特定信息的传播情况
- 山姆的村长候选资格
- 伊莎贝拉在霍布斯咖啡馆举办的情人节派对(伊莎贝拉将在霍布斯咖啡馆举办情人节派对)。
在核查开始时,这两条信息都只由各自的发送者(村长候选人萨姆和党的组织者伊莎贝拉)掌握。
对25个代理中的每一个经过两天的验证,以确认信息扩散的发生。
- '你知道谁在竞选市长吗?
- '你知道有一个情人节聚会吗?
并分析了代理人的回答,如果他们知道,就给他们贴上YES的标签,如果不知道,就给他们贴上NO的标签。
除此以外,实验还测量了在模拟过程中通过代理人之间的对话形成的友谊密度(网络密度)的变化。
在模拟之前和之后,每个代理人都会被问到 "你知道<名>吗?"如果这两个代理认识对方,则认为已经形成了友谊。
然后,答案被用来形成一个无向图,25个顶点代表代理人的顶点(V),连接顶点的线为边(E),根据这个图,网络密度=2 * |E| / |V| (|V| - 1)被用来研究网络的变化。研究了模拟前后网络密度的变化。
结果
两天的模拟结果显示,知道萨姆竞选村长的代理人数量从1人(4%)增加到8人(32%),知道伊莎贝拉组织的聚会的代理人数量从1人(4%)增加到12人(48%)。
下图显示了有关伊莎贝拉组织的聚会的信息是如何传播的。
从图中可以看出,证实了信息是通过代理人之间的互动传播的,如伊莎贝拉→山姆→珍妮弗。
模拟前后的网络密度从0.167明显增加到0.74,表明代理人在模拟期间彼此形成了新的友谊。
摘要
它是怎样的?在这篇文章中,我们描述了一篇论文,通过建立一个由记忆流、反思和规划三个元素组成的架构,成功地模拟了集体行为,并从该架构产生的25个代理中构建了一个人工村社会。该论文被提交。
文中说,这项研究中进行的实验一般来说是不充分的
- 本研究中产生的代理人的实验仅限于两天的短暂时间,未来的研究应该更全面地考察代理人的能力和局限性。
- 已经发现语言模型包含偏见,而代理人的行为方式可能反映了这些偏见。
因此需要进一步研究。
然而,本研究中展示的代理的行为可以用于各个领域,如社会机器人和社会计算系统,我们非常期待未来的发展。本文介绍的代理的结构和验证结果的细节可以在本文中找到,鼓励感兴趣的读者参考。
与本文相关的类别