Skip to main content

Treatment Optimization XML Reference

This page contains an exhaustive list of all Treatment Optimization xml elements. View the cost term and constraint term XML references for a list of available cost and constraint terms.

<NMSMPipelineDocument Version="1.5.0">
<DesignOptimizationTool>
<!--Directory used for writing results.-->
<results_directory>ResultsDir</results_directory>
<!--Directory for optimizer initial guess.-->
<initial_guess_directory>InitialGuessDir</initial_guess_directory>
<!--Directory for files for the optimizer to track.-->
<tracked_quantities_directory>TrackedQuantitiesDir</tracked_quantities_directory>
<!--Name of the input model file (.osim) to use.-->
<input_model_file>model.osim</input_model_file>
<!--Name of the osimx model file.-->
<input_osimx_file>model.osimx</input_osimx_file>
<!--Name of the optimal control solver settings file.-->
<optimal_control_solver_settings_file>gpopsSettings.xml</optimal_control_solver_settings_file>
<!--Name, excluding file type (.sto, .mot, etc), of the trial-->
<trial_name>gait_1</trial_name>
<!--Space separated list of coordinates to be considered GPOPS2 states. Not including a coordinate prescribes it.-->
<states_coordinate_list>coordinate_1 coordinate_2 coordinate_3</states_coordinate_list>
<!--*Optional* Default is 2.-->
<joint_position_range_scale_factor>2</joint_position_range_scale_factor>
<!--*Optional* Default is 1.5.-->
<joint_velocity_range_scale_factor>1.5</joint_velocity_range_scale_factor>
<!--*Optional* Default is 1.-->
<joint_acceleration_range_scale_factor>1</joint_acceleration_range_scale_factor>
<!--Set of synergy controls for GPOPS2.-->
<RCNLSynergyController>
<!--Space separated list containing the coordinates controlled by the synergy controller.-->
<surrogate_model_coordinate_list>coordinate_1 coordinate_2 coordinate_3</surrogate_model_coordinate_list>
<!--Directory to read the surrogate model from.-->
<surrogate_model_data_directory>SurrogateDataDir</surrogate_model_data_directory>
<!--Flag (true, false) indicating whether to load a previously saved surrogate model (named surrogateMuscles.mat)-->
<load_surrogate_model>false</load_surrogate_model>
<!--Flag (true, false) indicating whether to save the surrogate model used in this run (named surrogateMuscles.mat)-->
<save_surrogate_model>false</save_surrogate_model>
<epsilon>1e-4</epsilon>
<surrogate_model_polynomial_degree></surrogate_model_polynomial_degree>
<perform_latin_hypercube_sampling>true</perform_latin_hypercube_sampling>
<latin_hypercube_range_multiplier>1</latin_hypercube_range_multiplier>
<latin_hypercube_number_of_points>10</latin_hypercube_number_of_points>
<maximum_shortening_velocity_multiplier></maximum_shortening_velocity_multiplier>
<optimize_synergy_vectors>false</optimize_synergy_vectors>
<maximum_allowable_synergy_activation>5</maximum_allowable_synergy_activation>
<synergy_vector_normalization_method>sum</synergy_vector_normalization_method>
<synergy_vector_normalization_value>1</synergy_vector_normalization_value>
</RCNLSynergyController>
<RCNLTorqueController>
<!--Space separated list containing the coordinates controlled by the torque controller.-->
<coordinate_list>coordinate_1 coordinate_2 coordinate_3</coordinate_list>
</RCNLTorqueController>
<!--Set of cost terms used for this optimization. For a full list of cost terms, see documentation at nmsm.rice.edu.-->
<RCNLCostTermSet>
<!--Insert your cost terms here.-->
</RCNLCostTermSet>
<RCNLConstraintTermSet>
<!--Insert your constraint terms here.-->
</RCNLConstraintTermSet>
</DesignOptimizationTool>
</NMSMPipelineDocument>