31 const std::shared_ptr<const IHexapodCoordinateConverter>& converter_ptr,
32 const std::shared_ptr<const IHexapodPostureValidator>& checker_ptr);
34 std::tuple<GraphSearchResult, GraphSearchEvaluationValue, RobotStateNode>
SearchGraphTree(
38 int max_depth)
const override;
41 const std::vector<GaitPatternGraphTree>& graph_vector,
44 int max_depth)
const override;
47 static constexpr Tag kTagAmountOfTurn = 0;
48 static constexpr Tag kTagLegRot = 1;
49 static constexpr Tag kTagZDiff = 2;
56 float GetAmountOfTurnEvaluationValue(
60 float GetLegRotEvaluationValue(
64 float GetZDiffEvaluationValue(
66 const float target_z_value)
const;
69 const std::shared_ptr<const IHexapodCoordinateConverter> converter_ptr_;
70 const std::shared_ptr<const IHexapodPostureValidator> checker_ptr_;
std::tuple< GraphSearchResult, GraphSearchEvaluationValue, RobotStateNode > SearchGraphTree(const GaitPatternGraphTree &graph, const RobotOperation &operation, const DividedMapState ÷d_map_state, int max_depth) const override
グラフを受け取り,その中から最適な次の動作を出力する.
std::tuple< GraphSearchResult, GraphSearchEvaluationValue, RobotStateNode > SearchGraphTreeVector(const std::vector< GaitPatternGraphTree > &graph_vector, const RobotOperation &operation, const DividedMapState ÷d_map_state, int max_depth) const override