P300 Matrix Speller (Farwell & Donchin, 1988)
Measured by Farwell & Donchin · Electroencephalogr. Clin. Neurophysiol. 70(6) (1988)
Inputs
The measured or assumed values behind the calculations, each with its source.
- N = 36
- 6×6 character matrix (row/column flashing)
- P = 0.95
- ≈95% selection accuracy, the figure cited for the original speller
- t_sel = 23 s
- ≈2.6 selections/min; the original relied on extensive ERP signal averaging, so each selection was slow
Strictest ITR
Each scoring method is an upper bound on the channel, so the headline is the strictest (smallest) one for this entry. Use the score selector on the home page to view any single method across entries.
-
Correct characters per minute
≈ 2.6 selections/min × 0.95 accuracy ≈ 2.5 correct char/min
Each selection emits one character of English; ~23 s/selection due to extensive ERP signal averaging. This is the rate of correct text actually produced.
-
Bits per character
H(English) ≈ 1.0 bit/char (Shannon), the same predictor used for QWERTY, eye-typing and the other BCI text entries
-
Information transfer rate
2.5 char/min × 1.0 bit/char ÷ 60 s/min = 0.041 bits/s
What counts as a bit depends on the action space. The number of distinguishable actions and how likely each one is are design choices of the task, not the sensing hardware. The same modality can present a fixed set of targets, a set pruned per step by a grammar or language model, or a continuous control space. Each of these changes how many actions are live and how the probability mass is spread, and therefore the information per selection. Read the action space below before comparing headline numbers across entries.
Action space
What the user can produce at each step, and how those options are distributed.
- Structure
- Fixed set of targets
- Size
- 36 distinguishable actions
- Prior
- Context-conditioned: likelihoods depend on prior actions
- Notes
- 6×6 character matrix; the decoder classifies which letter drew the P300 response (covert attention, no pointing, no cursor). The realized output is English text, so the reference uses the same character-entropy method (~1 bit/char) as the other text-entry entries; the Wolpaw-over-36 figure assumes a uniform 1-of-36 choice and is kept as a secondary classifier metric. Modern P300 spellers are far faster, but this is the 1988 original.
Comparability The strictest bound here is the Shannon entropy of the output text, under one predictor held constant across the whole atlas (≈1 bit per character). That shared predictor makes it directly comparable to every other text entry (keyboards, spellers, silent speech and speech BCIs) regardless of prior or vocabulary size. For most text interfaces it comes out tighter than the raw-selection bounds, but not always. Where a small vocabulary makes Wolpaw tighter, that wins instead. Any Fitts, Wolpaw or log₂(N) figure shown below is another bound on the same channel. Switch the home-page score selector to compare one across entries.
Other score types
Bounds the atlas keeps out of the default strictest headline: as-reported figures, alternate task conditions, or raw-channel ceilings that shouldn't win the headline by default. Each still carries a score type, so the home-page selector ranks this entry on it when you choose that type. Read its derivation before comparing across entries.
-
Bits per selection (Wolpaw formula)
B = log2(N) + P*log2(P) + (1-P)*log2((1-P)/(N-1)) = log2(36) + 0.95*log2(0.95) + 0.05*log2(0.05/35) = 4.627 bits / selection
Term 1 is the information if every choice were correct; terms 2-3 subtract the bits lost to the error rate, assumed spread evenly over the other N-1 targets.
-
Selections per second
T = 23 s/selection -> 1 / 23 = 0.043 selections/s
-
Information transfer rate
ITR = B * selections/s = 4.627 * 0.043 = 0.201 bits/s
-
Achieved-bitrate credit per net-correct selection
N = 36 → log2(N − 1) = log2(35) = 5.13 bits per net-correct selection (field-standard achieved bitrate, e.g. Webgrid; Nuyujukian 2015, which introduced the metric, used log2(N)).
-
Net-correct selection rate
net-correct = 2P − 1 = 2(0.95) − 1 = 0.90 of selections. At ~2.6 selections/min (23 s each) → 0.90 / 23 = 0.039 correct/s.
A speller error commits the wrong character rather than timing out, so incorrect = 1 − P. Same N (36), accuracy (95%) and selection time (23 s) as the entry's Wolpaw calc. Because a wrong selection commits an error rather than merely timing out, the achieved bitrate nets each mistake against a correct selection (2P − 1); at this high accuracy it nearly matches the Wolpaw figure, but it falls faster as accuracy drops.
-
Achieved bitrate
5.13 bits × 0.039 correct/s = 0.20 bits/s.
Source
- Authors
- Farwell & Donchin
- Publication
- Electroencephalogr. Clin. Neurophysiol. 70(6), 1988