<?xml version='1.0' encoding='ISO-8859-1' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>simple_optimization_task.h</name>
    <path>/tmp/ws/src/industrial_moveit/stomp_core/examples/</path>
    <filename>simple__optimization__task_8h</filename>
    <includes id="task_8h" name="task.h" local="no" imported="no">stomp_core/task.h</includes>
    <class kind="class">stomp_core_examples::SimpleOptimizationTask</class>
  </compound>
  <compound kind="file">
    <name>stomp.cpp</name>
    <path>/tmp/ws/src/industrial_moveit/stomp_core/src/</path>
    <filename>stomp_8cpp</filename>
    <includes id="stomp_8h" name="stomp.h" local="yes" imported="no">stomp_core/stomp.h</includes>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>computeCubicInterpolation</name>
      <anchorfile>stomp_8cpp.html</anchorfile>
      <anchor>a50dd866bc57f59804db9cf4c1db8d151</anchor>
      <arglist>(const std::vector&lt; double &gt; &amp;first, const std::vector&lt; double &gt; &amp;last, int num_points, double dt, Eigen::MatrixXd &amp;trajectory_joints)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>computeLinearInterpolation</name>
      <anchorfile>stomp_8cpp.html</anchorfile>
      <anchor>a8b77b2e0e7d3e4f1a99fbc013f6c7475</anchor>
      <arglist>(const std::vector&lt; double &gt; &amp;first, const std::vector&lt; double &gt; &amp;last, int num_timesteps, Eigen::MatrixXd &amp;trajectory_joints)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>computeMinCostTrajectory</name>
      <anchorfile>stomp_8cpp.html</anchorfile>
      <anchor>a9b8c287d95fa001c198b848ac0d633bd</anchor>
      <arglist>(const std::vector&lt; double &gt; &amp;first, const std::vector&lt; double &gt; &amp;last, const Eigen::MatrixXd &amp;control_cost_matrix_R_padded, const Eigen::MatrixXd &amp;inv_control_cost_matrix_R, Eigen::MatrixXd &amp;trajectory_joints)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>computeParametersControlCosts</name>
      <anchorfile>stomp_8cpp.html</anchorfile>
      <anchor>a887b28f93dddc9ea6a9cb6e2a596b399</anchor>
      <arglist>(const Eigen::MatrixXd &amp;parameters, double dt, double control_cost_weight, const Eigen::MatrixXd &amp;control_cost_matrix_R, Eigen::MatrixXd &amp;control_costs)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>DEFAULT_NOISY_COST_IMPORTANCE_WEIGHT</name>
      <anchorfile>stomp_8cpp.html</anchorfile>
      <anchor>af6d5dcf2bb8813f83307e4535291af0e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>MIN_CONTROL_COST_WEIGHT</name>
      <anchorfile>stomp_8cpp.html</anchorfile>
      <anchor>af5ce506a5bbafc53453f77d1c59b17a3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>MIN_COST_DIFFERENCE</name>
      <anchorfile>stomp_8cpp.html</anchorfile>
      <anchor>a79697e0a2aca2d0dae5045db2675d2a1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>stomp.h</name>
    <path>/tmp/ws/src/industrial_moveit/stomp_core/include/stomp_core/</path>
    <filename>stomp_8h</filename>
    <includes id="task_8h" name="task.h" local="yes" imported="no">stomp_core/task.h</includes>
    <class kind="class">stomp_core::Stomp</class>
  </compound>
  <compound kind="file">
    <name>stomp_3dof.cpp</name>
    <path>/tmp/ws/src/industrial_moveit/stomp_core/test/</path>
    <filename>stomp__3dof_8cpp</filename>
    <includes id="stomp_8h" name="stomp.h" local="yes" imported="no">stomp_core/stomp.h</includes>
    <includes id="task_8h" name="task.h" local="yes" imported="no">stomp_core/task.h</includes>
    <class kind="class">DummyTask</class>
    <member kind="function">
      <type>bool</type>
      <name>compareDiff</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>ad7ea0eb543b38d61a222b18b7b2b8624</anchor>
      <arglist>(const Trajectory &amp;optimized, const Trajectory &amp;desired, const std::vector&lt; double &gt; &amp;thresholds)</arglist>
    </member>
    <member kind="function">
      <type>StompConfiguration</type>
      <name>create3DOFConfiguration</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a61fa0a966e1878acf3460c167605d631</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>interpolate</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a23e0113a8e5fc94e7e18cd65e954c041</anchor>
      <arglist>(const std::vector&lt; double &gt; &amp;start, const std::vector&lt; double &gt; &amp;end, std::size_t num_timesteps, Trajectory &amp;traj)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a9992817ef76509aa0820dcaa4d6e0d70</anchor>
      <arglist>(Stomp3DOF, construction)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>acf9ad6b09798ed0302dc31d7453f957d</anchor>
      <arglist>(Stomp3DOF, solve_default)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a4ffc33dfe7d3ef170eaabf924cbbe389</anchor>
      <arglist>(Stomp3DOF, solve_interpolated_initial)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>ac7654ff08f28f8d5825a3856e3a7a0e0</anchor>
      <arglist>(Stomp3DOF, solve_cubic_polynomial_initial)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>ae1f07f38f537da83c63a1eaa2115c337</anchor>
      <arglist>(Stomp3DOF, solve_min_control_cost_initial)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>acd7808baef64551fe89203c9afddde0f</anchor>
      <arglist>(Stomp3DOF, solve_40_timesteps)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a242a1233ad73cf953d9e2c1967b8c5a3</anchor>
      <arglist>(Stomp3DOF, solve_60_timesteps)</arglist>
    </member>
    <member kind="variable">
      <type>const std::vector&lt; double &gt;</type>
      <name>BIAS_THRESHOLD</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a35e514c9cbf08c062989580d7af8d5b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const double</type>
      <name>DELTA_T</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a187b17b96f16d81cd6a62fb88e0db758</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const std::vector&lt; double &gt;</type>
      <name>END_POS</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a70504e19e416320a3ffe4e4688b5f9a4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const std::size_t</type>
      <name>NUM_DIMENSIONS</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a4b65af51879f04e1552fb9af2b2a6c36</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const std::size_t</type>
      <name>NUM_TIMESTEPS</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>a1731f90541447146d5b11c90b5df347a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const std::vector&lt; double &gt;</type>
      <name>START_POS</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>aedd7d64ce6772301cd42679c68fa62e1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const std::vector&lt; double &gt;</type>
      <name>STD_DEV</name>
      <anchorfile>stomp__3dof_8cpp.html</anchorfile>
      <anchor>aa48e01fad06a0dcfa86a86f02308b5a6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>stomp_example.cpp</name>
    <path>/tmp/ws/src/industrial_moveit/stomp_core/examples/</path>
    <filename>stomp__example_8cpp</filename>
    <includes id="stomp_8h" name="stomp.h" local="yes" imported="no">stomp_core/stomp.h</includes>
    <includes id="simple__optimization__task_8h" name="simple_optimization_task.h" local="yes" imported="no">simple_optimization_task.h</includes>
    <member kind="function">
      <type>bool</type>
      <name>compareDiff</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>ad7ea0eb543b38d61a222b18b7b2b8624</anchor>
      <arglist>(const Trajectory &amp;optimized, const Trajectory &amp;desired, const std::vector&lt; double &gt; &amp;thresholds)</arglist>
    </member>
    <member kind="function">
      <type>stomp_core::StompConfiguration</type>
      <name>create3DOFConfiguration</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>a1366df713ba4569ec4bc0925e69c5117</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>interpolate</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>a23e0113a8e5fc94e7e18cd65e954c041</anchor>
      <arglist>(const std::vector&lt; double &gt; &amp;start, const std::vector&lt; double &gt; &amp;end, std::size_t num_timesteps, Trajectory &amp;traj)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::vector&lt; double &gt;</type>
      <name>BIAS_THRESHOLD</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>a35e514c9cbf08c062989580d7af8d5b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>DELTA_T</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>a187b17b96f16d81cd6a62fb88e0db758</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::vector&lt; double &gt;</type>
      <name>END_POS</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>a70504e19e416320a3ffe4e4688b5f9a4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::size_t</type>
      <name>NUM_DIMENSIONS</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>a4b65af51879f04e1552fb9af2b2a6c36</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::size_t</type>
      <name>NUM_TIMESTEPS</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>a1731f90541447146d5b11c90b5df347a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::vector&lt; double &gt;</type>
      <name>START_POS</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>aedd7d64ce6772301cd42679c68fa62e1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::vector&lt; double &gt;</type>
      <name>STD_DEV</name>
      <anchorfile>stomp__example_8cpp.html</anchorfile>
      <anchor>aa48e01fad06a0dcfa86a86f02308b5a6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>task.h</name>
    <path>/tmp/ws/src/industrial_moveit/stomp_core/include/stomp_core/</path>
    <filename>task_8h</filename>
    <class kind="class">stomp_core::Task</class>
    <member kind="typedef">
      <type>boost::shared_ptr&lt; Task &gt;</type>
      <name>TaskPtr</name>
      <anchorfile>namespacestomp__core.html</anchorfile>
      <anchor>a7267e9ba773e4b4ef552a393997cc1e4</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="page">
    <name>examples</name>
    <title>stomp_core examples</title>
    <filename>examples</filename>
    <docanchor file="examples">create_stomp</docanchor>
    <docanchor file="examples">stomp_core_example</docanchor>
    <docanchor file="examples">instantiate_task</docanchor>
    <docanchor file="examples">task_implementation</docanchor>
    <docanchor file="examples">solve</docanchor>
    <docanchor file="examples">create_config</docanchor>
  </compound>
  <compound kind="page">
    <name>stomp_example_code</name>
    <title>stomp_example.cpp</title>
    <filename>stomp_example_code</filename>
  </compound>
  <compound kind="class">
    <name>DummyTask</name>
    <filename>classDummyTask.html</filename>
    <base>stomp_core::Task</base>
    <member kind="function">
      <type>bool</type>
      <name>computeCosts</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>ae88aa2a5a58b9709d9a899e5c8e0c08c</anchor>
      <arglist>(const Trajectory &amp;parameters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, Eigen::VectorXd &amp;costs, bool &amp;validity) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>computeNoisyCosts</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>a6d2becc7ce00b36b64ab47326a461166</anchor>
      <arglist>(const Trajectory &amp;parameters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, int rollout_number, Eigen::VectorXd &amp;costs, bool &amp;validity) override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>DummyTask</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>a9d45826796a19fc64a15243bc2322559</anchor>
      <arglist>(const Trajectory &amp;parameters_bias, const std::vector&lt; double &gt; &amp;bias_thresholds, const std::vector&lt; double &gt; &amp;std_dev)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>filterParameterUpdates</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>a65f215ece921b6ee6ab76a90d3c14bca</anchor>
      <arglist>(std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, const Eigen::MatrixXd &amp;parameters, Eigen::MatrixXd &amp;updates) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>generateNoisyParameters</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>a379724ca8eb445750db47e2f831f009a</anchor>
      <arglist>(const Eigen::MatrixXd &amp;parameters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, int rollout_number, Eigen::MatrixXd &amp;parameters_noise, Eigen::MatrixXd &amp;noise) override</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>smoothParameterUpdates</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>ac0307e611b9bb54693461a59325d8b17</anchor>
      <arglist>(std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, Eigen::MatrixXd &amp;updates)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; double &gt;</type>
      <name>bias_thresholds_</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>a8a324d3c71f91cc3f9179a395643036f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Trajectory</type>
      <name>parameters_bias_</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>a1f70d3872b2f1d736a3be2b9f12aaa42</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>smoothing_M_</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>a670c3b72833630fdbc749cf58a8d0884</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; double &gt;</type>
      <name>std_dev_</name>
      <anchorfile>classDummyTask.html</anchorfile>
      <anchor>aa99e8ed2ff4294a8aa679178843cb8b5</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>stomp_core::Rollout</name>
    <filename>structstomp__core_1_1Rollout.html</filename>
    <member kind="variable">
      <type>Eigen::MatrixXd</type>
      <name>control_costs</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>a6b988420a7571c4f3cf5fd343382cc0b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; double &gt;</type>
      <name>full_costs</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>afd1653ccaa202a6541c53aacb24bbabf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; double &gt;</type>
      <name>full_probabilities</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>a7f9e0aa244a668d8d52af3c5875441eb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>importance_weight</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>a89a5ff7b153888c38a33757c9e957b3e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>Eigen::MatrixXd</type>
      <name>noise</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>a322752972bd2acb0efbb34c7259904ee</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>Eigen::MatrixXd</type>
      <name>parameters_noise</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>a48626d4a2be7b19b3dec25a223405120</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>Eigen::MatrixXd</type>
      <name>probabilities</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>a288a993424581dd0e9975a423779b01d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>Eigen::VectorXd</type>
      <name>state_costs</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>abfa999f25471ee285bbce7ba95ef3a26</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>total_cost</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>a783574761e81307a87e347cf3c37c2ba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>Eigen::MatrixXd</type>
      <name>total_costs</name>
      <anchorfile>structstomp__core_1_1Rollout.html</anchorfile>
      <anchor>a2f516a204bf9bd4b8430b73854e78138</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>stomp_core::Stomp</name>
    <filename>classstomp__core_1_1Stomp.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>cancel</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a2ff62dacbcd3f12824f30aa1099df327</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>clear</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a6014467a771f57992c086110ac3a1c30</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setConfig</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>af175300779263f1aee1c7ea1d39399d4</anchor>
      <arglist>(const StompConfiguration &amp;config)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>solve</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>ab8f1666d7ef079a6aa0090f6f5f58370</anchor>
      <arglist>(const std::vector&lt; double &gt; &amp;first, const std::vector&lt; double &gt; &amp;last, Eigen::MatrixXd &amp;parameters_optimized)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>solve</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a44fdbca29c54355a72e370c16695ad6a</anchor>
      <arglist>(const Eigen::VectorXd &amp;first, const Eigen::VectorXd &amp;last, Eigen::MatrixXd &amp;parameters_optimized)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>solve</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>abe173123eb64701a895c365833ac694f</anchor>
      <arglist>(const Eigen::MatrixXd &amp;initial_parameters, Eigen::MatrixXd &amp;parameters_optimized)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Stomp</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>afdae9b926fcf3da55b4a500394ce119f</anchor>
      <arglist>(const StompConfiguration &amp;config, TaskPtr task)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>computeInitialTrajectory</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>aed14320f9413f7cab1e8e97394c5821a</anchor>
      <arglist>(const std::vector&lt; double &gt; &amp;first, const std::vector&lt; double &gt; &amp;last)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>computeNoisyRolloutsCosts</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a5f9bd961fcc9bb5617471e6331937d3f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>computeOptimizedCost</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>aaa3fa5e04ca28ebae66cc71070390fac</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>computeProbabilities</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a9e9d6aa0c946b239ebbf3246c4494974</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>computeRolloutsControlCosts</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a61cc1e6ff6367c12dd705d2b0734b7a9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>computeRolloutsStateCosts</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>afd1a60791c19a844782bbdf67234c137</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>filterNoisyRollouts</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>ac90aa921391e08ad7d8ca44ab64c7308</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>generateNoisyRollouts</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a57986767cc65dd018fb0bd84359e4c1f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>resetVariables</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a75e62434998ae9fecf8c21d24b48e2ec</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>runSingleIteration</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a3c1cb8c6c4d602a79a3416ddd745ad2c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>updateParameters</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a135bf250a2ebe23bd8cf43ff8dac5915</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>StompConfiguration</type>
      <name>config_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a302ef9a7e01b811a56063098d7df72c7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>control_cost_matrix_R_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a08c2ec5e7a4ee4bb5c126374bf91cc46</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>control_cost_matrix_R_padded_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a1407fffcc65d8f8588a1a7fe01457d4c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>unsigned int</type>
      <name>current_iteration_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a478b4cc3f4d2731d38ab397bade80cd8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>current_lowest_cost_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>ac1961f478a481a1d2400379e38e4b191</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>finite_diff_matrix_A_padded_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>ac5a1b79aadfd6023f5c3989a2d5a88e2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>inv_control_cost_matrix_R_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a4865bbbd81aae6db61fe3b31723d73d6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; Rollout &gt;</type>
      <name>noisy_rollouts_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a14c758adfc674253208c392e506f899c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>num_active_rollouts_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a4f461985d83ff5c66b0923e40ca1e7b0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>num_timesteps_padded_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a36e879729720e1db062c1e3eaab9daa7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>parameters_control_costs_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a3b229da1798ae2a78e7dc3743ba7019c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>parameters_optimized_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>aabfb73fa8ab66b53d299232ab9ea64af</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::VectorXd</type>
      <name>parameters_state_costs_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a70b419f7e30b990c273441fd1949d792</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>parameters_total_cost_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a8e0006a4a26691a47360379592af8157</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>parameters_updates_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>add33c119590ac66eb59f2458b45be0d2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>parameters_valid_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a024b394661c3eb0df2872953ff8a0d97</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::atomic&lt; bool &gt;</type>
      <name>proceed_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a0bb6b9a59bec7f7aa125ffa1dac899ca</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; Rollout &gt;</type>
      <name>reused_rollouts_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>acdac4465117386a8a9ba2703451a2987</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>start_index_padded_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>a2df13ef99f6a47a3b58cb47e9dc2f69d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>TaskPtr</type>
      <name>task_</name>
      <anchorfile>classstomp__core_1_1Stomp.html</anchorfile>
      <anchor>abfa023ebfc08b87dd0eedae6f78d6618</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>stomp_core::StompConfiguration</name>
    <filename>structstomp__core_1_1StompConfiguration.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>control_cost_weight</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>a9f1e65c626d8dbe3ae3fd72bfdb42e43</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>delta_t</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>a9c9932e05484d3cb3d6243d5cd44e8e5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>exponentiated_cost_sensitivity</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>a7d5edd1ce8dd98dfe70916052b1f131a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>initialization_method</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>a95f1b1261574a5350cb56ef5725c0dee</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>max_rollouts</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>a2de5da558d8e942388b7c0efa84d0cdd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>num_dimensions</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>a49e5c39ee21ee2e44b495243829d31a5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>num_iterations</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>a62cabc2f071b2c42ffdc11e33aa39664</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>num_iterations_after_valid</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>ae99e3b9afbe881918e9ae6de6ae3719c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>num_rollouts</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>aaa4ff5ba979608537bf461cd9f84e73a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>num_timesteps</name>
      <anchorfile>structstomp__core_1_1StompConfiguration.html</anchorfile>
      <anchor>a5a29bae7c4aa3812955e89d2d99bfb83</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>stomp_core::Task</name>
    <filename>classstomp__core_1_1Task.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual bool</type>
      <name>computeCosts</name>
      <anchorfile>classstomp__core_1_1Task.html</anchorfile>
      <anchor>adfc9bce4b115e6aecfe2d5907e9c9a45</anchor>
      <arglist>(const Eigen::MatrixXd &amp;parameters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, Eigen::VectorXd &amp;costs, bool &amp;validity)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual bool</type>
      <name>computeNoisyCosts</name>
      <anchorfile>classstomp__core_1_1Task.html</anchorfile>
      <anchor>a43a59e2f14ff34a41fa4688a1a9f88b1</anchor>
      <arglist>(const Eigen::MatrixXd &amp;parameters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, int rollout_number, Eigen::VectorXd &amp;costs, bool &amp;validity)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>done</name>
      <anchorfile>classstomp__core_1_1Task.html</anchorfile>
      <anchor>a2c7ae793d0b2330c93147f0f3385b5a5</anchor>
      <arglist>(bool success, int total_iterations, double final_cost, const Eigen::MatrixXd &amp;parameters)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>filterNoisyParameters</name>
      <anchorfile>classstomp__core_1_1Task.html</anchorfile>
      <anchor>aa08dbf40074c692091ee991a5a1193a6</anchor>
      <arglist>(std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, int rollout_number, Eigen::MatrixXd &amp;parameters, bool &amp;filtered)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>filterParameterUpdates</name>
      <anchorfile>classstomp__core_1_1Task.html</anchorfile>
      <anchor>aa3fb0f27481eac274d271a2ebbe87050</anchor>
      <arglist>(std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, const Eigen::MatrixXd &amp;parameters, Eigen::MatrixXd &amp;updates)</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual bool</type>
      <name>generateNoisyParameters</name>
      <anchorfile>classstomp__core_1_1Task.html</anchorfile>
      <anchor>acacf45d0d77b1c438a2936c0b546435a</anchor>
      <arglist>(const Eigen::MatrixXd &amp;parameters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, int rollout_number, Eigen::MatrixXd &amp;parameters_noise, Eigen::MatrixXd &amp;noise)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>postIteration</name>
      <anchorfile>classstomp__core_1_1Task.html</anchorfile>
      <anchor>ab355f2d9a65c284d27ebd88e3ef27c8a</anchor>
      <arglist>(std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, double cost, const Eigen::MatrixXd &amp;parameters)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>stomp_core_examples::SimpleOptimizationTask</name>
    <filename>classstomp__core__examples_1_1SimpleOptimizationTask.html</filename>
    <base>stomp_core::Task</base>
    <member kind="function">
      <type>bool</type>
      <name>computeCosts</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>a78f3631c8e7bbb7768ca0803b294856d</anchor>
      <arglist>(const Eigen::MatrixXd &amp;parameters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, Eigen::VectorXd &amp;costs, bool &amp;validity) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>computeNoisyCosts</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>a41287b740ff77f151289cf9dd39a1bc9</anchor>
      <arglist>(const Eigen::MatrixXd &amp;parameters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, int rollout_number, Eigen::VectorXd &amp;costs, bool &amp;validity) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>filterParameterUpdates</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>a93b4ed18feb1bbb0abb250bef61f9f37</anchor>
      <arglist>(std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, const Eigen::MatrixXd &amp;parameters, Eigen::MatrixXd &amp;updates) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>generateNoisyParameters</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>a98afb15e59dcc880cad8cd3ce45082bd</anchor>
      <arglist>(const Eigen::MatrixXd &amp;parameters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, int rollout_number, Eigen::MatrixXd &amp;parameters_noise, Eigen::MatrixXd &amp;noise) override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SimpleOptimizationTask</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>a5493a1bdd4674a08e8670be83bfd1294</anchor>
      <arglist>(const Eigen::MatrixXd &amp;parameters_bias, const std::vector&lt; double &gt; &amp;bias_thresholds, const std::vector&lt; double &gt; &amp;std_dev)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>smoothParameterUpdates</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>a67b6d73b2b30a33988cf46462782cbb2</anchor>
      <arglist>(std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, Eigen::MatrixXd &amp;updates)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; double &gt;</type>
      <name>bias_thresholds_</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>aae58a1370f3e41e598638fe53244fa99</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>parameters_bias_</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>ab63349a84a6427b14444746b64536bcc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>Eigen::MatrixXd</type>
      <name>smoothing_M_</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>ae5e820e93c0325da53685a830e5fd487</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; double &gt;</type>
      <name>std_dev_</name>
      <anchorfile>classstomp__core__examples_1_1SimpleOptimizationTask.html</anchorfile>
      <anchor>a16b8db5870c3afbe66f3ea65aff2f562</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="page">
    <name>index</name>
    <title></title>
    <filename>index</filename>
    <docanchor file="index">Description</docanchor>
    <docanchor file="index">Examples</docanchor>
    <docanchor file="index">License</docanchor>
  </compound>
</tagfile>
