Simulating Errors in Touchscreen Typing
Danqing Shi, Yujun Zhu, Francisco Erivaldo Fernandes Junior, Shumin Zhai, Antti Oulasvirta
TL;DR
Typoist tackles the problem of understanding touchscreen typing errors by modeling cognitive mechanisms that generate slips, lapses, and mistakes, and by incorporating a hierarchical supervisory-control framework within a POMDP. It extends prior models by integrating perception and memory noise, enabling joint generation and correction of a broad set of errors, and trains the policy via RL (PPO) with two-loop parameter optimization. The TypingError benchmark demonstrates that Typoist reproduces realistic error distributions across diverse user groups and conditions, often outperforming the previous state-of-the-art CRTypist in key metrics and providing human-like error-correction behavior. The approach offers practical utility for keyboard evaluation, user research, and synthetic data generation, while acknowledging limitations in autocorrection dynamics and more advanced ITE features, pointing to future work on gesture input and word prediction.
Abstract
Empirical evidence shows that typing on touchscreen devices is prone to errors and that correcting them poses a major detriment to users' performance. Design of text entry systems that better serve users, across their broad capability range, necessitates understanding the cognitive mechanisms that underpin these errors. However, prior models of typing cover only motor slips. The paper reports on extending the scope of computational modeling of typing to cover the cognitive mechanisms behind the three main types of error: slips (inaccurate execution), lapses (forgetting), and mistakes (incorrect knowledge). Given a phrase, a keyboard, and user parameters, Typoist simulates eye and finger movements while making human-like insertion, omission, substitution, and transposition errors. Its main technical contribution is the formulation of a supervisory control problem wherein the controller allocates cognitive resources to detect and fix errors generated by the various mechanisms. The model generates predictions of typing performance that can inform design, for better text entry systems.
