
マルチユーザー実験デザイン
マルチユーザー実験デザインは、Labvancedがそれ以外の場合には完全に孤立して実行する参加者を意図的に接続することについてです。それを構成する個々のツールだけでなく、その背後にある概念を理解することで、ビルドを開始する前に自分の研究に最適なアプローチを決定できます。関連する読み物はこのページ全体にリンクされているため、概念が理解できれば、より技術的な設定に進むのは簡単です。
デフォルトでは、Labvancedの研究に参加するすべての参加者は、自分の実験を孤立して実行し、数人が同じセッションにいる場合でも同様です。マルチユーザーモードをオンにしても、それ自体は何も変わりません:複数の参加者が同じ実行中のセッションに参加できるようになりますが、一人の参加者が行ったことは、あなたがその接続を構築するまで他の人には見えません。イベントがその接続を構築します。特にDistribute Variableアクションは、一人の参加者の孤立した実験から値を持ち出し、他の参加者のものに渡す橋です。
マルチユーザーが必要なとき
参加者がリアルタイムで相互作用しない場合、たとえば二つの被験者群を比較するだけの場合、標準の単一参加者研究とグループ割り当てで十分です。マルチユーザーが必要なのは、二人以上の参加者が同じセッションに同時に参加し、セッションが進行中に一人の参加者が行ったことが他の参加者に届く必要があるときです。
前提知識
以下で使用される用語に従うために、Labvancedの基本的な知識、たとえばイベントの機能や変数の使い方についての理解が望ましいです。
フレーム
参加者がトライアルの各瞬間に見るものを保持する基本的な要素。
イベント
トリガーとアクションとは何か、そしてそれらがどのように組み合わさって研究の論理を構築するか。
変数
変数とは何か、研究中にどのように値を保存および更新するか。
同期セッションの設定
マルチ参加者ツールはデフォルトで隠されています。有効にするには、設定を開き、特別な機能の下でマルチユーザー研究に進み、Transformをクリックします。これによりNumber of Participants(最低2)およびMaximum Parallel Sessionsが表示されます。設定のフルリストについてはマルチユーザー研究を参照してください。このクリックは元に戻すことができないため、最初に参加者数を決定し、単一参加者バージョンも保持したい場合は事前に研究を複製してください。
これをオンにすることは、参加者がセッションにグループ化される方法だけを変更します。彼らを接続するものではありません。特定の瞬間に2人の参加者が互いに進行状況を一致させる必要がある場合は、Sync Frame Start(フレーム設定)またはタスク設定の下の一致オプションを使用して、全員が到着するまでその時点で待機させます。
例: どちらの参加者も次のトライアルに移る前に、もう一方が応答する必要があります。そのフレームで
Sync Frame Startを設定し、両方の参加者が到着するまでそこで待機します。
ペアリングと役割
各参加者は、参加する人が参加するたびに1から順に割り当てられたシステム変数Role_Idによって識別されます。これは、要求アクションに使用して、参加者に異なるコンテンツを提供するために利用できます。
例:
Role_Idが1に等しい → 対象の画像を表示します。Role_Idが2に等しい → 代わりに応答オプションを表示します。
デフォルトでは、参加者はロビーからランダムにマッチングされます。事前に設定されたペアについては、代わりに定義済み参加者グループを使用します。公開と記録タブでカスタムリンクの構築を開き、groupフィールドに値を入力します。同じgroup値を持つリンクから参加した参加者は、お互いにのみマッチングされます。
例: 2人の研究室の参加者が同じ時間枠に予定されています。各自に
group=12付きのリンクを与えると、2人はロビーからランダムにマッチングされるのではなく、ペアになります。
参加者間での共有変数
これがその橋自体です。変数配布アクションは、一人の参加者から別の参加者のターゲット変数に値を送信します。あなたの選択したトリガーに基づいて、何も共有されることはありません。
例: ボタンをクリックしたときのトリガーで、クリックした参加者の現在のスコアを他の参加者の画面上の
PartnerScore変数に配布します。
同じターゲット変数に対して、複数の参加者が同時に書き込む可能性がある場合は、最初のものが処理されるまで他の全てを許可しないためにアクションのブロッキングオプションをオンにします。
以下の画像は、イベントを通じて設定された実際の研究でのこのブロッキングオプションを示しています:Role_IdゲートされたRequirement Actionがランダムな数を生成し、それをBlockが有効になっているすべての参加者に配布します。これにより、どの参加者も同じ配布された値を不規則に処理することができなくなります。

