ラベル Social Dilemma の投稿を表示しています。 すべての投稿を表示
ラベル Social Dilemma の投稿を表示しています。 すべての投稿を表示

2020年9月3日木曜日

Supporting social dilemma experiments with App Inventor

Abstract
    In the study of the problem called "social dilemma", various experiments targeting human behavior have been conducted. I created the following app to efficiently implement one of those kinds of experiments. The feature of this app is that it can automatically reflect in real-time the effects of individual actions on others.

Simple examples of social dilemmas and experiments
    According to Toshio Yamagishi (Professor Emeritus, Hokkaido University, Japan) [1], the social dilemma means that everyone can benefit if they cooperate with each other, but everyone suffers if they act only in their own interests. Research (consideration and experiment) about this has been done for a long time. Here we try to reproduce the famous experiment in this book. However, the following is an explanation based on my own understanding.

A) A group consists of four students who are strangers to each other.

B) Do not touch each other during the experiment.

C) Participants fully understand the mechanics of this experiment.

D) 100 yen will be given to each student in each round.

E) Participants can donate d yen arbitrarily.

F) In that case, the donor's money will be (100 - d) yen.

G) Based on the donated d yen, (2d / 3) yen will be given to each of the 3 people other than the donor.

    The experiment was repeated 12 times with the above items (D) to (G) as one set. The part-time job for this experiment was about 1 hour. In fact, the participants took it seriously because they could get that amount of money. In a round, if only one student donates 100 yen and no other students donate, the donating student gets 0 yen and the other student gets 167 yen. That is, only the donated student will lose. If no one donates at all 12 times, each person will get 1,200 yen. On the other hand, if everyone cooperates and donates 100 yen in all rounds, each person can finally get a total of 2,400 yen (this is the maximum amount). This is a very expensive hourly wage!

    It turned out that each person's donation behavior depends on the "interpersonal trustworthiness" that a person has. That is, it was confirmed that one's donation behavior is determined by "whether or not other people can be expected to contribute." Participants in this experiment include people with high confidence and those with low confidence. (This reliability depends on the response scores of the five questionnaires conducted separately.)

    According to the experimental results by Professor Yamagishi, for the 100 yen given in each round, those with high interpersonal reliability donated 55 yen on average, and those with low interpersonal trust donated 33 yen on average. This result seems convincing. In many cases, it seems that there is an awareness that "I don't know how much other people will donate, so I want to keep my donation at this level".

Smartphone app for a social dilemma experiment
    The calculation of the amount of money in the above social dilemma problem is easy, but it is convenient to have an app to proceed with the experiment smoothly. Reference [1] states that a PC was used, but the details are unknown. Here, we have created an app to perform this experiment using smartphones. Finally, I made a smartphone app with a design like Fig.1. This will be installed on the participant's smartphone. Data exchange between users is fully automated as described below. We thought that it would be desirable for each person to use a smartphone in order to proceed with the experiment without touching each other.

 

Fig.1 A support tool for social dilemma experiments

    An example of running this app with 4 students (4 smartphones) is shown below. Fig.2 shows the beginning of the first round, and each student decides how much to donate. Fig.3 is the execution result of the first round, reflecting those donations. 

Fig.2 Beginning of the first round (determining the donation amount)

Fig.3 Results of the first round (reflecting the distribution of donations)

Use of CloudDB (real-time database)
    The feature of this smartphone app is that each person's donation can be immediately reflected in other people's income without explicit communication or administrator intervention, as shown in Fig.3. That was easily accomplished by using CloudDB (real-time DB) built into MIT App Inventor. The main part is only the following figures. Fig.4 stores the donation amount in CloudDB together with the donor ID. When the donation is stored, the block of Fig.5 of the application of each smartphone is automatically called in real-time. Then, the distribution amount is calculated from the donation amount and added. In this way, the program has become very simple thanks to the real-time database.

 

Fig4. Blocks for registering donations to CloudDB

Fig.5 Blocks automatically called when registering donation to CloudDB

Notice
    By default, anyone can use CloudDB immediately with a common id and token. However, you cannot guarantee how long your data will live. Therefore, you can apply for your own id and token. Although the capacity of the free tier is small, it is stable and useful if you use it.

References
[1] Toshio Yamagishi : Social Dilemma ,PHP Laboratory, July 2000. (in Japanese)


2020年4月23日木曜日

社会的ジレンマに対する実験用スマホツール(リアルタイムDB利用)

