资讯动态

人机博弈中的社会合作与神经机制:从行为实验到fMRI分析

发布时间:2026/9/2 2:57:57 来源:尧图企业网站定制
当你在一个投资博弈中对面坐着一位陌生人和一台 AI 助手你的决策会一样吗如果 AI 表现出“合作”或“背叛”你大脑中负责社会认知的脑区会像处理真人那样被激活吗这类问题正是“人工智能互动情境中的社会合作行为及其神经机制”研究的核心。本文不讨论纯算法调参而是围绕一个典型的行为——fMRI 研究设计从心理学和认知神经科学视角拆解“利益最大化”在人际合作与人机合作中的差异并给出可直接复用的行为数据模拟与统计脚本帮助后续想做实验或阅读相关论文的同学快速建立分析框架。1. 为什么研究“人类与AI合作”中的社会合作行为1.1 从人际合作到人机合作行为决策的新场景社会合作是人类文明的基石。经济学家、心理学家和神经科学家长期使用博弈任务来研究合作行为其中最经典的是“囚徒困境”。在经典的囚徒困境中两个个体各自选择“合作”或“背叛”最终收益不仅取决于自己的选择还取决于对方的选择。当双方都合作时总体收益最大但单方面背叛可以在单次博弈中获得最高个人收益。这种“个人利益”与“集体利益”的冲突正是合作行为的核心张力。传统研究绝大多数聚焦于“人与人”之间的互动。但近几年AI 系统越来越多地进入人类社会场景它们可以是谈判助手、游戏队友、客服机器人甚至医疗决策辅助系统。于是一个问题浮现当我们知道对面是 AI 时还会按照“人”的规则去合作吗又会激活哪些大脑区域这个问题之所以重要有三个原因AI 不是简单的“工具”它具备一定的策略性和自主性可以表达合作意愿也可以背叛。人类对 AI 的“心智归因”与人不同可能不会把 AI 视为有意图的智能体导致合作行为出现系统性偏差。神经机制层面的差异可以揭示这种偏差到底来自“认知控制增强”还是“社会认知减弱”。1.2 关键概念社会合作、利益最大化、合作偏好先厘清几个概念。“社会合作”指个体为了共同目标而协调行为的过程。在博弈实验中通常用行为选择合作还是背叛作为可观测指标。“利益最大化”是经济学中的经典假设即个体会选择能带给自己最大期望收益的方案。但在人类实验中个体并不总是追求个人利益最大化他们可能受公平感、互惠、信任等社会偏好影响。例如在最后通牒博弈中许多人会拒绝不公平的分配方案即使拒绝会让双方都得不到钱。这种“非理性”行为恰恰反映了社会偏好的存在。“合作偏好”可以理解为个体在合作与背叛之间对合作选项的稳定倾向。合作偏好取决于对手的身份、历史行为、声誉和意图归因。当合作对象变成 AI 时合作偏好可能受两个因素影响AI 是否被感知为“有意图”的智能体人类是否信任 AI 的策略稳定性。因此不能只从“收益最大化”来预测行为还要考虑“社会性”因素。1.3 为什么关注神经机制行为数据只能告诉我们“做了什么”却不能直接回答“为什么这样做”。神经成像技术特别是 fMRI可以让我们在个体做出决策时观察大脑哪些区域被激活从而推测背后的心理过程。举例来说如果与 AI 合作时负责“心理理论”的颞顶联合区TPJ激活显著降低说明被试可能没有把 AI 当作有意图的互动者。如果与 AI 合作时背外侧前额叶DLPFC激活增强可能意味着被试在更强地抑制“剥削AI”的冲动或者在做更重的心智计算。如果前扣带回ACC对 AI 的背叛反应减弱说明 AI 的背叛在情感层面带来的“社会疼痛”更低。这可以解释为什么人类有时会“更理性地”剥削 AI有时又会对 AI 表现出信任。神经机制就是连接“刺激—行为”的黑匣子探针。2. 实验思路从博弈任务到fMRI实验设计2.1 经典范式迭代囚徒困境IPD为了研究动态合作研究者通常使用迭代囚徒困境Iterated Prisoners Dilemma, IPD。与单次博弈不同迭代博弈中参与者会多次重复互动因此可以基于对方上一次的行为调整策略。这更贴近现实中的长期合作。一个轮次的收益矩阵可以定义为对方合作对方背叛我方合作3, 30, 5我方背叛5, 01, 1收益矩阵可以调整但核心结构不变双方合作收益总和最大6单方背叛收益最大5互相背叛收益最小但比被背叛好。在认知神经科学研究中IPD 可以做到严格控制互动历史使用预设策略如以牙还牙 Tit-for-Tat设置 AI 对手在单次试验内记录选择与反应时通过事件相关 fMRI 设计分离“决策阶段”和“结果阶段”的脑活动。2.2 设置“合作对象”条件人类 vs AI实验最关键的操纵变量是“合作对象身份”。通常有两种做法组内设计每位参与者玩两种条件的 IPD一种被告知对面是人类另一种被告知对面是 AI。组间设计不同参与者分别面对人类或 AI避免顺序效应。为了确保身份操纵有效通常需要在游戏开始前告知参与者“对方是人类还是 AI”并通过后期问卷检验操纵是否成功。例如问“你觉得对方有多像真人”“你是否信任对方”。另一种更细的操纵是“策略相同身份不同”。也就是说让 AI 和“人类”在游戏中执行完全相同的策略这样可以排除策略本身带来的差异。如果行为仍出现差异就说明身份标签本身影响了合作。注意这里的 AI 并不一定是当前大语言模型或深度学习系统在实验室里更多是一个预设博弈策略的算法代理。它可以有记忆、可以随机、也可以模仿人类。关键是让被试相信对方是 AI而不是人类。2.3 神经机制研究的关注脑区社会合作涉及多个脑区的协同工作下面列出常见 ROI感兴趣区背外侧前额叶DLPFC负责策略推理、认知控制和功利计算。当个体试图“利用”对方或压抑合作冲动时该区域活跃。颞顶联合区TPJ负责心智化即理解他人信念、意图。在推断 AI 是否“可信”时可能被调用但激活程度可能低于推断人类。前扣带回ACC负责冲突监测和社会疼痛。当对方背叛时ACC 激活越强通常反映越强烈的负面情感反应。腹内侧前额叶vmPFC参与价值评估和信任判断。纹状体Striatum与奖赏预期和不确定条件下的学习有关在互动中对方“守信”或“背叛”都可能诱发激活。这些脑区并不是“一一对应”某个功能而是构成一个动态网络。分析时可以基于假设选择 ROI也可以做全脑分析。3. 一个可落地的行为实验设计与模拟分析3.1 实验设计概览为了把抽象的神经机制研究讲清楚我们先设计一个只做行为数据分析的实验版本。假设被试人数30 名健康成年人自变量合作对象类型人类 vs AI组内设计因变量合作率、反应时、主观信任评分游戏轮次每个条件下 40 轮两种条件总共 80 轮顺序两种条件按随机顺序交替进行中间休息。在正式实验开始后被试需要完成练习阶段确保理解规则。每个试次流程如下注视点 1s显示对方身份“人类玩家”或“AI代理”2s双方同时做出选择合作/背叛被试按键 2s 内显示本轮结果双方选择、本轮收益2s间隔 1-3s。这里不展开 fMRI 扫描参数重点先看行为数据分析。3.2 用Python模拟行为数据由于真实实验数据无法在本文公开我们用 Python 生成一份“模拟数据”。这份数据模拟了“人类条件合作率略高于 AI 条件并且被试对 AI 的背叛更宽容”的效果。数据结构包括被试编号、条件、轮次、选择、对方选择、收益、反应时。import numpy as np import pandas as pd # 设置随机种子保证结果可复现 np.random.seed(42) n_subjects 30 n_trials_per_cond 40 # 预先定义收益矩阵 payoff { (coop, coop): (3, 3), (coop, defect): (0, 5), (defect, coop): (5, 0), (defect, defect): (1, 1), } # 简单策略对方以 0.6 概率合作与身份无关 def ai_strategy(prev_opponent_action): if prev_opponent_action is None: return np.random.choice([coop, defect], p[0.6, 0.4]) # Tit-for-Tat跟随对方上一次选择 return prev_opponent_action rows [] for subj in range(1, n_subjects 1): for cond in [human, ai]: # 不同条件下同一被试的基线合作倾向略有差异 base_coop 0.7 if cond human else 0.55 # 加入被试个体差异 coop_prob np.clip(base_coop np.random.normal(0, 0.05), 0.3, 0.9) prev_action None for trial in range(1, n_trials_per_cond 1): # 被试决策 if np.random.rand() coop_prob: self_choice coop else: self_choice defect # AI/人类策略 if cond human: # 模拟人类对手也遵循一定概率 other_choice np.random.choice([coop, defect], p[0.6, 0.4]) else: other_choice ai_strategy(prev_action) # 收益 s_payoff, o_payoff payoff[(self_choice, other_choice)] # 反应时合作时通常更慢特别是在人类条件下 if cond human and self_choice coop: rt np.random.normal(1.2, 0.3) elif cond human and self_choice defect: rt np.random.normal(1.0, 0.25) else: rt np.random.normal(0.9, 0.2) rt max(0.3, min(3.0, rt)) rows.append({ subject: subj, condition: cond, trial: trial, self_choice: self_choice, other_choice: other_choice, payoff: s_payoff, rt: round(rt, 3) }) prev_action self_choice df pd.DataFrame(rows) df.to_csv(cooperation_simulation.csv, indexFalse) print(df.head()) print(\n各条件合作率) print(df.groupby(condition)[self_choice].apply(lambda x: (x coop).mean()))运行后会生成cooperation_simulation.csv其中包含 2400 行数据30 人 × 80 轮。核心观察是“AI 条件”下合作率略低于“人类条件”。需要说明这只是模拟数据用于演示分析流程不反映任何真实实验结论。真实实验必须通过预注册和伦理审批后采集数据。3.3 行为数据分析合作率与反应时分析行为数据时通常先计算每位被试在每个条件下的合作率然后比较均值差异。import pandas as pd from scipy import stats df pd.read_csv(cooperation_simulation.csv) # 计算每位被试每种条件的合作率 coop_rate ( df.assign(coop(df[self_choice] coop).astype(int)) .groupby([subject, condition])[coop] .mean() .unstack() ) print(描述统计) print(coop_rate.describe()) # 配对t检验 t_stat, p_value stats.ttest_rel(coop_rate[human], coop_rate[ai]) print(f\n配对t检验t {t_stat:.3f}, p {p_value:.4f}) # Cohens d diff coop_rate[human] - coop_rate[ai] d diff.mean() / diff.std(ddof1) print(fCohens d {d:.3f})如果 p 0.05说明两种条件下的合作率有显著差异。但注意配对 t 检验对样本量有一定要求如果只有 30 人效应量需要中等以上才能检测到。反应时分析可以剔除错误和极端值比如 200ms 或 3000ms 的试次然后按条件进行混合线性模型LMM分析。下面用statsmodels做简单 LMMimport statsmodels.api as sm from statsmodels.formula.api import mixedlm # 过滤极值 df_valid df[(df[rt] 0.2) (df[rt] 3.0)].copy() model mixedlm(rt ~ condition, df_valid, groupsdf_valid[subject]) result model.fit() print(result.summary())注意LMM 更适合分析反应时这类跨试次重复测量数据因为它可以同时处理被试内变异和试次数差异。3.4 假设检验与模型选择除了简单的 t 检验还可以使用 “贝叶斯因子”来评估“人类条件与 AI 条件无差异”这一零假设被支持的程度。在 Python 中可使用bayesfactor包或直接计算 BIC/BF不过更常用于论文的是 JASP 或 R 中的BayesFactor包。这里不展开但建议在正式研究中进行贝叶斯推断以补充频率派结果。行为层面的核心假设是H1当合作对象是 AI 时人类更倾向于追求个人利益最大化合作率下降。H2当人类面对 AI 时对 AI 背叛的宽容度更高因此被背叛后更容易继续合作。检验 H2 时可以将“上一轮对方是否背叛”纳入模型分析“本轮是否合作”的概率。逻辑回归是常用的方法import statsmodels.api as sm # 构造滞后期变量 df_model df.sort_values([subject, condition, trial]).copy() df_model[prev_other_choice] df_model.groupby([subject, condition])[other_choice].shift(1) df_model[prev_was_betray] (df_model[prev_other_choice] defect).astype(int) df_model[is_ai] (df_model[condition] ai).astype(int) df_model[cooperate] (df_model[self_choice] coop).astype(int) # 删除第一轮无之前信息的数据 df_model df_model.dropna(subset[prev_other_choice]) logit_model sm.Logit(df_model[cooperate], df_model[[prev_was_betray, is_ai, prev_was_betray:is_ai]])逻辑回归可以帮我们分离“身份效应”和“历史效应”。如果交互项显著说明面对 AI 时被背叛后的合作策略与面对人类时不同。4. 神经成像分析的核心思路4.1 从行为到脑fMRI数据预处理fMRI 数据分析是一个系统工程。常见步骤包括时间层校正Slice Timing头动校正Realignment配准到标准空间Normalization空间平滑Smoothing一般 FWHM 6-8mm高通滤波和噪声回归。这些步骤在 SPM、FSL、AFNI 或 Python 的nilearn中都可以完成。下面是一个使用nilearn进行 GLM 分析的极简示例展示如何将“合作条件”和“背叛结果”作为事件建模。from nilearn.glm.first_level import FirstLevelModel import pandas as pd import numpy as np # 示例使用模拟事件文件 events pd.DataFrame({ onset: [10, 25, 40, 55], # 单位秒 duration: [2, 2, 2, 2], # 每个事件持续2秒 trial_type: [human_coop, ai_defect, human_defect, ai_coop], }) # 加载被试的4D数据此处用随机数据代替实际请替换为你的fMRI文件 # func_path sub-01_task-cooperation_bold.nii.gz # 创建模型 fmri_glm FirstLevelModel(t_r2.0, noise_modelar1, standardizeFalse, hrf_modelspm) # 真实场景中这里需要传入功能像路径 # fmri_glm fmri_glm.fit(func_path, events) # 暂不执行因为本文没有实际功能像数据 print(GLM 建模流程示例) print(fmri_glm)请务必注意上面的代码不能直接运行出结果因为没有真正的 fMRI 数据。它的价值在于展示使用 Python 进行一级建模的基本思路定义事件、设定重复时间TR、指定血流动力学响应函数HRF。4.2 单被试GLM建模认知条件单被试 GLM 是 fMRI 分析的基础。每个体素的 BOLD 信号被建模为多个“条件回归子”与“干扰回归子”的线性组合。典型条件包括human_coop人类条件下被试选择合作human_defect人类条件下被试选择背叛ai_coopAI 条件下被试选择合作ai_defectAI 条件下被试选择背叛。每个条件都可以得到一版 beta 估计值。接下来在组内水平上做对比例如人际合作 人机合作AI 背叛 人际背叛。这些对比会生成统计参数图然后进行多重比较校正如 FWE、FDR。4.3 群体分析与ROI检验第二步是群体分析也叫二阶分析。将所有被试的对比图像带入单样本 t 检验或混合效应模型。如果研究者有先验脑区假设可以使用 ROI 分析提取每个 ROI 内的平均 beta 值再做配对 t 检验。ROI 定义可以来自解剖模板如 AAL或功能图谱。在 Python 中可以用nilearn的NiftiLabelsMasker提取 ROI 信号from nilearn.input_data import NiftiLabelsMasker from nilearn.datasets import fetch_atlas_aal # 下载 AAL 图谱 # atlas fetch_atlas_aal() # masker NiftiLabelsMasker(labels_imgatlas[maps], standardizeTrue) # 假设已经有一个对比图像contrast_zscore.nii.gz # roi_time_series masker.fit_transform(contrast_zscore) # 提取特定区域ID比如TPJ、DLPFC等 # tpj_beta roi_time_series[:, tpj_indices].mean(axis1)以上代码是片段实际使用需要根据图谱编号调整。神经影像分析中最怕的就是“用错坐标”或者“未正确对齐空间”因此必须检查数据维度、仿射矩阵和空间坐标。5. 常见问题与排查思路5.1 行为实验常见坑在行为数据分析中经常遇到以下问题问题现象常见原因解决思路两种条件合作率无差异身份操纵失败被试不相信对面是AI增加身份提示加入操作检查问卷筛选未通过者被试全部选择合作收益矩阵设置不合理合作策略太明显调整收益结构增加欺骗诱因反应时建模不收敛极端值过多或模型设定错误剔除极端值检查残差正态性改用鲁棒回归顺序效应显著条件顺序未平衡使用拉丁方设计或完全随机化被试怀疑“人类”也是AI实验环境暗示太多自动化完善cover story让被试看到“等待对方”的过程5.2 神经成像分析中的潜在误区fMRI 分析有许多“坑”以下最值得注意头动过大头动 3mm 的试次应剔除否则会产生伪激活。多重比较校正不足必须使用 FWE 或 FDR 校正不能只看未校正 p 值。ROI 选择双重蘸酱不能用同一批数据先选 ROI再在同一批数据里检验该 ROI 的差异需要独立数据或预注册。条件相关过高如果合作和背叛试次数量差距太大会影响 beta 估计应尽量平衡试次数量。担忧“AI条件”和“人类条件”的对比策略不同如果策略不同脑区差异可能来自策略差异而非身份差异因此要尽量让策略保持一致。5.3 道德与AI拟人化伦理这个研究方向需要注意伦理问题不能长期欺骗被试。实验结束后必须告知真相游戏中的“人类”或“AI”只是程序策略。不能过度拟人化 AI导致被试对 AI 产生错误的心理预期。涉及神经数据的采集必须获得伦理审查委员会批准确保数据匿名化和安全存储。讨论“利益最大化”时不应暗示对 AI 的欺骗或剥削是合理行为。这类研究如果忽视伦理会导致被试对“人机互动”的信任感下降也会影响科学结论的可信度。6. 最佳实践与工程建议6.1 实验脚本与随机种子管理无论做行为实验还是 fMRI 实验实验脚本的可复现性都非常重要。建议使用 Python 或 MATLAB 编写实验程序如 PsychoPy、Psychtoolbox。关键点每次实验前记录随机种子保存完整日志文件包含试次序列、时间戳、按键和反应时使用版本控制Git管理脚本对条件平衡、伪随机序列进行单元测试。示例使用 numpy 生成条件序列时固定种子rng np.random.default_rng(2026) condition_order rng.permutation([human, ai] * 20)这样可以保证每次生成序列一致便于调试。6.2 数据质量与预注册在正式实验前先做小样本预实验pilot study验证身份操纵是否有效、任务时长是否合理、收益矩阵是否诱发了足够的“合作/背叛”行为。预实验数据可以用于估计效应量方便后续计算样本量。更严格的做法是预注册preregistration在采集数据前公开假设、分析计划、排除标准和处理规则。这样能减少 p-hacking 和“事后诸葛”问题。6.3 多学科协作与可重复性“人工智能互动情境中的社会合作及其神经机制”本质上是交叉学科。建议团队包含心理学研究者负责实验设计、量表选择计算机科学研究者负责 AI 策略、仿真环境神经科学研究者负责 fMRI 采集与数据分析数据工程师负责数据管道和可视化。编程方面的最佳实践包括使用虚拟环境锁定依赖版本例如requirements.txt或pyproject.toml将行为数据预处理、统计分析和可视化拆分为独立脚本所有数据文件使用 BIDS 格式组织图表统一使用 Seaborn 或 Matplotlib并保存高分辨率 PDF。下面是一个简单的统计可视化片段import matplotlib.pyplot as plt import seaborn as sns sns.set_theme(stylewhitegrid) plt.figure(figsize(8, 6)) sns.violinplot(datacoop_rate.melt(var_namecondition, value_namecooperation_rate), xcondition, ycooperation_rate, innerquartile) plt.ylim(0, 1) plt.title(Simulated Cooperation Rate by Condition) plt.tight_layout() plt.savefig(cooperation_rate.png, dpi150)在实际分析中可视化可以快速识别数据分布异常和离群值比直接跑统计更直观。7. 总结与下一步学习路线到此我们拆解了一个“人类 vs AI 合作对象”研究从行为实验到神经机制分析的关键链条核心问题合作对象变成 AI 后利益最大化行为是否改变神经基础又是什么实验范式可以采用迭代囚徒困境控制策略与身份条件行为分析利用 Python 计算合作率、反应时并通过配对 t 检验、逻辑回归和混合模型验证假设神经机制通过 fMRI 的 GLM 与 ROI 分析考察 TPJ、DLPFC、ACC 等脑区在两类条件中的激活差异工程建议坚持可复现脚本、预注册、伦理审查和数据规范。如果你想继续深入可以按这个路径学习读 2-3 篇关于“人机博弈”的行为经济学论文熟悉常用的博弈任务与数据处理方式。学习使用 PsychoPy 编写一个简单的 IPD 任务采集自己的行为数据。学习使用 fMRIPrep 和 nilearn 做全自动 fMRI 预处理与一级建模。尝试加入“信任”“风险偏好”等量表结合行为数据进行中介分析。最后可以探索更高级的模型计算建模强化学习、漂移扩散模型与脑数据结合解释“利益最大化”背后的动态决策过程。如果你准备开展类似实验建议先跑通行为学预实验再考虑 fMRI 采集。神经成像成本高、采样率低行为层面的效应若不稳定很难指望大脑结果稳定。希望这份笔记能帮你在“人机社会合作”这个交叉领域少走弯路。如果你对某个环节比如博弈策略、GLM 对比、逻辑回归有疑问欢迎留言讨论。动手写一个模拟实验脚本跑出自己的数据比单纯看十篇论文更有效。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价