ベストプラクティス
- 公開前に、2つの別のブラウザセッション(2回目のタブまたはシークレットウィンドウ)でテストします。役割の割り当ては参加順序に依存するため、相互作用の両側を見るための唯一の信頼できる方法です。
- フレームを構築する前に
Role_Id論理を決定します。役割の割り当てが全体のセッションに適用されるため、フレームが既に存在する場合にそれを遡って追加するよりも、最初からそれに基づいて設計する方が簡単です。 - 同期されたフレームのすべての条件分岐を監査します。主な経路だけでなく、参加者がショートカットを取ることは、もう一人の参加者が無限に待機する最も一般的な原因です。
- 同じターゲット変数に対して複数の参加者が同時に書き込む可能性があるあらゆる
Distribute Variableアクションに対して、ブロッキングオプションをオンにします。 - ペアリングに対する制御が必要な場合は、ランダムなロビーのマッチングではなく、代わりに定義済み参加者グループを使用します。たとえば、予定された研究室のセッションや特定の役割の組み合わせに依存する研究などです。
具体的なパターン:ディレクター/マッチャー参照コミュニケーションタスク
これはクラシックな参照コミュニケーションタスクです:一人の参加者が対象アイテムを説明し、もう一人が候補のセットからそれを識別します。これは二役のデザインであり、上記のツールに直接マッピングされます。
- 2人の参加者でマルチ参加者を有効にし、
Transformをクリックします。 Role_Idで要求アクションを使用して2つの役割を分けます:Role_Id1がディレクターになり、対象画像とテキスト入力が表示されます。Role_Id2がマッチャーになり、候補の画像セットが表示され、対象は表示されません。(どのRole_Idがどの役割にマッピングされるかはお好みです。このパターンはどちらでも同じように機能します。)- ディレクターが説明を提出するとき(たとえば、Enterキーやボタンのトリガーで)、
Distribute Variableを使用して、テキスト値をマッチャーの画面のDescription変数に送信します。ブロッキングを有効にし、同時に一つの説明のみを流れるべきです。 - 配布された
Description値をマッチャーに表示し、マッチャーが候補画像を選択します。既知のターゲットに対して応答をコード化し、正しい/不正確な変数を生成します。 - 両方の参加者が次のトライアルに移動するためのフレームで
Sync Frame Startを使用し、ディレクターはマッチャーが応答する前に進めないようにします。
これは以下にリンクされている画像説明デモの背後にある同じ構造です。一度メカニズムが整うと、対象/候補のコンテンツを入れ替えることで、このパラダイムが根本的なイベントの論理を変更することなく変わります。
Labvancedにおけるマルチユーザーデザインの例
上記のツールは、孤立した例ではなく、実際の研究を推進する際に異なって見えます。以下の研究のいずれかをあなたのアカウントにインポートし、My Studiesから開き、そのStudy Designタブに移動して、特定のタスクのためにRole_Id、Distribute Variable、およびフレームの同期がどのように実際に設定されたかを確認してください。
二人の参加者が共有資源の分割について経済的決定を下すタスク:一人の参加者が提案し、他方が承認または拒否します。
一人の参加者が内部の価格情報を受け取り、それを正確に共有するか、歪めるか、保持するかを決定するリアルタイムの2人用バージョン。
さらなる読み物
マルチ参加者研究
このページのすべてのメカニズムに関する技術的リファレンス:マルチ参加者モードの有効化、Role_Id、フレームとタスクの同期、変数の配布。
マルチユーザー心理学研究
マルチユーザー研究が行動研究に可能にすることの能力の概要、実装の詳細に依存しません。
変数の取り扱い
変数の種類と特性、Role_Idに基づく論理および変数の配布ターゲットの基礎。
チャットボックス付きの画像説明タスクとゲーム
リアルな研究におけるディレクター/マッチャーパターンについての完全なウォークスルー、チャット変数と反応時間の設定を含む。
被験者管理タブ
被験者管理タブの完全なリファレンス:被験者グリッド、メールテンプレート、SMTPの設定。