Code
jspsych-maze (plugin)
maze-distractor-generator
maze-demos
Maze (older)
Current tools
Distractor generation (Hugging Face models)
Running A-maze in jsPsych
A-maze for kids
A-maze in other languages
Demos
All demos
Kid-friendly reading
Sentences with RT graph
Sentences without redo
Short vignettes
Natural Stories story
Background
What is A-maze?
Papers using A-maze
An argument for 'redo' mode
Adding a delay to 'redo' mode
Experiment design
Parameter considerations
Older tools
Original distractor generation (Boyce et al. 2020; Boyce & Levy 2023)
Install instructions
Basic use
Parameters
Advanced options
Ibex
Using Ibex for Maze
Hosting an Ibex-Maze server
Older tools. This page documents the original distractor generation code (
maze_automate), as described in Boyce et al. (2020) and Boyce & Levy (2023). It is no longer maintained, and is kept for existing projects. For new projects, see distractor generation with Hugging Face models.
This is written with the assumption that you might be trying to mess with things or add new modules to maze automation.
Files and what they do:
main.py: has function run_stuff that does everything
output.py writes output to delim or ibex format
sentence_set.py: has classes Sentence, label, and Sentence_Set, handles a lot of the organizational heavy lifting
wordfreq_distractor: has a general dictionary implementation that does length and frequency comparisons (and also also supplies related frequency and threshold functions); instantiated for English and French in two subclasses
french.py: french model subclass of lang_model
limit_repeats.py: has class for limiting repeats of distractors between items
Some obvious steps to mess with:
It shouldn’t be hard to set up Maze to work for non-English languages. The hard part is finding/making a good language model. As a proof-of-concept, a set-up for French maze is provided.
The key things to consider are:
It might be desirable to run A-maze experiments on a platform other than Ibex that is more up to date or familiar. It should be relatively easy to implement the Maze task on other frameworks that do reaction time measurements especially if they’re already set up for SPR.
If you do fix bugs, add new features, or new languages; please submit pull requests!