Nav2 Navigation Stack - lyrical  lyrical
ROS 2 Navigation Stack
optimizer_settings.hpp
1 // Copyright (c) 2022 Samsung Research America, @artofnothingness Alexey Budyakov
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 #ifndef NAV2_MPPI_CONTROLLER__MODELS__OPTIMIZER_SETTINGS_HPP_
16 #define NAV2_MPPI_CONTROLLER__MODELS__OPTIMIZER_SETTINGS_HPP_
17 
18 #include <cstddef>
19 #include "nav2_mppi_controller/models/constraints.hpp"
20 
21 namespace mppi::models
22 {
23 
29 {
30  models::ControlConstraints base_constraints{0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f};
31  models::ControlConstraints constraints{0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f};
32  models::SamplingStd sampling_std{0.0f, 0.0f, 0.0f};
33  float model_dt{0.0f};
34  float model_delay_vx{0.0f};
35  float model_delay_vy{0.0f};
36  float model_delay_wz{0.0f};
37  bool clamp_raw_controls{false};
38  float controller_period{0.0f};
39  float temperature{0.0f};
40  float gamma{0.0f};
41  unsigned int batch_size{0u};
42  unsigned int time_steps{0u};
43  unsigned int iteration_count{0u};
44  bool shift_control_sequence{false};
45  size_t retry_attempt_limit{0};
46  bool open_loop{false};
47  unsigned int sgf_order{2u};
48 };
49 
50 } // namespace mppi::models
51 
52 #endif // NAV2_MPPI_CONTROLLER__MODELS__OPTIMIZER_SETTINGS_HPP_
Constraints on control.
Definition: constraints.hpp:26
Settings for the optimizer to use.
Noise parameters for sampling trajectories.
Definition: constraints.hpp:43