Kinematic data of humans performing the critical stability task
Data files
Apr 15, 2024 version files 4.05 GB
-
eLife_code_and_data.rar
-
README.md
Abstract
Natural behaviors have redundancy, which implies that humans and animals can achieve their goals with different control objectives. Given only observations of behavior, is it possible to infer the control strategy that the subject is employing? This challenge is particularly acute in animal behavior because we cannot ask or instruct the subject to use a particular control strategy. This study presents a three-pronged approach to infer an animal’s control strategy from behavior. First, both humans and monkeys performed a virtual balancing task for which different control objectives could be utilized. Under matched experimental conditions, corresponding behaviors were observed in humans and monkeys. Second, a generative model was developed that represented two main control strategies to achieve the task goal. Model simulations were used to identify aspects of behavior that could distinguish which control objective was being used. Third, these behavioral signatures allowed us to infer the control objective used by human subjects who had been instructed to use one control objective or the other. Based on this validation, we could then infer strategies from animal subjects. Being able to positively identify a subject’s control objective from behavior can provide a powerful tool to neurophysiologists as they seek the neural mechanisms of sensorimotor coordination.
README: Kinematic Data of Humans Performing the Critical Stability Task
******************************************
------------------ Code ------------------
******************************************
The 'main.m' script includes analysis and simulation codes for the paper. The main.m file could be run by specifying the type of analysis as follows:
Case 1: Analysis_human_data.m
This code generates figures regarding the human data analysis
Case 2: Simulation.m
This code generates simulation results.
Case 3: SensitivityAnalysis_Delay.m
This code generates simulation results for model sensitivity to
sensory delay
Case 4: SensitivityAnalysis_Effort.m
This code generates simulation results for model sensitivity to
Effort cost
Case 5: SensitivityAnalysis_SDN.m
This code generates simulation results for model sensitivity to
signal dependent noise
Each analysis could be run both from the main.m file, or directly from its
corresponding script
******************************************
------------- Data Structure -------------
******************************************
The data file named "cst_data.mat" is a N-by-1 Matlab structure array with N trials, and the following fields for each trial:
data =
13575×1 struct array with fields:
subjectID
trialType
lambda
trialNumber
sessionNumber
success
lambdaUpdateMode
target
waitTime
reactionTime
instruction_type
t
x
u
- subjectID: The initials of the subject performing that trial (example: "AB", "MS" etc)
- trialType: determines one of three trial types used in the given trial- "CST" , "reaction_time", "tracking"
Only the "CST" trials are used in the analysis and reported in the paper.
- lambda: The lambda value used for the CST task in the given trial. This value only makes sense for the "CST" type trials
- trialNumber: The trial number in each session
- sessionNumber: The session number; data was collected in multiple sessions (days) for each subject.
- success: Determines the success (1) or failure (0) in the CST trial. This value is NaN for other trial types
- lambdaUpdateMode: Determines how the lambda value was specified for the CST trials within a session.
This is one of three modes.
"dynamic": The lambda value is determined based on success/failure in the previous trial.
"ramp": lambda increases incrementally over blocks of trials
"rand": lambda changes randomly from trial to trial
- target: This determines the target location for the "reaction_time" task- not used in the current paper
- waitTime: time before the onset of each trial
- reactionTime: the reaction time for the "reaction_time" task- Not included in the current paper
- instruction_type: The experimental Group for the CST task. This determines the group ID:
"position": for the position control group
"velocity": for the velocity control group
"none": for the no-instruction group
- t: the elapsed time for the given trial
- x: the time-series of the cursor position (only one-dimensional)
- u: the time-series of the hand position (3-dimensional, but only the x-dimension is used for cursor control and analysis)
Methods
Refer to the Methods section in https://doi.org/10.7554/eLife.88514.2