
多用户实验设计
多用户实验设计是故意连接Labvanced中以完全隔离方式运行的参与者。理解其背后的概念,而不仅仅是单个工具,有助于您在开始构建之前确定如何最好地接近自己的研究。相关阅读在本页面中链接,因此一旦概念变得清晰,转向更技术性的设置将是直接的。
默认情况下,Labvanced研究中的每个参与者在隔离环境中运行自己的实验,即使他们在同一会话中。仅仅启用多用户模式并不会改变这一点:它允许多个参与者加入同一运行会话,但一个参与者所做的任何事情在连接建立之前对另一个参与者都是不可见的。事件是建立这种连接的关键,具体来说是Distribute Variable动作,它是将一个参与者的隔离实验中的值转移到另一个实验中的桥梁。
何时需要多用户
如果参与者从不实时互动,例如如果您仅比较两个被试条件,则标准的单参与者研究与组分配就足够了。您特别需要多用户的情况是,当两个或更多参与者必须同时处于相同会话中,并且其中一个的行为需要在会话运行时到达另一个。
基础知识
建议具备基本的Labvanced知识,例如事件如何工作以及变量如何使用,以跟进下面所用的术语。
设置同步会话
多参与者工具默认是隐藏的。要启用它们,打开设置,然后在特殊功能下点击多用户研究并点击Transform。这将显示Number of Participants(最少2)和Maximum Parallel Sessions。请参见多用户研究以获取此设置解锁的完整列表。此单击不可撤消,因此请先决定参与者数量,并在想要保留单参与者版本时提前复制研究。
启用此选项仅改变参与者如何分组到会话中。它并不会连接他们。如果两个参与者需要在特定时刻保持同步,请使用Sync Frame Start(框架设置)或任务设置下的匹配选项,在所有参与者到达之前将所有人保持在该点。
示例: 在另一位参与者响应之前,两位参与者都不应移动到下一个试验。在该框架上设置
Sync Frame Start,两位参与者将在此处等待,直到他们都到达。
配对和角色
每个参与者都由系统变量Role_Id标识,按顺序从1开始分配,参与者加入时依次编号。在需求动作中使用它,以便给参与者提供不同的内容。
示例:
Role_Id等于1 → 显示目标图像。Role_Id等于2 → 显示响应选项。
默认情况下,参与者是随机从大厅匹配的。对于预先安排的配对,请使用预定义的参与者组:在发布与记录标签下,打开构建自定义链接并在group字段中输入一个值。通过具有相同group值的链接加入的参与者仅与彼此匹配。
示例: 两个实验室参与者安排在同一个时间段。给他们每个人一个带有
group=12的链接,这样他们两个将配对在一起,而不是从大厅中随机匹配。
参与者之间的共享变量
这就是桥梁本身。一个分发变量动作将一个参与者的值发送到属于另一个参与者的目标变量,根据您选择的任何触发器。在此之前,一切都是隔离的,直到,如此事件发起。
示例: 在按钮单击触发时,将点击参与者的当前分数分配到另一个参与者屏幕上的
PartnerScore变量。
如果多个参与者可能在同一时间写入同一目标变量,请启用动作的阻塞选项,以便第一个到达的参与者先被处理,然后才能允许其他人通过。
下图展示了在真实研究中通过事件设置的阻塞选项:一个Role_Id-门控的Requirement Action绘制一个随机数,并将其分发给每个启用Block的参与者,以便没有两个参与者可以按顺序处理相同的分发值。

最佳实践
- 在发布之前,使用两个独立的浏览器会话(第二个标签或隐私窗口)进行测试。角色分配取决于加入顺序,因此这是查看交互两侧的唯一可靠方法。
- 在开始构建框架之前,决定您的
Role_Id逻辑。由于角色分配适用于整个会话,从一开始围绕它进行设计比在框架已存在后再进行补充更容易。 - 审核每个条件分支以确保同步框架,不仅仅是主路径。采取捷径的参与者是导致另一个参与者无限等待的最常见原因。
- 对于任何
Distribute Variable动作,打开阻塞选项,以防多个参与者可能在同一时间写入同一目标变量。 - 任何需要控制配对的情况,请使用预定义的参与者组,而不是随机大厅匹配,例如安排实验室会话或依赖特定角色组合的研究。
具体模式:导演/匹配参考沟通任务
这是一个经典的参考沟通任务:一个参与者描述一个目标项目,另一个参与者从候选集合中识别出来。这是一个双角色设计,因此可以直接映射到上述工具。
- 启用多参与者并选择2个参与者,点击
Transform。 - 在
Role_Id上使用需求动作以拆分两种角色:Role_Id1成为导演,显示目标图像和文本输入。Role_Id2成为匹配者,显示一组候选图像且没有目标。(Role_Id映射到哪个角色由您选择;模式仍然以相同方式工作。) - 当导演提交描述时,例如在回车键或按钮触发上,使用
Distribute Variable将文本值发送到匹配者屏幕上的Description变量,因只允许一个描述在空中,所以启用阻塞。 - 将分发的
Description值展示给匹配者,匹配者选择候选图像。对根据已知目标进行响应以生成正确/错误变量。 - 在两个参与者移动到下一个试验的框架上使用
Sync Frame Start,使得导演不能在匹配者响应之前推进。
这正是下面链接的图像描述演示背后的相同结构。一旦机制到位,交换目标/候选内容会改变范式,而不会改变底层事件逻辑。
Labvanced中的多用户设计示例
这些工具在推动真正的研究时看起来与孤立示例不同。将以下研究中的一个导入到您的帐户,从My Studies打开,并转到其Study Design选项卡,查看Role_Id、Distribute Variable和框架同步是如何实际设置的,而不仅仅是它们在这里的描述。
一个双人经济决策任务:一个参与者提议共享资源的分配,另一个接受或拒绝。
A real-time 2-player version where one participant receives insider price information and decides whether to share it accurately, distort it, or withhold it.