【要旨】「社会的ジレンマ」における各人の行動とその影響を考察する巧妙な実験があります。その実験を手軽に行うためのスマホツールを作ってみました。ですが、畑違いのせいで、(本筋から離れて)リアルタイムDBの話題になってしまいました...

 最終的に、このようなデザインのスマホアプリを作成しました。これを各自のスマホにインストールしてもらう。利用者間のデータのやりとりは完全自動化!

社会的ジレンマの簡単な例と実験
 社会的ジレンマとは、山岸俊雄氏(北大名誉教授)の著書[1][2]によれば、「互いに協力し合えば皆が利益を得られるのに、各自が自分の利益だけを考えて行動すると誰もが不利益を被る状況」ということです。これに関する研究(考察や実験)は古くから行われています。ここでは、これらの著書にある有名な実験の再現を試みます。但し、以下は、小生の理解にもとづく説明です。
  1. 互いに見知らぬ学生4名(ひと組当たり)が参加。実験中も、互いに接触せず。
  2. 参加者は以下の仕組みを完全に理解している。
  3. 各自に最初100円が与えられる。このうちからd円を寄付できる。
  4. 寄付者の所持金は、その時、(100 - d)円になる。
  5. その寄付金d円を基に、寄付者以外の各々に(2d/3)円が与えられる。
上記項目(1.)〜(5.)を1セットとして、12回実験を実施した。この実験アルバイト時間を約1時間とした。実際に、その額のお金がもらえるので、真剣にやってくれた。ある回で、自分だけが100円全部を寄付し、他には誰も寄付しなければ、自分は0円、他の人は167円を得ることとなり、自分だけが損をする。もしも、12回とも誰も寄付しなければ、各自の取得額は1,200円である。逆に全員が協力して毎回、100円全部を寄付すれば各自が合計2,400円(これが最高額)取得できる。これはかなり高額な時給となる!

 各自の寄付行動は、その人の持つ「対人信頼尺度」が大きく影響する。すなわち、「他の人は寄付すると思えるかどうか、すなわち、他人を信頼する程度」により、自分の寄付行動が決まることを実験で確かめた。この実験参加者には、この信頼尺度が高い人と低い人が混じっている。(この尺度は、別途用意したアンケート5項目の回答得点による。)

 実験結果では、各回で与えられる100円に対して、参加者は平均44円を寄付した。そして、信頼尺度の高い人は平均55円を、信頼尺度の低い人は平均33円を寄付したという。なるほど。いずれにしても、「他の人がどのくらい寄付するか分からないので、自分の寄付はこの程度にしておこう」という意識がかなり働くようです。

社会的ジレンマ実験用スマホアプリ
 これ以降は、スマホアプリのお話しになります。
 上記の金額計算自体は簡単ですが、スムーズに実験を進めるにはアプリが欲しい。参考文献[1]では、PCを使ったとありますが、詳細は不明です。ここでは、各自がスマホでこの実験を行うためのアプリを作成しました。互いに接触なしに進めるには、各自のスマホを使うのが望ましいと考えました。これを4人(4台のスマホ)で実行した例を以下に示します。図1は開始時であり、それぞれの学生がいくら寄付するかを決めています。図2はそれらの寄付を反映させた第1ラウンドの結果です。



スマホアプリの造り- CloudDB(リアルタイムデータベース)の利用
 このスマホアプリの特徴は、図2に示したとおり、明示的な通信も管理者の介入も無しに各人の寄付が他の人の収入に直ちに反映できることです。それは、MIT App InventorにあるCloudDB(リアルタイムDB)を利用することで簡単に実現できました。主要部は以下の図のみです。図3は、寄付金額を寄付者IDとともにCloudDBへ格納します。格納があると、リアルタイムに自動的に、各スマホのアプリの図4のブロックが呼び出されて、寄付金額から付与金額が計算され、配分されます。




このように、リアルタイムDBのおかげで、プログラムはとても簡潔になりました。

(注)デフォルトでは、誰でも直ぐに使える、CloudDB用の共通のidとトークンが与えられています。しかし、自分のデータがいつまで存続するか保証されません。そこで、独自のidとトークンを申請することもできます。無料枠の容量は小さいですが、これを利用すれば、安定的であり重宝します。

参考文献
[1] 山岸俊男:安心社会から信頼社会へ 日本型システムの行方 (中公新書)、1996年6月発行(ただし、今回はこのKindle版で講読した)
[2] 山岸俊男:社会的ジレンマ 「環境破壊」から「いじめ」まで (PHP新書)、2000年7月発行