Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

(Beispiel) Codes für 2-armigen-Bandit

0 votes

Hallo

ich möchte für ein Experiment zwei 2-armige-banditen programmieren.
Die Probanden müssen sich in 50 Runden jeweils für einen der vier Arme (Aktion) entscheiden.
Der Gewinn oder Verlust (feste Wahrscheinlichkeitsverteilungen) soll angezeigt werden und eine erneute Aufforderung sich für einen Arm der beiden Spielautomaten zu entscheiden.
Gibt es dafür Code Beispiele oder bereits bestehende codes?

Danke im Voraus.

asked Sep 12 in SoSci Survey (dt.) by s076416 (130 points)
Nun, abgesehen von meiner letzten Antwort (https://support.soscisurvey.de/?qa=745/spielautomaten-programmieren) nicht, nein.

Wenn Sie Ihre Frage editieren und schreiben, was Sie schon haben und wofür genau Sie noch PHP-Code benötigen, dann kann ich gerne Beispiele ergänzen.

1 Answer

0 votes

Hier gerne ein wenig PHP-Code, wenn Sie eine Skala mit beschrifteten Zwischenwerten (Arm 1 bis Arm 4) und 50 Items (als Text einfach nur ein Leerzeichen) mit der Kennung SK01 angelegt haben. Außerdem brauchen Sie eine Frage "interne Variablen" mit 50 Variablen (Items) und z.B. der Kennung SK02.

$rounds = 50;
$i = loopPage($rounds + 1);

// Ergebnis anzeigen?
if ($i > 1) {
  $choice = value(id('SK01', $i));
  // Zufallsziehung mit unterschiedlichen Wahrscheinlichkeiten
  if (($choice == 1) or ($choice == 2)) {
    $res = random_p(array(
      1 => 5,
      2 => 5
    ));
  } else {
    $res = random_p(array(
      3 => 333,
      4 => 667
    ));
  }
  // Anzeige des Ergebnisses
  if ($res == 1) {
    html('<p>10 Euro gewonnen</p>');
  } elseif ($res == 2) {
    html('<p>10 Euro verloren</p>');
  } elseif ($res == 3) {
    html('<p>100 Euro gewonnen</p>');
  } elseif ($res == 4) {
    html('<p>200 Euro verloren</p>');
  }
  // Speichern sollte wir das Ergebnis auch
  put(id('SK02', $i), $res);
}

// Aktuelle Runde anzeigen
if ($i < $rounds) {
  question('SK01', $i + 1);
}

Anstatt einer Skala können Sie auch eine Auswahlabfolge mit 50 Teilfragen anlegen. Dann Sind die Auswahlfelder schicker und der Teilnehmer kommt direkt nach dem Klick zum Ergebnis bzw. der nächsten Runde.

Wie gesagt (s. auch Komentar): Konkrete Antworten gerne, wenn Sie konkrete Fragen haben :)

answered Sep 12 by SoSci Survey (9,285 points)
...