Return to the Angling Risk Task page
						
									ANGLING RISK TASK (ART)

SCRIPT INFO

Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC
Date: 05-02-2013
last updated: 08-15-2016 by K.Borchert (katjab@millisecond.com) for Millisecond Software LLC

Copyright © 08-15-2016 Millisecond Software


BACKGROUND INFO

											*Purpose*
This script implements the Angling Risk Task (ART) as described in:

Pleskac, T.J (2008). Decision Making and Learning While Taking Sequential Risks.
Journal of Experimental Psychology: Learning, Memory, and Cognition, 34, 167–185.

Note: the original ART as well as more detailed information can be obtained from Dr.Pleskac by request

Millisecond Software thanks Dr. Pleskac for sharing his original program as well as generously supporting our
efforts to replicate it in Inquisit!



											  *Task*
Participants are playing in a fishing tournament for 30 (default)  number of rounds. 
The goal is to win as much money as possible during each round. Participants win money by fishing red fish out of a pond 
that contains 127 red fish (default) and 1 blue fish. Each time they catch a red fish, they win 5cents (default) 
which is put in a temporary bank. If they catch the blue fish instead, the current round is over and all money in the
temporary bank is lost. If participants don't want to lose their temporary money they have to decide when to stop
catching fish and collect the money they have earned. Once they decide to collect the money, the money is transferred
to a permanent bank and the current round is over.
Participants can play the game under 
* 2 different weather conditions: 	a) 'clear' (all fish are visible) or b) 'cloudy'  (no fish are visible)
* 2 different release conditions: 	a) 'catch n'keep' (fish are not returned to the lake => chance to fish blue fish increases with each successful fishing attempt) 
									b) 'catch n'release' (fish are returned to the lake => chance to fish blue fish stays constant)


ART vs BART (Balloon Analogue Risk Task; Lejuez et al., 2002)
from Pleskac - readme.txt (in original ART experimental package):
"The weather conditions of the fishing tournament can also be changed to manipulate the amount of learning necessary 
in the task and test the learning and risk assessment  prediction. The tournament can take place on a sunny day, allowing participants to 
see how many fish are swimming in the pond and eliminating the need to learn.  

In contrast, the tournament can take place on a cloudy day, concealing the fish in the pond, which in turn forces participants 
to learn how many are in the pond.  This is a stronger manipulation of learning than can be done with the BART because it 
removes any helpful cues. For example, a helpful cue in the BART is the relation between the balloon size and the edge of the screen 
because the balloon is set to explode for certain when it fills the screen. The ART also offers a visually informative and 
understandable display in the sunny tournaments so that participants are fully aware of the parameters of the task." 



DATA FILE INFORMATION: 
The default data stored in the data files are:

(1) Raw data file: 'AnglingRiskTask_raw*.iqdat' (a separate file for each participant)

build:									Inquisit build version run
computer.platform:						the platform the script was run on
date, time, subject:					date and time script was run with the current subjectnumber 
/exp_condition:							1 = clear, catch n'keep
										2 = cloudy, catch n'keep
										3 = clear, catch n'release
										4 = cloudy, catch n'release
/releasecondition:						1 = no release/catch n'keep (default); 2 = release/catch n'release	
/weathercondition:						1 = clear (default); 2 = cloudy
/maxnr_fishinpond:						the number of fish in the pond
/maxnr_trips:							number of trips
/fixedsampling:							1 = fixed samling: the sampling of the blue fish is fixed across participants
										0 = random sampling (default); computers samples randomly when the blue fish is caught (not predetermined)
/fixedfishingtrips:						stores the number of fishingtrips that can be made under the fixed sampling condition
											Example: 64 => 63 successful fishing trips can be made before the blue fish is caught on the 64th trip
/reward:								amount paid for each red fish caught (default: $0.05)

blockcode, blocknum:					the name and number of the current block
trialcode, trialnum: 					the name and number of the currently recorded trial
/tripcount:								tracks the number of fishing trips
/nextfish:								stores the number of the nextfish (1 = blue fish caught, any other number = red fish caught)
/nr_winfish:							stores the current number of red fish
/current_winnings:						stores the current potential reward money (not safe yet)
/total_winnings:						stores the current reward money already safely in the bank
response:								the response of participant
/successtrip:							tracks the number of successful fishing trips (successful = did not fish a blue fish during this trip)
latency:								response latency (in ms)
/timebefore1stcast:						latency before participant decide to do first cast (empty if participant decides to collect right away)
/castlatency:							time it takes for participant to decide to cast (starting at start of trial.xxx_tournament); includes first cast
/sumrt_castlatency:						sum of all cast latencies(used to calculate mean_castlatency)
/timebeforecollect:						latency before participant decides to collect 

(2) Summary data file: 'AnglingRiskTask_summary*.iqdat' (a separate file for each participant)

script.startdate:						date script was run
script.starttime:						time script was started
script.subjectid:						subject id number
script.groupid:							group id number
script.elapsedtime:						time it took to run script (in ms)
computer.platform:						the platform the script was run on
/completed:								0 = script was not completed (prematurely aborted); 1 = script was completed (all conditions run)
/exp_condition:							1 = clear, catch n'keep
										2 = cloudy, catch n'keep
										3 = clear, catch n'release
										4 = cloudy, catch n'release
