Improving the Measurement of Reaction Time Tests on Windows Laptops
ESE 350 Final Project, Spring 2019
Aditya Hota and Lakshay Sharma
In collaboration with Dr. Mathias Basner, University of Pennsylvania School of Medicine
For astronauts in space, and people in many different professions, reaction times (RTs) are a very important measure of cognitive ability. Small changes in one's reaction time can be a sign that the person's cognitive abilities have changed, perhaps due to a lack of sleep or physiological changes. Sending new hardware to space is very expensive, so NASA uses already-present laptops to measure the reaction times of humans, instead of developing specialized hardware made just for the task.
The laptops in space are running Windows--since Windows is not an RTOS, we cannot be sure that the reaction time measurement program is accurately capturing the reaction time of the user. This is important, since the laptop system may be adding extra time to the user's actual reaction. We wanted to measure and characterize this delay, so we can calibrate models of laptops that will be used in space missions to measure reaction time. To do so, we developed a model of the "perfect human"---someone who can respond to a stimulus in "zero" time! Essentially, if we create a machine that takes the human delay out of the question, whatever reaction time is measured by the computer will be the delay added by the computer. Of course, doing so proved to be a difficult feat, which you can read about at our blog.
Program an mbed to receive a visual stimulus from a computer and actuate a solenoid with minimal latency.
Develop a mechanism to allow the actuation to be from a constant height above a laptop's keyboard.
Collect data about the reaction times and find an average delay for a computer.
Make the packaging of the device user friendly.
Get a distribution of the delays across multiple trials and multiple laptops, and try to account for where each part of the delay comes from (displaying the stimulus, keyboard press, or OS recognition).
Perform the timing measurements while the computer is subject to extreme conditions, such as high CPU/GPU or network loads.
We were able to detect a rising edge on the mbed, and initiate a timer in response to it. We would use this later on with the visual stimulus.
We were able to play a sound from the computer when the spacebar press was received and detect it using the mbed. This would allow us to measure both on the mbed and the computer when the visual stimulus was displayed and when the spacebar press was detected. We thought that taking the difference in these values would give us the latency of the computer, but this proved not to be the case.
We got our system to perform as an "ideal human", in which we would simulate a human who would have zero stimulus latency. If we used our device to press the spacebar with no delay from the visual stimulus, any timing reading by the computer would be due to the computer's latency. We also created a stand so that we could hold the solenoid at a constant height above the laptop keyboard, and made a protoboard for all of our circuitry.
For the reach demo, we packaged our circuitry into a more user-friendly box, instead of having an exposed protoboard. We also took a set of more comprehensive timing measurements.
Our end product mimics an "ideal human" who would essentially have a zero reaction time response. To do so, we have a computer program called Cognition, which is also used by astronauts (and others taking RT tests) for taking tests. Cognition has a calibration mode, where we can record the reaction times after a visual stimulus is shown on the screen. We setup an mbed which detects this visual stimulus, using a photoresistor, which actuates a solenoid and presses the spacebar of a laptop. We can then take these ideal human response time values and use them as the latency of the laptop system (including delay in displaying the visual stimulus, time taken to physically press down the spacebar, and time for Windows and the Cognition program to detect the spacebar press. After collecting data across multiple trials and laptops, we were able to make conclusions about the actual delays of the laptops, which were close to the expected values. You can read more about this on our blog!