Qualtricsでインタラクティブな対人相互作用ゲームを実装する「SMARTRIQS」について

Qualtricsでインタラクティブな対人相互作用ゲームを実装する「SMARTRIQS」について

2024年4月8日

Qualtricsで対人相互作用ゲームを実装することができる「SMARTRIQS」というサービスがあるようです。

Google検索しても、日本語では五十嵐祐先生の資料で触れられているくらいしかありません。Getting Stardedを見ながら自分で触って試してみたので、備忘録的程度に情報を残しておきます。

プログラミング不要・Qualtricsで実装

SMARTRIQS
SMARTRIQSのページより

SMARTRIQS」は、Qualtrics上で、インタラクティブな実験ゲームを実装できるサービスです。実装できるゲームはoTreeに近いですが、Qualtricsのみで実装できプログラミングが不要なのが大きな特徴です(プログラミング思考が不要とは言ってない)。

SMARTRIQS
雑な付け加えをしてみた

Qualtrics単体では、個々人の調査票は独立しており、それぞれの参加者は他の参加者と通信をすることはできません。

SMARTRIQSは、個々人の調査表の回答をJavaScriptでSMARTRIQSサーバーに送信し、そのレスポンスを調査票へ返すことでインタラクティブなゲームを実現しています、

すでに蓄積しているQualtricsの質問紙資産を活かしつつ、それに付け加える形で相互作用型の実験プログラムを実装できるのが大きな魅力といえます。

注意点としては、実験の相互作用データはSMARTRIQSサーバーに送信されます。質問紙や個人情報などは送信しようとしなければ送信されることはありません。

smartriqs.com

デモページはこちら。

実験を実装する主な流れ

とりあえず、テンプレートをダウンロードして、実験を実施するまでの流れを紹介します。Getting Startedからの抜粋と補足です。

1. SMARTRIQSでresearcherIDを取得する

登録フォーム
登録フォーム

まずは、SMARTRIQSに登録してresearcherIDを取得します。名前や大学名、分野等々の簡単な質問に回答すると、researcherIDが発行されます。このresearcherIDは、Qualtricsで実験を使用する際に使うことになります。

2. テンプレートをダウンロード & インポート

osf
OSFページ

SMARTRIQSのOSFサーバーには、公共財ゲームや独裁者ゲーム、チャットなどさまざまなテンプレートが用意されています。自分の実験に応じてqsfファイルを使用し、Qualtricsにアップロード & 編集します。

より、自由な実験課題を作成したい場合は、”Generic Interactive Survey Template (GIST)”を使用します。

3. resetcherIDとstudyIDを入力する

smartriqs
インポートしたテンプレートのアンケートフローを開き、埋め込みデータのresearcherIDに取得したIDを、studyIDに適当な調査名(英数字)を入力します。

後に、SMARTRIQSサーバーで進捗確認する際に、このIDを利用します。

4. 実験を公開する

特に変更する内容がない場合は、「公開」ボタンを押すとすぐに実験を実行できます。

実装のコア:埋め込みデータとSEND・GETブロック

実際に、ガッツリ使っているわけではないので、間違いが多くあるかもしれませんが、ざっとマニュアルやテンプレートを概観してコアとなりそうな部分を紹介します。

  • Qualtricsの質問画面で回答取得
  • 埋め込みデータで回答を拾う
  • BLOCKで送信 or 受信
  • 回答を表示

主な実装の流れは上記の通りで、いわゆるプログラムのコアとなる部分は、すでにSEND BLOCKやGET BLOCKとして定義されているので、そこのJavaScriptを弄る必要はありません。作成者は、何をSENDで送り、何をGETで受けとるかのみに集中すれば良いです。

smartriqs
すでに定義されているブロックは、MATCH、SEND, GET, COMPLETE、CHAT BLOCKです。MATCHは参加者のマッチング、COMPLETEを最後に配置し、その間にSEND, GETはデータをSMARTRIQSサーバーに送ったり受け取ったりする入れ物です。

独裁者ゲームを例に

smartriqs
独裁者ゲームのテンプレートを例にすると、Dictator choiceで、参加者A(送る側)の回答を取得します。埋め込みデータで回答データを抽出し、送るデータを決定します。

そのあとに、SEND BLOCKを配置すると、データを送ってくれます。

smartriqs
参加者B(受け手側)は、埋め込みデータでデータ受け取る入れ物を用意し、GET BLOCKでそこに返してもらい、Recipient feedbackで結果を表示します。

データを外部保持したくない人向け:サーバーを用意する

自分でSMARTRIQSサーバーをセットアップする

基本的に、バックエンドにはSMARTRIQSが用意しているサーバーを利用することになります。Amazon Web Servicesでホストされとり、SSLを利用しているため、普段使いで困ることはないんじゃないかと思います(バックエンドがどれだけ強固か不明ですが)。

ただ、倫理審査の都合やサーバーを自前で用意したい人は、”Set up your own SMARTRIQS server”というページが用意されており、自分で用意することもできます。

ファイルをダウンロードして、レンタルサーバーにアップロードするだけなので、外部に一切データを漏らしたくないという場合はこちらを選択することもできます。

個人的な感想

プログラミングなしで、埋め込みデータのみでインタラクティブな実験を実装できるのは、非常に魅力的な選択肢といえます。プログラミング的な思考は合った方が良いですが、テンプレートをカスタムするだけで誰でも使えるのは、初学者に向いています。

また、実験画面の描画はQualtricsで行い、SMARTRIQSサーバーには簡単なテキストデータしか送信されないのもあり、oTreeと比較してサーバーに気を使わなくて良さそうです(実際に実施しないとわかりませんが)。

欠点としては、画面がQualtricsに制限されるため、JavaScriptやHTMLを使って自由な実験課題の作成は難しそうな印象を受けました。あと、デフォルトのSMARTICSサーバーだと、1集団あたり8人までの同時実験しかできないようです。