/releasecondition:						1 = no release/catch n'keep (default); 2 = release/catch n'release	
/weathercondition:						1 = clear (default); 2 = cloudy
/maxnr_fishinpond:						the number of fish in the pond
/maxnr_trips:							number of trips
/fixedsampling:							1 = fixed samling: the sampling of the blue fish is fixed across participants
										0 = random sampling (default); computers samples randomly when the blue fish is caught (not predetermined)
/reward:								amount paid for each red fish caught (default: $0.05)
/total_winnings:						stores the current reward money already safely in the bank
/tripcount:								tracks the number of fishing trips
/tripcount_1set-						per set (set1=trip1-trip10, set2= trip11-trip20, set3 = trip21-trip30)
/tripcount_3set
/successtrip:							tracks the number of successful fishing trips (successful = did not fish a blue fish during this trip)
/successtrip_1set-						per set
/successtrip_3set 
/totalfishingcount:						tracks the number of fishing attempts across all trips
/totalfishingcount_1set -				per set
/totalfishingcount_3set
/adj_totalfishingcount:					tracks the number of SUCCESSFUL fishing attempts across all trips
/adj_totalfishingcount_1set-			per set
/adj_totalfishingcount_3set
/total_suddenends:						tracks the number of times a blue fish was caught
/total_suddenends_1set-					per set
/total_suddenends_3set

/avg_fishingcount: 						mean number of times participant selected to fish (includes unsuccessful trips)
/avg_fishingcount_1set: 				mean number of times participant selected to fish during the first third of the rounds
/avg_fishingcount_2set: 				mean number of times participant selected to fish during the second third of the rounds
/avg_fishingcount_3set: 				mean number of times participant selected to fish during the third third of the rounds

/adjavg_fishingcount:					mean number of times participant selected to fish (EXCLUDES unsuccessful trips)
/adjavg_fishingcount_1set: 				mean number of times participant selected to fish during the first third of the rounds (EXCLUDES unsuccessful trips)
/adjavg_fishingcount_2set: 				mean number of times participant selected to fish during the second third of the rounds (EXCLUDES unsuccessful trips)
/adjavg_fishingcount_3set: 				mean number of times participant selected to fish during the third third of the rounds (EXCLUDES unsuccessful trips)

/mean_castlatency:						mean cast latency for tournament


EXPERIMENTAL SET-UP
* This script runs any of the four conditions of the ART
* By default, parameters can be set at the beginning of each script run

INSTRUCTIONS
Instructions are the original ART instructions by Pleskac (2008) (with minor modifications).
Instructions are presented via simple htm pages. These htm pages are included with this script and 
can easily be adapted to different languages.
	
EDITABLE CODE:
check under EDITABLE CODE below for (relatively) easily editable parameters, stimuli, instructions etc. 
Keep in mind that you can use this script as a template and therefore always "mess" with the entire code to further customize your experiment.

The parameters you can change are:
/parameterselection:			parameterselection = true (default): a screen is shown that let's participant/experimenter set the parameters
								parameterselection = false; default values are used that can be changed below
/showcatchring:					1= show a ring around the fish that was caught (default: 1)
								0 = don't show a ring around the fish that was caught
/catchring:						duration the caught fish (with green ring around) is presented (default: 200ms)
/show_tripnr:					1 = 'tripcount' is presented on the screen; 2 = 'tripcount' is NOT presented on the screen (default)

Parameters that are set up front IF parameterselection = true (otherwise can be changed below)
/maxnr_fishinpond:				sets the number of fish in the pond (default: 128)
								suggested default for no-release condition: 128 (compares best to BART procedure)
								suggested default for release condition: 65
/weathercondition:				1 = clear (default); 2 = cloudy
/releasecondition:				1 = no release/catch n'keep (default); 2 = release/catch n'release	
/maxnr_trips:					number of trips (default: 30)
									Note: it is suggested to use a number that is divisible by 3 as in addition to overall
									performance per trip condition, this script tracks performance by 3 sets of trips (first, second, third)
									Example: for 30 trips: first 10, second 10, third 10 trips get tracked separately
									if the chosen number is NOT divisible by 3, the script still runs but the summary variables may not be meaningful

/reward:						amount paid for each red fish caught (default: $0.05)
/fixedsampling:					1 = fixed samling: participants would catch the blue fish at the same point for each fishing round
								0 = random sampling (default); computers samples randomly when the blue fish is caught (not predetermined)
									!!!Note: fixed sampling only works in this script for 'catch n'keep' condition with N = 128 fish in the pond and tripnumbers = 30
									If 'catch n'release' condition is chosen, sampling is changed automatically to random.
									If 'catch n'keep' condition is chosen, number of trips is set automatically to 30 and number of fish to 128

/fixedsamplingcheck:			1 = script automatically checks if the conditions for fixed sampling is met (if fixedsampling is selected)
								=> if not, computer adjusts the conditions: for no-release conditions, the number of fish is set to 128
								and the number of fishing trips is set to 30; for release conditions, fixed sampling is turned into 
								random sampling
								0 = script doesn't automatically check and correct conditions for fixed sampling
								=> this is useful if you want to change the list that is used for fixed sampling (->list.explosionpoint)
								and adjust it for a different number of fish in the pond or different number of fishing trips.


Copyright © Millisecond Software. All rights reserved.
Contact | Terms of Service | Security Statement | Employment