Skip to content

Commit 4c2e3cf

Browse files
adding migration info + configuration guide for changes to refinement_num (#370)
1 parent 758fe83 commit 4c2e3cf

File tree

4 files changed

+41
-0
lines changed

4 files changed

+41
-0
lines changed

configuration/packages/configuring-simple-smoother.rst

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,17 @@ Simple Smoother Parameters
3636
Description
3737
Whether to smooth the smoothed path recursively to refine the quality further
3838

39+
:refinement_num:
40+
41+
============== ===========================
42+
Type Default
43+
-------------- ---------------------------
44+
int 2
45+
============== ===========================
46+
47+
Description
48+
Number of times to recursively attempt to smooth, must be ``>= 1``.
49+
3950
:max_its:
4051

4152
============== ===========================
@@ -84,6 +95,7 @@ Example
8495
plugin: "nav2_smoother::SimpleSmoother"
8596
tolerance: 1.0e-10
8697
do_refinement: True
98+
refinement_num: 2
8799
max_its: 1000
88100
w_data: 0.2
89101
w_smooth: 0.3

configuration/packages/smac/configuring-smac-hybrid.rst

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,17 @@ Parameters
288288
Description
289289
Performs extra refinement smoothing runs. Essentially, this recursively calls the smoother using the output from the last smoothing cycle to further smooth the path for macro-trends. This typically improves quality especially in the Hybrid-A* planner due to the extra "wobbling" it can have due to the very small primitive lengths but may cause the path to get slightly closer to some obstacles.
290290

291+
:``<name>``.smoother.refinement_num:
292+
293+
============== ===========================
294+
Type Default
295+
-------------- ---------------------------
296+
int 2
297+
============== ===========================
298+
299+
Description
300+
Number of times to recursively attempt to smooth, must be ``>= 1``.
301+
291302
Example
292303
*******
293304
.. code-block:: yaml
@@ -326,3 +337,4 @@ Example
326337
w_data: 0.2
327338
tolerance: 1.0e-10
328339
do_refinement: true
340+
refinement_num: 2

configuration/packages/smac/configuring-smac-lattice.rst

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,17 @@ Parameters
270270
Description
271271
Performs extra refinement smoothing runs. Essentially, this recursively calls the smoother using the output from the last smoothing cycle to further smooth the path for macro-trends. This typically improves quality especially in the Hybrid-A* planner but can be helpful on the state lattice planner to reduce the "blocky" movements in State Lattice caused by the limited number of headings.
272272

273+
:``<name>``.smoother.refinement_num:
274+
275+
============== ===========================
276+
Type Default
277+
-------------- ---------------------------
278+
int 2
279+
============== ===========================
280+
281+
Description
282+
Number of times to recursively attempt to smooth, must be ``>= 1``.
283+
273284
Example
274285
*******
275286
.. code-block:: yaml
@@ -305,3 +316,4 @@ Example
305316
w_data: 0.2
306317
tolerance: 1.0e-10
307318
do_refinement: true
319+
refinement_num: 2

migration/Humble.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,11 @@ Run-time Speed up of Smac Planner
1717
*********************************
1818
The core data structure of the graph implementation in the Smac Planner framework was swapped out in `PR 3201 <https://github.com/ros-planning/navigation2/pull/3201>`_ to using a specialized unordered map implementation. This speeds up the planner by 10% on trivial requests and reports up to 30% on complex plans that involve numerous rehashings.
1919

20+
Recursive Refinement of Smac and Simple Smoothers
21+
*************************************************
22+
23+
The number of recursive refinements for the Simple and Smac Planner Smoothers have been exposed under the ``refinement_num`` parameter. Previous behavior had this hardcoded if ``do_refinement = True`` to ``4``. Now, default is ``2`` to help decrease out-of-the-box over smoothing reducing in paths closer to collision than probably ideal, but old behavior can be achieved by changing this to ``4``.
24+
2025
Simple Commander Python API
2126
***************************
2227
`PR 3159 <https://github.com/ros-planning/navigation2/pull/3159>`_ and follow-up PRs add in Costmap API in Python3 simple commander to receive ``OccupancyGrid`` messages from Nav2 and be able to work with them natively in Python3, analog to the C++ Costmap API. It also includes a line iterator and collision checking object to perform footprint or other collision checking in Python3. See the Simple Commander API for more details.

0 commit comments

Comments
 (0)