Task dossier

Balloon Analogue Risk Task (BART)

T000002T000002-bartSmoke testedWeb preview availableUpdated Jun 19, 2026

A risk-taking task based on BART with color-specific burst profiles.

Balloon Analogue Risk Task (BART) flow diagram
Balloon Analogue Risk Task (BART) flow diagram
Preview path
This task ships with a matched HTML companion so the browser preview can stay aligned to the canonical local repository.
Quick start
Clone locally, then follow the README for install and run instructions.
git clone https://github.com/TaskBeacon/T000002-bart.git
cd T000002-bart
# Follow the README for local setup and run steps

Balloon Analogue Risk Task (BART)

Maturity: smoke_tested

FieldValue
NameBalloon Analogue Risk Task (BART)
Versionmain (1.1)
URL / Repositoryhttps://github.com/TaskBeacon/T000002-bart
Short DescriptionA risk-taking task based on BART with color-specific burst profiles.
Created ByZhipeng Cao (zhipeng30@foxmail.com)
Date Updated2026/03/02
PsyFlow Version0.1.0
PsychoPy Version2025.1.1
ModalityBehavior/EEG
LanguageChinese
Voice Namezh-CN-YunyangNeural

1. Task Overview

BART measures risk-taking by requiring repeated choices between pumping a balloon for higher temporary reward and cashing out to bank reward safely. If a balloon explodes, that trial's temporary reward is lost.

This implementation uses deterministic explosion sampling with config-defined mode (without_replacement_cycle by default), three color conditions (blue, yellow, orange), and config-first participant-facing stimuli for localization portability.

2. Task Flow

Task Flow

Controller Logic

  • main.py runs one unified mode-aware flow (human, qa, sim).
  • BlockUnit.generate_conditions() handles condition sequencing.
  • src/run_trial.py handles trial states (pre_pump_fixation, pump_decision, outcome, feedback).
  • Explosion points are sampled by a deterministic condition/block sampler, not global RNG.

Block-Level Flow

StepDescription
Load ConfigLoad mode-specific config from config/.
Collect Subject InfoHuman uses SubInfo; QA/SIM use synthetic IDs.
Setup Trigger RuntimeHardware in human mode, mock in QA/SIM.
Initialize Window/InputBuild PsychoPy window + keyboard.
Load StimuliLoad from StimBank (config-defined).
Show InstructionsShow config-defined instruction text.
Loop BlocksRun trial blocks and break screen.
Show GoodbyeShow final score and terminate.
Save DataSave trial rows to CSV.

Trial-Level Flow

StepDescription
Fixationfixation stimulus before each trial.
Pump DecisionBalloon + dynamic score text (score_bank_text) and pump/cash response.
OutcomePop / cash / timeout outcome branch.
FeedbackNumeric trial score display.

Runtime Context Phases

Phase LabelMeaning
pre_pump_fixationPre-decision fixation stage.
pump_decisionRepeated pump-or-cash decision stage.

3. Configuration Summary

a. Subject Info

  • Defined in subinfo_fields / subinfo_mapping.
  • Includes subject_id, subname, age, gender.
  • Participant-facing labels are config-defined for localization.

b. Window Settings

ParameterValue
size[1920, 1080]
unitsdeg
screen1
bg_colorgray
fullscreenTrue
monitor_width_cm60
monitor_distance_cm72

c. Stimuli

NameTypeNotes
fixationtextPre-trial fixation cross
[color]_balloonimageBalloon stimulus by condition
score_bank_texttext templateDynamic +{score_bank} display
[color]_popimageExplosion outcome image
cash_screen, timeout_screentextOutcome text screens
win_feedback, lose_feedbacktext templateTrial feedback with {fb_score}
instruction_text, block_break, good_byetextbox/textParticipant-facing instructions and summaries

d. Timing

ParameterValue
fixation_duration0.8s
response_feedback_duration1.0s
balloon_duration2.0s (used when decision_timeout_enabled=true)
feedback_duration1.0s

e. Task Settings

ParameterHumanQA/SIM
total_blocks31
trial_per_block109
total_trials309
conditions[blue, yellow, orange][blue, yellow, orange]
pump_keyspacespace
cash_keyrightright
explosion_sampling_modewithout_replacement_cyclewithout_replacement_cycle
decision_timeout_enabledfalsetrue

4. Methods (for academic publication)

Participants completed a Balloon Analogue Risk Task with color-coded balloon conditions (blue, yellow, orange) that differed in burst limits and reward increments. In each trial, participants could repeatedly pump (space) to increase temporary reward or cash out (right) to bank accumulated reward before explosion. If explosion occurred, that trial's temporary reward was lost.

The human protocol uses 30 trials (3 blocks x 10 trials), while QA/SIM profiles are reduced for validation runtime. Explosion points are generated with a deterministic condition/block sampler configured by explosion_sampling_mode, and participant-facing text/stimuli are config-defined to support localization.

5. References

  • Lejuez, C. W., Read, J. P., Kahler, C. W., Richards, J. B., Ramsey, S. E., Stuart, G. L., Strong, D. R., & Brown, R. A. (2002). Evaluation of a behavioral measure of risk taking: The Balloon Analogue Risk Task (BART). Journal of Experimental Psychology: Applied, 8(2), 75-84. https://doi.org/10.1037/1076-898X.8.2.75
  • See references/ for structured evidence artifacts and mapping tables.