Hi experts,
I'm reproducing this study(https://github.com/stanfordnmbl/balance-exo-sim).
After downloading the raw motion capture data from the simtk.org, I set the motion_capture_data_path in the config.yaml and copied the guess folder to balance-exo-sim\results.
So, I configured and ran the run_tasks.ps1, and I get the errors as follows:
TaskError - taskid:subject01_moco_unperturbed_guess_mesh0.04_scale0.1_reserve200
PythonAction Error
Traceback (most recent call last):
File "E:\Conda\installer_files\conda\envs\balance-exo-sim\lib\site-packages\doit\action.py", line 461, in execute
returned_value = self.py_callable(*self.args, **kwargs)
File "E:\Codes\balance-exo-sim\tasks.py", line 800, in run_tracking_problem
result.generate_results()
File "E:\Codes\balance-exo-sim\code\tracking_problem.py", line 604, in generate_results
self.run_tracking_problem(config)
File "E:\Codes\balance-exo-sim\code\tracking_problem.py", line 582, in run_tracking_problem
contactForces, copTable = self.create_contact_sphere_force_table(model,
File "E:\Codes\balance-exo-sim\code\result.py", line 253, in create_contact_sphere_force_table
statesTrajectory = solution.exportToStatesTrajectory(model);
File "D:\OpenSim\OpenSim 4.5\sdk\python\opensim\moco.py", line 7114, in exportToStatesTrajectory
return _moco.MocoTrajectory_exportToStatesTrajectory(self, *args)
RuntimeError: std::exception in 'OpenSim::StatesTrajectory OpenSim::MocoTrajectory::exportToStatesTrajectory(OpenSim::Model const &) const': The following 20 columns from the states Storage are not states in Model 'ankle_perturb_sim_subject01':
/forceset/reserve_pelvis_tx/activation
/forceset/reserve_pelvis_ty/activation
/forceset/reserve_pelvis_tz/activation
/forceset/reserve_pelvis_list/activation
/forceset/reserve_pelvis_tilt/activation
/forceset/reserve_pelvis_rotation/activation
/forceset/reserve_hip_adduction_r/activation
/forceset/reserve_hip_rotation_r/activation
/forceset/reserve_hip_flexion_r/activation
/forceset/reserve_hip_adduction_l/activation
/forceset/reserve_hip_rotation_l/activation
/forceset/reserve_hip_flexion_l/activation
/forceset/reserve_knee_angle_r/activation
/forceset/reserve_ankle_angle_r/activation
/forceset/reserve_subtalar_angle_r/activation
/forceset/reserve_knee_angle_l/activation
/forceset/reserve_ankle_angle_l/activation
/forceset/reserve_subtalar_angle_l/activation
/forceset/reserve_mtp_angle_r/activation
/forceset/reserve_mtp_angle_l/activation
Thrown at StatesTrajectory.cpp:243 in createFromStatesTable().
And I cannot find these labels in the model, I have no idea how to fix this.
Due to the upload attachment size limit, the relevant files are placed here(https://drive.google.com/drive/folders/ ... sp=sharing)
Plz help me, Thank you in advance.
"states Storage are not states in Model" errors during reproducding balance-exo-sim
- Nicholas Bianco
- Posts: 1057
- Joined: Thu Oct 04, 2012 8:09 pm
Re: "states Storage are not states in Model" errors during reproducding balance-exo-sim
Hi fa shu,
Thank you for checking out my simulation project!
It looks like you are trying to run the task "subject01_moco_unperturbed_guess_mesh0.04_scale0.1_reserve200", but you are trying to use the final solution as an initial guess which does not contain any reserve actuators (i.e., the actuators listed below). The quick solution (I think, it's been awhile since I've looked at this) is to set the config "unperturbed_initial_guess" to "False" in the config.yaml file.
Note that the task "subject01_moco_unperturbed_guess_mesh0.04_scale0.1_reserve200" is part of the pipeline for generating an initial guess for task "subject01_moco_unperturbed". If you don't care about replicating that part of the pipeline, then you could skip to "subject01_moco_unperturbed", if you like.
Best,
Nick
Thank you for checking out my simulation project!
It looks like you are trying to run the task "subject01_moco_unperturbed_guess_mesh0.04_scale0.1_reserve200", but you are trying to use the final solution as an initial guess which does not contain any reserve actuators (i.e., the actuators listed below). The quick solution (I think, it's been awhile since I've looked at this) is to set the config "unperturbed_initial_guess" to "False" in the config.yaml file.
Note that the task "subject01_moco_unperturbed_guess_mesh0.04_scale0.1_reserve200" is part of the pipeline for generating an initial guess for task "subject01_moco_unperturbed". If you don't care about replicating that part of the pipeline, then you could skip to "subject01_moco_unperturbed", if you like.
Best,
Nick
Re: "states Storage are not states in Model" errors during reproducding balance-exo-sim
Hi Nick,
Thank you very much for your professional reply.
According to your suggestion, after configing "unperturbed_initial_guess" to "False" in the config.yaml file, THE commands
" doit subject*_moco_perturbed_torque*_time30_rise10_fall5
doit subject*_moco_perturbed_torque*_time60_rise10_fall5 "
worked fine.
BUT could you tell me how to replicate the whole pipeline of this project with "unperturbed_initial_guess" is "True" in the config.yaml file. I downloaded and copied the raw data on simtk to the project folder of balance-exo-sim according to the github project instructions, but the above problems occurred.
So, how should raw data be placed in the project folder to fully reproduce the project, and if it is convenient for you, can you update a detailed instruction?
I would like to add more data we collected on the basis of replicating your project.
Thank you in advance.
Best,
Fashu
Thank you very much for your professional reply.
According to your suggestion, after configing "unperturbed_initial_guess" to "False" in the config.yaml file, THE commands
" doit subject*_moco_perturbed_torque*_time30_rise10_fall5
doit subject*_moco_perturbed_torque*_time60_rise10_fall5 "
worked fine.
BUT could you tell me how to replicate the whole pipeline of this project with "unperturbed_initial_guess" is "True" in the config.yaml file. I downloaded and copied the raw data on simtk to the project folder of balance-exo-sim according to the github project instructions, but the above problems occurred.
So, how should raw data be placed in the project folder to fully reproduce the project, and if it is convenient for you, can you update a detailed instruction?
I would like to add more data we collected on the basis of replicating your project.
Thank you in advance.
Best,
Fashu