About FiveChoice

Top  Next



Five-choice serial reaction time task.


Citing FiveChoice


Please cite as, for example:


(in text)

The task was implemented in the FiveChoice program (version 5.3, R.N. Cardinal) using the Whisker control system (Cardinal & Aitken, 2010).


(in bibliography)

Cardinal RN, Aitken MRF (2010). Whisker: a client–server high-performance multimedia research control system. Behavior Research Methods 42: 1059–1071. (PubMed ID: 21139173. DOI:10.3758/BRM.42.4.1059.)


Software requirements


Requires Whisker v2.0 or greater.


Data storage


Text-based output to disk.
ODBC data storage to a database (supplied).




Rudolf Cardinal (rudolf@pobox.com).




Copyright © Cambridge University Technical Services Ltd


Version history


v1.1 - First version finished 25 Mar 2002
v2.4 - First version actually used! (26 Mar 2004)
v2.5 - minor bugfix to stop program complaining about wrong XML config versions; bug fix to ensure that timer events have phase checks (stops a bug in which a trial could be classified as being both correct and an omission); added "preferred box" field; more progress info on main dialogue
v2.6 (8 June 2004): option to punish perseverative responses following correct responses; minor user interface changes
v2.7 (10 June 2004): option to debounce incoming inputs
v2.8 (2 Sep 2004): yoking (and more things are recorded with the standard task).
v2.9 (14 Feb 2005): forced-choice task added; pseudorandom location selection added.
v3.0 (10 Oct 2005): option not to record line OFF events.
v3.1 (14 Mar 2006): Bug fixed: wasn't recording events from yoked boxes numbered 10 or above.
v3.2 (4-6 Apr 2006): Help improved; options for variable stimulus duration within a session; more draw-without-replacement pseudorandom options added.
v3.3 (7 Apr 2006): Improved option for true zero stimulus duration; running display of perseverative responses.
v3.4 (18 May 2006): Better control of session end time.
v3.5 (25 May 2006): Front panel during pre-stimulus/post-stimulus timeout is now only optionally considered premature/perseverative, respectively.
v3.6 (4 July 2006): Bug fixed: was possible to set up a yoked box having the same box number as the master box, or as another yoked box.
v3.7 (8 March 2007): Easier compilation by user.
v3.8 (6 July 2007): Minor pellet-counting cosmetic bug fixed.
v4.0 (10-13 June 2008): computer-controlled dimmers for lights/noise distractors implemented.
v5.0 (12 Jan 2009): Server default changed from "loopback" to "localhost" (Windows Vista compatibility and more general standardization).
v5.1 (30 Apr 2009): Strobe hardware build target. See version tracker.
v5.2 (28 Feb 2010): Updated to compile under VS2008. Also database fields FiveChoice_Config.PelletPulseLength_ms and FiveChoice_Config.InterpelletGap_ms changed from single (float) to long (int).
v5.3 (2 May 2011): Now allows exact specification of holes to use for stimulus presentation (i.e. from 1-choice to 5-choice). Database changes to match (see version tracker).
v5.4 (19 Oct 2011). "PerseverativeNosepokes," missing from CSV header output in summary file - data was there, but header was missing (so subsequently mis-aligned) - fixed. (Database was unaffected.) See also accompanying Python rescue script. // Date/time string stored in textfile now includes seconds fields.
v5.5 (4 Dec 2017). (1) Option to flip houselight state. (2) Training mode, where all holes are correct. (3) Variable reinforcement option.
v5.6 (11 Dec 2018). Bugfix: m_iNonrewardsPerSet was being written to but not read from the XML config.