From 0fc769421f66a6403f750781dc46534d84e7c424 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 6 Jul 2023 23:12:43 +0900 Subject: [PATCH 001/312] Adding NDT mapping script and doc (#867) * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc * Adding ndt mapping script and doc --- .../extended_kalman_filter.py | 28 +--- Mapping/grid_map_lib/grid_map_lib.py | 125 ++++++++++------ Mapping/ndt_map/ndt_map.py | 135 ++++++++++++++++++ .../grid_based_sweep_coverage_path_planner.py | 31 ++-- docs/modules/mapping/mapping_main.rst | 1 + .../mapping/ndt_map/grid_clustering.png | Bin 0 -> 33111 bytes docs/modules/mapping/ndt_map/ndt_map1.png | Bin 0 -> 23081 bytes docs/modules/mapping/ndt_map/ndt_map2.png | Bin 0 -> 21736 bytes docs/modules/mapping/ndt_map/ndt_map_main.rst | 53 +++++++ .../mapping/ndt_map/raw_observations.png | Bin 0 -> 18305 bytes tests/test_grid_map_lib.py | 11 ++ utils/plot.py | 71 ++++++++- 12 files changed, 372 insertions(+), 83 deletions(-) create mode 100644 Mapping/ndt_map/ndt_map.py create mode 100644 docs/modules/mapping/ndt_map/grid_clustering.png create mode 100644 docs/modules/mapping/ndt_map/ndt_map1.png create mode 100644 docs/modules/mapping/ndt_map/ndt_map2.png create mode 100644 docs/modules/mapping/ndt_map/ndt_map_main.rst create mode 100644 docs/modules/mapping/ndt_map/raw_observations.png diff --git a/Localization/extended_kalman_filter/extended_kalman_filter.py b/Localization/extended_kalman_filter/extended_kalman_filter.py index c2fe8e3a87..d9ece6c6f3 100644 --- a/Localization/extended_kalman_filter/extended_kalman_filter.py +++ b/Localization/extended_kalman_filter/extended_kalman_filter.py @@ -7,13 +7,14 @@ """ import sys import pathlib + sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) import math import matplotlib.pyplot as plt import numpy as np -from utils.angle import rot_mat_2d +from utils.plot import plot_covariance_ellipse # Covariance for EKF simulation Q = np.diag([ @@ -135,29 +136,6 @@ def ekf_estimation(xEst, PEst, z, u): return xEst, PEst -def plot_covariance_ellipse(xEst, PEst): # pragma: no cover - Pxy = PEst[0:2, 0:2] - eigval, eigvec = np.linalg.eig(Pxy) - - if eigval[0] >= eigval[1]: - bigind = 0 - smallind = 1 - else: - bigind = 1 - smallind = 0 - - t = np.arange(0, 2 * math.pi + 0.1, 0.1) - a = math.sqrt(eigval[bigind]) - b = math.sqrt(eigval[smallind]) - x = [a * math.cos(it) for it in t] - y = [b * math.sin(it) for it in t] - angle = math.atan2(eigvec[1, bigind], eigvec[0, bigind]) - fx = rot_mat_2d(angle) @ (np.array([x, y])) - px = np.array(fx[0, :] + xEst[0, 0]).flatten() - py = np.array(fx[1, :] + xEst[1, 0]).flatten() - plt.plot(px, py, "--r") - - def main(): print(__file__ + " start!!") @@ -202,7 +180,7 @@ def main(): hxDR[1, :].flatten(), "-k") plt.plot(hxEst[0, :].flatten(), hxEst[1, :].flatten(), "-r") - plot_covariance_ellipse(xEst, PEst) + plot_covariance_ellipse(xEst[0, 0], xEst[1, 0], PEst) plt.axis("equal") plt.grid(True) plt.pause(0.001) diff --git a/Mapping/grid_map_lib/grid_map_lib.py b/Mapping/grid_map_lib/grid_map_lib.py index 85dd76e71d..d08d8ec5ba 100644 --- a/Mapping/grid_map_lib/grid_map_lib.py +++ b/Mapping/grid_map_lib/grid_map_lib.py @@ -5,22 +5,42 @@ author: Atsushi Sakai """ - +from functools import total_ordering import matplotlib.pyplot as plt import numpy as np +@total_ordering +class FloatGrid: + + def __init__(self, init_val=0.0): + self.data = init_val + + def get_float_data(self): + return self.data + + def __eq__(self, other): + if not isinstance(other, FloatGrid): + return NotImplemented + return self.get_float_data() == other.get_float_data() + + def __lt__(self, other): + if not isinstance(other, FloatGrid): + return NotImplemented + return self.get_float_data() < other.get_float_data() + + class GridMap: """ GridMap class """ def __init__(self, width, height, resolution, - center_x, center_y, init_val=0.0): + center_x, center_y, init_val=FloatGrid(0.0)): """__init__ :param width: number of grid for width - :param height: number of grid for heigt + :param height: number of grid for height :param resolution: grid resolution [m] :param center_x: center x position [m] :param center_y: center y position [m] @@ -35,8 +55,9 @@ def __init__(self, width, height, resolution, self.left_lower_x = self.center_x - self.width / 2.0 * self.resolution self.left_lower_y = self.center_y - self.height / 2.0 * self.resolution - self.ndata = self.width * self.height - self.data = [init_val] * self.ndata + self.n_data = self.width * self.height + self.data = [init_val] * self.n_data + self.data_type = type(init_val) def get_value_from_xy_index(self, x_ind, y_ind): """get_value_from_xy_index @@ -49,7 +70,7 @@ def get_value_from_xy_index(self, x_ind, y_ind): grid_ind = self.calc_grid_index_from_xy_index(x_ind, y_ind) - if 0 <= grid_ind < self.ndata: + if 0 <= grid_ind < self.n_data: return self.data[grid_ind] else: return None @@ -101,7 +122,7 @@ def set_value_from_xy_index(self, x_ind, y_ind, val): grid_ind = int(y_ind * self.width + x_ind) - if 0 <= grid_ind < self.ndata: + if 0 <= grid_ind < self.n_data and isinstance(val, self.data_type): self.data[grid_ind] = val return True # OK else: @@ -138,6 +159,27 @@ def calc_grid_index_from_xy_index(self, x_ind, y_ind): grid_ind = int(y_ind * self.width + x_ind) return grid_ind + def calc_xy_index_from_grid_index(self, grid_ind): + y_ind, x_ind = divmod(grid_ind, self.width) + return x_ind, y_ind + + def calc_grid_index_from_xy_pos(self, x_pos, y_pos): + """get_xy_index_from_xy_pos + + :param x_pos: x position [m] + :param y_pos: y position [m] + """ + x_ind = self.calc_xy_index_from_position( + x_pos, self.left_lower_x, self.width) + y_ind = self.calc_xy_index_from_position( + y_pos, self.left_lower_y, self.height) + + return self.calc_grid_index_from_xy_index(x_ind, y_ind) + + def calc_grid_central_xy_position_from_grid_index(self, grid_ind): + x_ind, y_ind = self.calc_xy_index_from_grid_index(grid_ind) + return self.calc_grid_central_xy_position_from_xy_index(x_ind, y_ind) + def calc_grid_central_xy_position_from_xy_index(self, x_ind, y_ind): x_pos = self.calc_grid_central_xy_position_from_index( x_ind, self.left_lower_x) @@ -156,39 +198,40 @@ def calc_xy_index_from_position(self, pos, lower_pos, max_index): else: return None - def check_occupied_from_xy_index(self, xind, yind, occupied_val=1.0): + def check_occupied_from_xy_index(self, x_ind, y_ind, occupied_val): - val = self.get_value_from_xy_index(xind, yind) + val = self.get_value_from_xy_index(x_ind, y_ind) if val is None or val >= occupied_val: return True else: return False - def expand_grid(self): - xinds, yinds = [], [] + def expand_grid(self, occupied_val=FloatGrid(1.0)): + x_inds, y_inds, values = [], [], [] for ix in range(self.width): for iy in range(self.height): - if self.check_occupied_from_xy_index(ix, iy): - xinds.append(ix) - yinds.append(iy) - - for (ix, iy) in zip(xinds, yinds): - self.set_value_from_xy_index(ix + 1, iy, val=1.0) - self.set_value_from_xy_index(ix, iy + 1, val=1.0) - self.set_value_from_xy_index(ix + 1, iy + 1, val=1.0) - self.set_value_from_xy_index(ix - 1, iy, val=1.0) - self.set_value_from_xy_index(ix, iy - 1, val=1.0) - self.set_value_from_xy_index(ix - 1, iy - 1, val=1.0) + if self.check_occupied_from_xy_index(ix, iy, occupied_val): + x_inds.append(ix) + y_inds.append(iy) + values.append(self.get_value_from_xy_index(ix, iy)) + + for (ix, iy, value) in zip(x_inds, y_inds, values): + self.set_value_from_xy_index(ix + 1, iy, val=value) + self.set_value_from_xy_index(ix, iy + 1, val=value) + self.set_value_from_xy_index(ix + 1, iy + 1, val=value) + self.set_value_from_xy_index(ix - 1, iy, val=value) + self.set_value_from_xy_index(ix, iy - 1, val=value) + self.set_value_from_xy_index(ix - 1, iy - 1, val=value) @staticmethod def check_inside_polygon(iox, ioy, x, y): - npoint = len(x) - 1 + n_point = len(x) - 1 inside = False - for i1 in range(npoint): - i2 = (i1 + 1) % (npoint + 1) + for i1 in range(n_point): + i2 = (i1 + 1) % (n_point + 1) if x[i1] >= x[i2]: min_x, max_x = x[i2], x[i1] @@ -211,27 +254,26 @@ def print_grid_map_info(self): print("center_y:", self.center_y) print("left_lower_x:", self.left_lower_x) print("left_lower_y:", self.left_lower_y) - print("ndata:", self.ndata) + print("n_data:", self.n_data) def plot_grid_map(self, ax=None): - - grid_data = np.reshape(np.array(self.data), (self.height, self.width)) + float_data_array = np.array([d.get_float_data() for d in self.data]) + grid_data = np.reshape(float_data_array, (self.height, self.width)) if not ax: fig, ax = plt.subplots() heat_map = ax.pcolor(grid_data, cmap="Blues", vmin=0.0, vmax=1.0) plt.axis("equal") - # plt.show() return heat_map -def test_polygon_set(): +def polygon_set_demo(): ox = [0.0, 4.35, 20.0, 50.0, 100.0, 130.0, 40.0] oy = [0.0, -4.15, -20.0, 0.0, 30.0, 60.0, 80.0] grid_map = GridMap(600, 290, 0.7, 60.0, 30.5) - grid_map.set_value_from_polygon(ox, oy, 1.0, inside=False) + grid_map.set_value_from_polygon(ox, oy, FloatGrid(1.0), inside=False) grid_map.plot_grid_map() @@ -239,24 +281,27 @@ def test_polygon_set(): plt.grid(True) -def test_position_set(): +def position_set_demo(): grid_map = GridMap(100, 120, 0.5, 10.0, -0.5) - grid_map.set_value_from_xy_pos(10.1, -1.1, 1.0) - grid_map.set_value_from_xy_pos(10.1, -0.1, 1.0) - grid_map.set_value_from_xy_pos(10.1, 1.1, 1.0) - grid_map.set_value_from_xy_pos(11.1, 0.1, 1.0) - grid_map.set_value_from_xy_pos(10.1, 0.1, 1.0) - grid_map.set_value_from_xy_pos(9.1, 0.1, 1.0) + grid_map.set_value_from_xy_pos(10.1, -1.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(10.1, -0.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(10.1, 1.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(11.1, 0.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(10.1, 0.1, FloatGrid(1.0)) + grid_map.set_value_from_xy_pos(9.1, 0.1, FloatGrid(1.0)) grid_map.plot_grid_map() + plt.axis("equal") + plt.grid(True) + def main(): print("start!!") - test_position_set() - test_polygon_set() + position_set_demo() + polygon_set_demo() plt.show() diff --git a/Mapping/ndt_map/ndt_map.py b/Mapping/ndt_map/ndt_map.py new file mode 100644 index 0000000000..f4f3299662 --- /dev/null +++ b/Mapping/ndt_map/ndt_map.py @@ -0,0 +1,135 @@ +""" +Normal Distribution Transform (NDTGrid) mapping sample +""" +import matplotlib.pyplot as plt +import numpy as np +from collections import defaultdict + +from Mapping.grid_map_lib.grid_map_lib import GridMap +from utils.plot import plot_covariance_ellipse + + +class NDTMap: + """ + Normal Distribution Transform (NDT) map class + + :param ox: obstacle x position list + :param oy: obstacle y position list + :param resolution: grid resolution [m] + """ + + class NDTGrid: + """ + NDT grid + """ + + def __init__(self): + #: Number of points in the NDTGrid grid + self.n_points = 0 + #: Mean x position of points in the NDTGrid cell + self.mean_x = None + #: Mean y position of points in the NDTGrid cell + self.mean_y = None + #: Center x position of the NDT grid + self.center_grid_x = None + #: Center y position of the NDT grid + self.center_grid_y = None + #: Covariance matrix of the NDT grid + self.covariance = None + #: Eigen vectors of the NDT grid + self.eig_vec = None + #: Eigen values of the NDT grid + self.eig_values = None + + def __init__(self, ox, oy, resolution): + #: Minimum number of points in the NDT grid + self.min_n_points = 3 + #: Resolution of the NDT grid [m] + self.resolution = resolution + width = int((max(ox) - min(ox))/resolution) + 3 # rounding up + right and left margin + height = int((max(oy) - min(oy))/resolution) + 3 + center_x = np.mean(ox) + center_y = np.mean(oy) + self.ox = ox + self.oy = oy + #: NDT grid index map + self.grid_index_map = self._create_grid_index_map(ox, oy) + + #: NDT grid map. Each grid contains NDTGrid object + self._construct_grid_map(center_x, center_y, height, ox, oy, resolution, width) + + def _construct_grid_map(self, center_x, center_y, height, ox, oy, resolution, width): + self.grid_map = GridMap(width, height, resolution, center_x, center_y, self.NDTGrid()) + for grid_index, inds in self.grid_index_map.items(): + ndt = self.NDTGrid() + ndt.n_points = len(inds) + if ndt.n_points >= self.min_n_points: + ndt.mean_x = np.mean(ox[inds]) + ndt.mean_y = np.mean(oy[inds]) + ndt.center_grid_x, ndt.center_grid_y = \ + self.grid_map.calc_grid_central_xy_position_from_grid_index(grid_index) + ndt.covariance = np.cov(ox[inds], oy[inds]) + ndt.eig_values, ndt.eig_vec = np.linalg.eig(ndt.covariance) + self.grid_map.data[grid_index] = ndt + + def _create_grid_index_map(self, ox, oy): + grid_index_map = defaultdict(list) + for i in range(len(ox)): + grid_index = self.grid_map.calc_grid_index_from_xy_pos(ox[i], oy[i]) + grid_index_map[grid_index].append(i) + return grid_index_map + + +def create_dummy_observation_data(): + ox = [] + oy = [] + # left corridor + for y in range(-50, 50): + ox.append(-20.0) + oy.append(y) + # right corridor 1 + for y in range(-50, 0): + ox.append(20.0) + oy.append(y) + # right corridor 2 + for x in range(20, 50): + ox.append(x) + oy.append(0) + # right corridor 3 + for x in range(20, 50): + ox.append(x) + oy.append(x/2.0+10) + # right corridor 4 + for y in range(20, 50): + ox.append(20) + oy.append(y) + ox = np.array(ox) + oy = np.array(oy) + # Adding random noize + ox += np.random.rand(len(ox)) * 1.0 + oy += np.random.rand(len(ox)) * 1.0 + return ox, oy + + +def main(): + print(__file__ + " start!!") + + ox, oy = create_dummy_observation_data() + grid_resolution = 10.0 + ndt_map = NDTMap(ox, oy, grid_resolution) + + # plot raw observation + plt.plot(ox, oy, ".r") + + # plot grid clustering + [plt.plot(ox[inds], oy[inds], "x") for inds in ndt_map.grid_index_map.values()] + + # plot ndt grid map + [plot_covariance_ellipse(ndt.mean_x, ndt.mean_y, ndt.covariance, color="-k") for ndt in ndt_map.grid_map.data if ndt.n_points > 0] + + plt.axis("equal") + plt.show() + + +if __name__ == '__main__': + main() diff --git a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py index 31dc917566..ee192e9200 100644 --- a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py +++ b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py @@ -13,7 +13,7 @@ sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from utils.angle import rot_mat_2d -from Mapping.grid_map_lib.grid_map_lib import GridMap +from Mapping.grid_map_lib.grid_map_lib import GridMap, FloatGrid do_animation = True @@ -41,8 +41,7 @@ def move_target_grid(self, c_x_index, c_y_index, grid_map): n_y_index = c_y_index # found safe grid - if not grid_map.check_occupied_from_xy_index(n_x_index, n_y_index, - occupied_val=0.5): + if not self.check_occupied(n_x_index, n_y_index, grid_map): return n_x_index, n_y_index else: # occupied next_c_x_index, next_c_y_index = self.find_safe_turning_grid( @@ -51,19 +50,20 @@ def move_target_grid(self, c_x_index, c_y_index, grid_map): # moving backward next_c_x_index = -self.moving_direction + c_x_index next_c_y_index = c_y_index - if grid_map.check_occupied_from_xy_index(next_c_x_index, - next_c_y_index): + if self.check_occupied(next_c_x_index, next_c_y_index, grid_map): # moved backward, but the grid is occupied by obstacle return None, None else: # keep moving until end - while not grid_map.check_occupied_from_xy_index( - next_c_x_index + self.moving_direction, - next_c_y_index, occupied_val=0.5): + while not self.check_occupied(next_c_x_index + self.moving_direction, next_c_y_index, grid_map): next_c_x_index += self.moving_direction self.swap_moving_direction() return next_c_x_index, next_c_y_index + @staticmethod + def check_occupied(c_x_index, c_y_index, grid_map): + return grid_map.check_occupied_from_xy_index(c_x_index, c_y_index, FloatGrid(0.5)) + def find_safe_turning_grid(self, c_x_index, c_y_index, grid_map): for (d_x_ind, d_y_ind) in self.turing_window: @@ -72,17 +72,14 @@ def find_safe_turning_grid(self, c_x_index, c_y_index, grid_map): next_y_ind = d_y_ind + c_y_index # found safe grid - if not grid_map.check_occupied_from_xy_index(next_x_ind, - next_y_ind, - occupied_val=0.5): + if not self.check_occupied(next_x_ind, next_y_ind, grid_map): return next_x_ind, next_y_ind return None, None def is_search_done(self, grid_map): for ix in self.x_indexes_goal_y: - if not grid_map.check_occupied_from_xy_index(ix, self.goal_y, - occupied_val=0.5): + if not self.check_occupied(ix, self.goal_y, grid_map): return False # all lower grid is occupied @@ -168,7 +165,7 @@ def search_free_grid_index_at_edge_y(grid_map, from_upper=False): for iy in x_range: for ix in y_range: - if not grid_map.check_occupied_from_xy_index(ix, iy): + if not SweepSearcher.check_occupied(ix, iy, grid_map): y_index = iy x_indexes.append(ix) if y_index: @@ -185,7 +182,7 @@ def setup_grid_map(ox, oy, resolution, sweep_direction, offset_grid=10): grid_map = GridMap(width, height, resolution, center_x, center_y) grid_map.print_grid_map_info() - grid_map.set_value_from_polygon(ox, oy, 1.0, inside=False) + grid_map.set_value_from_polygon(ox, oy, FloatGrid(1.0), inside=False) grid_map.expand_grid() x_inds_goal_y = [] @@ -203,7 +200,7 @@ def setup_grid_map(ox, oy, resolution, sweep_direction, offset_grid=10): def sweep_path_search(sweep_searcher, grid_map, grid_search_animation=False): # search start grid c_x_index, c_y_index = sweep_searcher.search_start_grid(grid_map) - if not grid_map.set_value_from_xy_index(c_x_index, c_y_index, 0.5): + if not grid_map.set_value_from_xy_index(c_x_index, c_y_index, FloatGrid(0.5)): print("Cannot find start grid") return [], [] @@ -235,7 +232,7 @@ def sweep_path_search(sweep_searcher, grid_map, grid_search_animation=False): px.append(x) py.append(y) - grid_map.set_value_from_xy_index(c_x_index, c_y_index, 0.5) + grid_map.set_value_from_xy_index(c_x_index, c_y_index, FloatGrid(0.5)) if grid_search_animation: grid_map.plot_grid_map(ax=ax) diff --git a/docs/modules/mapping/mapping_main.rst b/docs/modules/mapping/mapping_main.rst index 1c02c75cb2..a98acaaf50 100644 --- a/docs/modules/mapping/mapping_main.rst +++ b/docs/modules/mapping/mapping_main.rst @@ -7,6 +7,7 @@ Mapping :caption: Contents gaussian_grid_map/gaussian_grid_map + ndt_map/ndt_map ray_casting_grid_map/ray_casting_grid_map lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial point_cloud_sampling/point_cloud_sampling diff --git a/docs/modules/mapping/ndt_map/grid_clustering.png b/docs/modules/mapping/ndt_map/grid_clustering.png new file mode 100644 index 0000000000000000000000000000000000000000..c53590287af100b42c31afdb7610a825c4e3b589 GIT binary patch literal 33111 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 Q*fyi~SrE;0cR61BH*yT!@&Et; literal 0 HcmV?d00001 diff --git a/docs/modules/mapping/ndt_map/ndt_map2.png b/docs/modules/mapping/ndt_map/ndt_map2.png new file mode 100644 index 0000000000000000000000000000000000000000..b99706297955c3b31d8bd33299311b45be14f9c1 GIT binary patch literal 21736 zcmeFZc{rAD+b(?Fw|R&RnKBfqL@1fZiiA+eJQqqb&$C3Ph>{^0iXvkqWV&T6B1L9y zGnwa^@3=g_^{(fA*82Wie|+2at+vfp;=YFSJkI0XkA2^dGxVmK;t_Hdas)w+C|#G= zKoG1yf?)8Z#PC1D?fql$m$P#HUF-IK75(a<8NBrM!|35Sugxg>If3*zT+pkXDI;WNC zUvIwTBF@RlxlF0i{9b~J6|YiXlTl?PpCOgOGxx~ zS!_OrA8KXZ#MoB_z(>6ef23Fy_2?E`A2a&meDdtsrmpc9`hOJ{Zkc#K*>0EYh#DM@ z+KZ2lzC71kES)lHnU3fZ&No-VMKeT@m%KWWAt9vITN!*$;Wyt_tx~PMb<5JfS-rt4Z-9o%!%)6=K8xi9$bdrP>^lHz82ithK9UN|mlJJxXAj&E8c zBO+e-0mJ?K_odc4G<9<=wuf{$IW@v!r`0oGyr8%4{Gd?jx#o@!AQ5w(I*J&S*w$MX zwP$IbX)AlmBK$_}wS-M~L5PPSoOWv1Vx03pW;~IMRLdy@9hs+mK4tAe-&6hRmaL4L-J9jE55G81UxDdycxl3C zBXa!Pw{On#{Rye5Crsirt;=>UNJ;hocAaQp)-SeJSo_=QqpLUlb|W2)NA&jl-BI(r z?v|E`i2M4i-unDN^HpkT`R14B$;ipg;nyK#2>b`i-JGU=o*Wq&;olLua^(ss8ChAn zG%O3d!491_pSl(VE(!@zNU13)4S&eaTfQZn@oMn-V4Ck?;BRWmZmY0WX<42LklI`Q zonut~l7NJ&z<1AczG}x7i^Y~6?C)ghe&qDoS+|(_nUIHk|%;@O-$PeQjrbuBX(2tMkKc0{m0aL7a8* zueXZS%gf6lQBhWZJF;Z*^p%S$0!c6-*hm7eIR2phJs;a|Rog|F?(D&G9iRA6=GP$bq@?+)}>$C;emB?jXBUbVj zX3DGB3A>9LMTtT~LUxIXc5SQ~nowgq@=Z4BU~;^#V{X<_IA&|tXBr*% z@6G#cVl)S@vVRT!+u(y1=7i%{!YfA2L~K2U^>N4GQuNC36BRy&@Re708cV+yTj1MY z*#)Pc;?Ra6aO6Sn^HKkGwOZu2=ULO%l9o)Z8KxSVK05KRG!*C&g^E)rP9R9R+0Euo zS9+XnmyIb6%@QxUKc_J*)0Cn1N=5x6FU4s(1cOOD!pF(!tAO6F-%F*}bL~y=j4zIk zfubcotv*#jzAhiOJ@-&6Li>I1H{<={2nt8EqXLH1HXpGrwrmkANSd|B7FGWJ|v zWq^9J)O2$pj5mMU;r&mZM8?L(5O*wo`uBSu?ZXL2pCR3QYZbOM=k9 z-B2UXP#pgY$@D_t-G>g}T@tahu)y5x5$4t9@`v}ZL$6UMgmvG(l%sbw!yl2u+?1E! zRZq>QILgD@zkwthl~75zrWe*@<@EIvsk3Qew|Q|5ofRojMt{DpQRQF^F5#`Bk5)9q z;PBzF^cVN5yqj@Q=;~S>ZS>KIf{7eId`I`%V7Zf+pSBxH(hxFnha-FJZx_ijkzDpl z7wd2 zEej+hB*b~4a7O(eAx!< zTK3?^Q}46|NcBY5NEINgl^|@wAz{^p(w(`!&>JgQiz64ax21lMoQ3GV66dc_ks0$q zvh-3d4*R&gw{5;>v?vjspLZ}n3bEMNfq(DkH6|mQztyYGD#D!KMCV+K=Nx(IQKY%N z%JO#BNVp?>fIQ>y1NmRb{e>7Po(Ui?1^g1M;PGEbp=%*5B7zXV$`yr66n>Knx zw+)|5!v;ho7jK30a3>r(#yNT$h9JFVCHNj7Ju+6l`U9)H&36TCw#ueehv z1s8w-teg3ulTU>cnCqpvoFIVxQ zYYc(Wvr|@n)6iu?VDG(Xiv4U$gtIN#DMZ5ti@p%I@G)B2%xO>eenHY*JOR?0BD+xj z1)W25sJLHBd*Ox`32|@b{2!b-`V@sUvbP`)1I6-oK=#l?T2EYh%;{#-lJ{$KgQ-J4yuFXZ~QGvCuxM6<)T|E1@zs|HM%c z60%8zPIdW*+q`@X6lESByI)K(2m|uu>JBD6B*X+=0EN$<9ewlW4bnYnO<~W`;fsTN zlE6K~YC3gHj^NrL)+|zs4=;uxl8ZLKnQttO_>vzXI>D4QtbTYM4!8~v@yCxJk-HNU z*qeD?ZesRw|8)l*;v>gJ_!djOYlB&~V0~0WqS2ttE1&;@jpEhGn|-T{jtm5=1|^`9 z>-P2qlOMel;oWHbV2(8?0kJfcIZaAMF$x&Z)>@;Ht%2T;t}*ibqWj9k4^|oPZqa&( z7ejfN)8^J2$t`D6{HWw4Pn^C;>p$Kcw{y6n4`Yo-IJS+LdP2(n{G#yUVuBFjz4Ak} zD(40iFIVBiuQW8Si%=r-_QJ(3();t}3*K5U{)ziR`s2+yd3KUts*J5%_7h=WR`0eE zG0}p}MZ+HrRJLM$@y9ESGXk(fbR=I0{Q2`HOne*Q4sQb}hDgzfD)v~hL=r`;2*Xk^Y@x^4e|=1* z%f~=W%|3g-`Nt3L3m2jx2OVW+SBqko7IPSRyb$(6LqI?vYHw$Q;Agthb8I7k1Y+E` z=Vw$Z_#v>vW4Dk}czVm0_{&9>Kgd5(Ghcjc(fsn`-EXvi@{F3>-zrWIR+dM7cu{ED zmMksCN(B#xvmKDC2mX>~< zo_@;MZ_fpw@pV8`3DRC7GhO*sqYY1Ga&(o8QvCLr{ezDjH~*-c^i)adDBabu%_Sts z^)(F5h>C>-a{BaX$3`}{pIMskv2*{z#>ej2b!5`G{OvHS4L-tc^zH@CJh$=RuKWd? z>#9MI3GKx)rzFmd{yb?_4$(tRgktqV`{64PaT9uR=c`8>qv%*!Z)7OPl7H&TycG!F zo2*++jE_gh#Z7u7MMq=&0S?DXN|ip~e_Fgl=XNkRP|j%2zhz$3QvhirfQkg6$#W9& zUyf4)#w z^wg=x&z?O~=?#4JXm>)@hg;ceZyzT}*~ZTSFq~^@z)gDN!0hAE^|9xI9vAVujn{Q` z;{}@6y#B35QQw;qaM{#Ip!7d>P7B}rApiVN?J94N4_a9x_ZRv~1g<`z;=Xt>29|HK z`v@7J>(Zr$<36_vUpQK|C9fH3galIzQ{x0ly>=e9mG$)Wz#``y(S%9er?IP8BG%51 zWtaAR78j@J?JWfZyyl{(q5N9Hh1?%qeJ>L|PwtixO0eqYYO_))2K13aa`Udagjvka zuR6CVcIna!9?f@x7T@WI=ucUEPY|*~x{|9uel#s+pbWrZ2#JVe;^N--SivowEIird zqGLt|hu>=F>K|o0B4qW*i&jGpX^9^$n}oaw7gmM*LD7#Xu>6tO8eHWwjKk;_HEb2z znZOnsK=|)>f&z+>MN{+j1{5DyMr>~eP~1JqrHyca5%ZIwY37X zgfS*^$fVJ8S=ij*DOQzEX~@r$orpbm+fi+`v_(_5x+#N*)akkH^#Is-tBNJT(ue8xj!`QaUTXwQXb#-El0ae#+ zZSy8~Ahv0pJ0zJ;RuKhpKl38D4ffNSl(n#Tt{X#NT?xdUCMc2U=xA=^6sR5Q|G7N@`6Y&==@}~jSY93en(rv!0C27$zmAi` zzd_vFZ5&ONavm zjJ=twFKqJS^gocHL@S$^O~UZkti6~NrU2+2ZbLvDO&REO=y`fdxR$e_2+bcftak&*Fyi;*7_9UCA22zz+d{`P~at%>6zc7wB9K9xxvzMBECz3gwb`9VTaw70h> zyUjadgw8enR3gzV`*?Zx(r6>(g%JC^Bbg8J^4?zsDbeQ%JI1>?5-za0J(K_K$B*;& zYRJ!{_sBb-tcmbko9f7-gCT6NELs96x%5j#0E2QE67-IJPp;obu^lWi_x;_iD^VOK z1&DuU?UUE#k6V(m=J4{$*IivjOuUzfQoNVRn&Si}yFcC`iqy$Be*Mb!OQ@^rE5}g^ zfuH??XD1~rbM)&!Fbhq&H?k2D5kpSybdga{e}O_%&JAg~dFcR( z>q^5RGlRJ7{)h8MS71^rPV@4HqnHUWhRnh43br~*$HYh2ZP4Qk`XxH#?KHeG($Mgz z^Y5-=VmQrFTupI+tbmqCf5dq``1&V+&zi5=a#*OeTI zaaUZ)Xrg7U76vO@lBHh(K95OE{ChuNC!c*|$WK<J<+VP`-Ke3d=^)1X`0?YL zZ?8R#;a5#}R#vrWz7w?+Y*xS|M*S@M@{hlr)32V%Rr~IRgoc)liN_iKI)6hs?96Tk z=68T7E0r&^5V606%U?n3jXkQKw1g6=Q@S+#FkGr6S?* z+r1!Av4|b=*TMdRLUO`VH)y~IEYW&+1sXgnn#^R-*r~r#wJHVnQrMpu-W4D`;?20 zW7i=8VZ;9QVr3 za&fL?rOUXo0DxtZfM%V*;f@6e9})9e!j!)rkaWZTOuZaPo2yhe^sx6+D3ou7gKO09 zQ3U9{tONzr4L}S@X9oPLg_=6^{kC?t$@OqOX2pdQn+}6z2fi}9i&xudRZ%#Z_JrLW zj|;eD+h3|{k`hvl#=)Dvo!JD7&GjT$?B;NY6Z5?vob(P7zPn=TvU``Ht|K_X#}{!X z#XH6-*(12Asp-)fMa6^tLZvMR`~7dWlhWZq8|QA1EbeW1soigXLjNoGtSKrBJ+`aC%qM2|GLg~5u| zUn(6RZqJ1I&DR8y=s8YMt{fMgC^ss{3F24pqfC|0#z5npDCveHqW$=K9Zn6A!=||S|$}~gbKHHa~q?Spcnj=Vsq;=z!$XwXQ z?|~9K4oG7b-(t9JdOv;p%?|Piz~f4ubi;bD z_IjC>f|L~h(!e$ilpx5qwL;_qoPJ3tNzjp__q?M+%U6W5zq!MAZhJe9vw!H6Mxr$E z39RCdk6|}~>N=64eAw`lYs!ydydN2v&F-4cpMy=VnLoLsxBvnoUu{@`p^%LtCFk+* zRVt{dE1wsFUf$59^R~@kMZ!TDI|q>lLUDA%?_je0tGxHrO#bTwN^3~#Lw*O+X=!P& zBP`8)aba~7+hpG4D4=L^5;LtMZF3^PV($%n5e5-2&1tgr)5AV(3gK|~=)-5vHDL75 zUHdyMX78_%7ya~)%Z$cW?*kvb#E`b#wR}H|KRJ38piH1&)gHElKfm~RjYv4Bg8K8x zZfLNm?Q@8G3VNYZM$bXdO~H~+*7aROz7)8*yd&cZ-*blIn=ZKg)zbfTujYMv z1wA$|KpKP?yeWC+$@Waw?m>3^DcC22w%dmE^(o1@n zIu%MYnH=Tx_`O#7NI?I@luS5(3<0^Hul3)Bh1HXs^(2)b zv2fEz)1s^{HwhIhes^o-aZpfu$t^Bq-FGwXnsj;x$ZN-ez(^7p&!tSe>?M3D?L_{9@?9A zaLE{NNQ4f-;Ft|}WZifz9Dcss&8v5&GrN&1O6n`HHz>xUmf1Y~N!X5A~XS^d&mF!{H&pWZBPg_B8+%vM!*Iy;FVFkW(@= z(a}?c5MrbgMc?}^4EFcGCHW)avN`oO%6;}@qnO9?DWLHthYt2dHwL}zhGj2F^ok3W z`uR;R$e|@}+7Q9N2x0E5yq!er#s&?i-=_sBFZ$c0CS8-RQ-9cB8ZA2L9taPMln+qJ zvEd!?w^DmIhH8JNrAx2T2ab-!m-|X1Am~b?um|?=>OGFBzAo|Y+;L<1-LQG6M`O4Y zBax#6nKXbuXeX>?EsL!?uI`3GmVxV@;OCDlEfoW>7BOJ^{!Tc9H{mQnFhQr`q#yQ@ zFy%y^NmQq`1rQoG{iRDAwJEP&deJONqGfIj$jbg6F|x?*B0`Wzupf zPVt;M&m?jqt~$Mr4Y;flW8Z{?m5J!rGls?awgX=%*(6@b_-x;-^4?NOE~>Opp|vXw zSTp#H*b@lS-OD0l<+KPx(*jd)jZ#;LiEtMsUODg1{opiaoW>gs4Gs61+!Ec5PMvN; zI>|heWYz1bjW2kTiJDhb)YYvZy`oS8_(mx5J(lVjm1h4u#SxHP3b>jc(avp3BhYlH zU{m{_W1v7{jT(RPG5kPY(t`L+1^liI@X!*#EI;J3_2_8befRxX1fbtuI3pZ zcjb@0g%%W`VZZfQnc&m^MEaz*#)L)Wu5V@9tyKion1U9$~q3 zLR>sSA)J9GcO&O|0;=~ASs77GYUdd;t5o{}Uwn++hu*&>p2_6pX^ZadwVCPOVqOq_ zCt!Q4G5`1zb~VUKEmLN-rR|>WCQEs1XVsI$E(4If_xs%uuo;|^l1c*EsnBUs4e;aG zD@HC(?hh@*xck4~wSzhjMK&-iXedLC+3zGJDjHW;Cl6fM6@baoo~w&3BlKHEz`0;D zwX$N0PD&(_|476zUL#Sc7@x_neur)t54s|c@oFDEdK3qnWJ{FneiQf)?hjUom)*`b zPZ9aSyp3S7O+c3!C&;FBck9N)#0Uc0$l?7AB=eOPp|+!}th0TLr#ZRbwWwi3BO@(= zxvpzyFlQo$%Vz+u>kaHB;F%XEuLdvnSf!u@^f~RECfFH)fR-HcUU{0Y5~p#NmzSc6 z5eY!$J#zmMX{dYrz-hn=MG^4{LBVH=>>iJ;QhZ)M$Sa$OS$QhsgJ18vprNsOuZ=xe zHK_@963o5M56A4PwodzPHJd1}3WtRFoh`yFwuUnd`b=lU#fv;-L5EaAA`yt|iMAB= z#z;0yJh0YJkBeFYYu)cY`n2k-p7Mo5MriR7L z-x&Xtlf$>R#F4&n_wtbM&Uu(}DKKGR`6D)^VIB&)hrnJ2} zT??BI&|V;IKn7|lFssdk-OROoplBnXUTpz<8I8WH@AbViZjj)Bt)}8f@F_&nQ1o&5CBf$jT4^R>8}NrR++n_79I-7MXJGeUybNkb zgWti9NlInjukW)9igruyeLG^A3z&i*boO4H0!s<2gmcL1s`LIz%E2Pw)B@Kz{m*to zYAG^4gPQ-pb_1H8sn&CSGNMAcPt>Trx5q^$b0i-CZO=rv?BsQBuu9 z4GG6sS+}maVpPM3y=m#6gim8T*?pv>Cno(4?);fdSphc2lY!f=D~~O|VwoJ01OFDI zCUN}U-qd+8t}rt*Yvt<4uCA_XY;DaQvG61m6cdZz&LeU+_-un#{vLpir+bRd0Q13h z{(LU(EFNA6<%4J2D9Ff8o;o!avkrWGwTGrj=r7}Hbv7}Cip0u@x)u{Yp!TyS@Uf0_ z9$`GN())YQTh^2N!I1;*sx`yBVqHG8P>EodPV6oa3<rgtNCH`w8 zQRQmTDL_{6T%EdXY|Os2v~=UOL}%k|mHT&L71vDv9xh)vd$8R6vqZpu(iH=QW?xT{ zmB;8)(fCXEW2}6dP?{~y#5V!(0pou9)V+9dy6p|Cl!4Z>;Xy?HW=w>{gwN3V^c_ED z-I00AQ2@x@%8SR5=P@z9EA9Xc!53uq{RI!VR`d&tp1hsHuhyN*pUM_4eC(Tp%{sTt z(i~#!4q7rSex*oedy-eZ?`iD2WwF2ARlPr-(L3taUlUF((-g5WG+FUr`em}T*D?%` zm;haP$gYxw2om<<)CPA+L4lyU!Tzg-hav`PbRp?BPGYQl#uf2?uuNzBN~rxIzX!(| zdxnBPZPM-Fmi_kXePfUDW2e=VZ=gIi3{1uDa&w&VIR=_7I+UZsRSqVe0lk8DOrPW^ zJ@Vt;k3?Z9A$LIo*I6WKCL)qqDA;#zdvBexu0!i$^+B>)vH%eqP!GotK09YozfRRucpLCH7!yc*xx_ZkrjNKa^oo#)M^Id2#PH+n^9=4a z=EKPr%>{q5G#&F52GnHhh7G!wc4?B8#%A@6AkI1|-jN zj;NwVn*IK+2l6Pttf9>ERk#=ZqW4^{Or~Lm(8zI zo~@^oGNgDMxbo7US;+F}@#D>-QL<{VoOKiwE)1BPi7t}nH4AMebNzFDJehy-1IaEM z3j1ra8`2Du*|%42S!l4rE~yBW^YluGCM&^TY`Fg#&V-e!>HE1w8E}qRw%`rd{U5o=mq@>APc3j&)RM96%fni>KD7O_gGDL<(mxGsLQ7lqC8r(8B;P% z6%O~PS_9NUst^s&+5WQU0R$w6kS4Ec+uGP`P8d9l^D14VPEUI?-oF=e*>y)nf3;*O zGC8mYGsA;|tI;Koj^`g6N|Q8(kpGCktv;?~75FgIe*k~?oa@)GUzskL69RFzYN0sq zyEV?Z4=lt5kW1TI*}4p!j-b#AIJk2K=Rt>)MQQ9epi6BSi~^N)GutyJ@>K(VX99Yid20dhImM z%?^~uVF-wyB_&bH?Pcd%e)q>XPj_bjBxCL?v9kjH7jS=*lSj4cD-o%Uey4tq$=9A7 zAt6J*hcrM&JJ_!R!xBhn!Vi*6>hpVSL{6(EHNovw933wLofR?j=jm$_>R%R{_93AT z^K%hSj|HJX*xYnSDH1?pkV>8Zc7%c+TjVf$?TgFII|!bPN1(EXWy&E*l8o$r{bg)P zonbVz%g5X3O?s<*Bz?A5&A@Jg^t<*wyul$9yv-)z@Ac<%ZB5x@LIz9A<=)vI*nSD@ zBUcB#7Ah%^i$ol^Ev*q1kdsd*T~)sw&3VqA%pHfc8RNuQ#T*@xuBOz@AVB69EL)iL zOKg9@ei0fGakn)|91xG@!LCQ!LA6N$V?Z_=l_xdxR|uZ7pq7B06?n)XA_|7HyP?;! zGSHf`(D2h>iX_Y5!c;$S;-$DR){yjkapA=$jiFNto6NA(Ns*Ted<=skloJ?_yvfcS z?8{%fww>-uLt}^XpKq|?QU-jC{2XtPDRs-XWL0x>PH}N@_??RndoRsb zZWtquPEH_p?bm|7-W|ViVDiB9X0>m>kVV)_N1Eu1;OtBfStgNdt_u}3e{5wSSYD5v zY~w|?f9~(?03V4D7pOu~t?!;H1}b*)$E%*sbh3qt6)Kd$d9R*AoK#-6I@KF{rrdeB zp?dF#%3N<1pNV|BE=rq5Thu(F7?R!LyAhA%8eHAm?#{1b`MK@SJq`Yt9K*60fvU|% z=ojRNV`9F`tM}ECWqw5Jm{@dV=X>_PefxHLs9JV!dyVVdxew{h3^Y8qwzX(^!aB6D z!ADl4F0oSaab1I2h)Kt2JmF*xqFVto()cSwWedm@-D+Q-fKYMU+gw~^l0J#GTfNu- z$%AbjcCTe6@I=4)Cc$aWa(KBH^f_DnnB)HSwojzJ3MP*$XcR00###S(ubq?OynY>s zJSKSE-^53zJonaGHfMz{78N3sO(wp%0poI=!?i%(#qj9M*Bz=X3O0P#szN!4fvW*` zuW7g#k=(-Oc$|rDsr|`?>I0cqqIT<_NOW`iX&D;_fNOr;(^D70gaPX$L3mKy2d$Io z%E$O7+lstEuHL8OL$F2%`SS8D*WBKP(j#vd|NR-av*~ex~z{Q7x$XEn349f!pj`c(OdiwVhShU8T92Pcw zy17JG@I2YEllmo=f8MDw$ywmnWPGMxzj$14&Qr$7%{elO-X#-9nmRzm!-KbX|4c*S z$Zl`!ddUg7q3W`(YQrb5=mfTTC^Z@(;Crfk$|paeTGqXvC)hp4qK5`u&!f`+o>l`A_qz6O*^o;!4WGbl zqpzg&>=_g#<>wjR!7i5c<&j{zvHz_qdTaw+$UMcDD0CqkL?OL4B5h4tc{9K4&&GRwzHfal zvXOmM=t-b^YP6Z4$C~xUix)FZs%7#k*I7Uaw3zQNLm7a$YOPm^e=8OQgpc`yu@CLm zu=U$C^ObUc1|=t&kicz*=Iv!kpzJi{8N!2rvIgUzpV?e>mCv{Eh{y8-WM$jdztxa$ zEiHFj>q09mn9@so`EUmqsLg(DO}{_rmie}I?dXOcUxe-NV2?bN%9@%Qsiiu)2v+eJ z<=At_enTYl7@%7|j?H{Ie=qJh4My&sd#Sqhat7p?3qWuI*c>lwF`$_uIfZp0z^3X5 zOrDAy8co!4Y8l2Wn7%W!A3V12x%RhSMWC{-Gfz5BL4GU>b*(-^ANRFnBWlrn2o5L& z82eToi`Y`oXcj>vDRN&jZP59ru8?Ob>F8thj#s>!`)ej_oP-_9Gj*AL?#o@nf3 zpstX*LkyNK`sSIVG(0nh4=ZhU5_(U5TfRi@F%g3_kB`+c9)_xG`IFmhcl7&Y&oBTf z`K>g+$msSvuq}{#Ct&-$v;4}=@lU5KmmvGp(W6MokTI)(qI@0w;Uyz5KP`(sn$}=p zYp;Vc5ShF_15tu9{|~Qry(K@s4_-N zvV$5Lc^aB6AN1NsX=$-|GC{-&)u}(VVPwGmf)ZTl7c?CqhCXYZ=#CF$?e041q(Zsh zSP2Mh=tzMxQ0lpr{%0E{Q0n07OOLI=<|1>R@canTe8C8rzmihYYbj>`MRBL3neNz& zD9Jq56pfP108Sx$-2;vaqNIf!4JlR8fx7Rpyn5BX(jdjQS5Ei!d`O@PdmsPxZ#Z82N&u>G^7XL2A4 zzXLJ|ibf`2Xkou-1t6tcV#@{+*sVo68lIDf(^5s46q`i(us$i(VU980pjHrJf$xBnbo zhG9|#?0Z9Ke+LmLf5_dkuN-n;W*$7QABmg!1F&-+xKSb3S=~quSt_|Zc#l*`Q(;Ob zLF9{TK=Sy1=a;v3T6Q7JUl%9PTC8lJM*IfWOSrWe#`Z5z1rIao!+e! z<_}O|FkCfN$@xW9Y0&l@u~9Y>gr+9-gG>e&$)% zb6{E@{fl25uBGIVNdgRuw0bdsf#^PjuB%zv-z(QP$jhB8f$Kz9ZH32*RP*3J98pYs z{B>yIQ(i5G;YtBl8O%5m|MDeqdwY7UK-7RONh*lvGTFR9y@NF<7P!&puU|i{Hy@5x zWFHPgHNcU=;6HF@j=|D9-R@QG&qChi5@u|lG|-5B>421C5H{#vtZ8CZ-m}T_uZvNanJ#^!-LLH22QHK<~09#f|SC^ zc<}sPyFtJJ&y$i`AWLm-jz)cJZYDT!_G}2W7=!~?gYLOG+PQ23oEi*hSIA{&R}n-n zPqxu;PS~g@Fx&v>JawrhLWpZ3{FiG_H-T6D*@C7h`ls(uLf_2J>3P)fD zhP)7YOLRcq-rKu|?g&AxU^f|`gP87a_nqCO1$!`-Om${6qLvAmiJz4|oSYVi9W-Om zua|4x*}XH9&x)ba=QCxhyYx_B>Y%1W>$;NJ12rlmcF&OC@6|QI2?(fH9;WDZqmiVm zn7=Bn5vPco_m(})cj~dN+mI@x9WXMT5fdwQ|9cFYF%COY+JTyPo71O~-C!lr$$fO* zAXD>w9C8XAf*_0wgN`=`>M@%1ZT)p!!SV0{97m0xAINA2hSC;8LNG$~BiKED^P?8xpab zaIHP@wX&(`E0{QW&=jQP)AjQHaSBdj>q*k1VOXQD}-OzJ?woL)kh3@D?mziIs4tG#SwD;3}C$sR9 z-R1Mk&~rF(DEx!ndAkP@)cIsCK#W=aa>C?iojo{+>Vflke z%9Rg6TU@~gi1V!saFwjZVwptl1UpfPLSKh0+GeQ&N#{0x31ZqEIz%y<;4?%Q1k4`L z;d{%nb;30SPXaG%^9CCIm{<9Zv)Gt{*x7pfDW^Jwu~N_`esTx;lc6D$S=gE${8(0? zFITheFRLyhxM93@|BwWE@^Q8!Y!XoIhcq37nkpnNX|t5d z^5O;Ig$qAFzFnDldA^m5oqvJADnLTVs2((GlZZ~}bLv40?{?S;nMBO6ivHJd45^}~ z4q{0g)5qRDYp#S+lkUtFIpjW$sVgfm#gjbycJ&8vp-XRT(eOMv*x#r|iJP$`$;Mn9 zacbI*shq!4%r)zCIeMeJe_h+hjgeW`d!6KW4t)0=W^!3;%Ode$H&Grd1~JtGZf%$b z(xzmsi5it?zdb=p#hyrPf1LM#Ph zJXO}A)VZF38Z>lHoH_FZO~HUUpkEi7Gp>@B?buHJnftoTho|(}5?EPZSTOv`J>==z zJ(r9V+kzce-0>8GZrKhF4lMlHwq@Gr6@7R)M-am`)=XEqfn=8tQadg*ez^ zJhtct;yeVZ1O$ghegI}g-K{7U31!7Q^_13?Hra*#4IMC-$3xfUm^wgEW(26rgT3bh zMGpes^=}lkGqv2*EciJzeI%%<#J| z3>x8+{JN<2C1`2 zM-xq}2@U9QKmzQ$cR}<8((6u954sBV^z@RQf+?B57Fsmx7TzTTgYfuN`&;LQ!GR|r z!+^|9DQ9VESwj$%yD=FP8(R-OwdiR8K+v5O7LJ9sFPZHrE;O6N+EjVt4E=DalqOi? zkLC&ijbI5$gOq7A@Fn(@T~z|el4$KA>n8)t<&w~fjej*_JDH-_(h!VH>j@bC<0*sI!MJQ#A1L;2#px7LNUq{xCGyG>8(j6lgS{Kvq~ zVx%rKZZ`@19t>Zk8iA()x3=LDy@2mDOrh2C*f$^q{))C`LpweCi3unNzz)&-TSvZ* z8v314w+-~ffU39XA}(VVMuP)OgzH@IIGLZ0bzKMzm|Hr~!w~`@27YIN@nDO%@ITbv zEJu*`gg_mX*_jpkbKayi+HHuNk(A_3z&i#CQSWV@u0hvVSB6qj|Ccicv?mC_KT5C# zeoZ~7NZPmln1qLgjr{9;gIie|-0D03l4sAYT0tX*VfWI>lz&ra^T7|_4yKSVZVRn> zVx1IU6KD&&r_xTu^XJ!1`?K-0NHJ%8>_N0;33Nne=p8&Oa940Fr+&e^(B{n@V z|LVb-yWjV(2CQHE*~{X1{!oU3_7*eL}xgv}`qzJ?r zpt#%)bWQ^=q=*2QA_{T`YF-De2~3{}5-!$cI_Ds*XcVGH5^z0#1wz~ZIFcYB4Ei?Y zcdsT?l0aw5zgjrpSIsX%H3xrAL)Xp!{r3O2qk$%EzyqZ#t&&-{vl#%HffXkc=K#?! z?RiP~!Jkv$!iIMC=$M$1SLV>TB(HoE&M|?U4($U;zz@=U?gAHO2I&K}mjgDw1zm#> zlxP>su=3#twBc-nv;1Iw&4APbb`=(jgxf>Ls@sxXT{6KK4>b_7lG@Xx9kzT0q@ zba_0kOBvkDEjlm7Bo*i^qTUCfqKIq9|1XvsgS%wPhn5?QN89aQ9dZA55{adi)y@~f6d?)GEw zxy=AhG9dtrra_}_PE$a+R?|67BvVy$3POG`SC47#}!701=M{1r@#^}*4%?!v49Lp>~7{URgb zzdw_KY@*9p+mED=0QltV>VRd1zi(W_{H%lcU=p&V1X;9-A9~#W+r8G_`u#eE9vDFL z94#&2&;R?mV`Mo7C6ST~70;nJ)$F4#YB45f6{QS>{&iIL2Td7mTLYS^isw(%Qx4f= zKt|{`1}8xScF&SNfE+2$m_wRRAyFUNzyeWsZVGcLY+)*Y0wOYdYEL}!!Y~aUQV(qee z>URsd6aY>=lwAb1l3aTKJ8!-q5cViIhTEY86_lrA6B94(Gxi^XgnsJu=|Yf$W1c?; z!yi&u@qGBTK9G8-NdQFz}p zn_dF6!Q}rDJax5#NqY?R^mpM&>zrDl=(vY80I}wM+cN7WoJ)dA^S3yR1Hg34B_i_Y zx|*5@YT>&BO*_G6Q+u0=Pnm@p?hRIWq&0Rt@#_bY?kOyOll4-W2fI<%5LMfQ{XJG$ z-y}!{9=)h%3TWq^0<%DB-W5MMo(ln$7+V1Jl#Pf%K$XqEjFq=cjDx{>Is7%~U(U<- zG8I^;jr+lwL$pn~>bolhE@d>005LxrK*Ej(F~NU(v27E;E@~nL>7N=v?R&8Hg43kg z$uLEDUlH?j?2vB-0DXA6K&{ga{&9OTCLs1<5=WtXjws28`JdwllCrBRIv}}{QB$7* zUcqm7l;a;uWhV7OdJqL;;ln0^{05OF}IGe$=H31^MK=SGJsxetkC2 zfGa8r04@#qX@Fa27BofF0eGX_*Q(xV6xPSc|N8wG@$pTdjga^Ap7JvUh81KwNf?~n zN!bImV+gE`f4VGU&p`!f3F8hm4;>53Ur747@FCACyFWS1z)oe|C@_?+&JXl8b}E@&!rpVdb?X)q*J3RRr%_DC(_aE}y3F3H zCPdyoL%OSh)fN&SzG7yv-zZ2)OvT!Svi-}=0-!h828_akoH~0pQ_f_5 zu<{j%YFPq)PYxZ6>hMgc+hP{HFmrt+Ui+V{JHtrW-Ek|G+skc|Uh90&C6odBo2TqP z8BBfoUA-LWS4)5jP%cH-_gh!d&GbzROG_4Ls(ZZzzC>pKCD=2Mqu)9#;xEJDi+8{y zeGT3z0+vfR2og`)VF|wlm~l-_Ei#ICLja^AK?wGH-fNvY4NwY6`GJdDdJ@9uKoAU# zchHW!25?qJ0At0)&)@pw_D%}8qyNB(cDWy+F$6LeTLU8%Ccc2~(Hp`?A=RDvu zt-WcoPoplq_5yA3Wrj!-MH`FX!chm;;MbnQJk$$PLWWxdVTC0iAfN%{!@KF}=}ge- zCIs@?N zvp|M00{n_ztw3yDVE5Z~cgKw3N43*HpH z$$x{*%E`$QDZ$5w_|F$^I=ryt!;%mOf}5OkRMtmA5XEEoAI>+K3~LBdTvn04^S~`( zY1rH8L2u2;T6?StG44xt;y>r!Uez;T_2Fid&sM;HvSg53){`{CP94X3M?Ux~4X&PH zKkxLNcWK;_R`_$c1K#NNT)b0JcHuQ;UBc19XCexo5!zFL@F9qp4wnsrWYHHOa1Qqk zL<~U}ZsE&9ke}aW2p59z&*NMG7nu?JflF}i{{NT!zaBA?YI|ABXV}tGhta&ra2b!arE$ny)TCeJMch2NNj=RQcWez=fKY)^qqg1a*+J`s^mNN51WETgAue z2!Jn*LgH>M4`V0$rZiMlgZuJ~v(Hgo{r3HP$Ks4z*s=0gzOGKz`MGeXO(kvA!Pm@8 zm0!Pp1ueQ=xCj})9o=3Uu5um2H4A5v>Zx*FL7${t>155E3kKho*ymtAiky0AitoO! zd&|KK56m~+|IK_yP;`FVtRuyYLSy{6Y>qdcM=H_i8Yc=peJkXWv*C)!?N`IS;D|3f zMmNqLZdbW7n6?^1ABB)4vNMd6PNX;o-3E&?4Cm&0Q(Au`YsP$j0h1!@({jJ(ZYhzlliVzuJWe4UH(2tmkhtl zz6(Snbd?EiO`jmPtyKg?35c+bGM&Nl9*$BLr(n$z5=9#&qyy(V_1( zFeobGjVdOaSURABTSOlF8)S0MNNAT;vd&%6J`BpiHN zXq1VzvE3MDft2sSBebN>mVBYiH}Zi&oc@W%3!0aje3X8T#D0E^)YR{IAF*+Wr$`}Z zZdKwbaejT|?7Us$r%#NFHisXlbfelXzLS|VCR1mtYvNbz<%mq&vyo{MX%8Njy+9k9 z^}RyBfc50hId4iye`qxTH=hx5vdP`37LXe&wCKvwH=25tQ>shw@ndCE>HCelN?}fl z$6|btTgXN51IqH-Ir_1U17w_kzG`I_3atG=7a}Z)F4VC?No)}A%>mJ2`2y3_7F~|0 z09MHBHAGxa9W?h!l~0Yrzu%-qStG(C`{H#Kcuskt2m+i7jyw##W3;CCN7u&J8uiaH zJ&k-@?Dl-7$?+leECFN+-&5bP?6&~o=GM@1{pxru7X91=S`CuLM=J!=G#B0&_S$F* zGAANu>S&D>bna5&%GAp@i4%MN)n$2T-k77)IyQ=Oq585;UZQL{*?BZkr57|*{yarD z&nOd#5$9Ukp<9cg%DmPy{}D(|n({~%)R3F7)3BZjhUXX)+hvl%F~V32glc|*aPS6L}h zv;LcB@cZLefxLRVqbNTfFX&;i+86Ubl_K7Ab64BbANpa@kXM!}?aR;N$aK_p zNxn6B#{JH4pATXv>+Y*1#l=?OgCO(zH)P#oKVJ2AbbRSdQL;SpX=`hU6fj3USD0xB2tsszIFjjME}JT@JNXE5m~)X3shx2#dD!{S$wl93xK$ywaJJBt~3 zNBi#Gw^)hyD-hhz>{@3zGWt8Q&=EsWG0@E@QaK71ILC{Wnl(~~+e@kA}=)}0#99qDH>jVlHQ z1`kY4^VcRDv(IwHYy$GB&+4lX#F$*eT;b)rPf_dC;S4j(m{6y{QiRUV2g*CqsXzE? zb98KM@x+xrY{2Q^!wTx{=nv9D@Z+M0!Bh?DJ^9%rU!RFbH)y(Bz;_Rpt2Au;ayoy! zA}aCRSuWN>CrY~7jG_I-YaO(-BHz7xClE$ULqoX!N%Y%_jilQ@pz9}ihsAh6L|>`m`}J=i@y!0b_JCcrr@)oY93XjlPn%;J-AdfBLt zOdVmnKeyUq1(iUaa&mUriBwr43EyUB zo_+lE$@bSfY7bL0~YjDjsDqnd*B4%cLd*LSWp7BcL959(jfolN9I2@#dj5Rtx35ww zP-6Y~yQRkd;vqYwR!*gXi&1#GF1CHXATX-Kh`Pa$cKiM+A(7~8cu|96W-NhnK@)%(K+p5F>Ug`$OO zo0j={#U#V7ri#q67z)S-B)1`}#JQxam!dqjH`Aq7!>t}9doDNM#>ibbO?^Xe<)3QA zr55wEV51eopXKRw2#Y)mJ67r9E&F}}-)|NU-<{v&vUM$J4lMF$3q#2bqc?p|@LD+G@KTY84_sjtCjOS`>b)(&G~yO!6Liemxulp3#;n?=j?V(3Y)Yx__}+#E z{p4%3`$j@%00Nu(jwIiZh;`Sl<4dd76UD#{K8BCnJnubS1u295z~MfUze*~t{2-p z-2c(YYB`mel8RYVt(o?06UK1=eGu}K9SuMt)M5QGT0$WS`vx7#n8t5@+nVw)1E8PT z5#BdiXmbt*XXyyU;MCtTJ8biJ+9Y4=5abOem;EI7N@6h>BfvSLpmnJ%qaPpfLLRrIaOSC?v} zkHw14hw!&jOEC=SE=#W~uNUwKQuwYJqA1I}{6*++@WX@^T_e~{2(Kbo*n%m-)Jp?& zm3UZof43xlZ{sy(BZDWSfPZI>oR(2}zixkPo|Q!Ivf|e;-Mj$Z%o{E4YF>{U>jJu( zBIo_XQG^2Uax^G=Y3@Wc@TetvzEz2(If2W-WLW_zktA#@P`@$NtWKZU^RYT)9Vdwq zJgn%TJwfAbj-LuCBzg}m-pF8|9gjxJr*w5|NN$`AhJ8PoQ^KfAW=by0v#ZZv@mcXp zX@HSmeC}9I0ORaq3gItABCw&VUj1&`<^Dm-Upg1D0^bBA$g! z97{lH5~bZz&6Jr#+Rfu<{>Bh3>uF(_Y=!OmriD=;`#}?QP1l%LvS+{D?i#0B(z2Zj zp%PYrFOX-kZj)pzh8?UjYSZLD(fpWz&ow4^?e`P2_Tw0SJ!^Nt1b^g7tg+tni%6Jt zO%>ovj@YQ&^^$=a@z0=GR%T=~4en%>KNKamGxVNm0HBZ_9yIHPoJt8U;!zLVXfEs} zhrG*Eq8)4QizK zIFXM-IERtpo4F2J)$~nNiV)5x@F0nMb14{ww!(x&V!9I9>=R~@8^~I#mZ;yq!A~j~ zRQ6Pq0GuG?_FV{JFer^0XSCN;)zX?N4ssNeI>ea+MFTn%L|uBpsIuLV$gC_}san!` z^3BDJKX??JwC4llFbGT@jmt91u<~fTK5wq%2|u-vC=aMUq}#(UBH32T3C@>y{)usy zp}Z4)s|tGztJiiehTcQYFs-SoiRE~M62og&vWr^pyEo(5 zWn8cbCCgYw!vZ;?{Vn9@V0mI6zd&L?bU}1>1nVntwP8`I|fo)G=#WSQXLoO=yMbJtIb!8DF z`h0EFf43T?*>ujgYmj9Zq*O96Z(B7+n5@}%IOW9e~Z~TcKH&1i5~wTl-RNUV8;_i-gczJ@Y=6>vou{8@)yVngNb_RI zg|W=t|K>Z0m+%<>6JwHhH2pE>ES{Xwz2R)Vd!uEd&OBvCF_jQLE*O`||B;M+9eH$vM`RBCBnz$@RRif**WPhHOX^QGL=ly8)0d7k}gb{ z%*mP_l5&@=w`?qlC=`$UWFO;$v}Qzrq~)7=@~&0jRs&N!v+RWMfruBfWuw`p6QL~^X}8r z>P;aUci*0fS{OsApe|bKl_26lwP#b;{%RyKQ^v4I5Ri811*u|KI#1U5lw8A7qY(u; zt?oVzVgYFfJMHJ)uP;G3}FhCr9 z$HEX_?xJz(tt(dq5VP~lZQ|O7JfRF9y(5*BqCetXpo42z_KVi*Pk%L9gm4;r^3p!# zRAApXYo$vI9cEr;3Q|nVNW#>p8H(LN{6VvmL#Js3%#sqT+R#K1=X^oq(5F4w{)?eD ztHFHfql7+(Yky~zy#iKx^=4W23@fx5#Jlw6>xjspn-{?RdQ5+8)nYh{*A!k{PNUvI z3UcQL?)@lET=}#XDu-!eGeP0jDQI#NP)x!-!)VU}lS-d(1 zaO86({crEGA&bU_x{Rwtb~Z|vdO})D5)H5Y6hS}|4?dCk@zrcb!FM5J6#0fineg)R z#@%}SavM-0Zf*Z#Y5F+3bN(!yc^p)Y_9kyF(r5acAMJD0UZqhT&EpN*^MTgCw9vdf z9$xYJw7okkb5fx$z4sI`Sgi8N=tU5K`zeEi22yK3so+wTGczww-SlvRw&Za=VJM5# zVDPh)qRiZfcP!E{rHI(1lOg(&@w(7pKIwJa355h(n}kku&(cuL3elHW&I8b&zRyyg zoGRXiJ2u0`*6%?LCS*TU{?qmi8Dlyqk+PGMFWW+P_V&6+By!@pj?R0|%(OHG@TSZI zUZz2{{cJU}IbXG?@5e_Ekzh(KxOtqd{{BIaluiy=IWJd`sC~}qFb{8z(&6X|Vd1r% zRMansxi6OU=N+{GNED-cVSs4MsXcx;v)P@9%n06QorPJx>!aRxl2oJl2cEII@|GeN z7fnwpT~4WMLGQ-pq&GCfA7SvU_n$nh41d&Vds8h`o<); ziE~?XohjxF6r&Q;JGK2yX{v%@wJuo1{%(uu_7{cKcxm6gVD-Uj{S!gEnC-)EnaqPc zU$xKQFj?Kjy+WDp1NRfRdL%#;2Nul(fb^%rfW0UTP*r=EN(OC$9-h-stX~(Fs8})a7ML-aw`0TZqF6_-F^>-xS?f%Rv?Ntt*w#0t8@@E0BVd>l} z3TaJx=OIU-Yj}9jTx#WC;xWL}Z2hFtm>aN6>V?ZuW=R+2sQu0Pl*uqjb?^O6Ed_;u zXYHSJQQikxpj@n+Pmh0~tJ^?g##Hl;gqcB7*Y{C@+-#ETXOf#0KNo3mAV+y)5lB~0 zPc^C`g#NutHCW6#>GvZ6B5Ri-36O)ypt$(>hbAU@)I7RV6=`#SbM`$#51Ta-deLjR zs1Gl3pxsAcD=HP0SAcT9^5poy`Q&J4Hd$dV>Z=yOgUa@M)T86c)d_|_AZT=<5agR` zE4vT9E3+e4VQRnX+a8X*3rE0zjhv$5kY<_aN!6_!}hq3?n9+%xrQ*!2Zh0T zuKBpH?1OWIb^GT%d!WxK1;91z5|)bxOC|0?f&-y#0sgxJlb|I*e&gRCXiuoUf*>(m zkWO_uzlu7P-?_@da#}ANk=((9 zyn^8>)RybQ=|KoMxER!QJnM_Ofv-kS2l<7=zzGZzSO%?f9l zd=0@(@4?4*NT}k76j~LBf8mt56u>VeC5FCGfn?SwcPQdmiUq^F3)B}!4ijRD<3DuP z`%X4MkvV;XNW?|u8;WGIkY7IhlP{=Wj+FDCAaJ0uYiHQ)7tM{P8~DZ#e*uE-6wj5t zp=iH>-v%GTPxIqhi#Qcz=b=^Jvr%-d-C(u{3sZs&Q1|EmUcWvratr#>4L=YX z5bgz6nEpM2$@T0!7rCUL(T)&g3hIeQ*&XAmr-+eO@PVItGJ25^N=$sHmvOE;BcmNB z#NnKt3FaCbgmwi*;gD4ots^&$KLmLJtOcrizA>@?IQSxAcbP zF)IW~1D<;5cPZ_6gy0Fq*{G)Fc;cKMz;ti!t_gar!tatlA+*cn{9iRkApnlY|6%r_ z7fU2wuH3e9Mr<6lBIUs^VaKX64a}TEb zvoOzwn1va5Ai%Mo;@zSPLjN8Q!7RLUzZM}OsOmKd2_1t3Zb5#SH-IfB`;CSmiPJhF zPv92N7@%Fi6F71h($moZZOtp}^!C?E&HO_w#KS>}0nOpVBT!O8(w@ZELdS()2*kIJ zb8z|xz~T4rpPmVl0CgD02xn%ft zf>#^>#n75K(wwhZm78($-`!y55B$CJXH> zw;zE*Zs<-9LK(rROF_%2aD$6UWTu{?#@=A$xqYf6{LSIJ6tU4Iwuu|# z^%SA!0=n8iavYrt40T@;HvjA^?XK><`*?q{$J})^@sK{+qBZJD^K8-4U(F_WwS^te zx#Xdx^8q0h%av0bh+1iEJGe4dX7o=5YVfQb@BqYqd$fNH(L@w1JzzjjK}~_?wbbX6 z4VlTwKkB2CyWi5j6uG(~PUFwU@X)OxWNHsEiiH*fszl5x3!5*MSX6wC^yd%7hk9O# zBU4Rk!VZfN*z3$2+n4mL<}-IUu6A zS@h=_zx(xs;g*@~;2I7dq1DDrn|^J2MTI_K{(~CT)YPI;wVh+&OO9GPi_)i<2agL7)qN8(aHSA5| z_k{x$L$&Y3?^x75W@ZrhSv0D1Hf@{ket2e{H;l?PU5B0Z8rDi|`?Hk7Sy+mj3<0Du z5&fYv?7Gy2-*S%;M<`09H8EQQJmhCjOjU#Xjk(!3A0`ip12#=f_oIqmq8NtEVCc^YBRzdEJVtHfsOL$?=iVZ3(e7W=|+?M;r~kRkS$T$`{B;`m8J0 zl$EWs`-YJ+#d^D}Hn)RHgHx$rHzy)>v){-)O|JGZjcV1v^!=Kkq3>rP?~eN(^%t)I zzFDm_Ly1EFV2A4@tZYTuH0f6|0$V(vnIUwzko{0oGh)pLi|U6#_+(?t;P)T%wVf%* zT9+TV*1L|g2P*otGmb}p3C@-SSf&g8`AMMap!&AxnuR8mRe^)#&GIqaVb7JCC{Apt zu-mHHu-jy4oTTgW#aa{)^Z^n)H*~J2tLy9RXHRuKqvs0WPdeWzCQ{N4*ee9ocaz)$*zA zEeC%wsnsFar&;|wP~;4-zV*+y7b`)8+3Zd_egM?J?j9&?=nFFgBeK2royN_T*R)rd zB>VbuW0BK?NWizx=Q|wyd+!$qTT4eKjq9_xI8<|x+g7jMVz-7&Z=&l+Ccw3GL&)~t z6`!4|kbujwx@l>cg$5%IzZ_ih+W^;fKg(m7C4^*%?dW6586B#%R%%aB0H|&)War!T zeA6-!J(s8eE8d)?eyT|nBi~BX310QipR>)M9)iXy&_uH6j{p?g*!8TOER8zN z)t+Dnp4ebTGQZX>M*pDrszv6r_G=T14wu1*0M$kbWVmFaaHzIYyOwQjIqiW0Fi`zUtiHvq^|H}|(sJRfQj?{;KGY;k6frFOk{6|B#w~pT zS_Q-a0Jh?O)6;(mDV-2y=gz~#<*qD*7KJg#zzlTU@9W;nu&bgF@Pw46Nf{&L4+tfC z^0V_jIPy0;ztwHbT#;eY61@<6uKkKZlU9(dwz!=@`=;L|;CC_UI{y$y`2H)BE z0r^n?1YF$|9&z^qQ>gM(TI=Xvo6kz!BB%I!=3 zZ#W;GQtGi5W{>dy`T8#<_X!@~$!oZw<$yAuX^m}0zV01|yk0&;pZXV=T@y&Is@;=e zscmZvkY1G*U%CB@#rpw4K!CPB{Ve{O;vZWmK;LqYZ|?^}TDkBP{)o1Vi^^TjOjpeM zwpytVp?S^FyxFLciX}#+Tv6q&VOJibhaV5k(A>`Lrr{su z`Bu0@g@D0qD;dEUDST_&#lB7Uj_0rp%fA|E6f7IVNP^~q_i4Iidn>j!s;9^j6^~o{ zmJb(@z_H*Ym^eSxK9qNCneP?rQIwY`fseLU^4-OLLD5ToeE-%$y;pHxL%^Dl*8~%0K4a|9QEHO3)nNvKxOfdfuok}aCh?l zW*``*Q?&a2s!G2RN3Q;)^Lt2^5)2{lBDdMqeU3AnRPh+wgNr}L2)|!<5f>7Q%q-BN zDS>cyFTtQ3_)lm}Z?wcr*=StdzZ(T6<&%Fh4cqB1TcRFa&UXIL7?m(lOGc)x5Rjqv zisEeNg^{b?zX*+i3bVtcqV(YFF{?prrcOz6*1PMVngP;4v0mO1DrPEN7ic7kd`2-S z<+tz|zcX(UuSr5h_uYro8&we%Bx3d$rgUOxl?gnL`R-~fVk~Bq;Q9f#nTkR2TMFW{ zSUT6sgT&Val5nf5>X>MSE)G_N^#bGu7dC4HmVgzfB)v11gKP4gZ37RN^lbAurW6Yy z11zuoBw&f+L@wrf>{KpBarlGsXp9Qj#2(p7&a?XWb!F?VCp3uwx6TqVw`QYOt$}!R>$==E#AS_nmP|emI9Z5RhT}evb(b92y< z0_hpZWbO&z!QrTJfP?HwS zhk68jczS@*ioT&gp%vU23#>c>?WD0lXnB7%tsf`hc5J5%gz5mkgqgN@3v4Ou%5fd_ z)`QIjEN){sZSkUfYjNr6S7DFG-8bhu0StHA8FpO^lsQbcv9Y;rCoaLEqaCGB8sTmN z_Pjv}ca7%mWVoQfc{D8$nq`&B57%3q_ohE_u_U<+S`QXl1ZQPumpIL9t8`^O%ywEG zyCZeDTE75lC(P}Q`!#zr@dl-KvD`d7H8v6wDa!H=BaW{y-eWlW1$4iB#+yoM9dBF} z76OF-v|2p$<>4nLoL0E50_F*aiRX9kzPed4Md`fQ$NM~|y4uLF)UFfojjnugZ!tH0 z3Nrrir4D)Gn0gBbzlPlMRKuXs66Zx-7y<=#%BTzio6Q??=D6)j0Q5OOO9FCM5T$`c z76D8^6&@cK$EgB1QyXjR`M2o@+J`lS^HQuB0Lld39mUOepK_+5xG(He>2Aqxd+%go zLq*fW@n85j`V@Z!mYQMOO?NI*KTr?CL?^{ToXp8yJA;Vbqlq;oR_|0`YcbL@cK!$k zcxGXi@4qAWJd~>?FxIR%Q+XwyS$l$Ia~|E#&of9n5kIgCH<;$dgz9D_eARi@-q-Yj zB8hUA=!}Ln^)B!|Ij%lrl39F!12D2f?}zI;XN)`qhQ$j(>|GGk@8jFGJoEP z_QwMhI;Plstr3riymh|@P@_Vg+kbyff;9l_qPBIf&jAi~XV#r3(E#{D7Zw+VeGc8I zX=pr#ncA5buzC%JUAnl8Dk-F-7J21$Rd3w=06>Htq$`70s7TU6aY6l(a#f9FikNLy ziSoa!KI+sEupH$dA04pv+RE(DaTt5dr!fFFb75iOl8qp3Mo!NCjoEfRRaMoAr`h@W z{q&Xzkz3pOoYbH+`S$JFq}$`ikJ)_PU+ts1d-}4z6lzEF3ur(2m2oB0?AYtNAFX>3 zlH)SN!~Ad=UArH+)Q5|;62Y={kM()jf3w27Is}d(9%j4N6yRvq}jPX-QuiKnj7zDcWTPxFElUlmNp^1 z<%e_Oo|jm8Q)%KawqP0+4kd|ce=#n|Ek~6Qy}$2)7_NM1SZ4n)wN0iteM`hRN!q*E zWyzo|L0qRkkV3E4=g4U`(N!ClP$|D)ZI#C-lYq_$A;a{i^ufa`2(02R-WaK|0Hhu( zF#Q%uaAiILiRs+mT9icHnTxxpnwVQt7$9qdLugn^K~xa4*(#_`CW|2jY{`9Q*|C^l z`P4XuSjR_Ef(53k(aNB757~V1zzr+y#&taYC3m1G?eg7kc*L+*5}n(F+Yx=GWSExj zNB4I9odskmFF>Jyc7u`UAdhr=w(zQcgL2vE%~0l+YZSoQ0s~^~=#l+0fgCgjkY9&M zpdo(UH44t_l$|H%8Pjvj>!dtqs)V5k5L^d&`fulpDY~;|eynUA2FS4D z{_z=il@I>@obyF@UL{EQWr~RcCnN}^1k<~Y=n1wnx6!xUhd+MNwg_CUAbu@wVr6mf z-mW8XX2F2%7wMg{k&z-!%dft7@!*6Zzd1uDni?pJjqb}?%Tt5czz9m$_eqa&keJ+^TavvYz0eZ2OB<{Zu{oXvsDH{8&x=_ZOe)%nAtf05Hj zDXHujfFflhZm+!kp1WlRd^yVAZ%kb%Yqi=P4)Pf-tJ zXlOG6r5#Eac~XjYg`K;mFad1hn~1G#3Q7c7ks3y*RuAGNKY>qpvFsOsgX_$mj8$i& z1kTz^p*AOI|98VaRZsOXdjgi^&g?jDd8Z7nt`}DXaIY;%{p>y6#k2!1`$GP1iB0P- z6mfCf0Im6@W^fswl3cQEhk;Rln%)Tp+_8_?pZE7H>4O+UN3$JW#L z>`!pv!4o6gw;xH+r-;CM{rHIRKu2BaBIQ%YmhyuHhXnM!QQ?0a;BA3D7spZFu$>A) z4*lc@xc?&T`c|Cb^tIn0F!Z{pym*t1#t@CON)OjUdAVc9qbHLhrV&8ut@{AjT^KlD z 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 Okcxu3e4d=y%l`%7gFUVQ literal 0 HcmV?d00001 diff --git a/tests/test_grid_map_lib.py b/tests/test_grid_map_lib.py index 92ca67e297..670b357ad3 100644 --- a/tests/test_grid_map_lib.py +++ b/tests/test_grid_map_lib.py @@ -25,5 +25,16 @@ def test_polygon_set(): 1.0, inside=False) +def test_xy_and_grid_index_conversion(): + grid_map = GridMap(100, 120, 0.5, 10.0, -0.5) + + for x_ind in range(grid_map.width): + for y_ind in range(grid_map.height): + grid_ind = grid_map.calc_grid_index_from_xy_index(x_ind, y_ind) + x_ind_2, y_ind_2 = grid_map.calc_xy_index_from_grid_index(grid_ind) + assert x_ind == x_ind_2 + assert y_ind == y_ind_2 + + if __name__ == '__main__': conftest.run_this_test(__file__) diff --git a/utils/plot.py b/utils/plot.py index d4bbe29ffd..eb5aa7ad04 100644 --- a/utils/plot.py +++ b/utils/plot.py @@ -9,6 +9,69 @@ from mpl_toolkits.mplot3d.proj3d import proj_transform from mpl_toolkits.mplot3d import Axes3D +from utils.angle import rot_mat_2d + + +def plot_covariance_ellipse(x, y, cov, chi2=3.0, color="-r", ax=None): + """ + This function plots an ellipse that represents a covariance matrix. The ellipse is centered at (x, y) and its shape, size and rotation are determined by the covariance matrix. + + Parameters: + x : (float) The x-coordinate of the center of the ellipse. + y : (float) The y-coordinate of the center of the ellipse. + cov : (numpy.ndarray) A 2x2 covariance matrix that determines the shape, size, and rotation of the ellipse. + chi2 : (float, optional) A scalar value that scales the ellipse size. This value is typically set based on chi-squared distribution quantiles to achieve certain confidence levels (e.g., 3.0 corresponds to ~95% confidence for a 2D Gaussian). Defaults to 3.0. + color : (str, optional) The color and line style of the ellipse plot, following matplotlib conventions. Defaults to "-r" (a red solid line). + ax : (matplotlib.axes.Axes, optional) The Axes object to draw the ellipse on. If None (default), a new figure and axes are created. + + Returns: + None. This function plots the covariance ellipse on the specified axes. + """ + eig_val, eig_vec = np.linalg.eig(cov) + + if eig_val[0] >= eig_val[1]: + big_ind = 0 + small_ind = 1 + else: + big_ind = 1 + small_ind = 0 + a = math.sqrt(chi2 * eig_val[big_ind]) + b = math.sqrt(chi2 * eig_val[small_ind]) + angle = math.atan2(eig_vec[1, big_ind], eig_vec[0, big_ind]) + plot_ellipse(x, y, a, b, angle, color=color, ax=ax) + + +def plot_ellipse(x, y, a, b, angle, color="-r", ax=None, **kwargs): + """ + This function plots an ellipse based on the given parameters. + + Parameters + ---------- + x : (float) The x-coordinate of the center of the ellipse. + y : (float) The y-coordinate of the center of the ellipse. + a : (float) The length of the semi-major axis of the ellipse. + b : (float) The length of the semi-minor axis of the ellipse. + angle : (float) The rotation angle of the ellipse, in radians. + color : (str, optional) The color and line style of the ellipse plot, following matplotlib conventions. Defaults to "-r" (a red solid line). + ax : (matplotlib.axes.Axes, optional) The Axes object to draw the ellipse on. If None (default), a new figure and axes are created. + **kwargs: Additional keyword arguments to pass to plt.plot or ax.plot. + + Returns + --------- + None. This function plots the ellipse based on the specified parameters. + """ + + t = np.arange(0, 2 * math.pi + 0.1, 0.1) + px = [a * math.cos(it) for it in t] + py = [b * math.sin(it) for it in t] + fx = rot_mat_2d(angle) @ (np.array([px, py])) + px = np.array(fx[0, :] + x).flatten() + py = np.array(fx[1, :] + y).flatten() + if ax is None: + plt.plot(px, py, color, **kwargs) + else: + ax.plot(px, py, color, **kwargs) + def plot_arrow(x, y, yaw, arrow_length=1.0, origin_point_plot_style="xr", @@ -132,7 +195,6 @@ def plot_3d_vector_arrow(ax, p1, p2): ) - def plot_triangle(p1, p2, p3, ax): ax.add_collection3d(art3d.Poly3DCollection([[p1, p2, p3]], color='b')) @@ -163,3 +225,10 @@ def set_equal_3d_axis(ax, x_lims, y_lims, z_lims): ax.set_xlim(mid_x - max_range, mid_x + max_range) ax.set_ylim(mid_y - max_range, mid_y + max_range) ax.set_zlim(mid_z - max_range, mid_z + max_range) + + +if __name__ == '__main__': + plot_ellipse(0, 0, 1, 2, np.deg2rad(15)) + plt.axis('equal') + plt.show() + From 41fec85cb974d650d2ec7965346a1f64f3015518 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jul 2023 08:02:59 +0900 Subject: [PATCH 002/312] Bump numpy from 1.25.0 to 1.25.1 in /requirements (#874) Bumps [numpy](https://github.com/numpy/numpy) from 1.25.0 to 1.25.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.25.0...v1.25.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2fab6f69c8..c5643beee8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.25.0 +numpy == 1.25.1 scipy == 1.11.1 matplotlib == 3.7.1 cvxpy == 1.3.2 From 4527785222d3bb885c4dfd97df54dfdd66e10595 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jul 2023 20:10:50 +0900 Subject: [PATCH 003/312] Bump matplotlib from 3.7.1 to 3.7.2 in /requirements (#876) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.7.1 to 3.7.2. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.7.1...v3.7.2) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index c5643beee8..27bc6b32d3 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.25.1 scipy == 1.11.1 -matplotlib == 3.7.1 +matplotlib == 3.7.2 cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test From 32e5e6fd2c891b1f56061f56e73b5d3f1386f1ba Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jul 2023 20:54:22 +0900 Subject: [PATCH 004/312] Bump ruff from 0.0.276 to 0.0.277 in /requirements (#875) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.276 to 0.0.277. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.276...v0.0.277) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 27bc6b32d3..44742ed34b 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.276 # For unit test +ruff == 0.0.277 # For unit test From 8c9eb0187e83d0abff9e3d3d5d3af4add6e2c59e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Jul 2023 09:29:15 +0900 Subject: [PATCH 005/312] Bump ruff from 0.0.277 to 0.0.278 in /requirements (#879) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.277 to 0.0.278. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.277...v0.0.278) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 44742ed34b..2f6a441d3c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.277 # For unit test +ruff == 0.0.278 # For unit test From ba5a1dda753671e5e54ac264c113a6b8f1142640 Mon Sep 17 00:00:00 2001 From: Emmanuel Ferdman Date: Wed, 19 Jul 2023 16:04:35 +0300 Subject: [PATCH 006/312] docs: update the code style test script (#880) Signed-off-by: Emmanuel Ferdman --- docs/how_to_contribute_main.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/how_to_contribute_main.rst b/docs/how_to_contribute_main.rst index 8a2f73e9cd..48895d6fda 100644 --- a/docs/how_to_contribute_main.rst +++ b/docs/how_to_contribute_main.rst @@ -50,7 +50,7 @@ At the least, try to run the example code without animation in the unit test. If you want to run the test suites locally, you can use the `runtests.sh` script by just executing it. -The `test_diff_codestyle.py`_ check code style for your PR's codes. +The `test_codestyle.py`_ check code style for your PR's codes. .. _`how to write doc`: @@ -155,7 +155,7 @@ Sponsors .. _`reStructuredText`: https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html .. _`doc modules dir`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/docs/modules .. _`doc README`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/docs/README.md -.. _`test_diff_codestyle.py`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/tests/test_diff_codestyle.py +.. _`test_codestyle.py`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/tests/test_codestyle.py .. _`JetBrains`: https://www.jetbrains.com/ .. _`Sponsor @AtsushiSakai on GitHub Sponsors`: https://github.com/sponsors/AtsushiSakai .. _`Become a backer or sponsor on Patreon`: https://www.patreon.com/myenigma From d6d761bd8a6289f43f6f763dd876018541439765 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:59:47 +0900 Subject: [PATCH 007/312] Bump ruff from 0.0.278 to 0.0.280 in /requirements (#881) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.278 to 0.0.280. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.278...v0.0.280) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2f6a441d3c..a1999d4854 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.278 # For unit test +ruff == 0.0.280 # For unit test From 9be188feca26a78fed1e638c8ca32ac8dca7d8b6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Aug 2023 19:16:32 +0900 Subject: [PATCH 008/312] Bump numpy from 1.25.1 to 1.25.2 in /requirements (#882) Bumps [numpy](https://github.com/numpy/numpy) from 1.25.1 to 1.25.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.25.1...v1.25.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a1999d4854..26e0eb8db3 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.25.1 +numpy == 1.25.2 scipy == 1.11.1 matplotlib == 3.7.2 cvxpy == 1.3.2 From bd0254997d82a3e40bb230db1f137c5a96c8e68e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Aug 2023 19:21:48 +0900 Subject: [PATCH 009/312] Bump ruff from 0.0.280 to 0.0.281 in /requirements (#883) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.280 to 0.0.281. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.280...v0.0.281) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 26e0eb8db3..33bb44ee8f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.280 # For unit test +ruff == 0.0.281 # For unit test From e7d0a219c6a4c3277a61b3e441f260d036a41479 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Aug 2023 22:09:14 +0900 Subject: [PATCH 010/312] Bump sphinx-notes/pages from 2 to 3 (#884) Bumps [sphinx-notes/pages](https://github.com/sphinx-notes/pages) from 2 to 3. - [Release notes](https://github.com/sphinx-notes/pages/releases) - [Commits](https://github.com/sphinx-notes/pages/compare/v2...v3) --- updated-dependencies: - dependency-name: sphinx-notes/pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/gh-pages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index d5af3b87c6..9cb661ae52 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -19,7 +19,7 @@ jobs: python -m pip install --upgrade pip python -m pip install -r requirements/requirements.txt - name: Build and Commit - uses: sphinx-notes/pages@v2 + uses: sphinx-notes/pages@v3 with: requirements_path: ./docs/doc_requirements.txt - name: Push changes From 5104e2c692ad8c8ffab6eb04bfa96cd9e75dc1d3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Aug 2023 22:09:42 +0900 Subject: [PATCH 011/312] Bump ruff from 0.0.281 to 0.0.282 in /requirements (#885) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.281 to 0.0.282. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.281...v0.0.282) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 33bb44ee8f..281a4c7662 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.281 # For unit test +ruff == 0.0.282 # For unit test From 801d43dd25c5bf3f553960eecfbaff7741550031 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Aug 2023 11:43:28 +0900 Subject: [PATCH 012/312] Bump ruff from 0.0.282 to 0.0.284 in /requirements (#887) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.282 to 0.0.284. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.282...v0.0.284) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 281a4c7662..d24bb676c6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.4.1 # For unit test -ruff == 0.0.282 # For unit test +ruff == 0.0.284 # For unit test From de141eaf14cd3e71ef224eaa81ab4f76336a37b2 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 15 Aug 2023 12:40:52 +0900 Subject: [PATCH 013/312] Update gh-pages.yml (#889) --- .github/workflows/gh-pages.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 9cb661ae52..072c60c32e 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -6,6 +6,8 @@ on: jobs: build: runs-on: ubuntu-latest + permissions: + id-token: write steps: - name: Setup python uses: actions/setup-python@v4 From bfc91b1bc33372c697081221aefca65e7c7342b5 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 15 Aug 2023 13:04:17 +0900 Subject: [PATCH 014/312] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 072c60c32e..f2630df162 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -8,6 +8,7 @@ jobs: runs-on: ubuntu-latest permissions: id-token: write + pages: write steps: - name: Setup python uses: actions/setup-python@v4 From 35f4f61e44ad9c3f8fc6584e3d0d7ab7889bd866 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Aug 2023 13:16:21 +0900 Subject: [PATCH 015/312] Bump mypy from 1.4.1 to 1.5.0 in /requirements (#888) Bumps [mypy](https://github.com/python/mypy) from 1.4.1 to 1.5.0. - [Commits](https://github.com/python/mypy/compare/v1.4.1...v1.5.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d24bb676c6..7ae3c54134 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.7.2 cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test -mypy == 1.4.1 # For unit test +mypy == 1.5.0 # For unit test ruff == 0.0.284 # For unit test From ff9e48852d7da400768099f54dce90f3cbab104a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Aug 2023 07:38:09 +0900 Subject: [PATCH 016/312] Bump ruff from 0.0.284 to 0.0.285 in /requirements (#893) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.284 to 0.0.285. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.284...v0.0.285) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7ae3c54134..fed24446c5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.0 # For unit test -ruff == 0.0.284 # For unit test +ruff == 0.0.285 # For unit test From 637269e0af6128acf5469c057fe6b0564e4d4768 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Aug 2023 20:42:01 +0900 Subject: [PATCH 017/312] Bump scipy from 1.11.1 to 1.11.2 in /requirements (#894) Bumps [scipy](https://github.com/scipy/scipy) from 1.11.1 to 1.11.2. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.11.1...v1.11.2) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index fed24446c5..24f5dd8341 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.25.2 -scipy == 1.11.1 +scipy == 1.11.2 matplotlib == 3.7.2 cvxpy == 1.3.2 pytest == 7.4.0 # For unit test From 3fce78a41e56b3bdb183e581bede2b19ea96a5df Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Aug 2023 20:43:32 +0900 Subject: [PATCH 018/312] Bump mypy from 1.5.0 to 1.5.1 in /requirements (#895) Bumps [mypy](https://github.com/python/mypy) from 1.5.0 to 1.5.1. - [Commits](https://github.com/python/mypy/compare/v1.5.0...v1.5.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 24f5dd8341..a0eb41aa73 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.7.2 cvxpy == 1.3.2 pytest == 7.4.0 # For unit test pytest-xdist == 3.3.1 # For unit test -mypy == 1.5.0 # For unit test +mypy == 1.5.1 # For unit test ruff == 0.0.285 # For unit test From 19c0fb379c070329c0e60e347a8b41179833140d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 9 Sep 2023 07:01:58 +0900 Subject: [PATCH 019/312] Bump actions/checkout from 3 to 4 (#900) Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- .github/workflows/Windows_CI.yml | 2 +- .github/workflows/codeql.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index a152972753..b9a102c714 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -17,7 +17,7 @@ jobs: name: Python ${{ matrix.python-version }} CI steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: git fetch --prune --unshallow - name: Setup python diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index c8bfbbcb7e..2acabd8b44 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -19,7 +19,7 @@ jobs: python-version: [ '3.11' ] name: Python ${{ matrix.python-version }} CI steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: git fetch --prune --unshallow - name: Update bash diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index 13fdcea8a1..3df2e6265b 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -19,7 +19,7 @@ jobs: python-version: [ '3.11' ] name: Python ${{ matrix.python-version }} CI steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: git fetch --prune --unshallow - name: Setup python diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index d33545c90f..d3e888f09e 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -16,7 +16,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: # We must fetch at least the immediate parents so that if this is # a pull request then we can checkout the head. From 4b3544e74ddfd20107de280295e799e0b0385433 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Sep 2023 15:55:49 +0900 Subject: [PATCH 020/312] Bump pytest from 7.4.0 to 7.4.1 in /requirements (#901) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.0 to 7.4.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.0...7.4.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a0eb41aa73..b0d3e4d4f0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.25.2 scipy == 1.11.2 matplotlib == 3.7.2 cvxpy == 1.3.2 -pytest == 7.4.0 # For unit test +pytest == 7.4.1 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test ruff == 0.0.285 # For unit test From c9145d348c68be78acb2652ec83587ce90d4a51f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Sep 2023 20:38:43 +0900 Subject: [PATCH 021/312] Bump ruff from 0.0.285 to 0.0.287 in /requirements (#902) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.285 to 0.0.287. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.285...v0.0.287) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b0d3e4d4f0..e4792a31bf 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.1 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.285 # For unit test +ruff == 0.0.287 # For unit test From 8a427a92abc7fe241dd67f69d17c80c54cd272c2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Sep 2023 07:35:26 +0900 Subject: [PATCH 022/312] Bump ruff from 0.0.287 to 0.0.288 in /requirements (#905) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.287 to 0.0.288. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.287...v0.0.288) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e4792a31bf..9eeb1f024f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.1 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.287 # For unit test +ruff == 0.0.288 # For unit test From 8956c67c21055b9a2c44c1e0d3d20b194e4dfd95 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 13 Sep 2023 17:33:46 +0900 Subject: [PATCH 023/312] Bump pytest from 7.4.1 to 7.4.2 in /requirements (#904) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.1 to 7.4.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.1...7.4.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9eeb1f024f..0c616fc6d3 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.25.2 scipy == 1.11.2 matplotlib == 3.7.2 cvxpy == 1.3.2 -pytest == 7.4.1 # For unit test +pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test ruff == 0.0.288 # For unit test From 644d70d0fa3d83ae4434725ff0f82b4f7d4ec46f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Sep 2023 06:51:53 +0900 Subject: [PATCH 024/312] Bump ruff from 0.0.288 to 0.0.290 in /requirements (#908) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.288 to 0.0.290. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.288...v0.0.290) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0c616fc6d3..6392fd2c33 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.288 # For unit test +ruff == 0.0.290 # For unit test From ba09b4dd90fc49d8873771782c7dc82f0a213534 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Sep 2023 06:59:38 +0900 Subject: [PATCH 025/312] Bump matplotlib from 3.7.2 to 3.8.0 in /requirements (#909) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.7.2 to 3.8.0. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.7.2...v3.8.0) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6392fd2c33..d1c0592e14 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.25.2 scipy == 1.11.2 -matplotlib == 3.7.2 +matplotlib == 3.8.0 cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test From a7513699bf7f6f3d6112e48464deddf7e8c22f68 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Sep 2023 12:36:29 +0900 Subject: [PATCH 026/312] Bump numpy from 1.25.2 to 1.26.0 in /requirements (#910) Bumps [numpy](https://github.com/numpy/numpy) from 1.25.2 to 1.26.0. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.25.2...v1.26.0) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d1c0592e14..836f8b0f54 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.25.2 +numpy == 1.26.0 scipy == 1.11.2 matplotlib == 3.8.0 cvxpy == 1.3.2 From 57ee946537a13af397bafbe8cf54507988006873 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 27 Sep 2023 20:23:08 +0900 Subject: [PATCH 027/312] Bump ruff from 0.0.290 to 0.0.291 in /requirements (#911) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.290 to 0.0.291. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.290...v0.0.291) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 836f8b0f54..d983e22916 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.290 # For unit test +ruff == 0.0.291 # For unit test From 6a765964409bb3f449d94bd55eb0dd8998730c71 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 21:36:37 +0900 Subject: [PATCH 028/312] Bump scipy from 1.11.2 to 1.11.3 in /requirements (#914) Bumps [scipy](https://github.com/scipy/scipy) from 1.11.2 to 1.11.3. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.11.2...v1.11.3) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d983e22916..b67f904ea5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.0 -scipy == 1.11.2 +scipy == 1.11.3 matplotlib == 3.8.0 cvxpy == 1.3.2 pytest == 7.4.2 # For unit test From 2c4d74507777993d44cbb33e238689d776221243 Mon Sep 17 00:00:00 2001 From: Yuki Onishi Date: Sun, 15 Oct 2023 10:25:22 +0900 Subject: [PATCH 029/312] Revert a parameter in grid_based_sweep_coverage_path_planner to correct (#917) the planning results --- .../grid_based_sweep_coverage_path_planner.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py index ee192e9200..10ba98cd35 100644 --- a/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py +++ b/PathPlanning/GridBasedSweepCPP/grid_based_sweep_coverage_path_planner.py @@ -50,7 +50,7 @@ def move_target_grid(self, c_x_index, c_y_index, grid_map): # moving backward next_c_x_index = -self.moving_direction + c_x_index next_c_y_index = c_y_index - if self.check_occupied(next_c_x_index, next_c_y_index, grid_map): + if self.check_occupied(next_c_x_index, next_c_y_index, grid_map, FloatGrid(1.0)): # moved backward, but the grid is occupied by obstacle return None, None else: @@ -61,8 +61,8 @@ def move_target_grid(self, c_x_index, c_y_index, grid_map): return next_c_x_index, next_c_y_index @staticmethod - def check_occupied(c_x_index, c_y_index, grid_map): - return grid_map.check_occupied_from_xy_index(c_x_index, c_y_index, FloatGrid(0.5)) + def check_occupied(c_x_index, c_y_index, grid_map, occupied_val=FloatGrid(0.5)): + return grid_map.check_occupied_from_xy_index(c_x_index, c_y_index, occupied_val) def find_safe_turning_grid(self, c_x_index, c_y_index, grid_map): From 5eed0ec1a6a8751e448a476c950f7342d864510d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 15 Oct 2023 15:34:15 +0900 Subject: [PATCH 030/312] Bump ruff from 0.0.291 to 0.0.292 in /requirements (#913) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.291 to 0.0.292. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.291...v0.0.292) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b67f904ea5..cd38b9cff7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.291 # For unit test +ruff == 0.0.292 # For unit test From 4adb77dcf71d3dced8e152f861106de1d192adf6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 21:25:55 +0900 Subject: [PATCH 031/312] Bump ruff from 0.0.292 to 0.1.0 in /requirements (#920) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.292 to 0.1.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.0.292...v0.1.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cd38b9cff7..acc76577c8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.3.2 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.0.292 # For unit test +ruff == 0.1.0 # For unit test From 38a8be94bab0baa900a82fafa774b196bd4f1396 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 21:26:26 +0900 Subject: [PATCH 032/312] Bump numpy from 1.26.0 to 1.26.1 in /requirements (#922) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.0 to 1.26.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.0...v1.26.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index acc76577c8..a5875a67ec 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.0 +numpy == 1.26.1 scipy == 1.11.3 matplotlib == 3.8.0 cvxpy == 1.3.2 From 8f1306ac01055743a456b08cf2e0032f1942f96c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 22:01:34 +0900 Subject: [PATCH 033/312] Bump cvxpy from 1.3.2 to 1.4.1 in /requirements (#923) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.3.2 to 1.4.1. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.3.2...v1.4.1) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a5875a67ec..46ad6feb23 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.1 scipy == 1.11.3 matplotlib == 3.8.0 -cvxpy == 1.3.2 +cvxpy == 1.4.1 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test From d0ff8cc165ce97c473e090e78003a8e5703a7b6d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Oct 2023 20:15:46 +0900 Subject: [PATCH 034/312] Bump ruff from 0.1.0 to 0.1.1 in /requirements (#926) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.0 to 0.1.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.0...v0.1.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 46ad6feb23..0bda50edc0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.5.1 # For unit test -ruff == 0.1.0 # For unit test +ruff == 0.1.1 # For unit test From bde8bda7536449522f3f2bfaa200a450dff41c92 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Oct 2023 23:01:04 +0900 Subject: [PATCH 035/312] Bump mypy from 1.5.1 to 1.6.1 in /requirements (#924) Bumps [mypy](https://github.com/python/mypy) from 1.5.1 to 1.6.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.5.1...v1.6.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0bda50edc0..1a89183ba6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.0 cvxpy == 1.4.1 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test -mypy == 1.5.1 # For unit test +mypy == 1.6.1 # For unit test ruff == 0.1.1 # For unit test From 3a8d93b2a54928d258362b34b31fd8adf04a7d05 Mon Sep 17 00:00:00 2001 From: Jeff Irion Date: Wed, 25 Oct 2023 07:02:14 -0700 Subject: [PATCH 036/312] Fix SE(2) inverse (#925) * Fix SE(2) inverse * Add missing ] --- SLAM/GraphBasedSLAM/graphslam/pose/se2.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SLAM/GraphBasedSLAM/graphslam/pose/se2.py b/SLAM/GraphBasedSLAM/graphslam/pose/se2.py index e89317a06f..2a32e765f7 100644 --- a/SLAM/GraphBasedSLAM/graphslam/pose/se2.py +++ b/SLAM/GraphBasedSLAM/graphslam/pose/se2.py @@ -136,8 +136,8 @@ def inverse(self): """ return PoseSE2([-self[0] * np.cos(self[2]) - self[1] * np.sin(self[2]), - self[0] * np.sin(self[2]) - self[1] * np.cos( - [self[2]])], -self[2]) + self[0] * np.sin(self[2]) - self[1] * np.cos(self[2])], + -self[2]) # ======================================================================= # # # From f374393b551b781f9c9564bd8b0e273342c8e3a0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 31 Oct 2023 20:55:50 +0900 Subject: [PATCH 037/312] Bump ruff from 0.1.1 to 0.1.3 in /requirements (#928) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.1 to 0.1.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.1...v0.1.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1a89183ba6..26a481cbe8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.2 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.6.1 # For unit test -ruff == 0.1.1 # For unit test +ruff == 0.1.3 # For unit test From fc3ec3cd66f64fc889c3382c4ae41aca26adaf4e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 Nov 2023 08:38:39 +0900 Subject: [PATCH 038/312] Bump pytest from 7.4.2 to 7.4.3 in /requirements (#929) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.2 to 7.4.3. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.2...7.4.3) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 26a481cbe8..4335e42aca 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.1 scipy == 1.11.3 matplotlib == 3.8.0 cvxpy == 1.4.1 -pytest == 7.4.2 # For unit test +pytest == 7.4.3 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.6.1 # For unit test ruff == 0.1.3 # For unit test From 8be35b6e70aeb466efcfc76f480a9d734f92f34d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Nov 2023 07:03:23 +0900 Subject: [PATCH 039/312] Bump matplotlib from 3.8.0 to 3.8.1 in /requirements (#931) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.8.0 to 3.8.1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.8.0...v3.8.1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 4335e42aca..3515fbdf9f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.1 scipy == 1.11.3 -matplotlib == 3.8.0 +matplotlib == 3.8.1 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.3.1 # For unit test From dcf8eded0647e1f6d8695cbf98fae690e29fa6df Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Nov 2023 08:15:50 +0900 Subject: [PATCH 040/312] Bump ruff from 0.1.3 to 0.1.4 in /requirements (#932) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.3 to 0.1.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.3...v0.1.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3515fbdf9f..e65db6c92a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.3.1 # For unit test mypy == 1.6.1 # For unit test -ruff == 0.1.3 # For unit test +ruff == 0.1.4 # For unit test From 9eac2c6f2acc63925085242d9bf895b0084fad3b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Nov 2023 21:40:32 +0900 Subject: [PATCH 041/312] Bump pytest-xdist from 3.3.1 to 3.4.0 in /requirements (#933) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.3.1 to 3.4.0. - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.3.1...v3.4.0) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e65db6c92a..6f7253b4a7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.11.3 matplotlib == 3.8.1 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test -pytest-xdist == 3.3.1 # For unit test +pytest-xdist == 3.4.0 # For unit test mypy == 1.6.1 # For unit test ruff == 0.1.4 # For unit test From 3fa8f3e56cf5c742ec19548167bde266ee5e7aa8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 13:18:18 +0900 Subject: [PATCH 042/312] Bump numpy from 1.26.1 to 1.26.2 in /requirements (#934) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.1 to 1.26.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.1...v1.26.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6f7253b4a7..f8439d2eb7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.1 +numpy == 1.26.2 scipy == 1.11.3 matplotlib == 3.8.1 cvxpy == 1.4.1 From 58df4be95f7ad4fa67b70cac657fcc2c07e85756 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 14:57:46 +0900 Subject: [PATCH 043/312] Bump mypy from 1.6.1 to 1.7.0 in /requirements (#936) Bumps [mypy](https://github.com/python/mypy) from 1.6.1 to 1.7.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.6.1...v1.7.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f8439d2eb7..f6e237366f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.1 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.4.0 # For unit test -mypy == 1.6.1 # For unit test +mypy == 1.7.0 # For unit test ruff == 0.1.4 # For unit test From f7dadb8157cd8ecebb2ef3eeb2e8dc1ae5bfb664 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 17:08:33 +0900 Subject: [PATCH 044/312] Bump ruff from 0.1.4 to 0.1.5 in /requirements (#935) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.4 to 0.1.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.4...v0.1.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f6e237366f..a17a6bc7cb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.4.0 # For unit test mypy == 1.7.0 # For unit test -ruff == 0.1.4 # For unit test +ruff == 0.1.5 # For unit test From f5f0253e14e97856f4f6d4016cf4864fce8d46bb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Nov 2023 12:57:31 +0900 Subject: [PATCH 045/312] Bump scipy from 1.11.3 to 1.11.4 in /requirements (#938) Bumps [scipy](https://github.com/scipy/scipy) from 1.11.3 to 1.11.4. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.11.3...v1.11.4) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a17a6bc7cb..3fcdd9ad19 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.2 -scipy == 1.11.3 +scipy == 1.11.4 matplotlib == 3.8.1 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test From df932b0eb25349fd43f28c1f28a92616b9e709b8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Nov 2023 18:59:57 +0900 Subject: [PATCH 046/312] Bump matplotlib from 3.8.1 to 3.8.2 in /requirements (#940) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.8.1 to 3.8.2. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.8.1...v3.8.2) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3fcdd9ad19..788e900d13 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.2 scipy == 1.11.4 -matplotlib == 3.8.1 +matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.4.0 # For unit test From 9093d709b5ff74c085f50ab3a1d57928ee6a5b13 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Nov 2023 19:52:11 +0900 Subject: [PATCH 047/312] Bump ruff from 0.1.5 to 0.1.6 in /requirements (#939) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.5 to 0.1.6. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.5...v0.1.6) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 788e900d13..b3b8509b68 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.4.0 # For unit test mypy == 1.7.0 # For unit test -ruff == 0.1.5 # For unit test +ruff == 0.1.6 # For unit test From 0dc6ab42bab4d3e2fb06fc25d86b1abe41d4da2a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Nov 2023 19:59:15 +0900 Subject: [PATCH 048/312] Bump pytest-xdist from 3.4.0 to 3.5.0 in /requirements (#942) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.4.0 to 3.5.0. - [Release notes](https://github.com/pytest-dev/pytest-xdist/releases) - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.4.0...v3.5.0) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b3b8509b68..afc244c1a1 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.11.4 matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test -pytest-xdist == 3.4.0 # For unit test +pytest-xdist == 3.5.0 # For unit test mypy == 1.7.0 # For unit test ruff == 0.1.6 # For unit test From e9ae79f9204df88e768de39443781a208d66ecd5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 3 Dec 2023 21:01:12 +0900 Subject: [PATCH 049/312] Bump mypy from 1.7.0 to 1.7.1 in /requirements (#943) Bumps [mypy](https://github.com/python/mypy) from 1.7.0 to 1.7.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.7.0...v1.7.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index afc244c1a1..f073524c51 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test -mypy == 1.7.0 # For unit test +mypy == 1.7.1 # For unit test ruff == 0.1.6 # For unit test From 5676da661f09d08fb0ef188f31f71f17be0ab44a Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:23:50 +0900 Subject: [PATCH 050/312] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index f2630df162..42ec54f4e1 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -25,8 +25,7 @@ jobs: uses: sphinx-notes/pages@v3 with: requirements_path: ./docs/doc_requirements.txt - - name: Push changes - uses: ad-m/github-push-action@master - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - branch: gh-pages + - name: Deploy GitHub Pages site + id: deployment + uses: actions/deploy-pages@main + From 7585316933cee2febfc0a2cd68a13336020adbbc Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:35:30 +0900 Subject: [PATCH 051/312] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 42ec54f4e1..17fa1d76ca 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -6,6 +6,9 @@ on: jobs: build: runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} permissions: id-token: write pages: write @@ -25,7 +28,9 @@ jobs: uses: sphinx-notes/pages@v3 with: requirements_path: ./docs/doc_requirements.txt - - name: Deploy GitHub Pages site - id: deployment - uses: actions/deploy-pages@main + - name: Push changes + uses: ad-m/github-push-action@master + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + branch: gh-pages From 6dca76ac4b566958080dac7f87f44b15e44a84aa Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:41:48 +0900 Subject: [PATCH 052/312] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 17fa1d76ca..c50a9f1865 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -1,4 +1,4 @@ -name: Pages +name: GitHub Pages update on: push: branches: From 467f27d178f05474b619f841a93b027707b421ac Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:46:56 +0900 Subject: [PATCH 053/312] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index c50a9f1865..ccc0f5a835 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -1,4 +1,4 @@ -name: GitHub Pages update +name: GitHub Pages site update on: push: branches: From ef287d7a857c52a3f34e7b86765c3467858ad2b6 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:53:12 +0900 Subject: [PATCH 054/312] Update gh-pages.yml --- .github/workflows/gh-pages.yml | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index ccc0f5a835..d2c7847807 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -24,13 +24,7 @@ jobs: python --version python -m pip install --upgrade pip python -m pip install -r requirements/requirements.txt - - name: Build and Commit + - name: Build and Deploy uses: sphinx-notes/pages@v3 with: - requirements_path: ./docs/doc_requirements.txt - - name: Push changes - uses: ad-m/github-push-action@master - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - branch: gh-pages - + requirements_path: ./docs/doc_requirements.txt From 331f0877f6ade42901c0762fee41abcce83c7e29 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 3 Dec 2023 21:56:04 +0900 Subject: [PATCH 055/312] Update copyright for doc update test --- docs/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/conf.py b/docs/conf.py index df9b8fce22..46f69cf17b 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -19,7 +19,7 @@ # -- Project information ----------------------------------------------------- project = 'PythonRobotics' -copyright = '2018-2021, Atsushi Sakai' +copyright = '2018-2023, Atsushi Sakai' author = 'Atsushi Sakai' # The short X.Y version From a141cf41807c508e58691c3c42919387e5ff9ded Mon Sep 17 00:00:00 2001 From: Fabiha Tasneem <55595104+fabihatasneem@users.noreply.github.com> Date: Sun, 3 Dec 2023 19:12:00 +0600 Subject: [PATCH 056/312] Fixed Inappropriate Logical Expression (#945) --- .../arm_obstacle_navigation/arm_obstacle_navigation_2.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py index 40e6746bfc..591cd401eb 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py @@ -34,7 +34,7 @@ def main(): goal = (58, 56) grid = get_occupancy_grid(arm, obstacles) route = astar_torus(grid, start, goal) - if len(route) >= 0: + if route: animate(grid, arm, route) From ff66f3babe27d1ae3775f594ffd05264ca173d6a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Dec 2023 22:34:49 +0900 Subject: [PATCH 057/312] Bump actions/setup-python from 4 to 5 (#951) Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- .github/workflows/Windows_CI.yml | 2 +- .github/workflows/gh-pages.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index b9a102c714..b83954f17e 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -21,7 +21,7 @@ jobs: - run: git fetch --prune --unshallow - name: Setup python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index 2acabd8b44..19c6612b2f 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -26,7 +26,7 @@ jobs: run: brew install bash - name: Setup python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index 3df2e6265b..906edcfcdb 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -23,7 +23,7 @@ jobs: - run: git fetch --prune --unshallow - name: Setup python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index d2c7847807..e08c6106c0 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -14,7 +14,7 @@ jobs: pages: write steps: - name: Setup python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 - name: Checkout uses: actions/checkout@master with: From d25fb355f3c7a1d1e2ee895d009d0d639a37c18b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Dec 2023 22:35:02 +0900 Subject: [PATCH 058/312] Bump ruff from 0.1.6 to 0.1.7 in /requirements (#952) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.6 to 0.1.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.6...v0.1.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f073524c51..2c2a6d47ff 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.7.1 # For unit test -ruff == 0.1.6 # For unit test +ruff == 0.1.7 # For unit test From 313ce196215f2625c1f6b20e49722b51631bdb37 Mon Sep 17 00:00:00 2001 From: Xavier Dias <93143666+Xavi007@users.noreply.github.com> Date: Mon, 18 Dec 2023 05:42:47 +0530 Subject: [PATCH 059/312] Xavi007: #903 There's an error in the transformation_matrix of Quadrotor renamed "yaw" to "roll" (#906) --- AerialNavigation/drone_3d_trajectory_following/Quadrotor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AerialNavigation/drone_3d_trajectory_following/Quadrotor.py b/AerialNavigation/drone_3d_trajectory_following/Quadrotor.py index 413a8625a5..c379e5eda0 100644 --- a/AerialNavigation/drone_3d_trajectory_following/Quadrotor.py +++ b/AerialNavigation/drone_3d_trajectory_following/Quadrotor.py @@ -56,7 +56,7 @@ def transformation_matrix(self): [[cos(yaw) * cos(pitch), -sin(yaw) * cos(roll) + cos(yaw) * sin(pitch) * sin(roll), sin(yaw) * sin(roll) + cos(yaw) * sin(pitch) * cos(roll), x], [sin(yaw) * cos(pitch), cos(yaw) * cos(roll) + sin(yaw) * sin(pitch) * sin(roll), -cos(yaw) * sin(roll) + sin(yaw) * sin(pitch) * cos(roll), y], - [-sin(pitch), cos(pitch) * sin(roll), cos(pitch) * cos(yaw), z] + [-sin(pitch), cos(pitch) * sin(roll), cos(pitch) * cos(roll), z] ]) def plot(self): # pragma: no cover From 3efbc94f9cb5532b7a046d4fe79d3fe62dc18bd4 Mon Sep 17 00:00:00 2001 From: flyingmars <55879494+2892510130@users.noreply.github.com> Date: Mon, 18 Dec 2023 21:53:03 +0800 Subject: [PATCH 060/312] fix d_star (#898) --- PathPlanning/DStar/dstar.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/PathPlanning/DStar/dstar.py b/PathPlanning/DStar/dstar.py index f8954d776c..cc1d88ed66 100644 --- a/PathPlanning/DStar/dstar.py +++ b/PathPlanning/DStar/dstar.py @@ -9,6 +9,7 @@ """ import math + from sys import maxsize import matplotlib.pyplot as plt @@ -103,7 +104,7 @@ def process_state(self): if y.h <= k_old and x.h > y.h + x.cost(y): x.parent = y x.h = y.h + x.cost(y) - elif k_old == x.h: + if k_old == x.h: for y in self.map.get_neighbors(x): if y.t == "new" or y.parent == x and y.h != x.h + x.cost(y) \ or y.parent != x and y.h > x.h + x.cost(y): @@ -116,7 +117,7 @@ def process_state(self): self.insert(y, x.h + x.cost(y)) else: if y.parent != x and y.h > x.h + x.cost(y): - self.insert(y, x.h) + self.insert(x, x.h) else: if y.parent != x and x.h > y.h + x.cost(y) \ and y.t == "close" and y.h > k_old: @@ -173,6 +174,8 @@ def run(self, start, end): s.set_state("e") tmp = start + AddNewObstacle(self.map) # add new obstacle after the first search finished + while tmp != end: tmp.set_state("*") rx.append(tmp.x) @@ -195,6 +198,15 @@ def modify(self, state): if k_min >= state.h: break +def AddNewObstacle(map:Map): + ox, oy = [], [] + for i in range(5, 21): + ox.append(i) + oy.append(40) + map.set_obstacle([(i, j) for i, j in zip(ox, oy)]) + if show_animation: + plt.pause(0.001) + plt.plot(ox, oy, ".g") def main(): m = Map(100, 100) @@ -217,7 +229,6 @@ def main(): for i in range(0, 40): ox.append(40) oy.append(60 - i) - print([(i, j) for i, j in zip(ox, oy)]) m.set_obstacle([(i, j) for i, j in zip(ox, oy)]) start = [10, 10] @@ -234,7 +245,7 @@ def main(): rx, ry = dstar.run(start, end) if show_animation: - plt.plot(rx, ry, "-r") + # plt.plot(rx, ry, "-r") plt.show() From 1801cd0dfff86de899285d02f4a1593d2df970e9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Dec 2023 07:04:43 +0900 Subject: [PATCH 061/312] Bump github/codeql-action from 2 to 3 (#955) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/v2...v3) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index d3e888f09e..878a4a4435 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -24,7 +24,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@v2 + uses: github/codeql-action/init@v3 with: config-file: ./.github/codeql/codeql-config.yml # Override language selection by uncommenting this and choosing your languages @@ -34,7 +34,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@v2 + uses: github/codeql-action/autobuild@v3 # ℹ️ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -48,4 +48,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 + uses: github/codeql-action/analyze@v3 From 7cca7aa6ac4c6d66cbb46011cc642b2543e5756e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Dec 2023 07:05:11 +0900 Subject: [PATCH 062/312] Bump ruff from 0.1.7 to 0.1.8 in /requirements (#956) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.7 to 0.1.8. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.7...v0.1.8) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2c2a6d47ff..68d8b2dcff 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.7.1 # For unit test -ruff == 0.1.7 # For unit test +ruff == 0.1.8 # For unit test From b2f866a5cd7bbf3f70c9c247e13f19d4a8858c92 Mon Sep 17 00:00:00 2001 From: Nivid Patel <66813410+nivid26@users.noreply.github.com> Date: Tue, 19 Dec 2023 08:03:55 -0500 Subject: [PATCH 063/312] Update car.py (#957) Changed comment at line 62 and 64 --- PathPlanning/HybridAStar/car.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/PathPlanning/HybridAStar/car.py b/PathPlanning/HybridAStar/car.py index 0367ab2775..d7631133c7 100644 --- a/PathPlanning/HybridAStar/car.py +++ b/PathPlanning/HybridAStar/car.py @@ -59,9 +59,9 @@ def rectangle_check(x, y, yaw, ox, oy): rx, ry = converted_xy[0], converted_xy[1] if not (rx > LF or rx < -LB or ry > W / 2.0 or ry < -W / 2.0): - return False # no collision + return False # collision - return True # collision + return True # no collision def plot_arrow(x, y, yaw, length=1.0, width=0.5, fc="r", ec="k"): From e3f7979c3c08de87d702e1d2006ffb55440514a5 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 22 Dec 2023 12:13:59 +0900 Subject: [PATCH 064/312] Update dstar.py (#959) --- PathPlanning/DStar/dstar.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/DStar/dstar.py b/PathPlanning/DStar/dstar.py index cc1d88ed66..b62b939f54 100644 --- a/PathPlanning/DStar/dstar.py +++ b/PathPlanning/DStar/dstar.py @@ -245,7 +245,7 @@ def main(): rx, ry = dstar.run(start, end) if show_animation: - # plt.plot(rx, ry, "-r") + plt.plot(rx, ry, "-r") plt.show() From 87b3aacb8b41e1924319eaae85ef88c39e3062b1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Dec 2023 23:36:29 +0900 Subject: [PATCH 065/312] Bump mypy from 1.7.1 to 1.8.0 in /requirements (#960) Bumps [mypy](https://github.com/python/mypy) from 1.7.1 to 1.8.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.7.1...v1.8.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 68d8b2dcff..ae1aa2d749 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test -mypy == 1.7.1 # For unit test +mypy == 1.8.0 # For unit test ruff == 0.1.8 # For unit test From 748b9be4e76fa2f0d55b507a30bb578b74d6c921 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 27 Dec 2023 08:33:04 +0900 Subject: [PATCH 066/312] Bump ruff from 0.1.8 to 0.1.9 in /requirements (#961) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.8 to 0.1.9. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.8...v0.1.9) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ae1aa2d749..bb78ed4d2f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.3 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.8 # For unit test +ruff == 0.1.9 # For unit test From cc3fd0c55e8df8637ffa1753c6a3d973db9ed2a1 Mon Sep 17 00:00:00 2001 From: Videh Patel <66770479+videh25@users.noreply.github.com> Date: Tue, 2 Jan 2024 19:09:48 +0530 Subject: [PATCH 067/312] Using util.angle_mod in all codes. #684 (#946) * switched to using utils.angle_mod() * switched to using utils.angle_mod() * renamed mod2pi to pi_2_pi * Removed linting errors * switched to using utils.angle_mod() * switched to using utils.angle_mod() * renamed mod2pi to pi_2_pi * Removed linting errors * annotation changes and round precision * Reverted to mod2pi --------- Co-authored-by: Videh Patel --- .../n_joint_arm_to_point_control.py | 5 ++-- .../two_joint_arm_to_point_control.py | 3 ++- Control/move_to_pose/move_to_pose.py | 19 +++++++-------- .../ensemble_kalman_filter.py | 3 ++- .../ClosedLoopRRTStar/unicycle_model.py | 3 ++- .../motion_model.py | 3 ++- .../trajectory_generator.py | 2 +- .../reeds_shepp_path_planning.py | 9 ++++---- .../lqr_speed_steer_control.py | 4 ++-- .../lqr_steer_control/lqr_steer_control.py | 3 ++- ...odel_predictive_speed_and_steer_control.py | 9 ++------ .../rear_wheel_feedback.py | 23 ++++++++----------- .../stanley_controller/stanley_controller.py | 13 ++++------- SLAM/EKFSLAM/ekf_slam.py | 3 ++- SLAM/FastSLAM1/fast_slam1.py | 3 ++- SLAM/FastSLAM2/fast_slam2.py | 3 ++- SLAM/GraphBasedSLAM/graph_based_slam.py | 3 ++- 17 files changed, 51 insertions(+), 60 deletions(-) diff --git a/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py b/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py index 498ef41c1f..a237523336 100644 --- a/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py +++ b/ArmNavigation/n_joint_arm_to_point_control/n_joint_arm_to_point_control.py @@ -11,6 +11,7 @@ import numpy as np from ArmNavigation.n_joint_arm_to_point_control.NLinkArm import NLinkArm +from utils.angle import angle_mod # Simulation parameters Kp = 2 @@ -159,9 +160,9 @@ def ang_diff(theta1, theta2): """ Returns the difference between two angles in the range -pi to +pi """ - return (theta1 - theta2 + np.pi) % (2 * np.pi) - np.pi + return angle_mod(theta1 - theta2) if __name__ == '__main__': # main() - animation() \ No newline at end of file + animation() diff --git a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py index 66d0ebeb23..c2227f18e3 100644 --- a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py +++ b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py @@ -15,6 +15,7 @@ import matplotlib.pyplot as plt import numpy as np import math +from utils.angle import angle_mod # Simulation parameters @@ -110,7 +111,7 @@ def plot_arm(theta1, theta2, target_x, target_y): # pragma: no cover def ang_diff(theta1, theta2): # Returns the difference between two angles in the range -pi to +pi - return (theta1 - theta2 + np.pi) % (2 * np.pi) - np.pi + return angle_mod(theta1 - theta2) def click(event): # pragma: no cover diff --git a/Control/move_to_pose/move_to_pose.py b/Control/move_to_pose/move_to_pose.py index 73604ccd7f..cc29666297 100644 --- a/Control/move_to_pose/move_to_pose.py +++ b/Control/move_to_pose/move_to_pose.py @@ -13,7 +13,7 @@ import matplotlib.pyplot as plt import numpy as np from random import random - +from utils.angle import angle_mod class PathFinderController: """ @@ -71,9 +71,8 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): # from 0 rad to 2*pi rad with slight turn rho = np.hypot(x_diff, y_diff) - alpha = (np.arctan2(y_diff, x_diff) - - theta + np.pi) % (2 * np.pi) - np.pi - beta = (theta_goal - theta - alpha + np.pi) % (2 * np.pi) - np.pi + alpha = angle_mod(np.arctan2(y_diff, x_diff) - theta) + beta = angle_mod(theta_goal - theta - alpha) v = self.Kp_rho * rho w = self.Kp_alpha * alpha - controller.Kp_beta * beta @@ -173,16 +172,14 @@ def transformation_matrix(x, y, theta): def main(): for i in range(5): - x_start = 20 * random() - y_start = 20 * random() - theta_start = 2 * np.pi * random() - np.pi + x_start = 20.0 * random() + y_start = 20.0 * random() + theta_start: float = 2 * np.pi * random() - np.pi x_goal = 20 * random() y_goal = 20 * random() theta_goal = 2 * np.pi * random() - np.pi - print("Initial x: %.2f m\nInitial y: %.2f m\nInitial theta: %.2f rad\n" % - (x_start, y_start, theta_start)) - print("Goal x: %.2f m\nGoal y: %.2f m\nGoal theta: %.2f rad\n" % - (x_goal, y_goal, theta_goal)) + print(f"Initial x: {round(x_start, 2)} m\nInitial y: {round(y_start, 2)} m\nInitial theta: {round(theta_start, 2)} rad\n") + print(f"Goal x: {round(x_goal, 2)} m\nGoal y: {round(y_goal, 2)} m\nGoal theta: {round(theta_goal, 2)} rad\n") move_to_pose(x_start, y_start, theta_start, x_goal, y_goal, theta_goal) diff --git a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py index fc8280e7bf..2bab3b49c1 100644 --- a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py +++ b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py @@ -16,6 +16,7 @@ import math import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod from utils.angle import rot_mat_2d @@ -179,7 +180,7 @@ def plot_covariance_ellipse(xEst, PEst): # pragma: no cover def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): diff --git a/PathPlanning/ClosedLoopRRTStar/unicycle_model.py b/PathPlanning/ClosedLoopRRTStar/unicycle_model.py index 5a0fd17a4e..c05f76c84e 100644 --- a/PathPlanning/ClosedLoopRRTStar/unicycle_model.py +++ b/PathPlanning/ClosedLoopRRTStar/unicycle_model.py @@ -8,6 +8,7 @@ import math import numpy as np +from utils.angle import angle_mod dt = 0.05 # [s] L = 0.9 # [m] @@ -39,7 +40,7 @@ def update(state, a, delta): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) if __name__ == '__main__': # pragma: no cover diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py index 531bf91ef5..5ef6d2e23f 100644 --- a/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py +++ b/PathPlanning/ModelPredictiveTrajectoryGenerator/motion_model.py @@ -1,6 +1,7 @@ import math import numpy as np from scipy.interpolate import interp1d +from utils.angle import angle_mod # motion parameter L = 1.0 # wheel base @@ -18,7 +19,7 @@ def __init__(self, x=0.0, y=0.0, yaw=0.0, v=0.0): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def update(state, v, delta, dt, L): diff --git a/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py b/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py index 97c0ad8b80..6084fc1a07 100644 --- a/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py +++ b/PathPlanning/ModelPredictiveTrajectoryGenerator/trajectory_generator.py @@ -18,7 +18,7 @@ # optimization parameter max_iter = 100 -h = np.array([0.5, 0.02, 0.02]).T # parameter sampling distance +h: np.ndarray = np.array([0.5, 0.02, 0.02]).T # parameter sampling distance cost_th = 0.1 show_animation = True diff --git a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py index c55d2629e5..4d8fb7d9b8 100644 --- a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py +++ b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py @@ -9,6 +9,7 @@ import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod show_animation = True @@ -40,6 +41,9 @@ def plot_arrow(x, y, yaw, length=1.0, width=0.5, fc="r", ec="k"): plt.plot(x, y) +def pi_2_pi(x): + return angle_mod(x) + def mod2pi(x): # Be consistent with fmod in cplusplus here. v = np.mod(x, np.copysign(2.0 * math.pi, x)) @@ -50,7 +54,6 @@ def mod2pi(x): v -= 2.0 * math.pi return v - def straight_left_straight(x, y, phi): phi = mod2pi(phi) # only take phi in (0.01*math.pi, 0.99*math.pi) for the sake of speed. @@ -296,10 +299,6 @@ def interpolate(dist, length, mode, max_curvature, origin_x, origin_y, return x, y, yaw, 1 if length > 0.0 else -1 -def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi - - def calc_paths(sx, sy, syaw, gx, gy, gyaw, maxc, step_size): q0 = [sx, sy, syaw] q1 = [gx, gy, gyaw] diff --git a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py index 7e57abb80e..a70e30d378 100644 --- a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py +++ b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py @@ -11,6 +11,7 @@ import numpy as np import scipy.linalg as la import pathlib +from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from PathPlanning.CubicSpline import cubic_spline_planner @@ -52,8 +53,7 @@ def update(state, a, delta): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi - + return angle_mod(angle) def solve_dare(A, B, Q, R): """ diff --git a/PathTracking/lqr_steer_control/lqr_steer_control.py b/PathTracking/lqr_steer_control/lqr_steer_control.py index 95a1b92ce5..4078ea56db 100644 --- a/PathTracking/lqr_steer_control/lqr_steer_control.py +++ b/PathTracking/lqr_steer_control/lqr_steer_control.py @@ -11,6 +11,7 @@ import numpy as np import sys import pathlib +from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from PathPlanning.CubicSpline import cubic_spline_planner @@ -61,7 +62,7 @@ def PIDControl(target, current): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def solve_DARE(A, B, Q, R): diff --git a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py index 3015313198..c55018cf26 100644 --- a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py +++ b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py @@ -11,6 +11,7 @@ import numpy as np import sys import pathlib +from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from PathPlanning.CubicSpline import cubic_spline_planner @@ -69,13 +70,7 @@ def __init__(self, x=0.0, y=0.0, yaw=0.0, v=0.0): def pi_2_pi(angle): - while(angle > math.pi): - angle = angle - 2.0 * math.pi - - while(angle < -math.pi): - angle = angle + 2.0 * math.pi - - return angle + return angle_mod(angle) def get_linear_model_matrix(v, phi, delta): diff --git a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py b/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py index ff72454f34..1702bd47dd 100644 --- a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py +++ b/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py @@ -8,6 +8,7 @@ import matplotlib.pyplot as plt import math import numpy as np +from utils.angle import angle_mod from scipy import interpolate from scipy import optimize @@ -51,21 +52,21 @@ def __init__(self, x, y): self.ddY = self.Y.derivative(2) self.length = s[-1] - + def calc_yaw(self, s): dx, dy = self.dX(s), self.dY(s) return np.arctan2(dy, dx) - + def calc_curvature(self, s): dx, dy = self.dX(s), self.dY(s) ddx, ddy = self.ddX(s), self.ddY(s) return (ddy * dx - ddx * dy) / ((dx ** 2 + dy ** 2)**(3 / 2)) - + def __find_nearest_point(self, s0, x, y): def calc_distance(_s, *args): _x, _y= self.X(_s), self.Y(_s) return (_x - args[0])**2 + (_y - args[1])**2 - + def calc_distance_jacobian(_s, *args): _x, _y = self.X(_s), self.Y(_s) _dx, _dy = self.dX(_s), self.dY(_s) @@ -76,7 +77,7 @@ def calc_distance_jacobian(_s, *args): def calc_track_error(self, x, y, s0): ret = self.__find_nearest_point(s0, x, y) - + s = ret[0][0] e = ret[1] @@ -96,13 +97,7 @@ def pid_control(target, current): return a def pi_2_pi(angle): - while(angle > math.pi): - angle = angle - 2.0 * math.pi - - while(angle < -math.pi): - angle = angle + 2.0 * math.pi - - return angle + return angle_mod(angle) def rear_wheel_feedback_control(state, e, k, yaw_ref): v = state.v @@ -170,7 +165,7 @@ def simulate(path_ref, goal): plt.plot(path_ref.X(s0), path_ref.Y(s0), "xg", label="target") plt.axis("equal") plt.grid(True) - plt.title("speed[km/h]:{:.2f}, target s-param:{:.2f}".format(round(state.v * 3.6, 2), s0)) + plt.title(f"speed[km/h]:{round(state.v * 3.6, 2):.2f}, target s-param:{s0:.2f}") plt.pause(0.0001) return t, x, y, yaw, v, goal_flag @@ -184,7 +179,7 @@ def calc_target_speed(state, yaw_ref): if switch: state.direction *= -1 return 0.0 - + if state.direction != 1: return -target_speed diff --git a/PathTracking/stanley_controller/stanley_controller.py b/PathTracking/stanley_controller/stanley_controller.py index 9c475cbaf2..08aa049395 100644 --- a/PathTracking/stanley_controller/stanley_controller.py +++ b/PathTracking/stanley_controller/stanley_controller.py @@ -13,6 +13,7 @@ import matplotlib.pyplot as plt import sys import pathlib +from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from PathPlanning.CubicSpline import cubic_spline_planner @@ -26,7 +27,7 @@ show_animation = True -class State(object): +class State: """ Class representing the state of a vehicle. @@ -38,7 +39,7 @@ class State(object): def __init__(self, x=0.0, y=0.0, yaw=0.0, v=0.0): """Instantiate the object.""" - super(State, self).__init__() + super().__init__() self.x = x self.y = y self.yaw = yaw @@ -106,13 +107,7 @@ def normalize_angle(angle): :param angle: (float) :return: (float) Angle in radian in [-pi, pi] """ - while angle > np.pi: - angle -= 2.0 * np.pi - - while angle < -np.pi: - angle += 2.0 * np.pi - - return angle + return angle_mod(angle) def calc_target_index(state, cx, cy): diff --git a/SLAM/EKFSLAM/ekf_slam.py b/SLAM/EKFSLAM/ekf_slam.py index bb648ce9d9..a624e8765b 100644 --- a/SLAM/EKFSLAM/ekf_slam.py +++ b/SLAM/EKFSLAM/ekf_slam.py @@ -8,6 +8,7 @@ import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod # EKF state covariance Cx = np.diag([0.5, 0.5, np.deg2rad(30.0)]) ** 2 @@ -192,7 +193,7 @@ def jacob_h(q, delta, x, i): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): diff --git a/SLAM/FastSLAM1/fast_slam1.py b/SLAM/FastSLAM1/fast_slam1.py index 7b89f52df4..17f6d5e572 100644 --- a/SLAM/FastSLAM1/fast_slam1.py +++ b/SLAM/FastSLAM1/fast_slam1.py @@ -10,6 +10,7 @@ import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod # Fast SLAM covariance Q = np.diag([3.0, np.deg2rad(10.0)]) ** 2 @@ -321,7 +322,7 @@ def motion_model(x, u): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): diff --git a/SLAM/FastSLAM2/fast_slam2.py b/SLAM/FastSLAM2/fast_slam2.py index aa77aa956a..2b57e3bcc3 100644 --- a/SLAM/FastSLAM2/fast_slam2.py +++ b/SLAM/FastSLAM2/fast_slam2.py @@ -10,6 +10,7 @@ import matplotlib.pyplot as plt import numpy as np +from utils.angle import angle_mod # Fast SLAM covariance Q = np.diag([3.0, np.deg2rad(10.0)]) ** 2 @@ -346,7 +347,7 @@ def motion_model(x, u): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): diff --git a/SLAM/GraphBasedSLAM/graph_based_slam.py b/SLAM/GraphBasedSLAM/graph_based_slam.py index 4d66ef6732..edd20a959c 100644 --- a/SLAM/GraphBasedSLAM/graph_based_slam.py +++ b/SLAM/GraphBasedSLAM/graph_based_slam.py @@ -21,6 +21,7 @@ import matplotlib.pyplot as plt import numpy as np from scipy.spatial.transform import Rotation as Rot +from utils.angle import angle_mod # Simulation parameter Q_sim = np.diag([0.2, np.deg2rad(1.0)]) ** 2 @@ -249,7 +250,7 @@ def motion_model(x, u): def pi_2_pi(angle): - return (angle + math.pi) % (2 * math.pi) - math.pi + return angle_mod(angle) def main(): From 49ae54ab70f1c30ca848fef215bdbc172a8e692a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jan 2024 22:40:08 +0900 Subject: [PATCH 068/312] Bump pytest from 7.4.3 to 7.4.4 in /requirements (#963) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.3 to 7.4.4. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.3...7.4.4) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index bb78ed4d2f..8b3c4c1739 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.2 scipy == 1.11.4 matplotlib == 3.8.2 cvxpy == 1.4.1 -pytest == 7.4.3 # For unit test +pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.1.9 # For unit test From d7060f60289cc0241f3411fea85764fb20f9cac0 Mon Sep 17 00:00:00 2001 From: Videh Patel <66770479+videh25@users.noreply.github.com> Date: Mon, 8 Jan 2024 18:06:49 +0530 Subject: [PATCH 069/312] Reopen: Added missing path types (#949) * added missing RS path types * modified assert condition in test3 * removed linting errors * added sign check to avoid non RS paths * Mathematical description of RS curves * Undid debugging changes * Added large step_size consideration * renamed test3 to test_too_big_step_size --------- Co-authored-by: Videh Patel --- .../reeds_shepp_path_planning.py | 320 +++++++++------ .../path_planning/reeds_shepp_path/LR_L.png | Bin 0 -> 280028 bytes .../path_planning/reeds_shepp_path/LR_LR.png | Bin 0 -> 381584 bytes .../path_planning/reeds_shepp_path/LSL.png | Bin 0 -> 239825 bytes .../reeds_shepp_path/LSL90xR.png | Bin 0 -> 301712 bytes .../path_planning/reeds_shepp_path/LSR.png | Bin 0 -> 257435 bytes .../reeds_shepp_path/LSR90_L.png | Bin 0 -> 339492 bytes .../reeds_shepp_path/L_R90SL.png | Bin 0 -> 316723 bytes .../reeds_shepp_path/L_R90SL90_R.png | Bin 0 -> 335979 bytes .../reeds_shepp_path/L_R90SR.png | Bin 0 -> 291754 bytes .../path_planning/reeds_shepp_path/L_RL.png | Bin 0 -> 277432 bytes .../path_planning/reeds_shepp_path/L_RL_R.png | Bin 0 -> 323010 bytes .../path_planning/reeds_shepp_path/L_R_L.png | Bin 0 -> 271666 bytes .../reeds_shepp_path_main.rst | 375 ++++++++++++++++++ tests/test_rrt_star_reeds_shepp.py | 6 +- 15 files changed, 586 insertions(+), 115 deletions(-) create mode 100644 docs/modules/path_planning/reeds_shepp_path/LR_L.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LR_LR.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LSL.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LSL90xR.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LSR.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/LSR90_L.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_R90SL.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_R90SR.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_RL.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_RL_R.png create mode 100644 docs/modules/path_planning/reeds_shepp_path/L_R_L.png diff --git a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py index 4d8fb7d9b8..8e134ff38b 100644 --- a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py +++ b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py @@ -3,6 +3,7 @@ Reeds Shepp path planner sample code author Atsushi Sakai(@Atsushi_twi) +co-author Videh Patel(@videh25) : Added the missing RS paths """ import math @@ -54,21 +55,6 @@ def mod2pi(x): v -= 2.0 * math.pi return v -def straight_left_straight(x, y, phi): - phi = mod2pi(phi) - # only take phi in (0.01*math.pi, 0.99*math.pi) for the sake of speed. - # phi in (0, 0.01*math.pi) will make test2() in test_rrt_star_reeds_shepp.py - # extremely time-consuming, since the value of xd, t will be very large. - if math.pi * 0.01 < phi < math.pi * 0.99 and y != 0: - xd = - y / math.tan(phi) + x - t = xd - math.tan(phi / 2.0) - u = phi - v = np.sign(y) * math.hypot(x - xd, y) - math.tan(phi / 2.0) - return True, t, u, v - - return False, 0.0, 0.0, 0.0 - - def set_path(paths, lengths, ctypes, step_size): path = Path() path.ctypes = ctypes @@ -90,18 +76,6 @@ def set_path(paths, lengths, ctypes, step_size): return paths -def straight_curve_straight(x, y, phi, paths, step_size): - flag, t, u, v = straight_left_straight(x, y, phi) - if flag: - paths = set_path(paths, [t, u, v], ["S", "L", "S"], step_size) - - flag, t, u, v = straight_left_straight(x, -y, -phi) - if flag: - paths = set_path(paths, [t, u, v], ["S", "R", "S"], step_size) - - return paths - - def polar(x, y): r = math.hypot(x, y) theta = math.atan2(y, x) @@ -110,117 +84,200 @@ def polar(x, y): def left_straight_left(x, y, phi): u, t = polar(x - math.sin(phi), y - 1.0 + math.cos(phi)) - if t >= 0.0: + if 0.0 <= t <= math.pi: v = mod2pi(phi - t) - if v >= 0.0: - return True, t, u, v + if 0.0 <= v <= math.pi: + return True, [t, u, v], ['L', 'S', 'L'] + + return False, [], [] + + +def left_straight_right(x, y, phi): + u1, t1 = polar(x + math.sin(phi), y - 1.0 - math.cos(phi)) + u1 = u1 ** 2 + if u1 >= 4.0: + u = math.sqrt(u1 - 4.0) + theta = math.atan2(2.0, u) + t = mod2pi(t1 + theta) + v = mod2pi(t - phi) + + if (t >= 0.0) and (v >= 0.0): + return True, [t, u, v], ['L', 'S', 'R'] - return False, 0.0, 0.0, 0.0 + return False, [], [] -def left_right_left(x, y, phi): - u1, t1 = polar(x - math.sin(phi), y - 1.0 + math.cos(phi)) +def left_x_right_x_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) if u1 <= 4.0: - u = -2.0 * math.asin(0.25 * u1) - t = mod2pi(t1 + 0.5 * u + math.pi) - v = mod2pi(phi - t + u) + A = math.acos(0.25 * u1) + t = mod2pi(A + theta + math.pi/2) + u = mod2pi(math.pi - 2 * A) + v = mod2pi(phi - t - u) + return True, [t, -u, v], ['L', 'R', 'L'] - if t >= 0.0 >= u: - return True, t, u, v + return False, [], [] - return False, 0.0, 0.0, 0.0 +def left_x_right_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) -def curve_curve_curve(x, y, phi, paths, step_size): - flag, t, u, v = left_right_left(x, y, phi) - if flag: - paths = set_path(paths, [t, u, v], ["L", "R", "L"], step_size) + if u1 <= 4.0: + A = math.acos(0.25 * u1) + t = mod2pi(A + theta + math.pi/2) + u = mod2pi(math.pi - 2*A) + v = mod2pi(-phi + t + u) + return True, [t, -u, -v], ['L', 'R', 'L'] - flag, t, u, v = left_right_left(-x, y, -phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["L", "R", "L"], step_size) + return False, [], [] - flag, t, u, v = left_right_left(x, -y, -phi) - if flag: - paths = set_path(paths, [t, u, v], ["R", "L", "R"], step_size) - flag, t, u, v = left_right_left(-x, -y, phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["R", "L", "R"], step_size) +def left_right_x_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) - # backwards - xb = x * math.cos(phi) + y * math.sin(phi) - yb = x * math.sin(phi) - y * math.cos(phi) + if u1 <= 4.0: + u = math.acos(1 - u1**2 * 0.125) + A = math.asin(2 * math.sin(u) / u1) + t = mod2pi(-A + theta + math.pi/2) + v = mod2pi(t - u - phi) + return True, [t, u, -v], ['L', 'R', 'L'] + + return False, [], [] + + +def left_right_x_left_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) + + # Solutions refering to (2 < u1 <= 4) are considered sub-optimal in paper + # Solutions do not exist for u1 > 4 + if u1 <= 2: + A = math.acos((u1 + 2) * 0.25) + t = mod2pi(theta + A + math.pi/2) + u = mod2pi(A) + v = mod2pi(phi - t + 2*u) + if ((t >= 0) and (u >= 0) and (v >= 0)): + return True, [t, u, -u, -v], ['L', 'R', 'L', 'R'] + + return False, [], [] + + +def left_x_right_left_x_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) + u2 = (20 - u1**2) / 16 + + if (0 <= u2 <= 1): + u = math.acos(u2) + A = math.asin(2 * math.sin(u) / u1) + t = mod2pi(theta + A + math.pi/2) + v = mod2pi(t - phi) + if (t >= 0) and (v >= 0): + return True, [t, -u, -u, v], ['L', 'R', 'L', 'R'] - flag, t, u, v = left_right_left(xb, yb, phi) - if flag: - paths = set_path(paths, [v, u, t], ["L", "R", "L"], step_size) + return False, [], [] - flag, t, u, v = left_right_left(-xb, yb, -phi) - if flag: - paths = set_path(paths, [-v, -u, -t], ["L", "R", "L"], step_size) - flag, t, u, v = left_right_left(xb, -yb, -phi) - if flag: - paths = set_path(paths, [v, u, t], ["R", "L", "R"], step_size) +def left_x_right90_straight_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) - flag, t, u, v = left_right_left(-xb, -yb, phi) - if flag: - paths = set_path(paths, [-v, -u, -t], ["R", "L", "R"], step_size) + if u1 >= 2.0: + u = math.sqrt(u1**2 - 4) - 2 + A = math.atan2(2, math.sqrt(u1**2 - 4)) + t = mod2pi(theta + A + math.pi/2) + v = mod2pi(t - phi + math.pi/2) + if (t >= 0) and (v >= 0): + return True, [t, -math.pi/2, -u, -v], ['L', 'R', 'S', 'L'] - return paths + return False, [], [] -def curve_straight_curve(x, y, phi, paths, step_size): - flag, t, u, v = left_straight_left(x, y, phi) - if flag: - paths = set_path(paths, [t, u, v], ["L", "S", "L"], step_size) +def left_straight_right90_x_left(x, y, phi): + zeta = x - math.sin(phi) + eeta = y - 1 + math.cos(phi) + u1, theta = polar(zeta, eeta) - flag, t, u, v = left_straight_left(-x, y, -phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["L", "S", "L"], step_size) + if u1 >= 2.0: + u = math.sqrt(u1**2 - 4) - 2 + A = math.atan2(math.sqrt(u1**2 - 4), 2) + t = mod2pi(theta - A + math.pi/2) + v = mod2pi(t - phi - math.pi/2) + if (t >= 0) and (v >= 0): + return True, [t, u, math.pi/2, -v], ['L', 'S', 'R', 'L'] - flag, t, u, v = left_straight_left(x, -y, -phi) - if flag: - paths = set_path(paths, [t, u, v], ["R", "S", "R"], step_size) + return False, [], [] - flag, t, u, v = left_straight_left(-x, -y, phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["R", "S", "R"], step_size) - flag, t, u, v = left_straight_right(x, y, phi) - if flag: - paths = set_path(paths, [t, u, v], ["L", "S", "R"], step_size) +def left_x_right90_straight_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) - flag, t, u, v = left_straight_right(-x, y, -phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["L", "S", "R"], step_size) + if u1 >= 2.0: + t = mod2pi(theta + math.pi/2) + u = u1 - 2 + v = mod2pi(phi - t - math.pi/2) + if (t >= 0) and (v >= 0): + return True, [t, -math.pi/2, -u, -v], ['L', 'R', 'S', 'R'] - flag, t, u, v = left_straight_right(x, -y, -phi) - if flag: - paths = set_path(paths, [t, u, v], ["R", "S", "L"], step_size) + return False, [], [] - flag, t, u, v = left_straight_right(-x, -y, phi) - if flag: - paths = set_path(paths, [-t, -u, -v], ["R", "S", "L"], step_size) - return paths +def left_straight_left90_x_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) + if u1 >= 2.0: + t = mod2pi(theta) + u = u1 - 2 + v = mod2pi(phi - t - math.pi/2) + if (t >= 0) and (v >= 0): + return True, [t, u, math.pi/2, -v], ['L', 'S', 'L', 'R'] + + return False, [], [] + + +def left_x_right90_straight_left90_x_right(x, y, phi): + zeta = x + math.sin(phi) + eeta = y - 1 - math.cos(phi) + u1, theta = polar(zeta, eeta) -def left_straight_right(x, y, phi): - u1, t1 = polar(x + math.sin(phi), y - 1.0 - math.cos(phi)) - u1 = u1 ** 2 if u1 >= 4.0: - u = math.sqrt(u1 - 4.0) - theta = math.atan2(2.0, u) - t = mod2pi(t1 + theta) + u = math.sqrt(u1**2 - 4) - 4 + A = math.atan2(2, math.sqrt(u1**2 - 4)) + t = mod2pi(theta + A + math.pi/2) v = mod2pi(t - phi) + if (t >= 0) and (v >= 0): + return True, [t, -math.pi/2, -u, -math.pi/2, v], ['L', 'R', 'S', 'L', 'R'] + + return False, [], [] + - if t >= 0.0 and v >= 0.0: - return True, t, u, v +def timeflip(travel_distances): + return [-x for x in travel_distances] - return False, 0.0, 0.0, 0.0 + +def reflect(steering_directions): + def switch_dir(dirn): + if dirn == 'L': + return 'R' + elif dirn == 'R': + return 'L' + else: + return 'S' + return[switch_dir(dirn) for dirn in steering_directions] def generate_path(q0, q1, max_curvature, step_size): @@ -231,11 +288,52 @@ def generate_path(q0, q1, max_curvature, step_size): s = math.sin(q0[2]) x = (c * dx + s * dy) * max_curvature y = (-s * dx + c * dy) * max_curvature + step_size *= max_curvature paths = [] - paths = straight_curve_straight(x, y, dth, paths, step_size) - paths = curve_straight_curve(x, y, dth, paths, step_size) - paths = curve_curve_curve(x, y, dth, paths, step_size) + path_functions = [left_straight_left, left_straight_right, # CSC + left_x_right_x_left, left_x_right_left, left_right_x_left, # CCC + left_right_x_left_right, left_x_right_left_x_right, # CCCC + left_x_right90_straight_left, left_x_right90_straight_right, # CCSC + left_straight_right90_x_left, left_straight_left90_x_right, # CSCC + left_x_right90_straight_left90_x_right] # CCSCC + + for path_func in path_functions: + flag, travel_distances, steering_dirns = path_func(x, y, dth) + if flag: + for distance in travel_distances: + if (0.1*sum([abs(d) for d in travel_distances]) < abs(distance) < step_size): + print("Step size too large for Reeds-Shepp paths.") + return [] + paths = set_path(paths, travel_distances, steering_dirns, step_size) + + flag, travel_distances, steering_dirns = path_func(-x, y, -dth) + if flag: + for distance in travel_distances: + if (0.1*sum([abs(d) for d in travel_distances]) < abs(distance) < step_size): + print("Step size too large for Reeds-Shepp paths.") + return [] + travel_distances = timeflip(travel_distances) + paths = set_path(paths, travel_distances, steering_dirns, step_size) + + flag, travel_distances, steering_dirns = path_func(x, -y, -dth) + if flag: + for distance in travel_distances: + if (0.1*sum([abs(d) for d in travel_distances]) < abs(distance) < step_size): + print("Step size too large for Reeds-Shepp paths.") + return [] + steering_dirns = reflect(steering_dirns) + paths = set_path(paths, travel_distances, steering_dirns, step_size) + + flag, travel_distances, steering_dirns = path_func(-x, -y, dth) + if flag: + for distance in travel_distances: + if (0.1*sum([abs(d) for d in travel_distances]) < abs(distance) < step_size): + print("Step size too large for Reeds-Shepp paths.") + return [] + travel_distances = timeflip(travel_distances) + steering_dirns = reflect(steering_dirns) + paths = set_path(paths, travel_distances, steering_dirns, step_size) return paths @@ -252,7 +350,7 @@ def calc_interpolate_dists_list(lengths, step_size): def generate_local_course(lengths, modes, max_curvature, step_size): - interpolate_dists_list = calc_interpolate_dists_list(lengths, step_size) + interpolate_dists_list = calc_interpolate_dists_list(lengths, step_size * max_curvature) origin_x, origin_y, origin_yaw = 0.0, 0.0, 0.0 @@ -307,7 +405,7 @@ def calc_paths(sx, sy, syaw, gx, gy, gyaw, maxc, step_size): for path in paths: xs, ys, yaws, directions = generate_local_course(path.lengths, path.ctypes, maxc, - step_size * maxc) + step_size) # convert global coordinate path.x = [math.cos(-q0[2]) * ix + math.sin(-q0[2]) * iy + q0[0] for @@ -354,6 +452,9 @@ def main(): curvature, step_size) + if not xs: + assert False, "No path" + if show_animation: # pragma: no cover plt.cla() plt.plot(xs, ys, label="final course " + str(modes)) @@ -368,9 +469,6 @@ def main(): plt.axis("equal") plt.show() - if not xs: - assert False, "No path" - if __name__ == '__main__': main() diff --git a/docs/modules/path_planning/reeds_shepp_path/LR_L.png b/docs/modules/path_planning/reeds_shepp_path/LR_L.png new file mode 100644 index 0000000000000000000000000000000000000000..1e64da57f2a8ca1bcdded878f9a08e4198f7febf GIT binary patch literal 280028 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 z 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

okV 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 z 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/LSL.png b/docs/modules/path_planning/reeds_shepp_path/LSL.png new file mode 100644 index 0000000000000000000000000000000000000000..6785ad3f8cd182b34c8639a93756b4f723b7d263 GIT binary patch literal 239825 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

HZ%^o8@O?Fi7i)(6+xT`u>W7g(V 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/LSR.png b/docs/modules/path_planning/reeds_shepp_path/LSR.png new file mode 100644 index 0000000000000000000000000000000000000000..8acc0de69fbc973373de069d337275436c7a30cf GIT binary patch literal 257435 zcmbq*2Rzm7|943xk|dE4MJbAm2;sD-gfu9-kiAzNqtifUQB*P_BQtx`vKnUQF*33b zSqJAhJfClO=XBh^p8t5BUa#)^^mTl%>-y~R{#*|(s46kibI`9@vxf2PnNt_ntYOGs zvu1re-3EBV@?et&{BNzpMWqvK(rdX!;2)c8&s=j@v&P8_`MdUV=d-dkYk1e3J$3x@ zExqxsO}Ckq`+qIRCz&dppm{5|G-(5JpH z*N?^WrhgafmnqmapNV4FFGv?l=XbD6s-y9Ky`)vB1hKF?pI!TT-eQ*L=gHD^9o;gM z!pWW)`$+M*Xo1t*@TYe->h_woG_-VEdH=5;HfO!9jg&QPPQKF6-Cd@?x4F4l)UYz( zczP{<)$i5!(42mcBdJ(={MYY;rDBR{7#SHeZ&di1T3M+iZswFcXl`yETToC?tjw;o zYDdz7yq!^T8xt*mzZ8|e>Da>eyCW*HBIx$d_GylD+y1)sw`&+AjvT3&{_(jnqtX3qE|QQF(5uOiP{Mqw43j8N!(5|aeqN^_}PEQO5_c1->tug zE#;=LjK~#EzQe0Gc6SDm>A99|*w;69ZKo6L_eiS_%gj(+aFeR+p|tO1#0me?{yQq>TJ@us zuf6qH!&Iq3*%I{!b|Xw)Uf$I_%WDWbXGfail9SCJ3T4TyBArp_ZCkWtq_-A%Kd!t# zmkfw|!*#Z)DUfD8d+~Ptl@(Iuiz;j9j~%r+^tZDiQV9gjbYGlqD@D5uJw6+{@AR}y z<*wD@{E&_=AI(Hwhn8?YCdB}qbxX4sKQOtzlNiu_f_nQD*{n9l@VAwjHzy~hq{zn9 zHpD4aJw9+LHp!INYlE4F!-1ebyu<9;BZivCRuO`Hu%f*`LCPvSaxIFvWZf5jCcS<=(jv2gnX(`FfbwLZ%O9Fw z93`)Pn3twi4{f#deWSve`J%z+7JVVg!tFLaC+}lJF~kj>B1OZo3&AT3!E0Y*_x<&h zyoYURYRXw{I&#d)8GW{Jb2tosc@Pp3f)VRvnVOi(x55hGz$znaDf;huLkKsDdsc`CGj8 zlRy)as^z*>YyE3)lm(QPiz2^+>US~kna?cC-CA0hQrFSZIjS=Dc-5B(=TQZvb^8yU zBL9l*;kCWalN-qUTlM8>eFI!a?i3=TZ?1p1G5F<~x|Y`S6_qi{=6}6~a2ejICVfbe z{LcC(w{45(@2q+koa5m$l+vl~#*!7LaFET(Zxd7^_AKUqFP8`Asb9LpQj_s7C9c;6 z22PyYN%1xHhVWol)3Y<=l_*?+513T8wlWWNs$MDKwoGUQHk7k7G@?^(6)90MvOvo& zbun-9=3+GAL1~}(->vdBp*IdgwO0%6jU65N6&!A?Bqk;8zxnk!>jxjEx()&><;cG_ z(!Lj%tvmFRgUl#BdQjaTndW}v)u{H3p4p&5@(c#;g5>))v;}ls7Lh!4M zIxh>H`Fu_QMYo0@ffWsIJHLne@MQj>TIh3faz2LaRo=6hn_|-U@qwu4(n4yQ{`FOK zco+$%Zg&+oy%#7<~-TmWgPfBVENCjb|G8!kWZ%Ap!>*H zx#IRw)}j8eHAOQc2#3vgIUs7;_67{0kA_wX}iGF$2q zi(xIglcF8eB*p}+mtX2-s$!Jtd{~PnVtaP!FHeVy>%|qbNLsdS)y}gVvA=cg+O;pw z#0AbND;F2Pu%lj<7xjG&sG7)n3aiRNjpt=E8L78VUU2^f42C|xwWX!9$Z4$TvMLQO z+oUe&6%!v{4%9D$KaFBRY%d_|Y$UI<`pZfNyzg;NPEMKjKRyX_?iUsg zdj9-5yQJmS6$#TTG}8NjJ_>f{m$dGDs^Pi3I8>FQH@?3v6XS z@7uK-ho3%s_H6zj=O1G6@_-|p>D@j@K1H=X(DR@I?~hd;?e~TrX48s|LNoNH455J{(=8e_N(BqCK zd`pbY%oI)g7KmHtZjeWox2@HJuw1IlmI|`lo<^2asJo)s&R@^We7gPeLrO&RX9F9~ z#FW3sK^$iGrnIoI@Uv=VFb@xlfGSsvu+>T4d|I(h`5C&!lJbi+YV>(SEzBulWJbmC zK!8SMZf&Hz480yg3AU;^Z}JXSiA;#>OVt_;c9llP6DxR|Ik#5d`zvQvCkw zzK2ybU5xn(bKfq(PRh#Un{5rzyUMp~QO-A<2MU${dNYN-!>?~gV9|mmyZ$OdTMoUk zDIi5ox|?*`e?EjnnLR7Z^Zn&3#PX(xgqAezxU4KONEG@?W@`P7I(?b>wiNw*e#GJi zHqT1eGwMsk5sNUx-Kg(dX}UJ$+qAveZCx@|iNtb6AqK^oe@x|DJrH9X8uA`c|BbqM ze85ejdx(9>Dd~O;!Uen&rSsi){rG!l^;Zb3cHh*MoTL+gyI~^wyMQS~4?R7-U5HLW z+(XmcB8i#U#3kHW1_7uzC|c}f`O30H+j1;h>Hb>jp%?73&X#Tr#7LL!o#iB)jqKi9g_Wg+ z8Z}S*3(p1z2PM9DfBW`0Xs4Lb8N`T?nor(-`*QsjR_mS|vrC<}9~d*i896e)bGBh2 zQ)LZ?gd_^g6j31wgAtzmDEYU5BnGt}&zP?kbxb;h^JV!$g-B(5xSreX>Sj%SZl0Be zs-|)gVPVy(ARdL~7<gfvpmteZG;Atq?(pwmA=_YPa|!oJp}A&;PKM zrj9AUd^TPrP|dxMCDRIVEG#{wHM^CK&QXgB@NhZ1N zI2>+7U!doq{Zs|p(0P4&N}$4fcq@=#-AhX*ay*1V0@nqGn7`H@2r6(maI4Gsh3W8e z_v%tGg1G$$&&OQ)zSxWZ^y$;BG3_1>ffu$XmI$roLE1K@xenuFdh{$`wL-LO z)pd#Y5*8Hn^CGo+1%|50OQ)bOa{VDQ2Fd&Pn-R&cq`wO8_%@UN*x#0$O+o43$3{d% zKnj$qZ;^WxbAlNx1;y2pv?hm#f2H`#OG65YUJ6Fl4-2M02|*=i=lv6})X37bmS!WQ zOY`>RMd@aX;T+{GSh6Zov33oHhIKf_7VY8T!SROGR-~ToEY?HNw!jvhb?wrnOFCYp zxlB(I!Ev(pgHIKb|06osq;>F5Z2KRQQ+*sfBG)mAy)1t*GY?s4JXo!5EG+!Nw7wX= z_J}r1H%7J>|H=onr2^4(NUoK&Ilva`pmDio^RtF_56zO zAWl0@lq@{nAWS>&>{R{h5v}QGuN0I(RM>&Wi#PAcPe>oQD$O;q{=7UqNY?@W%4F&SmAx3kdF}!R$ zH+RkH5M~j#2LHaS&%*w(d!)qY2f4mbRH0f02-bN_>I!)sdkEU(5`&a8|0X2^4}qCm zxWg_woa0^Wk=*4v@aWb;uTN9P>r081pY`xrN2flr#3dvQJ}fojuvXhqjLXCJ2`DU{ z9V%kjanQH5e0fgVIN|CaVe!}vPJzv@g>tN;uRulE?vYhw6-h~a@MVQ`jYB#Z5wFG1 zQxzhfqPx)JnRoYaIeZbdnQFBxP*b!UAf@y`6 z7-3y>0GxePx~7f}m!^*0>5}j3VIQt(e=J3tK4kWs$H}MvFEe|3B*{fF=^?5E#k?vg z?6nsTD(g*$JUwc6Ubt&oRjxOdCf{DD#iN1 zhb+CAxHvv@3yXeVz93&vxzr3z4DE(X-!1fsS|vCu8)ap7DQlgQr5_@}%zTPmd9Uzz z{K5|rubrHdmS=37%RzYdY^p$$7X!8oN5Tdsm%dO6G{fHTK3^N1EJW!=eMcWmZ7e}2Aznw_29`Dl5$ zOAq;dTGXF4-IDU#17Dwfu>ejvbNj?r@fJ`L-OC+g8Y2@ z3zYpyA{5UJ=O?;!@$!)ABf|Ku(DdosUfSh}$z|av_vxCWivyvC6P<-VoStoU`Ihb5 zTsrNPWUSk>j72S4Qa{v+QVt9oScim@td!OMn{ZMC@+NG)&14o4N*5J5W=-^$6|uBi zgde(#S3}_6xHiKBXCdp=qn$lai61Dhy3fFtkpGTa)~a>D5ITs9Q^ZdU30t;)`AM@4 zu?94wnkkgcP(FAZcmsiYTZyYfxUzH9YB#5r*RsLHqc#_e1}C z29fdX1W(eKeih^(eF+iPe)HukB#*rG`;;Z=wugXx?~csVBMZV^&^Y-sKl3OCoMJh7 zQM@+mLE8+wikx)uQjWv*PsL4CA3uIPV70=*SI>#zS^nuWRn%H4yiYBPYi984*w>51 zuO8!>Reix;ONKgbBk@zwD~r+pKN}EPKRP;k*&a#MA`yYhx76+PZ%~c&0lt)?dlF^adp` zy|$gWbHAmc+8HUAe8TT(rj+4Oyq{?~I5=*A1VOXO6J=acQGpcjK6o>J&PslAlDC+4 z+0B6nmGi#YCbh}zzFl5RQ@4g+`gC@7o5b!Q*POQQKLu-_IOat0z8fHR^0@uZ>d#7l zL=&Y)FCisW1(mH>C?|hjhAI>@)Qnu)ixcQ(6=RH>5=^zS_dRb(SMegvd|;}QRv?*y zS*}>mrc)mgKOcdHXudM}O3MGQ2-u%_TPIQT^20?z%yH&3G&tpO;lPB11mSr#>zG~Q zH^0PuyLpMGowq*AX{>t<@%fR45>JnuV2pl@7Q*apMif?hQ)1eL*dgRcbvUf~97y$;{$2oH3&Q1%2JC4fVOYI2A;_S*- z-`%|n{E)x5x3@4FiLzla0~owu8@1Dj|1nPsu$`aZS7zs*%Lpo!|zYJybN^ zf_kCHdsAi_SIC2-hBl_k{mo}WssZY&uC0yzK>(rkhZ2~ck3BK%76VK51%tVjO!Rt5n{F;nDeH0j@T{z?Usfe7 z4DY}iR;PoK*yoU4Djr4Zp1;w=C^hToRypITslye%Jfb#I;yN=}F;EjKuE+Q6XP}Kc zU!==eT7G2(n|^295$Y9~ZE2KbdFIXImXd(s4;oFXmyb3KMsqir!`-wWJop&&j z$h7j4X$rEtyq>YVwG_FUu!zUilim|m#-xv8PuD^J0kVX9IqkA2}C9{pSJCP6& zDOim}huUzsLS)9yvhTbv1PSXjy0T5wEW3)1Ac6LovQ2wk5!(XAkLnnjlVpzozUSyu zpkL<3!38oFz~wHP<^N@*Fz^xuMLCYAP)QyKVE7T|NY3|HWF^LcREv?C)J06K$L@n1HzvWeF4=M?EO{2 zbrIbXC%zldaHf|^I(Is2N7DozBaXArPq#5gPxy2@~HmLQ2f3=?+M}CE=^sh zD=$3o?LOQVWO^Ws>Ou-0WltVa){}#+P40eSMtMN}!S{@fbw*kmtL41p_IoH|lw77^ z@B3Q>L!Pm0&tSsajW=c^y1(J(La^9y5&iDPC+>G^)RnkdtGHcszPykYhn~!nad8L9tb5G z$@x?LX8j6iGRekr<8R}FdWRG?mW0;)v3t~%prvy>aKWWj*DS`P)nk6{b$zvFxlEAT z3Nh|gQIT3}E<2fhC~JDig4M0V^lYy%`%s|r5!qV z?wozx)hpYE`7mKB5i&MrHhSe{!5Sp27>oS$qoaLy7zpmV42YXYy`=a3xMQ?tEMg7j z9W#_KxLk_K?w=m%CIkm#%Oht+lYWqW3WbQ!xC{Da8NhyuT6N?kB`0&d*fW04V9k1G zg#`mQWnvK4W-?s&bD~=CgH~NOR)-<{XTlDuI4WiZVN6fkmf!Eh+yOZeS zqTeyZ_BJRLA2Ip1p6%m3Calq}jR<@lPw)rD;eZbf1bJgyt{zJanM>$|>dC-59kbA8PXPb)s|kH@(IRDQAf^ zZ8o7=*~!~`m7q>x_w9*?**-T{+c<14`4wGLlpZ~4V)zTm>FJ#5mlVct#N#Z@ch6d@Vxy_BT z%e&tKbL6nbIp_3ldj5Aab3Dto9c~qNRTZ-~9x0let%{wUx*NL-jLs@r>^+W8Zcz+%`S&p+Q*!^kW`C+`yIx-D_@c%nF!{*y4DEM8zeEF1}-PD@# zoBk)ZBSpae{@}#?oXG-Qo@qwLq@=N(u`$QZj3_A)#TRbo`9pGE-v=Q>n&MeN1rJ3~ zwb?;7Kp-onUxy%S3WtB#1QH_c;qJEzP(=}G4A+ifs{*-A*^^fb4m(4CXy<{)AcNhF zdh&*fiVlo_;x|-`Ef@rb`Ee(5Wse;o3HY^fdCZizt^Uxa79-G$A54tuKr0j9-*3or zbx@4Gk{BJ;{VmEJ^v*=0bydq5kU$$L>>}ubed~E(MODD~eIl@nVVfi*BtF)^JQ?@u z75`_!OR6t78Ev!faq96fiz%H*FBZEY7;!XnCJcXF;KjoRox4=r;eCTdSM&d~=*s93 z3M#J$uVwK=)N-RG^%{b!INf|8zMggqo3#x#GY-~}`y6ia@zUbF7f*9tSEHWH&GW12 zb{mC27rGh9TJc|Y7#{AWIdteyrsGJXskODL5W(WDTwz7mNx;@YXK~WhD$oRi>^4HY z$Z52pVZO4^>tw&=AsQT?s&qVd=1*r3aUL$98pUx&o5@T;WxxY;g~^{P2KgsISm`~G zj6`j~az?XlSGBeV=+I3BN2nxo;DwlMN5>7Kniq%cWSJ~JRg2Zi$w^(t&GB*FQ|355 zVn>q9+&ACY*tVr-b*FG%D=zfn6MjN{)%j&}F=td#G^_BCMJKKF^TZ*kAGT23@AKz4 zqi;z`Pi3VPq1vThYH)n}lgC^;WS$j6DA7hL?!l$m5b?vNW)J#4ePS28e&TYJ?TG-H zm8Ja|uce2zHZtT3NaZQaEzc{FJ}~j*1sS0#GOL`uJA70lJJO_Ap|W@{fry^32%rdm zHDs=GhGHxfIivbeeH_Cor125pnZ>E@1J#d2JqWX0dY31l!N$FRtwTsey;PU&NlW5XFkc6jX_Kb&Y=h|HrD(tD zYuQ_5(m^tB^gFelMthK6GQCXNUs*DuBD(A`seE^#&dZI}T13!qba95y?u@mC2!|NI zmp)x2+36vg%nD+3&2FrP_&3lNZb%^a+jolaqWCuA~5$J-4M{^G?sTnTUpQIin9woTT$TrPyODO8}) z!-D{sO}%j0$o2V2FCGh#;#6^d1;UTuS&V_1s3* zzL(pSAFdMhVnS2SM$Zjf;zQAQ_^=Mj{qh$Y@#M&H`x`j>TAs2NYSsR2E4JVM?dR&# zqjsP4{s?w{&th|^91Yg<=iOTb!dTNCKR^HeVKpzAWK~(KavCfr$BnMy9_~5llEud< zDUCVwlpO8_z@9IINT)JzUJC+ zI@4sNaduJ&x=sn6y$tG?HJslTn3T_#&gLx)91s=>eqKD`7m}Pzsx;na&9j^p4$ehS z#{4p#>*+Zv?(JvCtfk9$;a^EK;JJ&hdhVeU`zN%M0rOkB`EQsJsTzSMLNFxhPXROH*si?IR)2X^Q^~^0YG`QVJuDV$*e*SE z>T`n1$kR+4FLZ#4wXQ;SQ;xG$s{2=q*tk+TZaWA@IG%{OsSgbs)g^Y%mzj2z$uWLV zD_SNb9UFO-t~oaB`(x+@%hx&&hl&9;PqE~|x*nVH-uF1rf2HP~CarY z7+xOmq06mouu(Z~naS%+B7go{0So-B>uBj@U}QPrij2n+2)tqUbQmd2#PEoCH}naF8lW4rOYOp5AuQ^(O3?IqG-kxm*zL(tn+mmFhD%%B1MROd(@KB6b!Yc$DH>*pI5wE(l8h05#x`lLZAr4Rbc zAwgpR8=WjyXepbCM9-^OTYC*Wnr$6$#mn|QP>Eg|=ng)oY&dPAzzJc|kC-FYfXish zG*u@Q+7hn^H~zow8S{Qe+nehrE!(r=mG1$;O}=_ zlXtlJWucdeN&DxtW~t!w)(o{OIfc%$sh;ISc`HjpBPPvIlvDERWAV|ofx5^?@01MH zswbDPRJ=e>;$CDELX?rDxJe<{?W@I&zH$g*1#QF^OFCAPW&%Z!1+_r z^Tkcczx7bTXk!}S!Dj=+WvY%Tbn2nU(lQsDqE!_{qK^pO1X#NdYdZn3Ni8dc49CtH zn_zwW(bo+cn&F<3i=oj0$%`{hJ^8rq$YqcAj}IcpTmbIcxHuDsD~#UH+v$1LZI$x= z8-O@{9E6ESRh^0Iq-4dWzhqDq#GMJ~f8huKLXm-y*ZT%cTWc7{YgER)JZ>(Jn}|A& ze!J_Ojq_0mNL0XQ*49PySlcW>A9F6Er(}L6HukB@x_3K;Ox2VO?EI}AIIfie ze|;_-U?`&#p>ig=v{&S;R}W!48`Olkf>>fBYh8RuQU`4{qyz8@j{{FA1{1tgBBU4L z|FiUB_AZk9A!R+#?k!hK0kfQ-7QG9)C8Rgmdx_cx?d>K?h+~#C1SN0ENRI+!?~MxA zq0`Vch~!aF=!|lIv(%gs1Uc5ZDz3$r{K^8M^rNN>fok$QQ@R%_q2a#t(?=ZyawvK} z&FVcMxR^6Mtimn!UY~!$rpFGko|C8i;8&ZVDZu1;_K)ol2|_Yqf(sPv*qX}c(v}Bv z<*C)z?I3^-3}yawVvC?6(ye=-pDcaU{HorEsjRHLnt9_iV4b-xv;b4o@T0{B4h03M#NY6_8_-B$`cs@~tv z?B(M*s~{qH;6Y6^;c~!HT+TW{b8w0+I&NkrTgygsnr?vB7xxq}YU;Ae?l^RACEdL; z;3*iq(+v-I69dhl@f77&hmMWUlT?gyP_-n!V`{8ZD(Pbt{V@~WW0Pu&-XP-rlIjSX zixBW24~B+(yhUVAV8tZ$B$eT#{7kUEvyVK}GVy=|&f zZSxsxCxyQE3{AH^K8x3#BHd-GtVK^e2+GSlO7P~4P0Epog4*UhUj5=WL+}@+o8&i* zG3}HRhAhADNee%P?U)j%J=R6UeWUyRh!+i^X!gA2<-awO-uAB7($;R`?Bs;bEEDdJZ11V=a1~t|o6wQ|>6OG$~Xp%$F-fxy=_daYAlu6Z{ppYDw&#-?K=1 z8TARUm_f@Q1!5h)JaxP(RtCzkXVK5sq>Rwq1_iQ>y0NCv)3t5BB09>mBH95clSK$) z$MUR*foj&aYS#8_)^!9;bqp0Z#{n@j;Y5ikhg~3I@D!lxa!`&8Q!5ASqiDmWY=Sni z?3s>69OZG_|2*1Lro#p22MO+eZaEp<47Yc8*q8g* zCVOsf^A-{Ao}5H#F_}1GPq25@F6DI#d-)V!0cHX-r#=)Ny}X>EX5X}wz-jGUDG+`B z?(~nQ#HxE<#Qgoyq9+SHc=h+Af9H+Q7+@U2bKi{FO~@b1A%9#%=gE)(#YTbPIa;{x zpCAh`6{*11#%!cX>7GqEW9_CERTI5<{&MN`laWbIz|tob6DQbR+KttZSzcw*ki1Xr zVQBFP;7y)vtL@JtftGN|&-b^MrmB!~4Fp{w>Kh?~v74?DaIvU$g6gx)tq+_dk0J7)f+d1^}w| z`BhZ}ax(I;pQa{$PfdBg8@-Z26)wLDQK!MVu_gn;y_5`j(;2c~Ah?bUH;5A1%6<0> z`hj2{%J1Bk+p~1jF(+TC#+O-iy3?UayGv-W)+rR-TcRpMU3OP%k#X%b(sW4ey( zbdBgzg-B4Ns9|jB%iSCR*=&P;n4*%lwoHP1OX^d6n$77chw%3j^7yOA<}ggB5cg_v zS>)>0D>H-f`lmfPQ2No&=cov{A4Wv*G)IjN{cguB?*93KXZdh?;ox(mA*|yu*K7wc z+xh*SoI#(*e6iEzra6`Zz%Fot&;&IqFa+ zH^2D|)2gAiKMVym72Aq9cgV`KKku}*ty?3;pk}FP)<&nL7iY&rSa}S<#!6}Sji&1 zMaUKq-c`CTU92`}EVl11&ys;#znj_z99fqU2wSC({OrquxfbnyH7~-Y@wQAp=pOei zfSvXtBzpNl+jj1alamV=KbQCbvN0qtfiT%1h8Fs{Jlgrzat6f%iF&orxCBJwhUD$U z&E7B#b&9F3z^XOfwEfNQPeWgJ27JO%*DEk3fDNk~>u>%IK7PnVb2bTTTLMz+yPUCB z>Uw(JDYirt`I%?GAgL#Pwy4Q?OY-CtjHO@H~KnIwKzev?8rG#>MHL#Q9N08 z#xpfzRXvPCrn`rJji$o%Q7qpk8KqND6ZsM)C+p|$zp+??IPU}79f#8X=tP<9Ckyi% zr@YK_X4JSn6BZEj#eS1uh2a>PRJ8NykzBa$N-5UOuH=?x6p4JwLy*{$}n_Op_`Z z3-C*c-`<8U2@_qm3R$J)SPBSG=mgNSy3VcM`%{_09;ptGy6<5DjMRvho9Hb_D~LJu~$sCYtVwgZ4!NJ(Ag>DG!LKSYg|7LdXkyK~)=#e4*sX?i7>7ZlN)mL*&)d5lEq|p%pBHrQg9ka3Tkd3Rd z%^tpz{wft`Y`{FUD+Mua$2#RuW%o zR}&I&Gx*lx=Q#7_rP+P+5W@rva;&z|9tbvBDoEoW3)HpER>VC2>1ID)NCyyzr6Gwh zH+5gcefMBpba}M0mk$E9N1%@*Q9O&)N_~C)A`{Jp{Fr%Uyj}NXL8<2BeSd4{fg50> zVMLT18f9&ELy-+-XqWuJ5Ke3g+dHVw93Lwp+VnvVhNdrI%^v6WQ^5EU|ihr-jU$I}&Cn0v zQFhMghE4|=kiQ+6}Y-$U9{%9`~TP8l-yQw zFJt5jg19l16WZkLt79~BG5`ngu_`l_1a}cDT-wUu$etX?|Aq>p&BUtRpAL05@6H_qVC!n|R zp3NCxKTt_Rch5x4*1_;u;5=ZO?K zzEGh0zXI;lH|uyCFoU34Uw!7gZ7&{~PMQjW z7Le`?3a8%{Fqs;-3*ecv8uLE8-1g^LcX6DJ@qqFDDVQsf5H1`DnXQ_^ zH}iFNYlgI}3cP-6I$*VskQ?dj+Sn)0qB?TB*mmZXiQ{en~KNLtvAW?MeT%8@7Ajjy|flb?9KH-qxzrv%jqy zb+C4KUpFwi>mt91hQ0D%SN5G*@$-_{mS25|%W7*d)V-z12NOJCw$XKoCC zd%g4P5ppQ-51q5Lp*B}sr{wh8(qKxE)XLxR8!fd_qt|)sGW>gpEbA(g1(s%d!03gp zhP2b@H+DHU#~m&guEys=4l*Bxukhz9%#;fi*p#jL4_^cieKks^hMPbF%Llew+Wx{P zvWFVT0-Y9)j_O$D9RJBVj51b@tv^CQgmFPKf@seDF`q^uYiYBq;x38YOze$`PMU2^f~yV#lfvUVmM_vob49^AY2(m#WTNU^@H1V2|wl@x2 zJT6t3CRdo-C4P$r2fT;&c2e<7Z4v~&0ranzh~>e+;l>N-n(9Xgkx^yz?l4yugq|oA zu$pW$3=U*+|GsXqBe{(7_J0qpVg5bUM)@Y}gA2pRDfuz%kam$}L2|Mn0+xj6@cz1x z(~%R`iX@ynJ<%NIHtj{Z*e6dm^F(dvNExgP?iF!8n?JPkOw0w)SB4+2=E$M#eoF|( z-^+V-k#%LmDP;ENsns9+GbP)LF`%VD?`0|D{e5?)s>2jR52L$cPiM}wme(e|@`DmO zAvHVJyt`z7gv0?v6ZiAOIwxeTO3C6*4^602+d91=3hfbRbl9BpFSM^lV~U{C2KPXO zdxSlCQh}7{b8;jmxwGQmg(XIJ0}!RJBGaTfIp9+=q)BJWLN1^Sj1~A~?=t+G!zW-B zksOv*k>7G)uoVchacx)F?`=?v$Mgj%)Y(QyO$rd#C(=Y;x!7yIcs2~r?a!v9`{1bBd6O48<$$ahJL5AF6@ZJif192yOU?vtpTmaq*3K73l8&iq|leA=$fjI%% zEOPHs3m^I551}HladC~M8il`<54=^sihTy?nd8=U(efT{0bJ5zRmESrr#Yi%0BBmkk&PfHq_VG8?#+XIR5}5 zoB>;(c5OnC?1XQT>|_Aa(*SG#C6W_KJDUN2jT9zK(*a1w1>LGHEZG_H{%>ebe-#;4 zwl7+NXjY=LyQRe$#RIdL{&2(54@a+d4fh#u#>{>^w&?=8X|%aZB%|P{qA=7FYFf<_ zoxGv|XzK_Tv=n=J!{B|?#LCL`={|Oee|E9~+8!QT>#ZnCCxIw~tR0E03{?6(tc`(L z^s8m=u5g!=lkhQ!zMcXHGNjx{L%aO->U|@%&jEvkaO3fc??Z+5ZS4(trQ*^$VraQY{A$I%UOK$y#r(3dVmZ=sb{+ zI%WPP5m~Cdg@qn)wOJ+%<|n151^`}vzu+h-ZT3DFprr~OCJ*6296rPa-*g;=-kh;b zk_RY$dQ$Z-mdqk|-k4b5{H52J35JE&%w73nA*hv2P`HRrdqR=^C-|rSzJatPxZ;##P|qWG_C!X$%1jYZd2VhcqRO zsv*aKM2A_#%k>|H`VUfN!IY33y7t6gvhgfIs&Lr2W^xto7vtzv5s9Wxw_pS|8yL`n zDT#gc%E&+xYZC6xm_J!G-~G#RX_p+8>F6lJ$vAf8fJFnalHssul_NR|s_e7nNDjk^ zrL?{bej;{bW%FgSVXH=iER`tSVEmgfKlz1l*DaE$4C3YleEVdx)-%=GL|gP29;Xh$ zEx77l5w9BG8vs$QtOidF*&A}^;vkU`+?(@iCKyuar^j6FgIh*xUb)ldi)a@d?tpG{$F5tvH->7h#UJl- zH44yq!`ij5)$Av@MVmFdtYBf%#FrE}3 z9y{yH_fJlFR{&sAxA4vs*e3f?pgATxkBl;iL8f{c@WV%_a5&^B@%uxXv6eJ{V7_ow z0Jp4UkUU}7lkH2cE%6eQJiCx}=@D=F=`#WD6M4i5UIaG{N@SMgv7oHq5qY2z;xl6) z!8K>zPn7U?mV|CUJ32U^UKcnJw(LFM$VZ=k$s3d8PweSNbj(1##RZ>>H8+tZO1{d4KzEW|XW0_KAh+hT-_ z^fHr?*JMilqcrCXkhx|^eIJ!G zC{=lH6U!D^sZG%W$0t8@h4frO9eXx&hpps0r2V@Wlz2R5-#E=Wz7?(FVo~C<`?xzX zzRz2ezLTj;Uz30GHJFr$XtB}x# zQ*Xef3Om0dcV57qAA)hxRM{H4DI(rG^2t+4F>4U<{#l>9x*YXO<9JVE2m}JaYJ*?~ z*7#_)%ZKc}o!vzyYD>N1(GM#1NrIJDUC-4osWI~Gf?~8`1-OZ-H`hlxTT2FyWE#A? zGdq9w?XgYf0{Um4$`uA4TRgJpFzq;mpFzqSEyANRFiN%Mng!g0vNWRR^(iU({021` zZ&nQAa;-jqK)nV?9rI_)FgNhy?LIH^!9^mzJO2}MjSPpg+MNlw1ad@knm8~iM@u*d zXGg2GKsk!j5THJC&&;<_oB?L-zXITYN63_K!iOwfgEt>=7G6Z`)x|WMiZ@C;fyqPf z2fIWq06C!o_Y^R%jCobG?s7lOm?Cg|n*V%POUn)b=Lh+VlpSS!Bj6?f%>gdu;l_u} ze~pl;stn|0x;hAj1O?06#9p5j1+)vzuG1bXc1scdYosx@J-d6iA4f4?KINy>5S!Dy zWBuud9j8l}5B05&<)Wt%Z1Kz8b0JqykiMGdfkb3H0nH91dEk(AAjUaWP|@E&Lp(<+oXaG++SNXw)2V6}c;j7Em4nwm?I zo~mk)X@#5Ga}9R|*>OF*OIn!P$(SOVd)O4A%4s^@+iPfk{pa0&aE9zAf%1IhC&%}} zlj?l|6MM){{(PH`cdH`JGJSpqdhSXMY4(y?iG^lvPPRpB*d^VfGfh3q8hbb;B~D-` zOJ;&ByGz>Jg1oVx?=eXH>fOVcgkxdqtABQSe zzQDjRe9Ww%`$^<|l}x&S&h&e~TQ98$JE z@N;1mc4=Q5!FJTH@80zUeXTCNa`Tqdk*q$L97FTV%3|}nokki@e|zNpn@7LT^HX8% zdmI=ARz{qu$VH;fOF>srba4@#IFWnbQRxP3XxQuWm2>(VIqR zEbTIl?-(92uWrEO;zuUEL>3Pmh}~_K9TpKGWK%k)v6wGWkd_AVyO?F$;c#NpVRx`l zk-~}Ze!?XQ><;X{GsE@|tqTRn}6;p9fSy?$Z=`bS|C$O}1`B=rz-pv1E&98sbnPTp4 zWct)yiVl=Ff2x^sx2m#o!{ulkeSWmG-HDd3Pj{P?Eu7%EoK2W7lX2pYb+M5i%ER)< zI$M1hdy848n&MlYxR$W8l-Q{yRA2$c2ibVlNEy~Ib7+pIEn7=!eKsV9!o^zVdNhUN zT8pIz$MtsH5+TlyG$kH#l9QIc23L>vJ64#b+)IO zuSfO6-HmWL8DF*Dj+;#3pT?GDDkZ+BUw27cO7|KqpBo$Zo7B2e4n0-X;#>HyyG=x% zhJ{srrCWZkgZHQA(tirtR_h`5RhuVk5pM}CT%f_v$M?apo})k>8XJ2B1qFF8l(1T_ z;D3bwSP0qMXxo}@9%!L&naVX*f4sJMM)iSB!~5Q%`}gl>xz5~dnzXp8D>NXYQ&3Nr zJ67Hgk%95X&Fs9$El#-|{f0p_VA%#}0%aVwYxF$keC1f$-y)t0Oo03H6aM=JclbM-OS|`EGFiswI@B zs+Xa6B;UNJFX|qaX?ZEzGD=)2wk7?EOjWS_t|B^hX=-ZCjHU3l41jK8pM3ITt1 zv^O?hTwEqjo?iKuP<8gkjaYS@-0t1S_w3n2WAkQqwTvxftm$>$vYt%*HEXf!L2*>S zZ27lM`$uu;Fj=F0gv4tWoduZ^W{v#31g(}$F7I&)!dH3Qc|7=?#Kc~C-`!f?&g)=k zxL5Ybl|62AAqCDj!Gj@DQ4?7q`9cNIuQ!`uO1kBB}5dB0|Zdd4f=%js`Uw465 zKtO4FW+u>lk|1#}BxKub{qnLL+l#&WKE0zgn>cJm7>W^9{a!t?joMJ(%U;uqw~g|s z3?j?i!WjSz2FJ8BQh$wN%AZc&dt+y?Oo5Xqna=`7P!(vKiSaGP}vjh zfxq@zJ3n0sd((J@!PLn!vMDQhDah?r>%jbEkIm~3TATE2Zl6(A#V-ufE6W@D zV<9~6uUyYTy-#1zjs1TF>5VR&1^01$wT~hHyqx}VSlA~Ri$3)s|E5aHsl@pBv)}^t zi6gbO`Ox~ViE`BvnHh`8CsyREvq`fzf-X1-aj7h};_ z_^t?vNd_Ymlh4raIi#=Tl%hp5_&W=IQU%n)$Vqv2cx+<@pD|M=pU@o zfVyb3ou4qr5l|=YYtSxRGhqhvLWcb>5pgPCZFJ9Zt;tTRvo|EW64#qCo9d<N^R-lO+>(Yyk(uouky8} zUYY)!Y!eNYZ87_SGv#v+xQTka3JUr`+_E>1sq}*9j#bmN%^wM5H)ieHRHUh|?zKy# zcwDSOK*+SI)n@}E2YUj+h19qxV?W?K^&~WukBG;Khgks@`%AQfK1_68A#rDKpd4on z&2d5C%o%|oYYJ!H@xzm+Z-j5Vld%9d{mUqvq&~NSF6!=6S(gb3-Q9wMpOV`2G~_x7 z8Xo0FEz>_jvdy1-Tb@!n(4MCvF<>3f?f2l(x-@O&@%Zp_I$F<}`)s}?J!00H(?riT zYZ}8YDQf)+4a*w1AIx~H zmlo*i+6y<2S3~0=AZ;{o{i8>Z6btaL6Qic5quO-d(BHb)TndeC#b&$bN7k0UQ_>I3 znHyNK;o+icQ7y^^aCr5L9=e1E&vtnJOqA9L5X{&8Cv16JP7U8&+q;TTSAs=FmHF%+oo=iROY&Tv~`V%y?vJ2hAD79pW*(Y zK;EQl#Y@wle*oS?{QXdeSopz5+%tn`8|xI5Ph5ZbLq5vaFXaC)_TGV5zF+)!L`ezn zmJu0=$Vf@Zh)`r@Z?Zy0GO{UY87*X!Wbf_CXpxbST6iAcAQ0S1^dj$hselJD^2)mS5MJx$&c$@*Nu!MIYuo-S>?hG zUhaLvO~4eR+LIUN3ZaQoZ?Eb^Q~Z-l($W|$znLdrfCp^?JZRs~{``HT*;*Lp+@-mZ z8t}PH2Fks&Z3o3~ZhH(8XV_3i(a-yEEAX=n4B&;pEhD@XQ&`whc;z@he>=%Lb!(T&iDn9&Jm~s%#m(*AuS@rAtsn*tf(~&_RO>KF zfC=b4*2<%9FH7p=LU|?WT}BxT3O+yHCbdNOz*HK%Vp)E;Wh#k^;0i;uSaIOi6`Y-f z&y{-;pIuFUzX0m|RTy}wVqyF?(+4tk)87#TFwJx_MJ?gtKkai|j~*s#NS6E@P_VoH zndqd*EwO)IzaE;nU6<8T@cJQ1XJ3r>C0+Yxxoc}P{!guqjo-vOtd%tEKIX;%w&Gl| z(qZfNGDu@;Gcnys_bD4;)mX?-Fk#zUY$@rq<^)wOZ}duBJej_!~=L?JE zzET$T&Av=vrtj2eX{Q?hlP70yG{4;+@-E9N^r9( z@I2mR{tS`E1mzVLo;M#KV)EunV3i0`uuE>{H>(+^8%?JVjCXG<1xagC0?#Z#x3kQ% zEaLpF58A!+VY(2m_)FIcSVDwxBrVfG`gVKz_?w+x-Wi82W+T4l1|ZYrk`7Z&qankF1c%xk)v<2dw%vXNUTY(aBnIv`Sw zw?Udw(9$A(0h%jJzpnHXa$No*t{!B_d*;j(x+8b@+YW<`wesA-1veT$n3rMmBt7LP zEvCC#)3hO{crC(FR=;^ZuQ%XrS>?Rb^PC@Fe5CsM~;rQBz3sNZgv54;_D#!Rk1C0zJ%8?8~} z?S1NpN{)7pO*}~^a5NopT6S$wHDO2_ ze;FA$m6op75y0xWye`>adERn4EC?$5W&6`Q1O)lp7X6pkVde6z!j&Xz0!%;GP4;N? zCrqq3n8}I0>@IOFpzA%CZ@ziCJ`j7MO0%Y_>a<8=Zk%S;ZF}pR!>jV5H|y%_3*sg! zisCthq(>^$>SiY0>L=18gXVUMlH{i!3bk*Ixv7K5djMXu{P6<1& zqu)LSE2t?@*4!VrywZ~XWAmf#8?R@KCT~P_XbMRGYF&zCrj4$-(DKjUkwFu) z>mp^hjm?IO-<8$R)J|fH-85Oua*Q-Z$=jlh^xfay0%GkKXdTT`Y@K|Z-0cd}^$1U2 z-B%@70=SNv+po<9(8VjoH!SDBIo=r&aY~4m&(3*Ww>R3PBzSOq&U7vEhU1i6220`c zJ9YhL4o{JcnS1l|NuX+*fcI`>jqPu>QWI&mwYN?+G*w^8om;J|Hls0xwM(z*cJ~-b zkEAzS)+^V{nOl{g!saOij#N)UFEc)o7xu;p&i}a6-D;~%uTfuo<(LbVjzRqeV>7GS z^{0U|AzHYaS}{&_m|O3rTPcr43tQ33G^R#9=en7r^<dr{VGWuJOgR2-rX(!tQxK`PhKdSkvb*x3Mc3BC`!hZagmkV7E27Q)-h~ar@yX&t1Gn zjvfgtYk8rUcK13udJ3;~?g!0(E6^p7SC~Beb8ws~JFNSVMRW8Sbwd+rM_uSX;=-uG z{nKq@ZPAgAON!?!ozR+M4seA*TZtZX+{KSwe4G<*fcQWzB|erNZ84y3l(vlAe3{qQA)9X7n_AJhpcj)%qQzAO0$> zob;8k@t5qM6LihZ)H~X|=ou958?MtElW>G+s@S|Lsn=6z;)}d!%1*eYl0648BV0Q*UP z=dpBat*&g7CszF9+5-HJ#tAb!BYNMZ^4pJ36zhHkz1ANOZLav%ge^wCCQe7uPORvv z^N)_L9Kk%kcISG+2z9#kIq2yA!iwMSj-B=7_-b9FgR>1CNb%TGZpvK&7Y}1Ijn1G* z5aE)5!SNGkawcZ`co#p(XB;akR?^Sdt+LmfB$U0Yq0<#E{9@pc@h zeOPzCYJ742jJ7(lF!pGg9ibTkGy0EYb=RDo7y|=&TWYh?ahijTR*!WB6AFF+A z5xKTf@htMkm9w;ispcXefb+rv{ONAGdivp5J{eC(o8qw(Hos7);a9)JT{QGh=s7E` zCCA>p=Jq4*Q;uzCcN_iL3vGe2GZ?O!w5p$<>Uw*E3YM*rk?44VUQVY+vKDdJV0#Y; zaTIX~ow0DsW!5ht}ef4bqdRGkpk98(V;O#%LM zIXQN^QMF-3MM3b1IU%Qv8qCVFc;VV9fe%yD^il!sIdlGZdk1&-vAwEKDf>wNPU+`* zeGP5NQ#$K#9C)*Ca5Bn9F1CkGvGAHjSi z_v!u$GZexx6xRGsj6K%V*N2$|VP?WR?bJdt(08pd~wB9AB#hq?8 zP@RP-IzH%FDNO}mLkr&wm3d!vC-;f^7!~SDgwe1!*FUcF;0^HAz*4o$Oemj#cHZrl z19eL-W(U0>$mtpb1gfC;vx6PDVmt( zr9v1^rE@qf=dM&?ug)V|%=d}V<CsM55HKn7e1_u z-t$lTpkqnwwf=hdMcX zWHnn|-9PyM5XGLX3gQ?P%5K*25up=LsTXp2E}N-h?Fk!T0!?Zv>euqx^(@EctE$D9 z>8+vJtZ(CM$tTt7AZO`lS2mX?lOQbw+#oDcCR_+e!PK)4DwV{S()C))s zR99#hMY|D>Iq+9%|7)=W`uSi(3XnYi*MI&9D*EWwjtO&b{a)0AZrS;`gU$YyH!LB^ z(pQ*jSxg3-+kCAE?saRQ%o|_dA3bm*f)6Z1T5bB^LiXF5QOC1bmA1+K1rrm~KpHmz z>eui}YO7()C;e5g`1bD+PQEg~vV`pbcX`s+VCT3Oo;<+3A?D(tAI5#}oOy5mxXQem z4qddZUtp$-Ye<^h!~A0!<$7QOw$@7Cn!%F2+8fiLoN zG|Pf!||QPdTTgX&1<2wVXEA*M^HmqB#0b!NVGE zNh5w4HrMHwjT`*u96HG)1smV~0dyo*-ISAmjYnJIas*$AcJAa*;Y|T|tjh3SqM(A< z*mGoSU5!|-c`VjGA-qk*vY&&$ge@-ciCtUn!7>jqbLlxSbp`3uL+yJNf{yL|k#?)l zGQr8Xz`VJ_oF98hLqQ5f5Mz(>qxPM*gtl>ZqYaGO#nX=>JBjaBN47|tPu#zP+*){u z;8(Ax5_+2qJj~7W^kz?yH|q*bnbgVu($J8{z@X%WMC(Y*e z!|wiBDPuE--2GG2BX{LseTmHEw#PO?jxH}kzbT^aV!`{uJlj|1^a=-kRAA_Ch zZtwW2uJ5k8eg^jDG8CRki zXd$Pcyx|fMJ3=$v0YOe_9Rw?vrP4f1q;tU73%Hctc5H6H?XK(8h8=0H%k%@cWKL*} zN5(T+&~lj|No_G_Gb-^&n9;|&`{lgN(9}|`Mlnre(Jct+t3?NHxA2o$LyPH-Mu+bu z(Hxs@&8yI`u<=|4Epr?2zw)u#{Nvzx6}DIQ2w4gU2uQK;qP6du$=P|rbgdiXlwqa1 zM>wnbyJY2bYUff^yROh$xmF;bncPR-acl4#!7+}cA8~ot-FP7jg(w-^%YsI*33U*| zltxYbacsb(EW4_BMtA*nFr~8W z^9*;%*AwSGMfEaQECuq1xGTm3g%>n}ZtJ+0S+|=RxL9?y=JA&V8!m`ks?X4I?@O5& zvup%p=-QyxDgeU6FwByhwK;PN(7AZ&Kzb-93;Y5wjDeei&C?>N?(<)(593Q&r5QL= zf5GU~%=j5H2oI^kX`Qxy}|#+I>B7J7H+`{klm#f4L6a?IUmLW z;ZdExFno7jeR}Zi`Kb2BqAdCYCYAT&++XR2IJF*2=`XlGGTPGtj!SE4kyf3qkb<3h z`m!-T05Yp_zCL0-T}`{zW_9Pf+3;#WZP?P)BFjIoilC$ge3~z*p%{$i$Q5{7M&MuP zB_i&r=88!$lgt!=v)|baXz_pXce0QB)aqXbzzL!mBDovnTpVz2jU&bPT!?{F$qSar4o@a~W2cH!5duYRa8<+3> zG*a!fu6&9a7wJou;#0rWm_@sv*tu&TPjIthmPftnjdKkZ@}74U3;=$Sx8Z7}-H$!7 zS6v~J zbQK1%4}#*{Er@TX-PKqis)F+VFCAG%HAgmJi%q~wTB+P4d#rW^lb^G->+oF~I`<_?odd~5c zu38w!w9$#UbMDXm3JB-uo&2^Vdj^1QI?^h39>>9WVv+#!9;MvAVK``y=z*A;S}-MH zhH^rHg3vp=VHq@xX$S^ph1@vbEh7Yp=lC~oE_p1Eu^RmveQEzl#)3=f7g>DnsNc(> zW5IWOQ{r9he88o7$4?3AwQ2zNC&A@XR>&!`r&kE(tb(+yzg8FoS8)0bn&wK0JB?R(%vnsMPQF^y?y7+7XxxZDx z+tpv{6xdo23VM{;Fp8pP*}8&T4nR6>_l`Qe%eLs33qKbGT$E0c7?@a4J&{qybVH#L+oZzBzZ}x(#^5>~s?aX;a7UgJ=PsbzJ%d>qx@xH!hR!QA`&-4(gkWWp z$Zd(8*PiX9SU$_PmjI~773Z9zs|PTiDJv^0c#+y~Z$9LL0EhHXFZ=!Ni5=imDpVB` zD^?9wGg_48DL_YJ1zvWzPIp1SJkMa44` z*?lPiP_;rMcg!-Rbibz6($Z4)onP0L$gO~%83e@`DJeNex9#ag4oJ)0NC*hPC+e8t z%AFsNqy8;9=M!E2=m2Z=$A%#34Apux%#rUUc+*nQzl#Z`xRu6RwI!>{S{DxPTAGXA zI91{@pPd`PbrzgI&0>4=py6X~KQE4T7i0`i5q-bAXV0GDSOW+8vo{p)8x{i9OBbW& zvH)!!>wbN&lq|R+QQl5SW8H3WN3*cIb)9c0oj(U97O*qk4cMyPV`F2(x?_;oiGaK& z)T&M8x>8e9&w||w;XVU;l$y^%g<;<#k!?t~0S3-}_oGe%`~nO*2KStt5>mwbAV=tfVWizv!zc$l837xp)~*w7)Xj= zzaDbeZEFJxj%KC-!J+Oo;YX9la8FjA0LR(A`fJ@5S;PD1LD1<@P!07*r<2GNka=Aq zGHV~>!>QdI|`0XiEDLVgBHC`5P?()MWbq#c|tmv=KD zh}H1;DU-?^l?68aeJ1*M9lSx_tLp3di_0LhMt$Da;C?J@wI{S^IF#Id{9JA9r zjN2>`WzgVZPOZ!E?Y-xk z#ITUMABKSLMQ!cXknXWwOu;^C-b+$`RE(6AeMN)VoO+QLA^ILg)um8W)L#YTesva3 zY8<%%#H`6)O#5i5+T-*KYA`+<`XE$8gIxdlyz7`&hFh5~jWYuW8f2y+BmDwK-v~~* zK`YziEG)z=I|Av1PQbD7c0(#$-$Ws&fz?FE_C0aMiv!CGQyjX*_Inabo2j=wgc}P0 zAL>n$ySMh2#0adH;f1Ar|Hdw2NF+LY)@AkgEfhCsuW_9``E1jsx-Q(*%rW(^v9h0N zlY_nhkgA_bQ*`Z==i_mKX>L{T@9pNm#({yFg?jK^I-{*D!JmoIgqRwb&Et=JLMs(d z5lj(j0W|P?>lV4bwo)?^?P-0h{*$~5Y}Gzoe`X4w8!rP z@*!f+r}*vJ+Lvwexx-tZ2o$^txJkU0ZKpzx)0``Tf@c46dl{L>HN(QXsNaH=$!}P$ z3N(Z?%36e>z5R5;+qaL^8r$=4cJeO42r<<@b+f?*MB@TZhVdy{Iy%ncH1HdUhR%;2 zBn%=(gbo$Ez(w+fI|W*TJ8TPtUNjR+8jFMp^

WGAsB2xQO6lAfRt+Jb;gA$!wBzr*ze_BYxCY)N8)|ybp+aKLyn3(PePxVpA9)j>pu1 z8#t6!(8oJ{IRU>Izoo#5wTbB5yUl{(zbJ?pI4vwR-%g!8d2%Co*DL5O&LSYt$=fmB znqmTl&LQ}hi;~| zr0c^{5b%+MMW-Okw(QuLe7g%gPaU!O*6F$n*anGN2pwoK&ci|K#-AQiI?g73@e7_r#pRFEdFY1xdIqMsRg~u`I-?-#z3WA@26dE0GtnuWowF z3&H&d9_E7{Vz4B3q!Yid)rynye`DSZbK-KpEy66(lfZ(oA9IEt3skX=WKVWmgbTao zpVG=r6kmjfSZruWa6Al`^X{_BSOoO8{Ys|+99lv9%fR|$UDisHv%xmD@8pcQEU|sn zHb{L`3)etTJ%yRJOX?9NI2YIuRVwUbjby}K+4g|HY6I zXO4+_yc-%B5z@5=8j)0DiGG=f2W>_xT}stGauGHNi9(>JL&IfpniJ-(7ZkgEIVD{v zZ2b1Q_Z_wvg}e@+PXISk7UMXD*p(kSvjw+{@f`_<)DKe-2c-dX=_9T6&7HWli=ly4 zP4WKxdfPqXmDnA&Ory&ERbRjI^*;9HM}BIiV3x<*=XEwvdo-j3JNw?cYm;Mh`%E)E>7b2m=XV|3>0?=4Iu~f$I|fN zo})~0Cwl0a4pi~DvD+?V%{yV<^nG{eRizIPZ~~xYk*U2x+eD0^1w7CP%lpoVY@J_* z9biRwmmhD~#-rZ)-wyAmhr#bauIEWk&NN>6w3a@|s3!q75HuqU-BF}6*MPJj?=BTc z&#BcJd3Y6`>z?O+YVR3hP@hb&cB$Fl!NObyI5hFw^vX%YK)gsWo&u5fVGY3>4{s*8 zqG)>8W7`Vi42uTkd7$}2IiM0RFRwA^+}H1Ktu+l4?xKczg*R|sfThg^dGa7|_q97y zt!i#a8j|T9K5|68QyNIcxmMk3-@bq6aI*o!Bc-_t_kt$W(dUe;NOcqF=Ru?FpQrgjH=878YL9TB=YH_u`tRP*i<8~a_|FfM(vzejlU_XJoU8VQV z-NxXSR48AF$V0?kejxx1c2y3HZbxzmP~lbi37=`)-p3-9chD^8G|rwHo`~tZ|B#3F z%ty&ht;yg=RJyjH9V+bV=xm_0^HGWGVlWIuz5-w)3)Aawv{1=p-Cx>E@(4-|ubnkc zmkXigvv_Gg)z!-Cg0KguDh{9KU}5<@ia9rxp=Rm1zBE#^GM;#EP$LZqcDCD+9STTL z95g$gk|6^_a@=?yOcD_g-IXo3IJDT&p#i(;-;%7#QMl`}%{DNS1Vsr1JbUa3wzMLN z1Mx8-th#ri|m zfAIbP?iR4cp+pb}zWG!ujWQURa_$2qZ;4tfy;(*NE&v>Pt-xA$3_^44Ouv2@r1;aU zRLlm!>w4@v`&DbID=!{S?(5c(Xy+f)%pKFoTi~Gjllwi3flwF(5o++x-TPIjv;n{w z0@CDJYx@`^7y(47YPS@wUVYipqVnkRV?tbg3tHV%Bv2#f^@#~D^HF=iS*Z=o+qPA> zZJ4C&fJ(Ldii;2?55qL*+m>cDcB$ZBYfq?|v5*N~>5$$2R4TRMN$Xg^&Z zB-fY+tQVDq--(Ln<2bFb^fREOSNbA^ad4L*D;$N%w-E%}4*Qm3yvWF7(|18L|7K{T zdRnTG!??<$fPnoSr6Dh0eu1;e1~ucV%ZZ1)`8w983i>zw&{ zz3pxcqQx#h=$yD{iOmmfBuN4gkYrExH z7A(fSuL5%eLD;le+zUzgvo7{<$pIGkRf{a^!5^IsO!i7hqQQVfQr07OXk#vd=@{ zk_Rq)uEwtY)htjf!VITtFFQ4v z!ZaXCLh`L%}qv}bP^_;kT!NE(&zbE;3)acr_qobZNfb zAW_Gm#=|h?J;k;|lNbd*Kkl5ByO$u%lF}Q8Un^dLGLi>Gxb?!BPcN~UJ(Jx93J8nr zO9LLU7I-K>a>K*G!C$cuHd#wn-L+9ZpUk zT{a)lnq>6FMeN)&q!KiRgoSmXz_Pc4Jq2expagUoOrL~j05#**%?vn!0`rI_6x=#G z+ZLEX@k)$c;o7gtVeN}m1{eqs!mqrPkT7`&r#Yd}fC8{hsyQ+4Esqa8E4b3sTr;qB zW!t-B4kGUX%KVGp&1jjIC@09vSN=mXxB!#$pavhy>I|sT(FLdqQbP%v#XeUX#X7P` zDL7%`axsaCmmQ~jPA;1vza8r4T719U+4dVh!@x(#P|9Y+IV%LxuuuZ$w!H_Z5eenQ zQlbN?PQQNld>UMr;n^B)CrmgvDX)W?YQk89y60WOb{&J!r#i8ss0yG5dN*e~PH8<@ zYw=q5qdxNnA`a`o`-e6KXOgnP))jVGnAR+1+sgYqL~(!UWnbI@B+7;>Vo`L<|5XBv zw#_G_{P(Z#EF2s)J4V~m!h4`$zqQdFj-Dte+=a>_o@JEI0W)-VUBqcxr)Xn+Wf&sm z{VTs=fT@~keH14|Jx;DiQ*UtDLYRC-UfvfuOFtipIXdPaKXF3lYZ#w2hTl5k0?hBVo{tPVx)-uRdN9uBBvc3eQ{wD}p1*_B7J$-D zpqfJ`*DK&CQvQdXrjUot`)Hm|&4H70RwU(j%?kea=5`Ru6X%jHGY4K^qPf}*QGzJ6 z8hEH}5#`$rDJxjDo6kT)&aTb$m+3+H0mPx4jYE0Ji=F z%%SHw+(5bvbg;X7VHq=3V`5^&Jiv=0E!&HomyRB~xIOmJL3mxw)id&2qE{XWH^26< zK7E^F!O30(={tZrz%sQUEQ3kyeW{1@? z^fe7Ew6?>002LGI%t_)LJntBkt9aQgmGHlJ?wv`2YTIG@jeNi{ zQENYbc6J$*d4z_5vZwsZAW&~h*X7vwT`4*QK7WNE1Zlhge1p->&-Kr~57oT>JS(ix zZcNCDYIZ>BsZeP8k(Xcpp^XUEfEBtGs|4MLJ-AMN#?&v*Kl31Ly`tQv2MGwdTzgaX zl-B#ru;H&d6gv-o5cva5Q@<^l@QOw*hBIM@@RrzY(}`Zn1Y|E2Ag2KxSCmU5)Fh7a z7U}_d zY`Sehvns3{Ot%R%Fi<_*7Je9fKMO17Q};o#RV0wEg1(7b@pi7_;&iDn_N#MyGHdGtUM2)-J*77qnE-Qj4yrDyJNG;+j2-aEGz3-8me%PhrpyP> z@X6$|7sj1~js!rG4Li=tipe8aOO7gsH1;sUr6(sRNjb*-_X;WiIMUk9AdCF7R*Lhs z174#cBEoN=_N!Ing(O~N2{mI>F5RIIoS4`&mpw%Hp52#1vI~K7+o(TSix8WnXaV7E^gHz9FL%RQXXCIbnMM`Yk?% zY@AE>-Zlq`0UOVia8Q())nUl92cNAlOH%D3EN<#vC~#NK>J>a9i*tWTe4fH`QiNUg z#pz|DWVj+0Nxh6DX`9vGyvqR_?`~_1T;HAVWDk0wb5r(>S7AR~y+Ogf>RKFal!&_X zZBM_`!%hGC1fkD>z$yHbi_1aRs>H8s-_gx%UM5t8D?8*#b^i_E{8=P+@uD}h6qmTB ztStHQVY|L(3BZ6~3`NgkMPR3*7hlk=D-491MLk0lPtqzl^C;F)M6rvU2% z!Ro{VsPYdb(kGFwq1OmLo}@Rs z^W{*+#-8!?X(d4ENeWkPi+Awjme@-jbhzvNXa4vlKMz!#x?ecsjsFJ&MIE6@ki*>E zoXJdIi4@-g>~z@kvo?J?z%BQzS{jKyR%cAWw*UoJRp6m>U;+ER0y4@{RaHgMsxAnQ z?I3eZnZkbh3mS&ykeP3KD@O|<9_cX>Dg4o=umc++VJ$;Vv2~Mxxj`<)Mt+oX>k3YE zQEWw2%|2mjYFZ5_>!@udVt#-FrJx180Zd&MYX~7!yuN_yOLa|{vNH3gxKvgcrK*I8 zHk-D-+}75=ih{Ri<~I*!C;`@2w(8)CtIrS&-aU0_oY+czBaJ2RPdybyB6+_@O=118A5FkyO-T**UgMEw#%--HlNl8hnyaa4Nqh)#d)&T+kSOL!R=+~3X zxU)p|t$>oGU?65e9?thPgZnABv-zB(znm)r4`6jmAjljy zFLE$VeBA@*c+Q|E6-j3yH^O7TJINaw#*RrrB+J6dDfiDm|Mc|lvBWDjh5-ri)O`caQ4JeHC-V;Gy7K}bhbNe{ zG?p7`rD1wzJUiVnLHooW+mB@L`59aQ$7EzyR8%w|>Zy+q_-=cZ##TW_hBWl_8N4R( zZa`(!#kXs|Y%T$zm{&M8p}{|+;$p~scxWDT;D7IC2jRKBH(Glj$@IiGlHa;#)Yb;+ zxgJ0S&n^0Xb=4LdS%l`BPno3yR66X#&siB)zdQ-S+V?5lY+=~&@@z3+4pG{QI*h*@ z6Qrc1M3xT}KyX3T-EF`2TLP@7XiF#S)?uSCg+u=F<_Bs#9E&pq6uyLzW|sQwNS5yj zH17SxK&Lp4G@nFl1Jx|8%{xZm1$hL$M+qgnvG@?*3I=Lo@HEoA*15W%GI3~lI5fa} zw!Ecmiwof8+91zKhZE-yG9WV=a{Tvj$i^x#lzK&{x5s=qaW3a4L{ytRowSNl6dMWY zLTriX6s2PaU9%(&0Lq3Q2w&K{!E-6N0IazD$rt`eL|Q2u`mfN~ih?E|vmok8iL1)S zFUdMYl+)x63pfYEClo9qPq?iwz8L^c@A-t5gI4!@Jf-ismiO_QWkV*|Zo?A?!alk~ z-wC-97ub}hQumdHqi5s9cX-GA)8K_!w-$uTd-JkAg}Ynrn>4o$C&MK2;(K47F@Qs- zi%RK9dIwMQ!XFkO$rpv)?dfq(jz7}nkIGTUB7+s^7e&YA08OEwIl!kz32(8b3P%`5EQ4t0yNr8P^S z5B&3KmdoexP{@D=>SnQfOImOX0Y{5%GYtn!KPD(YcR2qJa{jV_DT?3vZ7BQ}JZdWM z1;A!}@^;>nMhyZO2IxEHBxdkRp%xVDZDYKd>wu0Qy^hx%xBUiA5(kV3(kjy5FDQsC zeHx4c{t;JFQj*9tHRexPG~h`{)FVKH|L(iU`N;fAwT2U{yU6*Vkf+f_(LMf+e_q+L zJ&lg$h8n=2#eUEJL0-W1LZG1&x#XXBu5t~W8lZ>lHflBjjIQO9X#4Hof?%&(_}l*f zgT1`SiO+VRi28x64ytqj%KZc3>qu$Avz|Y~v$xPPQ#YFDc|^p%W7`&;01@{L-rfzs zEmtfe_t}pGKf{6g_-!0K@pCjTup02Z5!(*LKhkmPbr`JpaA(tFy(=~_=_T}jf#DTT zF%B&C0cU7|C-RQ3|JIuSz6P3tJFgR0A&-ARFE3p}7+K`5IUBcae zmK!=lWP7L z=!H9q5F8x`W*`EPz5oYk#+C{Nsm(LHYkrRS;&&oE z7H2Wmk*IS!|7VA)ze}h{=lz$Vo09W5YZCC)A&Aw|7hF;)TnP0&mf}}e`Zt216?sj! zO&RB-M~`CpFH7M7#lKqwh$-}a`DD@z`2nlVP8kbQo%Co=y*; zhEjLvTmFS7pYp%~X6R*qEl!FIvFu8r>Cn}JjRpzwD(Gf;p^KkmcYzo%Lt)C{)nIOY zE=^6%;d?-@bsYk9iG2EfqbukVOM2BcQ|zC$npeq5erKx?W)9sKCbR90zs-f>A`stbwEy`)ZkQh(6G?V`w-c=S$0> zgv3PaSDEYL^ejx&aPfR_lM*Q)Z?RjqvTg$Fq_B~LkFRyNtMQR-555XH%SdKimPhPg z=wf&&;U_k&i#SPht=$paD#6}rIFv(`$2?EzJ3^>!Jss34E(fqJJ&$-yP&W{* zp3|uSy~fC;2#n#-&`|IP&5hom+&x$|pWlhpn|re<{bDi5PQMH#S@C!|UUJwlW5?e^ z5sO;isF(%c`jpumA0kpdyC3|E_QEFw5ea>d&dSa!1r z0jlnRNgbO!Lvg#>eWc)0DU0o#a>Tr@1 zdlIgk9SKtUw>#p>gq&#+u#Q;(;e-J!QnDYHK#+$(YJ;F$?hCNiPo;enkL9)nJ3@W> zx(^s^>U(lBGS6XXn0iy0rzf8P2etmW!S*Ab0F8nwNuWJ@r=PPTolPb zVT)n~Ynf4e^xy(lBy8lV|0Q~$ASFaRQ=pE^La&&8G-tmwJq3t*Q^tav)`ZBsdA-XZ zxOp9`=uRpIxs7-rD-EEBzQ`KGKW1!dDg#YU?w10uPP?hOnFWS?j#ga4RW+cjB4~Tt zuSZJo`XAJptD-#ZCc67y`d?hnV7w)X*9Ch6@hH)VvET}fO}_~6nv)=kr~z6uTBkuq z#J4bSOAUo`4(1EHYS}1JcmNTEq<(X?7W7!lHE%{9s)S?hzHJf2|HKRb8&lw|2}2?= zjBY+d4M-7+HGxrPV1DW^`B@giKNDyI9^7Wg_~$I#l^cK@Tej<>HDt8|asdJYp!%*A z3BFsP7{g_-v%AMWHCk;QABI;bfN8$jsJ?Y&+t0fZ0Rig-sM!iHB&xCy8R+a^ui-9x z3Dg$ZGLN;PjrExg9j^Mn)`=*k95K36@;3wDzhC$>9<;i?MGp7Y4=|Jyp8#^P=f+CE zzg``*EGc%HnGT{qV7*AnOp5~uwrxx1Mbxz=+jGN%xg(vx$;=8UjoH^flNvpPjxRN! zdxra5XYyjzZ{pLcxQ8H700(MNV8)LI3SQU_QPSHTwr@r?FAQIZ&RO@|xZqOs=FO*3 z0qA%WE>`?6ULJ$upCD}~`31#NJ;0|fl>w7X-9#H0;V%(q`S%9YvCX{mQ6T#=uj0v`>ZHw-gK=b{vqUe@c+hr&P(jZ-gnRd!me44 z|B9iZVUTyeMXL<-DLD?2{n?f%NOUdRf5>ioExGs6!{7Rv^l87>p=RCZ997&Ohp2p0 z*834lS${~O4N(UT$1`WZf6hsgMM#C@k;$O22eub9bFHipG-FZjyX@4V?;u$cC%R3pQltW;R zS~*obuwK>}23qm~>jKpX|9?f-lnsC@(F9ltX;4S~v;vT_b8mKDgBVnDrz@Zie5C*g zFaz@b^z)M=A>4Wb1L^Ne5#6i_y777Lf9AgXY5C(r977=bX9MWm@0x~i=^B6V*+bAG zQH=CnA#02RVVmL#%&Ybz1BD;~bhXRGPK)O?5rY56=NUK!l6Z9g*7ifh2{nvg5DL07 zQx<|K^)QQv37i(Nz7>^361cz!e-gws#qQm4S>r&hFgNR;P~&3xJuuCf3jh`l{kL}I zs49fls_Sf{%yjP0Lu_npPf^M*xA5}tIY?s1eK?IEcoH>&5=}FR4D7yrdPFMGkPr?q z@$QMtQ9LFk=7r4O(?>D5(l;+rqCS@iPHLdPDRGWMvNqutmC1*x^;diF;S$aifuFP2 z8-kM>I4g2a4u}E*?E^U-zJKNKe+iXalDT($&XE;{xQ~^6|Nh;7!WtN@*}1}pN#(pz z8$~cmx+b;|T|NbT?abNTUlRd*IYop$$+iJwmabNIfzCCDR%ROKc`k3Q?+yZ2P-WfU ztJSvr7H_X39R)VgNQa}!pkp4t4V_uYfI%YaV2^9_g?C8B%E`RJfvE=H;byTZMAbvk z3NX1%O>}vbIZk|~>IG{}d-FF+V7o&TaTao6ECu5aizMH+4+ykQE*KdZQK!-Xuwod& zu#lp<-{wUP?IwMKyhMmufR1Tj3wG*V#r@XCa)Yf~B$z=w&vaI8TuSGz)WAZwO$c|{ z>NP02GI0yygSm^#-n|gxah$(FoRYmaVwn+$S!DMr9tGe$*e$67StKeer*rBt^m+7E z3n=GGtBibnd0ji#fZ%EZyZt;eQnz%vlfY@MUfZTb6+qiZ7B=CB#3jURyilX;p!cJv zllXNSK$8RSQFL8My`898t50Rs^c_M>1L)tjI* zSfv_Ba1Y1Lp6!8&WtUNT8XY^OHM#fBhugV)TblCX@tF6skihQBt;~bo&z(7DvT$O1 z=^Fuj8b%3Zus9($adzcvFwNAzHbS6z%02V?Pf|pZnyo!kuR`r5!f61f_`ML%W>(|j z7qEhUUaqj_hXR38G}e(7H#&1^J4fMvs1)L2sNZOM@i;pIdQWL&iWLL4V5kDAJbtTX zO#mxZ48x1-As(RG08%H>ekR|o``^9+kG#|@H&9vBvhn+BPC>!0#6%Id-?o9$aqV5$ zN4}tD*!tCmyMrfY{csVibUY0EsWpDI<;j{C&(!& zh_6)g|NE}J%d<^thJgM20x-X@g#}c>52X}$9FEi2LKjr-ngVJ{N<)>@H1&)q7_TJ> z-5^;C`dm_OWJVnpAw-cSBw!P&y->euP_+C10LqLUnc$EJ*e6~ejLUw%<;i9nnHk_$ ztnUbfU+&6ywhmD$(zbpwsu1u6L&+gZAg5r108*4cMu$5o+twnJEz_#|T+!(3C#c!A zy+82P9;rF-V?<1E9oc`x6=pCFBYN?M2XM<#mhxJP8s~Rpx6O!p5G*p5t|5AvDB!37 z6OhuPj|#iw$^@DLXb#DZeb1jY$bo#9>ul12d3lfaDZVXR!7egxOJ)*qfO$$|%YwGx ze^ej^6QLIIWr?X)b0oJw#YhxPQPB*po}&Mi#Y-5=h$=HgAkZSuiJC; zZThXd8o|-6>fcy*0?vPy6$8q$4brl{9)f~n7Kdvc^dpiZoTr7BuG2z`kwg6 z7l_5KwqJ(K6@R~5^PTM2-YK9<1*7sv^#_4Kk_X<`!}TOi$crG66&Q)QJvmLAc9ET zeuO>4Dac?VLHkh#Krned*WJeYN-*&bI-HjZdxI$Y|HaT!{PZn{Y7aC|fUozZnryoP zMsI_C?<-fM=(_wY%XThjkP{XVHH}kDOdk>l^zuE|3U>9l&X1cosdsqnAVG<0$SEqu zvqByu1NeEOJ6tXwK@wX}jCJaR1m9JD)a9=++yye6KQ|_Oci&M}?b=uqiu558AEmJH z@nN_~wCm9O9oL^SG3+Dh*byIikRX&=@?gV7BBFTN9G-_>6k%+MUd(|^q)pmPQ?aZ* zmr0T~oTf&;h8`cebWOg~HF~BvU5Bc^&$4&XjE?a8>Vn|b{**@p5k+1FML6yREZ`7HPoeC13_ThV%S5|7E1_@d=aY1I_ z+q>6xY0$6n1ZoEf9=hgwT1H039aq;H2snpVm*$$%wE3N3{;bZmV^0L78G!W!Q@zo%s;i0+*Fe8%n<)lO9~VZ#m-#jn$?pK&R&YvL}H0((Uek=wIJm{j}_T`rY4YuYn#~Jalb^; zp$YdDc`+2<0H9oJz;k2K6T)RJS3^L{uR+b!t8FS3?-#LUm4n9~4@6D7l?AKt+rm(` z#(SfI0rldxmVej_JB(7bLTPJ|hW$1;_$(nGDs`n1;sFQ!R2KPxQ3WyK2A=DmNK!r! z?%atE^R+w+)wM%%k|2>{r-`|A3K_to&USV}q*b@2+0PN7-S~T{1x|Z!Ek@R6OMboN z!PA>CW@f`zN8m((=NUBQ-~9%%!FFrQ4&k~k$EWb^7ffogb*~@_%D_X{PRA}R99G2$R^{sy z+3^~b@8FE6=LsnXZGx(#vMrLKijx-(!LQj_UiFXm5bjxX+K$xG2>|g8_&b^cD#ewgSo@=0}TiFXjPKrTd&@Pc(~(vA&f?F3p0P5l2h zUs*H#EZ<4qabZa-FN5#{stP9}CcXlqXU~}p*a+tk)HkQLCK0Z%4<*RwsD7-hlx{Ka z15*zCn}h21-l$ms2zHwFQJ`x9Tv0rFzz!uBVvM}u;V+QCNm4kKq*qd`lCGm!sj7_k z+`Lj?r7<#54mdBG9|5>h;d0w4aDRp0>mD(}ih+ieRV0&V(TYmsUdxM-lasf5w66Sy zJR@p>5;8Dgz&V=W8y&45)r>(!REUD!ryX0$M3M^S>VTA5ixwW^X6WI2*x|Wr-OpdYDCdLDXcbs^NxXDx^DlbG2oS{!1X?PcLO6#76|6D!V8+ zIyxHYo?3uGDL>rHh3eajG%vu(OnsFV(fALl|K z_G2{$tJ7r}#IE|BT{Zc9^1+094B%`~KpUT*PMQzN?#oc@k>-AkhK3!gQ=S9Bf&9;A zOQVZ_p8P1w)6me9IDn{snloJgs!;{UaZ@TZqKQMyhM6Hrp#9`$Apouc`~9iCT^;ZPR(g8+w`2PA&^L<>z)#5PQbIJ;BWXf}n!R^NMQ$oNrUU+Jv^-}5vheLMAM}CZbmAK z0>xv>$Mx@uNF7x4tVnv$nXXro9F##naLtn(j>YNgLM`|*C`B~Jg@tIyaZ8+bcw=B6 z%P^Gc|0#EW7I0NP2E3bW^X3!b#|H-oXThfq3$_F>7{au&8*9!kE*7zCz`v{pOZch3 zUte58!fK%pdI0^m>{8K2kPX4$?n~|Wi>QjJ=2O+!`%Ua5IBhi2aY%6 z@8BR9;z%ca0@%x%C|mNA1b-{c_55>Z9Tcz5-+B$L8#>?00UOF>@WcJr^49#{ksAn3 z!pA19q-*iHUKkqo0Vmlfzi;l?!LZ}XrHd*^haOzKD+Qc4Jh)z3bF<#RfJdN2Owaj)J| zXyo2d@*cc-$ofe@Kro1p5-SE}X$}gHoc-0TAX)`Xn^VF`2f9n%y~~{e7Az+!VfXUd z5h`%|E$S6ZypXP==dolW%hsoI*}A26xF%#6GgJBkaLg~j4jYk*Y-R^gFb<*N!@!Kq zv?u|CjjDB=j>np9t#El7SO(1eLi0Ow;`83Me-)aS5?rNq7)hiBy^VLmHecCBZF*vm zOFMT2ySUhXcM5*F;9Yv@4ETX_r1k?cK$?FFZ37yz@BZ;}E&EfV9+1(Vh>eX6Zg0(l zHZ;U)EkGvZ9H2jXbh11-w2N{RfrTiw#&dn{7pNvzq-?6WgDpT#-<8_2<1$ zpFVY5$ZG{}3g{szkv(DHq{HzJ?gKU}JF*rk8B0%8S?!_Gz{lAPcQ?07?n$v8s;v3^ zFd8Yj@-JOl&0q$Vp#vmy84~jQroPL6w&~24{81lm)0*wF0a!{`B-UvU(|}f$ZcBT*a!bE8MX4#^D_}Ptx`s*y&2z9Q^o>Ev?I7pn_VsSiX0h zPf2Tp5(*{Og5A4zStNueBqUhs3ou`}pc4f}S4s(yv{pUE4zh?eDchM`*5eM?`hbGM zfy@N1VU4+iQ8 zvH>>f1dQ~s9XScfQ>YPwQy8I?ro}f^3{Hegtw(xU=`?)p;P2VD5Q` z;`0h(xi5UdPV+tP#W=}==ktFkd+%^A`~Q7BZc1q>+N2?}8)QaFONp#xHY5=;Lqa9p zq=i&w8bnse=GBr&l$}|U6|zP6o=A@u zP^foL;EzTGWx+m`BO@a`>(}q^@2nF+T1v`z$k+kYHSBD`Vwl=oC(57D?i>43$x(xF zQT+Oh#3;jbfCZ<}cAp5hYhtSLO1opF@~jzAXyIv7v}8tDGo~1Hr!9ytRQa=3$l1k< z7B#=r(8gf=_v0{y!5Kq}^4FVHsIi$L;Y&TN)xYz{uS%|r=W0=u#AJR^;B+wY_zK{# zMdvb4M2yAQbbVHA4_UQx<$VB~ALXLH$IeKBKS{y*t5VNoH*6^Gc80M88hWj^hf&O&E z*Z1i3jHV1boLr(>#JE^nSnF=`<;yek2S{;+Sxnnu0YbMG(0m+M^0}=|ptiR5Bl5E0puHcy22RV)$vj8kn|ZZx_j19aG(YSnmIMM{i1Gc4>N z@;I$4N?~?0>sxnSbmE@K-$fouH%)wdf0v;z(bk(!y?q$OOInO(9e-h7k?T}K0Wr;g^7T(wH^?L6{-;#m#4#ngU4MSI-I^%ZFxb` zn)*FraP~V|ISrlZ&q|w9V80&DwQA> zP+iRPM_POPt5*!6{Cq>G;O@;qvWQY^$P!BzhQ~;7s?~G+k9#nxEAO6u4^5Hfo#=H&dF(&1ZbtiX4y=;MG9kg9FLP3&ER&_4 z=`q&?iGhGm^3;u6w<3gE+S`R%OZo%5K;+pC708QxNr&$Hb_bmh@Hw*V@rE$p(gcUuCA$gs{y8REmP^2xrh)1^vqcmCvOE6Yn9osHDz2XE?zza zwb>d_MdEch>(2Cep8?78<`0Z;ljc{KzKNB*=Q1|>A#}?>>Cr!o=NEuh0AqqArHqV> zmxYCeR;f~NvS1ye{OG*mTb}PI@=OlB!`!t_*ZVzL38&&p{O(r6D5kY^1_wW>B`haj zohVqKc0MQh+NtMqgp?!ZwccHV4^aifuRqbc7{PqJ0a;Y_*R7Bh`96kD-n=$rEl|58 zopmVQ{P3rLXFQF%?&tS_xw;gOPS{Z(9)CQ!S7$zc^lsQtENthoO*6x%7W7X7@JBYh z6!m#Y{{XFo^lV|uX~xYv>d`-jan+J3XT-H8B0)opF5Ty*PC!!$m3o{{(k=xEY}>xw z6M)x0TE-_PpV*kx$WJBOsP}FTbAXyzn}Tlsb!Tbq%q5S$ks;4s4{X>{C%h2Uit`pO z_z-!wXOe&mmgWo1L8d<=63Q@D_lMs-do;QhEUI;_$ndC;R7NW8fV!*uqlZBVvtk z0=vKe!S4Qpo(|;o>#+t(T5m5YeECyB_Ob@t8uiMRPfg}vMW7q{8%1L1*ag#EzKa;0 z9S%M99}Yr>hHhv<^Dy~6k#HVD(BljzIPzq%w#F{f@g1K*R)%`4zTTNLXLeVQU@(>F zI!vHh>qkkj&k(G`a77))FM6MotoDU&ZRf8J-ca&yyX3R}q9PU5yJNtZ(ql}nzJUeB zeC3sT zP>vAwz}@B^mNTK%b~x80xhX>J9TKyCdUK@DC#}Z^RzP$1^sT>KJ=$<#MCQbNM?z#P z+&uhty?^Vg{CuV1tUb5aBa0vz+G*zp`1g8jT0LIZoD zKezY(e;BKT&Sm6ZJpwRnCuFCkrTo<+2(kG`uF9?f8`270rA&B4Q*|igcMg7azLzK5 z)3-(Uz2C8%sI3Gy0W$L%%3F*`=7aj1!~8j83~-WLf_iBs-H}u;^}P#rU*8sd6j8nV z!+exXRf`|)6|l_1vEPlQ?(M0otvM77iJcrGjCKvC$fr&4Pp&)mWdW`o?KER+=fWRy zeLUf;eJy-`0$SqwYU-1D-VltwpiNXQ*W(tEpYlK?aT2hK`CCc>0^XIE2Bq|s< zM(cbLW_+-sM*FLl7#ddILdVt%eR#eFX%``^%f+lm(Y?JyB|Irgt;%{kMjj+4xd#_& zEL_9G^9E*zMxYQLoK9TJU?G+oxvZ>!H*~X!ymK0jz|>~P-riaPis);?=CfSN&}XtX z*}UdSE0BZ8u+84?lhZUqGbG=fTDeFHV46t)rnyzyu1{V;`k&16h3)d6#d~BPm?RL#fbdD@i}o8@aO~`0S8LdvAIA zEDi}xx9@@T3riox1C_d2g>TM_B$QUQG0o8#-l_W^?paLCf@5047F`EvO&vwKk>dL# zQ!U~Z#!YbF>h1E(RT?zeF_rMAQF7U(A+IN(B69c|$ONOKR+aJ%He7^X@nR+a42n}Z zc}6`2i!f8Gj5~C`U|4P2`Wl|874jrc6I2S^5i~!l+0l8%%=2lh4ja zj2Awqp8AgoO{l%w3WbZgIEg23R^C;ZM$Djsi`7b}HBQ(>^To#*^ch4+I!q^8I8&@uRtfwt3L_W_MKS>Bhi=Z2u&**NkhJ}(YuO}S>1 zy@45QCAw?u>$KNJ)OlfwVr9=Ygafo`-p*aSu7gl<(DpHxI3#J;F}zH_J~f)UR9`Xt zFpn9zzm%TY<^9Q}N)=-N4;iQLPDAjf)*pJ#6kv@AlKrz=30QD^M(~|GCnOtX#`Z!v z{kgN#Ak5Lzx`$xnuEPMagp$b?Sxi40hk;b6@)k95k;?`K!GTdfR5GGLOGxA-9xVV_ zv;uF;v@Qg3Cu#mLs$_n+Ba82;*)Gxxe$NfisC1Gr@Ld4_Ws{>*2|+H{chzHbNO~CC zeQ5r9Hf~JZX?=>ql3ZQSlH_JA5<#IFqR~hU#pXiZRAQiiUe|ybganUz$uMCULm8po zYFLrV#J+y@ifleEmF1t(nOB?*Vg`TxXiuS>&IzSojRvkU4{*NntPu=#z^o|izJmcm zHnUEUZ;KXi1E6sjI;Brs;a8)5u~of zvu|ZUioeHP1^3B2;RT2+9D`Y+2_6EDYIClh8T{m-sYKS5q91JZym5d?Gc0e@Fm-B# z!-!^^*2MVmN!o#l<^)GBlu$FhEM5oEzrYkmcT~svJNbksE9hUPF~W?EaH#UPE3kG0 zb0BKBhKe5ZOTwDyI|yb@ffK*xV?NA`OZJw7es=@s=3py~YuGv7CX1Dr#HH@LK$KMv zP(G)%ykc{Ym~REAypxiUVi&ZKnOzGUr&rxP_D+`(j?5l2mx{k_^_g4J`3yM4PE3}& ze#JR%F)zInP8=^wk2ISBUw2S8F3ijOz}SH?@=dN1llIgXRv0As zfM{4PRJ#ta_D$R*_6j=kVSeaS-kODi2e@0+*t@TS)$rZbO<>bS*elU^7=hVq&iNU! zm0vxA8{!*_lQo`8S>@~ zw)`h>Q@1f^pPXfTX8@L2W?6R7JEx-TE;R+nT;4vtm{fhhKMs(AP-*lz+@F|p9s2tE zpPQPDTf)Jj{g7^Nk?i>5@qzfQpfBhc76OTmySzlqv)GDrFh&BsBHT-IPPn5QCKGKY zCMF3>+lQnq@8vOU>+MH<{75tU&fxHHThxKbNdzz@3eh=z-l<7DZ+S9Q^;f?({P$O3 zD4$`|S*r&h4vU0KP+R1Km3A`gW^iy!(8u86lAb`;(nsy73ZG-ziyZsr^C}-_7=Y{K z0ey9bfoic$re%Bd&vYqf`gQm^l3lYwWd=o;JUwr~V0bs?8A1E6N(-;Ynse1ThrcW* zMHF#x;M~;=7`gfY_vX#|pqyM#Nne^h{W#sDc@I%BZq(Veihe&_&*I_R>@6ZDWdT$R znGzt6>7Wr>C~*-&TT7a9dP@U}8HeYeB+K0|T-b@k(D5`e-yr*RSJ;`}_dC#m8EYs( z@SIfqrgT?FhZNMgMDc9y)?N;W_6;*wS*^8Jdh`QOHzy7^kIPi%=n)T)*?IwQ$lJ@D z{^iW`8N5ktCymFM3*$GHFAZ-zEa24Ss7IcSz&UJ}^Z(}Jzy&Vkb+ob{VN?VM$d5*Z|pB>Md&Kr0I82NcTXN4 zD)!7+OBn9N-=iQ(f-m2dGpPnh z$wbylc43`DA$nA`J9Yj67$Wz=^z2wEnZ}aw2DbIyWlYa|`?f^+Bm&5jw1K|CTM4`*{VIFz>& z0lW-H9*7Tn$A5nr{RPo~*bIE#%{HtjF{>1>(mgCp#MZ>_U zU5s!hymVESb4O4pkqVOi$60gHhptkeTu=frFNob*5u4HNiDGYQ!j{N!>_XIc{F|fW zgQvxzh_tl}=n&f9pz&Y0GIa}pe#oP7Ig0L3ypvFGGN5jKb<0nuTAP#{Sd9Igar%;t z$GKtT=no})`iA+x9CIaha>Htyz?k4_-GDvfNk8-%Jxy26XWXWqB#sz*I_+8y&$Eeh zBkzXq=U`2pBKm)y!Z@^Gk<95hV(fA3`pEErKSuto=?sy@(KP&!FPQB3V>^7s9QC{L zabil0DdiLWJIfe_<4E=a@v*I;L6ueR;A7As2`L!U3^0IM;kC!-&Ab=;cxKi z)-I|x7aD04ak&mib|-?t+miK}DLYAtOvtMQbJg4e^VL0fHtu3%WYkq>%O9^XZ|M;@ z5Fj^mlz6_M055t03>R(ZTCFSb4-UR?ka-}6o zrzArsb#>oi*P=%+m`mOu^`8Z-NXFq8E?$&6v-g+pJZKl_$$wyE2v61gbM*}ktI!OT zWs$mgVstu0aMMEPyZrPkLQ^Nvf#$r6$P{loOt4g#51O?Nd+QenNd% z`r8FIIwRtmDbcdPuuZ(p31b)Hx}g|JT=U@pb6k?Smf)})8t%t2#`D^^aN(+Jt1Q9u zT#U#7G3L&&urSxP=j6@I9t-McRJ2|Jwf>FTK3RHoA#>jvQ4!g9+9Rg|(FPDHvmfLgcAI9DF z#J-!bqEu9_MGPDR5zlSyeb*s%NR7{G16;q|bOrpST%c7FnJL$<=>B1H2bv`=|0!b) z`ir4OllV|-S4^oVsL$H09*U1d4EF*`F|JbrRKn9*(ie6GvWSE3$4i%i-#l;GGToAv z6fOqhRZ6CRS6>o)Q+&rA;nx_^*(U$s&L<;f3`*St-Ser-Kk@S|vk)bl0urdnQoS9n zL5+F7$z)$ek54vhLeD+p7d0~_X3JSatpZ?o@>`W+!U{}tOVlv>y9aI;=rIYi?*5(vZFp&8Q%Y-YszBp=>(}RjMziu;3ntdZ%DFKx_>Xsd z_wLN68d+yG86Cl)iN^GnQop%BN#(Q zjEr6eH3zT0i?)mH+n*Oh`rIQIXiT zK->WDY&1FS5AV?8q-(?@4gP5CZL3eGvp-*bapA2^7Qts=kmE3nCFxEd+P7iSxf;RxLvakq%nwxj!}YCd_hxBAwM? z2WGjgoI%FTVO%d&=9r8l_4tQ9#!C=jsbP%Zcq8i~`Boj7{@c&yyNljo9;1~sJ@dNK zYS25>)m#$z^BUlRou&s$+beTn6T>*jyOuQc#ECug<`HVc4^5O27}dPx%Pll4e!)W} zqRuLO^nd^FS*H!`1N3;8Zdpt}9~0SUoI`^|?Lge=3WH_Eoj74#{q~Mne(&s!&1V^j zxbQw+K}Wd+=Qv-VeV2St#aVPLQ9e~5jPk&BP)0_^bK~-blXU(H1AO6;y}wBpxI^&v zYl#ga^>csy$+dy`NkRfC)1RDb*dE{oG|Bg6Jy?JGyCDH^ ze6)-u#}D+q>14u%qjF5c4m>@kY15WQbGB0W5Qx!i`}XbY5mVk_F7zG3OJb(hh{53<1sn@S+1zI->8?`kS-9P3 zJuC;jQputRusnZp{6HZXPT%{Tz%4vI-0Q zmk+|M$Bc~LfO5HQq_we;hoB}|5wo0NJTQ(`He}&Jkc@On6NwnJbMy zAniUWq|)LO{{|C<7gj*V>=rKUFQBE2Vg4#$HAy-_{M<_c9*7wr$)O73x6|?XcP`&$ zS4Ybu*onZbzl4h`hPfJNRqs~I9+v{}8wF5~C$^$*sq;mzb}P$e2{CT8V!i+10ofuI zty1!j)2t;Mr%+6Hd73*3)RziBPzN)e1Zw}Fhx_QyO@F&{Eg#Y_GZ%zt^v1PohSrs2 zOo7E%rsX%tLKh61HLbUA+qM(ajP|qzJ}Xofxq&N|4-Zw=j6|!(y!G$}d|tJZOi_q@ z_@ogBiVN`6tPZ85l9{NeAAQ0f8Gdor(%qP>?fT1-+P^FX7bxc!8N5289Km$$02U&gFR1PsC6JG2_iU&9NgR*)PCi zhRp3~dD5+!Zec7DKK6AEO`HL9^dlT#k9xGZ=&s!e`}wdEFb7|IFE#FI%0a%m4>a15 z-|ry#xE`z#)0m)=jxJN3v)!H4+s?o3d5RMvoZR2|760eZkmk(_2bJ+e3)(r z^zsQ-RYhf?7bVuIzAZx!R^W@)7c#-RBXQb5No=ae)vH%wI^ah2AKdjT5g3He8EezO zJuQd?hGO$#%4e5~m=Xs=L2Tbd&;yCqV2Mpb(TWr@mNPu300mN(i>f8Hr>88{OTJE%i5c_8}P7Qr)x@RPnCZT->+ ze&Nf_tc?LYkm?^ZtN;faRv?^D*7&ScS;o+(AB5!!ZXsr&U*Uk0beU87sYG$W=U|Mt z-T(}Ub|kg;u@~fCSMQRS{bmh!ny8xs8j-6J2`qVMI8uS%2H2wBCY>!S=nvxRfK(e` zZ_)BMwiw9!9orW25ZzA-SHM>2UvF>Qis`LDMQ(y2sS{0S7WK?MFde9|p!Sn(M8Q~J z3fDiP=fkF_Ju8ei78ZZWrbAYVy`KLZBl!u z&R*86%-%~-{alPdz97VD&O=Xm6V>yD$p;K1s<=1xg4F#=xrbC{Uv29+4i^1-u!-pE z!~(BNH4qw(_mtRJSXi{b>?gwqE+r0$*T}P9Fx}LQEr)Lfny4>DNw=3VII$2{NHXJ3 z1xklU-M9S`%#>eSUAzS}SK;EE<-)DmHD9^-zY)u?wIIf<7z!m`47BkAmBc^Q?5|v# zH*bc5(&#GBt;r!vC<`u;m+LEvyE29G6`|HcY~f9}?k+Gv+pAaswE8g4fR=<8(aDYIvYi1UX{UR%yFOr-0r+ z!QQs0R20jr!Ap(LU$Tc(!;2KTg@u)2o*13yed*HNJ`=Iu&n&PS`(QBv3ePbo(xa0g zg8tRehTdYt$k`WPI~Rl!vv=RGy8KkYW~+m5D_LCvq-wN-j^1%00y$vyta5BxD?|So zFABi6GKukbTHM9@nwZbNxDA}~iXG}DYx*3eI}ysMU$ zc6KB!Lf&%p?pA&NZ?EKO#~E8?qZvCuP%BV#1m_Q|%j)CpzA3fDxD-&mg&30dk9`gh z$LyAon@=L+cD7thySSRw@cp4t`v9+wdx=}9@u2Hk1pR=+OHHVSVMWO}xXzt(N~zaO ze^#)Xrq1CKM7i`tyM!qCan0F4CJ1N8Z8k|g)o`)&;P|NZ#}CN|Qx|NZ)iRelxUNAnFvS7LozWTyYRmuKWgdVPp6C9;ex7{0ac$jtZuD3YqLf8InAm@`^?MC8y{ zYH~0GWp$>dvhHL>rNW31z(Z@GiiGj|MN4F?T=_ZBGR9=O$y;AWvit{xs8`1(3k=aJuuPzn} zR}Rioy9G@FS`?+$vgoMnbB{>nYI#i_Z7b+GUPFry0N`J%6%*JWH5B|?4K9NReV1^I z+KEa#iNuiJUREqYZ=0x8%f1EF!_C)--HmuBiRxs#Ep&nhFDzEFGr`uJKqfOH)EJZ?7g-7#4%`qQ{XzI!i|$>Yy5kJ61%FQ>V=V1B-}%m zz^Yg6nviRzq>c-VQyJPPS^-yCWX-~Jh z&j?e#Va#2x%t&q%Q?>`ZI&nTX>J3A4bpwM^oxTT*BZS~EQOi+eEhREfewJMA0 z-^!2xY7Z-S|I*vxZ_vXHOr2-wrrGQw3?x`P#Y?t95XB3!OJakkd&usQfk3Z?A_r^c zE?BSz)N}WcO9E`7DYR^CAyqX<-GSNX1B9BXoo~~AZmK=4aCY>EaX#zGkBRR$i;<0V zHkltNPq|;`_wQk z^af@5113VM+3V+8PIDtRJc!W738iEO78>HcuZW+CYIsRh$X*!26HS*|-;Uq3wBw;G zhp-ecJBLxF0?8aZl`9X}EVF3HAw*a0uz)aOHky{b{qZVp9NTowXF|311#m(bm*sD`qXd~n z9C5x)ACd!>-^P;MBmO@p>DQTp(K`Wu3A*^@IHte^oWsnJBL)AP9gNuVQ^vJZHN=p( zMq}MWnX2tCE@3^38aB^40@=k>khIy^2M1^~ei8K6z} z*A@chS}HJbm|gYqN@&f%U_P+6<6`HugY*d0gtu=Wvnh)DOy;OLYlM=69#S8OeyzCu zX=q^xa&#joS~=^jH1Sb@lpb}uguH{n>?CUCHmN{C&M#+%>$+l!E=9b&|7^h2qr8)J}dZtV?BBcC|Q#`WFCZx<-= zz0+k(2X%Erwc@Yc9<&a|*7?%-~^ z+*w^5$cI%@Ye^Rr7fyqWz7dm5hljnry}r4*JBbRcY5&{F*n15Yk$pZxaD&&zTF$# zgK@VvczPT^q|8w}XZrN_iq7mLZ%gdwhMymxjt3*lL@@jC71Gh%?Jq2Z=H!a*%~bk3 zWJo3h`+f_CDO4x$nk1}@bpq69rmCk=CiqwJW11<>I_`mltp#No?}3F~_w{8*yUV_O z`EtF|?dw>Y_3E)>!4F%QbN~_b_)UVLPk^yJZ zZm{C`iqPp3;BY*SoJLfMuy#3VzLWTC>vgDkRG5%&r|b9)ZS?F;lkXg z4!fv0W+SglI}V9_O`FGp0g>VY!2>GwGgquwf#Oue<%iOA%~PY%fQzn^sgjTkAbtW$ z2O7+s9G?C9$+z_JL@mj;rcx)MoP6&QE|p0-6g^Ubkcc4~p)mw_l}77mq0n6oK+aNm zouaN0qQVXI6HPG?Jj1%>ESvFXE2e5S0{(xTP6T`63>lf3M!=(BTJH2>%1JB*#T7f+ zXMGnb>7dAOZPBlL@(svSO>Nj)ssZKxlfX`Yu9WjMEK6JgP~?7r=K1sIjZj08y%T!- z@87?li`palMAX5gNcAYqz5Zfq?2L}=m!RFZuXWe~XBZVj2WSl*gBqh|(74bt*9GgE z791wa387ZnO^{R(IXOA!(tTooeB6iFlxKb?`aT=|TFYnSNcN>~QlISU>7l)!Z7^i) z$8r>9*C9~(7zhQZA2H(@7X0d}O$-V!GETUY3RVlDQcruF>&tRWOP=|eF`S2|&0fYA z_lC4mt_=UobPGLuRu;x6VVj-LP1fTR#mYUT8tH?#eo)_%=>p;o#l4~8peQIZ3C4}_ zuep4{!l*LqAv_;&&|2>h3I=`@4+Fcew1gA8tuG^9J^K{(szYv_;IG*m7&VA25|OqYeWsO2MLRJbad2l?QN;?i{7yk zRuPY6XEsAd2GAkrH<J$Pv-)R|A#XCUmgB7LU7e)CLVNf>q#x> zA40EB+`3HLdJ)#$*$G_$Xk0Qa3VPvK=4w<$y19!}$6+yAB_rW(pGos}Oi}fQ&YAej z1?kP06hb{jkTo9?dbp*W^{Ce+kG6a|KT4MWP zPIyEYyu`psaNKi)Y+%7A7I9XsXLcNxT3dbrwiwf32G57P=P-ly*Bq}o_5eTirDhTr z{Q9Lke^8%@4IR?bL;ewzLWU|^JXeZ3bRWHq`l~>PjMD(`ak#jQh3$Ehgr~4_!#T=_ z+>je5Hoo%F(Cxd79mI+!X&a1T5TIV|KY}A}t0(e`R3rU!FL``44^cJD|3>u;DjX;*aL)vMA(5E z3&17EaVk6X%9pZTUj#dd^iu;@@~DgU0%v>ETTNAJYDmBNEY*tjbz`H+5L}gi)j*^x z-5LU6?Q8Oe`BdtGI)!oFs6<3`D<_h6LUwE2x(*a#vfQ)1Ne5Q457uy$Xc=Ho;zLSh zAPY9CB8ucyT$zgvkT;Px4(!!SIJWl@m}IMN9;L{+fA{3|f41%P8#vc8kOm9ARYXvY z+#RI|5IeEn7_HkfttlH;xw<}L+6r~?AY790)(5P`*2!5G#w)>fHBYNciN1SL8iOlU_X!KDyDz_zkjTLMo0-Gk8dSbSpAH z9--bEcfBP#z}dXV@S3Q<^XpHRapTLg5WI>RgP!KVt7BVGqFLf~P;lMVG$cY072hqK zU@C|fK5sQH05d(%;O$uUXT10%m0^@20<9s|bNV(kfYtc%-}VzQP#SZ7x_j@O@ywA0?f!VBr$#(EY^*_=_+=&rIAZR>U-km_03MP81^(I$RWy zA6tcQeFE(kb0v4aM?a)|70_UP)35Pqu6;6VgsL53)P#)Nz-w zoxdVxYrEtssEr6wX!_}|fweJb?J%*>=tyni3NJ4_hZpX;fvMylx7KI0pTzV6T}hBC z<75~xC%Px0r?=NoPg+iXnP|Dccc964F{_`}V^%)tjr3-6s3=g)%PZTnt>Y&Mc#6y# z)>mCp&lr>P+N%KV6;})CosW7kx#psX?L<+3pG#WAowD=n+S@ZEV6S>ou zr0%o8?!|1-<=(W&#&IKN)z4(;lMi(i6&;IEy>}5({x^$x;;0cC%x1vFIUHa@nfO@} zwMqFSyZJ zA0Z(yXR|8LU%$mqt$Kp1L%#E7%`R{{%xW{VNt8bRWJ1ZUF$WEgA8y0qv`wBnXpb2| z_8s5dO}sgaLbtp!-+&36bhI;y$(xc;IPg~lOE+Un%H5!nTHwD?Nkot1AfJ<;pWi(M z>&Hg8U#N``*e=5Z^G2_s;T4m^0@`L$8Z_hz(l7TEMi;UiB6*UU zPX88*b{S%nO+*L*JmrtI)k@lg4kn83R}wePguYZa#qwFJ7{?tUR4bo`?=djFa8Su6LGzo(EBTU)iovb=v8xF}PMVF0ku9Zw={Y9&> zddFR^?c+o$35gVyc5`&d#Na+v92a=lAslWTa>%NC7sX3`SqXVUz}XbOa~bmP`EC&Eas!^azx3-+k5Sc`Y7JS#0RPmX2c`| zsu)r+PyY_z(4ANmu;;ur7Gl8ute|+Gyu2%1;AtCWKd`{H68QCPYztW^UZuLC7cG9B z*yUik3Wx^|^>JU7nx)T7h&QZ?o1g(8l0v)a8A(ln2dm*Mqk8BJxwD4iZs1Yng7+Q$ z5o!m4-t*g!ZMeIfo|Z5YzyT7bSgdeh|C~K z@toZ8>(`>5$FA2W!QO72P0I>_jU`rxiIaOtEgdvP{Y* zH}WlL0J}i3@6+ErDS^I7z{N`^!zkx-S_OU~?@Sl}s6MkdkP z`WYw}VpNQYmGXE|Lo2`qNUywD{MW9rsq>p5RfX$f*|AchQ761pL(ZDaYE<(1u$eTs zJ%kw=4K?cY9)D(M z+v<4gH3$nvuyy^|j;x>+{svA1Nh!rvWW7?TjvHX=TzJs*lr(jAx|HvGUvyG|o$3{v z_aLCY6Te_ZUDXW)J#C2jFj)pqoT#sJ7h#3@+kj1l$2Jg?A5^{1mU(||`wZS3h~!35 zwG%ztdNKiU)n>v@TVasM+4~INg?Phh30>722tKMw%SAviy#pnM`G7f2ST~L?4m&sa z+x)Uwksf(`?{RgI-OPRaSK3mC`yz4lX>PxFntJbx$YF`!H*Ql&{WWs@)2CxRrj6Ac z#}nG2@~lJ$rT%FDD__CzeIYk-#lEx@V5qNN2OvN+OTNR<2{L<D=7 zP+$EKS4?~0L3dF392nX`L_%-gCQ3+6q0<=pM6V8wWp!W0R6q;#mtK{XV$?(Y_p^>I zcd}<(uHoF_@^e>i7O&Z%Ifv>tG50<7WHd@$z@Mn;$p;~vt}5H9XL9Dc*9$bg$~-S! zim(;%dQ$Qr&({CR1)=Fom3O90Ke}({)@~Qs*8vdebNd*rG5&hyZ0tgjtyb?k2V^=o za2DV0{CUM*mp5_(7p4kZnldBC08jRWY_3Ucgz-flIcolTcDD;}klpK^o}Q7t3(Y#&UoK`Qz8@@1Pumlv}(<-$+8GIW_EFH2BzVq(dyWUGOG$Wwn{ zd(=B?rSm5?0LI<;)b*^qiX7hoXPed%s8tUyNtc=2_n1MDpmKw)OQ^i^mNeJV*QOoOp*U+45iU-j1WbV_gb(FX2@ev0QpSK zJs7GJT$4D_fXlvi`kH;gx@}ddU%!0G1^cAqhF{0S4W~YD^S_c=vgJZm+umHJ|4BV0ZWK*nB#IUg zoBr)EGZPQS*5}*E8UH*!+P=2CyL-`q$Ur zUrTcIVSxD!tcr=%^u#)>@&{sZG4>e}P`7oxHX}PL!wQq6P@+R$T_RyI`tyfXgZHMg z6MD1BK;p5W%8%fnTFzCgSHJ9X;}R&}bCUjuuF0qz2W|=|(r5UF(hSZ%_1GSD6Yoeb zaR6+<+#^?Ik5%t3E4^zWNH)v~b1J9Q@T{3lVHs4^6q#Fet%0gF^F~$p_N^8ad_2l3ijryL9nw&GmwSQf>Aj@a_G>G{0KhQMv$tOR z-F?>E+2n$hM6fSgapw zM|ZN!LNvw3igV7&YW*D&%G8yne`vRWm%pscATd7qV1SM$U;opM1K4{ zFurb8;Cv4%C$a?U$7e5*FW7g)?i@61EH`|cV`s$V-nd_th7u|br#J3ld+5>8Umi=# zWe7;?QimK_U>B>U!dwn!!@En zB?x}C_DY9(OspRneQKUg`{dS%F)iGXrN z#(5eNKSxHq^~(C*1!JG-he!weR9NLr0FV9l9X)b&hENg1^JZx#?ah1(*$vAiJ z9AT*EI4nsl??Myx1~;jlrhJutS0|pWk62vHkx{0Yf=hJjF}d{zcJ#jH^~RZ9b(&AIq9C*y0KX|a|gY*`xDPJm`LA)B!C3GcVYM|PY)+XH0MtD`9UU+y>=@+Z|hNZG# zz_DXcFWbKR%dR8F_MFVj%s2e~d2zVI3S<2k?3}%SfX0Hq|NZCueKOB9{%jaSx8ov< z%{xV%$)Z8VG%sb0=i`UHM@OJY^2*wxvw#0eN1aOIchCZ#*77&tIF2L)Ipba zr)$R!Xc@bzRV0b>5>R-KoE8*UWV1|H(!210@a8VR!d1lA7EO#~$2=03kn_Z^l#8AL z^RH&Mg5Yaw6NZSy(!IxTf=RXnO5d%@@s%(%M=c9is{MowfWPZSUIA z%8F<0_&?sj#~ID$G*H?6U<&)JSKXP@2*i-2pqmY(Mh%%)0f3auV@aBCR_f%6+%k}N zs>Zhb-?NJ__{~XSjktms)lwE6&}D0A7#b*Ln>Uy`TQ++=Q|uTQAWc$n_Qjk!!F;z+^K#{>`q& z2rkRz8;@V>`e=>ONW(3dcUN~YgduvBc1d-+hdNI4#`s}r-3M>AjX$*)A00ykZzN)9 zxFhWz9nK!B>Mv)Qf@P}a%natfQY-O;oaUKMPN3^5+QNuo$As<3x z$|(oo^(GkGxo?g?JIA~pd9-18XbCK9vrnEGfeq4P`$DkP)8kF@G52UF&f17EbCyWx zGrL(STFZyHbQ<+U&KS7OrguJW7csJ{{r>PRWm|B1PkoSmEi#&7oJFY4;*QWBa#f_wm|lo%n9nS!sM-!7cu_#>yx%*;5hz{-V? zgD-bF!$@Hse5;_LijQv?Mjv%NqvNr{`3}d|vk0bDA3ZJ<2F)LIb2S!DiOPmS3`-0gyry3MrQ=?>@bu5F z*Nxym*enO+!#D&q7ag+WOgl0R+}%4CvsRODqxzDlj@wcMj)P|(f3FMUVDFwj z+fG>0zK$=~wf24t3!;2-U`|KNpFNv(%A>LM9x6^anlvRj(r z%v+b3mEUzq#{S5S7tR6>ULu{`R#g4~)X8HFZNLlv%?j3)B$OG}1%jfZlAzEZ$;!x( zA!_-qB~Q=R+}}07p$Q2-r>)L$q3ZbO_GWbC^#uB~X!+=SIR*xXoVqkqr^adLGU7!} zkmhVWlP%GK&+ZWehDk(V4^yxBMaL*DXH_6fhq_S-OL1!K-+ws6Apj5`fa}Qasm~v% z*lGnKAQShi43zQnxVZEizlVjbJQ7ZDrk3i|gi}=qpJX$54NJ99by%dfc@*bO9q!fu}M*zWC%=o1)@6N^@n%sl?cmz2=$Tjzfp;vN@I? z*_h#g5(iUhv9o1xOqYZeTvs0yjrURg=ahp)o&f|xos|C}_XG^AgJH&Smz#Yx~-(hOg@CV^R7StQS}}8ZG_2ZFUzp=GQ@%Au~N- zkOv^7K9Z689mCXo9DY5Eop@Voj{Z&FNRj78p$^ZORj6hj3J={Onwxb|YgBY~1;G`u z{KkJUH9cbL0azD)C++b}HzIW-H8WW{)Rh*WrCFU|ysts*M9oRP*BF)%qF+wAUtwxh zvW0)XaQfRpePR*>_UCL>=e;_c^d(7)f2KG_PkI%19ZdaxxQum?b0x(AGZ?z)Injs(j55 z0}EDI=A21wc^I%{n+FPJ(e*?DMBSnBKV2d&oHIG4N-EeY%$hGUKnedUZyPuEV5YDd z_T9A~jHEP<0P&unvq!#PM>p+%}!@-x|nZPQ%zY;XYVo}&v&<)LyF!NSdJ z&DL>OV1-r||HgCb$3F81WF=l;;4*BcPGz$!FTZPBeRjB=v~%_Jyg*0sM9H{Cp2}c? z!r#$H=L3Z_&Nvis`?kq9!+Rp5ZRXz`1u9yf*`5r4XqnD+ucsxZ1H#QrQiYsewF34| zF&W*v$$opqx)QU9Eh(9ISKlVi(F2S zzL~rab6;nms(PL6gxs0IxC|(Ha|U|*nqgbi&<29Cq`2v)d4GHdc+v;Gp7{JEbyX1^ zK+xZwqH*rD`@4LOf`0KZ6aI51 z^AopDGw9uLKF?cA8m$`)Qj^f91K$K({QpblQosaikXN2AsnZ%6Som9rFeTR<|srD4z6-<<>=DLbv3e*SS`qM`{vD?OI&)}U@X3|WFFc6 zvsv&vrr}EPVI=zn5ve49VBbO`noOUcKhNwahfxQaLAe6;dca3 z-<6q0O zi3=H>g1z5q^@>Al&}?iY8J8T`MHZ3g1g-B?P?Q3nv=Pzu$~??B1P#vqcn~j;KJ}w* zc|QVzhRK$~5oE2)oh|R$9Uor-$NLRJ>&XXpkI2Hk-)>bXAwEHMqC}yw<2$R81(dV@ zI5jLAFVhGFOxEgQ!Lr2O2)A6qYdzZ+WgzzU@Z0eLdHoF{2L9r{Q2!bji2SeZ0k^|# zYX!MrUCz!OWtL8OcYY0|zd#F@GXRhV%P(IJN+AXi%P;>E_1t(s8b8_BiDf`WGUY8H zpw=vP!3K}oQwv$6N_JCn;lJ=xSJ#DjxdWfQcC`HU^fzc^@Q=VpmV6b@AZun)0i!K> zBz2R3Ip2gr54|I>NUy?9DX>LWB6lRh@UCVsd1?i84LrD|8{H3Lf76lI1HdhbTToXM zrm(&N=4o$gQwZQ!wlHEYTXslZ$($}owPO-%1600kX2_L+Nj-_#Fs$!_Dpwg#PC^;YC)jCW-;Lx%#wxTM}AQ zp?=n>GQ6euR^LJ?RN+M9H3p-7BNolNw^92vw5o0)-Ci;?%Ii`9mq7@y@UQ==wUiV zsUDMzn^3^Kuo)x(dx_-aG>8eck zC4w&uCd2Ce$Ur}iIDr|XOSwzQH(SUy4i+y}?7M#L8aISUuO>IxhR#Nj-R7FJmPLY9 z{Zj6}75gMKcK$w$;*K~s{^KXscA^q4a`hQzh@gObQ?@gGpz?T77RXVnxN zLJ5Wfvnj+y7#OFmjpgW1hgJ14(rImw2HueFNKqh(w4rVcK+KnS(w!T#`g?jdFm_1Y zLF-L8{6{v~i>$eeH6(FvuCdC%=qb#%u(#vTKMV({5#18Z#GGCPtY1adAM#>= zJY-h?9z4bi=+HH8#G8;@-r^T%=ngYgO=l^+pIeB-gC3dmni>5cO~VfD<7{kf+)f)A z>}t4yDjJ)UhzfSGwB6$_>&#UG_YB=Ro!yf6`SZjwiV;|XGzKU%iF*2R6vohheNjLDj_*Gd> zxwknObXc2BpA(2>))}CXYP*$`y!EOD_^|rbxPQ#FM zuGP}B^^4{-fx;j|fhJfTW54V}UBaTQmGyg_ zNl@%po$Bg8onT4p9ea-x#69{a<`mb-UCU2W6Y2F&73?o)9g8ka~>&Eqh|5palfqyUH$2IBWabY8DQ~J06 zX5}z`$MF9N@~a#?$WPjPvf||-N3HWfO?SB5$eXZICu8j&KYnaKoj6ofX$B73+%x1)8liq)>rGNIuX2FaV&sFzU^bdQ2W=vUgLR51plX2 zl_eB8;{ef<8HvntpG;T8cGW(HC+N>~RWz3o+EE|qas!mbFq6fg;-rG$i)9O0zBD#M z$l>Yp@5Pu3j@uqH5W}|CKbyAPm#n*vFL7tEA1U&=ScN@7tGT&p@lH+22#oN*Y@4m&A)sU$pdi_;mL~QH~)n5X{=0uD%M~}k7%?F znVC8C9NQ7`p7mqboq5()R$l-{DEFOc-u*(0pz^f&jBrBpX$p3FH~x6e!5?a>(N=!J zh$GC+e&pVv0n8J3BYHMsLgq_O_xuM>#u0}nq|CS<5fPEsg(24mG>!gE_3~7bbQ?pq zdUtPfl16JsET~a_OT}4wt~%{b!zkRM&6RxjBj<> z1|W4sEep>!XzA3R97VW&L_CenTs*$}_*Zf&fmO4U&@+i;|64jvVOY+70Q(W%21*tu zCV*v2Xk-NEoF<*TU5WVd5t!{TOR`SGkP0)S-TXm3TqF7HFf-iImS&xPcJ2-jmz|fH zl9mcG6r}C;i74BD=k`h?-hth3x;i;u8}LuD*tBm*k))CTg<7+SFVjHGT2AUz{#67} zuTg!Rf;oNunp-i8afA>6gNfGuo>=9{crW)V=p2R7U)eQ;8XzgUlAXUtVdayf$78c_ z0Fc_f$fDrv8{hN8|24SQW3ATZHtR<6$w#NEF_vG0x-=OQMZ8eEg%U8!MsQF+R8$w+ zJ0M8T!uS<;m2XF-R9<^|!(`++K`bzC8ZM)d|NOAI*TK&&wsa@YLXbD%I)jsAKIAWM~ z3RtS?QMeM?eF}puP+SCAQ}?B*N$ZiYpx_>m*$=(YI=9yR0|73~M`y;G@ngR-cq`d!N>oPwD%6ExsCsaZ%2`gqD9f9Ns$s-N2C;$lA?vIQYsqS9b~0p zR7T59LsX))G;Wj;N=39os5H=0s^@i`&N+3vf8Xc%KF{N?966usb6xN2JzwwF8-^%0 zKZ70+(f7@qblO)|8jM=3dQK1gq%iWSMWMivJNcqh-VO*@?KoOdEs z$)}j8KtcT-$mlA*Q%Ut-AwJRE=Z7Weh;U!Bb-x5G!a65H^lQ*_?M*uQ8BWSK9M9LV%JBnHSr0>A& zgIU9C|N4tWF~sb*H26VDd%Tg263^G<~%|%uP5j<)a@F z2RtAT!jh*S;mHUcic+E8I=ot1SyMN=<8XjnyYBI_ZV2PRf){sV#ta!Jvgy`b1TF*+ z50Xs59KE3>{^`!%W6+fsexj}@Dg?{MUF*ZjpP@KICO0br#`>M>^!bDf)p=XYnme=N zn`#BLHJA1RJD$rrIWqA94IZ+UCr_Lp+PnV$ZNbbV z@}J+5cwJ9(?1L#A)T_3~DtS4%<$BMbJv#^d(L5U+OP9#weL3kR#)ntDJa_(MV=40J zyAcU13ztnI+o#HY{=$VtNE$z%GuXUln0o?Z`~QvCIGtT%plLE0$!FI>u+5r<0HNgH zS>7o93$*Qr02xl)`!1(mB~`&nv}qFsNpZN}5_PGWnizINnyjt|f36(yeCEzs;Jty< zBVPuYB*H5FdbETP7Sc+1nfgvf4DAURAK7qePx=bxkv3&w8}j=q#)}P2>g1Cz+y6_6 z>&D7~8>nt=v&5Jc;_^KMfa(E{lhxbL^Q+n9`43jJJR2!?GKB<)uC%+Kj!)x3?p&gz z|L+s(lK-4udkdH2)v{-`_qXU(dI&a-BG}uFiH9+ZuVxZ?H=%(iB&Z?$!$UGB1F*ui z<7`gjff`GVWRkX8RfP~%p@4a3t`felJxC>-kBHd2y$_>v#Ix$%(PH!ILMH6T+aAH$ z2m7CuZZhF8w=Qz%cb|FG06AcQQ}$MM3Cv$KveV^*2(Nrg;I@+3Ge6@?%8)mcBsid! zp&RfNKn2NgA@uGsTnO*K%2~|?ewGSP8(DzwWIj@kvQKW)hz*MM5owe9dCK`LbW(KS3TtG!+Vyqp~?zaX6( ziH_gep5LPbp`&5YpQZ5Vw|)Fg*Vae$NS~{*rKRPbRldUCpx+bqb}V47qbL#DV5q8P zd^AVV6|6qR(`xZH)4+qzc0YSA{m1OdxGMou=Hhe}kiuA=nS)&DZdi@%ZR@C-r-%tj zv{!O%(c^d{?ns96nQx(vUUfz$l>ig(-cN|{QySW&1*%P zVfLI3)MT{TrD5~FExrRd<|>a)OTME>cEsHK_B$@lgR$B)NFh= zDQ8d@t-kNxnO|)$M+LCTl#Rog!pRTCSZGR!nh58S5?zhIRm82dc&? zkzJ>q;2i*_1|yhC?eyH8oOJhmMhQo5`nQ@)ebla!FV00zI*_Ls|KEa>cNRN<_E!Wc ziOF%?w&xhNw~&lnQ<+mwYQHOZvfp)fzzwXxt6sG$2Xy}3<{hX58Dk7bd@mvg0_t6` zij1RRygI0r`n-4)Sv8*k>Ly6`fjJ+(FwchRhnU;YsW{KhUuBFqG3w0B88b-WqhAs# z;xxQIiJN?7+&}E{b@}RW%W&zIAbOlxFpGzH7F&5q0>xxoUH-!}W@oN2?st&|?v;0G z_}}9#k3raY@9)L`oiMv@HwN~itcbKrf-pu=$F^|!4@}-lU!{h)(dNx!XkI5{*P#!2 zV0iT16Y|JZqS^NS=h_X0kbudhB3+MzC~Z9s2o@>7xAVA+Q;r5;OsOi@gc0HYV}g4H z8SY#PR+eH19X%@m*F?glVvam?Y+p_vNfhvf+zq5CLsZ?+nPcrbbr)T-0`3JgypfiX zdDc4h|3@N4i$Yidke$1{^+sN1duqp6%+tlcbb6+lJMY}N(kM&bbm@2R;*awpM{tIUC7+rJ;#IpEmkk{=^r)K{u@M@$sp8kpoNTRV_1K-|Hml zTdQ;A=vig*I1?HY&7|sFS+*MO3Xt6-mIKUDh2n?zg7TH)Rfjn6ug=W6pq92^p$@rv z6K_kC7;TY$#8bFL8_k4(Nt*58gu21WGIRjFsW_QB%imsGP<^d3zZ2{g8L6dcG{ z9%zWYHEVESbOr|S8z^*^7sMytxSmaFQ-9$XY`y@v*=s;pE3?r0%boZHrEJNP{0tDxQ#X{*-R|J zEIN0#&B%|)gncJYo)r404}R;LoqG+^j~1Z`d!edoo}LUi9V@b&Y~(KL%!I^FnKTpE z=^;c}{$$NsEiJ;~BK-bl{@s>eUGvWijJni`ar4)$>zw~~y`Q(~gN65<3-TVnezD8* zqklz9yrF?^bI#9@pD_>8FVwAikRr73GHDN8Dp1ZfGa3{%ttbC~Se^ZBG@#|yAY-}+ zG1D8ci-h7<+m=MT+=uDXl$6Zmsjw~loj7Eq=e46XzeIr zuNFBOJ4-vkUEW{RGkM*cCt$C5+}Kzs7O`U%;~w8h3TQa|yzK8xPw#DTi-$RlHJKNo zi5)jQze#*Ei^85EXesRIEtEt8fMAVHPGU&vb6jml$4}E=il7l0PH}4$XS1A5c5Y8V zks+ml*S^}zt-6=SYYCh9jc;rawP>xMY^S zyjL02BcF0QJV^d}(mt{n;rgps}&95m6nlD*bHwI)No%8l>{WIYf zCr^PRqv-n8h%j4iGK|G+hTq>q{co36McFQ+A+thw$xTdA-3kXaUy!LjfSg7aG~`rD zftGE-yU9ljqW?BH-DD`RIDa7YqvB}v+7PFd*h-t!uX8$#hXsUtN=A1-eI?lBhFF<27A~I6QzvsYk+-4wJqrZGy$I_#n*yWB9jyQkTCzJ7s zdcceSu!~o1-hp->;;&TR16r0$DNp(MB5JQPp=HGYw6hquHFsy<^FoYz#W6S9w-`f_ zRIMS?&<-6wtl*izr_~Y89%A0D@ZN1<*}xZ5E89<9{r$JrR!6a#ipSi!CVi~Ix7B`p zgb9!&4?FntmtGvFRHBQ+4sROl@H0?sY+OJnL&3_&r>W^)m^nO|{VxC)1xe@iC`mA)wPQ`V>R@m6Ly_(P7EBdv{>qOTI z7h2|Ka(-<4A-dJd>1E}LcE|H$rgU$t*YeCU$V9JZ;0 zD(hufja3Z0v_p&>Kdvx-MMeh?1~%9^mqL^UuZhaSyqvD z9Pawq`iiRI0uK%HC1^4~VXWfTbR<1XK_?)m`Mdj=-AytV5PpVv{>(Ol)o@ru0!RYI zF)1s!>pj$e@=%Lr?EB`gUDu~heY)rL=KHxNO3;7}OX5VRvZ%R3U12yxcjw+D7Ax1C zFdW2ms|nN5d`xkT(yX@)vfRe8Wp?w^$nZQwew#}3VUAjm3i$5`aee`f#J_Vl7OC}l$>2t%1Q?l zp_(dgO!N5r&ih9+cMLTYiz}@C)l7;5Rd8wk4LL62gJ7phyUh5P5JOHoXJ-S4MH)F0 zE`$my>k)Lp_x^s5vJWrpSJ8mC1n~0q?1+>)$1S6sm5E%cA=^9cH*-_O1v(p2ul11# z0pkV+P>|a3bx>QiCGXg(lK9SYwRHu)_NNA_(=+`S?s*0sxKQm9Rc5pncB72rYrS%h zXYSx!V7B*h?%-pdU(tU+21R-hv=mq6q;ZFme#mGg&lUkig*o-xuB>ouGr89HJi%s2 z-0Jh~4K8yRN7tE3jy^C=QFx?sbCu%3X9lOIO%GE|Js{CPyl<+VarH%?6tgdo!#lUA zKu`ckvDMB-^VAIy!QHG}5=WI4PN2SHB{^q?ylUeFH42uSJ^J5R`E{si)SQzsv94u7a99ty8IG??gY=Wry>=f_u3J0XwO1>X-uT_SGRBmp*%8;JpF zU>b53R7>!ga-CP496tw3bepS&&SW0K|4sD9Jpe@N9^_7p(HWOax=}#_CBAC~KRqJv zM>}978eMD61K-Zxe*``-=!9*0ewmx??(d7O6G$1|9O0n$A)CX`PyC~TlbDBP_4+BU zXXp4ACRa;!Y&l01eoJ`S$dW~SG}-mnQifZCN82PcyM!yd1uo1Z#*2prMMYXr)4lUX zQbfe7xX!nooH7A3;09#AwTJ4fafjY{Gn7t{(R^08=~II7{D`h3}vzmM%M?uj`RI6W`l;=>xP*%NIf)QbR0 zd9RL*V`X_<8o&^bH!LQFkCc&hyAjb3ayc^s|k-@7dy(K<-{(J{E2keKD2Mryn zudB5b+`pV{TRwHl6g?p03DgMavi5>IT+uoGM+(&X4qovo=(??M#m+wP?D4G+EzLr! z^&ms~U!4EszRiRsu^1XOLO(FWGvgti*$2f6Hs&XEn;#HR%ueuc&rn<4c1uKiz8E%r)gd%Fe+QF|eKsP{w1YkK{?XY8YW>d|_iAz@OW zen~>6HSmyR;g&P{rHhoF+H7CPz9IB}^C7o>^Blh&%k6~u*u?&LI2XY=T?^VE$K2xp zQ?l^h=SF|b+YU(MK$pE0!Ms(vqp5fy7*@WAZ*2uz3visl_3^jJG~81s4q`W(u23D< zc6gm+tG}5KA5$x-UfDL}4;a)Jf%2iwn!mEi)d(5B^y^BH%opsaKAz1Ju9Bojff7}(CVU&ir>G`n zuFsD*Gj|^C$J|Ly+4)-Qez&D-B>v&oiZ%sN2qyWaN#d3JZ*$!aNW9b7UoL9n5FOJd zLvS6aLc3ql_J}wL-&B3y7gshP6B0kTK5;iY(OG4XRL>_9@@IrqgqogeDChXQW=*eB z0fi~$zqGFkJnw+VBiL4@8G9w!0w)}udUzmwRjmbGo5>$UAi=v%tw+c-LZu2 z!Fo}3_4;?2!^RSe7r)@hY#)u7FmRCZ;zlYs1-HW=7qgZ@+YZMpjh+AGpL<|*Ea1d> zKq;FqNP=xjI)9gI*)%7&t+2unS4&`DGMy&NOJB9!IDdX=2ZM ze|~geu9sLXh*Q90v2k%4`zc$L1*SYlF!=zez7E{Bl5Ns5_mRS-H!SQbz}GWv`t)NQ zXwV}t8(@48k5;{dzmNxD?K;5are#(q71N80PMq`Aju@dRl&qAfdLLJzQAH?0Zfq5G z;znZPKG_XRGBlRTG`ovrpUPm}HFNkbd2iCVd&d)d^y_`(SP|&wKf$wJzQpa}@o7I$ zAof}-RJDILQOF=Aa!XDaYdqR_PF7~}q<&6}FqtRP1GuDO=L+zk)CvkLmXkXy!)Ehw z9le|+ipn7g2k<9;1UjL$Ci7Nx-@0bzz66A0qbyqOjaWlILE#0>-1D%4{}1K(gzfXI zXgTy_Dq1-K+y$01{@3;5^Ek5UK&sryZoSv?HWNmTH+Cy$O-kck3H0BM#KfSHuBL~t zk=;VIr04nANE2$&atb^O(%76>45XwOw8zhlvu`uQcYeMdDuX9-m!dAGciwYc_sEmB zkg5M6)N&Ir2abu1z)RpE=mL_IwSBU43MG@Td`HBT4Eg!+Tq~d}Y7C0Ma~ugL__R-G zbupli(FSm?$u!@HK3_3lA3JUiDRS9u9_~6h;&FU}l=%}WQ`tS9n5PM1^L}#wsYj6L zhB-KgLi*L1C;(Vdc;l(JyF^2&O6gMkq?GA8&dzs`AkLGobeTo5mWWfmFSTgV2JOJk zfQGnaq}D|rCCI=h450S{;{+b7yx$jIAmlnRAeJ#)fm9>>7lfcKppDC!c1-Dxvt z_O`rjrDJg8gejzC;N81yN6}x1V$zPG1rDHj(x#?rKY%(HHPKz^NBO9oK6vqov&4>uEoJ9J>DP3gtwu_Yk%%*w!tv z9*n`dz!Iz6-}sXLG-2MRS1Q7f>4Q^=Nx4Iq@M^8S1X%zLHG*+E{Py-AX0K_Ol6$oe z#EuJJ{THo|$y2zGvMqYc~YS$#fXptbL_T#C2{}{Ct+gzs6~_9u&Y26iF=36$0Ekoa8SqiJx5#Ib{}(KY zQdsl5oB3GE&Sjt*aIx#}TYn%Rke)|+U_khR={0i?wEF?(>1Cxkp)yN?ebclVZY%|< zLC~=$A~9j+$}3GwR(qf8CYQ&Zw<-2C;&lr)d(KR=zJEG98V+gS zB#~mbFb(Z~y1*Qp{DZhG0u4!BcE|Nt)zu(?^|A)o|5js~k|JVBh8~*Un83MC|2Gd# zH4Gm5fwq>b@~;d1{og7)l!33luo% z!A1A1v0Ps1En^45S?g~z0UoGC=8c@Vw_B3AhQDY*xaME3jq9Q@OHx$KPFia&BNN;@ z33OnQfQss)i~PZ*J8+vGWc%sq5M+t7TVmhz12d430z6ya)z#HD;#CcO_cSE$Kn2TS zDshD=8oM#IxcJHHcoy0q&IR7DO6mj-%=-j@6;!(M!r11s&ccnG&e8#T0wwk3;^JC8 zUqIQG{OAQeA$ue%;6x3<4#4|qiLRNJ>D{lKNGgIw&nZm!@*Imy`#nB!XU1Q#+!=OA z=+*hl6VyN9Q#?6d9A^mOD+=1sE`X%Rn&jp@$rxOegXIWEb3h8CIt2Uo!MID%zS?;w zW&`OzIn20>nS2E2kM8Eztr=)xKb#m=v+Ix=Q-K+g>7>Hq<1c%VaN4`?nlROlu6Vl@ z$q0vE#R`5q1;bu%B}BsL#pu18DlGt+OUnD}T3>FhizNA4#N}l20-)~h+mk?Uj!~6O zBb3{Bv;t2JY`ey7&s5|#y!`?Q>o@?gJa0tUalRTX?-XLNGc(r911;oL4_HX(KC9Dr$rqsv63{5>ZBo;5Vn7`wI%vV18MWun?ksUirY=qQC$h z_UEOg1dPCu(H?vL{2be1I4gSiCH3vogWel9?NV*NvSEKxK5%n$goF-gO4B1DAM2vr z+N14Vdf@bT&ZP`CUIztkY@wnOD=Iod>L-cC+qf9d=e~oXuI@tCuB_P=j1?~ByQJp% zL;F!XqR5Nr=GR3i`+9BBb&9}rhvLVNbwLB5Mqf%?cD6a%!M&fAOv|k8a#{0)99lSA z&m(^%yA2k7Uqh9%T4c{u+%^Ort#5Y0nkA({;M&Xj8hCBofgf91DCdh9bqkn`y}6(F zL|RFbj{0>vI^G$Q{A=Tkcc4$!*xcNl9e`~rXltgH0Nn_r86qDQlDJJ9-w= zFMZR|A~+T;03R6WxYKK`;+Fqv->?UqJb%UZ`K%I?sF4&2DRzBa_{U+1%rVFGF~TmC zuwap-k$Z1;|^P`ROBCV*;Nt2h4 zCAIO3o}r;f+aX|3>fD|^NmK7&=xpjo;+xF(*vg{zaUc_dwnkpv%Tl*vD@vXQXw7;s zkvX&>i7!F2{+8Yynb~6HNfahX_f0v&2v^mZ*LkyJJPt89f0wx_2Llx?BP)BJC^wK7 zY&!Y#@YvU?$&%Jp!czlwlHafWK?pK~wFUpBVGuRi1d-;N#`=}9bIYU87XE>rp$ZO% zE5Vrus-HhT&C~IGZ6p62=_O0Tv19t60K#bIl_SRk15X3(87Ldi>%?7dl-KDD?wVD$ zU;OhYQ#V})&&-kE^tK1)BZ~G?_{1NMc4WNQPPAf^Cj&BdIG`oUsg&O_Z>V7#Nh>88 zwIZb;w~1v6$J9}kXc!1)Ncj@J;T7Q=WH@txd2?A;q)43?urf-c&Y0!wT2tvn7AW=P!AJdN2pe=HGtfuOT$f84E9BC4J2Xwx>_wV2+$%FH8< z7fZj%!~%>dY+4Bq>D(if*BJp|iYf))g!bAPBAP`)?7(J01;mw9$bo9-OCF5b26}nz zBt03+{8pxqiPYam#?R!x{|~JX{M@V_-jo}#IdrU8V?jQEl`s4G*F!JcXB27vNjpm!S*X#d% z{d#cT`ED@2Jg(nH18-i&x)So;LtHe zbKZxV-SYzjwArxh3OPABC9%K&eLN-v0*eaxmLx%<8-B5Q7EM18IsMT3+WKo{QFM{p zI;UJU^6QYr8y$eQgTp2?#TEJDnCkbHz8Jq4qZkSqeR4cLqw9bG1-u?E@4gnAv#rnN7)a-dOE8bkkk#pTS~5>PY>Yx(8cm^;hTNJ#F{`?5f` zoRCrv>VvybZZ-~AV;n@oKsko-6zH+s|5^)l>iZ^78p<%QHSz}L3S$QKLF)0YxKV?P zXEo7W4pMO*>919lOhwRejvT!}t!MdC=EIxp$W`Uvr_PqlvE>v;R@bLBbnmli2>a$c zDp>jN?C=g1n#I8!Z9)uIdEcMpsKKtfLuJlj@3KiVUG455-#>r;V#E}E=>{F|Lr&Cy z12X>3o$^J0X?4gibD{g20ihh=jVncHtF77X(Ok~;tM%mYgdAWea`~OsHhWoq7dQ8^ zgLZ1bd_39(AGhM}9(_xeqrs5y?(H-T5r2+R%p2QB-}-oZR;PuiDqYp$kQ@1T5r1wz|WI52G9S$-B(x#$$qCw%?Iu?9u-T zxCKkG`Q0|waKy3GEt*NeOp|cJ+vfTih;2F^6!-z>N6$B&Mp6al`V(nj*^c>w_Z=*o z-s`^>y=5nAXmkCrTcZ1LfB^|ZLGSe8%M+_pLZ8H!{+FgBn*@OW;^|BZC1vxkE`RVc zqf>w!Qcg>R#l})Q&?XZu8PfG{9&g!3jkBig*|X;^NYfHmVbU>SHUxdt1$8N-NF#4j z<#1|J2>+5@Jiol@P*D#efM_&6~VliiR! zJife3|l+HazqFJ>I} zs#$(4<#<^5w^iZscN6cvRs52_{My?xSHq3 z3oh146gCcSQR>(a7YkA9{?(N}YZ~LDVR^Lgby>vyHSxE&zn&;UV8M^!Rl7e&LxFCp zgX*lm^kxa$k41MdoO(b0nDhV)x(n&sU-k)Slj~ty&>y@I9!T|0v(_GzU$dT|2jqB- zYSp1h|5^jLXn7;$VaIU(Yw%6E-+H!5o@osGTE zsgxcfUl%4vOGrpC&pEUQaPPa_jo_6%WLmh3`NWomsMs3h-4tMK1obp02D5%Gkq-LT z4l1&bd@CDST+o-9w#V-qSlxobx+@0Z+!RVJ=0F>F;pxwxKWFt`rM!_bcjVO}Gh5Oj znk$cVH`Vg@gspM;ouWm~qD2AL`_;qh8XjB3JAq+Ch{IHU!fyX|bJb-Wnsh35#U(#w zJ>&05x|5pw&eXYY;$a>q4pB6c;@@lL&lfxT`^)kJhKXA=F^V=FlLRgM682N-`QBly zosyDLM$YiHdy4pDn zzve)J&&g87bH2_bojy;H-mBTD3_QT46^`4T7Viu(-~c_ahC5h2KI1G5~VOqxh`z0XG;@`Aslhf7o`}bG8TJz?%BD-+Hxfcl>E0f0v7`(OX9n<&077)*fb2Xk8!?snMNvaOb2UbVxm z;BlRY0Illr~1T2B+z%RKJ7%ZHvmS4Yl_M3dTEw{EHCzI-w!%rp;f^YmTXVC77D z$=51Ykej>OoppfP{5U|x>=xz$hD+lBPv@oX`_}=kZ9>W=z6 zv!wjBG6G{8_G;REbuT5D)ZP^WTtX`r!#AwV*9U*hLGhN+gOD9tg95_IFHqRN%)%2{Ys(PH)(3_f+ zoGfdv?rHOFU6Q)GlJl+`C)p|uIdi6? zV3fMIdz9Z`YfJ4B1@{O(d(CCTKp*b{5u`>}&)-=$$HYd5(puH$>NWICLOml=xIv%m z`#jdm7YpF%3Uc_EDvM7FN9SUZx^v?GTzpUjTG}~{gKx7G+kMKs8+ZzTwH7)r znLE&2pAX>bHQaY_baX^8tPK3M>9<3NG8=#(-v#%=<;RAOZ8KNqtDDs(o0IQ-np1?x zl34xymBmnIAHk;a!qek9Q+0nbqh_lYdM6%YEP{HF?Rf3sd#0R=7`mN)8?-s<+^Vfy zFcV;R-)b~{9lD_5^d1Qvi^#pDRb!svtcyQkl{ zP}APtZi{dtT3k@=h%*LEq?uIbo*FxWua~J_-45_)9VNft*;Zy*zlkAAUvENn8nV|L zvPA0|J~+8fo^_Pu2b%aaQU!5o2{+rD8lja761XEiO_N2Wjg=$B!Zc~FKaOzjsDAUN zC2c@_Ym|Y#p(aneLsEW1f+WnG02nVqd%TY^R^m-VqOur~f6d~aPLIOc>W>9qvM5Z& zWCb}^n8iFNng&j?>+r7W^lQQRodBv78&DuE*_aCY5gUEkEU{?_MEVVSXR zb5EN=|B5g!T2D~}QK7t7g^xr-ur#h1En+@vBa~pNt8FIpT1hX0&>Gjw%$)eNI7RlY zx6Nn6cR%0Xb4t^frc6pd|kJ&F;Ca!@f9ZVSs zA@=j~VZYDIV^5Q50%q0A=Mf_vrq$8g+nbKWrGc_sRfCMA0R6>ie{+0$moBlwsiAIf zN>7L^)W3}0Onxya{$h@mn^Sh(-+rCV%LEaQitALJUiI zCjaUy?wza^8774x(LW59-7p%04zoqY|D3@wb6F>Bbd*Oq2*2b|cUvA@WPNdCB`q&7xjcj;#JI<-`BpzXdc5 zcP;%M?BpZy^KIi$eq#`z5X+`;3D-s6tX~^IRV6bXLUVI-@AhxY_i~%R(mAePBe14) zWKrB2a#T-mQoZ`aL8qE=(+}?CGUWcE+~XaXr|1d!iLCZ(JHb%8<=2Xyhs#N@S66Q6 zfCm+fYE6OjcJI}zFgM851;c!v5XOQ_U)pU(y?nmeinKew3Xz9Q>ON(dN9H}rVlU{= z?C%;$n09D~v=p{)(1=@zt2Zc9*RpkMg#<`UzrZarQdHvj8iUApiMXc*z3sa}R&p zab!jgyB`Q6yZM|d>Rb4u7I)9FG3&inbU4ygUMV$2lc24Gn z<~3`Qv-zb*92b{=*aaRJ4w{Y19{!#NwB7gewOqyUkv^ggxz&aCutQx^>EF)3t8o(+ z9ug#C^H@Xlr3SdCyE#y7kn96i=d%RLWbR=8R8rY1Qx)TPBHZAbp)HWKE`zO!9_Icg zCKrsnPwFwOPrTS25Lc4c-K)C*HWxTHl}kQY+;k1oR&hVU(jESF}_0R z=lxdk8}n!#eumOyq(@QSOkY}t=KMJ@qFohH@{$vE-6Tra!t#oWIpCzU{vA5{T~kp( z-(PCDFRO4S-b7>0K!=mRkj%oE65>Chf^hC(M{9q)hH;W3#Kz_K!1opL?tMLd#$B6z z$99owLF>uaUtO&3TSx{)uVd})A`9MuqxLTx8Ew!tSTt3`=#ox${*x%lf4v=TR3U7n z!3!vqeO@=F-Uns+uS=`lWEEh^%;Rp}l(9c>K$Umpubw_$``D#BwPws+8uw_(lC>Dt z59N6zTxhpj!92Zf96qi3HfLf-dJ=KLphnz-Jx(^s)PYiqN^#Ao*+elXe)efqk#t*+9p7>7>u68xNTo$#*Fk}Y9rfXdMHqT$Y(2ZD5l&l|*V+Pm zKHRtvQ8~F5Gbv@%uo*^8>ymtd79>}Yn;B?PlrttqxAd=i8jFXI^ldC=2sZ8D^!XY- zEB(Ny_XJRckNtjK{kw24E+39>M?mDkr-Af^?-C6Flsvp&x?Tr?%Rt?~zg245?~j@z zw&>bei6H%4>klG3BQFbosl4FePFhOiwQq!~fp^Grt&fKdDTH*8vq{}Gdv`!9kG=}V zL9Ss6Fvq8j2o&}SC0H^~%aF}DX*hQDr@!^34-pmzPnY?8UVgbU#VT(_guK=Efp#;yVH~T3zjxAwDs)03zd!4E{0J2-2_hSSU)Y~UTh)^JB5OQT?sl~r-s1K zZmS(YJv|MPxipzozEW9zSS>kg{a}=ljg1JR#ON!E!%^)~hhNRMZ@(A;s1D?dI>HW1 zDU3T>V-b8~#}FV9)4S}W3KW*HOqCvDuzc74^{}7x?WSqWKJu$2veC=C@7}A`a;bTp zxeqnJ%@kH!Suu@Y^LI1XN03j*-5x#{>a(!m*Gs3q>{J=v3FLfhH>v?E zMh4SHb3X+C#Vx&vG@|fpb+l$wDH+E(G(QYfpA{L)k=a#~DYxCiLe(KBIXRho_tljy ze~Vh2+|Dq2EfOf8ea3d_Ts>i&?fd+qOiN{w0rMsHkUYeRtI3O);-N$F|Ec270~SYb zB^8w{?^fhC3kJ%Nj}Xx6QeObyg3ncRqD;tIG+jB6O1yUkp62uV@~5R@eeT|+xf;ej zW~-TgVbc|*o7{?Buf7^2`N9MS_O`XP<=(sD&DgRiP9zTo~lYlv#S+$<>wcl^q49gl1s13(CAzy@<%@4ABD)c{s<2R(o z{bl~LUZ|<8Yds7HAGuZiFN?0tp>LSc78)GT62uoZw^!L$ zC0$x|c<<%|>2sMI^uG*-jJOA|%L0hS9TQ66-EjWX*AsSsO#roZ8irG@KvuUp;SR&2 zT)jA3^;#diHAq5cX6AxdUCbEq0eeNiSnH%5_{~{@Sk}QA^AvA95UOTg;kX&d5tQ!W z$z)zXX*Uw0Hj4GKqDIJZTo0Qc#t4->(dbKm@$kf~1=~69$6|~~yjk`cq=CrP8EM3@ zuh(BsO_c|BU@o-KWn(LJ`&2fWB>6($X?0k8kL^2Eh{hw<-vd*$>M#c$5+}~ST|#`w zX$Rl4Yjza2L!zQ}F~>F;i!-)Ml=!@!jca-*W?JL2DQRGEB@TiMVyG8^qqq>OHHO}o z@n=cjnk`zshlVkb`$ks9X!v@ezfuN-y(^5h;&`Wy9t@MC4Wn7XJP@AU65NX0o%A@_3sju zg4sZ<9eCZA&OM1zF90N#{|(K`#1K%Q@)|gm5vz92F9HLKQ&N^3uc`Fc>ZorN^7xPU zp=Sz>vc+RPCiaeL6h$P$6t2Il;+(jaK_k)VDnF7XM96g|=Q%0WXUt zWQ|TCZJBl1oslY7G3u|cufN#h{^BcFt~B(e^V%CGW+WPUySceJMcQdF?molIz%J0{ z%*J!i1sjocovc=zvUsxW-<2A6b8KSoT*=VIerX@oNIz>hcS07JsPufX@|qe!6cU3$ z`KfU@7lV()L3Vu&IfBUv4c#lI(soS)&!!Y?NcG;Fe~wLk0(VNWl$p=%PDi+^mE;Qr zuGLXoqts5{gnzyIW^9ni_a#h6Ac+?etoPo|cj8vY4N+nTs}eteSn);F4iw@7%kwI) zW=yt6XQ}JeG(s zFN~G+WPAD5%2M7MI31ZxSVkI~$OR4~X#G_oko)>L7770>f_MLXWWF zG7G@I`M3A309=T$G7m9Jy8n!zlQxWKKdR0e8gj`mWW2w>7PZDxgH~xy}_A{AKNF47R}&iQKj>GIj4)`0E3Fm{3^Boh_&@@MwWPC7y_ z9RXhQcW&6a`evP6+;WT@nMeT2e z3RpL9b&HN`+%QAjTA$9V$xN%B12tFn#$6_2;w|!(45LV+TjdOK%nt|OO3jt+EF2xt zuxNbD#?fO*uRVI9_Gk;2Ca}m$=i?{Q-lxPd_4U2F_vDOubCAVKnZahoykF0^K!i4`Y-LoEuqj0M#@8E7|Ca(XY{DFhBWiu` zY%jB8jEoX!=&d(Xm3w(&sY*WTs4jMV|F&YmycjLf8p>ozsuK&F6*GG2{(MSTFgk2vh7;m1&ekA zQD3k;reluA3a$E?rIFJz8A&sm0jER5gH?z+UVm=u=|2q~57$Hdk*q6zF&T1mv-4~& zQw!`NLHzowH~A)757cDx8ix;(+Wln@jKWhzP3FC>)ME76TnwS=AZQ79R|y*d%$%ex zYL(Q`R)7WshgNFRamGu@&~U5x3>?b@NtzL{`o%5zXIK%#*IX>4`ehyKW|wPYljM)) zFwS@^GTgJU`$FvRh4L7q{vrfb;syTw9{vKOKWs)y72C|^*nTVlao#_=nxz|>`(B-e zOEz~u`?a%o1_vsIO}F8<230u#8-k0^?9N#V8x5M@vF#9qFBxOYM-PY{Z7O0_W;JXT5d5j^RP?d5lAyn7sn_&<4gPCgx1F-S_I{t z9{cL2(S(Rd+;=og`EyyU2pDRfTN!e)ay$D`EAAXmbCrLA3G+2@m?+g87o&=h&=tlA znbQDI?0)MGs*V!nYD<$tZgQun@zY$D;YisV?(FHY@mSj-b=HKsB>G*<$a3b}FPMhW zbFvlv@`)js()Ji6Oscu{^u%wR7Tb1-zmv7R-bm68p-7=n9sNdt@$9(ca7a~i=8Z(u zZ;&1rHDD0hC;*I0v(*xA`h5|DFP;3BkMtOhW>nQ0iO}xy?{{!Gi#fO@fb^|?^X0UW z_v)MK!wt-X;x*a9lyUt8kK^0#>{vq-=cN{N7N`LEq2skf+|^aA^BXk;I!TV1eWf2( zxCHTLkX3gfN$Sg+8ZpYr1=e-ztWyTlE?%N?W+ukI0c~`lN%*u(k2BA-$G(gz!g-_6 zmN;7^)w(wvM9YscT4~7H&4lIG@>)RIy!-H0g5gO3bJqX5g6J4lbG2lNey+?cZi`bxZ)ho~A;pH8(#n(LsH&xyrpuwvxxHpQ+jO z@M`%zed`$O`-^s$pb7Gpyn(OEdVe-REIJB@v%X^lujWr%0V~(dYQsI1=P1(f0gDBW zAZ=ueyyOD;sE0d2Y954U)9Gj2l3JL-M;d#DUB_4v^``A$PwTS1FD@0x|MQ#mfd5Se zTy|5F0&>J3NTPdhE%BVxdaF#9*;U-ovwf{VJ3kwMdLyul{ax>+r(ETSJ3JS~$=E3! zCR5Q#A+*aO3yXb8s${ADi>Gg;j@GnuL4siG)W)lX+6(-9z*5xI^)ztD5bz<2)q|K%DdOLw<6rf~%^WV@^czKHgYQc*M4fZgO$lw~B5<%zK~{)h z>O=|*e`I)l_qTa4icWu5+pZaVT~JS9a04HvoIJJkL3SgsYu~t2^@A5OTju+Qk8zN3 zH=sN8?Nxc#PIP3fXTJl)l3-2<+~LKqg26XwC9%WrV|$-(mlT7?j7wXMDh&qnO&38) zjJTSj{acWNmGiN-!x}3~!3M0#*Hor{bjp}=qpd{CCA##Np(nn3MKFP*pmBjjvttjw zn2v3l=al-EsSD%9VF_eaudxcCWW_xpRL)q;xmU7A9Q$J0C`oINeDwbvnt$)oHV*Fn z^d!v-kB!oi-5#7BiLp}AYWDW_yV|O5F2m!~I2b#0l&xY~XRCKCz)nf zvYmNmTZnhp(vcIw)Faviys$clo%wfiLCO;;7?QJx)Zi~4K=yB}^lDhGvWliBpevRJ z%BYN;(vg+5CbmG7x$Zh32#dTVsvJ2ci&l#?fBIUC&QSo}IoGht9??NValE+Aq$>=Q zBfAOuro!E_ka72Ee(+nmrn>4g6%yI0xKOr&?m&gdph1aVHFQ#==h~6Bn~8(__f*ai zb=HbQW`ldgpzCkvHX^2gjw$w=!?il)denP$iZ3pHPM6MPmTqDF5Dm@N6?Nej^DNlB zV3r#ut7ZM`(Z|^i=5^dBq&~~#yt=#_EjaEc@Nt~;^?_o1c&}_ z0A!}jn*VO+BEYPIfNr?fH!J@CkZ%tYfQR$o+r`z)r>z2(sO~} zZHoTK9mTFE?WYm&fVbtLXNyR7X5&c=LA_Dm`E zzYF)W&oUMsW9>v;XbO-U>#F0LB4+dH^oyk^vaE%$bum=F++B@7a0NR^Oe zVT1;N{}3AOY#h$>S&?W@8D3m&oiw~|TeNz9er)a6{+7yPDv8nV+Y76&F;JIr-b94I z%p3Yh=3?TMvAd5j?azDk=S3rm=93lfj&j7}ZF9&F#pM<` zAI`{q0Ok8D@2hQ6NLTWf7-&koN5q|29lgwUJ;`)bR+~K!L>fFDdE)(cb}|`i&P_$= zaItQFY{sxmPeZAL1=8xb-P@7?$?FNTf!guAvRQ_qj031?T-w$HxI5>yek81Yl;gKkh8H@ER~4X%MVBkYRjDF2g?N!jJ+S90 z-g%3g9XIxKoZpbar;NcmYwE6cY|7lf{pOYmoFV<1(of$VD`qnb+V=moEa>6 zIxK3?l7s4uU8J(Z{+l%=9JoAwduVlZbO7<~_P+H8Myf;sB}d(zJje`t@S`G0uxcAR zv^w(p?J?40Etr4h4nIVM^cWF=m(#N43}b+ZwSl$=wLHgy)atiy`4QR`BJyDfZ8)+f z)|ZD;4=`7yoKTE?Z7 zF1v0R-GA)~KYZ5Xwl}wyJCS^=)Tt?1e4}F{e~!e}mjj zfL9s-GtuP|h+2(uDw&3O&W`~HVx9mIyC29-#iR`zFJXKLH1WfZoVpd-tN;Nq&?E{0 z!2ocnNl(fgbOJ&(d$_Mwj;a;JmJ5i~+txCp)pkk;qBt@QFD(@#wq!W4?)~~W=oe)A zF3T(*t4K&HPdM8#X{1Gw9F@bPi_Gfm)9X-d!XBGmvbG2jdmaIHF5aFYO?O(hVm^7> z!0S-IEuAw4CCcR}^rZHP%MV---a9dn?wBm8z*Nm?nK-Gg&1N;ls2pn9Sj;OZ1r3G zO!lt9gO5EHXtQPUj){d)1hGCjDOZ?~w2KiqB)g82_Dq$6eWWyH<_$Hp54nn{y+uHFvs=WbP@`9!d z=}!e(4v8uPJU!JTuOd}~tT0%@=LJsXfPch%E(sN^!K=X7KVQ<#@Z~Z8zqEZKn=l~4 z*=@ZRrxpVK za_gR}4h8llaJY0(EwWEO@awmoI%hP-5~^N0J7AUqJsv(2MCaNW*P|1P2BP|K3fqq| z?aco%wmYIjPXiNsjj`{~9&~y)4q5wvlRgm%`*pW1vgDCnt}G!if@K)!vVM_#`MY;> ziQn_~?b{XM2^VTBr*$%nU3nIA(l>k5P2ZA~8vL0Qr|C;o87d}#nhJAsIN$dS3qrgW znqOq-h8}aj@SD#~c3}Df!IBL0ruj#|Z;C|WeW0egU~A0F_A^u!wz~#ShEhQWSCnLM z1XaQF>Wv*}J)UX#Cp{}BbGEKwXX0{&XvEnOa(Xa($&w|G{JM?$FQZjeD)K(eWl0U& zA1(q5pOd2ULke3tAo(bAHLlyBe4R=&JeZJy^jHN z@K!6Fre{MpA}QNVj~F#SCW(HK<*q{P$rLqjx)ST@RM}?B0Jb$)yx7Qk=$<98uWxH_ ztzyU))s6%9wL~L{bsM1KpJUFAS)ri+$QS>Z_ua@FcOC(5Z+f%AG3qML3;}!1*X@9s zaVBO>SBd=Cnbl#3eIh>U!$)eZkKZAGY_|Sm?pSI=n-_d!xovV8D#&qjPMg~Qjd;h_M@@%!3 z(p0lIlXrhCJh>V3SKi?WH)riaoF&|`(mhhWOe-n9lN@Nn{CHM=0iM8C3LPRp@JQs< zH<`fIv49|h_`zjc@9lY%1<_S8iKm@)iGM^x71I|&k{U6{_ z7rHVfj=kY03b>IZ;em2QjEn?1#FcmEP~|%V>3QSPZ{F-K=0n0J_3gF?a^4jx-)*l! z_43fM%3789uCBMH?i>Wm>oADuYQ*Kz?XNAUHFp|R5&P{2QA#Xx_ z>A=nZ!7mq+Nhgz@vq7;b>3&3zqnOZQ&64D8dWs?3?4Eq3K z-AZZDc=p+2r9nXqzF3lX`c4X0e#C-`f?ZwO#Elnl^)AHR**?ugLq&hSf2w*8s}`C! zAy>@@uf4YHrAb8KZUW0*4JLyCRJ-ki+r2cW0kB)<+V?YW_=c_}+;7Zg8}{YIn~5qT zV=^y0C877@xb-zy>t{$>ft`Cr`pvy@ax*k^4{vT;Y$(Jvf9|2LO(?wQ-xfWnwguHl zXn6%*5TD*TAcBTP0aMXGJ6IaFo3&buHvZ64_el9=6yy+Y|E$Sbe+3)&6Vt}Mcs#>t37gUOImJan!Dq~GncOJjQS)`>0Bpr)oy6%Hpqf^V9zKEZB`SN8V(E&6L z8GrI45#m!Vs)f)a6bksr`?w%ueo1Mm0H&#)#vLuFZ^XVRrI`&4hHXclON(i6Li&;Q zco=@oC2Z7o{0D+DJa&JWD?vCo_VZ|I>m%p9AI`pdMT-JtvVm3mTH z7%aBf$(6N$fD??2kl$OsQss_J-~-F?AFM{c$?U5g+002~*bC4H#%hMfpgiic5?9`N z{V~qyF+k^Z~iXP|2{|UtlO4vqOh;OM)5dw#Ft0= z@$=!%N~6X^QT2a)7}lhunNsqdrW@FskEx0{pS57%aIv<*2OH*cmpwfg)b0*PW8q7m z2}YxK$1YXX7gSS}Oky4}?LkplyC$LcT^gGDle9RkErc-Oi;#siwoT1aGTXxWoShU) zxgO2uEUye9!@j{8!y;FtE)#?c(d^z3L4wp(^@0cHbIAxiT$4q$Cw0PB zgZtvRI-`1Ydlpe^_k*eI7GDQ~-E|ZzZIhF^n9CK8dp0aKdx z#)6c3^K)`BCol*rL+9DKZ<~(D&pmk_0~w_n0i5qYWfcv3PalGE=}-oLzb~@fYUiBS z7;e58yp>m3k7_oDT;WkM?j?FJ^fY6QWDh$6pOQegOjM@C5<=`puVhlN{T=T9~`OHqWVJ(Z=NF6}q&Kos#fVsGHP-NHOBs+!JNq-Qvz z{6dRQBh$~`FQ+#;uTf~rn}hR9UcH(DLX`Nr+`}K`+twXw@HN^3NSKviVF!UYib~-= z0?%@PC4;tg-kQE~{CeyS-;FvdORh9#+u#F6F2!5rt3K4qjy-e`EU3)OIyAQj)VCFl zcUn`biG1DE`P1^RlIdKcE&g1sA{$yo8fFYam{OOQ{(*j{{5VT$tfTLLQA?Gt`zh*s zWHQ^s4c%Br8Yx3)+n3#O`ZWt)2W96d)HM#tR=M5j@?LDhA<>Bu$Z=fCpqX?n-Pj zywk_G_7edYj;Ss&&+1u!JVc87dDl_=<_wyjc}Ivyfi8IagVLc}Nw~xWuW6@h8cPyI z0U?BR1;6q1edeMC4+3fqsJ*`8uJx0GPa{g?KFam^dVFDm?2AV)!SI}wYb;Ufa{V1; zqEn3mcI}(F@D!t%)CAhRcOvA*Y3+wv1%UF|Ac+G5DMd*!7s^t%zk4v^$l0Q~F)Mx@ zYct{@RA{%^Hg>QXh6}IbKukywAD);l;UQ+p_eV-D7qxoo^F7`|Cw>M&0owl$Klwt( zw*eaD11M&VYoh!E2?IeUuyh^*j#GV zU+X-1^5hb?Dv=#m$K#@|(JOQ2ww}X65;Wp0yNVxxpD?diYw57KJQyX?A$G2nk+T2q zy9@8^`cOa3DF~qRx}KIq(i6Hbe`el4I#k&S?1VX`wV;gc#cU4K$-v19c@8ch4h|(6 z86&&eKk+mP*bjgQ-hL1!UH~aaWs$;AF3eqviscgzyG|1RKhapM7k<7syKgCRgAI4f zqQ(6k1bU&_-*f-4uJFD1ZNVWTmPR^5$QC#@*%MS@B!?eDJ2Nd(9Gw*RAVPfs^(Upr z$Pg2v-Q?yCT;U4^ne8%l7+JRu<4rHrn%o~2Kclf@!_rrLeKC!#1=u6Z$hTXlr$OlkM%!&Rm;vh%Z^$$tYh}LzJv&&SFwva&_$APGOl7+Y#)T z&jsbjtqh-3t;Aieq~@2Ms?fG_A3M`PU9bx0TcvtJ2m4or%GkbtN~tRh-@XdJ;7tzw z!F^4^52SK_Jhgn)yvPT1aBC`_XV{d9Q+v8On_k?DVumr`g zX@0jc3qbBxV(D_>!EBe)reF~Kyj+ySulSoGiVXeAbIVBf{h}O>H9VM}P{m$DibM(& z9uA}GDCB(K0m;pTR`Yn}TZYUE9enXt<@_%YQnU{9QG zZ(L+Xc?u{vyGBcJ$5*~TAFm?#Jim?wZf0tSJ>}~IU|?~8|eg|VF6*` zVI~HzOMe0{^obZ!!=FcSOYTFdG{4sE>({wnI~#As#I(l00vAOoV!KknYHBZ+ya6`M z2ytdYxqcsMKvmWr>^qnVul#4=qA2Eug|OP{gsiMRPTfugT1J8I?{~^pkDSDLw07cU zMjZddhAqc`pnbG)?tr<)z}{AVz(q>-x8eSlg)N`;+8i~Ay9B`0d$~}Fb^`Zr!m^0t z9|5+W!K&GQtlHPHcP5v^%uK$b%a^Tk`^pa&|Fkg&fCGIm5sR~)- zFnQ(Ii`MaKT^AP{Vw7#?`dD2w)hS@{lxvn$D5aa-iyUx`a*#&E| z0@x;eQ%;#in^yP~SJRvVg7qEBy(Y!*rZgT>^&kXg=xcJ(F_o*4j%=9iql^8Uh13F->h2$xiIiTvS@ z6p${XWryqUPXUL?O5z|S9NqFEX=#=B7CIj=)24UePZ$BKfdKW8r5Pb*;9)DoXT6d% zkQ)p*&?g(8I~}bblo;`1^sgQRGqGjt<==7PPjLeHrq{S$53TF_{?@nV=iS*q*Z*vf zkQ2YOGkMpabjN`awvQ5>CH7Dh(7l#yPyE0z5keF;$R7p?=0e`-fm_vBNm%C3WW;D< z^kv8+IXeTB^Nm9S0xt#Z6+DeY1KCh;%Q2UbwJ;BLC zUc_`d_nL{TU49-d1=R~mO#Ukv9KDJ>vYuH`1wgVX{YHGX?FzzflQd$q1)BtFV}JTe z#4J%`(aG}1<7SJ6%KZ7-Ey+?O(KuT1j84fwxbf1!vt@n?NM}ErG(FohLs2%Dj?RrF_OrSJx_3(MP4M}q zQewh0I@GHklMMOBMFgzlp0w!0<`8wP!;$rS(C%!TVjc|QMyUPQAtfU3JHY-j#Ti%L zR=x0i7pUa@c8uD*Tw-Y~YNdK`b|1N3!oU_?ay?+bOa@7NPPmNDt%_C8PoR z0dS4otD}0~fw!W51P8u;wA~CsCD24t9IQ34q|8b&s5b}f@?6~nakxaf& zN8uE3_`%d{OYce-vr~hwOgRd>-Y5NAH@gWdKuVs|6_-4nc2jqD~Idn%xNB}bZ#}4)#Y|Y5VHy95ExJC5O4aS+|EWr*Lak*Lc&RLRzfA>6**4F;IVA&lF#SFFle1j=Qlh~;gs z(o`dB6x>EI?RcJ_kbqL-+ftA6U+_S>0-oWI3ug8Dv9ElAt=KE8i*^r3Oxk!rN94cT zNsx_Af>~_Zf={qK$d2>Z2(tV0(qNPV_E4? z$OzHFg4FD@nKTgoaJ)2->||VjPZtgQcG$k__4&1*PE(GUm;{=Z(D7CvEerFXzf?QG zgz5GJppa5445P3wd#GdUd4VqEPUAf&(P_tjs<1q$#s>hpUD^xOqR$b z_uYy)EG0N;SU+`(mdesCirA3z(s(bJIie8zj-M`N`D8KXZ#-JIH}9WglHugDq;`iT zeMdjnmk*qeGpMUI?s#>wuK@1f$$0-_>)}m-G$WDud4sN9d1G!R%xs7n(W zw{+8P9}0wriY{gGmsswFL|kz^b-MEbuoLoHA>4Ck(Z}Vq6&CU^;Ve>sw*Ri9r=wti z2aU{GQZ^jwTHwUepEx3IP)hj zq4=N2t2)Y?0Kxttsv9=6j~%Iler3HP=Kz-MCT=gMWlN`KbW&2%{XgWs-zB~OipPEL zMC7JYVjrZfVkX4{JGDA!L+T3 zU*M0q8MU&$wu;d>ZX%=+CCPs(36@0WcICc|Ve!$izAQ5#P)qDYhzpPO@NtHG``9!P z(uGUJnQ;0Qto}8H$ttOeZTKo`&j!I3$N#dal+46sGNf8vQ(j+WW6n6DI9{dN-;Nfn$03B z$3al^Wp>{^*M}?RBWi(N6t8K%_7SJxrI)W%&zM}P6Cw~6~5z~_d9nX4uVqt-=_ z*8}KKj<~#oX$Gi`gl)t0ST4CiznLg@0U9Wm@x z{9SlXPxu#;nh>&IFL-W3eYN1>4Nuu=v-`gn?DYW^Yo8}uhI0ynqZ!n?VwHD;4;?1B zmz%KneERrG*!3V{#&ZEurjSWg!oGa>CtOyrx2870_Qa#=w%cBpBH5OTxU>R2>WZ)* zx~Q0$>&R*$^3d_mBpemDM`g7PlE8IIH>k_y9m+7OT{bUEfuP&{$l2ysp196A47}cc z$ReUzPdl=I^}EjpmO*;5{NBc{oc`V~a{Z0{Pg>rs2>!9-m3^JFbeqbLHUU$)YcDEa zRGZ-Z2zzoheS3{Q*Ntn}t||U#;(kN^CY}~i#G#%)ha7cD{zQHuI>jODPt;SA(GIyg z{`J6$G8z%d);7Kq8~kUq&WTAdq8Oowy$5;Q&*Z}Ic_t0;TG5zISl1(w;Fe3airO=n zMgLSO#oljf&99t%6MM{+3+~gNI0IX;HLsmUx=Xre&~G{ncI`%q!Pv?3eC@u_;wajK z73(1n%-XmGA#vwgbxHO!jbQe{<)Cf0{mqHOpIs|6CM}e{x!mftl6~hti~l;nvtfg9 zi?HyLkcVSOb6+_47w`QG!tSeIbNxB{togj#r}<8w{`2*z+mDt%9J^u0pQl$$6P`0& z*zDpZnK?Z{#~QQijyzFmiv1M(F*drd#^z&aQ+k`8ORBua#r~cFa;NbwY!UH~cPxg= zS;ixN;u@1%=R4g-BrKK4SG^0}=exS6P1dYacA9qZW=x8EUvJM=U{i%h$}giw!Tias z5-;PnOtr)r;s$rC;P%*WW|eBP_?{+t#L*YNuMxT>I(H{!pcdB}1=#d?Yzj z_deAfSgWt&H78F9Q**mkT6XD=YfA>`9|a~Wh8C$%`*nd_-(lLv(p^gdh0$P&{ikNy zEo_!axt||#=o$PS=DD3Sjh4@oYK!Mcg_kc17cbMwa`9)ixiW)+9|`5;-y$Yx5Fzr)*K9R z{6c@$(7WPYnVJhu&Gd~Y|9q5oR$!9@u-laH$86$ie){vT{HwGUSu#H8%}v3c`|IL% z!D&NDxL0;9@=@{;PDvA}XhC1#y+!GHESRzfBmGe$2v`RFPH!%!+hHut&9YiFq=SZi zpa27R@rctWDa&EK!$>{kE{g`G)vVm7L4YXwrjw z205M9`zOa1B~O+p4Qjk@ixLl_Ng^sgkJx8kvBs|Ds+-hWz&0n>-adfyT&g5o^KJ!% z`R-N=(< zG)vMy%yl^^ycC51SytDgtCqLJrwT+O?NJ$tngZsqOT|^X{LV2N0*Ug=bc}I6F!9BZf#+{!>oghlif1nSR7% zhF!(pFXTxly*|6Yx2<4|)T&p242)Kk|G!W$6IuhX!3;pbT%%E$>g?Hx0-A!5w{`<^=08!@i3dI6*%1NO+dIc~A`4MH z2CI3qmOLqvFBq~Y>S*SHOfgJxpD?r9vXHF0v) zgkbT{Me!G-tgv(}1s4H^u-of8m!4K*bWV3S)wI3fVXQ)e#v@4dpw7{0AjE6SeZoh~ z&`Uoe`eEIuA+U%Ma+u3)Olq75Z*YCpok@q;rTc4F9&$!|0Ltl+O^PB7EwlW7LbH{5Zw8agic|2V6oGaJJ!_|iH0YTS^=xY10_ z2K?I4;%E7)x2Da76=P&KHmM$9QZ>sL6`|Y%bKAtq=$kk9!||=~cr)t?@(yN*MPG=X zQ=X*O>fFWN;Jcb(y_t0S21ljNmd|AbcF6E}xtQfhnSKe&Pt>pRWpY8%{eg<2u; z5Sm<$x5MkAUou9I4t0Ge_xkVu?SsDgFbF;e)T?ch1*)#DG*N+D*I(p9pK0e6of#o~ zth*o#iTyiU#ruF<`1y#^nqJ-()JDPolTNZ{A z@`BY;7E$Rg(Vei!!UsEy25ztd6i`2#XEKiM4_&O3f*DbSAf$1tTnlMGlNROJ6E5C6 z%cu4fnLx9TjQ2_82POe0)Y-q0oFqT8OQ6sgILHwUdW|TN>;EQKK%SyoXFDHxW&K#( zK~xs@Y=@h|t{BelkOd@~8EaxL@~>s7;;zL`CJkgJ9$z}6mj(p5_LjT4X>Q<(x@{Hx zIm1LXE9;-Jk5uqDUJ<#tiErnA2!H7%mAS6BuNG777O(TmCfRk#3@#F1h^mI0OWLA{ z+n-uvXLf$R?=r(~0iabK%+5+H4nN#akq-g#X z-HG6Qj=3{Y;3(WQ_CX8gAG5gTY#^7{z~(x|NZ%{k8`dbGh$)xbAVg@DrLLy0x>b z`{0egl4Q=t<*_weT$ve7TU2s;VLlSq)u&S70td(GdRL;a1)!T)*`@M&ll-;XTZEjj zU)dgh$gGZ8lSo`TScVw8a(!>*Dtsby!(Ue8_V?nM1;?}IiFyeKSsToPtLbDIS=8Ym zHUDFZkkIMm0&ZG!%S}@BeVsr-AqlBfQEXFJ^pTA_fr;KgU#K!C!Fc$7V@aF>PrYRC zx33eA;^dJ9)dewuAZm!kSUE3>YgUOM8Z=?PxB3x-CS&FFThP{chHXOfm(b5W7%y>I z#ufYU0ldAw&RT1`!|VrQcznLuKh@3oQ7eXJnaR8X&|2#J8Hb^cU%vFz^#>WO;3a}~ z&kDm-%bJe?S>eyEFqrk9s^-$?1cJYxv87K_i}NC^*-GLi265eELQovdJ$m{TZxyI27llqLc0Q*w)m-?$!h5GJ#ym-s^{12 zRih2eY7w~neR;5CPFl=Vo6t-0rch5yIrt~NJvrU-Ve@{;=9}$}a{ba|)nIs~2B(kZ zy3sZVcBIpqX2(gIH_g5cf%j!+h4-DAqP84FK$w9&ia``gx8m^^cVt6z0I;=C!~MTXIN`KfYb05XFv7WPXD@}h8}nAPrFTuTvVF< zW=C}D@D|&%E8J` z+FPR2GjI=WMOgB($*2wtkVlCbmhdte~V?R818)N@yRS(Abg z_@O+`fKumAMUF#TMOgVZg7kc+l|taH8QjnWeb&sNN4s-E zu4sEg7~kjOb>DVSFji=B@y}dIXyMx z|D}_unlNJ8LO`$@>>X*yRem#zN?d1Cig#KI&R^+dULHU-;8j%VsRwRalR@C^{#bhMjoM#F;kJ-+KsTP zu3H~YZ2`fBKeX#7`GxteFly+nT@l5btkGw7k27zJTbqLI<8}5KgZ*cC@bj$f>n_iE zaP8DAKXt3Pn_)TkV@yQbY5LB=eh1vxmTF&mn<9eGQ+nXE1om9fhwi|kbu%&_mOPeb z^B_MD=Ba7}Cu%i{zGlDlqDHss=D%21#Nei8it`45<@4qBiE$0bIzQa-Jm3CEHTuNl z&iAT1f;GA;!jzo=SzO1^hobB8TlcO+U`<-h^b20!)F!6-=3KfqU)~Z(uv01x{ZUEW z4BlwVbO=I80#(<7=MgJ04rmc(jQVta{HN+$`13()INH5hL_B|=pv9t>vOq~{TY<@) zsb3v{d^5@PrC3IT+hqOIH29#Wn+9Y6UvRyVUEW3QOnYux=F`_D^<>u20lx+61Y9UzEX(N580gQKs9GMu85y2w5mmL3xb_sVLB zi%C4>ba&yHp~@~KpEpz~J{<+2^(T9{muTg8>e*F>S^(0AnAZ*hKW%rAqiwbd~$WP-4A6&ICV?;l?&PkV?YpykC>a9aeMCY_-5WQPSY zsz<*TS8%rFQxZDyR?JBIW-)xhP)%TT~*|WzZoGdJj7t9 zPA>XbiyHM=CdNFIb(K4N7Uz$77Y$vozPrdlMf#&&+*np2)rg(v+P|6IO92dTD0Sdv znTnSk_+HT&PNEYQ9?wPYJy-pJQgC!U0(Y78#_s;3U@&RrV9||yz{b)WUd|o_VKTMl zTdLFGax*Rg-{Wt2fV3u7TcqmEIVr`03Dn{l-K7@<&ISS; zNqLMMHlirlfdr4^tgipE znm^%W`U6UIh=GNC!0LdWeZ}5WWOelxmz0ic)FCH5cfu)0Fi-M^21}rBE^K}-@I=w) zwQ5IG`_1XCU-!L;a^oX6B+!QwDnFsoQWqM`SGwVc#h~3FT`u_u8XB)IRIx1t;TjGB zZ`+Pr!yaCg_viNlx%2!InM)g0>~OChg;Z=mlDNfgVV9pyqr)${E-3n%Rn_(|#~z2q zz$%XC%{lh#b{88z1^D@&B6xp22%cZZ9+Rkwliacf_{Xhgt8nXIE<_F>5b zk`?G_Li)HwZ~4nM{ncCLMSTbCda-n?qx*Mnd|*8WcC-XWclPIFnABWny%#F-GBroF zHT-dtBNZ@oo{|lIzO7z8)t~GGfI<}CEpPC<;SweH)MsZD*#!+g^A>jyAOM14idIDw zMuNqV+g)O#WpQhhPzI{?t4sIhbr&XK67Xqw<{8b&jE?TE`Ko&MP|wD3GTt?JO5zN1 zI`$#c{aT+unL&~;Qy?!8N_U|n2DcAvJ7E`;m$7Pn7x6ER|C~I*cqg-c)~)ajP8PwY z@x`(|n^0Mr>6v!F6J~ZctW&gM$9I$wGjJFRr4`n)+vnc5@a&IfopT$?35>0oK*;W6 zr0700EuQ7^wG*X>JjH)kx+#Rw5{;pC4le`%WM7-bcmQdzS5>>;PvWQ6ASe{@+$ zzuR~+`4Kvz6zp=5D}4;c4cmIGKQU_6JC*YB#wyJAAZq|OT9M8jA745=#kke}54chX z;9M%NS+AP0A5_BWi#|BAUp;dTe(_5hNGBP&Up>q`&w)AA_^ORu+sRwhBR;Zt0TnS2 z4-`iih8H$t(;3m2W!a4@@5CK)I?<%d;*=j0i^ssqTYgS_ec>NJ{YYs)^A~iVPpN$J z+aX*Nf1y?h^Ddmr8*TLxAAS@0ZBgy|@N6Ct{Qr79!P07?;U(H~7~UEhoWII5o$D@;7$-2V zuayOcCIJ7|Fv^+uKK|D7iSlzg)vn3#RJ{=CUl|^@r>9KED#qGr|9CwGC?)w({6$|h z2;*T@AI!`1kR4eURqbTQ@28Le)ta|2U~@q+m)${tRKDm)# zjX$|uXj9dGPnqj@Q=1K<*_)p^QDA&qq3uG^zXDvgG)8|2lHGL>xNr2g#V9YQ6QNR; ziJs(==GigY$&x0b}SN>5+a?SRU5(li!eB(`G@w(EuHeG%gi^JPTDJI3i}?L$==XB*LUNfWf? zBrTK{-S;7j*V(&0<;4sxkTQ2;xXhjPsu3fc99?~9iB^2dayT(XZzw7Lo54gV=jS$= z!r9H@_zF(8!=5;e3!dC2)H{(L3E%RZ#T7vt^u&|H{?=8DbVhH*VOePIF2H5ikzzS? zSnVM6_d^=1)vbM;!8ZwzT6&R^nlGkhps#4V;v!O7Y5qxO+$n!~MaM^Mjs9++qad{{ zJjbIrHQD5a;SGjUc6rmV&fEy*K672i3pwbCGRHqvBYvM{*;6Fs$|C^+7DB$rgp z5mntocX_1k{i6M4;YE~y@RKy+%+u7X8(0JF;C`}6^kkLU?!~Wa=Nbe_vYMBh#~%f- zNMODHxy-igo-(cZPDpllp_>NEq;5ZU_{IslO&+R@mk;KPM+&T&Vy+eH-cJTSvt%6a z0~0gV(@%dk7ZqlVEqb;YzH?=sH*Xu3Is%fSLajbZlTEJ-$-@FHYGGIm!OM(UT;pWF z@1cxa+9^Ex5)}p1FYvq|c2j{bxtN+W$>fd{_cUz0N_1)V%iTKfU*>oPVkM(Y7Sl=^ zM{zYZ_LIwVQ~4O3?#k@POEO9eZ^Lo5rAkr9*0y8I-Yx+(O8~b*$IA1j92>ZC=T2cm2Z zuE$I;>4_4)+s6r&Z{<@n9PF5m`qKW^)Vf%w#+r!6QYsehUU%Slh>5Cr{ zfDhJ^1mNYGf>X0yuGajSW}*;$v=n+I?Ko#t`nL}`DcW|f3}!<$bYC*9K|GL1os_80 z4)O!W!Pm5i(>t)Yn4|az^uTLUm~#u?Y7NnYN1fMqxe|707ghxwmo|Kv`g9Z+k_us+ zif+x*E&Ex+LNH!O@=0oTM-0{3LFL!PG4V;|YEHPK@ACOLt{IuJF9!^Yy>BqmE5+5d z;uhTsusjR*T`325h)x3;QIA`%4AowxsVp425ImJhzup zKhqc74;r^2-Pa02(PTSCpI#BApiEXsJ0Qgv4yBKeJc4XtyWHL$_RjOB(dMIP9G^e5 z^NhLRlPoJu&M5&a0+An+Ze-` zDA0CyN&w2%weSYW$PWt>-d(jd{m~rsfK;S6HxKLhS~BjJ1^Pb3Yw>0 zspJV5VNKjiHshX^vc0DQ?30Lb?`8oIb<{V{s4HP@#gO-?Hd6x+5KKx?AC@J<(Bb?L)LWF6*bzc;XIDM_9i<8M>(WNsn*upNK z433CK)Y$>!!Gp#8saJk}(H5oyul9E?YF8=#%toDqnYdmOYV4|CMlXexUx!?^RLdR2 z0VALLW@d3YeU3s4CAL%pDc=wAPps_+vcKj#V^#6ICr;o=T+CAhYoY+`TfBC<4R-eY zA7^AXSI0BiXOLD@Sqb0L@pu!5ZlvsrUv&GY4bhMpX}l!AI!DrP=_~#lwkpZ~IM9OF z@&0yTX1VWiZ6H`hi$Y`p29P>-w`h_Z24{o}jqA)|qZ4-?mFJ<}uAKHTiOtxv zQq5g7k*l%G|L?m31H00k`?(?@)u7`wO$l$xr=NU^T5>j&pto!dn%eAC=YLbwk$qWE zfVtBv6VY*i`%U5T{^=?0F6QNW_A$14I?=lg>YgGMmaIy(3YJk3?DR8GKM)re+BX=0 zXi}F$;`Av#(&2Mfl081F)Z>`vHeP2ma)?BycTF~d!cxN zYj4!?Ccyf)Ob{K8yh+!DFHe z%hqve_epV{Hz1y0?0@Iq9sm^P2uhl}|P;XGV0Hi5}9^Q4oAW-?|!5 zt3k7Elk;=P2t6LiK#B9AHmg% zM#6#}BRd3Iwu4l~chjWWJW&xy&e(jvlmibG)jwLHZF96Gq2RWcQ+HcZ7fox5iU=Y% zqK9J9a`5FpjJcBsn`PlgA{qTXC|l%}{_?G+0~Y+?9)WngIX!K0R)17fcTnD|rcpUn z+I%IRv*l#tq^CU>4L;O^8ew`AU(ZSLU{>nllmm3ofAO85=JNKe_JvI;OXfyzcXSi_ zCG88KHvUle;NLW|l~K7A$&r{{$lIA#Me~%YHGC;Hs^U_ZmnxrejLsF64gJOdC}};* zw6d})npemU-svHt+$zR0Zm(2%+N-obc43_gFz>re&NT0fo2HTMn@(h5!u$=XfX)GH zC2r-r*#;vkH_hY2w0KyRkbx0ds}{3Ug<@}-yP;CV|wf;uC z42Ss!vHpK{+AT=)Vb-5ASv2_ZOck2`@$ymv$Db33-K6iB$TS1Zt2S$W@8~o+5H65g ztLLnLe5>mukkI@RSQ&3dPwuh#>&Ve%qf7ng~zgHILM{_=!Wm`6!w<@moI`dl* z%NwlmQx}q>qiBlXKvi`xY6U|0RSe71e_5{D(TSia(cRgqlhPypc;jv3VegLp$MJQH zCtw$f*I%_@OUz0#@r$R;R&1URkb!f8-@9Dc*J|49P7;(Z)9IU-$ zH3IB|A8CF=0Eo?KvUfcU2H69&1#OnR!QFBWO~075%NlVGX8g%ktGzz9cIApa%)dOaM#n5N`>YXK(oP zuTp*9&HI0OXPiw1%>?}8B+l8y^9?=+V>2!{jrK29toiTse=*#6;ngX3nu@PROFK*- zW?{_aN|9KN_lNs9RL+XZqd41St2$XV(_)Y9BLDHVN*2>8&a=cg_kq=W3|Y68R-;8K z=R~|0IfNyDKv=cS8}zC?iJ(X+)WymQTon6Y9OH1Rsyf;1idz->F1waH#Sc@Pa{dhK zhdmhYWf#Z(ZXe&|h}_Nh3~ zME-WE@)%yeayB*n;GKf7ZxZbJk`0}TZNR>md;Zyw5u2FuYY;1Sgv^6woa~BfYQW>u zx%Hv;)eIU5h50v)x+j&LY=Y1K7@nmLJmtWHW=)4muvq$S*cJV0{e5lywVQ65RIK#h4c4#K)f+=p|6iluzfNq(ah$G2-w#=w z8{9L>Z@6+`=C&VlADveRv891P&Ox(e3YyYqVEOd`-O+u(`P@-{_}nTY^#Ph9)%CUH zwD$eIglnaFb3f`Nx)^MW48T4F3i~Y8s;M#I@0u_?+#8p9C{6K zLc$Y$Ty1fZ{X~A)Qeh5Dc602blv5dcZ#u=#dF7SS)N-;-eTHN@UBtA07G`#Ok_lep zEmDEPa3ja0Ua+^niKcor6_3Nz$YRTh4@F*Q0|X&fapJA=&|mk|P{jNH4L$G0;`iQ> z;fb_IJMmn~ZQMuHU!cj;$ijr6^MCc>2M_~dm9sg%RLHr1T@?d71`F)8vT4nZ|J;u&r`+n0jbvqb_9ZAhHni@DKf0ckC6T+@l> zJe7dgLCR4~FFJA}7bfRY8Owyl=hl5}RZQP=iG2=!-C$U=%>?>Piy5lLOz~t{LY)7u zP(1`m;Fzw}C}v5$MSd5}InHHTM)~Xim|1Er5T)%DT@`fG0=Y9_p9t-+6U5nH^D zSD|Lo10^@=(Kb|sb@}An9q(KSiaRB*EoOsw;z})q}6}_ zB0-WJp4|{(G#;+6;_&5p_*P233VQensoqfx(O#Y8Afw`~x@U9<_J9x(mmtR@`9}$=QvysvSBqmK_zmNf|$!D5FEG0hxGlCP;n9c8&T! zXH=BDY{7dlKVL}wS=M{_jcquBd3lNQ=|fJ-f6~ZpvaEjKK%;g+xzbjv5(vq`39>G_ z(BMMJIF^5pS)_QW{)#gnTY26}vOCK|A#EV0MrtDabeGYd&Vl;QW1BVwxcP9>h*G5x zbuIzv;HJokWyX5H{x9&JY@;`gjM@y(N~Ru2FcLU(k{&t^IJ5 znfe$6)d^G}+&wc34eizMy;ZHxSEIgTxj})nYEqgBlLQ=6T0i}_yvdFEq3lk@znd3D$V9Ce0Ftn^4eVcdw8OPvfo_Z3i22XK|IiRYw*V8h(GEd z8}wP9@cB61)CyoDMoMlC>m21V2&{0{n)5>vrag3CcKBq+PIiq|@QVfSB{>x^V{g z?Sqb2x*)UV_T&1GH{)Wvj*S_e3<~{PP|19FzOyTr!PJ8DNyvgXQu1}ZVE|RYzhF9I z8SM*&D<3$UZ%ZXO>f!*6Mqm5J~ufV78 z2wKGR1?S;vxh*bQcdS1aJ}m4%7hd@a4x!!#7PEwPJdBg@iyNcIa2~T{2iLjLsl}kS z$EJUb?pXgtfJ;feR8=^0JOHGf9#AyNH7Zl>MZ-47_$|nCrJN$B9Aiq>sF_-ghgOKQ z*1!J1)TT>%&}AJT{;#rFU|YzwH=V@hBW5EN`zg0^p6*~OH!+h$A8wa`$vnAxS)Wga zqUqqvR~cvtgrq?XJ}IjHCvG*V4E@Ng^`T3K8Y7%9Ht++@CoG<{owRQ(ts?cR z$cJ+lo-R_ZJJf^yMc!RsfK!XA$Y+KJ0u`Y0Pw>DBkV`FSkeYNs)!tJx>rum>L;E3l zmyLyXmJIMfpQ;!0csl+s+h7^qgU2<~9h_%4M=wU0^WF;8_uRwu+*myl$W)szipu+O zalXRbtTwR6`nD9q_eqizRjWVe{*QmdAsD(BlxKG)2kfWD}P?hrs3huZuIEW;lk&Ca|vy?&VZQa&sQnTCig2EB#=Z zQ04C=>FCGAR{?^Hi^FtUdZ-eDotk7cZ_eIE+ATX}I!Xh|%l~Pku+2&$QfpF*R*8cw zi=2O9seXj_SkBA;?FYs+ycz!aCNnsnEsiFv(_zk|d*5Ur(GxhJBv_^TzFlBi9Sl5K z;yClfr;9t$Z$nd+{Qm31)de9Mr6{nwB3CXfEK0B?@bT_KVB&yFj8&RKuHC0@}{ zo?x&$Wx}hul62&!i=98&9L^p2$9)mmFJ~%1@lJG5TGJGIwEfvuo7la0=OkcxnU<~l zvRVfk2GV_i>{9NK^`DD9f*DSQyqL*1_S@Bt$D{Gf9@7~l6Z4MOlmOA`AJ)hzj6RE1 zeNScxLhJgW7xGGMi@@MIf3_@S)|i{rO9I*AI)IW3ED73g(SUsh!UzQ29MNq^yXl&QkV}s^ z{Z6GXYhC+$Nr5NCx*GLrWH`1I|9TE%A>2cTd!^W;`mn5M72f)mqQiNDb38yirvu!2 zm|Y2`iM)C_g$MEFbdoTerB8%aymW^$ej<&YMP%wuUA{YQX^lY-IV;Kj!klv^NHYBi z1;&%u-~2hH@2%ew)^I+zel&@LX-bs&ag6Aqw9v2X0127F>M}2tQ+Jg^KSHuwpD#V4 zB;!BJl<^Dg@fEG*);F_P)0>IqojT*(Dbc%29Pf~jFK!&bbbXu%RW{~>b zt_G!>0Qey<4EICFL99^EQRiCcvY(Ta?XiCt^pG{tk5+X=hWlb(&? zbSwFo_z0;^z@b!KWBkif>N|~6S_?rl)F+c~H(SBnDBxwCx|P+^IR5{7pK#~I+q-rz zUSRO47-5K48Xq53ai&q^UglQG?^H{ZNv1CM8VKeW-lB1o3zULp5M!9s63^h1VxEcU zL=_G)DiOFs)I>^?-3a^3{q}>gCEjg=?8t9yW}Y@R*7;W-(BV`C74jj_@m&y$Z9{PQ zf(c01pRFO(2+V_(AdAmT1=nH5q1=%hTF>oX_1mB4grUJP%yx6j2J=;Tso|6P)~V@m zVrIqlTreH!%vFA)jFpCZ3u{x`ljfcg_u>we3hJg3r=$NnV^^UU8TKNcjcqdA=tX|G zTQxKxdM6V_V8Pu#W(UaF7m7yQ->qYzK0XQ_OVZ%529li>y-S{{FNW+4INP4R+y9?F zhA3Zfahr;$a#q6i$73EE#U0-~9atrV8<8eJ;hb#~Cwt2!#Fo zrivpo%QfUulIuM(0~%Dg{LC~8IJ~9PY)%z=n{PpK^nh>B8lrz}_|s&VcI3CuVQizq zsr0bspMx9mUj+?AIF%)HfTMz0=Yi-~L1K3%U+?|m>3WuWaT6vC>4|m-9T=O{C(T zwsto9-hu~qoM7K6|6Zo;G(OCG=RIxqzY+x9M*rF$W;&cN-^@eyTy(#lMPsx_pD%={ zTo|7|38o(0`xAJ&gZ)rqd3=F6baBAx8MO=7*Zk4N%0q9V*32>X1(u6Mg;Fpq(&nL61BryWBHjI5fJm%a3C-6AZ0T)+s z?typnmSThkz3)tH7SgPAT%kc(H*W=L<9bar5ZM_p1qiWrr!C|cEN~V?>|^0tbt3An zN^e6ii={*qwsLmt33UfXh6aR*J#dn#cEUlLTg*%HwKzfn@}i(S{Y?hsNY}ww6%V7$1 zA+M0t)8-FYf*@tnjv^E`3}7_2Yu1UJyRxAbI_bltjBn0y#Z6jJp3~RizAELHQMT+) zXKg*kIXGLC4^Eyz#rh04rpHe6A>INP{|;D&>%&wv0CWWHxY4l@!j8E3m3z=Lm`SAt zjjjfW_*Hus(jpQ$kpVMq)ut`wB;G#!Qe9&+O2)6#6#lEhgU?Mv@Ve47TAR}V{}YA4 z3#rp#M%^Q z@9VO^oU^)*^D`aj@S|D&Db#YH)R9C<@JGpu`sJ1UvU#+N-RMvHldS9D2vGm`|Hhu4Y5!_j|K{c)Q-NRNB;wP+6qB{e)oikfH#rH52Dz_d zpKTb#A(Q|=tH-d=3f{leO_i>7pfPGb%J%c!KMH8s0AFeK>qaMK?_KJ0&x4r40qRw3 z)c?0*%(sL}4?fxGk)y{i)M6I)1nb|)I$&VVX?Ffg5uoPIh`x$$Wg}m59El<4CBy#8 za86gLY*$+GL7yrl$QcvvQU3x>gMOb&h9vQemr-Z_UrJPN)5*Vh_WesS;T6H)^NZNt z3Z7T@7LCyDt<%974l+mZm;qv;R%8|$ApTFkO7wq~`11MQxW<4i?9?v+SGGjIisihz ze{Y0RnwXe+VaPt}9Ihs-zd|0f&n)*e@y}2XAH3Gt-h9#mluMk{?;s=12AOFeS#dP} zl>7N++*>f}pZ>sV_W{aTgAuB=ACjm4zPLkyyF>;1U#D4=XT`goA()<BA1~O{9I8G+?d)t>OB(ao)tSU~<;Qp)hKw+H^ za+s683&m)tch`ZVa51qT>FEs0QuOx^w<@BTQmB+$v-iEd;cj+TzfcbM;@7n+7O`~` z-hnvEl{0;L*jGm37827w7EAWT2=yDQ%6CWgCIfk=YetZ)|Hr@K+R!LfoEE`YO4;)~y3F_=YDTZ@_@=bw%1#wq}< zyfL%t-2N|bzaONDE>q44|2=?3YBIq`EubmLsI;q%Jy%`pBsOP%ALy<7Ddme&auz#@ zv6*0@Tinnk3z<8pNK#inPy#pYd(r<#+IPoey}$oQl#-A_Drt%+iHPKm5Hc%UQAsEy zQRb~d8D*EuBBQL7tc;dQ%a*O7jEqVY;ro2u#yOvJs`L0ge&>%KlH-1l>vfIi^}L>! zV?o6qD@MNmdidTP7%G#a%@dPGZoMHMG*LOZ@f_qN8*a?_8y#vU ztn$U^Nx&H*@HP_K2*WFD7ZaP7QUI3k7<2a>M z%^@^k!Xbi>+dnBuQk)}Tm5`x3yYmv*ah8p)^h|W+{y#pLoxa`m9f)9@9Q^7=h0z$h zWvr_K(hR@y?0QzsZ8;swwE0H?03E5+Qc^HbO?5!u@-fCJHQAds{7qEze-a1`_t6&a zNV9iNMC_e0IOdGJ*M%p-jyGQ~jDRYT~BY<#RX@9iGIj3-}NP$r6`30L;l1$d0E#lsGnd;|Y_*zEKGDfisP8ZZ5j zelluvy>52}T7EQ4l}xe>4)p8^9wu2-xUB91sL>G$Rvq*WgL7C^ejmT^sp6BLTFQWA zTa9{Xf>T2YV@d`>4Ui-9XePl42uZE>C>DobSfLuabtbL3@)8Qb+vvXT%>&A1-59j-2}GZ zYIMk{8|>)|V8)tN)syDRE)@;B0S_Hn!Yzua|J*83+x;v6mLKl z`cDM>CMhkG&wuiZbVdT~PcAF?m;VjqAZVD5hwB4`m!&(z`_Y|Vf8$BijYa^VWS`Tg zB$8>PEWDM5>b~Wqj;1@9$Zv_-1Q;i+Mvv#|8nF}A>!-B_ldaaj%yA-@p)GU!Q#H0K zgMygDl8~C>G=vAgNTTWZzG@lQ-uHlDtM?3IlwF39$`pIvLOI%sh-KXb_aD;$roYPMxWi2&&hVIPeY!1GPd8nHhA+XVELzZ)v zNZ{6fO|o;o-V#-Zw0SY%ngg3GxR;A5(F=sM2UXLf=ZSLRL$W`6!*Lg`$s%|1yIiEe#B!FzVY>R z`9xu_sYp*co}X&hGiL&rluC;n!SMZA%xp<^qUBVFN!=fVounfn2|CSJ9`gt4q+?7} z^6swL6&Q`MlK;Llw#gw#t-W{AkQK$T)br?eO0`i0*y(5{X1~JpLw8|)( zMAru%Hc;lfBza_Se+r`IV~Cv9$jU%^p47^_JGVs=^{QgBEbNv$c%koJxsMzroZp_$ z_P<9<*jAB|W>XozNod<2t0WtrP0V;`j?fd~|Gt9MB)Kl}y+p2JuI(O7HTS2?wbnqL zgT5peAl_rUv&lFnX=-mAa)2i%UW^ca{#Xh_BNhA^uE$l0lgY#ae8YL;#1kvgjmeSg zTHrlQh;gef;n{z|0_Vfk*FZx(a*vU#a%RN+&xCaJax*a;#7p6qn}WkM)Zf zx$`V;`OLz&!xNvPLge;?H6GVZ{IDVCwk2P%E%Lp>PJoGM|M?PaH4IgJ&5hq2Nv5}m zm+x_R$O=4e5S6YOxJX~kb$)Lr?XeMY+)u!xM%sIHl-&C3I9-U_0 zYVCk6*(Zgy=g;I6TExvD$T^qIdr{DB<%IVKcrPE|9qruc9u&Tk|Ag1wiW9FK)2ikj z?ynuHjds0!w`oXvXkjp9qEroeSh|_*OL+_i?AZLb)ziZ)_p4LkcnwJ9~C^G}OuLU~5k> zu(ZY?OCKVr75i~0s++lWXus%pe=vkidDG8VuNiu3`~#R6uHrkChIy6~mzu|XJ2O-H z@Zl8H6irLcOeBcEVYPeDB`$y(a+&Pu{mHu>nWY$&wiSM)=ren$M{CI0{&}rZG zyLUG!Z{Kb&nG)sC%gfuH9-St&aMN*3w;#{;^lQ{`*%ErHm&{EWX=y{m2={F|I-zML z`+5KH?D0~#7?`s1s0zA&{nP;Y&d1_i8LLcrMC3UZ+Rg_IE6yvM8NGfg~NTf>;FEM1hv zrY_wJ8X{!!8@rz7A2-#~3it^Luh5ex>B-oknz^^HZ!q$Mr)buHc%;J3Gx7ib(lAYK z<3%W~e)4VdAuuwEO|gdpp|XO)qx351%r=J-<}0uMqBjl~L`0b;-k6A`$Mx%i@A~@h zy(me@>NEgUeIy6$k*!mI9yp9_F9X1&*3h~M%NsNK#~06PPH+MKX|+^GMtI(ui)E8f ziOPYcd!a~4HAXr< z-Q>%-Fyjyc(UbPB_V)I`$jGj~g*^TQ_cwzgyB%oJ7KaaqBqs}PL`K|-<=dj0Z3eHq z!nQ@-M_iIpQ#V9@fmCDErXTNv3Ix4QO#a%xOz3Z4DK4R8yUsms**`(wwHj~~x|;5Jpm zrbg3QQPFd&qN3E@)U*evfB1N~Wu5xk(rbut-_>YojyZE6kRaCrxevKYo_zgY7zdvmcQ^vabdcUkMmDSZH*dG!x^LpngU+knfcD<+Q+#dJg zV;e_*e!T`8mXniv4-r<0kvz}W;M=T3GS%DE!Sdn=1%2Z!&u*Knnmr-g)sT;(^n zbVdT;S6bDw!Sp`EIX}Ne0m+$}RhN`BMrScIcaB=_GVf5F_}B*aQcY(Bt0UUZ&E}~E zNBYFRq4k~TvNUh~v7evJWrN58SJY(*O*71T*(W+Ygu;-!xkAJRzU6c6i=Zy_-3m5g z*fCz7(5Szlk*{oI6v3acU+B+wxR?odNGG~u?C|3@J(g?k+O-0EWy@=8Eh3sy_lWO| zx_Hq%_(X5ZmM~fO0(*P=CrB&(Mw8VvoNG)1rBhIbjXr#dQ2+yNZEeq4LDA7YBGjFl zntU%_ym)MMBl8tVNDnh|^YZ+TDJm-RcpT@Ma8M=+bi*z>yLVgjST4@ywTWy>WnI?s z^iv&~peh03)3hWpI{$XswBF2o6dhmuY+N4fdp}ja|I~E+>JaGq-Wa`=@_3~g-=FU> zn%v`z^+A*O*u+sb7v=l%QrVVh2TIa^Z&$Afm$!s^sTgC~0oRPF6=YXyzWU}iqr;Uu+W z;*>?rDb>u2a!b9^-_*3*>p_S7xk1l`!$u$5z4}ozXyrgZ$&W{D6NIitT^~BRftdaT z^6wq??p{6|0boQTAyxJ4f{=tk&iA)Ik@LMbPxz1tH#BJqw11!z#9B&Zyl6-qoQqr=w5SZEqKJJC~9XdKIc_`%-RS9b0D*=rL_VxAc z8$6h8*?aEO0S;H3eC=Jkjy=!ni~EkjTyA#>qik2uG!-wo#PuUdoc-fYby#Gi%-dtF zt*u`QM~4bybCdcW4iv-;6_w^i`KriIc!o^^G10?)Usd@|*9}!4t5B183QGQgpEVdI zt2_SS)wV8h7lM%LE-)4q74`k*8}AAfF2m#=eNtMQ#G(&qou(Z0n>4zK-}=9S(u$eQ zI;(#~OJ>|8^o%I-pQer;jB#yI{*<~#L!|v$)zV+Q{bHxEnWAp)sEJ z1dP5lpFe+=FD~r?{yDl~WcSoYC(*=_vg(28>28a@5Aehn0x|L{z%u5$an~TTAuA!F zD@NIDwBsTYHI^TDJg-5YRQB!V7xcrab+c>sXedN(cFjHQ<>hR-t$54$C5O*s*qfMd zvl{Dt_-zV)#DCrcW*2V`C;&Y&lk|=lL|GC9=-LjxHvcS77{``3`{+NF5mXF zLimqX^eE04?mNmpVfYi~Hf|g(cc}%YUq?qrpIFeo(?n828AHWMC%v7KXf(SE<|Ul# zt8|dbca4irxW0I^%j>o;n81Dp0*NI<$J)G4qB#Ix@6IW&rVwFP>*qgUr^Z<8`mwrv z!GZ^w`pigo^nb1XpJ(Db1^ob4|1kOq|G~WqE0feMY-|Q*dPik%MwgWRadmHS z)cw>YUl*fYtEl%AUAz!P7w&A_mwMEq zX!XjK#gaF77WNO%@A_#pSx(I>ePuRp-n^?eIqh9l9PSIVf`jLlWqsSKq$J(_=^pQo zA3wBr?%eO27`=!~*g))UTW&m(@3=xVU7XL)$dfj#gV3lMz?JyMZ_b@HX^sx71}DA9 zKktu^N)={2-g&a>PNZ#Km4nc#&erKln%1j*NTqdXWz3Rxv|7BQmh!T*uY22pBr2|; zplO-hn>TM1)0Ictk|L!FJyRBCLXT-X_BC2AYaz(%GpISgYYWtJZEk+k|Hiw<-+fPM zevj3jDNVK0+4|-V0wM5i+o7w=Pc$XU`HAJnC{7%1=b1mriQ$#9kN>f{vPrl8;W>_L zw{KU5X{!ynAPK&jP?%Q^nbllV4KrD!xY#f+JZJv=_7eX-gC_F)bbV;}JZL|irlJcj_08EyTB1S3v_c~{Mj1VYLm`4XgMg?E}}#mrb8IdXuHb-yL<)UQ_|XcT9tQCf@3@m@Ug$HnJY# zQHjP5owEuZNzG96Y-7DSaHjT~6>6FquH(Rkl~0_=srZT>g8|8j6NbW%&AMZox0*Y* z8Qg;fcIT#5gMGQ_t>&Udi;DBh5&Tn4omg@&%wMl4CnsklaHe4VD6vuLPife&-qv(p zT#F7fpVMIO9TN8mOXKPXup0J5-*DJfMOD=dJ(<~#E#t8%yuadANm{|+bu7w!@HoZ_;zkPuHh7e$-w!ZWG6~Vs75lLXy9H{rZYG0<}0z7m;@^sUq%j4kzb_ zM}kTcx2IKESz1Q$p0>@a*crb_9HOdwY$6&`-LZGg*9~2)V6uNt@;I;*>=7!ueW7We z>lVl1>-_gB#ve1E2m^j=+|{dc2&M}Q=#+*!9vm9%z3euvYC7-Ko6rtAk#XYdf!NzP ziBHjpR1*4%8aJ3g42p|cu62Iob5$+d)`eYR{y)Bcd{-&{i|MING;}7!tmYB7byN!(x zyQEg8I{}t?pwgGy+iUAJ{Im8A1nUEEQXZ~)Q?9x;gvbg!v_qn&@B=)9#?e{>*&5%< z{_aLAhWc+e^oM#zM{ItSU2uD^LH}VgM*iJiC*CMquLtgIG2eQ|@rz&xrFwdaJx@(Y z?NshMpf>e>5WfcR&EEcghuWN@31v#B9wDJ9R<0WiaY)AhInaH!t3FE=(AG1q&f!bJ z!TT8+7e)Gad}%S72;uSc*REYF=d$eSjIl9*xVk!}u(Qq*jE^)US@Omb8-6cwEs5V5VioSqOxY1B>_?I^`X}m&0K*8^a zE44H6we0iQ%|7Gv=ZNiaxV#((45xkibYXr6-tY&fJeZ zd5U39C3mNlfAh$Fb2;jMfknm2clE1vlKlzW{dEE8%q0B{a~lOz5=b3!R{@JI< z!>7nFJQbNZ;>YQEW>;6#V&AcXd|T=rOxW@8->gtvi+h!MfONdfYn|At1e^H>Ei8`M z#EcqUW8K?k(Jde#5Ye_-PpUcGGDGU2p1{`6)PU&T_u&eNV^tj8ud z9<9F;w8sy)^q|{#9b43^Zb$c*6&&a~&7m%$?zR{+7_E(Ze?0R4LRlFSsZrJ`9(!c2 zV3&1BP+MQ$;wSRn zb-X9-D}gThnK+A_shghqgJcYl{n8z5;yVhaO9?t2DB|UyRVM!fb1;0^mRh{RsbmOV zSn~8CFr(~HBVE?+kdNm%B#Xu33$?yZX4jK0>hIR&!8ez$f%kNHN#K~NrTb8)LD{Rh zyWCE^GMu=d^L-i!uBtT^wK7Pwx^r@zLq_V`m~%U4+&E>3L}b6Yx%9#j2x0(WSURXP zbsX_-*8veUJ7k_m>mSNca>b z3sO>E^wj}ispAg!{G&aYXy9`C8yt1~Xg@|NW%^W~rEz}Y#<#XIJo`1&)Q)xBRznhV z&kR4eCg{Yclc}kxBQef|oq_=03XQEmEH-@xy)6aVqv%cSCbZHgSm3jk42gR+2%;4lh$VYZQ15TIS;q1J zJ9%Yie=zjT{6mJ0%a&y0Yj`Pqa{N9+IkENjVqoB$3UMTJJRS}*C!{uQYAEl#?ezI{ z{nUNa#nTh692=H+lQ@ryYr&Q89>OpMOrWiFvJ++*bEPJ8N}B_mRGiJs%tjGzI^Xp< z3^?ZJ=GHOY0eAax{HX?T+rMC%CP$V|_ZJA}xMw7xhT#mFGcm6fImhr!N-tAie?QNg z`no!UGFztu2R@wjsTjdlDm0@Zo$49aL+n&)Ctm6ePO99-qC6 z6LsOQEtiU#mDko#Zp+w3zt*K_98FG4^gn-o_S7w>I(XuaRf4-B6d4&=EYNlC+`03) zUtMJhJT`T3ReWWT)wkxVmQXa7Abhg;(UWncoMOV1&0$&dDokHrzj*2;u^I-{BvK$5 zm~UTekZpSjUEiVX{0ztVr{61RD7g}Hwbq&0-W$cRaLhDB)eYHwQvE$8Qd_vgbyrJ_F&xnMHE zmy3Z5_V)4ds=Ug-|3hml<5s`9Zwg30()IJ$wP_CZWHi~+G{wbQ?qW6AP5eOhwU zO&xh;Pc}WWpN-``cN<+eGx&T4Jp&kVAHI5zq$`=1}yNp-aGOAiY$k2O>I(iz|j zm+~BX`QpW~f?|xSF zdRIDOO~1a*q9|lvT{%6;<1N56W@IcrQEwZ{%lAGHxqMj=h4$=^RVIhFZaw|L%|1O8 z)@RjqQ5rBR4M&a0-P!ywhCk=RBI)X+5&N;bEZRlKa>uI3H9MX^bKp$f33>k;xeo?p zUB0J7;c6qnwJX#KbEg$Crnlj=@1Ls@HhWy+DQi`Iwy_5=GVkEQgZ^K>d>PSn-XqS# zcUi{y4jb>6o{{fX4)?o80tXuJA`JofX%<-z$Rx@w>c7hXK2RI|hJMCS7xzJ{woCAExnX_iQsU-o2P59HK8 zZ!?qpSSnS-L681|wx*`ZtZP>shGk+|cd=UzobE1Nx8`oI+zIf|)TY-|G&CQ7$I`R? zc_Pw(Y2x|b<@VeSoAH}WDLo0VF5G(4v$0C4Xb1hVW5*N|^AXzL`12S5!bk<+Dg8;+ zt7Q&cxY1Dib4w>@X9f4o2cNjcdF`HdUg1gOeEmW4B>Fkqy1O?t&6&f+W&ZO>rHYD* zuf+6r`JFD)j>WYSP<*)O8F~R`QbnXlH@tJ`h-G0z8g=zV*Y?+!cv1mpCH>R#&M{Y0 z^ceCzEZRCcA9f}ht5#@g9XJpVcV{Ph>%xE_Tl}&HUZ%X3LLPFS0N|BZR=(fKe!3xY z?^O=iiOFg@*9B)ci(IprUY2zlgC~jrMXXn!q8NW7WNLzsZh!V{tcRltTcXc&>6qX< zjC+p193Jf}CJ{Imx;smP$A}V?7-p<-e+Gsb5amZn+Ob!!`UZ*4$drCG?{*}DErQ2w zk>Q*xHcq8p`ywoO>}tIBmY0_wUsXI`g!T-#2*$AP?2y+!RgYCpE0!!-vQ77}pP3BW z%y!tCb(u5#Z#@+rpDQZAzN+zy^q?ZB@v_xZ*vG7rp@3p&7#K#?|X?sOb9kOs= zO=%X~Lc`Rlj0T2=3OzH-<+}%uA}USaO8ed6Gf7hxxsqq{=9McIp$KEKW8Uc6AyBk# z5oh;+6B_8We#Y>gRrCIQAoNslAg9? z(_N}o9zQA5Ut6`SL%G|Fb#Z8Xd_4Qws+OzMxB-HD(4Um}8yBE|-fNWSx3jWX=`L+L zk%4Qk=PK4%J&KOhen`)218p(5huOoWSeJ7v`uaYDKRz_N)uik2rCUpS%(3jA+t$$` zs;-loloUYPKI_>n9k=c8oPE0faQ^UYuIAUT5B|JsVQtM@uDdw+DIB=uv_&+pdeYFO zx4jE>c3@Q08dQ=ffp{BySktQz_B2Sl;L)Q;@gZbm;}=M^h!$OsU-;(>gR+}-R*AaS zIQ3=o+){rF?E5&2 zmV5F^G7h?Z=sXp8{&G}PQ*EtsVk3JnSD`y_nvGah`W_tv(a2Wxq(jI^%B&Ua6opvOJzq(2JoRp4 zu(Y&%k3A&Ao#lLa)9S=ucW-|!)<)4Q1?e#Bg7*aj@^H;3#HU)hbc=!><8s<@iU};^Rw5LbrO)4;2$mjY&?` zc%k*TcuJg0C^4cO;aHQgqoT-P`ug=M1a=g(Z*BQl?sN)t!Bl1smD70y;29ltKQ2${ zxdB(cM85Nt5X&~pCy}&lyJfKlV7+(d_5fWg7~j8tf7bJwg~zgV&}O0Ebb+Wno8H+?iOWw&#zl-f-QJ{zuAA0!a3n9{=pcHk}18G6{JP`4^ zsitq|c9}&%p47E?R6}yLZbuIu)Yf23O-yWK)htG$4Yi$5UiZAo>6c|@vmE$3?fCJ* zt5=um;}Cvo%&W0~k7YYb-G!rWtglLJ|L2kX`}F~1`M756n)seDf`j12a_#-ckE%vS zM*hs{cPS)RG3Bw{6+alG-Lp<+g2u%%RvzbiRr2Rc__+qCWsf0+ZtRI2-xCuXD-VM93S@x8LFmyuh2kRq(m2E@a;gia zRX@VXw2C@)`s{5m*M|=uZnL&d{Two8$PrVnIDCvquImKn!oL|D-uTvNl24-_Fk{Ay zn;l;g|AS&lk9!qPR}MZ)du3F920>c!^PF1{yg3ZJEC-u2iu>|9HrrLW>?Q1rT$bA+ zQV0kNN*%cK{P}kEBLe}l74U}N7^k_#FSHQnp{lE?%^RM-0A=y;nR*jO>=e*w#az&O z<8~-c+A!2V_FG^+bw=peC;r<~#|o_23%422kdH2vT$dq@BS*oN5Soavefv`QIE}514)Xrwb2>c9Z-sx zFpCdsjyNb15qTqxmMOlbg=f`An4LChcb>C8Fx{<7qI{thFW%PI;bnJG8ZZ zqpzHIe$sgVMA}MuQ!Abm9ZT+&8Kz@lh?ickL2?`$a4{DS_2||Nh<< zO_3(1WVkg?CVK}56?6$tdwNQJ3)9xHv9Ypx7w5p-tO`zD7&-fWM=$F;gIdyxmVajN zOo2tet|G<{WRW+FJtf z>3sMk(0%jfO;JEV=X`x{ub$VbIK_jH3vg*oW#u*-o3zgqtf@H)oOkIHUF)9KcKO|q zBM2fyUpb-yfa$mkuNRyfuK<4;J8&W2QR3w7c^x))?AmJ>33gLa_wDraHwHU*1|xN= z|8_5jo^CBN(*aSD2YD-ESZ6KT?4l=Dx=|an>!65;g+Qq6ta#UuYK4AR%$++r;Dm_8 z-9=}y1l{|onTI;QP^nR`3rrtOs|dj29Gj=u7u@Ed&ppxB`<=_Gf&a;~E}l2`*1sFY zpbIIsFgd|uc8%EU%_qL>FWcd1!NhPGkBm~!-Z6g_aSqEGYRk&jE!~b7#@;`Rg@us~ zx5hM+#9Xw}KKf_2wUez;A-%o5F?#$yk~%F|)EtBb6UD);3!1-slD$Cwf5v0^S|s2f z++xjPx5UFQWG1$vtb9&PT-@*VMj07noMuW(`8olapUZJXGf+I}l}Zu%5itLmB>R)GLyO($v^(z*aB24c=He0B`07-UhUud*Kf zucWE>BEpON)Aeh|!pm$Lv_tyB-QC@$&K(w)b8>P5{r#!@^mM{FDKS}IZ>KQlw$Sq^Kb@9D6Pr7!_rU`(qg0X!x{xxt! zqH}(n^SR3JUgOw95)#0Z2&`8uqrJ_0YcxR@LyTRvX2;Yn9=S5AG>ZoXI391C^j6oY zjD0Edd29(~_^b#p+2U7k($htzkZg|1QR-z6$}Zs-&bI25&X3g0lNWsEpm*zlpAj@D z;=gsuWS~v65%UH@d7Eb{{Vo>MLNgODUgW)77n2!?{qr#~h@IYPWF&+^hGnTMrKQ6; zPMtC-?7GcxzssSnt3}@mH4kdo^VuLZ}@&Z;4L=$K~77{)v2qDyDI|!#59zC*itSdqD;=lOge~~8YE=IA^ z)Pw^a=k7hoBt(ByoLdzXPS}U#FP-zYjD7wrk9{~XN0sz;#Q*~MUYmSR;}+-q`2ye` zzVCCmVJ&iO8QWI+sq$SsJA16a6%M?8`!=6}fa(#27SvsVK-ZOb?Fwl(!`iS*qyvyT zOL@=O%lqxCy$haTvQ+uQTV_+Pn|n=?xkwz^9_`MX=HvbQ*-&4ssAP}P+gH-)|;p43y>e9Oqpr#=;-6A z4$_2Y${K*Lc6N5l5wEA{Qk0n_`Ee&3`JEW=P(YymygsjI>-%#Y{N9_7ZzZ+m&m{!2 zrf6%t=RK~Sr!PFHFDfoxwb)EFA)2ACuI@cV4ub)&7u`Nd#+bgm57HP+l8XNoCkc>c z4_#KZo7OmJUk$6b9+uh9NV^Hnd1#e~ynVYDB(ud1jAdnIffq0G13u?8USYPZca*$f zeg+=`Uwpo0s38|6YNnDd4n>k(JhW=DM;eEq-#PR>@?7-o55HHq)RO{P}1z zck;NW|IK?X(k3Zcrtw@Fp@wZcJyJp-Sz@08`|Mw!WQL2dfNMa|sB-iloX*@9E^+_< zeJZIMT~@Y~D0jIktXR2H1uP2mrUsMMSAHohA`LKtz^O6+c*|9|3U4oJ`SRu83pEA* zkskl^uSHv_w$fSS6bZLEZJ#~`W2)?|+oA@N8=|&%yY6ej-g_5b?^U?yRdEI~aRKjp z|G|S4Es0b15=Ixidm+&r{PX8e z6QfO5{{gtofwS0>5g;^`IE$jo^dOD_66HhHR7}5g*|HTVZ};xqo1DXUUD1RaKik0L zFt?Pi1CSh|^!@L(FP}bjxXY}!p1vDwhkPh+ewR;dbXAfz{(%LfCAf}5x$nP!KYjwF z;#MfD-r|^H^(zDV>oKLr;MSR~c~;O$dxnd|a)X0|&qk$(g@>;;H8s7LNzpk)CFReC z^zfn2F*aL+%)a1W70^tC)-Md;{Uxq*1@xY-LP>a8K zPZ#O+>vsS(qLQ=aNt$UIz+|9r@bv&wc(Vpp?G_LfukzAT6TzEyttwD|H9VC1@XMbQ z(&VKrM%j&mH?F8pnzsj)bgupD<+OIsS+!;j?*@}g7cZLMO*%zl+$_#guSGuI-VrC4 zRCdn|5|(P0If?<2b0gjBtk7o;Lj0}2e^TK;Fdi@5V9RSI9a;wzgfQ@K0Jss{jZQDp zYDGSj2nbO55+LlDA`rl|M9^B-c2&Da^K`lS6+BP(UgoOV*;N$|)V{yI`^I4_ zs~}9U&EA+3xud?z%{<)=Nd}zXwxdVCrY{n&Oto?6UVp&%-Mu#UK6*btKRf8yKgC9i zL%G#pK^qY9zP{N)B=h;pSpNAHUpAcM^cuGe9`aKjQ`i8ZhoY@qmVWMzz>fHBu#qV{ zKRC_c*=WojNx^^4bDYCbe&820_Y)|OBy1I%j z@&_~1&Ukv3V7>reW~IOCVr@ed;zvY>Kxy{vu}JK|q62@36mTc7_ta&og1*ELgr<1l z>({TX5LXPq=~7Jz+UvRuzFy+x^ErC-Jew-BjxXG3w-xZRz~B&-n1$pVj5JDLaZobo zA1;V08NrJyo7)1Ul#GWdfH%{{{IKNDmiWJ=k;lr?ii%}49-=dA@>)0prZb(oH*Q;{ z<|sm7Pd~O{t;-u`Qa3++{(Musi*XOMk5+!e-p=M`?DNRL0k|O)AmvJ`V6WHP=h@Ob zc{}Ur=@nHepsn4qfNt1V5ACJ9Pff8!U^ahM*67ZiJIRD0s)~)DG^P*D_=)9!fskH& zV*h3^)E~l*hKPNirazzoEWfvslX58CG!HHFp&1X;TsoE$7lVT@g~o0H1Lq+{;MhYc zbTXGCue@q1#6mjw6_Tz^$xs(INQD;LJ45Jc1%L{0&f7cVp_D+mBi^d3`HSt<^Y|ES z8uMfA7@m`n51fi&R$0qzV~u?YOIlK?o^|34*3~e;{U9=vv7$WbO*Q|OlRJ`}yqSLH z*rjfuld-s!oSf{g54Q5vdk!pahS!Am6c}MDeobrx(Ivt_P`;^Z&5mtpxgCOKB5IbF z*9j~ruYNqMBsZzT8JC)G{_M%UC8bqWE1>he&h31M#S8F1((h1IRek2pn|E&WZPE1h zkN4j2a^LRvPHN(!$E1A#=9cYVClS+w?ho%SfoS)UoQ0rO6mvTjZa{$`8Rgjy35kP! zVd7SypEZTXI2m*dC-=nYZk0Rf9+v#8b6cc=>ltQvb$cv*7RKf|x_1m;(W))ukRpVv z%ogy&_Ee|sv8i;yddw$Sh-i~ED6pZIobsk9O|2HDw)U3@=T}Yj4kLDoLQbzpz#mzA zkr~~vV?KDGBOLY9XBV}1tvPDvarP%96vR(rZ%^xArQSbTJ zwBoO9=K`4#Tg88B?2Yxh)AM|I@#KkrX{qM3n{CQp(R@&Bgm6tL8Q8G1ifJh#{XM;* zE#d&gWNjAk@SGP=Y4!{V4_}~nMw^A6DSNr5zP&j(h&H>ZLx$6LIzp^ceGvOuQbIl{+y#yPmTT+U+Hb zTt;l0eDi=t zfOqYVj-GK+KBk~xH>a?{a%hK%8<&#Q2fG1+A9Jc^H|`6b_2QTE6Gv1D6f#-=Au@EgfifFKoBG0PbFG zy6Gu0pZ<;qz`J@0_0QM521mw`-M5?eQ~eyJl%Q#|#g9v-uUNkPtY?ut=I3U&lGujT zFl&o*iNwnjlx#fqR{OUU%!8pC+8nqQPuZ~}2-vu8U!3`^c>b);Q@hr!TUTwww`-Zn zI$BZntn?N2miem>S2%pSZp`@RE-Ziz0fRDgOoXiB^_wJX({Kxg8A?Qfw zlR9y|)GO2KfqJTOMUPQ5woJdZ_tDH8;1+(zEc`Rl(`{diUoS)4zLuK$vh6EO?kQPG zX}?nFAYoG|eSBQi&kh3ZI{Iz|?06qcUaWUp^SHRUZu*&!rQpygUFr8|jY~*Sb#SF~~@CZ*GQlm6`bGWd^4fzF~`*o~F2LCf! zB_+pZL+WMQJU@x(YqT^PyKb)>X5sEo&OIP}X{sk$z#HU-Tob0J?J3;N3BTRZi{&sS zcTapp!toj@toGZtZ?p5+Bo$GtNHEa9WJWt!6+@^P3w_-^aN(;;-_{~&ddNL$YiTV3 z%}iZQ=%d(PW9XL5M3-ZdM5+OLtz^b{;Ni{(=ePW=t{yk+f4!2H({LF4 z{%y4GqKPaW%Q36;ba1TgKl2=V_3G6{3>?Nh%IUAOG6Uzcco6OWtq(Rpb@1)F&PL31 zko`4cawc`wx$P@|blJEsxV=*7xhu|icm0uTGK^w+H*8*%#^mW&G|NN6WFAX(IUB{q zp595@SxwC^_~J$BMV2+w2k{7&uUmJ-KIo`8{V4nEJBP!C^wKGP>x1-%5JH5ZNFH93 z4_6g=X~rM2Q8=B2u&IxnV+}|Xe~P1H7W*NL9InfR*N`~b1t+-Wa7}3`-=4wpi~BJm zUo3U3(MgU7`|-hMGBB7$&RpWf4KkU11kX5q`gDwg>5*=r4vw$05 z=9w%kA<%MSx6K+je7{3!3F&@$^?5q)xZml`^k@0iLBPc9rwzm8MDH(S&=mSugqO`cGO4rz zk4cJ-#j;a52mG9PE7G|>*@cRKOP0ee#$7r(B??@|B%Ulfk`GQ*O)K^?1^W8VGR#ij zHi?iXQe!2~vDtpyyagO{xvtdkBWDH}`ab@|n4178xZ9W47#;OXHpnb-W}L-y0u6~T zXV$vh`)=r}dUo?cac#q!d(RLpNJTD?)#_KS{6{66evX3H^y~d8LVx2udwAgF<}4n2 zsoyV9V@;g*?~h|YRFmdFmMQ15?;a&356|%)6z&8KR_2dfjs-qvNM(1GPL+rL0bb3= zCQ6YjojH9sOe_Q<2?P9ZR2UBNwWue`fb;?50M zF)#q;x;;$vn)^%WUMZ`q^WO1X|58%E$#uZ^-4HU(++EvgovPow111L2WsYey;H3Rj zi#K&zJ*q*%pXn0?Vd_+ulN~533`Rg`x^w62@`-3tsnP>e$Le@GF*PxRcHYLJbb#iqM|}+qmR|aEa;WExVVg-qq$j7wQKDCS!I7}ViU&B zGWUITz_|~o+59S(`s;f~38FBc<^%3k`bBa7%q z`6)$_d31CGWOj#G?$uGxh2kuk<_8X(Kdzk_yYBmD`jCMD#01`7j_@$Yx>fzC(PNxENq*6|F& z5J4@g_0Fw>4U za!o+xs0tqBvRQr%{d}#6ct-TZ#Uiyw2OcAD6hyD%tC{lS=ii{J`^NqhVf z3`}?OJc?H^WfKfrO>&KV(N>DPdly12==y_&s_Bu2j2;1uo&=4Sc08ZPh}9};%Vss9 z=O^`z$X`I^DJkul)PVxfcw#*>t!ic)Dj}v53C&Qb8Z5ApE{$i^104P%(_!U*z%7Jt z+u5^ZHLcFEl`j(FmbATuNr2^qfN{xjAE+Jc}G@MHQ2 zS|q{{EC~bwdpD+&*Mbl@Y%{COeFs?NbXu|szw644MJ+vDV1~yA&X3j24RdYh9=hP` zD|WIAEne%FMd-7OfC4K$z(60xRoZNh8lm`H4wCDrXev8W52g2?vZOr}7rq#} z0iaPTy1KffhjMYbF1kpJh9P+&q>37apHq0%3bp*ha zeCmfj2Z=2?&u`E-V+z0vW)-|cJpgKb@}TJC8%#a*M^+LZ_6mH0PMxqNEl~DeqBuL} zq4WmT#|!Mx1++)Qy>{vn5rP#XlO7>NNhVz;bWe)Ip27( z_Vee@=jJ~a{yfF&g&Qa1m;CoBb;!?VSMjoZ1SnxDj*I=P*2`oUpZ zn0h@aNf}nRLR7SzDKp{PwT*W@XES|QF@d^i2K4q#6P(esYQ@q!2v?c@hj0~x5KO31 zyI$euMAAwXN4;uzv^lXZmlU=nU26xs(fDDoz>bKSY=*kjl9ZL2d-kjy%)5%lV?@5} z1rTY`{L?WM{5CCz#zDdchq?I)FY0XEzApFyfkE!~Gll*<%r}LOl*xHEk3%M|V+y@G zskP>KTQeQkjLFR0HFM@n)D<5uX+f08x7QXYXuA2nRSXRrrBiIt|8EudmIKnyqbe^VmA7pmpAUPsnYnk zMy+>aFfesqTUS>Ih*lPsmVs!xzT02-{rh)n%EkL^={_*7yia1Cv$hfyt&O11@87@w z2?#?|Z*H~B2q2uOww}`-{F&jxvKuz&9C&`oblLn+%VQp7<_Vy$+QlQ?IUh?fiV(_CtjtDvcVX5X=FAx|S$|+`LwuDJfjda5te9=vrLidWPO}PsKCMdPuR#K6~ z7aL9kvmRyq!z8P=(^OeT0zm2)xa3&O801VMKy06>;eQnilg&vQqNYcQNl({A=Ha=M zhm-R_#LxMl6L{>>TuOfr`H76=K*%oga}Q=@^MKT6fj_dkkVX|`co#vYsP#_0^?G3m zOy|?4?4w;Wc7@7E{>C;Y3Qqb5)ySawzRYb0$10irpIiIJYv5Qg2y-!SH2W1^?<4{Y`f zfP9mlg>vPj64|fPiCOGz^VplRp8LJALR2W=G~Y~nduhyQ%B!F^zfQy2dX1?-n$LPV z`tvyV(i^T$ryt=gbx#2EQ1s}B?WiON95+6|9UcXODPBWC>u_S(xT$u|0uG7tqv=`dPw`>rn!l!siAl7 zYzUJ)a#bS1^blb;!A62K?d9=cz_iP7A9b@hcu?fPVl;6G5pf&StL7n7X(5SgH?H)f zwZE(~3PY7Snc5=sf`s|H5t|iTF+3U1H!-F%h52{M>qJCoK;x@><-&_&C@d*~B+1C~ ziPcU^TU0$TSW=6zozIllMWG;x*Vfh+2%X6h5{%i>TwSf>Rn;la!DFcbjR!(HWVlZ9 zFIr{;sp+uL?~Offx>4AFND+?C9eWT=OmymTv(FxmVfy8PqBlSzfnvk@X!2_A!B%7> z`vZ0{L>JvVH62{sVtdnZQbLQN*y=Bs`)w$I`jhEnUmu_Ka$SH}c_T00W9#)Q0{HSC z?NYHwCy?wj+=iXpgC9lw^`d_H6+;NA_3G3)$HyglXWC|5%p3@{&C49P&~Zu^icd<= zYFPjNy@T(ZrdCX=5S((qDQ}Jm@3@e9@jt&p& zT=mOh%HR+!T4Ut?5+meC$_wQMr1aEUuxTVD+@_%R_9xJ~33wA>U#_fU$oXwD)A{AA zc? z3j+kRxVX6QakE!`zEITNn0GBR^VpO37%O(@=yMp|`68L=xKaydH$xCZFO7tk&X0EP z-k9^&d-dJ*8)N_DF`1Cj!wpR?p@f~Irw{{uDzQUVwY3}L-jm2KR)#2fL&!^tJ^dPP zz|dOS=S~bYsu}_Xyo7zCoxfRg1DHAQmfINE&aAAge1dc8C3L=`{?ySz{ivz4xXrq7*n#PffB;-W5i_1aKDET3_GY8ztr8Rrgvik4*;2aQ2pZkVQ@fK?v66Y z(KFl?(%ij!4HCs*Y&NU3kB1C|yiT&-n^r+?-v98JLjTZ6Kg#Taif`T0dLGO-GV3)W=~e?^|1y_wHS)!pUA*l-hl*J1nZ8ClRz{q#}xmGHcen z)N(AifGK#guJ#MC=J3>yU>64YEs&V@!a)Deoij)w5?MG+M^Bp54=1$85@NGAZdje& z3KZ%&02c63X+(|m^RTJTPxC^SmhzX@*RN(|WJFRV%CJI6==pc!h4bgn(3`>xcFyY6 ztNmW>gjz;mcz9>}-mV+bSqGV3E4NH?%2hWLrBiGw@<*ReIv`!=mjULlGx>8VqTJd~ z+i96Z%QngbdsL?Jjbs8ID8_lu7R=AEQHTRMxPBEQBzD0^@%4IvV%p2-k>O4wYTuEX zd+0V)ptP=+3?XcWQT}wK_&J@adE1pm*ROAdwBDTItnt~%iFo_h6-<8BLp*80y7e@_ zpS_A$CeLYcE1ork&3|NT?lLO1kc0x~>6aFxPysJ3E<5{D^RsS_!A~UtV8JO!Iy>dP z@;4$1oqLrnVdgAfTrJ_*0pu;&`LQ-cj({8_IiwC%hmqyM27l^zz`-eadUSf`i;fUgdpUDe<)FX>CH+t!L&k8d1Tws)t70q8%fby4B=O z=(j6i5Bl!gs<9$a`QI5zshi;d4YQ5mm_8)iCwFn4wVn|ihBPirIMG2+hv)>aGk+No zIh-JIBhI)83<>?4E6*IdD{!U%_KqQpj-9Dv&e8lJXz9@x^OCGXe99mFT>ssFfk1q#RoMTefd&8Txni|n z+pvrtFwaV;Pd;0)#gU=J2!iy_x%8aptq`$kx~q3{uR>pE&04Y%2aMYri6iw_YZqPV zhd5s`x(8nbw@3i0}dJ9HQiU$f~y0nhMV*we^4Tg|`wu>3Fr=3j7<^ z@*p%nghGj3fAq;NjG?9IE%4)5#f7C2cKXV$Y-hJ^>4YqZ(gj`_+uIqG40YByLi!n7 z6Z1n-SoX}P-}C)G*IV>Sj=VfT#PA_i%YU~uM%0?o_)a2qxWh2G!sHiMKznBtAR9Bt zS21dg)v3k{Z1TV9yyTh2%Da&4o2(ezu1=*q!^6w+jn%@1F7zO)ImjZu*_jDmbQQ1E z$%^iU%OmF;JY7U2@V{4Q6@+~C){0ep1PM#tcE{=edKr^%1z#M7y)@k!Ie?{&6b0tE z#%+*G{uXg1Wp1fT-W_SIwZSf@{x5n;#%z3=k{+1nP#UbOEiJ>M;^z;ja$PLSKaQ_p zrY#_YPNe|sI>n=eLoeUy z7~#n4`vIaPJN9BpGs)}fK6*2aFOSD^ zTf;6(_#!9C0l8DUT zwd}OdKBukk`~KO#&d%AMXFY4(>%Oo1y05DS5;3K2aBkzpzYz5tliqYX&mFdfne2>v zLMhB9sc4w;iofyt463-gyxhD%`*&HDHqs0=s&tK`tb03m}57(?4hN6#f(Z znrg&!AZfoDd_X7x%&5gxn61S2JzfsV{JdE_Co}^bV#MffkQ1G59^YHUu{Yh;1btcl ztydOvVp=JF$GMpqr7K6mN(0tf>^B{7xb2WSk6OT#1ubWrdYi)h&UcA+1}7mqRVbEP zUy-&cME&%Ce*6F0l9UH{&D0GE6T6Y$kczg`QJ`ceaFaA`4^}x%xkS$J3nk&}6e$KR zMi*El5s%7}Z4d>%jMm^*%wbEZh=&!!uH>rIy?8)glK4N*U(0^c4Gb zI^8SKBCNba%_sfy=)b{DxylVHKr*bQ+zYz#|w6?M*qp zk6bdV_Mgq1a6|)Y4j z@)*fU|GQPziv!^b%VNGM)Lo)yUWNnBW_q2({KpK~7`$j~mhtzszZM{22d63KI7b6J z;yD~@HMe`;mHp69wik-+5M73+G$%>fOVg&t;`xe=uz66`#$8P69R!js^(2-< z!%8C!o3A5)ZSRIq=g;@s-zBygh<4)5JmtKM+WJlF>BR*p;X({r_gpdRkbp92jh>GF8~e8Ljm;QaZW`pLh3e|V6s_l#m77%Vli(?=u<+!&822FO z+sJ2x?{NO<-pn`!He6Pqv4@syb}aMRUf=D~BJ@gAg0&b@=G=jW1cVnv+z zlty~c&0s2)%IU4a5i9Y27VC;gnewOyUa9B6*LQ7g3q(?)-zN9|^o%=zyF7%R!G~F7 z_MdlFhf#X_drTXYo~u=a-EbDJ2K0oDXCGmEwQaRj@zT&`bg~69Q3&5rgN$h0bDJMxxezeR~WB==V z_~*?rVhE41)Cou7q!_YMjZsP@n6o`3Q6E7?C#3p4eUb7(_;I|>bsrC*C2dI?B`3u^ zK6@=WT%fn=ZMp|PsHey0<6hqsep_=mZa44A_f&GMb?!a&rDyCEv4$E~0Tl0UvA5uS zd!Y}y6q0pwCoQWcgVQg+Me+yge0aA?JW<}g2J5G`>mW*pt50JQ++l6D{?K(Ty)80a z9+d6p>LAzBl?KsuW2m~?z`r=3m~e|Y6bv!LF8Q4LBp~)S5gx(27GI?7 zV~j}6gse$H9(9IiN?5_U+THBO+WL`SJ4va(j=T4?NclZDZC8kw+>wpMsEf?z2F&^~ z=}q_hQ|A|j3+-53Pz>U`<~2Hyg|4UvtyP8(?c(&Dx&rx2oM1(N_1LuHz=8L{H$RzFzr-vh*-*k4SiNo=ob9-bN z*^bIn;VUggJk(o)!(k{zJT?pGsVsTz%&;)vpC9_4w;)vq2EA7HM(mUSdcQ`v;8R-D zkAig{Ar@Z7Ap=Ho8b%G8A3dAn37$qizV`y*kujhYM-<$kSXcmk(l_^Jy8U>@XXHD^&LyF^rWdZKaXiOUCot}PW@tc?QjDBQ-%QYf3ZIwaR`VL2uLlF8-f>@;8bl4-k1%xqv@G0q}(OvUIRG`c8ulHKe3Cr zX}ZW8rpa5Wt(-5!P31Tmw$`H7@<~6>D;{j<0R6JM&)eXuoe_^J=fOEBS-@ejk5*T$ zL36q!dx_G^5DFoL^&if$_YXM@K^$tm0+wW*`!a#aW&Z8sm$xD%vdE!lp4|SQB+BQ1 z=s#sTjB#s@u;Kc)HPK^m+3=hTuIZrOP1&}DLS9d36wn;T;648l2PD?K`-m_Nps#KiLPPC^a}i zNmFM!ac9evOZ*L)OPR_`*`J?*x@?}%o-|j`eLg}gu-?7g_!0&YnMRR`ZSvah$T-XQm{p|dV7sAb)9EfK7G+v z3{S89@@mfgbZo+s88XMX2Hq-w%+^3Q6L)Zd290&TES2(rIbz(E*o&2LAF|~^I;b&H zoIA4p!P|q@Q?4X4oIVXs+DXA~Fnkrm%~kv66E9JNZ0CG*mPo~9@-8}xF)5jH`zcNM z^bpjz*S+Zi?zS*G#9@EpelDzO7}oSg-T|v@PLwjQJ`2;l6yU6Srf&#l&xd)7itQsb zhY{HXs&;FesKlIEby1b^6We-3ux4oVD{BPpbp5I~CQ|zA6gp=IRSuVhk(L@d*Z4lQCxd$H! z_rcN|L8mE=bmU}?zR{Z)u&*F?BiI0^3LfH}e<)d;|_Xep*eagJn}Ml9nU5eq-K$zvWAjg+y0< z=jQ926M)y&IV79y5hmON^WWaOUchV z!2S?mgpZJyvK%>`sh0q0V^U|GHSVkdoOfYPz^reuV{LjbgJLQCJA-A~hx0#B(}vpJ z!8nLwqOprJTfwHuvgmg=AjJs=N&amapD!bnGqBe@HrY;`bQ6$EJ(Qg*`^lF$T0b$9 zoJX}~-!+fLSO{GKr zdbX;q-O$qXi9gjMDv6?MTjqjX(35P6#ZnKqZnHW>X!P@mmqL)bXno^xr5S8OqErsb zPQxP(S>H{nTj624DBJnF*@@haR~#MY>PROe!Zt15Kmd@AFAp_cHft$pgj>^%kCcrs z;nK6-RLb<`08d5P>hWgx5uc}=hgVE}NW}3Kt!>%KA<3eLRu&hz4b9AQNBcd`&e?D; zE3k@{O2;w+r)mfcQ=?sH^V}{$s%~-uEgxC3gS>{ zPaSL@iSJ@CTBlBBx$*2CbqCJ9=BF=GZtUr<_CF_dw`!QqCo>W zQYbriOv3BP?OdAljMAIKWuDRQKZMh*SmJ|WVla*S%9Ggo*9uf`|pAlKJ=jSe`;|sV`Oz_+)-bdB7x$Uj@qSlgAvv zN@BcwtxLU!o-v7-aTYr-zCuZ71jAVb)%^7;joNGyX?LM6FVlfiF)xM>JpnzLhB)Hu z5HPODLyeEVNC!n61Bv;{&NI~Gny+mazXU(b*yF?1d(&AWQkT<)UG}B3wEO&PW>Zew zVGAzHhLN9G_E}(UrNu>PM4KLqV57na;5WvgQtg8r1WdrrA$rLZ=(lqP$O`BADF+Sdh>I)QQC$v2xIU#erb5XxWm8s? z%P=gAjNa!_fgGCQ7PMj1gC|u_cDJj<5lJ$f+I(qc=*3WZmjx;bG5@xySSR4-vqxm9 zp=tj`xiJoj=S;K5>$OhtDU#|A!PO( znqh0^mV}@rz3O1oR84|o$pu5xn2G_Z zY`haZQvhFW5R}&Heh!80nJFwcZj8%^Z>Ccx0M6w=b0G71#5cHLWUyBXb)!#`-7wl8 zA}pIz>5KNhhidpm_`xhcazWm??;`s3&%x+@vSvZ~;wgXmFnLXP@*OF6=`jf#z`0@j zjM+RJq*0}p-%AMIahlQs1W&hg{}(@s@dVi1VgCGMzNaw=82kLAXSKsd!>=6-ZsQ9M z3e)M7S9~SHf~D)5y|Q(_BNQHKeEa_2KFY*q4!4D)u&5)=9_hbH zxYax8=s3ycYO_7=5FINsG_S--nbI-9QwRkdBi!Zts=d(&ApXKL3s0c3%oqKN)T$62 zhb6@Pc;6@3ls)?~3|Fa-78H}IPtO*d9{!RQ*snM}5eHqE)4H9A&-u(bOZM`re?Bvf zszbg7r_R~=LaI~_)18Lwwxc_)Dx@Higt($sR1Q;cH9}n|iTHi3Q};Ehd2$GCpsZa; zU{zZ^Kp{5J47)ugTzL8yyw5K|W#wM`9C}KLr4}$r*b%&55>1cZ#f7Tq)R5B8BrY?K zsZ-=pJPP497^kgEba7!$#>rXBZZ=?d-sKXdgE=Ck7Q!AiKk#9$C0>H{!$voN6aJQG zMgB91{hv4&u8a@!vkM_)NJR;t3{^*+vkn##O)}Mss5enDTdArW&l3`(qRm0vc5S;V zLmylx!M2f63NY@rxv!C43+YpbhK5SKX~fB}bOk{Uy1pAn)+HDH0wu{6_20L_QE$AT zU7y}|>N0pL(msGCB)!{>sMI?cvktl$Tm#y#Ki)F#X`6Bme(O}LBscx{p}fzKY+cGepB6-Nru{oSe)TjA?w zdP~vW?XH8_&dj9fhT1n}oO1yFsJw?P)fL>kaz{3!==7S11qxrO-;V8FIpqOJx`hQN zU2v++a7YO1>3D^MW&1AIX(Gd^f7vhx$ za$ln6Lma~zGr9S=F_Nnf@wxr@upVBF2b}jePmN%$z?+*q_N^tM$ej6jU5Xgk8}mp$ z@+xQ@!49$cUyDD8y<~Zu&IFf+fhkK251k7U=iJoV=Am~%GqdhI0;pVXiIh!|aP)Ij ztF~*0kx(m&XSCn>cA1GC4de(nwL2ox^W4b(6t9nqpn~=t#;{^ zGQFAxKdn&#%_OLWHtloSe!lii&|$5UZfG>xly91KBiQE*lV4&UW+iwb%W#UM??-|R zhij`pg4ZB)gf9CZt3b(Tj2Q0+%G6-y_n!yQ0}msSlr}hdE;xno!c@<=mdEVdo_vQL z%DS3r?}oZJK?dY*2LR%vpBhhnbJkwCGSn?{Lxs(Yr5CnCkO_HG4#m0njbz~x zb^=tDzARN7A0gRx#gNCXiTiN!*ZlYPpk4!VBQYpgIr(hiKM)f<-LLG~cF>9rK8qL8 z+&kj1o!GcXgwzb!6TFvQ$?B4(OW?{^8_^jq2{Lw&$4=tJTy2sy9wmX|y!#m-1#Yl( zPL!&V1{fg~Ru^aohED#L|BeLYd{DIzdnIn%&|3NPJ_|pGN7;U|$Il>v=to~waI6Ld z_vYZ&_fI5`mWQ7SMA#!^(ZZC>wyRJ30o$%RD!)R2a?p`l27In3Z^qnDhhh#437F5Mis;UQ>#N2BsE%C{ICV3*Qea}<8OKZ#)*5mg78b{Td}$KAQ>?P*D^^K{86r*P}I^mihn*%*RH| zsq=%Tc4_CbCKLcOx2wA3=*pbDiS+!aS02ceOAJRp>)IJqAXg?mXhcZwqb0tjlkfTa zr}=e79b896yx&@TqYC9E?u4T!()8yi3l3gU4p*f^gUS;E$WmWwF*^1fRKy@@Q#*0U zq&rNar3+Udq_mQDvxUG{*!0RN45XK}1ZRO1Nf2d%Zq-JuPee`jyFKyOPSC8tml4c9 zb(yrIi&;v@CAi%jN?xQr1CY7;+x3N4r%^Anp%QKl=wnl8f=KH1iuQ5q4A7w1MPzkV+cQbBg|^ zxc*}B<4Vkg80so2F;w`@X+gc5LIHxF5wmvqNg z79gr0(O0yrPa|xO>xK3tI%6DR28y495dR3!bb)h}rE)~-V@#~%(3qt_?MCYj2MmJS zwsQS7#3*RAH;#XAqmdh>2j~V@ckMkdd_M-xy_pUcq~X2Kt{)9Fasto1 zH9|E~v=b@d$lEBHrY(s#H;}76k-oyx3rZN?q^iJ0<=`!Y{zp6d^N9rxl9MaJywaC< z?}4n7HW5wS8#Xv}-g=h}@u-;FyIq5k5^?_cted+S$IGs?Yo&UiA5#hdpj;*Uq^Vn? z+eyPd>0S>$m*z}5Qjeaif1?qP9+mJ}?<73i0rCUinQ!IJr>_{GahNrIUz+Uty#ef* zh0;eg-^o4K(beUGM9pg)Ew#Ot^7B#U6R;2{f<dMgaIx9&WQEj!h&>_k(w%i&jSIckqRsp1N%D zDFOr`>62((Q2E~&@;?G9_#I*nR2VKFQKI2;bGotL@^(Lu`pUC? z$tGpSsO5J-@xlMfb=0W~ehj#e50Epl$}mT6Wf?4?cnOOA`X7nL|Aeh@ZIV8FRE7Uq zp-enUCLg1;At87LgcOO&SLSTCC3rjBPFK|+V=jPCYv5ckNI+f!ZBW=vdbtcVM6TEHGlFm4t%MPQLU9oDEL58Ao&X(E(0^+oI`n&^Esbfs4BGs^sS>6WA#ObIAU)XHght?FV|4IKDe0^ktK7Y_C956F?t}i>>hb9zs*_vm zx7P=C1uENh(_axX*I%393TPQt!TyO%ox)$y%PT}hk-760y0i+eLtCJ;)M=4r+fqcb z;+w^%r_V6Lm2J5kaKch+$Z+Mm%1K_(o#X-xH2C*kh8V#Ha+7TJYTYySR+Lu9VK`

?Y208qd2;yLkt-#V{N(=1lQ)DOwRO>MEHP`cAAM6wJ2q=T-UnPVr_=HC z6?gU3AEjDBjNS%bA#GV*NV~k?3A3ueo2RbbM*p`T=4Xb7d?Jc`A>~)_J7p7^LB*ud zmfCdJGUMkL=e^E!>|WEZ$pXmzI&vb(*z@}@tCKcLJX=39T)yL8HO@IOjD{8Imk6rY4okvZ zOE)2ADJA?9$xGdsWXhT8NQ5W!H!wrJmdLJ|pfjx+ocV!!$-NSd7vJsF0UAVvnIlQj zHEl4v0L~tWfC8k$lRc*&644@KtyW`ECM%?ve=W&x|L_f^co}=qF|tf6sT_BLB#pP~ zY$rev+Tdxy`>R-h%n%02a+cd(ci3uVDs%3J!@ax^ytT`Baw!wW*|a4yA%h!XYblBH}a8ku2B5$Se&0pMCR>qn1vtaxOg1JqmR)WNv^x z^hxAo@pQ^bfR)V2H3K@tc4a6hDO89zL;JZ@M7F7+ZhK_4(%S$zxQXACF+nHW2rL(m zRrz}Kmkr*7fPJ~yd!sm17D5u=f|o5Gmpe9er+YIMzwB2e|DQkjMPrXR#XX3_4?WsR z~c_c*#}SST3`81_ z#GPYE?L)l04;pgHwUTd19{rXLfrwSx_~v6u+^knx(>Bu9G=eRsWf}X*%n-~YLg+Ie z19?Chd2UdZi4k4?a%%!JVW!sh<_VCq3eaHE+tCu^@y`#%kxCkvoQ{`b05|^nD~d3= zg+9jICw=@^Y}+>GNAVaB$ZhpnI1l6BmIW_Bw*i2SjorXQ@4!`KKhV!%I?<0tid_-3 zXNmem!)Qmy2AMA(LEJJy2R09;*56*zk+&A979^ z64iF$b8zUYzrso$y+hi$SK3rb&MuUpZN>{zIyY5X$^KOOJ_O^NV7E&SJ zy+T7_@Y9R$(=?RQ5EnjfHyqN+KY8>YV9I|VMQR03m&6r&ErQDjiuo#uk?ZvB`lpVs zqGa$bop9;2Q9t?J;W~+yhd@KI3(MuMcc&Zb>P%Jr|7xBW1)hS+gwNRMaH{$)Q$fvx z)M`U_d2e{@5=5>v0Lp?fKj0Ls|2}4i%HQYg*Ma-{57hJcVBBkMXX06kl=wY*7DyNb zR}}*+ybGqI$?Ll-5Yr8iE`8MJz9F-!yhhWdmgf`@p8$R&hW5|c*WXoUSZmd|1SMke z;zabfY><1Vw(HFl(Da%JWSD7PYXE`l;1<^|yD(3XMxqyP*Ja1=n<8RDZ%rKm0>CSB zzO5L)HnDf9Idp-kQTv5_xH{b=%g-`~V!W9K#)A(44(8-_oLLO?bcBGNv((k04517c=bq!r*K7ZLQ(lgEjUV|reRMy#@@JAWIPfGuh z;9%{OlRX3jb`avl(N+B1XtBugtAKaea4IZ~umdiBbwq;VjzTPE%}A{8jlX z{HINO(r@8~^CbvkeG;NYkC}Pa9NxAfybY^JSxVsf+sD157$aQla5W5PNoTh_*PyAt zwr3@)^R>{;)Jn1!^_oT{jBAPb@2jFM!AV;{Afdjf>+*AN_uKA2mJMWtnhOhJ z8(;`s-=~L6rZnHo^;GZ;gf3E8#<+f*sWb=S@wbbi`JcFg1{JbUg-~2@9Nvp5N#m#I zn4aVRrMVjGbY@r3JtjJruEtO$;(Q#?K=iSLR^Qo97BYhlhS@La>&AN($EDh~5c&jB zjx}po2DPTYqt*Wg4XO@FRT%bcCcKFndhnM%VrcaWl+pL5TI%<8H!0$N(>ZPub72~F z4Y_uj^Tj^CB{dA00N~JRs=n%A1?JoSRzHrTTxJpKEVEbYV1_1^EPB;sG~nfz9H9mcZG%!e$k1D25>HHNLI+S_$Mo~06)rbGD3K@J*E9NE%fkpDXVYM*qwP&OFyJN__-I&1R$kjbi3b0E zhdjd2Lnil`$*&k*g&XHUNDciwNdnNv)w}Qxb~VmPkeg(N6`5I9-rMyWOr>wf_v@Mn zTf@PipvB)XG%>aB{AG|imTBc-9%Ayp_q#t(waBM#soK5q=Z*>Af^)e2@NKoMk|faq z&^Qt^wq@GwL_d=hKOcESa)l@Q34}nQzkl~`c0hpUMZR%MHLa=W+^s7G12nkT0lY#C zU(Dwlt|??T@MoI(y~_zOEGA|qH@R)72p10PlyB49(i%gb($JFd!bCv4rpc}77xV_M z->WbnRA;FT7+4VH>4C#HL@rQL@(9I%z$-L1K%-~@xHHT z&r%YYM+)6XRDuC9CY&1l7A)9ExV*SAILrq>|DlU~mt+>|t#rR$zW@)jPN!rrlQ|-9 z2tE9};9V2q^h_Hv2ZIg?hnbaTjI9QlZGfiMY5|G14b*iJ?{f}Gf@BKmjw&1I`*Ea*hhU65Is1FBG_6$Vx%5MEylwo`!y%l{D+IJTw?S*_F$IhUpkyw4xepI5BuquISBM*2N(RGR zvh21ybCG-=&~g>JiRexGPGQNbwybnHU+Wms3jm|Ue4t;c^4LV}aWhXiI(R;r9kiP> z-s9sgN7OOi2G&Ajo$aXhbQjKKk@zS7vQL5ZpzO+DV@A$qCd&j}6@Yl1VlC~hz7mjF ze6Q3ex{}jOqBe5ZLOj{>iGd-Ev<_?-2CtG2iL5EN_L2RQ zC+vT(NAhnt2v^+tttr9wo=i^P_<+G_;?{&@7VM*_gS|nd>+XUNp1JZGWw#QIz-*wq zzPsNbw&gVC9rFk{EG|SPBLM|nu>2UVpoTYGNmc-P*Ja830=HU%ozjEnMm`n_f-{TbGj|K~ugtztsotCP- zsASNt^{DOrXsg9eUr}d)J21VMwwB;)UTeT4Au*DD>j@@m6br%TSL_U3LN4IaO*vmZ zB%bR#HdOU7>HPuj{m&7PiCtPr?j(!+Ktn6$TfR7Uq4FuK#Fy%#9Ad5fOcs+!C_eqTmV&yY*WukP^A2c{O0 zOR2=ZjB}aBd}#7JDROMD2JY{P=G5UEy`ckHE6F9j$|UBl7lU~2$hS1K&g>jcg6?4A zU^lRWx+Z6O(v)3}JO#XH1OKlDiUrrU@$++K*(afysVvD{Eo-#(b_v&n(sjA;3h&8k zavRnTzHpvJ)EeC2=g^1>u&dyecRqZE#`hy{7V`nWcfS_+w|~&wf;gv~v`~#u56O4& zdw^@lDYg?m1=61Z{ndXacU^)D838Z?VSr$IGvjUOsBbw?xNeRZwk;EA2qUx9ukK&b z|3F7(#6Mz~tMS280(#^}V`@K;bzLhF!9x{FZu-Y&Ii_2 zcW>F7o7eLM{q^QM*4wC*-mH-CM=qC-@i0RTu`mAsu{l>vTw!k$9sZeCQ4Wz(zxntA zJQl_aC!tTf9YCG6roAQ`K85fzzHq*fABPTv5zv5L`uaS_X7!)<2Fn;#vqvrWnQuMU z*kFOS&ImVfW>p~X+l7j5r&KHBUwq^wh#n8NgMBHH#^NDu?mt5%{Jub9y5a~Hv54^# z^AUSwnD|w?GaHUkfy5GgC{DY6p4ra1TdS(8kMN!gM1aSQcRP()o0Y1=LAs3(!LB!- zId@jdGG~U_u9$*+4gx}EwFcU1O$A6tL@7$1zk=&;|8O)A5%5jD9l+In5)#RZBenCnr zxMj@t^nt{?TKN{)jjYJrQ(uWa7O2cYK30?C>T*^YlQ^4}t@OK^2bPX;ZPKxQJgh$t z+}04Y$Yh3!fi$8SAln@+J-~&$B@I~5{><6UQ?|-6v4w42Y_v!QU0^|$h}G(GJj+PV zk8me1(7)DxJR}Dj+_Yx7D{WG9Y9));hQDkLH;F1 z@!{ZEZbB*)Bg`}MT}p<zE8iIq0%AOrc4pybI z3O}CAEr6hYO-wKM9~z7;gaK+P8pDUUr*RO`ZI`ZY>VYN@XnZ!$k&XDcN*XOjLi$PV zs>Ns;nIOPa@xDyWZVS_m$*Em|3$vx^5umw6b>r$|YXCx*Y(4|s6RIndo_&>ePe}Kv zm2JY9;qwOUBR-RLG5uA%(^Ok$F)3RZS4CsXhA(6=*uW_5G06pR8*CwL(byyuF9p+Q zEz$I9iNPd3GZJ&F5DzXhD<0juI^KDZftX;`vl99?fe&TbHdrL(5gKtCrrT@{bb*Ty zW%jH#`R-$VY2v?5(r^DjiNsB&JH!+2j;nnCK`?105#As2;s!YG|Kgg#zI=9IkJ%UM z-aM0aP_gX1yiTyP5gqGoO?>nY+z)6YwhJZ?SMqwWleSr{vu1lCXbm+pGLL(mJsNa_ z9-^QSt?*s=iFP&;CHhtbpYn14al!o}n#?pgGWTQi z&cwgPWze!se(Xnc4*+r6NGdMCA00d0Ya~2x2js@+ZR;CdMe7X9S;^TTNN!qum@vm*kvFuS)QX#eSpDG`> zZWX}n44$QzU#X;4;{D7_);d-lGR-_LX`*4j3qgBRq|`bPlAuk(_CNp zF1^Z2fwPVy=?`CVe*YCa=VeyI9VC4LWi5Snq1G-2+aJ}bW}dIhM7fMIHo%7u8H^2_ zDq3XTH$J7!mHSH3gZ_G^N8NZ=_n0`^9APaoacFw{_Rvng&cP-+6F$qG@pe0xhMj;= z+zCXLdNQE12-LTl*jUVU->QBH(=eqS~IU7^?U~EQoSY+0Rvj5>-_!X&-=cbN>t$4Z5-86c0 zntX21Qvh#%-V@V-pb}58289Xx3gT1OJ$X6wMQiID5oJog)DJi; zac;legJCuza>B3q_!pD=!Ptzsa;u@uviq^CFj%M)%%ki$m*M@PPh$r=8x2Ao;SJ>% zniuz>zuRpf^Qyz4anSqykA1QNm+2#sVmY!Kt)@$GKwM#0N@lFd$TcyBLCAN&6;VG2 zFGbWH3WvcgCK+Mtrn4tb0Qn#5;TxAk_p*P(P|j1@v2{QCzK%dYt!Krawts7mO#&e` z{=k)oNpu!m^$5t@w%iKwt`6NHJ7h#_s63>)ysR3Y@S$I2JVUN@xW~&iMN^yeb^2!e zzV-@*^8;U&G@p0yF<#Ms;1V`65dgRg&J%lh4qC5k##2(8o5pBOXaI)3IQ4@J zqJra4fDAuq(4}^C6sJ)5+g8TT#g>W)V;}F`^)Av2Swb9fOvdCe-A;0Y{tR&!mQ=;B zc{2jc$?V_0PV4=IM$AY$>KmKq^He^4`Sf@9 z#FQ~aKm9fKER>qfy1hxF|?83TCUyf}}?&G6U z%|wa=o!*-Fx5(@X6s%+kowT8p)6&Yfl*xqu5ePjcGkAn=g*GzYEK4|&Chs~HrT_Ge z<%f=KOFyH|__Rc1wEJzbc;+gQdq~G(Vqlz(hKTo~P2q^uhyK14FCq{_Mjz5wyM_$E zP*J#M=bP7!=sU378syYr#3hm)%7cU{R6)^ZM0_b`P(;?C)-HbJeZh(M? z^qYiu>tQlMMdUq*g-L+jo4B5i433nE#o5}J9=UuqdY4endu1sYU6zmY(pt4O&f0~! zD4OTp8}Sc>kwS>Cq=O~Xs5tsY(L|xU;@R?b4JUTDexYnQSJ!)|%&7ulq~i=&R`O9A zA%W=*&?>l^qtWGr575wb;}6mQ@9D(9(j{Miiur{)M~$@xK$Y6PC@Y^Dyep9z-Zv)!xPVQ)DUKlaM>vD`?$>p*K%8x23|SitKs-}!wHQ|FDR8Ac~1Ia z4FwM%Nk#wujb#t1VTdznTOlq$ytLNl5B&h$^OLI$xCy+j=MKZ?0_gZ8)a?bzG~oE} z)5_tG>9c0ufBg19st18B&OOF(=U-V2r#K`|hKudq7Ob>#c8cz2spgq?_rl?Bzxs+| z$k~$4%m_-&lFo{(=53iW(UdQk(5U5&*< zGWQto_WeOgt}Dh}eFk#JM>i^p*EjMH8|*wPR39pS3c@^OdgO%{>2?2TU6-3)S32~E zHJHek1A*N(E|IVP6;?h8lK1EKd|P-Swi-jYxQ+cD#--51eo54$d}->z9##b_ef9?Jy!PvWePvx(F3~qR7t7`;K4U zex0!fAwGJ#RYphDgvO9@boel!GsjXpC`)f)e(Ol9l|k~-O@7@OncnG(x{^DbnOi4&AE9AX{}0`gRzkg2DNFu!44jxaMC!-N!~6@B6X#@3MgmfBb-iQD&X=QyT02?$PGKb9Ha3I$YjB z>Mv|CFvOb-$D+d@G!Z2KzgA*deU9_!%^#KO@y|CFe_kV_Z}*LA^U`LxP1`VMB~f)? zHzVh&f3aDUqz)u&)=VEDeCvtGtle&m*hiWWA#b9-c0o3$R~$*PmB>n+v^)}$mR={- z8IC@wGbWNtxAAvnZVSeT-N(DVNbKi=ollecuC(lqb=o-}`lX+dT&pDh1mW8d?U$13 zE}&hakhPC2$u$J!RuU3hQCy$YCWH5Xlz6{BF#hlYy#ewd1jINw!KQ_ES|&|A&|zWh z{rfM^MG`eKp|#YvjHwVFt+Z%dz@lU6rC7R`$5B3e^_cnhs2yLz>363%H45v!_2AC zp^mHv3}NX;ij*JU{BxId*qs35vaFLgr)_C{V_#FEFlc_9Nf)rN@sEy7Zs zx91+2A?g$_54LtOUUgxhdkL4D(ca+Rt506fPw!89<5YWpG@r|`WMicQAQB>52~Lm+ zuaa7BMGrpNS~6B36BS|__EXa4#rAMKI3ye#XV&;^_uM`1-M^O^iHrLdtCP5$lw<_=^agIdg_VKmRhTXo`n2`lKO6!5Y;^bfW| z)96B>r$4aAiw5CsDjQol=eYq|U7MyVJU$|z&Ae1|sUSa$GMpIb=2=Q`@(F}+>-x@N z72Q@=EOKeAsV?e!trBg~qD4*_HYr*z&_j(t@8BEA$Hiz-SoXg@?Q&_pU`ZQ-j6W%E z>aJzg`dDY`9`8JNx{xmJDXsPcj`wkKja9p&ypoQ-ep=6@B;iIpGW=HUt2ngdDUFwJ z=J1@-r!;hBZV)4O^qPe+dU*rW4o}X#OLhg1{;~B3rCz5ii)A7Zde*p)o$7UeN^9g} z>EH6N8t0RLAxB(!?=P$);_OQ?YSL{Wd-7}eX2HdNj~PxVh3`Uy4#?#^U7lzpyahPOiWFSpqti$ z{G)Xox@9tT#{}xTMiUP1{DTfZB;I#ZFQPOC>G+O&-rIge`^#ed?}a%g7UlNx@CRKYPS`C z_5odo^lp?GEzx0a*C4SKly|JF^?0O%{wPG@bsS5|tK2L^r zB0IR3*QHa^33NKSlB8h^u!e7ORwZX0`V1V-`C9YfD8j#t3fGD7 z=v6hM60SMVMpAcN+Pe><^jhLe-+o&k5fxPg#Q0Sq7@z9zca=S;4fd#oyx?&qT1sAq zcA>N56`&$-#$x9Ss@>u@Iez?M77R|bBGqo3mJ^2>|G9uoY;0JIq6jWMi32Gm7X??W zD8jv4lKv!Sp5?$8wM8RM-(}~vZNB$+M;D=#ImXwCe_n;ww@lf4Sa~Qe=)CkB*MWap z;G7g;>-o@+ZcY)pgI=C-f%n~$;&w-S!}{a}l9xzZlWI{X=gUR?f3GFt!XnGEqSCA9 zXZROidegRJo^f}agrkA$rqDCrF4S5yRZ=qJKE{o=T7f}&4fG7Ig=S^hKIcX4IS*Q7 zWMs~)OKz}!##({I_p}^bye8h%dSgAncZWf+HB6op+haQgYg}S3<9W90>J8%bWcMW< zy((?~wnX8U0c8U;fMo4I`;D6azrAKe#PVZ}S?PyOO*hm)t#&(RRa@>an%MMzz1~S7 zwini!H{ZHec7Ln$z8+OHYoqq{tEq-Y3f1Kqja5gWka+Ft)vHGqq-;FY{+X8kjD{|c z^zHs1KTi6X#y)Xi-D~#7bCrc?_BxB&%KBYGY)Fy#{T2ym(Mwl81O=`v%)hhqcyGL0 zd;V+Z3rqH&WNG)ee)~AebohfklwDa_jfM7yMuTL^;Q_(SI7Rkce6+df#H8y5wVa*tMA~SEZuN^m{bMsfhW2Z> zeBbybung_!ZSM%~6C1kuZFa@Hlk3_2NCQYq)_AhfeRJKA5h;9agxD^KMYBd5

ZZ}?tZVK^&J|19pEM2#$n5WD~mWLP^HJKZq(T`I9dSMyZX86!SE>C ze9M82k~6mWQq0U^WK}*{;X?WLqm*^t^Z7S-zrOL#;sFg4+lFW_xY-rXsZ-uTZXsMa z9xe4ki~ku%CU2L?wZ`9GJOSH^t8V84_$Ey~+34t~vr}^i8!Q*eY<#Eig<<@-pt^*J z$ymJOH)29lV)i-3_pZe=NUW-&dmD+%Sb_aOn)Pj{lr;5madVq@52H(Z4W!Q6BhBl- z2uVpv?G$nZAx;Ye^QndMI1_&2`n5T(YHDf}r9n%s7v~v&Xc7a$#~}1y;N_M+dN8;5 z%-joiMHQKdAw94Ah>hy@?NSetzDPE}@?$g@iYo5JS$ITxL&G0jj7TKm&_Vb25W~B_ z!)jh6h5sq-!kfp3E9MG+>z^xp?Ru}SYRF=3-+-NKCBw{bjrNu)`dj4;7UbNCcN@j% zX%JKLm!i)(mgsj9i>d%id(ICyQN8JLbKF7Z`r*93cue|X{DVsK;g6mYB-^m`*`C&5 zA+i?aeJB=s8ce&E3miwHOqqAy>Z*$&XF|WAJ+}<>wUl6En8maJtMINFl#=}8#mGM& zMkp#zcO9NHdFUt?SvXeI^KuGSWZIh)FEYC*FE4e#floo;z(Cl|&ff7bGp?)K#kcv6 z%e~nlE;LZB)_MQ_{WV6<851vC0ZviBr@z@ZB`;l(u`FccO6;HH3&q?0gqFhf#}?YS z#ptHC`z+-dI$jlXV_$;70W?8d(8G}2q_3at1|`7OFXU#!@KVDe!`N|XLnXS8Mg>_u z)_dZNS^9^^d3^7_}+2)8XFl7_w2t zLuZM%plzmw5FbBqM1@{y6TiH?KCwMjd+oVPWY0Y|W>D6%>P^ zvz&k=Y=1n36#nNh^11M1I?Tp!q37lyCm|`5X_YFg^5@*4UEr2px^jhq7?v@rPIo_F zw|#-nRa-&h$VLyrmTwzON<_N3bW6GQ(1^JXuyikIUkkr--pU>B+9;Kh0vDd%+cXr_ z{@~`&e>$0sj>Z~DQolpNYkzvX~1|5 zYxJ>-i}r1+53fb(eI0e5kkIBn@deU<+^N&3jqJo zdrwuL!-}x;KJIk%2M5Pt`(%9whZKxWyn9#yAFTIgcDbhv3jqKRs5d$9x^})ex#M#W z$fW(nw@$!~D3qn0;T&3*{s4b38L-`rMbK-#b4x@!=49hi7mocDiFUn2(<^BFl+@eb z#fO|zXoQ}FEtoHRy(8P|vBulMmSfRp;USg8|-ob>w zbfR$;;9XE3se6|Cycon_5hF?)oM)uqHrTh#7>YUA|#hPh2cd&VZY01B3F z9Oc??F|=&XZZ?jbe#us|%6nInj=$4Fy}1(OL)SsByJeTH4R9_{*7X18OMRV(FQrg; zS&bY%0c*5M-lf|`pFKY_R{9ii7Nl3&#n1M^LEnB~nGa^$uBqJ+Av9v8^G0Zx-TeK z0;f}AVxqEQlCp|QF{<}Z5Z|o0qs-D#e)}xBt)6`z$sHsfjR2e0&d4t;49dWKw*;8) zf#b7|(8HsXt=w)0*5xolS*r_}m^X3OZm}i1JufH-jQ^r61(QQbK4*mucCB86LufY& zLf6&(>i4Us<0{>7foy}Ta>p(oW$-g!C6u$U9v2f6Q}0WEG_wH*z%lx6F0^5T4P8$h zZ=d03U5|aY^ih^YA#*9%23$dvA02cqtmwt9KRiNmaIRxHg?zD^FSU7 zt1M47dE|liCIq%a4yNwy-kd3 zrF~c?jB7O*&S6xFM-Lv*K0C!=fX24YB2^WDL1(fvyBX0Ij>I@DLSTD;@Y&=Kcms7IodbG$!Gq=f ztwC05_q8I=XfJ49rn#I!dRuJUN()?r*?aD5UZSgTNUwa^c3dli$44n7I|#5eF%itR8cn*xxP6?^1|>bLfsl6_=9 zP{fREEwq%OharALMBDaA%+iEc$b|XPd|aK}9z#p%{SIz_B#M!xy9AW^H96=pLbZ(C zcL8QdUX*84H722Q0VU9|B+mJR8csoWN7Re%yM;vXSr@E}p8Q*Kr$vtmq|J}j( znrMC8^l<>IN$m=30kU+{Im$V+F{dpeb*HhX6;=ZhmF*A&NnE~iWza!_&@t_Cxfd|3 zbQVYKC7NvS56vB~8^I>}Mx1b)c(BBeAjY)a z)}1X(b{fK+pBoE(`1~D_tZ9h;?(?~D>@Hbznm znT0+|i+@T(LU1$8ZAkTURhm+f!Md2dcZZLU_yq4)cv5e#G@}b!yEHNT=gt<@o#T6X z{QSEViy&~oUd;~YVtn0c%ouDn9R zZ9EB-&Vxt-oBfV=Q+B8ZZRf_RVV-hRB)8`O{9OO=M><)r2%=s&rJfS|rPKUuCd?i7 z96fq8*a|%@e&ToTwPTIUX>G^;#@@XWR@SRnShzDp^yO8w>h*HnvtMjLNpS}$&$6_* z*d=6QLTdL{lNZmcMNd?hMk{Np>0zLp4sRv92f6L&F%gqTi6jk z9M{2GWznv}zpmf-ChTBv-Jty&D`Z8sFvgH_>ng~G`c%+nHPdGjVsowp^NZdL$n6}{ znd=uUX5EXYUQcKnUN4T*8NT>7eXOy%rYnMynQ~LeFefjeLce#aY^Xz-eG9FqnIoQb zTa=8X1-cX4qC&@`oGtEPQYxXw#&4P$D-BudA*#jZ`FTvfWa(HP4jKo!SK^~@-drYO z|M{AslF(%eWGyPE;zPr87Y&U*C#?qnzasn%SJ`D7qtZXyF;Fh*>y6zDS3+#KGqw6& zrD5@!M!sb8$^=P^>Z#|9LiS_YRT_R%m0OR+IV`If+8jmou3p7sQKm>qLBW!#((wD! zSo$&hmE(b0Arspz#yh=AN>Ora*YP-xn&#~#Ylrf#GB?X z`iddB%Z8-n7)wJAcu03thHTM_6Bj(U2Cz^!&gDIE>WRe^IR>#og&XviIVKjaNnhs!%oHT78AJwY++|Q-ut7R5@e% zx#X1F!;TMUbk)^wAR(9tv$uN|5moiNxM#>&PCo9_aNxs^4IZM_y+fm3GUs_BI_(^? z=M)*ftE+lFep)Lelci#4%%^ffFvowNanDe??KI<=!K#NPtA@wIWOa=VR&@`?oe4-B zZF3V{gzu3YloKn6?;+$C)Ed`bplYbsW%qtkrRh!S5lyv37sE!aL7vM&IUW!D&n~O5 zFHWhd%!#b|;4A5<8FyvaIV1QUgZZ?(TSp95u5@&g!F)XDj!f0aZvM+b(+fW|y`mM3 zn*B*m22B!)<++U2eLWq~Yu!S$n)-*y0(#u(@R(7VSr}F#fpyK=7veD%l|DFLTu>Y| z+7=`r*y@wM?6vAl-{-F9Hf}-p~(Qn{jE52r#Ho2$tR6%wQ?dG z^fI5f#-2XlYTQ$wPZ`^i*k0T%Y33|zZKstZTqRTgbWkj@eUnpLRBd)Lzj9vzTk?ct zVtYxIQ(u;t@lGDnqxx#rVXH%&x4THEF zoF71)q*Xi9eIE1KpCHrQaSl;x zV1hd=tynk@_l0i(#IyAI6jGr2+IJe?3DsKRh8YvbEBd*C>FP+*4NkU zX{vwk;{bpYsK{^aXs(N85bDOb+31J z14fhDw^O>lPuUNzV?m3f1)G^q@wcwWxA4dHdtJpS#_C~$gjz8^v-upptx+r?F zRjSyi)6sV!as8MR&3@1C1iau3u-#k}&O*1wj*NL30RA08|z3HuJf=>wB=7h+G z@E|oUUW!3+ANsuX(}Qd#4BvR(s*7RwiLURPbXtP%zsm4jo#>vlQ(q7BmVG|TTRB3X z8mw)yLFl@lY|i>|1+BS{Q`*fR>9|EtbjM2Q{uQgxZ2n4{k}f^dU~SK?#h==(WSKH$ z-^RgYJf47O{9w}NXmRI30@n0!ZJeR(Utd7dXlN@*&6M@a&~1e~jEPv4q)}SNzKd2J ze3Qb*N;%4yAI=*XjLTcQu*ES(awe#Lz%c2d@k4~x0G3!7Quhj`7WUe6@1Se~;W+pT8r%KB9o|@Q@k?N5*`k6*M?==<$)GJAk(mz@h ze6=)QXePec5#Z5e*2{w44`MD_?=(KfbCx zi?yI^<%#w82qO58{pQYp&|x709gIN+hm zU=G@#%TR>gkyDA+=T!`AKBE<7sUx((l|(buwZaxlJ17UT;I7w`HwC0V;&3CQdm z1Az3pEuGhcr?FuytyYke^I5%dSZFxEcx#+qQ(DzvR!rxrUXgcB3)Xt4tyT>1MOBCpxWJp(7jGK_7g^HtLHF_$;DP|>hd zCmS3K=PaIlry+OGCeuz+%hBcOqj}kb+oUyJiWtl_vAC5--UQWsV3)8}9J(qqc8|oF z%D$^Xm6Ufw-!B04IbW^`CvFc)^h^fQ0j;6ebv3yPhYeY zUmSP8+b9qbdOJ8+aPQu|Ij2r(kF+3k;>5OX#4+BBV|*6xkFmwEqXQ$(zOS%$`uD%} zk==Nr#TZL4Lk08%pgC^XC6Hzh6Y9+C{zUJ2IeeC?T+ltaB)?xS*hOgVNrw2;p-_T zNr5#3K^0M2`-jf@#IT&TaYd3v8o?(E^Zl;iyISBlI`Z@fLn#F?>bp^mGi=(c^=Pk(%JA-*@coqD9a@G05uKm7XD-EzpOGGo^wyl{j$~P> zI7AYToW)U`1!n?cZ*<48gfbj??8~MVrQL@DYBKrKqg2P)T}msO{bko&xs>n@?I^oj zIrmqsS=0OVMS-5Av`~g_koI4zQYtS>3l_avh=e?&qG@-m<{FK`$*8O2<_ph0E!RlZ zUt^XXk!Sc$PtvWgnJ+rJgViJUWp4}xtq}crFNal5P@a5XSMgv=*Y#4;qOM{o8Q3-z zwgW{VEeb|*2&Dt=6Mod8_I9^ z1##b@INpW2?9)guMcTTeLvY%qF=FSjFV89m=S)$ol5I1iO1*>i?77pBm!4|tG2h7a zj;*3XmE_*fnB21Pd;O5aiLlNim6efIl-#XAF0ZAbt?Ok5E~rYvDz>Rwb?}j@%vHF_WKJzixH$`=eWXx^j(nhP`#CFV@wI# zumX*AZkkJR6!KBz(jDEg?s14Pl!_?~8rMDpD zy&G(WE3_7o6G~+|Pt!~P_X{VUhXT7S8uwPDz| zuH~mJwER0Pzb9W=yT0!1-8noQ6xCsAUf3x?`$*>#{+eANG}^OcW2wTwqPdM%b2R>Zh1dwsRasga%5x|d-vCu_8F+IqjW zK~v4h$cUTs_kS<0tK#|oQ>Cm2HF_IsS=vP}37HE;#`R~p88))D*X|b2%^Ca<8!@T! zLd*Ah{S-3BN{eM?-&4!!saWBXy3-n&sg8{~yS{2PAm_hre>-#FR%UA46-qXot*+}N z$|#+EIyfSFDQ>Nh$%km}sk=J-Kfb?~@30NYu-AB$f0-^jIQuqE=~*7SnmgUqYq_)M zJn7o2g?gSFikVL9HLn!WCbXe5G>xY|G2O*j+t23x7$*@_rA=_`&fR*C=CiR>mz3R2 z-RD?KwbZaX-yY7{E`<|}OrI>R-tPuF`9-a$sL$B_`6#=DV6$oPJ?orrhm3B&Qqpu z60Less|>E&v8VgHinqp|GX(C7Zq{xL$Kcwlq;!dgU(2pz;J2>o>S! zck5(ln1`G6cHJRIdzbFl_4i)`bGyeqAN%bGokQJ1dec(At2EejId)gw60jGt_mmT+S-4h;2l5Dq zK}!~Ek^$@x zDC^O9dK!xOyNqYJo^%GvOn*DF`hPY>@bt8AFTEQbr{x`0WW_3O>;%eayP;!!@D zuj?_SB1-E>;!+%XBW~f--)vTho$w#KeeTIH*UId_yd{xn9TBl^lv=vID&_DihB60h_d3e$3?(~BtHMPN~2lhVEj0q4r&tPsi9ymgXYf}@Wb=}8+aDQ&NP;UwRU__&D zczGln>8Ag`DAWJb$m7T&=yMJnW-mZHFS$3EkeAma7!5r9oVo0XFB-2|^WGb|{YbGFNzw+5xs}2Zf zFWVe4z>>iD6Q{F`>?5MeFg;=~T${RtCt<_PBcPjf4V^e~0RbS|L#NhrbJwJPeRFo+ zvv_0W-+u7W2u3t&yL{)g`_7>@-e}YMcJW?SRmX_TA84E7;C&;&QCV_4XX_kB0G-_i zIlU0DTkrDpxqaiWaQhW{Hy^K_tiQa9URdFE_^N*Kj?!1XU*Xhq|HrU$QDhlyc zpu6=VMb{N}Hmz`@zJ`|Lc;ro~sbkF(@Q&YVST3n|ERRwLPpS1V;(cWJdV&38Xfc-! z3q{-#GHi6;H1vQ+niW8fDBF%TvhIMSk;*?LgTzY@8WGI>|5?%h^G8_(tkI>L8n~EM zsU^6Uu&B}=p$iGI(`}!A@`qw{PUx%<`dzE_&;Y7}UJO$Of2AfRQ;9Ix2 zOJpXZCjnNBI4kbldGTDmWiLjjUxU7452CMvRqQfv#4Y|WV9FL0+~RKo?759Uy-w4v zO7c^ZRfDd5@(6hPN=W|aisXYu>GR=X)EhGs6aUQ)!vjR=&hcr&f;n4QuB1g%Kt{$O z2MmnP#_UY&t-GJ@vu8ZdoQ`Ulo@Aen^mG3$(}RlU45%K`r$#RSVtOcMc_LR|buKnk z3THf1W!lpffMY9WX#3#=?apFfsz|QS&kUWAx!NpOD-qR*JVdY0$tB`8Zckvg6$gR+ z*;a{}yk+L4WZ27De62JBB6bViamn63!0ESluXTQ@^`dMMS>peG)pGs>j4PkJyXNPY z%8ApRT5470d}YO!UC`Pd4>{a7%Qk+9yF|pMS#Gbg@`CyE%<+uE%;G=~++K~;x4|fK zOLIp6eBKK;hMYcJP+IB+F2vX*s;le7GREs@;}Y44o-KA}3+to?6y)y&{Nw`cZ)TtQ zc7C$kaE2k%`GD~6pV+e>(Q2ac=GwpC{j_0TolR!n^t1WwZ_(fH(wOLvaR_2Vr3<669V1p-(RWprDF#&tG`rYFhO9 z1y}NwGK?oiz5P1;YQ~}3s03k#@ zT6^=wix;2nAO69b+kP`#Re+9z`6x9g1J{9ypN|w(Ge|JW_bfRIOU(qk4%IDvXvM$F zrKhJCF?oAUsw3Bvt-aloP|*QF)O1|)NQKlE7-~yd0V)gO%Uu0Yw z`8>83M*&w9w+V2OsL66pbYop<<9p>w@=Pvv@_V4G97Q)c7t4W;X7BJ7NXz*rTg@x> zeEjrjuFNYqOen%N<-}`gBpy1iD0L9%Yyhij!71tB1^#}1M>J1>*V8266a^kH;34i! z3gf{=_bmTo8~hAp3_^I;FXx8HR-oC*At|XhwBs+;@x^P_thw2&p|+tU6faMVI)@>( zZo?!ZZ6RKC&tM6=P1RR4qAZIq5;jcUQqYMPz6G6kwIiV)ynOY_`TecBI_N+30QqqP zQG8O57w9}vZj?E%KH1dN^zI@{f;B=V`k{C8nWrt_G4m3vx2+U4`VC~v7m9-jwc@uC z!yVgMY6G^pm+&%efOvt@u44P!Q2sBa(E5?@;C;h0?nUqRRPay=U{TdmUQzl);FQa^ zFUA)yT_PFO9t8yjo&#!(_|mjIT&Hbl0WH)>flfh)t%$&-k(x2)uM-(k`;nW&?dy0> z9Ggg2S8uI-2vMt>h$f3=Gv`NkI*)-nyP3+30LZ_Ib91OQ0X{qHldm)8f%)`NAfNWZ z1^aICaYIG1=tYeh(j3JEPub_aUCAc-OU7U*-E05!=~IxAIpGK*7PX4V+(j&Fw?08? zw0=-z8>*4}p6Bup9z3|lg>VZO?H)7KGISq%LZjG8TuQ{xCnZGfJI>yD*ScJ$R^ z*p?7b(Tj#%e9DjGa>gUcK)(dW>@N_0j5c|A7@spT{P+ESDOm361x1$Z<6Dl9FY zl96t+TQ-RTw^&=aM2%~Q+B9^IodQAmhF@5JykrXGYXu4L4yRNJpOA@o*Ue3}Ft>gv*BDeKn7RogVyY^G%qJL5!EtAJN z-}xnUiz!lI4=-ecN~kb(Vh+jzN-xSKchF4!=DFZt^LRmIaS+$3`I!!KrO~GnTuH?E zIZa6MK`niET)R7krk|4S){!3eN+7kKE8~U~DNN|XJ!5TSsfN)_I|Tp!6G|&YOfJ}W zRpg&G0D~~SC!w&1djmIjKI)-&GlblWJ3=%BN388ZN3xNan@nVfz4Uy&WKt&!!vFst9ARoc#m_$mW#E!ovkRCB9SuOw< z^>@$2oP*%`Vzl~z#Lq8f9-w|km{466$^c~qL*$u3YRYF~neT0I%e*JpyEKXYR zUrZQIEwS3ackgvf(_4OlaM-}WE9yYXAYzo~=^0W8V}xUx_fpNVp{^rGF@Ruc)!q45 zbx6VZo9Ftb0X)mlxpVc;HRq|Ne#Vd*l@Ysg5*_@SMRLl@m%*T`pPoUD_!hkZp_Rgq z$T#+4{Q`PXGDskMA<;D}D9UzmMciq_5Gf|@F)$AAI5j%Iv6Yf8!R*%aWGtj-)gop6RvJd{JU^b;_z>AJX;M`)@i8fZrr+Ms!!6qJZV0@0`I2bCIm|*Sa2v5 zTsaK#^Z>0CQz}dkbRdy7GqR0qjO|FmtSDvJ$x-KqsRV7;KtA1W9|)cv1=+PkZq>6n zfAUGvXEV;cSGI3CAr-oo6=orr;P^b zl=?V&Y;7rZR(?=4=#9iRVN6H3;p^~&KjXm9pFR8B|LYg82UytbV{5FB{!)I@9BL-S zb2P^Hq1GWyz{|i8xOJd^mFq5jmXMGz8_$uS*S#rbx5>p6Y*W}@QN>-MLe`l^y>g}O z>2LAbblJ1u!XrRO?)*gn@K^^))`x?oLP^)M&V^vDEoY){&^deK{@|Oi=MTs<(oT+w z%}|<#In4NJ{q4WkV>0su-~juypEUb`AVEc)VcQM{xU%*jTKVmUlxK;^02T{NhLa7< z#jMogc&`(FRh&Sv;+J-Jq1a4K#?4xQN}8Sbyr(nz9jmBubuDE&*4h$bEfdd1KI7auq^dWbb9*eFq%akdBETaUEpok^wTLmlSubWq4N$m$bNf3 z%cjZ^!u0~!{BY=I3h9E@Lr8$PDH<`l8o+WE*=<|+M>%KCk{^;watt=vAOo&}0O&^H zy2^3rNN>TFx!u?o=@?UnMLEkw+>j2PxV9gzS=o*Pc1GwL8aHV5*?lS1D0OhK^$=w` z7pML7x%~`;u?4umI?B{YHBy8Ya8DRiera{OP&YinGOr!J2wYiq0~E{`2IO;MtXE~P_yh9{y{wS?u_O^%D|=4j1dQ!r1lsJOm-PI zPZY5QzYZ{t4(FCi_YPbW4ar_OG8C-dSmFbFNi7k1`i!Q z8a}n-MKA8RoK-xA`_Z4dPRq#ZA14Fzivc*+I!k?k?V|~HuU0@`O^Ap;8q;6dtvJxCd}* zZ{|kkcwpHn2&UgrHf$B2M$ggTW&+`nAMPP^yjKBa&Z?ZTg+?-L=hqMWK>L#OZbgp!D?|eoT4Ken3pbHhr97Hgnzr$)zyn=w}E%!C?V0{2wwUFr=ha&mPw+& zOg}d$+H3&lvO81NVx@ya@F5M}xIVO(5 zZAxW!fdV`s9viclz5)62v!>w*bQynp@p`7>>9cPgktI)0Lt`)6I!W~qQz!Pp{9;Gw z_E{ag;&a~m*f-q>#Uvw=a(aE?(xoL#>9hOa6rA|g2Kb*tOUZDW>u5~hwY%C_!?k(y z0kntA6Cnwq!A;zcPAlpTY`x~MXV{^)j-73$__-DCz7 z8NY2}(@>+$Bh68?;0)gUx7|iF(^CUz@@}_pgm8dYGuq!{-Xkr1pS-zVHcYAA%TR@g zj)ACgB*b#sGc(qEvRJZz&*{@y^SMrtocG&q4)9u$W^IJg!qGXDY|4)Ql=e-{?k||O zy+y4e;1j8n7#?kyYoK&Tus7sEC(F+?^B=4f; z+Fv@J$GGLauT935AZKg7Dkpxv&cPl2Cbx*sk#qRUHERS`+WVsHg-z@MgHtWEPxR9h zBv+pxEx>OY!~%1mY&Uz&8}T1-*!0XK)#%TxUgu!CZCfi|$ZdG}tXuQJfWfwr|i zD)o+lo~B@CkBBow8jtV@*KObW&)&d!XaEygs956L{QT=hMaqSq6VO!hXT)ffOU?nr zcM#I^aN#NpT35B-i!;qAu%g`|>T~$hhc*!?=D-h}w1aFe$u^X`vK{zpG)CI_B zt%fDW!6Z~?`C#hM^Zhu`-xNJvg(keOtN!Z)Ub>7zpUW=dF3=IhNY8UZi3te<%5e}+ zsw2hO6C^UIfcDsuZ^+ODCr1140K^OkeRPf=;`0r-R~R~VS{J5R+{ZgUx)9orB}^Gw zPt-NxL7C84e7{HQzxcuJyA*-MX3J% zA0$s4%nOh`JySCypjh5{YTV_wl9H07q+h>!wHGhRO`L&3zD*;&KAe;i;1ZBuT+GUJ z-8|~hlN)Y3jr(1O`wcX4E$5h%+(HmJoF7VqiBx76?6O?Op8E8I$PjOv1x7^h97o`6 zdb9B5oUyrm(C|E-gj5b)G-HWLOnBqOWqOiB>BxfLuRaycCR7E3dE~e~*XQ8o-U(?` zt1w2A>+Z3)xA!l(I)FsFp7yyweQZ>r$4HHtqa)>M1M7(@p+;hUfIhmEA>-%~#VNXF zrd}ZP2l!~(rh0qR97h@bGQOI+ud}n0T^UgUlWtV3$D2_ylz`N)h#d^WJWwa#6U zrMP-Wj!knLa|v4mXSI=Mc$pWrjG(@{ zYczpK-+Sof$&(M*Q`%MH-9Y^aZ^DhIJ!G{Koo6}$FEpqM5nxE2>R|l)^L@j^Wm>Q9B*I3zfIQSo0$Q~dYPZiN zf}o&wllDw*k8Q;HIuIDlsXqgZADMqC_Cst`N?pLVXCp*9Ln`Hr3%{| zmy6bTU0W({+j;?Yh-8HZ@+$(By{+uFlm}24@wuQ^Q$@&IKkL-ft&p13_0=r;{i4sI z3L&OGyc=iBm1m1F+%3q&)U<6y){k@FyzFHJK4;zxqqlk56eu49zz90h#d)@G*WFqj z3+o3wF*-9Un6srJfsGgZMjn?KQRqpDVIQ$k%cMD)^*3hQerc9JZyvDCS`ZN;Cqm@2 z8-@}qpIgLkrL!A?_nks7amGwbyC2T^?M}tnIYAQOO=OcS=J?el_Cx;&$iZ=%qN}_J z{^E?@htu59G~Q4h91vjsxbjx5XtkBa%5gXtr0So1#j^Hm_t+`mH_qe54f2RUJ7uvt z%%{DeUd{*cXmHtsjx*S+w7KH!heD&0LBG@#;Nw%unHtecpC0da6JA33{Wis=D2X_g zllX8W*{jE>!DFz6lRb8-^v0ndQwH*>3S+ z6LLRaLNT$eAj~#YB{_36U#k84w)OV%T-3LE)x5-qir*JO!2lBLx9nUDq#oC2T>V4# z6mJasokx&V#!4D7;w$s^Q{QK{YRYtqqfd_0P39}v1dfDazbybD%NZBk9t3DT`~L0Q zw}kTlHo>&8XA0J;^1;sScNK;Ui^)6kLWVttjC%EUw80awDleSo(%#=F-82j-*U;E~ zja5JB0d%)Eum4SGnEiyY2xpmMhspDCw9ZBdf&&m70bS-XoULu_1a{)^r+x-%EnnBl zfePQi)s&+xajYyXrV733S{A709_Ykmqp2wKDFAJC3`x@p*m|4`ehe%W&R_sT_c=pL zf=GU$rVOEvV#)lL+8cg;JB8jq&2aTD?nLz6#?}P29=Wdn`xiP5?2`K~CJ{tOIs2s- z=6D%-*X<9MI=(0whG83gA?X&a#yziR0XLfZ(}V9ozF`T0OJ~_`Td;Wdon>G--MDQH zm#60_QJ^l%j@mK(Ayj^@-E|}J6oj~YEOl&fE7F;U2QgoW+lY?1>Xm>$NSrTSBbkAH z{N10)1PAjmVyc3L9N0>E3~Ck-I(cq6H$4u?^wn*-e;+!U9oV13 z6)Tp`zB9NPNN^40YCL=<&vAoha*fq~6_w=qwK1B;DGbRLp2;8-;2?n$d#weo>Q6D7 zPsXI{J~IuMj+~IUgzLzOVBW4vy&1Ny;wix7lwSL?TkE)l?Yd$D(HC)CxOy<`=6Q8Q>p;2Tw5UcW+iet`jAHG&EF@Q?Y~o(NCn=KP-w?B+_Bs3L)kL*Q4Kdbt$rvC zV48PkvO`vY41>rhy0>lr)@IdTjnRMHdvs1ztos*?uG=$(^B0Vqc{H$^;pgU)%VVT6 zguP;U`A#iUn7ibn87POXO*}9bR(`(JlcJXC9-Ik&V1;)rNFASFZJNv^$eRgT=Oglf zbp;S32Kz&YuF5TD6+ijW`$SVtgS?!O%M;`a+W8QBssK5(*0DodRym$h;zkbRZ;#3I zomlX+)x2H58idb@Z-6UW6tJH17tVA)=0Am+pSD;Ess-=b;ikzLY{T~;eiG@G*HFs0TvKve9^Uyrs(~OdHD_dc!bw-Bs>C>mHixf-Nz**L>+{LUo zkeAqaR~MaE_>Th=XN%fSm2D&-IKsnziOH~()iXH#8uq}=V`ioV`@m~|2{JR_B%0z zA1PKWffpTXDa*C}$f$@pT-3^P@^^BK;*6=?1+BqbnSyJnd&ko?EZ#r7NT1Z5i`Lob z!--H!!p$ti^8{Uu<1aybJB(Bfp_RDX6a(^*Aaf$kaSqo&_v8sK18rqdUf#VK(6+R@6I>$t_YOabZk^nHkrYGu^8dFg_h}Q$Fz-T95VcL zsDa<@l*~|Yg~XiFyM(o=2@DYWv~F4@O%<&e4|we=N8G}l)X2D6+T{?sKy9U7jokO) z^MMEvDoyxrXwfCEjzJ0`f*n0a?U9kt3Gx@ zd$7PVwSo0wxtS^*jpDC@ND~$1dNDCE4$)JR#MW>Wn&=UOD5`VvWSW!uRcj@^-WxN|#{s3l-7I7Y7(@tpIdc z$`@e%2iFBNk2hklLi1C?3}ud_CRlrmBf&YC`KVi1twO-MfDgw0p;$KL)bd9HVWgLZ zSs1Eskj6$5PaJi;quD6N(ai3JX*BtuWbi;KeS0oUB6QZee>0w0pc?ll$B1SxuC8m% zD_DPCu{=uT5r|2&3FsK|i&DFfm^?c}OGpNf7u~^$Uur|VSPr=C*{nswrE7$q#)fKA zArv|JDKGr_?f(7p3_XS#PblC`kj}5tm5PNf)y5SaTT}eUx!9^|?l8>G z0z5MlSppsI5w<&-@8`KzYaaGW6C+G1m53o4Ad9Cxljzso0!Mz#-N@zFHT)lofhI8; z3wiRPq*$N5;W^&ZqCt#d*C(IAT&T6R)mu4@!p@#?BXOSYL3Q;&8U4PDZo%}n+j?A6 zEiWgTFKAOq_uCV*P4t5$-hf_Jh$mU`bkOYZpS*cytB%cow-cJ3ylm)Fb4O||27Emx z!{mGb6z)aRG}+g7Vh&SEE~Y;m)fk%;Ks%b8mZfjO^OifsP>%u41K5>%tTUkdtF)Jd z2yrXjq$|lkAo~0Bj35L545zslRsMcY48$+Z#yx%X!>u;aW-@L}Du}GBZpw+yOs~%{ zFr?=D0++NxJ?m^!iKE28Cq7#Z{5F?E-B^W?;U=KufmM{FV}z}M z&pa;C>e>DcHD^3bptdNZS4bG3?Sm+0_o2T&cXO835t83R_i=P22F)pun4K&4b2yG; zywF4NUXd!7$SruYoX-1E9?FfPv-~NVaBC~eOEZW-q+=VBfDI5yKKqldVnmYy9LSaq zZJ+I^{`(pF{%O4Au#AhmMUIdxN`6V{EhUUP=LCqom3@2$-h;&ISmJZ01{1rF zoasiKO5St?awY6SxOSY7QF! zz=YoVVh=D!b)*7w4jD6%h$b%~^cOM_bImcx%GV@~FJJ!q5QtKmh_`M_eIn^4 z6?3VEl0)+Q$(SEqt~rPDn9+l&K+9nM%wkM2+fFFKCLqugf4X(pe@Gxlbye`z zpwU4*u~zhAsLOS9GvJXto}d$!K`d!D zqoTwd(h_*rq?>e%v#hMleQi+RV!2sm$D+P<97voE00T(?3_e$u?+vRpNT)KKXT;to|f?jSlwdZF;q zTbwc&X7ls*__f*o;j}Uk`e^)_9#A5{T$BT?(^MF+&jIrf(JMYy9)$gx;w4XmV@DX( zg(w+^ka#aiIOuZ|oFOprv;f9`G$La-FT}1@*+B#g3s#6I?z+6(Si%Us6~z*1+&a$9 z42ReM$)hN!;W*N*U8Y3d@@av1$6npp{;1Uv^vrSRvpqQO7cGza?Am;3mL9^?^0}d(#FiocivucGK(2TSfil$h*9g;M={mN8@iUK^Fz!%LbhdVMiqaJXtFmh zr2NX?{^NO!&?1o(Vj_#ZkLFN3-EsK!R+IQ?{WST+adY+J=;w2W%Fi2&|*z->B^N;qBlK>M$}7j*l_ z9XOk6{QZm3HY~kkn91zs%cce7^MrQmzJ(5aCt;dgpLr@0`K2%0mxneJkj6bi^ZG_e zNL+f9Q<|Fmq2ZHw#+_)dR-Ej7&%I)sRUmQS-tN@52^GQ?^Qa+HBd_S_O@s-osHnIH zxiYt~aA{`)&d9->vG!FBZq~U|jyixe$}MI~ssD-`vx$_HJeF`{J-0c@YkN4Z-Mhz+ zrAgN2UB6zD(Mp7T&29#~Jcv9vr6B| zm<9y&)gy{_@2Jx`8Er`G;;lDiC!7L1qAcZQTZ|R;}W< z_z+!YZu}?j*3k8OTsnM8OVt1*dJ%E|0ETV|ESHT!~vmZ(v^16@_m9>BOIcI5~cz3xu*PUs_ST#+tC#D4=_G|3X4 zfa{PR6!UqxonY36>N!I8!#ReOD9=oWj4jMIW>mw>Auj%Ltrsp_xQ72>d(sesZaz$3 z?MJ^14*H>QwGZ^zHM(g)AuG902_u@I$6b#=8!^vgr! z$dNW$ibVR0Xu|si)BkAl&G>j>XAFUB1yjo5yzLVzDvB2? z=gNmj`!uVx`t{2I_?_=9dHx@#{MQLvj^mzrpl|)`X%u51Ap@C+z|mAV&r;8wYpH*h z2)jHj@%WZ@ws&-hg-8mm$%d=B1=xC&>sDK38 zY22W6y(AcAd=$2ErtNmqr^FXkvOjAb(2JyuCeru8oK4SzUB*jkPOuR82&S64%D$H` z-$XlJ?+$OdRI(u`b*3m$GODscD@F0_EfSM&^4rJ4lV|DR&24LPBXED*vbXQv-GYEh zcWCYE)ti7tk18zWC2G3&H6`@fK(fCXrO89UrVuD?R+RQ$R^BTJfs^`UFu zmP$%zxQ~Cu9h7=a-;=y*42fG<<_ks8zm_n+gxy=Ih#Fy7f*GjyKXQb9*ChLh0 zvQJ)K{;AFezrCpFSAPBa^=YOdaAy-l%Z%>G^Rl;rL61u7{89Td4BFyt<7>hR^-FGd zGor|ifB@YdegvB(;Lw3J_nH(R@%PAj9>_RxpEOKzr-y~2CWw4u07Cb@$Bso5nwuP< znVz1oCcr_iE%a8xf!zlNs}S(GudYD=R3)UDqZ}x zu+R^C`9fS=9BbAk>=%&bjYt=(nu0}d*h@)hCVscXiLWvn@C6SM;8w&^>bQrW@>0)V zxcV9vP+N}7jCS;}*`KZV3|&8mGN4^TP(QFH3(dukk;@aMKFf7@X0+QzMX2YJ=P1LM zpdNh3;(x1@7GqHvW*3!3ZDU~M!CI9Kes>s3L3a=bkd?XRW>Dgr5RYkIa>USm>$K92 z(G@*#zX{X?$;TXy^35L9V`F2)uA7&Khv(?W{(d2_8XO&5Alx&>C6Zw=kCrxnpsnx` zpf1M-zgPbdX#da2__6_ethGGY@5L1IE% zuN9+fntTS$IfAYG@R{gYFMf+l6pVSjq*dP|M=IlAy1D4FKWI#svzD5f93&js8dD+G zU;2svSeCpxWa6$9{GQXlHqm@^@0>VdSHV>iBzjO2jSuWKF?opju#E39<#$`ejU|_7 ziP#b_ci!oP<3vQ)T4@f+DGVuku8+@xFr~Kn*B) z`GX}Zd?3z(&zz_&4Q*0Fl6hr;rTIhVBMi$}Sqq>*SIqXyYkTqL&29o-d>tN+vH8ST zor8+F!2ziqHz;(mU)FB=xxoLuD`p@n4bqwg&pc!0tgK?cO-zIl*5IK%D6GzYlWPA6 zZ00Q*7Oj{JEn;55LmW5WRH)t$<|mwJG<2UHlgqY)U`F}uDvYqWb{c*1jBe7%1DeZ& zi#zg*%>R#v(cush+RwNl9NnsMCw=|Z+wnQ%&f*PeT__0?Y=nbl1n+P&bJ z@tKT55tNTkdt~M=ZEb(n6S8 z%57Gc$thQ}LM&+u-!cSSX~CP2vy_%fzYjbztMmrolUV%_VC)hW7LC4lX72*HN#oFE zDz(X-AMPkZqvQI2!k(T(t%W05%s)$MlUrI1=V1K|`+S8@P_8VNm6g4T)8%E0+fj(^ z-hCkqX-top^A%N=08&>``?#$g;$8soNdEI`9ww~E_$!CoT1KDghE_E<;$X}0Yot)7 zVAHkf-t+k%2i3;aOJVWXlM{Tr|8iAkk@AnN-b9yNS0@$|$QwAEUDjmZPcA^kVRMiS zxwmhxz0K`UcCt3Qi5)vnrsn~8-UKzGm`4|ebliaH!9F7+4mG-)dqd;n)d;?cg0!~D z{1CJnE4Lm~3wOA*VFrWLuVbXZh4FsQ?9ITVR>-=aPXEx(^?w5VKPBMt#o~YyHKQ1o-`=>oee)G{fZ5_Ic=+;&2A42Y_jk7*zp+}@T|c!LQXWGB z$fWjpeZ0(TgOU-WeEiTI?i5>&8EHs#MUM{J{}Gh6iiF%3_h#+fXHTQ&0UBTr5y`d) zEO^mbBmFQn*-6IWgeC1^7h{OleyTv6B{u5?`M>Lawo5U*h7t;#8y*2m8XWM}j*>DI z5$sR%nK@K{S47`ebhRLv06}70itlz#2`KGaTob$|=n0#fIKQW-r|X`?4Cd>gOE*q2 zJmQLDCa&uysD?ALF*rn<5Za&UrN(M$m;Mofst?rk21*}|!>=oQ9uA&W^F6)SA3%BH z0;A{-3R&mgk@L%9Cqr^-1avfkPKF0HDkE_MI&=g%MFCV6dnqqttv2ticjM740#Fj76`zVwc@ zsWBnX|HqmAr=36hcfusYS=U5yLHFVN+pSl`p1N00w`kKkMEA+bNvU{SB@B?yHkgln zpFGsppvS<-=uk*TZ2>N>4t|u#`s*2gJ^nx3Y&X$Ta9t7a|Fdpx`}gZNZBmZZinID`a2yC?5ANEA>F`~K2d0XhArosw z(g!GDi$HTD?v=1q6_4%IWC|I=^u62%ssmax0uRpgr3827dd#?Y)+R@hva{+GZngm! zmNb*@>#t4oufG!{nbpTtd1OYMrzB&1SA z$nG1ygr}X{OG`^zOJ9qDW$k=nVPVOh6Hp{KzrJ-aU>(gN;VD$zDcTvRCd8y|9zXv| zCdq*$-F3Sv)5)5Qf?KC#rt;eWnOBOmUVUV=L2N7iyBg9GTEnbEjg2B4>6t97^VdA4 zhbUinS>DS*2|$G>TjOco%w0)eON7y%g?V`PFs8xyy)3Vxyta*aZ4vT0<1&ZCnJ(4E zRaL2n;!!>lnrB}Y26a$S>}YkZRQ}h^`oI36gW!l)w`7vnyOuXpb*~21=#6#a;@V)= z_Fb1guodA^%c$k~+1hjHCfxe^>5avVJAqh0MRc;_>}lUj-6ekkSFRqEPSGFgF}AA{ z^AO(*Dc)~mBR#5-g(BR$(JXxgsPU2DB+~8zFqG^&Kv5$@M%MH3MOHZY|HDTAhXpSt zBCgeDjwJDw(v%Cj9jU4!An~K;v9^xwES&xAXh_!^>secJ9r@g`dnw1uccGdLIyfiu z)WbX^5=ovDXrx4cAin7Zz@(%TWG@Nc%R>U*21~B?nYAct%Tz7V-pu`|(A80bzjWvT z5VwO+IxhP7@at_ZLc#poWuHTJo`iiKq1lE|un-~WNZ2%c?p%jdaf!o6UQ+X6@GSBl zc9zBd@GzVNX;JgeF@)sHD@7x@^lW10(?`r~kZ_+&Bkf*go|v0z7Qt9JBBK#6-%^7AK&A#3w|iu-ca z#Ps&COrnQGe6Vzgf+vb5^nJXG7cVa6IWJu=N0L^AwP--0`Af)>SH^jOTm~mH-!%D+ zH~;G?{yxFn_(_8Svm25}<465(zBvvg4lqaj)Z@%hGn|UU8^ThJ^h}~wybgB;ZAt<} zUSzo00go-y{PA$y(MdURmoR_{!iC^H#1H`Rh|GT488i^PZG%d{dSYDhr#DqFsU4U0 zuM{OItm+j)~)FI>5D3y&v}&Xs~#zn^SKUZ;YoZX&uNbHU8-ceN5mULj#C zO}`UQQyAvRL)%#M#2v`Zlt39?ot0>DrwKh6IQ{JatLl;7TSlQQ4w4C3_?S5T!M4J# zc|djz$Lxy~qYo56sQ~$u`Q~j>Qu;UzCgm%Y0ZsI?h&%T9gOzG9caM_N4X94~Uxg0Z zG7`re5$6FD0>AXFgx`m59wkV#FXjknsRVI9)*E%c{N~=WG#GuYmyv0_wiPG8@=R}6 zhfm{jj1wYd&$*tU@c+IgzW=K*+1~3KR9wiBUCnbXBt!^D^TD*B1X(F`k`~qnJz6Z6 zSB{O~I=;p}WW2Jop0q30?Y^ol5J?=V;Od#azf3jK1RHdK$TFP@p}Rqgn4XSK*drF? z`hn6NizJ?Kby${@s0>C|-#NaD+!Hk-9V{@w*>&#wP{5{k#d9iu~R#n$a77 zmDgqWC(FH|y9pBoSDjb>9^77#>dj6Vf{04<@sopDq!kzEb!g*lqOECn2MTE7&hgGf zWUrA?=$HjY#0J6VVb7jD7wX1Z+uAOMgc#oKQeU(MlN1d{1AernB4#xIus=V6hMCih ztKwOF7SB4mh`btni%0SCr4Pc<)7fWZ6JJ-M#EJXOfZT80?#u575Ic#>E4H)}s!gpb z_FwB=v*67NnOZ%@z>)^QvI{^AXuU8V0Zac$@|ESA6<`!9-QbL4R&}Nq1PB3#H5>jRWdEO+-YiJX7c|;5`0@WT5uw99dkLN#E-{jIQ;0*f}2g}O2PJGo6v!+TG1)u%ZE%~qWm^Y1w>$NVp zM3&<|ZN=XBu0t9Q8Rq%-Rd+ElF^SsGY=z5B8w7d=GTUMkRE$8!8i0tpuB#PEXTDvD z^u{jhbxgzYHK;X&P?PEEbvY$%Po^-TU5<*U@_8>&w2~}I4kt!Ku5`aG9T+)i^e_$B~htcy?-g zT-Spx>~nAy)PeoQG3;jC1azC2iTYSpbT)O_TeDmfd;hke;Qg6iwAL$X3rb4vpdPxb z2P8i?-E7#I#fHo&9P36W_hUzg+4MKU$N>2-?eb?Z7~vJV*JoGm_?exG@x)sTYK&FY5s)B?3cd@k$*m%Y*@VU2&sI?L z4N1YvYOu4-yo4wjLAv{Vxi=`|4H*`Oqg)%@HEIio3g;Pk$nGa|e|=oge%gSZPkYJ4 z#DvfI!L5WD0ec`Db9VDB4z*cbSL;6kE`*z|<|3*2(w;ykZM z?oRGwr}~rUTOQ)@Z^Wp;s1J7lSoziXoM|BdYdr?2YPwFtgNJnI+vB3j>neHsc77u6 z9_Tne4tP@D0ak_OQ!_OO!dYV`>ngl$m3yNQOfZLinvm-R|dpzMtFm`u%fX-JG2F@I3q3d+oK>-o;gI z(!0h7v5d@i*AD7dWu(@04La@d9vjU*`iAoO-v=9GU1dS9MCs|L;~+1GTPQ-YND9s2 zy%RXNGNa;b;6;Rl`_VFz`xY6Q2MuAi z%#{RR*5Lr&0%1;RrklG zOV#v!*z`hWkHjieA3NEV=C>%t6l05-={X?^cR)&18CnOiI_;S~$8)0@+$}QL&Qd(Gq(^Rz8P(VuwQXj;s#L@#0A`&!X4K{f7X zY{XL36}^1cZ=Wz`!`wmE`*6*JXXtd?Kmm3DM|r$frlKyaM~=kgOgGVR9%%sx#`&`JM&MhBUa2DEZ=NwC<>Y94~Q%zIV5p>%1w1DCQeni_SA^1JK%6|XjTK6 zstcY`V_l62t-E?SD$to`3fhB!>bToKZANm|5Fm*IPc_%(p z_zDu~^*fU$o!@oGCDjgtlb0b08xXY-;x-cv|7`oXKfGs>X-XFk;V{;5Ul2=5vrlK~ zIMOJRvpPS|djqm8Z-in%n55&Q;nyW#F5bgAQzWP?Qw`#;*>MNEhp7pVt5DXL@?DjT z@_t+MRA4XvR*5K!C$uX{hA(|tVsE@AS%R&8uCbII%NP_(9dHYc`?%OXTUV++%8Lg6 zcB9jpb2Jd={NZ*@>5X1|ggJ+R9-&fm6U7x=p@aQU^>T1<(9ip^>L-XlYQ>U_dY(bW@B(|lAS{tvS2-q&^D@}Q zs<4nU>aocgB(y;^uF}8WZaf&;nCK?*fUTiMGVe1+7hW7|c=9(O;ve&@_kiBFwMa$t z{rJR2k3!g^wS(VKD-QdW!|iy?bu`nyrtAUyojh6)WT>H-T|N|n>z8PPZ+~KyT8N0q z`_(`K8BXRXGgSZakx1J}m%nIOncuUxxL6|kLZ#S|{^t>jx77FKNt_e!$OTe9PNKj~ zq%8p%ve^Y;0Ri_y@91uopWOs-`+?LMwq?sSKS)(~4WgvcJiKNM63yLHxl zx!|<16LDt4V7~UhM{E-2!boktrH@UO)aE3R1u@4)jDfRo&o061KEhNEJvrh>**i#S z3n27h;L+owNR2_zNs)ar(|jmgM3A; zXv2+Xft^$djOPK~d$1`{=G@uo+W78vL0 zH>)w?XZj=W2Gxu(t{efvKC7!!mw0?^B4Ha4rZnX{HD95zA})06Rpl6+c76M_2PB5- z-Kik!WEBjQ3PmTX+jy}&{m|KI7OqxDk~69i!e3*j%JyxWHl>vJ*wE1rFII{7n6;6RDC_2oqq`eR`N102E9*dmuQ zZC8y@lAUxeNiM#OU#Cs<@Pz7x#Nt@O6o}X#*lIhG_Q5FM>_J{WI!ls98-`K6J1;`ytrqjxKRTOPgZ^x@QzELD5ou!E<)Trohm# zrKhVDwgqZZ;h(b_w$LYZ&z{X9abz-4W~CIv&Ats*GwYAHxyqVZ0-CY(}S5?Fv2Yyt?r6d zHB%7rMR6+$EDM@Ltug7s8_2bPk}LEa)(ahe8}j{OJ%1}xT@<+T$6@u^wP>*y4=pan*eO4ni(RJ5%mV>Ag^mx7u<^7 zwf7|0`bSatQ~ET*iqNxK=RPqMG+KF`ZUol;2N554`bDeip@tHwRep2t*)v(%3f}n3 zkZYGf8LJg$ll||*tjRW!1iP6sr)8@=i5HSG(%u?dHg6V|SLII@Gp#OR(~Q{1pe>k; z&OaH?@^x&i6nWWtMfDAWimpjm5(?v=(1CuW^-<0HP0iDFrle~G#%XCsLZ)UK4+*%}DigGkWOrw0cDE%~`16qoKvL zZz$vTBV=mlZ9Y+N!I0@b{6>jCe!-HB5%p@_$1{mdqIm(x*p2{zUM_eXcqc+T3<cVsQ1ewztB5~)XKbt27=2#pAEYgp}~A>K9>PXy){yCy#`usF;y zE8X67kjyDTnb4R^&ax>kkj9Tu-o3UALh+8t)tk4FZ#LcJQ$%0>K zmQo2nNMQin9D?e3lox2rq&tWo;oG%KPXx%7?jTOiAmoXv#tZgq$Gfdffc;!<8kj1v z%1wUzuyzb#V0<*&#*n65ibUm{4HCS;6wEr7!Tb6*ECz%(fFAybxXpK zxokCm+H*8aB*M!aDrS+|ec*K=V8{VRi^<$S!L(h4h=nR~3pCmH_$qlY{LhSx1JUU~ zFFp_il`>=9E56+h-qgGam*HtyNBGrD0I;8~Q#-fong+h8sc) zQSJ2&mv9}4u(5m3WoVX+ca1EW*$a2Y3(xBht0D}IwymDIxsqgDvHhY1@fuaeW?nwN z(2QMNtH2NyR7zCzbA!KfLYRL1lXPSq*9bm=c=z(CmRjV_LUFx6xd3(?+ofQYNd^~1 zCDw5XsV4>ig*MZJd*g$xpa55=53MB>1}@I*YlY7JdHk3KeYeI}W!A)lm@q-xBH)h%!sMsH;J~Xnvx#-7G-Q`TjHb|A9{X3o_L`1 z`A}KC$BKB~#onL}J;%-$0&sQOUg-PSrhiRmk7=UfqoGg_l;=vFJ55liuYLs55u0-ez`{Jq4tTpQ8yxDA@U3{6$c z^a17w2bRQRql8=2?VM~J%SNq{xD(6D%`LJa@5}WNJ6)$8U?nyFCI%Gj!wbPS%gw>% zE92&zs=k9BQkO_Qh-F}ST&_lm^JQM}G~ei7SH%Sm&;#nV4xaq6t@Ih_?4FFFNaICP zUunTFBBD6g@4|%(i^s<>0gHzKraNO4RrB9o;PQ1P1q*2&8}keF%;S)EB|S@w(b(_3 zgc-!DtA5Rgq(d{vjKV5YRUG+s+=AHji!%^!k z^l=@rH#$|%xu=P{HNYsmG})IO`YR4vAT!#Q)=M|MG}uQqe|J zp=h24-JhLA>)1k!14v`LTYx^}4zzAS?>LC&FnTb$+)mJco&7SvD?c|gE?dy}p`sl@ zF*?8^Z4@YjrVDoZnR3YQ?m;BZ(dP$38?#2?ONQ!^muLyE4-O8_34G9hn8Ui@{S^sc zR~>H(l7y3!cbw+T9*QxJbx=}jbr0KF{o)H4soOFmC5h)FsWvRl^7Hc_p_M|K@-dl; zu=e=J*Ve{MXLl#)s^9P_tsjd!xd1@ac*rB(pAV#P3Ki?%(T!2kz=jCqJAdU)^YlEV zEe9c)O-t&pPuW8dmiei1(;T0@Cks937QwNY=^;=iKb8SVTudjHOP*CC2Fr1Iu0YAi z#Faf?6xn`pX@6a_(rMr(9NP>S$t8NSu&}eUmmrN_y>)Avm(Xc=cV`i@u>*y#`s4;r zG@@RBl)Prgj)v~*#2OxKGn2=|(1V%|4h#-h*ELL5X+A8UbN4Ffhm= zuOf*l88snX;_m1P4^e;UB3?v`rv9`C|LdCm$Dgu-a1|ptD^&=s>ujhr{7CE{#)%hY z0OQx>xq|)koOK<`5vT@1DmBvJu;Q|IHyBgK;78bX@N^=bM1hs421CEZRT)gj3Bz&Q$pHEBg(JCVKS#j^tgh)QOGeDSdmo2m zc27bXA$F*LD*<7@ZyL0|x>p@t=^$`H{6DVe??s{@kp4XSv)a@29woP*$_{$$L(Q)n zHf~J*=4ZPG%QO@VB$Kj+y?vHvfBv}QP8fh&bPyt3%j$Mj4u(m0G)YAJ*<_B$k4@&)V)d3az%tk+|=Ua(+65Zn?k78DeK1+F1(-}~_* zP3O^vTboWA08`3wj$`XVBsBZu>Q#pW7Spb%{~QAU+{s~>&DCt%#}P=doD1wfv|3%m zwXoDh5ie%Yy4Bkw6TsF;hJ<1P*EY)la5VkKq+<3#?{N<+e$kR8#?P~dYPCAhW*s^k zk3z&GrbdfvrOPKz_}rDhAHVnKvGMoy^WO{08m2+^#ayY=yyrp=hH8@xV8#BhRq@k6 z7bA+k4+MZE=*;*K4E+CDzEd} zFJ8HF6VocWLOmuIZX}ogwDrWYG+qK|6LKc@{}V|*0>Fnyu|g$+qdyr<>7u*Kw^_9a zyTW4;8ouTnB!L^Cc^HZfTldo;_J)1EYr-Sn=AcHlVHoeL95YN*IeW$w>nS3+?9!G5s7%x0>bv@E$yA1#44qH7fhnP?<*R{(D}M2Vi$fi&$fnOGAU8QG_{b7&@4<>4_0ExHkp5ZOP-Wo=`=Bk6b) zIY&J85lcBNFPlTQf8>B*6mZMuO#j)-c_O&mZ%a5NLaJ{Z7mkw#@lnM*#)sQU4%U)= z9?fN$24H#<6LbQ|5x=EAUc^s8k_E>788d{m8A=f!@+3{Q$?4A1rbL|jUm*88Gos{~ z-PWe>(^v5h`e7p48csD>bCNlBPPR&+6qMGO03!@yZj|Ebf^W?S(UN}X{X$1-U|_%i zjekPw(SV@Ba)+m<=cBWqPY}&-T$$kvX3>(Ci9WuL+huUw3jEK;hth6t`NZC6?pWY* z1PbI}LO6o&uO~zO{dtfniK>KeJqLCzA)y|Y{4AT|Ae=4P zrVEQ9G8u4K>V4_8>(_Znok=FyJ<@zm_#7qvs}hB8@Lr2BWD!v}SF^Xts@j!hPM8J{{I?yR1m8%37 zm1Yb3P)+M5gUvgV7fnQ0RaO$ixdB976aKQE%TSh=0&5M0lJ*BI|MN8epWD^rGtMKf z{;*0`yjcAugf8UA@~rzZ%29bV*^fI#voc&Fit&#Qwg- zWdi%oj8krcXxhmFkj@$&p2CEl7@X%{3DZuOnJGZz6EKt#^a=RUR&Q+o_RS^xOxN|% z-9r*qz<;8+KiPaCf;c2hFW`;0hL3NL0|j-jEl=y4q2%cR@aw09pPu!>clBpgoSCL? z#1lOZ23qY=DM|b@{yUpnv0uTC#rC~VQApxoC4qNW85eQ8DIx;NeUXFo!pU_W+*ev*EpE z8wWultpqm>VDp>2?uT)Si&RhQ>+3I7Gn^4?6TvkH3Y^Nzx2Egnw%KHC;2XuO^O%?x za(pEA(_AWhiQxdzy=q0@@+ov@R7rMe$#pDJR8;5B>g?=1hy>rfF>Tr*51DwnPy=>P zG{_%t8(G|J$H&KKh^7FtftiRZu#5^@Nanx3)M@(B&1X}3d(2Lg^1{HTo?94>16K$y za*4W{XhtFCoV1hS7f>+W=2GoHH9!a~7=oEz(G20#X2Vi;igaw%+wq|uelpym&#C*~ zFgoG;`trvuDZRzKOj!l9tS-?eM=rAbTa@^lGR3$bT2N9B*EMYhwc8lYLjwIT3jz%B9fBW+3_UkN9 zA*|QVp}+8rwvC>c?`UCRM?VB&K)QR}jaX{BS!c48#u7R{7E)Mjw*7Djs>hl}<+t`6 zavPRmSJmXBRXk*qPM}Oe_KDY(fD79Z+nM2u9v*zi(It)srT@I<4V+4z$2hDjpe!Vu z=w(FK0jPdMP^2qEsYpbA_+t3D<|i8zN`XO2*s>rl>I5%V=YLv&DYA%4cb%Kz7b57g z*(I3eKg1Nj+U92yuo{!{hPGbu2x4LPy?8ZfxNnUG4EK(}RY0%rhFRYEKg3wAZ{t%j zM^di^F&)C-CggNSHn(v@HbgouXL@R1uDynKr&<3)|KQ*U5@Zs}O~`^9(-zACF)_7j<_zpaYf|LZHKeAd zFk;5m9NPI|Xk^ST-~2r*u7cPY>$-g2OY0$UCpsEBU}N9InE{8n74X;!B?haU4?&b} z6y3Qqx8rh(-hne@=H9=hO&-oz!VXE}GNRKT?O3Q3lO8VRT>GvR$tFqCT*#GOCRdh~ z8t1?S_wX`oa2?@@#Fji+#%8~La1KQNR090nFEZArfSg&8$c58+a#^yr{Eyf6<0bv= zu^AES{CzR!=_+u$><@1ELrMnA(1R)y=mmcgVES2=3Vs6%QJB=*+Y;#e(6Y7x)&9lH zm!j@Fw{BHAwD!gw35QpL{w#SL^zyYyg(r3K%wPJM|9O!Acu&PI9hvugLaOpo}5p#((RP_DjQ{7lKWewd}0)F(&Aw)&aE z3;hMat`01&wEE*XSO|X2<#1|7qmmHe$vPe$G7z19WSq>g`mJa_rWb}S0|a;!_7*ZOQ*BXsU>TCxHV9DuDyaDmu&rC;tK%PHa~ z{ymD3P4bU_ihu>8z3!sv#c_d^*c@Oh7_Z7l3x@0dhGjB^H%RMtp!u%-VfG~(^*snb zRfr@vHa!WMx+#~TFfBntG<^rmHf#`Q98XZIe-3{B<>H);Q^nGs>j2mEcTaJYR8(-@ zc)@^?8d-nfnzm)L2D}xeCnd7vP_;7ZR9>RNRB%ngSkL*~lI!|&2d@x6gZpN;W-^!t zOJMtMgaba670IU}FMi#wuXFP!rE|Fe7RI%l_{$#Ag{W4@6eMCL|>j#6uzuLZk z-8Iv8dHmkH1{$1XaTn4Ue$-4hKox8);DLG#=YSvRqSTs$GE6_K?X%YliA)vUmc>I7 z6*obk{Y?+}{|)FAMzZMq{+vulCE&jkNI=Ugf!FrN(L9{%cM&b>4W`l z25BP!?q9F+@c0b{gv6}CHLO`)9%Er4+fPS1J|_k|fEp|FPM{7Rz*{iW(}K+5OLtA# zS}Nf)13j|1ZDw&49m#eu`V(I-Bfd}narghUHl7opGuK&u|MX|Y>EYyY9jnQNzoGkb zNeQvbdrahfq(}QILf8iY(pp#&kqq+I5ri8u%L6SPWfEdB7za!#z|I1VO=vKx-xSt3 zk-8pp@*dopS(ReQjt2d{jrXUy>t_=SktCA(ju<#mWuafZhYna6l_!wzPxYSC^;L}b z(JTht#UR+3`1wPD6Md*ohuc!!bCjTeI!SAbF}(#Os8W{|od5I?{`Q>yR6kWt6YY7fB2KQCt9NG+bk`r z0fRtl*=HxR^^yl4SuP~w`ReWo3nINu+LP!>$>X`D&jnxV8I&k++YyqL%gWpBGQB94 zNP}18^84#K@D=;j8p*ngS(9=jJWki1Nh# zZtL+e+h}Q&-Do7%nlckPFZz{@d9p~s`3+@ev`4;%lW_N4+p8-?d>aYJtY-2D7ecpZ z&wHkN;%y?uuJIe)K~EsF2MNR-w{<$WFW+%g;z4uExgR;)Ouo{WJYvo7kJyxSd=7vF zndpf~0Q!No7e&2bw{d^q7J^bj8)+GM3P#AA;h6{-k~P!HxAs2Ck7i_y z&UBFpw>W!x(dllmhG{M7^{LL`u!axO7bpH%3u7;OjB%S0VYcjd5JS~qN8;W>Ge!`v zcu^jtH%=i{>>!vck)oAfw5B{g=@l3MCl|mNwZ;FubxG|ACC1Z|xpPYYWA0U94Q@`y zbx!^C#KXe%41mXkL2yXZJcyMO4X-=PBSL$5+Wx@Dq&_DeNu@9&yORT^SM!LJ3P3ai z;q&ElQ!%SKGFKSz>6JxoQyTUG!ae^2ndlQ(-oC?N)AYq2Uc3(3rDACU%wPC3@3gCNH;g|EvaJ7I;0P>AnB$a6LoC!oI@OxPizjp^UmHeOGoO9 zYM6uAQfT1doKPb$^oV&TF_!7<6)ftCY;~3CoU?5;9mf*_E!Q+NWl41HOTHY5CCJrn zUwMg*5kZp|rQf5Rlf+XARS9gR9ncd36D2lp?c{02w!8BP*&ybDV{_Ns+n!#!C13%~?c zlLFSy4~7cs%9Sf)LJ+%ugh`3K*m!dB+;heLz>A_urHvGJ1qd`MI4+G{SrDsIuQ>2Ed-N|<3w*=b*$ zRbeCc7HkyaZSy3t=+pfpkCYjSn+fRwqtT(!Oq>s|1C9o!yJ+dsuIjNbVth?~16tB_ ze>>y<;n-V3<~bg>T7P+ZcV+G7fyRpPCqv`4Ftk`bpfHRnD-c^bGiL?+`%^@7;SZdK z%v(-S8%76!=#AmVqG?)}NL#!D^{XFMnsr8B44EBem6edfk1v)E&8NUkbg&j#&vm4l z>H$yi)uiOk%;sQ!cZxVH2ZD)Bjw(w-XzYk1)B)s%>8)$J9egQx%zZZeu|!`!eX#xN zKYyp!b24dXS<6T`W=2Fr)c4I>w$&d#5;+mP8M1{^(~cz^|JSi(WSzg@LTk@L6k8k6 z$lw^VTlMs)$Brx{fteiId@etaxP)R&IX7&F2JDR?V zB!a1mX5QX6eT*$%Z{1c%hX{7bG34S!CW0^A%`|jnkR%oB{-(9QXCexTtQ@7)qnxME zJH|3nU0q$%ci~k`3)qu+Z_bRG&(L%jzjC~pO>o-Y`IEjUaaF`TGjQu<6LY!+*GH6K zflYhS<*G{Ok$H0_M1`&D1b0?7(`WGhp&u<(X^DN=tSW(`8nVxWjv@KCmcRwCfF0$jGw*P7``lu7L_}1M@T3RJ) zL`S#DgLM;+?xqt@&a<*bEs;4CTQ^JI|I+ot%dUep^SEk_1EGH^pX-UGp`1%`ZoWERQ$a=Z)E>_ey{|9^AKDpNa&r+q5v5OHb24iN zK_+qx>O&g5Szo?XMvyZDYfip8Tz*Dp{w(@8EDM{s6P6c$Pe+uPJmFghAJr;zw0_kv znuqiCF$foT-?_GjRn8nY&Ne=&lvB?ntnuiXNdDIoAUe5=mC z@_>Pe%`*w+FmKyR&yczQ?(XF`-$FPUn4{WAN9&<} zTdT|ahcy7_xZt@3D8h+He?#skFCE*LqN855a~~0dAcbBfq~d`{8Y-X=(bjjyARMKc znA`ue$%n*#Gw-&xP3eoxOq^G)ned`mk5gO49DUgEUVZP(j3_~@83-(1Ho3Huz1@LT-J|Nf(80GuN z)OOP}i*(|$Z!DA(Bawi1k&KHP_2?vU?qm=$eU+rbyF+v!oOMzaQ)0e-J?; zz*aK83b*O2p^qF4L;*=ER@Ce3uqrKO%rY`G7#foVF8(!cXKWz^LNbAOdbY%pE14b&0QaXugxLnRS+~#3j_y3-*R|H z-;Y}k$95Y(&&x$Gz?V!dzxanjF!jLRqX+e&?-PS4P79B<#8)*|=`oxEPO#iry~_V1 z{ssToiYS-248(|@OZ-f%MQgs4aV>flRJ%GIBZ${3f@1K-ZlWU(i0-Y()1H}a{#o=a zrwIjZx6Xkd|G=Mz9s~C>F;P)(aW|hhAKz2h8=6CUBJY1x`F95TxeJ>V%jDENp~z|> zBkah)c}>QI(w#0}ttC1Fl+6)6=mrH26WlS-(`H824k!aiOuS}e`@Ohk_{MDBl=TKa z0Y)$&pXVrz%rYL)Z&FcSguzz^OaFv)=XLMJujOgPIl!VmdDX{kShO6!Dm8q|j@DR1 z_6-^NfZf|smh=Z;ZEvIx_hyBS1J_$p34Iw4 z#I`{2NYr^ztCl7~mDpKm;Qjo<|N2wW>SQgx+M+WSB0nc5B2b?pfx7egk?$X75B8v6 zlkQ7Vn?3&~nH-N-B=~6a=~WEh$aYrubtziE5vD_2FltWF&faW%1g>2j1KMCB(+$Ec zotmcy4s)Y|_(LeCPpkX&%Lx3-4v}TI>3tr=o=utSaz= z6Mq)=IJ4Wi>krR<*3j7(moU;(R{^Ulwxf6PMu$Q1Bt!k4Jj6b3Arblm-(PbA|5op; zzAf$Yd=*>5%>d${{a1LAGawszv`udh|Pdu;iyNZ|Is`~!4 z7MghiY;T0t#{#8$EffnvdigH#8y=4?ycmopu<35Q>?ZbO5S2F*djgyd{zl|%XhsOD zMVn%YZm9B%z!5wX1~#6o(2VbSsq}Rg7$1@+cRlS3yMzu|gh3Lal0(ZOm}mx34dE=; z-#dS-JB|i~{Z;0c+5MCkw&4N-|Geh@V+pP%>DLR#)^$IIJLNNyA{>z}1@i1;V0ZVw zFS#f!jBmZ_&D(j=yAU$=Fr#F)T#9Vzu&+j8GSTFGjJZe>;-m_f$!1ms*Glfycn>mh-4?9x$d;pgh0lRGs9I3G6DZJ zsvE~6WX|>a3MJO_wc;Q2q8*kDznuQhy0;OzAwxW5&FDLmwl~(p>Z{}>*(R;~@lIKp z<1x4hlet!Yx&_BLO>lF0#a9NiUfhT4Hm=@&Kbao0`I6^wpDmm)?(|i90K0$9r>Oa^6ov4e&0mZnRN(9pheWgc z+|fNVTPP7sc-R|un~Qv}KctVakl+Tz=_zQsQqUdBJ_rV^CZcb1_-Y2<-FO&LN*|U@ zkJQsv8pkz0@mhZ7wTu`T`Vttv^V^3SdD?BBG|-wolAx1$iIu`WEN<}Mk>H=upo@p_ z4JElH-&d7%C9`>RP7NWfK&z4o1o{}_^!3E~?Asj~*_#sY4UYhdp%jduIR?sRSZ-ic zJM)@kOf1B>>hWISe)F^vfq6Bms_Ph%8LY2!Z!fv0+PclWe&NQ$;LVZ|v=~>&I_&iS zb%oCk>t_bD@^kLedu5JCw1v@d>;T#4XnBvnkmqJ_VJ6(7oHJeT1{7~^eL;?pp6#1g zEtHp*p&``UQdG_#Bu14(T~++OzC9#Y1@Co^q|SeoM%F>^?Pm5aXL+t8F@^r}o*&!Z z&=a14S%EEBxW>e4hSB!=!gcXj_ud@sUvue67lnjUF~@=SdapQAj^b5mUA>+FxIIQH^Y}j_o2zg@9IRApT^)!fc0dIUJVWdo^yzYV%5V z4163?&$iAMZREM;8!$vJ$@UuN+|BIV5yu|7Yx{oP_m3Yv`e%_Q)vXpK%N(bXdLR9P zV)pg}yLpb{qkJ5E?z&`@d&6%FB-`9Di)6*3{S?J@u{yh;*v;obKsJLgX#Oqres>gU znPk|cIA`#Tt_3SUic{`In|%heU%rg>w41K<7>jvJZUf@Z;ziP)G#2Y51n05cM+Rfb z3-!HxuDqA%Y-MN=a-KYPRatRI5lExvV0JNw)RiS;s2L*meN+NMZJWS|QG;l=wUdu; zMyD0R&=-1vrA^#YbN2I2$8rCBdbHq@K^ml@JMfe@KtTC9jvpg5&Y44kerJ;NXtQsW zxi`IjNVPN!UgmkJG{AxOPv>o`-_d!84F~A&nyhej?#e*_*rT{6Nw1ZrDKiZ!%^(!4 zTZWh5_dIyoCksXXR(j;<4xS~Cy`%=!$e2Dg66hcVsI0!~wU|WmqW58!)FE|Lr!^Rb zr=v-{+Wd3+jc3t8x~9ZP3Il8|ybRxVuH`*Wl9b}}VW2{4VwiW+_%e!$tgQSDMst&; z7V#RVD(7u~w(mjR--(`_r#N`(@%vmZuB!Wm()CUkaez&-MQ?QQ6j~!eFYoNA0t-E0ya$IgXE~~H3!x)X zvd=o(XU%M-&+>eN5<~awo>$+GWa&~C_#nN6=*0jT{s)XW((-S6Qi zl2bCF` zSP)?H;{@lj zTXCF2<+Ug67EFH8J)}fSNas9O2p`~KX)x1VX&2Ln6I}H1O zdG!z0pWyZ4K=T@KN4 zWVRfsx?M6YnE2Ps@&ze2A2kV-ezzcy_9DZqs6cR*ik0Zl-Gzoe$`4Fb9p3{b&jAMbdI_~E9*D7Pnxf47nKGIn$-x^Cf5#WYL19C_rA_s@Iq%re%s!~ zNgC$OK0{{;ELHL%^PFi*s9AP*r9?lQjGH%hW}JPw$Sk#PXKiOaSA1Q`+}$@n-#Pc{ zkz4cl1-{N1CT~2)N!3%YwdcotUO7e2T$w)5pEF=};ge7T*8>wOf&udBV`^%XZEuq2 z+*l>Rkmlq7@_@Dmzrt+;7=ZSyyC{9 z3cXXiUX5E>w%E^WT-3y^7X16KL)4F-`m>PO^hD?0{O^CUI<^pvU!COBv1u4!O-94p zrV{j_yEefLImv<7nn&V|8Cckw$gmj7=!X!U*EUF8X#kKO*>se42t9|5zzHHa7;lEp zqPdjwWa=U@0XO>F0Rt!>s0TOX89;_l>7VN;LxXg|eq_tyuD6G|Q;hhf`W2&B@a1HD zJTWe6Y^ExxlCqwf+4v~Etaq?WufDgSvt74ua?6FrO$k?RrY27|2y11UgyxODUowtZ z*5}}}ZCCj#iLXsf-^NAFjh3#Na@?hray)vX=gk%c&o24EQbTHr#g&vh%XX;cA9AE- z8J<(n`9g91M&-|N?X(ZtPuF)?=hIj2ni@gcoL1LcL2C;M6j-MuS2 z65P_qhTE2oG<+%A(ljdK{`O(h;O`QHZgDDo;V+hp3e}{|R(*PSov-(f&KV?L%r@54i1;-q1(pUt|&jx^9e)dRgi0Uj<&PSIgPbL1wRQ)BV>x^ z=*stvAbm|ojTlPqjMS|8s@ltu5HvOnVd$IRZ2fee+CvqA0w3>}nTF$w zCBC)rDYy&H+chr3*~Gn0YNTcz*W_pSrh_a%RL2|!49mDyyK5FJ(`v(h`z@@~^Xi2L zzt-Gd-MBE-X5E~2$2jHeSKN;7dS56yU(1U!?25%k8sB$bPCggH9k8MGgGC6fkTU;t zLEN#7sPu=_%1Q0fm}b}R(AxYrlg@XPJH^|sOohHrbz7-5YZuKnd$Sr*eNOe>~&H6BE%`XM-qw)Ii!{#O3@k`|}~?sj-)@ zT)SNy{Vf9vz#bK5Rszw<<@O>Pj&?6{T9 zW9yvTE=9_0kg;}NJ=Q)W0*t2ta6_qvz9k*sKhERL09C3bK%Xr*>N+eo2qf#!^+i^q z%XTQv35}O%f4Oe8HH~eDIU^lx`e4$ac5h%n^Ol6prioe?L7 z$6pqam;cSnsMzn3_ufM?3H*@fi?Jh0HUK!Ds@cIeJ_BJ^NGB(a0D)kPoB}{F&w2S$ z-~Bwd+lFEM(g2RU&0Lq)GIKOw;k`$#4OadsX#C|!;@&geCwlaXl;5t-?IuSW8J$Nw zB8NeA-mh{Fk5LnWrT59)4QY4o+_`w=^4<@u;Zmpg_$N0Q=h}>x)~4^}>}l%d>8Z~; z*VXEF^xk8dZBRw(Y2}@1dQ*2!45|xnWNfr*$=LBRx)Blku85mhYY(1>UUu(ZGo2*W z*S0|SI~A}09S;AeJ$_vkxP(ETZ2;GI41=BHwP_!aK^83v#@OE)_@KZcsABEeH};~u z{CDU1o7qF9w?3v3M?Qrx$sOIh1sA$utVx>pLN8J$LiR%im(v2X05aeycriEq_T*Bd zJI7=0*vQKk7m25;^|-gE?x$rRxNBb5H$|h5>@j|FsOt6(d;M3Q_6B8%mP23kUszd> zztWMQIUS1l=a@)O{;4RhbrFEc)&wB9XHp<*2z~;JcqlP0R#NQO|-g_1s z|ELYB9!`26fbYqJ6_`Eky<>0b3JTD$Q><_`Kb@-rB zc8c1wEBAP~!g!OKfDF(1Jka5 zg@uInO`s%Hu;5%x{GAoX4u3B3$(UKpsrNK@2Q>wtarh_D}l~Ck1kfIKis0;6UOcU>4dNn-M zxhdL5&s=?l{}c=8(8-*XMGXL9OzJ$ zp)g$Zg?ad6=i&OOnkk0iAR(Ps&znDmsU|3iX2!dDQCE(BIpRE4X4JfCUYux}Lz1gd z`!hd&{!3}aJKdjjAjU=BX7rxfQN_THh)!q4viC=kSvOaB6q8FwncoRf5VVD1@*QV8iEcs3At0G0cUS-|JASK#U_K2g=DVNxB||7!ku7U z5gs2L1U&>od>EqMD~KrcHB+Q+r{PIZO=3b%fruGdlc*zcTX}W+rXI1RROOXYPbYOp zGKE@c{LQEMY3?U1H6|D`N8Ew=_U8X)^88tjWV$I}&>C96fp6 zlZC%6fSp%W6SKsbkNQ~DhR<@z(5cH9i@8D_O$Y#mx5l?{RKX;T7V6NFa&_le31b@C zXFDF6ssa8_s7#C)mQyRe+I_-%yBtN#xN=WRn%RhmR*IWTs`k>f~#ncnL~MzkB&jzay!-6W+J+&^;cH9MVairvgk4GxYdHC zGYfMsNthd)Ej{!j%&nQ`rQqn&P9Dek7WGgQT)hMo)kjv8$vCsfE}O0-sy3muWY6D2 z%}hcEOz?!Jg40Kse}cgEW`#4BuLcS)-kpb|xFb}%I9~5``*s!ro)guyJUC7RH{I3) zCxmfjHpxXhEC65uM6g0XJsr9Z_3AjioL7?)Q~cC?Tgv6UNu4;I2WlmPzq<@B9@j7R z5veHT{;l`YZpBbKx+V%E$!A$XJiE(}*Yy_&H2Lnx+?!ru|^kA!!MzL%wO zG{ZhG1E=9L9c{LG!0S$|k(aG2gxA07I0hOwXKy|J7ES-F3emoAg-y$duispQx`$tO zA#PSj$Ldfr<{FH+fwsmzlMt|6nX#!ZH+#SJ=!NxM=51(8KMU4t-0P#OU!myK(orE8V#qefZi+_4qv0dv4>t6@w%d~4%lf}xU*sz8=RvMg0!$#_?9d|+O7fyBm`8??HJ&;;tESEPhq!R3&A zS!-Lv=>aSsmZ`5e?QOTzNu|${ zfj_P1`2Gy>C#LETX{AdPtjB||hM%koDz~nyKqA23S65XUBx1#tX_hlv^p)(IhHWsCi9KQJJq)AOdJIpq zf=T0}5dUlOCU`BDHoif~Do&6RXkynkhf(dG@y1ypgClp6Rja3}Z0Ac-omSd5b59v% z_BUC^T-x5eI8i&R*s%{O{ajx4G0Rs5l)k{048!r85q0D0#Z~5QpC_6{6WzMRL%tNN zj}C;@;aA%B&O5@GSuj30ZcnA28_BW{Ew$^t+j8>hGXI&DwkpVs*oIyyiTqg87vl;+ zf7gkisGX?`XVGlMn6P*-8&)O7eM9H6neQ;DAn^!(r`OwV4!hGf+~xpvnp-M{{Z{6G zeK&U`)uv;Y&{fX0HJJ8%W&1lO&ev|02l%s@m%Ir3GNmxpKd_eZQXLGL(|GfOwrX^w zc7;>VFV$;|&y))j?~igps{X z7raAMR%c4gHfU$PMg^U}Kg@Nwp_l+G?H!6=<}PZQERfg=6A7Xf9Y3;h9JtI0oAK_t zq;Rg+i5!h+Xq>cZk=_1+P;|sq6SW&aqhAzxD`1B2T)NPwFecp1bpHxFl@fvld#paV znQ39;o!=e)*i5>E4|pPKGT?D_J4uk`q7@SP`fi0#@tTBt2|Q!yf*wQps=SkDr_MR5 zDDykAA&5Mr`ji{IFK#iW#zi8pekE?#ZGfU7mF=+P8*oVS1aviDxWR~rZc49fN(ru2 zhlH|jT-R&6GSc^Gae9c>p!iFRaHoW3)A5-ptL4_yF=psFb_80o7Gr!huW<*Sc*3}% z#gEgD=L$XA99tM;IS-+JO~s1!&K*F3f_AEjbNh>u5^I@0M|bvF;es#bTIwM&oB;Y_ zCsU8H4jHK7Vq`hMUp_$`GZlh2uW7y7%~e(nuVT(}w~vuNnj{T`yf;PC^-1VK2>}=% z72EgMGCcoArfCt5Q&srA>V?M6TH{T=TN7%kHLF{wn$@HH^{xf8Y4IwvN5n<@wx<7E z>_Q$VXG9pzR8V4;%f!xd@S?hAEJ|3m14BkK={vD5wDqw$(|bLBo1Y8=l-A)EXRB}{ zUM+E^T#N%1gTDn8{g_bOS39z&mhvS~=qbc3p(hy@qRp?wdxZ5IUj%SZb6!F$b6!Bh z^ifa}o>Ot)yE&m%$tJ_2P2#)l52*(taa$W(W9K?yvr%^Y+^qHjAFJoK{6bHh&26JO&z zOfVP*#MglPZ%UND&EQaf+^2z&Q+r{?)!V1EO|+ViWwN;j<-$eC#j&z(peSH*a2h3W z?Ax*h$Dp~O)u%k&dPJKN0YqiW#?^fh{bytTFX_hWDGOiU+6{eD^RbBMW?$U)?T(0$ zK2BwJ6>d~nO)t6UimZ_9;Pceb*TwR!_8fk<&5qwCvtEdCBdKJln<((hN(_(w9Iv9+ zCb0Oz1D7j=$4#upmnm1;O0BntnVMAHO7%l3D1u~b4hJo{a8apbxterE4Ci`HcCqlF zx6sRHVvtb1gWKk{Ngj>fjr&)dfDIrrxk}sDsC9i)y5D=dU37hjFj-qz%8z=)imP}Y z1vRc2-(rtbVRSo}#!(Gv&nvf8qr~1v18<(fQWJ@Id6+k=`RdWJ_R$}l;tU}CP4a9_ zVLL~5X)B28M^vP5I{BQT{2@;z;rAK_=`8M38P)A45%MBa&~+)iz=`TzN_srnMk=6M z1PGfSExb>&2p2;CO5HF40xOZ?3mUvW3jlHsZ~c=z*R@O zu7gE)wi+tNzSxWjEonq}&e$QqA(o}{*o9?aZV;2@0{#Hqq@FFduvWV-GpK(+=B`s7 z@nH7eV`0nqu14{r*_#qxj@PR<4t1TooYdn2sL7Y>WZik=qfRW(;zD27$yW@s_h_2k zQE6oh1l1(nvinX_GVT0MweB?Us95F-f4|*3Mw3`8?02se8l~<(U84^wzvYu}=b72) z7t2WK>>4cJQky?9W$&^+@sUk)6sOYb*tOdkv^FaGspf(At#)_cyjJgnbxUTqN*nyX zZlQ@aWvz4%g;!vR@f|oP75Q3GEy31gA^2q5YF<_lDqdH=Pw14XVFpG@R7{NHo|8!< zLF#<%p%en3={nN_V=X*wiZrBYZ(*5qh9)EAYwE3;*TudzOGoGll&vok+ldYftsw#9 z_0=!b{rLp)7%_DE1k|7D;1xA6(h159ASODjL!ZfkTB7Cr@{AhKC9nFaiGFt~EOUG8 z`QDTpCEUj~SW$Y(*e9*eZ>(})kEG*V)p-gknseOu=hQ^DRD9Fj&@dn%?F4VN(*hY@ zR6xBef^7HOR+3{o!8Gw+1b9xG8ldLrglJ)EFPHxqI5t=a&=?7|Jlp}Sqb;mk74VF=H7Ue^b)U6t>oT`i4yv?+T&PRR9dBGjTt9NW($m{o8A0N|9H zYbLlK-12MHA0)o^9|1C*J;{em3u5+=iJ7Dt73O&jqsJ;3c0 z+i|w$lDBCWG*%F_Up$f}c9Mq1)ruJX_?c6)-I2YrTdhgX@6E!8;g9p;$ zA8N98CnRw;!^N{={W?iVs))KdU1Y>c>DMZ5R6nEmC|eG7wBHGrh$xRRNazwu5xpbf zVtPLUnP*@h7Sy7CwL(Kn&e=}0>~#vk&K@eL(Nvz@&yJG+ikv*r?WfRk4PtyfSBseo zP=*ZMl;1&BMLIWmg_axk-$t8 zvOL8h<=xI~ApAdUEyHjJqzR$0-+EBMLMgPkw?G zu|R`S;-#eXYC~J!dget(HYACCz@Ndur!Vp+EcoNd(+OlFA^U~MW;BghU^QUnSPb=w zuVV=`FZ`33SzwX$S;leVD1Y_1rBRnPqo#2H}u1LMUJ!Wdea|)lBk}*U{q;q&9yQdtJ8lb!O;w zrkGWja?677;ynRbDThG#(uMdh1lM5Pjma3XA>dVxzIeneaB)@wmtx7)yBOl&GClc{ zndC-PFi3-V&knm5aaF$(;-wwnI6Nx163cIzD9A4qDta3R|gBm5ro%mbF*rQ#tNh zD(6(DgnCHyEA+nY1qeQ@Tl4UQV9)bB}w{#g8<$kOxLC1qb?@so?g14ac zmP7piEO_VHQGKV`iQ6RRX)d7yv;AT*UE<>B=IPzvEH8y_D<%@%_rbG_A1UoREV3W* znF&>UE@JpqOu_iv7~>Q)fIq?BAh1_x>5FXB&dgiCel+6i2Fx;UNqw%S{-wr#6|qucn)&!g8z*1A(AIXyZA zZL30B57&i&3`xjM}#sFbkor_^u4^xE`VTmPn3z$l7o19aaL?^C3X_& zof$+aDcpJbC=*I*0=Wjp8f{}ibNH88_ovLvh0^JpqBh^TeHQQdYz9zn7zQnlSr$*Z z!&^t6=}SXlUVil13X8FMmay0hgNqS|>6O_V-H42AoOW-nRS=qD`!sc`>+Q;)Q)Q9o;%t}qHKkt>5 ze}s#=uw59iKDuSEzHgO_&D+0aA-#YAIhR`Em(C_@vNID+@1ifg&7f*{LztDP2pOn~ z&r&&W6k02-_S7l?`d{#~30={ryM$UjQc$7s>FHIwBAc>!pnJ(*(q=@GIy03Afa=Ka zJ#EWxOLVnpfI7mLbcu{|hssL%sy) zFdQz34m+bCWJJd54sD1oq27l_46ipAcw8rRq>sP&L`~5DfRXgJZuvS^YZvsKj8+VK zKrVL@L8`jVk-(LC1pmGAM!&UFJ^zu9Dr@?r?Nl;2dQFeL>b16P=(#Tv^t_wtSOKgg z>4>Mqj;GCGlFrtQwz@-VhGhg7sd|8#>&7K;Kj~cS1(Wd6d{yLM`M-<8f4$GJ`MtD$ zRo$G7nn8I=q;;gq39c&HjW2C?hxO9cJ1~zcLcZ&`IsxCb8ns&z^YMqf+_yLPz-@M~ zP5Azd_fJVzKRxt#P{nFg*TvggoE^M_W?D@&Y^#}Fvq(ZHe5!*p64($rGdRZVVR zq0S^#TWDXphM%vrdxlyZtO3&3fG0J~*b%8qsd3xKEJBp>;_@f*#VZ$&8|oT_2N05g z7z`ciS3W#`byTw6XyhT8?>RCr-`qRsIOJ-vWTfEQTLl#Ou3u0XH*6l0+Xmd;GdD^U z_0aT^2D^u$`t}XdaLlP|d&~P>IffqDb6_i)HZY{&CyBpCfiJpgt@GzLP~DY$LdWK! z)Bh?}OC%*Fa%Xp0(Pd<#k~f2x^G0=1un!&5U$PiF9+gZ(RC|h1t4*JOXnlGIPOAmi zC|OdlAH$iX_HjVJ{&ol+UFP&EsG@u+bZFaJXUZz*T1fyBc>;K)9WoQRYMJ;~L7inO zoAiDZn0ddI*>hf(pKk5d08-m|=-pvcOv9?MSJ20buds10<@1lx*>Y{i6$FN$ZKDiu zx=(hD+kg{scf4NU)R)#{`G$Nt$?47}&-G;MTV?Ae5S#Xe`M0D(%^mZC1oHEdjDn%x zFPnM$;L`4Cm9S6W#fPa?avDuHrMeu~GwAJh8Uv*3@`Xd!BO4}Q#kO6c{ea$<=mU$sw0)A=sBX~UX@B|@*F*5Hc_1zu_lQw|AzP; zS&+Xoil$-iB)N3^pkF>AD(nn(h*zT}ST{%XSp$lkz#;5dZU)=^|c>26AhVGC=zabEOWUR#S` z4yJHUH6Kh*No3%fV&0q?2lgwO-8MiA zq_-qUb2m$Pdd4cqt4E7ZM76y8wu`~j?%+biMBk2{iO8Xp&1JFP;717l8)~~pq-H~O zvq`RHs0q;@JPE0rc|SjgJVs%eLt5mV%N<`LdA}XtpA&O=nypqTUvf4)EHp7=R+_pPbGKzAp#AvhE%xIcfmd;LJ ze7{MT-=`RZA=Bj)Q``hrwW>eYGSpx7 zo|CGQ|4k%<$l-N?#o%Ipgd9BAkT<=)yfmwoCjSy2Y?g3QN9H{*RRABT+lEVl_ncmD z{wf&y#I=dLzSHX=dweBbto7QMF=Qzs~MHWp)WM#t^T1*T?sCr_exF-TMcQzx=h9 z{o4u*EJm65Q#0fP za18#V{`l4=NW~?c$WHuNfGy+{ud};EOSa6EYi6Kv$^E+7O-Rxx=;t}>$3WnVJTtBv z#BP?+B@~X}=3LJGw9-+unFY$UzUiJlqL`?Q4Hv%oRzri_bN}OC6`OpjchO{rCT|O*=6|O>%lP)A4Yt-lo)wr~yRd1ZPWxTi$v^rA019E} zzEJh{j6*rTrAL;;O3X?RmRcJ;#jl+H;jg*ks}cw(efUe1xvbfzbc^=t!W7@~!1bmD zTnM|*?Kyg)0PB^0Nnu@kZ{?7Zm$70?E2wK-n+m%XC1CGl->}nf=yS%IF=9}QRN61v zytz<(BF$iEpW$%6tAjb?YEZ%&*eBHwtbZyE;}sdYyjq+0@{w(b*LvQ1UiFT6gObs2 zn-nvtK-S~m)`9ykOUkZjuA{9{ekYmQ;2e~@tx}q!r}=-c_81ay(apbSTkbWh2iX+6 zirB=5NJ==24R;$){RL>TPeZiJ{<2kQ63o@#Uc=O%-@e7osI#zPS%pOn_AvR!y9G=Y z1g<$tf6h-b^idz1JVJY7#@7?TBcaN)TFcRAH5}}AB0KdZkt6=Oo1eS^g&fI3!_0Pj zUa`<4s;e4N)x_4{Yj^&l+UG|-q<;GIc!A7c>#{?})RmRVRcy$>vPGI#eOYub%|#3& zuBYS3PTR_RkTT>Uh9;w=El5Wjl?gwEJgSz2S9!-3?$@FMyU4=)8gl zDK|ZGmGsK5OT3;eRxikZeU`YK-puEE)1oscg>wy8R}PijNQk2Ah;G>pw`yjhi-=4` z!SQ3>I;QxfqAP0_51Uh&Rr)3l|x>;?< zG~Kkb)eL7ieWt%c(`Ih4xXI6XWQ-T>R`+IFUWiM&PBrW5)JVI?Uhz6rtK9_hJ*e`P zmn#}+%|&Vr%sO1X6ZpZ@O_iYHJPZD0`MXQ_Ye}}4WJP-fs+o+kviEL4#1LyTXzrLD z?}iTw*$>P#wo6QqGM&Zbc8l^H>Ljo5mJgu2hYWBIrW#Mt?gJXlqVx1@#da3$5=U9M ztKC#q<{3X9b|%Jnk=Dk&PmW12LB$vCCYHXpIMaY|?A|Fg?MqS;o_;U6OsB45s?O~= zp_?97YH>CNfs_%mMT#3g-1WsnjAma9y#Vh8tq0RhDb9UG9SuK4Ldp-9*&AvSZ>Sb9LFt1*W zs%GaMCsW?$Q}@=*7H0VH1a@ng$uMD#N#I6pwzQK33E%QkIhjgQLQ{HgS*qK|9JoVu zR$r+om=u7XrW06^h#EOx$(dY3sCLHqTPxj~L^+#IKt(!Y@}|@D8>*e1gfkUiE-})dW^Ofj4ZxskBW4a*lCV3d!-f$^(od5nor+#{;URq*SAaQb~bjuG_;V8hRCSv&L&+bBTHU1XU`+L$+axZ z`Ys(QDH$+C7)(m(dpBgC=z6o7mmC@xu|6Dl=SirCa5`_at5{3K@V0HV+9SaNYDdzk zx^0N~@ClIx{`>-sv?=|#eRZ}^jdKM0onFs$>9m^#4Xb0*A(!d_2U$qelWqS%zklW7 z<7}Y?F19t+I@0j!V@gw_FwNFx$j*T?? zkrYeM0oVReL7Hm@-v?(jxmFa?so#(Cs(8IJ>B@%swW?Icn1GKt71w3Nc*JOu#aU|C zwpJ2h^*Yei5CRzUmW81W)8TdTQNSlW3lB(~M&3U|5g$idP82UT)jsR(7zzsG5U=)W z@FM58AJ9>5w~+{`Ey+9t=%eQ&n=y|>ROm;SX)F;BO7%B4Q<`=P-s~d0zK_l5k{r+P z<>=C<0rR~fmOpsDddE&dYC3{?{(->4svRJpg=*XqO-!6Oin!JZGShH8a{*|Z07s&w z@MXG=pNp69F08hQnn;_H!4SNE-@7I<1@(3ZQMCY!%b)oq#9qKHcq}*ueP-^X*t|O< z;{lxa5z4%Qn?n5eEr7=LA3fUHdSx2>+51$3A`W6j7j`Pj@}E2fqOLVN@wa5x6dCUYQwYY8r8MQGPRw9pn* z&J{L&-?yvJ5Clqwg6|%L22FP#K96#>BvFxfMlArbnu;>=$?U4yMzBu8wl|7mld`qWqP} zs%{bvW=F1UI@nLSY@P#u9YP)l6<3p3B7{^nL(X5r@=MlH^}b5-j2rYbcAOQ;4x>#3 z2|^U~rNgdbQ7oQCmD)$xj_#HI0||#D{cl#yOjnQAyny)8(KQzlqKrWhTJpfiV#uTZVv|?$i`u&E;lRonk{R45duIZ4 zoc^6@!PIZSGTHs^wS>F3@^QA=?vJ_n0$5C@YHDf>R*GZ!MgFWMX3ELV;a`ffP|qC$ zF9V6`gE?g?8a#*W%+A!QCjLG)QK`ldEFCbewE|J@-5xX5*OEEc=Ggmg1Af%6so z07!;*WiC?Rt!}S}*1nI)kHBR90FBuDO$YJBsrC#N1nOxJaDseUZL6WN+jBsdK)JnJP)%hLnPJvT&A~tRmCQq?NYDP3Cb)UrCnb* zjFr0=lPF#;K8?+5KRm>Se&|W0uSnA{@>(o({|3UVNKtt=Z7FDlw{CW$Q>Nb|I$3>TIRpqJ)95EoZ)ba$QD!~H z3twWyvb&orss}=X0?2h`=d~e2HcfA3|gSecI{cA!P^{_x0azsTQyN&0p75z2!dpc|$hF_~Xeh z=)P%mj{`a}3bY@AyrOl1<2(x6ab(pz)r3x%i~>iKZnF1ZAu2 zWP$PF%s*Btm@Zt%P)_f+y)pSq$Dh8-1A8zw?VQ*7^bcF06&M0t+<_ZK41V9%HA|@= zma_(8*x_dGo%t2u8&DGLm4|;kAS$0^z5^XDaNw)QsSY!5w?2)5ey4(n$rMiWJcm9F zoy=`;^KY;iq%KD%4b_>NJ+?CNS`4GKULccrncu^jU{$u673wF zHbmF);|FmIEw4m8)(aL`6?A5xEk^`AoLQxHI0cL&bT{C;&+w`2_TO#)0Ivb~z%^p} zGX^Y@uw?T*e!;BL&z*Jeq&u}B_TCu@IZhq#;40J@C>}QeTzeMw+(C1WH*MgYmWO{J zG^3-RjHD+gaGsIefqd^S|}74CR+QQy(0=NABRLfOc;0gApwH9smRyNjD)dG~Zhdq~K+4HZl^%mI**Xe#?3wFB z^@YN73@(zjVH19)T~%2JOFQ}9$qi!z@@-Wf!-_nEi^!Vj#KU)ln}$ppUCWN6iJg$x zF-Qjt0VA_-lzknTWUQf_K%M{8ld=WF=FeKBP4Aq?6{@VLwHY}ybb#PAO?d?*U=6q{ z$k8gqxyB3+*Uaazz>=4*@hiHJTR+5BfEq*X=0q4RJx@ei{S^@f`5DgmsABJ$)T9+@2=2JWc{#+CZXRuSywAtnlGf$`3;vKj-ld`$1u#j^%jz zlT+Xyuo!m+_QZSfMb_!Zs##VVdZvovz@Eo4|UBZ0KIwjCW1jEHoN~XEh(F9qH@bXxQ&>%lf*V!%#?o-miW+`ZZE6fi}wPSZS%z zd_J9lf%UzPmZo`S)^L{Pk_|FRfDLxNInUfJux>bPe_7`9K5++NUl0MGzdYN%H#{tB zpR2wZhuMXAUapphe;J5{JJTn{4Ofxs5~(yDkM=OW~(S4+?o*aLW$as0O;24G7fA!8LsY7Vk7f^Nrme zJ@Qa?pm*uC_j6en$eS70FgH=*jPsTGkegm*<0S@8hf;nC=mO$A#sJs-CRt%!z+>wj z-dAqj^Yvq<8@nnsfmO&Ntc011nw50Q1$hMj5+ALUK07ahe3%t58M6V=L3NHqzx!yb z3h**v%^zT#-v@^(2eYQm*=-IS@r(n#h=1xjHzaKJNkg8wyd(PKj$vUXABZF?0(!BhwNozZ&v7OI$VCla4 zuYiUxiFzZYwU`x6WmD(es9Flx96sd}KVnP>7@o2=dNPN;YN^qHc9!c%`NZ1)q}hC> zHcG4c8SNP8K;K!mg6BtX6T8car=;8QslrlHQvNURV@sEruM+0aV=~M{vsAPsc~i$D zrF7{gG+~N^Z;?xpyyb$**mC6sVC8+Sofi?t!P)e(g@>NU;jUJ4qb?=8%pj4hhpSpR z+8e+Xf~UIbMd9&n2dD=N^P8L1Sh-%{mUhv~dj=y&eT{90w(hm?)aoC~4nRb?z|yyW zDYVcvCU-Z+(1M-9WhG>*d|4r@={Ea5l0Cy1S9X>@)Darpf8KG~(UFTlAR0`BaH z=Q!r3!PH*B$qzI&D^ouCv>+eGmW|kwoSCTlCY@Ay^cawPd-lAKO(Gu{fKX&t=-zlQ zo(&0-@j~^#IeaI_dC{))lE_k8l;~&i+B=b9Vz_GkcrUu~4`(WmY!tR1WpJBetEcW)CRe=ubgL}weDZ&7va}fXa*?#f%hB*bS%z8 zq#{4;E*RL%D96`MT4*?rg-tge>>cZ!9pE-R%G6tL8HUTw$K!~oqY|n}5J(FILtVv) zwr4~J+3hF--i2n?amVv7xMHdGC0L?EO9ZaiH80)I66|oPkw#O1KxEmUx^$_7P;-wa zM=68&XQthyJ*fmhdy(5)rh+rTR2gJk22U=mRKe^P<@St0dO*Meap0N8hC>OIGaJwo zv;pNHdG4$6Z~}r_;4IX_MCF&YWw<`(xXy2q^d*Ipb3EtV&Q1S?8&e^_*H(?5D0L%g zE^~bjIxV3=E_y@^z3k(oGC{4r3~roo`QmxzYUd*PMU{tXR|IX-^)q z(4Eb|A$pqof+_jz{Xoadgt^paKJkkQ$)N~9OdHgKs@xuqqQXJvnZilDt<5L9vJmGgJ;q#=Qr|}|BuSpl@|3+%2=uB;Zav7uUxwdcQAqFA zvnUUZYO!PKMzNTti<<32yXOSmrvy~&glC1kypy{ruiR{;XFp6%{prL`0ELiZ(0b~sah;aum9td^S8qC zx^xG;t9A~-Rd!mObuV@AU2oj+1R|vV6QSM3|AzKVZ~pz~LI>&Aq<0$3zn^ej*Y+B? z6X67=0e8SL2e-`g`9E`00nvtp6ckt;V;IRhf16kxy$?lnjIZ3}p9HW^Pfq*l+qeeO z>)L)$dj?!eU;A%i+TS1e|5{5Ot%ob=gfdF}69t^WMmG_7WfyCA5Mod~U}GnN9f)X z`^O#+`7hkKG|sZlE7t61u{(?U7bd0oQSgIYu4nwufEYKzK=M@HDz9wzoiTj(_U+wu zm(zm(;==!G^fc1J2QKUD?l8(fPg0w1>|!F$^Fe|B-a=#-35E>=`#|j1T-(2u!T)aD zgk>@rrAz!*Up)K@ b&v*5+srlt;ef}W~@J~nEP^;psL&SdpSa?j) literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/LSR90_L.png b/docs/modules/path_planning/reeds_shepp_path/LSR90_L.png new file mode 100644 index 0000000000000000000000000000000000000000..58d381010d6c238c888955358135091b854a1b7d GIT binary patch literal 339492 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

@Q6f3gUaYZcM}|DLu7UKk3YXV9yJohIcF?>9 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

Wvq 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%0ATG& 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

Yl3EeZ$)B2qFWI*-()M2 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 O$=+7HRd~ZF;Qs+KXZODV literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png b/docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png new file mode 100644 index 0000000000000000000000000000000000000000..f2b38329da384dc354626ca26d0359b9bc64357f GIT binary patch literal 335979 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%0Ankp84zpbr} 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≥|Na_a{GOkbY!&F<0h%O#P-5XS7mC=Q)r!>& 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%0Aq2V#O6W@p;G&7~?R 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/L_RL.png b/docs/modules/path_planning/reeds_shepp_path/L_RL.png new file mode 100644 index 0000000000000000000000000000000000000000..ad58b8ffea2433525e814fe8bee58e985829f285 GIT binary patch literal 277432 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

Vpq5!XR+c>&PR&A3 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/L_RL_R.png b/docs/modules/path_planning/reeds_shepp_path/L_RL_R.png new file mode 100644 index 0000000000000000000000000000000000000000..db4aaf6af3dc475a847fb00d1ab1cd67c1818cef GIT binary patch literal 323010 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

0KPy4;#vL$j1(Lf^L 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R_L.png b/docs/modules/path_planning/reeds_shepp_path/L_R_L.png new file mode 100644 index 0000000000000000000000000000000000000000..0d3082aeaf30772b53243558556fa4940b390d8b GIT binary patch literal 271666 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 eaZ~BdH!@-Iy>!yjJ9D?ezti$()` + +Hence, we have: + +- :math:`u, t = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`v = φ - t` + + +2. **Left-Straight-Right** + +.. image:: LSR.png + +With followng notations: + +- :math:`∠MBD = t1` +- :math:`∠BDF = θ` +- :math:`BC = u1` + +We can deduce the following facts using geometry. + +- D is mid-point of BC and FG. +- :math:`t - v = φ` +- :math:`C(x + sin(φ), y - cos(φ))` +- :math:`A(0, 1)` +- :math:`u1, t1 = polar(vector)` +- :math:`\frac{u1^2}{4} = 1 + \frac{u^2}{4}` +- :math:`BF = 1` [Radius Of Curvature] +- :math:`FD = \frac{u}{2}` +- :math:`θ = arctan(\frac{BF}{FD})` +- :math:`t1 + θ = t` + +Hence, we have: + +- :math:`u1, t1 = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = \sqrt{u1^2 - 4}` +- :math:`θ = arctan(\frac{2}{u})` +- :math:`t = t1 + θ` +- :math:`v = t - φ` + +3. **LeftxRightxLeft** + +.. image:: L_R_L.png + +With followng notations: + +- :math:`∠CBD = ∠CDB = A` [BCD is an isoceles triangle] +- :math:`∠DBK = θ` +- :math:`BD = u1` + +We can deduce the following facts using geometry. + +- :math:`t + u + v = φ` +- :math:`D(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`A = arccos(\frac{BD/2}{CD})` +- :math:`u = (π - 2*A)` +- :math:`∠ABK = \frac{π}{2}` +- :math:`∠KBD = θ` +- :math:`t = ∠ABK + ∠KBD + ∠DBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`A = arccos(\frac{u1/2}{2})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`u = (π - 2*A)` +- :math:`v = (φ - t - u)` + +4. **LeftxRight-Left** + +.. image:: L_RL.png + +With followng notations: + +- :math:`∠CBD = ∠CDB = A` [BCD is an isoceles triangle] +- :math:`∠DBK = θ` +- :math:`BD = u1` + +We can deduce the following facts using geometry. + +- :math:`t + u - v = φ` +- :math:`D(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`A = arccos(\frac{BD/2}{CD})` +- :math:`u = (π - 2*A)` +- :math:`∠ABK = \frac{π}{2}` +- :math:`∠KBD = θ` +- :math:`t = ∠ABK + ∠KBD + ∠DBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`A = arccos(\frac{u1/2}{2})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`u = (π - 2*A)` +- :math:`v = (-φ + t + u)` + +5. **Left-RightxLeft** + +.. image:: LR_L.png + +With followng notations: + +- :math:`∠CBD = ∠CDB = A` [BCD is an isoceles triangle] +- :math:`∠DBK = θ` +- :math:`BD = u1` + +We can deduce the following facts using geometry. + +- :math:`t - u - v = φ` +- :math:`D(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BC = CD = 2` [2 * radius of curvature] +- :math:`cos(2π - u) = \frac{BC^2 + CD^2 - BD^2}{2 * BC * CD}` [Cosine Rule] +- :math:`\frac{sin(A)}{BC} = \frac{sin(u)}{u1}` [Sine Rule] +- :math:`∠ABK = \frac{π}{2}` +- :math:`∠KBD = θ` +- :math:`t = ∠ABK + ∠KBD - ∠DBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`u = arccos(1 - \frac{u1^2}{8})` +- :math:`A = arcsin(\frac{sin(u)}{u1}*2)` +- :math:`t = \frac{π}{2} + θ - A` +- :math:`v = (t - u - φ)` + +6. **Left-RightxLeft-Right** + +.. image:: LR_LR.png + +With followng notations: + +- :math:`∠CLG = ∠BCL = ∠CBG = ∠LGB = A = u` [BGCL is an isoceles trapezium] +- :math:`∠KBG = θ` +- :math:`BG = u1` + +We can deduce the following facts using geometry. + +- :math:`t - 2u + v = φ` +- :math:`G(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BC = CL = LG = 2` [2 * radius of curvature] +- :math:`CG^2 = CL^2 + LG^2 - 2*CL*LG*cos(A)` [Cosine rule in LGC] +- :math:`CG^2 = CL^2 + LG^2 - 2*CL*LG*cos(A)` [Cosine rule in LGC] +- From the previous two equations: :math:`A = arccos(\frac{u1 + 2}{4})` +- :math:`∠ABK = \frac{π}{2}` +- :math:`t = ∠ABK + ∠KBG + ∠GBC` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = arccos(\frac{u1 + 2}{4})` +- :math:`t = \frac{π}{2} + θ + u` +- :math:`v = (φ - t + 2u)` + +7. **LeftxRight-LeftxRight** + +.. image:: L_RL_R.png + +With followng notations: + +- :math:`∠GBC = A` [BGCL is an isoceles trapezium] +- :math:`∠KBG = θ` +- :math:`BG = u1` + +We can deduce the following facts using geometry. + +- :math:`t - v = φ` +- :math:`G(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BC = CL = LG = 2` [2 * radius of curvature] +- :math:`CD = 1` [radius of curvature] +- D is midpoint of BG +- :math:`BD = \frac{u1}{2}` +- :math:`cos(u) = \frac{BC^2 + CD^2 - BD^2}{2*BC*CD}` [Cosine rule in BCD] +- :math:`sin(A) = CD*\frac{sin(u)}{BD}` [Sine rule in BCD] +- :math:`∠ABK = \frac{π}{2}` +- :math:`t = ∠ABK + ∠KBG + ∠GBC` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = arccos(\frac{20 - u1^2}{16})` +- :math:`A = arcsin(2*\frac{sin(u)}{u1})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`v = (t - φ)` + + +8. **LeftxRight90-Straight-Left** + +.. image:: L_R90SL.png + +With followng notations: + +- :math:`∠FBM = A` [BGCL is an isoceles trapezium] +- :math:`∠KBF = θ` +- :math:`BF = u1` + +We can deduce the following facts using geometry. + +- :math:`t + \frac{π}{2} - v = φ` +- :math:`F(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BM = CB = 2` [2 * radius of curvature] +- :math:`MD = CD = 1` [CGDM is a rectangle] +- :math:`MC = GD = u` [CGDM is a rectangle] +- :math:`MF = MD + DF = 2` +- :math:`BM = \sqrt{BF^2 - MF^2}` [Pythagoras theorem on BFM] +- :math:`tan(A) = \frac{MF}{BM}` +- :math:`u = MC = BM - CB` +- :math:`t = ∠ABK + ∠KBF + ∠FBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`u = arccos(\sqrt{u1^2 - 4} - 2)` +- :math:`A = arctan(\frac{2}{\sqrt{u1^2 - 4}})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`v = (t - φ + \frac{π}{2})` + + +9. **Left-Straight-Right90xLeft** + +.. image:: LSR90_L.png + +With followng notations: + +- :math:`∠MBH = A` [BGCL is an isoceles trapezium] +- :math:`∠KBH = θ` +- :math:`BH = u1` + +We can deduce the following facts using geometry. + +- :math:`t - \frac{π}{2} - v = φ` +- :math:`H(x - sin(φ), y + cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`GH = 2` [2 * radius of curvature] +- :math:`CM = DG = 1` [CGDM is a rectangle] +- :math:`CD = MG = u` [CGDM is a rectangle] +- :math:`BM = BC + CM = 2` +- :math:`MH = \sqrt{BH^2 - BM^2}` [Pythagoras theorem on BHM] +- :math:`tan(A) = \frac{HM}{BM}` +- :math:`u = MC = BM - CB` +- :math:`t = ∠ABK + ∠KBH - ∠HBC` + +Hence, we have: + +- :math:`u1, θ = polar(x - sin(φ), y + cos(φ) - 1)` +- :math:`u = arccos(\sqrt{u1^2 - 4} - 2)` +- :math:`A = arctan(\frac{2}{\sqrt{u1^2 - 4}})` +- :math:`t = \frac{π}{2} + θ - A` +- :math:`v = (t - φ - \frac{π}{2})` + + +10. **LeftxRight90-Straight-Right** + +.. image:: L_R90SR.png + +With followng notations: + +- :math:`∠KBG = θ` +- :math:`BG = u1` + +We can deduce the following facts using geometry. + +- :math:`t - \frac{π}{2} - v = φ` +- :math:`G(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`BD = 2` [2 * radius of curvature] +- :math:`DG = EF = u` [DGFE is a rectangle] +- :math:`DG = BG - BD = 2` +- :math:`∠ABK = \frac{π}{2}` +- :math:`t = ∠ABK + ∠KBG` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = u1 - 2` +- :math:`t = \frac{π}{2} + θ` +- :math:`v = (t - φ - \frac{π}{2})` + + +11. **Left-Straight-Left90xRight** + +.. image:: LSL90xR.png + +With followng notations: + +- :math:`∠KBH = θ` +- :math:`BH = u1` + +We can deduce the following facts using geometry. + +- :math:`t + \frac{π}{2} + v = φ` +- :math:`H(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`GH = 2` [2 * radius of curvature] +- :math:`DC = BG = u` [DGBC is a rectangle] +- :math:`BG = BH - GH` +- :math:`∠ABC= ∠KBH` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = u1 - 2` +- :math:`t = θ` +- :math:`v = (φ - t - \frac{π}{2})` + + +12. **LeftxRight90-Straight-Left90xRight** + +.. image:: L_R90SL90_R.png + +With followng notations: + +- :math:`∠KBH = θ` +- :math:`∠HBM = A` +- :math:`BH = u1` + +We can deduce the following facts using geometry. + +- :math:`t - v = φ` +- :math:`H(x + sin(φ), y - cos(φ))` +- :math:`B(0, 1)` +- :math:`u1, θ = polar(vector)` +- :math:`GF = ED = 1` [radius of curvature] +- :math:`BD = GH = 2` [2 * radius of curvature] +- :math:`FN = GH = 2` [ENMD is a rectangle] +- :math:`NH = GF = 1` [FNHG is a rectangle] +- :math:`MN = ED = 1` [ENMD is a rectangle] +- :math:`DO = EF = u` [DOFE is a rectangle] +- :math:`MH = MN + NH = 2` +- :math:`BM = \sqrt{BH^2 - MH^2}` [Pythagoras theorem on BHM] +- :math:`DO = BM - BD - OM` +- :math:`tan(A) = \frac{MH}{BM}` +- :math:`∠ABC = ∠ABK + ∠KBH + ∠HBM` + +Hence, we have: + +- :math:`u1, θ = polar(x + sin(φ), y - cos(φ) - 1)` +- :math:`u = /sqrt{u1^2 - 4} - 4` +- :math:`A = arctan(\frac{2}{u1^2 - 4})` +- :math:`t = \frac{π}{2} + θ + A` +- :math:`v = (t - φ)` + + Ref: - `15.3.2 Reeds-Shepp diff --git a/tests/test_rrt_star_reeds_shepp.py b/tests/test_rrt_star_reeds_shepp.py index 20d4916f96..11157aa57a 100644 --- a/tests/test_rrt_star_reeds_shepp.py +++ b/tests/test_rrt_star_reeds_shepp.py @@ -32,16 +32,14 @@ def test2(): # + 0.00000000000001 for acceptable errors arising from the planning process assert m.math.dist(path[i][0:2], path[i+1][0:2]) < step_size + 0.00000000000001 -def test3(): +def test_too_big_step_size(): step_size = 20 rrt_star_reeds_shepp = m.RRTStarReedsShepp(start, goal, obstacleList, [-2.0, 15.0], max_iter=100, step_size=step_size) rrt_star_reeds_shepp.set_random_seed(seed=8) path = rrt_star_reeds_shepp.planning(animation=False) - for i in range(len(path)-1): - # + 0.00000000000001 for acceptable errors arising from the planning process - assert m.math.dist(path[i][0:2], path[i+1][0:2]) < step_size + 0.00000000000001 + assert path is None if __name__ == '__main__': From 9efd4c07a78b52a03c37c221055db1ddf4401667 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jan 2024 07:29:57 +0900 Subject: [PATCH 070/312] Bump numpy from 1.26.2 to 1.26.3 in /requirements (#964) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.2 to 1.26.3. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.2...v1.26.3) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8b3c4c1739..417ab84425 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.2 +numpy == 1.26.3 scipy == 1.11.4 matplotlib == 3.8.2 cvxpy == 1.4.1 From 1de7ac951041787d2a02053931ef9a618d1bf037 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jan 2024 21:23:11 +0900 Subject: [PATCH 071/312] Bump ruff from 0.1.9 to 0.1.11 in /requirements (#965) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.9 to 0.1.11. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.9...v0.1.11) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 417ab84425..172a88423e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.9 # For unit test +ruff == 0.1.11 # For unit test From f8515d109e38d4f9cfbc665fe57f4a13b715e86d Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 18 Jan 2024 23:14:51 +0900 Subject: [PATCH 072/312] Update doc_requirements.txt versions (#968) * Update doc_requirements.txt * Update doc_requirements.txt * Update doc_requirements.txt --- docs/doc_requirements.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/doc_requirements.txt b/docs/doc_requirements.txt index a8cd2bde40..b29f4ba289 100644 --- a/docs/doc_requirements.txt +++ b/docs/doc_requirements.txt @@ -1,6 +1,6 @@ -sphinx == 4.3.2 # For sphinx documentation -sphinx_rtd_theme == 1.0.0 -IPython == 8.10.0 # For sphinx documentation +sphinx == 7.2.6 # For sphinx documentation +sphinx_rtd_theme == 2.0.0 +IPython == 8.20.0 # For sphinx documentation sphinxcontrib-napoleon == 0.7 # For auto doc sphinx-copybutton -sphinx-rtd-dark-mode \ No newline at end of file +sphinx-rtd-dark-mode From 4fcab6aa578c60d4bc594e47671a140e450c7cda Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jan 2024 23:15:25 +0900 Subject: [PATCH 073/312] Bump ruff from 0.1.11 to 0.1.13 in /requirements (#967) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.11 to 0.1.13. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.11...v0.1.13) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 172a88423e..127b89682d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.11 # For unit test +ruff == 0.1.13 # For unit test From cfe1e3035746454adfc02f66c6190fe58bb7101e Mon Sep 17 00:00:00 2001 From: Ryohei Sasaki Date: Mon, 22 Jan 2024 22:02:22 +0900 Subject: [PATCH 074/312] Addition of velocity scale factor estimation to EKF (#937) * Addition of velocity scale factor estimation to EKF * Format * Add a scale factor motion model in the Jacobian function description * Fix Jacobian function description * New script: 'ekf_with_velocity_correction.py' * Add doc * Fix doc * Correct the parts where the first letter of the sentence is lowercase * Fix doc title * Fix script title * Do grouping * Fix wrong motion function in ekf doc * Update docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst --------- Co-authored-by: Atsushi Sakai --- .../ekf_with_velocity_correction.py | 198 ++++++++++++++++++ .../ekf_with_velocity_correction_1_0.png | Bin 0 -> 40148 bytes ...tended_kalman_filter_localization_main.rst | 105 ++++++++++ 3 files changed, 303 insertions(+) create mode 100644 Localization/extended_kalman_filter/ekf_with_velocity_correction.py create mode 100644 docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png diff --git a/Localization/extended_kalman_filter/ekf_with_velocity_correction.py b/Localization/extended_kalman_filter/ekf_with_velocity_correction.py new file mode 100644 index 0000000000..5dd97830fc --- /dev/null +++ b/Localization/extended_kalman_filter/ekf_with_velocity_correction.py @@ -0,0 +1,198 @@ +""" + +Extended kalman filter (EKF) localization with velocity correction sample + +author: Atsushi Sakai (@Atsushi_twi) +modified by: Ryohei Sasaki (@rsasaki0109) + +""" +import sys +import pathlib + +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) + +import math +import matplotlib.pyplot as plt +import numpy as np + +from utils.plot import plot_covariance_ellipse + +# Covariance for EKF simulation +Q = np.diag([ + 0.1, # variance of location on x-axis + 0.1, # variance of location on y-axis + np.deg2rad(1.0), # variance of yaw angle + 0.4, # variance of velocity + 0.1 # variance of scale factor +]) ** 2 # predict state covariance +R = np.diag([0.1, 0.1]) ** 2 # Observation x,y position covariance + +# Simulation parameter +INPUT_NOISE = np.diag([0.1, np.deg2rad(5.0)]) ** 2 +GPS_NOISE = np.diag([0.05, 0.05]) ** 2 + +DT = 0.1 # time tick [s] +SIM_TIME = 50.0 # simulation time [s] + +show_animation = True + + +def calc_input(): + v = 1.0 # [m/s] + yawrate = 0.1 # [rad/s] + u = np.array([[v], [yawrate]]) + return u + + +def observation(xTrue, xd, u): + xTrue = motion_model(xTrue, u) + + # add noise to gps x-y + z = observation_model(xTrue) + GPS_NOISE @ np.random.randn(2, 1) + + # add noise to input + ud = u + INPUT_NOISE @ np.random.randn(2, 1) + + xd = motion_model(xd, ud) + + return xTrue, z, xd, ud + + +def motion_model(x, u): + F = np.array([[1.0, 0, 0, 0, 0], + [0, 1.0, 0, 0, 0], + [0, 0, 1.0, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 0, 0, 1.0]]) + + B = np.array([[DT * math.cos(x[2, 0]) * x[4, 0], 0], + [DT * math.sin(x[2, 0]) * x[4, 0], 0], + [0.0, DT], + [1.0, 0.0], + [0.0, 0.0]]) + + x = F @ x + B @ u + + return x + + +def observation_model(x): + H = np.array([ + [1, 0, 0, 0, 0], + [0, 1, 0, 0, 0] + ]) + z = H @ x + + return z + + +def jacob_f(x, u): + """ + Jacobian of Motion Model + + motion model + x_{t+1} = x_t+v*s*dt*cos(yaw) + y_{t+1} = y_t+v*s*dt*sin(yaw) + yaw_{t+1} = yaw_t+omega*dt + v_{t+1} = v{t} + s_{t+1} = s{t} + so + dx/dyaw = -v*s*dt*sin(yaw) + dx/dv = dt*s*cos(yaw) + dx/ds = dt*v*cos(yaw) + dy/dyaw = v*s*dt*cos(yaw) + dy/dv = dt*s*sin(yaw) + dy/ds = dt*v*sin(yaw) + """ + yaw = x[2, 0] + v = u[0, 0] + s = x[4, 0] + jF = np.array([ + [1.0, 0.0, -DT * v * s * math.sin(yaw), DT * s * math.cos(yaw), DT * v * math.cos(yaw)], + [0.0, 1.0, DT * v * s * math.cos(yaw), DT * s * math.sin(yaw), DT * v * math.sin(yaw)], + [0.0, 0.0, 1.0, 0.0, 0.0], + [0.0, 0.0, 0.0, 1.0, 0.0], + [0.0, 0.0, 0.0, 0.0, 1.0]]) + return jF + + +def jacob_h(): + jH = np.array([[1, 0, 0, 0, 0], + [0, 1, 0, 0, 0]]) + return jH + + +def ekf_estimation(xEst, PEst, z, u): + # Predict + xPred = motion_model(xEst, u) + jF = jacob_f(xEst, u) + PPred = jF @ PEst @ jF.T + Q + + # Update + jH = jacob_h() + zPred = observation_model(xPred) + y = z - zPred + S = jH @ PPred @ jH.T + R + K = PPred @ jH.T @ np.linalg.inv(S) + xEst = xPred + K @ y + PEst = (np.eye(len(xEst)) - K @ jH) @ PPred + return xEst, PEst + + +def main(): + print(__file__ + " start!!") + + time = 0.0 + + # State Vector [x y yaw v s]' + xEst = np.zeros((5, 1)) + xEst[4, 0] = 1.0 # Initial scale factor + xTrue = np.zeros((5, 1)) + true_scale_factor = 0.9 # True scale factor + xTrue[4, 0] = true_scale_factor + PEst = np.eye(5) + + xDR = np.zeros((5, 1)) # Dead reckoning + + # history + hxEst = xEst + hxTrue = xTrue + hxDR = xTrue + hz = np.zeros((2, 1)) + + while SIM_TIME >= time: + time += DT + u = calc_input() + + xTrue, z, xDR, ud = observation(xTrue, xDR, u) + + xEst, PEst = ekf_estimation(xEst, PEst, z, ud) + + # store data history + hxEst = np.hstack((hxEst, xEst)) + hxDR = np.hstack((hxDR, xDR)) + hxTrue = np.hstack((hxTrue, xTrue)) + hz = np.hstack((hz, z)) + estimated_scale_factor = hxEst[4, -1] + if show_animation: + plt.cla() + # for stopping simulation with the esc key. + plt.gcf().canvas.mpl_connect('key_release_event', + lambda event: [exit(0) if event.key == 'escape' else None]) + plt.plot(hz[0, :], hz[1, :], ".g") + plt.plot(hxTrue[0, :].flatten(), + hxTrue[1, :].flatten(), "-b") + plt.plot(hxDR[0, :].flatten(), + hxDR[1, :].flatten(), "-k") + plt.plot(hxEst[0, :].flatten(), + hxEst[1, :].flatten(), "-r") + plt.text(0.45, 0.85, f"True Velocity Scale Factor: {true_scale_factor:.2f}", ha='left', va='top', transform=plt.gca().transAxes) + plt.text(0.45, 0.95, f"Estimated Velocity Scale Factor: {estimated_scale_factor:.2f}", ha='left', va='top', transform=plt.gca().transAxes) + plot_covariance_ellipse(xEst[0, 0], xEst[1, 0], PEst) + plt.axis("equal") + plt.grid(True) + plt.pause(0.001) + + +if __name__ == '__main__': + main() diff --git a/docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png b/docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png new file mode 100644 index 0000000000000000000000000000000000000000..595b651bd2354f67fd57de47e35b9848433d7c93 GIT binary patch literal 40148 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 +Kalman Filter with Speed Scale Factor Correction +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + + +.. image:: ekf_with_velocity_correction_1_0.png + :width: 600px + +This is a Extended kalman filter (EKF) localization with velocity correction. + +This is for correcting the vehicle speed measured with scale factor errors due to factors such as wheel wear. + +Code: `PythonRobotics/extended_kalman_ekf_with_velocity_correctionfilter.py +AtsushiSakai/PythonRobotics `__ + Filter design ~~~~~~~~~~~~~ +Position Estimation Kalman Filter +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + In this simulation, the robot has a state vector includes 4 states at time :math:`t`. @@ -61,9 +82,28 @@ In the code, “observation” function generates the input and observation vector with noise `code `__ +Kalman Filter with Speed Scale Factor Correction +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +In this simulation, the robot has a state vector includes 5 states at +time :math:`t`. + +.. math:: \textbf{x}_t=[x_t, y_t, \phi_t, v_t, s_t] + +x, y are a 2D x-y position, :math:`\phi` is orientation, v is +velocity, and s is a scale factor of velocity. + +In the code, “xEst” means the state vector. +`code `__ + +The rest is the same as the Position Estimation Kalman Filter. + Motion Model ~~~~~~~~~~~~ +Position Estimation Kalman Filter +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + The robot model is .. math:: \dot{x} = v \cos(\phi) @@ -97,9 +137,50 @@ Its Jacobian matrix is :math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & -v \sin(\phi) \Delta t & \cos(\phi) \Delta t\\ 0 & 1 & v \cos(\phi) \Delta t & \sin(\phi) \Delta t\\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \end{equation*}` + +Kalman Filter with Speed Scale Factor Correction +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The robot model is + +.. math:: \dot{x} = v s \cos(\phi) + +.. math:: \dot{y} = v s \sin(\phi) + +.. math:: \dot{\phi} = \omega + +So, the motion model is + +.. math:: \textbf{x}_{t+1} = f(\textbf{x}_t, \textbf{u}_t) = F\textbf{x}_t+B\textbf{u}_t + +where + +:math:`\begin{equation*} F= \begin{bmatrix} 1 & 0 & 0 & 0 & 0\\ 0 & 1 & 0 & 0 & 0\\ 0 & 0 & 1 & 0 & 0\\ 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 1\\ \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*} B= \begin{bmatrix} cos(\phi) \Delta t s & 0\\ sin(\phi) \Delta t s & 0\\ 0 & \Delta t\\ 1 & 0\\ 0 & 0\\ \end{bmatrix} \end{equation*}` + +:math:`\Delta t` is a time interval. + +This is implemented at +`code `__ + +The motion function is that + +:math:`\begin{equation*} \begin{bmatrix} x' \\ y' \\ w' \\ v' \end{bmatrix} = f(\textbf{x}, \textbf{u}) = \begin{bmatrix} x + v s \cos(\phi)\Delta t \\ y + v s \sin(\phi)\Delta t \\ \phi + \omega \Delta t \\ v \end{bmatrix} \end{equation*}` + +Its Jacobian matrix is + +:math:`\begin{equation*} J_f = \begin{bmatrix} \frac{\partial x'}{\partial x}& \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v} & \frac{\partial x'}{\partial s}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{\partial v} & \frac{\partial y'}{\partial s}\\ \frac{\partial \phi'}{\partial x}& \frac{\partial \phi'}{\partial y} & \frac{\partial \phi'}{\partial \phi} & \frac{\partial \phi'}{\partial v} & \frac{\partial \phi'}{\partial s}\\ \frac{\partial v'}{\partial x}& \frac{\partial v'}{\partial y} & \frac{\partial v'}{\partial \phi} & \frac{\partial v'}{\partial v} & \frac{\partial v'}{\partial s} \\ \frac{\partial s'}{\partial x}& \frac{\partial s'}{\partial y} & \frac{\partial s'}{\partial \phi} & \frac{\partial s'}{\partial v} & \frac{\partial s'}{\partial s} \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & -v s \sin(\phi) \Delta t & s \cos(\phi) \Delta t & \cos(\phi) v \Delta t\\ 0 & 1 & v s \cos(\phi) \Delta t & s \sin(\phi) \Delta t & v \sin(\phi) \Delta t\\ 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 \end{bmatrix} \end{equation*}` + + Observation Model ~~~~~~~~~~~~~~~~~ +Position Estimation Kalman Filter +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + The robot can get x-y position infomation from GPS. So GPS Observation model is @@ -120,6 +201,30 @@ Its Jacobian matrix is :math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ \end{bmatrix} \end{equation*}` +Kalman Filter with Speed Scale Factor Correction +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The robot can get x-y position infomation from GPS. + +So GPS Observation model is + +.. math:: \textbf{z}_{t} = g(\textbf{x}_t) = H \textbf{x}_t + +where + +:math:`\begin{equation*} H = \begin{bmatrix} 1 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 \\ \end{bmatrix} \end{equation*}` + +The observation function states that + +:math:`\begin{equation*} \begin{bmatrix} x' \\ y' \end{bmatrix} = g(\textbf{x}) = \begin{bmatrix} x \\ y \end{bmatrix} \end{equation*}` + +Its Jacobian matrix is + +:math:`\begin{equation*} J_g = \begin{bmatrix} \frac{\partial x'}{\partial x} & \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v} & \frac{\partial x'}{\partial s}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{ \partial v} & \frac{\partial y'}{ \partial s}\\ \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0 & 0\\ 0 & 1 & 0 & 0 & 0\\ \end{bmatrix} \end{equation*}` + + Extended Kalman Filter ~~~~~~~~~~~~~~~~~~~~~~ From 13137952eeee39438bf6f0eb030527ab804a9481 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 08:07:58 +0900 Subject: [PATCH 075/312] Bump scipy from 1.11.4 to 1.12.0 in /requirements (#969) Bumps [scipy](https://github.com/scipy/scipy) from 1.11.4 to 1.12.0. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.11.4...v1.12.0) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 127b89682d..5af5be1794 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.3 -scipy == 1.11.4 +scipy == 1.12.0 matplotlib == 3.8.2 cvxpy == 1.4.1 pytest == 7.4.4 # For unit test From ae0676bfc0b5548ab643c8db73959edc5e68a324 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 20:18:49 +0900 Subject: [PATCH 076/312] Bump ruff from 0.1.13 to 0.1.14 in /requirements (#971) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.13 to 0.1.14. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.13...v0.1.14) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5af5be1794..5848b32aad 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.1 pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.13 # For unit test +ruff == 0.1.14 # For unit test From 73d1189e824c38af70f724d3ba5b0322e55f142d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jan 2024 20:40:15 +0900 Subject: [PATCH 077/312] Bump cvxpy from 1.4.1 to 1.4.2 in /requirements (#970) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.4.1 to 1.4.2. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.4.1...v1.4.2) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5848b32aad..ceee1d03c0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.3 scipy == 1.12.0 matplotlib == 3.8.2 -cvxpy == 1.4.1 +cvxpy == 1.4.2 pytest == 7.4.4 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test From 0874d5023cc79cd2d9ad535f6d008c749ce4d257 Mon Sep 17 00:00:00 2001 From: Yi-Chen Zhang Date: Sat, 27 Jan 2024 23:59:02 -0500 Subject: [PATCH 078/312] Fix predict covariance (#973) * Fix predict covariance * Remove trailing whitespace and unused return parameters --- SLAM/EKFSLAM/ekf_slam.py | 9 +- docs/modules/slam/ekf_slam/ekf_slam_main.rst | 181 +++++++++---------- 2 files changed, 91 insertions(+), 99 deletions(-) diff --git a/SLAM/EKFSLAM/ekf_slam.py b/SLAM/EKFSLAM/ekf_slam.py index a624e8765b..5c4417d7c3 100644 --- a/SLAM/EKFSLAM/ekf_slam.py +++ b/SLAM/EKFSLAM/ekf_slam.py @@ -29,10 +29,9 @@ def ekf_slam(xEst, PEst, u, z): # Predict - S = STATE_SIZE - G, Fx = jacob_motion(xEst[0:S], u) - xEst[0:S] = motion_model(xEst[0:S], u) - PEst[0:S, 0:S] = G.T @ PEst[0:S, 0:S] @ G + Fx.T @ Cx @ Fx + G, Fx = jacob_motion(xEst, u) + xEst[0:STATE_SIZE] = motion_model(xEst[0:STATE_SIZE], u) + PEst = G.T @ PEst @ G + Fx.T @ Cx @ Fx initP = np.eye(2) # Update @@ -120,7 +119,7 @@ def jacob_motion(x, u): [0.0, 0.0, DT * u[0, 0] * math.cos(x[2, 0])], [0.0, 0.0, 0.0]], dtype=float) - G = np.eye(STATE_SIZE) + Fx.T @ jF @ Fx + G = np.eye(len(x)) + Fx.T @ jF @ Fx return G, Fx, diff --git a/docs/modules/slam/ekf_slam/ekf_slam_main.rst b/docs/modules/slam/ekf_slam/ekf_slam_main.rst index 70a7d131ae..b27971225e 100644 --- a/docs/modules/slam/ekf_slam/ekf_slam_main.rst +++ b/docs/modules/slam/ekf_slam/ekf_slam_main.rst @@ -63,27 +63,27 @@ Take care to note the difference between :math:`X` (state) and :math:`x` original author: Atsushi Sakai (@Atsushi_twi) notebook author: Andrew Tu (drewtu2) """ - + import math import numpy as np %matplotlib notebook import matplotlib.pyplot as plt - - + + # EKF state covariance Cx = np.diag([0.5, 0.5, np.deg2rad(30.0)])**2 # Change in covariance - + # Simulation parameter Qsim = np.diag([0.2, np.deg2rad(1.0)])**2 # Sensor Noise Rsim = np.diag([1.0, np.deg2rad(10.0)])**2 # Process Noise - + DT = 0.1 # time tick [s] SIM_TIME = 50.0 # simulation time [s] MAX_RANGE = 20.0 # maximum observation range M_DIST_TH = 2.0 # Threshold of Mahalanobis distance for data association. STATE_SIZE = 3 # State size [x,y,yaw] LM_SIZE = 2 # LM state size [x,y] - + show_animation = True Algorithm Walk through @@ -97,23 +97,22 @@ the estimated state and measurements def ekf_slam(xEst, PEst, u, z): """ - Performs an iteration of EKF SLAM from the available information. - + Performs an iteration of EKF SLAM from the available information. + :param xEst: the belief in last position :param PEst: the uncertainty in last position - :param u: the control function applied to the last position + :param u: the control function applied to the last position :param z: measurements at this step :returns: the next estimated position and associated covariance """ - S = STATE_SIZE - + # Predict - xEst, PEst, G, Fx = predict(xEst, PEst, u) + xEst, PEst = predict(xEst, PEst, u) initP = np.eye(2) - + # Update - xEst, PEst = update(xEst, PEst, u, z, initP) - + xEst, PEst = update(xEst, PEst, z, initP) + return xEst, PEst @@ -170,26 +169,25 @@ the landmarks. def predict(xEst, PEst, u): """ Performs the prediction step of EKF SLAM - + :param xEst: nx1 state vector :param PEst: nxn covariance matrix :param u: 2x1 control vector :returns: predicted state vector, predicted covariance, jacobian of control vector, transition fx """ - S = STATE_SIZE - G, Fx = jacob_motion(xEst[0:S], u) - xEst[0:S] = motion_model(xEst[0:S], u) + G, Fx = jacob_motion(xEst, u) + xEst[0:STATE_SIZE] = motion_model(xEst[0:STATE_SIZE], u) # Fx is an an identity matrix of size (STATE_SIZE) # sigma = G*sigma*G.T + Noise - PEst[0:S, 0:S] = G.T @ PEst[0:S, 0:S] @ G + Fx.T @ Cx @ Fx - return xEst, PEst, G, Fx + PEst = G.T @ PEst @ G + Fx.T @ Cx @ Fx + return xEst, PEst .. code:: ipython3 def motion_model(x, u): """ Computes the motion model based on current state and input function. - + :param x: 3x1 pose estimation :param u: 2x1 control input [v; w] :returns: the resulting state after the control function is applied @@ -197,11 +195,11 @@ the landmarks. F = np.array([[1.0, 0, 0], [0, 1.0, 0], [0, 0, 1.0]]) - + B = np.array([[DT * math.cos(x[2, 0]), 0], [DT * math.sin(x[2, 0]), 0], [0.0, DT]]) - + x = (F @ x) + (B @ u) return x @@ -261,22 +259,21 @@ the changing uncertainty. .. code:: ipython3 - def update(xEst, PEst, u, z, initP): + def update(xEst, PEst, z, initP): """ Performs the update step of EKF SLAM - + :param xEst: nx1 the predicted pose of the system and the pose of the landmarks :param PEst: nxn the predicted covariance - :param u: 2x1 the control function :param z: the measurements read at new position :param initP: 2x2 an identity matrix acting as the initial covariance :returns: the updated state and covariance for the system """ for iz in range(len(z[:, 0])): # for each observation minid = search_correspond_LM_ID(xEst, PEst, z[iz, 0:2]) # associate to a known landmark - + nLM = calc_n_LM(xEst) # number of landmarks we currently know about - + if minid == nLM: # Landmark is a NEW landmark print("New LM") # Extend state and covariance matrix @@ -285,14 +282,14 @@ the changing uncertainty. np.hstack((np.zeros((LM_SIZE, len(xEst))), initP)))) xEst = xAug PEst = PAug - + lm = get_LM_Pos_from_state(xEst, minid) y, S, H = calc_innovation(lm, xEst, PEst, z[iz, 0:2], minid) - + K = (PEst @ H.T) @ np.linalg.inv(S) # Calculate Kalman Gain xEst = xEst + (K @ y) PEst = (np.eye(len(xEst)) - (K @ H)) @ PEst - + xEst[2] = pi_2_pi(xEst[2]) return xEst, PEst @@ -302,7 +299,7 @@ the changing uncertainty. def calc_innovation(lm, xEst, PEst, z, LMid): """ Calculates the innovation based on expected position and landmark position - + :param lm: landmark position :param xEst: estimated position/state :param PEst: estimated covariance @@ -315,19 +312,19 @@ the changing uncertainty. zangle = math.atan2(delta[1, 0], delta[0, 0]) - xEst[2, 0] zp = np.array([[math.sqrt(q), pi_2_pi(zangle)]]) # zp is the expected measurement based on xEst and the expected landmark position - + y = (z - zp).T # y = innovation y[1] = pi_2_pi(y[1]) - + H = jacobH(q, delta, xEst, LMid + 1) S = H @ PEst @ H.T + Cx[0:2, 0:2] - + return y, S, H - + def jacobH(q, delta, x, i): """ Calculates the jacobian of the measurement function - + :param q: the range from the system pose to the landmark :param delta: the difference between a landmark position and the estimated system position :param x: the state, including the estimated system position @@ -337,17 +334,17 @@ the changing uncertainty. sq = math.sqrt(q) G = np.array([[-sq * delta[0, 0], - sq * delta[1, 0], 0, sq * delta[0, 0], sq * delta[1, 0]], [delta[1, 0], - delta[0, 0], - q, - delta[1, 0], delta[0, 0]]]) - + G = G / q nLM = calc_n_LM(x) F1 = np.hstack((np.eye(3), np.zeros((3, 2 * nLM)))) F2 = np.hstack((np.zeros((2, 3)), np.zeros((2, 2 * (i - 1))), np.eye(2), np.zeros((2, 2 * nLM - 2 * i)))) - + F = np.vstack((F1, F2)) - + H = G @ F - + return H Observation Step @@ -370,17 +367,17 @@ reckoning and control functions are passed along here as well. :param xd: the current noisy estimate of the system :param u: the current control input :param RFID: the true position of the landmarks - - :returns: Computes the true position, observations, dead reckoning (noisy) position, + + :returns: Computes the true position, observations, dead reckoning (noisy) position, and noisy control function """ xTrue = motion_model(xTrue, u) - + # add noise to gps x-y z = np.zeros((0, 3)) - + for i in range(len(RFID[:, 0])): # Test all beacons, only add the ones we can see (within MAX_RANGE) - + dx = RFID[i, 0] - xTrue[0, 0] dy = RFID[i, 1] - xTrue[1, 0] d = math.sqrt(dx**2 + dy**2) @@ -390,12 +387,12 @@ reckoning and control functions are passed along here as well. anglen = angle + np.random.randn() * Qsim[1, 1] # add noise zi = np.array([dn, anglen, i]) z = np.vstack((z, zi)) - + # add noise to input ud = np.array([[ u[0, 0] + np.random.randn() * Rsim[0, 0], u[1, 0] + np.random.randn() * Rsim[1, 1]]]).T - + xd = motion_model(xd, ud) return xTrue, z, xd, ud @@ -409,32 +406,30 @@ reckoning and control functions are passed along here as well. """ n = int((len(x) - STATE_SIZE) / LM_SIZE) return n - - + + def jacob_motion(x, u): """ - Calculates the jacobian of motion model. - + Calculates the jacobian of motion model. + :param x: The state, including the estimated position of the system :param u: The control function :returns: G: Jacobian Fx: STATE_SIZE x (STATE_SIZE + 2 * num_landmarks) matrix where the left side is an identity matrix """ - + # [eye(3) [0 x y; 0 x y; 0 x y]] Fx = np.hstack((np.eye(STATE_SIZE), np.zeros( (STATE_SIZE, LM_SIZE * calc_n_LM(x))))) - + jF = np.array([[0.0, 0.0, -DT * u[0] * math.sin(x[2, 0])], [0.0, 0.0, DT * u[0] * math.cos(x[2, 0])], [0.0, 0.0, 0.0]],dtype=object) - + G = np.eye(STATE_SIZE) + Fx.T @ jF @ Fx if calc_n_LM(x) > 0: print(Fx.shape) return G, Fx, - - .. code:: ipython3 @@ -442,68 +437,68 @@ reckoning and control functions are passed along here as well. def calc_LM_Pos(x, z): """ Calculates the pose in the world coordinate frame of a landmark at the given measurement. - + :param x: [x; y; theta] :param z: [range; bearing] :returns: [x; y] for given measurement """ zp = np.zeros((2, 1)) - + zp[0, 0] = x[0, 0] + z[0] * math.cos(x[2, 0] + z[1]) zp[1, 0] = x[1, 0] + z[0] * math.sin(x[2, 0] + z[1]) #zp[0, 0] = x[0, 0] + z[0, 0] * math.cos(x[2, 0] + z[0, 1]) #zp[1, 0] = x[1, 0] + z[0, 0] * math.sin(x[2, 0] + z[0, 1]) - + return zp - - + + def get_LM_Pos_from_state(x, ind): """ Returns the position of a given landmark - + :param x: The state containing all landmark positions :param ind: landmark id :returns: The position of the landmark """ lm = x[STATE_SIZE + LM_SIZE * ind: STATE_SIZE + LM_SIZE * (ind + 1), :] - + return lm - - + + def search_correspond_LM_ID(xAug, PAug, zi): """ Landmark association with Mahalanobis distance. - - If this landmark is at least M_DIST_TH units away from all known landmarks, + + If this landmark is at least M_DIST_TH units away from all known landmarks, it is a NEW landmark. - + :param xAug: The estimated state :param PAug: The estimated covariance :param zi: the read measurements of specific landmark :returns: landmark id """ - + nLM = calc_n_LM(xAug) - + mdist = [] - + for i in range(nLM): lm = get_LM_Pos_from_state(xAug, i) y, S, H = calc_innovation(lm, xAug, PAug, zi, i) mdist.append(y.T @ np.linalg.inv(S) @ y) - + mdist.append(M_DIST_TH) # new landmark - + minid = mdist.index(min(mdist)) - + return minid - + def calc_input(): v = 1.0 # [m/s] yawrate = 0.1 # [rad/s] u = np.array([[v, yawrate]]).T return u - + def pi_2_pi(angle): return (angle + math.pi) % (2 * math.pi) - math.pi @@ -511,53 +506,53 @@ reckoning and control functions are passed along here as well. def main(): print(" start!!") - + time = 0.0 - + # RFID positions [x, y] RFID = np.array([[10.0, -2.0], [15.0, 10.0], [3.0, 15.0], [-5.0, 20.0]]) - + # State Vector [x y yaw v]' xEst = np.zeros((STATE_SIZE, 1)) xTrue = np.zeros((STATE_SIZE, 1)) PEst = np.eye(STATE_SIZE) - + xDR = np.zeros((STATE_SIZE, 1)) # Dead reckoning - + # history hxEst = xEst hxTrue = xTrue hxDR = xTrue - + while SIM_TIME >= time: time += DT u = calc_input() - + xTrue, z, xDR, ud = observation(xTrue, xDR, u, RFID) - + xEst, PEst = ekf_slam(xEst, PEst, ud, z) - + x_state = xEst[0:STATE_SIZE] - + # store data history hxEst = np.hstack((hxEst, x_state)) hxDR = np.hstack((hxDR, xDR)) hxTrue = np.hstack((hxTrue, xTrue)) - + if show_animation: # pragma: no cover plt.cla() - + plt.plot(RFID[:, 0], RFID[:, 1], "*k") plt.plot(xEst[0], xEst[1], ".r") - + # plot landmark for i in range(calc_n_LM(xEst)): plt.plot(xEst[STATE_SIZE + i * 2], xEst[STATE_SIZE + i * 2 + 1], "xg") - + plt.plot(hxTrue[0, :], hxTrue[1, :], "-b") plt.plot(hxDR[0, :], @@ -587,5 +582,3 @@ References: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - `PROBABILISTIC ROBOTICS `_ - - From 6326e8c21205ca9c2d8e809c2dc2eaab60940bf0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jan 2024 20:19:54 +0900 Subject: [PATCH 079/312] Bump pytest from 7.4.4 to 8.0.0 in /requirements (#974) Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.4 to 8.0.0. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/7.4.4...8.0.0) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ceee1d03c0..f0729fb76e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.3 scipy == 1.12.0 matplotlib == 3.8.2 cvxpy == 1.4.2 -pytest == 7.4.4 # For unit test +pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.1.14 # For unit test From bd253e81060c6a11a944016706bd1d87ef72bded Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Feb 2024 19:07:36 +0900 Subject: [PATCH 080/312] Bump ruff from 0.1.14 to 0.2.0 in /requirements (#975) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.14 to 0.2.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.14...v0.2.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f0729fb76e..1d2072b01e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.1.14 # For unit test +ruff == 0.2.0 # For unit test From e4ddf10ad651dffa7c04f344cd13e878637fb8ca Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Feb 2024 20:21:31 +0900 Subject: [PATCH 081/312] Bump larsoner/circleci-artifacts-redirector-action from 0.3.1 to 1.0.0 (#976) Bumps [larsoner/circleci-artifacts-redirector-action](https://github.com/larsoner/circleci-artifacts-redirector-action) from 0.3.1 to 1.0.0. - [Release notes](https://github.com/larsoner/circleci-artifacts-redirector-action/releases) - [Commits](https://github.com/larsoner/circleci-artifacts-redirector-action/compare/0.3.1...v1.0.0) --- updated-dependencies: - dependency-name: larsoner/circleci-artifacts-redirector-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/circleci-artifacts-redirector.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/circleci-artifacts-redirector.yml b/.github/workflows/circleci-artifacts-redirector.yml index 149a087a5d..504a3a1004 100644 --- a/.github/workflows/circleci-artifacts-redirector.yml +++ b/.github/workflows/circleci-artifacts-redirector.yml @@ -6,7 +6,7 @@ jobs: name: Run CircleCI artifacts redirector!! steps: - name: run-circleci-artifacts-redirector - uses: larsoner/circleci-artifacts-redirector-action@0.3.1 + uses: larsoner/circleci-artifacts-redirector-action@v1.0.0 with: repo-token: ${{ secrets.GITHUB_TOKEN }} artifact-path: 0/html/index.html From 0dcb68a8020a5dd8f5cad53f69dffbcca3f03273 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Feb 2024 21:49:03 +0900 Subject: [PATCH 082/312] Bump numpy from 1.26.3 to 1.26.4 in /requirements (#977) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.3 to 1.26.4. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.3...v1.26.4) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1d2072b01e..dd5adf0409 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.3 +numpy == 1.26.4 scipy == 1.12.0 matplotlib == 3.8.2 cvxpy == 1.4.2 From b1bdff203c483533c32a7357a124945b74d88aa1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Feb 2024 22:57:15 +0900 Subject: [PATCH 083/312] Bump ruff from 0.2.0 to 0.2.1 in /requirements (#978) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.2.0 to 0.2.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.2.0...v0.2.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index dd5adf0409..6b65ae5b8c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.2.0 # For unit test +ruff == 0.2.1 # For unit test From e6215ace2e62c350dcc174641fb6804d3bfd4d55 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 20:43:17 +0900 Subject: [PATCH 084/312] Bump matplotlib from 3.8.2 to 3.8.3 in /requirements (#979) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.8.2 to 3.8.3. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.8.2...v3.8.3) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6b65ae5b8c..be43a14788 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.4 scipy == 1.12.0 -matplotlib == 3.8.2 +matplotlib == 3.8.3 cvxpy == 1.4.2 pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test From 47eb01f88f0083929f1948620b313019e44b96f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 20:44:06 +0900 Subject: [PATCH 085/312] Bump ruff from 0.2.1 to 0.2.2 in /requirements (#980) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.2.1 to 0.2.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.2.1...v0.2.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index be43a14788..e18459efdb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.0.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.2.1 # For unit test +ruff == 0.2.2 # For unit test From bf6acf3e31934dab4a496190ca74191cee672ea4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 21:34:06 +0900 Subject: [PATCH 086/312] Bump pytest from 8.0.0 to 8.0.1 in /requirements (#981) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.0.0 to 8.0.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.0.0...8.0.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e18459efdb..e40542015f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.12.0 matplotlib == 3.8.3 cvxpy == 1.4.2 -pytest == 8.0.0 # For unit test +pytest == 8.0.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.2.2 # For unit test From e2412a6667d12a8b640f2dc5c6e15e22b1e36753 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 24 Feb 2024 18:26:59 +0900 Subject: [PATCH 087/312] Update circleci-artifacts-redirector.yml (#983) * Update circleci-artifacts-redirector.yml * Update circleci-artifacts-redirector.yml * Update circleci-artifacts-redirector.yml --- .github/workflows/circleci-artifacts-redirector.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/circleci-artifacts-redirector.yml b/.github/workflows/circleci-artifacts-redirector.yml index 504a3a1004..78eb479aa1 100644 --- a/.github/workflows/circleci-artifacts-redirector.yml +++ b/.github/workflows/circleci-artifacts-redirector.yml @@ -9,5 +9,6 @@ jobs: uses: larsoner/circleci-artifacts-redirector-action@v1.0.0 with: repo-token: ${{ secrets.GITHUB_TOKEN }} + api-token: ${{ secrets.CIRCLECI_TOKEN }} artifact-path: 0/html/index.html circleci-jobs: build_doc From 6e743ef31e8f99a5e78bbb11343228d433693034 Mon Sep 17 00:00:00 2001 From: William L Thomson Jr Date: Sat, 24 Feb 2024 04:35:13 -0500 Subject: [PATCH 088/312] PathPlanning/InformedRRTStar/informed_rrt_star.py: Fix hard coded graph axis (#982) - Use self.min_rand, self.max_rand variable values in place of -2, 15 --- PathPlanning/InformedRRTStar/informed_rrt_star.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/InformedRRTStar/informed_rrt_star.py b/PathPlanning/InformedRRTStar/informed_rrt_star.py index b6f9d234dd..c37326e490 100644 --- a/PathPlanning/InformedRRTStar/informed_rrt_star.py +++ b/PathPlanning/InformedRRTStar/informed_rrt_star.py @@ -293,7 +293,7 @@ def draw_graph(self, x_center=None, c_best=None, c_min=None, e_theta=None, plt.plot(self.start.x, self.start.y, "xr") plt.plot(self.goal.x, self.goal.y, "xr") - plt.axis([-2, 15, -2, 15]) + plt.axis([self.min_rand, self.max_rand, self.min_rand, self.max_rand]) plt.grid(True) plt.pause(0.01) From ffd28c2d635975ba9294c6fa6603a211d074ef1b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Feb 2024 20:27:30 +0900 Subject: [PATCH 089/312] Bump pytest from 8.0.1 to 8.0.2 in /requirements (#984) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.0.1 to 8.0.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.0.1...8.0.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e40542015f..b464481003 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.12.0 matplotlib == 3.8.3 cvxpy == 1.4.2 -pytest == 8.0.1 # For unit test +pytest == 8.0.2 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.2.2 # For unit test From 9a22fb34ba4a205b254b8d469d62c73188771bf8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 6 Mar 2024 08:05:05 +0900 Subject: [PATCH 090/312] Bump ruff from 0.2.2 to 0.3.0 in /requirements (#985) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.2.2 to 0.3.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.2.2...v0.3.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b464481003..9d8ed2ac33 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.0.2 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.2.2 # For unit test +ruff == 0.3.0 # For unit test From 707f12fb363316ab687566a0b9819c2545eb89b8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 07:47:43 +0900 Subject: [PATCH 091/312] Bump pytest from 8.0.2 to 8.1.1 in /requirements (#986) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.0.2 to 8.1.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.0.2...8.1.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9d8ed2ac33..e3eee34e5e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.12.0 matplotlib == 3.8.3 cvxpy == 1.4.2 -pytest == 8.0.2 # For unit test +pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test ruff == 0.3.0 # For unit test From 1477c34cc717428ad6ae9b234451e679d8d0bc11 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 12:19:59 +0900 Subject: [PATCH 092/312] Bump ruff from 0.3.0 to 0.3.2 in /requirements (#987) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.0 to 0.3.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.0...v0.3.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e3eee34e5e..2cdfeaf126 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.8.0 # For unit test -ruff == 0.3.0 # For unit test +ruff == 0.3.2 # For unit test From 655fbc71d9adc324276985693c3cac773791f1f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 12:57:17 +0900 Subject: [PATCH 093/312] Bump mypy from 1.8.0 to 1.9.0 in /requirements (#988) Bumps [mypy](https://github.com/python/mypy) from 1.8.0 to 1.9.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.8.0...1.9.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2cdfeaf126..1021562d1c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.3 cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test -mypy == 1.8.0 # For unit test +mypy == 1.9.0 # For unit test ruff == 0.3.2 # For unit test From a79cc374f3eb3f39ae1a82e7738b988c43791595 Mon Sep 17 00:00:00 2001 From: guangwu Date: Wed, 13 Mar 2024 20:20:01 +0800 Subject: [PATCH 094/312] fix: typo (#989) --- Control/move_to_pose/move_to_pose_robot.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Control/move_to_pose/move_to_pose_robot.py b/Control/move_to_pose/move_to_pose_robot.py index d5c51caa12..fe9f0d06b3 100644 --- a/Control/move_to_pose/move_to_pose_robot.py +++ b/Control/move_to_pose/move_to_pose_robot.py @@ -79,9 +79,9 @@ def set_start_target_poses(self, pose_start, pose_target): Parameters ---------- pose_start : (Pose) - Start postion of the robot (see the Pose class) + Start position of the robot (see the Pose class) pose_target : (Pose) - Target postion of the robot (see the Pose class) + Target position of the robot (see the Pose class) """ self.pose_start = copy.copy(pose_start) self.pose_target = pose_target From 1656cab0d229d294ec151ec9d4cbe086b271e1cf Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 14 Mar 2024 22:01:51 +0900 Subject: [PATCH 095/312] Support python 3.12 (#954) * Update Linux_CI.yml * Update MacOS_CI.yml * Update Windows_CI.yml * Delete .lgtm.yml * Update lqr_planner.py * Update lqr_planner.py * Update config.yml * Update environment.yml * Update ruff.toml * Update README.md * Update getting_started_main.rst * Update doc_requirements.txt --- .circleci/config.yml | 2 +- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 4 ++-- .github/workflows/Windows_CI.yml | 4 ++-- .lgtm.yml | 4 ---- README.md | 2 +- docs/getting_started_main.rst | 2 +- requirements/environment.yml | 2 +- ruff.toml | 4 ++-- 9 files changed, 11 insertions(+), 15 deletions(-) delete mode 100644 .lgtm.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index d8f1e89dc4..9f803ece4a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,7 +6,7 @@ orbs: jobs: build_doc: docker: - - image: cimg/python:3.11 + - image: cimg/python:3.12 steps: - checkout - run: diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index b83954f17e..7b3dc14751 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [ '3.11' ] + python-version: [ '3.12' ] name: Python ${{ matrix.python-version }} CI diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index 19c6612b2f..5ea15ac72e 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python-version: [ '3.11' ] + python-version: [ '3.12' ] name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v4 @@ -36,4 +36,4 @@ jobs: python -m pip install --upgrade pip pip install -r requirements/requirements.txt - name: do all unit tests - run: bash runtests.sh \ No newline at end of file + run: bash runtests.sh diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index 906edcfcdb..b9c8dea649 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: windows-latest strategy: matrix: - python-version: [ '3.11' ] + python-version: [ '3.12' ] name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v4 @@ -33,4 +33,4 @@ jobs: python -m pip install --upgrade pip pip install -r requirements/requirements.txt - name: do all unit tests - run: bash runtests.sh \ No newline at end of file + run: bash runtests.sh diff --git a/.lgtm.yml b/.lgtm.yml deleted file mode 100644 index b06edf3510..0000000000 --- a/.lgtm.yml +++ /dev/null @@ -1,4 +0,0 @@ -extraction: - python: - python_setup: - version: 3 diff --git a/README.md b/README.md index bc0198f78e..7a01ae361a 100644 --- a/README.md +++ b/README.md @@ -95,7 +95,7 @@ See this paper for more details: For running each sample code: -- [Python 3.11.x](https://www.python.org/) +- [Python 3.12.x](https://www.python.org/) - [NumPy](https://numpy.org/) diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 497b85a23a..88f218545e 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -26,7 +26,7 @@ See this paper for more details: Requirements ------------- -- `Python 3.11.x`_ +- `Python 3.12.x`_ - `NumPy`_ - `SciPy`_ - `Matplotlib`_ diff --git a/requirements/environment.yml b/requirements/environment.yml index 13dfa29f66..afbb3fb8ce 100644 --- a/requirements/environment.yml +++ b/requirements/environment.yml @@ -2,7 +2,7 @@ name: python_robotics channels: - conda-forge dependencies: - - python=3.11 + - python=3.12 - pip - scipy - numpy diff --git a/ruff.toml b/ruff.toml index 578864b33e..5823ca3db7 100644 --- a/ruff.toml +++ b/ruff.toml @@ -6,7 +6,7 @@ exclude = [ ] # Assume Python 3.11 -target-version = "py311" +target-version = "py312" [per-file-ignores] @@ -15,4 +15,4 @@ target-version = "py311" max-complexity = 10 [pydocstyle] -convention = "numpy" \ No newline at end of file +convention = "numpy" From 4bdf9036b60eb40899079b777b208870d2c20bfe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Mar 2024 20:15:00 +0900 Subject: [PATCH 096/312] Bump ruff from 0.3.2 to 0.3.3 in /requirements (#993) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.2 to 0.3.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.2...v0.3.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1021562d1c..f6e64cc5ab 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.2 # For unit test +ruff == 0.3.3 # For unit test From f8b340be53ebb6ed4b6b0d2579394b58fe8074af Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Mar 2024 07:30:04 +0900 Subject: [PATCH 097/312] Bump ruff from 0.3.3 to 0.3.4 in /requirements (#996) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.3 to 0.3.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.3...v0.3.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f6e64cc5ab..6e7c77d836 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.3 # For unit test +ruff == 0.3.4 # For unit test From 61d5da8576c43c59f69655cf6324fa959031623f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Apr 2024 07:31:43 +0900 Subject: [PATCH 098/312] Bump ruff from 0.3.4 to 0.3.5 in /requirements (#999) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.4 to 0.3.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.4...v0.3.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6e7c77d836..c1edf2951c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.4 # For unit test +ruff == 0.3.5 # For unit test From c6562d787f797f56561e362ea2633ad7e3b4ee3c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 08:00:57 +0900 Subject: [PATCH 099/312] Bump matplotlib from 3.8.3 to 3.8.4 in /requirements (#1001) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.8.3 to 3.8.4. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.8.3...v3.8.4) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index c1edf2951c..fe97f01e24 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.4 scipy == 1.12.0 -matplotlib == 3.8.3 +matplotlib == 3.8.4 cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test From 84237d6007254c2a644adcabe61673da11f39eb4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 20:25:11 +0900 Subject: [PATCH 100/312] Bump scipy from 1.12.0 to 1.13.0 in /requirements (#1002) Bumps [scipy](https://github.com/scipy/scipy) from 1.12.0 to 1.13.0. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.12.0...v1.13.0) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index fe97f01e24..7a94111985 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.4 -scipy == 1.12.0 +scipy == 1.13.0 matplotlib == 3.8.4 cvxpy == 1.4.2 pytest == 8.1.1 # For unit test From 808e98133d57426b1e6fbbc2bdc897a196278d7d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 20:56:21 +0900 Subject: [PATCH 101/312] Bump ruff from 0.3.5 to 0.3.7 in /requirements (#1003) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.5 to 0.3.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.5...v0.3.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7a94111985..6ba7ea1c6d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.5 # For unit test +ruff == 0.3.7 # For unit test From d27f7dca1d2645915d03d087bc12c2ad281bb114 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Apr 2024 21:28:01 +0900 Subject: [PATCH 102/312] Bump ruff from 0.3.7 to 0.4.1 in /requirements (#1005) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.7 to 0.4.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.3.7...v0.4.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6ba7ea1c6d..7dfadddb48 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.2 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.3.7 # For unit test +ruff == 0.4.1 # For unit test From c12faa6a2ee2ac92102467487c4b168119c6cf07 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 27 Apr 2024 16:20:45 +0900 Subject: [PATCH 103/312] Bump cvxpy from 1.4.2 to 1.4.3 in /requirements (#1006) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.4.2 to 1.4.3. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.4.2...v1.4.3) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7dfadddb48..8e4d166c4e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.4 scipy == 1.13.0 matplotlib == 3.8.4 -cvxpy == 1.4.2 +cvxpy == 1.4.3 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test From 8f84f0f5518797c1c11f4cee204c0a5c6bffbe82 Mon Sep 17 00:00:00 2001 From: noob3-3 Date: Sat, 27 Apr 2024 20:51:19 +0800 Subject: [PATCH 104/312] fix::Control PathFinderController bug (#1000) --- Control/move_to_pose/move_to_pose.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Control/move_to_pose/move_to_pose.py b/Control/move_to_pose/move_to_pose.py index cc29666297..279ba0625b 100644 --- a/Control/move_to_pose/move_to_pose.py +++ b/Control/move_to_pose/move_to_pose.py @@ -74,7 +74,7 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): alpha = angle_mod(np.arctan2(y_diff, x_diff) - theta) beta = angle_mod(theta_goal - theta - alpha) v = self.Kp_rho * rho - w = self.Kp_alpha * alpha - controller.Kp_beta * beta + w = self.Kp_alpha * alpha - self.Kp_beta * beta if alpha > np.pi / 2 or alpha < -np.pi / 2: v = -v From c76f74703f6b9f7b2ec3bf993eb9c9c5d2ccb4ac Mon Sep 17 00:00:00 2001 From: Yi-Chen Zhang Date: Sun, 28 Apr 2024 07:55:25 -0400 Subject: [PATCH 105/312] Fix covariance dimension (#998) --- Localization/particle_filter/particle_filter.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/particle_filter/particle_filter.py b/Localization/particle_filter/particle_filter.py index 17051623ca..ba54a3d12b 100644 --- a/Localization/particle_filter/particle_filter.py +++ b/Localization/particle_filter/particle_filter.py @@ -96,10 +96,10 @@ def calc_covariance(x_est, px, pw): calculate covariance matrix see ipynb doc """ - cov = np.zeros((3, 3)) + cov = np.zeros((4, 4)) n_particle = px.shape[1] for i in range(n_particle): - dx = (px[:, i:i + 1] - x_est)[0:3] + dx = (px[:, i:i + 1] - x_est) cov += pw[0, i] * dx @ dx.T cov *= 1.0 / (1.0 - pw @ pw.T) From de2434361cd017851e10e4866bf6e6dca3b9cc95 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 28 Apr 2024 21:17:33 +0900 Subject: [PATCH 106/312] fix plot issue in random_inverse_kinematics.py (#1007) --- ArmNavigation/n_joint_arm_3d/NLinkArm3d.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ArmNavigation/n_joint_arm_3d/NLinkArm3d.py b/ArmNavigation/n_joint_arm_3d/NLinkArm3d.py index 0cea963168..0459e234b2 100644 --- a/ArmNavigation/n_joint_arm_3d/NLinkArm3d.py +++ b/ArmNavigation/n_joint_arm_3d/NLinkArm3d.py @@ -127,7 +127,8 @@ def inverse_kinematics(self, ref_ee_pose, plot=False): if plot: self.fig = plt.figure() - self.ax = Axes3D(self.fig) + self.ax = Axes3D(self.fig, auto_add_to_figure=False) + self.fig.add_axes(self.ax) x_list = [] y_list = [] From b93f170d32a4132762ad879ffca19befa8eb218f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 08:56:40 +0900 Subject: [PATCH 107/312] Bump ruff from 0.4.1 to 0.4.2 in /requirements (#1008) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.1 to 0.4.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.1...v0.4.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8e4d166c4e..ced1457da6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.3 pytest == 8.1.1 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test -ruff == 0.4.1 # For unit test +ruff == 0.4.2 # For unit test From bbf7d1ed857dc79e306f9c7fa09323cf74d0c71d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 12:49:55 +0900 Subject: [PATCH 108/312] Bump pytest from 8.1.1 to 8.2.0 in /requirements (#1010) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.1.1 to 8.2.0. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.1.1...8.2.0) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ced1457da6..ad5ab50f47 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.13.0 matplotlib == 3.8.4 cvxpy == 1.4.3 -pytest == 8.1.1 # For unit test +pytest == 8.2.0 # For unit test pytest-xdist == 3.5.0 # For unit test mypy == 1.9.0 # For unit test ruff == 0.4.2 # For unit test From 1262b0bfd1823f4a0476eb5060bd8384dea34128 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Apr 2024 16:00:24 +0900 Subject: [PATCH 109/312] Bump pytest-xdist from 3.5.0 to 3.6.1 in /requirements (#1009) Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from 3.5.0 to 3.6.1. - [Release notes](https://github.com/pytest-dev/pytest-xdist/releases) - [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.5.0...v3.6.1) --- updated-dependencies: - dependency-name: pytest-xdist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ad5ab50f47..b56c6e734f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,6 +3,6 @@ scipy == 1.13.0 matplotlib == 3.8.4 cvxpy == 1.4.3 pytest == 8.2.0 # For unit test -pytest-xdist == 3.5.0 # For unit test +pytest-xdist == 3.6.1 # For unit test mypy == 1.9.0 # For unit test ruff == 0.4.2 # For unit test From e14134d1e705076e83ee4228fd463bbfa5fccd61 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 May 2024 07:54:14 +0900 Subject: [PATCH 110/312] Bump mypy from 1.9.0 to 1.10.0 in /requirements (#1011) Bumps [mypy](https://github.com/python/mypy) from 1.9.0 to 1.10.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/1.9.0...v1.10.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b56c6e734f..0575353a11 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.8.4 cvxpy == 1.4.3 pytest == 8.2.0 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.9.0 # For unit test +mypy == 1.10.0 # For unit test ruff == 0.4.2 # For unit test From 16c16b6ff56dbebf4fd0ae0f170c9acc6df080dd Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 4 May 2024 23:08:14 +0900 Subject: [PATCH 111/312] clean up fast slam codes (#1012) * clean up fast slam codes * clean up fast slam codes * clean up fast slam codes --- SLAM/FastSLAM1/fast_slam1.py | 100 ++++++++++++++++--------------- SLAM/FastSLAM2/fast_slam2.py | 110 +++++++++++++++++------------------ 2 files changed, 104 insertions(+), 106 deletions(-) diff --git a/SLAM/FastSLAM1/fast_slam1.py b/SLAM/FastSLAM1/fast_slam1.py index 17f6d5e572..98f8a66417 100644 --- a/SLAM/FastSLAM1/fast_slam1.py +++ b/SLAM/FastSLAM1/fast_slam1.py @@ -17,8 +17,8 @@ R = np.diag([1.0, np.deg2rad(20.0)]) ** 2 # Simulation parameter -Q_sim = np.diag([0.3, np.deg2rad(2.0)]) ** 2 -R_sim = np.diag([0.5, np.deg2rad(10.0)]) ** 2 +Q_SIM = np.diag([0.3, np.deg2rad(2.0)]) ** 2 +R_SIM = np.diag([0.5, np.deg2rad(10.0)]) ** 2 OFFSET_YAW_RATE_NOISE = 0.01 DT = 0.1 # time tick [s] @@ -72,19 +72,18 @@ def normalize_weight(particles): def calc_final_state(particles): - xEst = np.zeros((STATE_SIZE, 1)) + x_est = np.zeros((STATE_SIZE, 1)) particles = normalize_weight(particles) for i in range(N_PARTICLE): - xEst[0, 0] += particles[i].w * particles[i].x - xEst[1, 0] += particles[i].w * particles[i].y - xEst[2, 0] += particles[i].w * particles[i].yaw + x_est[0, 0] += particles[i].w * particles[i].x + x_est[1, 0] += particles[i].w * particles[i].y + x_est[2, 0] += particles[i].w * particles[i].yaw - xEst[2, 0] = pi_2_pi(xEst[2, 0]) - # print(xEst) + x_est[2, 0] = pi_2_pi(x_est[2, 0]) - return xEst + return x_est def predict_particles(particles, u): @@ -235,28 +234,27 @@ def resampling(particles): pw = np.array(pw) n_eff = 1.0 / (pw @ pw.T) # Effective particle number - # print(n_eff) if n_eff < NTH: # resampling w_cum = np.cumsum(pw) base = np.cumsum(pw * 0.0 + 1 / N_PARTICLE) - 1 / N_PARTICLE resample_id = base + np.random.rand(base.shape[0]) / N_PARTICLE - inds = [] - ind = 0 + indexes = [] + index = 0 for ip in range(N_PARTICLE): - while (ind < w_cum.shape[0] - 1) \ - and (resample_id[ip] > w_cum[ind]): - ind += 1 - inds.append(ind) + while (index < w_cum.shape[0] - 1) \ + and (resample_id[ip] > w_cum[index]): + index += 1 + indexes.append(index) tmp_particles = particles[:] - for i in range(len(inds)): - particles[i].x = tmp_particles[inds[i]].x - particles[i].y = tmp_particles[inds[i]].y - particles[i].yaw = tmp_particles[inds[i]].yaw - particles[i].lm = tmp_particles[inds[i]].lm[:, :] - particles[i].lmP = tmp_particles[inds[i]].lmP[:, :] + for i in range(len(indexes)): + particles[i].x = tmp_particles[indexes[i]].x + particles[i].y = tmp_particles[indexes[i]].y + particles[i].yaw = tmp_particles[indexes[i]].yaw + particles[i].lm = tmp_particles[indexes[i]].lm[:, :] + particles[i].lmP = tmp_particles[indexes[i]].lmP[:, :] particles[i].w = 1.0 / N_PARTICLE return particles @@ -275,34 +273,34 @@ def calc_input(time): return u -def observation(xTrue, xd, u, rfid): +def observation(x_true, xd, u, rfid): # calc true state - xTrue = motion_model(xTrue, u) + x_true = motion_model(x_true, u) # add noise to range observation z = np.zeros((3, 0)) for i in range(len(rfid[:, 0])): - dx = rfid[i, 0] - xTrue[0, 0] - dy = rfid[i, 1] - xTrue[1, 0] + dx = rfid[i, 0] - x_true[0, 0] + dy = rfid[i, 1] - x_true[1, 0] d = math.hypot(dx, dy) - angle = pi_2_pi(math.atan2(dy, dx) - xTrue[2, 0]) + angle = pi_2_pi(math.atan2(dy, dx) - x_true[2, 0]) if d <= MAX_RANGE: - dn = d + np.random.randn() * Q_sim[0, 0] ** 0.5 # add noise - angle_with_noize = angle + np.random.randn() * Q_sim[ + dn = d + np.random.randn() * Q_SIM[0, 0] ** 0.5 # add noise + angle_with_noize = angle + np.random.randn() * Q_SIM[ 1, 1] ** 0.5 # add noise zi = np.array([dn, pi_2_pi(angle_with_noize), i]).reshape(3, 1) z = np.hstack((z, zi)) # add noise to input - ud1 = u[0, 0] + np.random.randn() * R_sim[0, 0] ** 0.5 - ud2 = u[1, 0] + np.random.randn() * R_sim[ + ud1 = u[0, 0] + np.random.randn() * R_SIM[0, 0] ** 0.5 + ud2 = u[1, 0] + np.random.randn() * R_SIM[ 1, 1] ** 0.5 + OFFSET_YAW_RATE_NOISE ud = np.array([ud1, ud2]).reshape(2, 1) xd = motion_model(xd, ud) - return xTrue, z, xd, ud + return x_true, z, xd, ud def motion_model(x, u): @@ -331,7 +329,7 @@ def main(): time = 0.0 # RFID positions [x, y] - RFID = np.array([[10.0, -2.0], + rfid = np.array([[10.0, -2.0], [15.0, 10.0], [15.0, 15.0], [10.0, 20.0], @@ -340,17 +338,17 @@ def main(): [-5.0, 5.0], [-10.0, 15.0] ]) - n_landmark = RFID.shape[0] + n_landmark = rfid.shape[0] # State Vector [x y yaw v]' - xEst = np.zeros((STATE_SIZE, 1)) # SLAM estimation - xTrue = np.zeros((STATE_SIZE, 1)) # True state - xDR = np.zeros((STATE_SIZE, 1)) # Dead reckoning + x_est = np.zeros((STATE_SIZE, 1)) # SLAM estimation + x_true = np.zeros((STATE_SIZE, 1)) # True state + x_dr = np.zeros((STATE_SIZE, 1)) # Dead reckoning # history - hxEst = xEst - hxTrue = xTrue - hxDR = xTrue + hist_x_est = x_est + hist_x_true = x_true + hist_x_dr = x_dr particles = [Particle(n_landmark) for _ in range(N_PARTICLE)] @@ -358,18 +356,18 @@ def main(): time += DT u = calc_input(time) - xTrue, z, xDR, ud = observation(xTrue, xDR, u, RFID) + x_true, z, x_dr, ud = observation(x_true, x_dr, u, rfid) particles = fast_slam1(particles, ud, z) - xEst = calc_final_state(particles) + x_est = calc_final_state(particles) - x_state = xEst[0: STATE_SIZE] + x_state = x_est[0: STATE_SIZE] # store data history - hxEst = np.hstack((hxEst, x_state)) - hxDR = np.hstack((hxDR, xDR)) - hxTrue = np.hstack((hxTrue, xTrue)) + hist_x_est = np.hstack((hist_x_est, x_state)) + hist_x_dr = np.hstack((hist_x_dr, x_dr)) + hist_x_true = np.hstack((hist_x_true, x_true)) if show_animation: # pragma: no cover plt.cla() @@ -377,16 +375,16 @@ def main(): plt.gcf().canvas.mpl_connect( 'key_release_event', lambda event: [exit(0) if event.key == 'escape' else None]) - plt.plot(RFID[:, 0], RFID[:, 1], "*k") + plt.plot(rfid[:, 0], rfid[:, 1], "*k") for i in range(N_PARTICLE): plt.plot(particles[i].x, particles[i].y, ".r") plt.plot(particles[i].lm[:, 0], particles[i].lm[:, 1], "xb") - plt.plot(hxTrue[0, :], hxTrue[1, :], "-b") - plt.plot(hxDR[0, :], hxDR[1, :], "-k") - plt.plot(hxEst[0, :], hxEst[1, :], "-r") - plt.plot(xEst[0], xEst[1], "xk") + plt.plot(hist_x_true[0, :], hist_x_true[1, :], "-b") + plt.plot(hist_x_dr[0, :], hist_x_dr[1, :], "-k") + plt.plot(hist_x_est[0, :], hist_x_est[1, :], "-r") + plt.plot(x_est[0], x_est[1], "xk") plt.axis("equal") plt.grid(True) plt.pause(0.001) diff --git a/SLAM/FastSLAM2/fast_slam2.py b/SLAM/FastSLAM2/fast_slam2.py index 2b57e3bcc3..d4cf0d84dd 100644 --- a/SLAM/FastSLAM2/fast_slam2.py +++ b/SLAM/FastSLAM2/fast_slam2.py @@ -17,8 +17,8 @@ R = np.diag([1.0, np.deg2rad(20.0)]) ** 2 # Simulation parameter -Q_sim = np.diag([0.3, np.deg2rad(2.0)]) ** 2 -R_sim = np.diag([0.5, np.deg2rad(10.0)]) ** 2 +Q_SIM = np.diag([0.3, np.deg2rad(2.0)]) ** 2 +R_SIM = np.diag([0.5, np.deg2rad(10.0)]) ** 2 OFFSET_YAW_RATE_NOISE = 0.01 DT = 0.1 # time tick [s] @@ -35,16 +35,16 @@ class Particle: - def __init__(self, N_LM): + def __init__(self, n_landmark): self.w = 1.0 / N_PARTICLE self.x = 0.0 self.y = 0.0 self.yaw = 0.0 self.P = np.eye(3) # landmark x-y positions - self.lm = np.zeros((N_LM, LM_SIZE)) + self.lm = np.zeros((n_landmark, LM_SIZE)) # landmark position covariance - self.lmP = np.zeros((N_LM * LM_SIZE, LM_SIZE)) + self.lmP = np.zeros((n_landmark * LM_SIZE, LM_SIZE)) def fast_slam2(particles, u, z): @@ -73,18 +73,18 @@ def normalize_weight(particles): def calc_final_state(particles): - xEst = np.zeros((STATE_SIZE, 1)) + x_est = np.zeros((STATE_SIZE, 1)) particles = normalize_weight(particles) for i in range(N_PARTICLE): - xEst[0, 0] += particles[i].w * particles[i].x - xEst[1, 0] += particles[i].w * particles[i].y - xEst[2, 0] += particles[i].w * particles[i].yaw + x_est[0, 0] += particles[i].w * particles[i].x + x_est[1, 0] += particles[i].w * particles[i].y + x_est[2, 0] += particles[i].w * particles[i].yaw - xEst[2, 0] = pi_2_pi(xEst[2, 0]) + x_est[2, 0] = pi_2_pi(x_est[2, 0]) - return xEst + return x_est def predict_particles(particles, u): @@ -266,21 +266,21 @@ def resampling(particles): base = np.cumsum(pw * 0.0 + 1 / N_PARTICLE) - 1 / N_PARTICLE resample_id = base + np.random.rand(base.shape[0]) / N_PARTICLE - inds = [] - ind = 0 + indexes = [] + index = 0 for ip in range(N_PARTICLE): - while (ind < w_cum.shape[0] - 1) \ - and (resample_id[ip] > w_cum[ind]): - ind += 1 - inds.append(ind) + while (index < w_cum.shape[0] - 1) \ + and (resample_id[ip] > w_cum[index]): + index += 1 + indexes.append(index) tmp_particles = particles[:] - for i in range(len(inds)): - particles[i].x = tmp_particles[inds[i]].x - particles[i].y = tmp_particles[inds[i]].y - particles[i].yaw = tmp_particles[inds[i]].yaw - particles[i].lm = tmp_particles[inds[i]].lm[:, :] - particles[i].lmP = tmp_particles[inds[i]].lmP[:, :] + for i in range(len(indexes)): + particles[i].x = tmp_particles[indexes[i]].x + particles[i].y = tmp_particles[indexes[i]].y + particles[i].yaw = tmp_particles[indexes[i]].yaw + particles[i].lm = tmp_particles[indexes[i]].lm[:, :] + particles[i].lmP = tmp_particles[indexes[i]].lmP[:, :] particles[i].w = 1.0 / N_PARTICLE return particles @@ -299,35 +299,35 @@ def calc_input(time): return u -def observation(xTrue, xd, u, RFID): +def observation(x_true, xd, u, rfid): # calc true state - xTrue = motion_model(xTrue, u) + x_true = motion_model(x_true, u) # add noise to range observation z = np.zeros((3, 0)) - for i in range(len(RFID[:, 0])): + for i in range(len(rfid[:, 0])): - dx = RFID[i, 0] - xTrue[0, 0] - dy = RFID[i, 1] - xTrue[1, 0] + dx = rfid[i, 0] - x_true[0, 0] + dy = rfid[i, 1] - x_true[1, 0] d = math.hypot(dx, dy) - angle = pi_2_pi(math.atan2(dy, dx) - xTrue[2, 0]) + angle = pi_2_pi(math.atan2(dy, dx) - x_true[2, 0]) if d <= MAX_RANGE: - dn = d + np.random.randn() * Q_sim[0, 0] ** 0.5 # add noise - angle_noise = np.random.randn() * Q_sim[1, 1] ** 0.5 + dn = d + np.random.randn() * Q_SIM[0, 0] ** 0.5 # add noise + angle_noise = np.random.randn() * Q_SIM[1, 1] ** 0.5 angle_with_noise = angle + angle_noise # add noise zi = np.array([dn, pi_2_pi(angle_with_noise), i]).reshape(3, 1) z = np.hstack((z, zi)) # add noise to input - ud1 = u[0, 0] + np.random.randn() * R_sim[0, 0] ** 0.5 - ud2 = u[1, 0] + np.random.randn() * R_sim[ + ud1 = u[0, 0] + np.random.randn() * R_SIM[0, 0] ** 0.5 + ud2 = u[1, 0] + np.random.randn() * R_SIM[ 1, 1] ** 0.5 + OFFSET_YAW_RATE_NOISE ud = np.array([ud1, ud2]).reshape(2, 1) xd = motion_model(xd, ud) - return xTrue, z, xd, ud + return x_true, z, xd, ud def motion_model(x, u): @@ -356,7 +356,7 @@ def main(): time = 0.0 # RFID positions [x, y] - RFID = np.array([[10.0, -2.0], + rfid = np.array([[10.0, -2.0], [15.0, 10.0], [15.0, 15.0], [10.0, 20.0], @@ -365,17 +365,17 @@ def main(): [-5.0, 5.0], [-10.0, 15.0] ]) - n_landmark = RFID.shape[0] + n_landmark = rfid.shape[0] # State Vector [x y yaw v]' - xEst = np.zeros((STATE_SIZE, 1)) # SLAM estimation - xTrue = np.zeros((STATE_SIZE, 1)) # True state - xDR = np.zeros((STATE_SIZE, 1)) # Dead reckoning + x_est = np.zeros((STATE_SIZE, 1)) # SLAM estimation + x_true = np.zeros((STATE_SIZE, 1)) # True state + x_dr = np.zeros((STATE_SIZE, 1)) # Dead reckoning # history - hxEst = xEst - hxTrue = xTrue - hxDR = xTrue + hist_x_est = x_est + hist_x_true = x_true + hist_x_dr = x_dr particles = [Particle(n_landmark) for _ in range(N_PARTICLE)] @@ -383,18 +383,18 @@ def main(): time += DT u = calc_input(time) - xTrue, z, xDR, ud = observation(xTrue, xDR, u, RFID) + x_true, z, x_dr, ud = observation(x_true, x_dr, u, rfid) particles = fast_slam2(particles, ud, z) - xEst = calc_final_state(particles) + x_est = calc_final_state(particles) - x_state = xEst[0: STATE_SIZE] + x_state = x_est[0: STATE_SIZE] # store data history - hxEst = np.hstack((hxEst, x_state)) - hxDR = np.hstack((hxDR, xDR)) - hxTrue = np.hstack((hxTrue, xTrue)) + hist_x_est = np.hstack((hist_x_est, x_state)) + hist_x_dr = np.hstack((hist_x_dr, x_dr)) + hist_x_true = np.hstack((hist_x_true, x_true)) if show_animation: # pragma: no cover plt.cla() @@ -402,21 +402,21 @@ def main(): plt.gcf().canvas.mpl_connect( 'key_release_event', lambda event: [exit(0) if event.key == 'escape' else None]) - plt.plot(RFID[:, 0], RFID[:, 1], "*k") + plt.plot(rfid[:, 0], rfid[:, 1], "*k") for iz in range(len(z[:, 0])): landmark_id = int(z[2, iz]) - plt.plot([xEst[0][0], RFID[landmark_id, 0]], [ - xEst[1][0], RFID[landmark_id, 1]], "-k") + plt.plot([x_est[0][0], rfid[landmark_id, 0]], [ + x_est[1][0], rfid[landmark_id, 1]], "-k") for i in range(N_PARTICLE): plt.plot(particles[i].x, particles[i].y, ".r") plt.plot(particles[i].lm[:, 0], particles[i].lm[:, 1], "xb") - plt.plot(hxTrue[0, :], hxTrue[1, :], "-b") - plt.plot(hxDR[0, :], hxDR[1, :], "-k") - plt.plot(hxEst[0, :], hxEst[1, :], "-r") - plt.plot(xEst[0], xEst[1], "xk") + plt.plot(hist_x_true[0, :], hist_x_true[1, :], "-b") + plt.plot(hist_x_dr[0, :], hist_x_dr[1, :], "-k") + plt.plot(hist_x_est[0, :], hist_x_est[1, :], "-r") + plt.plot(x_est[0], x_est[1], "xk") plt.axis("equal") plt.grid(True) plt.pause(0.001) From 20818bfe3c7185e065435ea4d204510db6dd37f5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 21:37:44 +0900 Subject: [PATCH 112/312] Bump ruff from 0.4.2 to 0.4.3 in /requirements (#1014) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.2 to 0.4.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.2...v0.4.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0575353a11..4db551eb8c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.3 pytest == 8.2.0 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.2 # For unit test +ruff == 0.4.3 # For unit test From dfcc08e36723e7a371048147d2879f7b373e1902 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 May 2024 08:44:53 +0900 Subject: [PATCH 113/312] Bump ruff from 0.4.3 to 0.4.4 in /requirements (#1017) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.3 to 0.4.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.3...v0.4.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 4db551eb8c..909b39faa7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.4.3 pytest == 8.2.0 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.3 # For unit test +ruff == 0.4.4 # For unit test From ed5004b0f84081b93a2aceebe96defe013d99e06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?YSF=E3=83=84?= <50619491+yousefbilal@users.noreply.github.com> Date: Sat, 18 May 2024 13:56:04 +0400 Subject: [PATCH 114/312] fixed hard-coded plot limits (#1018) --- PathPlanning/RRT/rrt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/RRT/rrt.py b/PathPlanning/RRT/rrt.py index 55092e6e00..e6dd9b648b 100644 --- a/PathPlanning/RRT/rrt.py +++ b/PathPlanning/RRT/rrt.py @@ -199,7 +199,7 @@ def draw_graph(self, rnd=None): plt.plot(self.start.x, self.start.y, "xr") plt.plot(self.end.x, self.end.y, "xr") plt.axis("equal") - plt.axis([-2, 15, -2, 15]) + plt.axis([self.min_rand, self.max_rand, self.min_rand, self.max_rand]) plt.grid(True) plt.pause(0.01) From 36b630040224c79bfa05974b8107b7a384e8271a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 19 May 2024 20:54:57 +0900 Subject: [PATCH 115/312] Bump cvxpy from 1.4.3 to 1.5.1 in /requirements (#1016) * Bump cvxpy from 1.4.3 to 1.5.1 in /requirements Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.4.3 to 1.5.1. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.4.3...v1.5.1) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] * fix cvxpy update issue --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Atsushi Sakai --- .../model_predictive_speed_and_steer_control.py | 14 ++++++++++++-- requirements/requirements.txt | 2 +- runtests.sh | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py index c55018cf26..eb2d7b6a73 100644 --- a/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py +++ b/PathTracking/model_predictive_speed_and_steer_control/model_predictive_speed_and_steer_control.py @@ -6,14 +6,16 @@ """ import matplotlib.pyplot as plt +import time import cvxpy import math import numpy as np import sys import pathlib -from utils.angle import angle_mod sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod + from PathPlanning.CubicSpline import cubic_spline_planner NX = 4 # x = x, y, v, yaw @@ -281,7 +283,7 @@ def linear_mpc_control(xref, xbar, x0, dref): constraints += [cvxpy.abs(u[1, :]) <= MAX_STEER] prob = cvxpy.Problem(cvxpy.Minimize(cost), constraints) - prob.solve(solver=cvxpy.ECOS, verbose=False) + prob.solve(solver=cvxpy.CLARABEL, verbose=False) if prob.status == cvxpy.OPTIMAL or prob.status == cvxpy.OPTIMAL_INACCURATE: ox = get_nparray_from_matrix(x.value[0, :]) @@ -545,6 +547,7 @@ def get_switch_back_course(dl): def main(): print(__file__ + " start!!") + start = time.time() dl = 1.0 # course tick # cx, cy, cyaw, ck = get_straight_course(dl) @@ -560,6 +563,9 @@ def main(): t, x, y, yaw, v, d, a = do_simulation( cx, cy, cyaw, ck, sp, dl, initial_state) + elapsed_time = time.time() - start + print(f"calc time:{elapsed_time:.6f} [sec]") + if show_animation: # pragma: no cover plt.close("all") plt.subplots() @@ -582,6 +588,7 @@ def main(): def main2(): print(__file__ + " start!!") + start = time.time() dl = 1.0 # course tick cx, cy, cyaw, ck = get_straight_course3(dl) @@ -593,6 +600,9 @@ def main2(): t, x, y, yaw, v, d, a = do_simulation( cx, cy, cyaw, ck, sp, dl, initial_state) + elapsed_time = time.time() - start + print(f"calc time:{elapsed_time:.6f} [sec]") + if show_animation: # pragma: no cover plt.close("all") plt.subplots() diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 909b39faa7..76f203f423 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.4 scipy == 1.13.0 matplotlib == 3.8.4 -cvxpy == 1.4.3 +cvxpy == 1.5.1 pytest == 8.2.0 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test diff --git a/runtests.sh b/runtests.sh index a2a683e571..12d1b80453 100755 --- a/runtests.sh +++ b/runtests.sh @@ -5,4 +5,4 @@ echo "Run test suites! " # -Werror: warning as error # --durations=0: show ranking of test durations # -l (--showlocals); show local variables when test failed -pytest -n auto tests -l -Werror --durations=0 +pytest tests -l -Werror --durations=0 From e752e50421e66f3982cfd84188499137c55d2925 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 May 2024 21:16:11 +0900 Subject: [PATCH 116/312] --- (#1020) updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 76f203f423..65885f423b 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.13.0 matplotlib == 3.8.4 cvxpy == 1.5.1 -pytest == 8.2.0 # For unit test +pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test ruff == 0.4.4 # For unit test From cfb736316aed6a6160e45e1c236beda0a5f01622 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 23 May 2024 21:48:35 +0900 Subject: [PATCH 117/312] --- (#1019) updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 65885f423b..cbf18ad938 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 1.26.4 scipy == 1.13.0 -matplotlib == 3.8.4 +matplotlib == 3.9.0 cvxpy == 1.5.1 pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test From 5751829bab294019bb78917d91f280552bb549d2 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 25 May 2024 23:31:54 +0900 Subject: [PATCH 118/312] Enhance lqr steering control docs (#1015) * enhance lqr steering control docs * enhance lqr steering control docs * enhance lqr steering control docs * enhance lqr steering control docs * improve lqr steering control docs --- .../lqr_steer_control/lqr_steer_control.py | 14 +-- docs/README.md | 2 +- .../lqr_steering_control_main.rst | 102 ++++++++++++++++++ .../lqr_steering_control_model.png | Bin 0 -> 17366 bytes 4 files changed, 111 insertions(+), 7 deletions(-) create mode 100644 docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png diff --git a/PathTracking/lqr_steer_control/lqr_steer_control.py b/PathTracking/lqr_steer_control/lqr_steer_control.py index 4078ea56db..461d6e3722 100644 --- a/PathTracking/lqr_steer_control/lqr_steer_control.py +++ b/PathTracking/lqr_steer_control/lqr_steer_control.py @@ -55,7 +55,7 @@ def update(state, a, delta): return state -def PIDControl(target, current): +def pid_control(target, current): a = Kp * (target - current) return a @@ -70,10 +70,11 @@ def solve_DARE(A, B, Q, R): solve a discrete time_Algebraic Riccati equation (DARE) """ X = Q - maxiter = 150 + Xn = Q + max_iter = 150 eps = 0.01 - for i in range(maxiter): + for i in range(max_iter): Xn = A.T @ X @ A - A.T @ X @ B @ \ la.inv(R + B.T @ X @ B) @ B.T @ X @ A + Q if (abs(Xn - X)).max() < eps: @@ -178,7 +179,7 @@ def closed_loop_prediction(cx, cy, cyaw, ck, speed_profile, goal): dl, target_ind, e, e_th = lqr_steering_control( state, cx, cy, cyaw, ck, e, e_th) - ai = PIDControl(speed_profile[target_ind], state.v) + ai = pid_control(speed_profile[target_ind], state.v) state = update(state, ai, dl) if abs(state.v) <= stop_speed: @@ -202,8 +203,9 @@ def closed_loop_prediction(cx, cy, cyaw, ck, speed_profile, goal): if target_ind % 1 == 0 and show_animation: plt.cla() # for stopping simulation with the esc key. - plt.gcf().canvas.mpl_connect('key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + plt.gcf().canvas.mpl_connect( + 'key_release_event', + lambda event: [exit(0) if event.key == 'escape' else None]) plt.plot(cx, cy, "-r", label="course") plt.plot(x, y, "ob", label="trajectory") plt.plot(cx[target_ind], cy[target_ind], "xg", label="target") diff --git a/docs/README.md b/docs/README.md index 5c4145e8e3..fb7d4cc3bc 100644 --- a/docs/README.md +++ b/docs/README.md @@ -8,7 +8,7 @@ This folder contains documentation for the Python Robotics project. #### Install Sphinx and Theme ``` -pip install sphinx sphinx-autobuild sphinx-rtd-theme +pip install sphinx sphinx-autobuild sphinx-rtd-theme sphinx_rtd_dark_mode sphinx_copybutton sphinx_rtd_dark_mode ``` #### Building the Docs diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst index bf6d6b5854..b18e4728cd 100644 --- a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -8,7 +8,109 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_steer_control/animation.gif +Overview +~~~~~~~~ + +The LQR (Linear Quadratic Regulator) steering control model implemented in lqr_steer_control.py provides a simulation +for an autonomous vehicle to track a desired trajectory by adjusting steering angle based on feedback from the current state and the desired trajectory. +This model utilizes a combination of PID speed control and LQR steering control to achieve smooth and accurate trajectory tracking. + +Vehicle motion Model +~~~~~~~~~~~~~~~~~~~~~ + +The below figure shows the geometric model of the vehicle used in this simulation: + +.. image:: lqr_steering_control_model.png + :width: 600px + +The `e` and `theta` represent the lateral error and orientation error, respectively, with respect to the desired trajectory. +And :math:`\dot{e}` and :math:`\dot{\theta}` represent the rates of change of these errors. + +The :math:`e_t` and :math:`theta_t` are the updated values of `e` and `theta` at time `t`, respectively, and can be calculated using the following kinematic equations: + +.. math:: e_t = e_{t-1} + \dot{e}_{t-1} dt + +.. math:: \theta_t = \theta_{t-1} + \dot{\theta}_{t-1} dt + +Where `dt` is the time difference. + +The change rate of the `e` can be calculated as: + +.. math:: \dot{e}_t = V \sin(\theta_{t-1}) + +Where `V` is the vehicle speed. + +If the :math:`theta` is small, + +.. math:: \theta \approx 0 + +the :math:`\sin(\theta)` can be approximated as :math:`\theta`: + +.. math:: \sin(\theta) = \theta + +So, the change rate of the `e` can be approximated as: + +.. math:: \dot{e}_t = V \theta_{t-1} + +The change rate of the :math:`\theta` can be calculated as: + +.. math:: \dot{\theta}_t = \frac{V}{L} \tan(\delta) + +where `L` is the wheelbase of the vehicle and :math:`\delta` is the steering angle. + +If the :math:`\delta` is small, + +.. math:: \delta \approx 0 + +the :math:`\tan(\delta)` can be approximated as :math:`\delta`: + +.. math:: \tan(\delta) = \delta + +So, the change rate of the :math:`\theta` can be approximated as: + +.. math:: \dot{\theta}_t = \frac{V}{L} \delta + +The above equations can be used to update the state of the vehicle at each time step. + +To formulate the state-space representation of the vehicle dynamics as a linear model, +the state vector `x` and control input vector `u` are defined as follows: + +.. math:: x_t = [e_t, \dot{e}_t, \theta_t, \dot{\theta}_t]^T + +.. math:: u_t = \delta_t + +The state transition equation can be represented as: + +.. math:: x_{t+1} = A x_t + B u_t + +where: + +:math:`\begin{equation*} A = \begin{bmatrix} 1 & dt & 0 & 0\\ 0 & 0 & v & 0\\ 0 & 0 & 1 & dt\\ 0 & 0 & 0 & 0 \\ \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*} B = \begin{bmatrix} 0\\ 0\\ 0\\ \frac{v}{L} \\ \end{bmatrix} \end{equation*}` + +LQR controller +~~~~~~~~~~~~~~~ + +The Linear Quadratic Regulator (LQR) controller is used to calculate the optimal control input `u` that minimizes the quadratic cost function: + +:math:`J = \sum_{t=0}^{N} (x_t^T Q x_t + u_t^T R u_t)` + +where `Q` and `R` are the weighting matrices for the state and control input, respectively. + +for the linear model: + +:math:`x_{t+1} = A x_t + B u_t` + +The optimal control input `u` can be calculated as: + +:math:`u_t = -K x_t` + +where `K` is the feedback gain matrix obtained by solving the Riccati equation. + References: ~~~~~~~~~~~ - `ApolloAuto/apollo: An open autonomous driving platform `_ +- `Linear Quadratic Regulator (LQR) `_ + diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png new file mode 100644 index 0000000000000000000000000000000000000000..961dfcdc05cd4938c1ea7ebc79e1c8e0314e9dd4 GIT binary patch literal 17366 zcmeHv2|Sc-+xM8Lkz_KmW)7{2#}0Uh^w%?`}ih)tgqs zU@%^ik={NS4337uIJgljK?xByr2~F(`0O(z!irl(2VpP~ak{=G-95m`g-U@*5pua(sUKQuZ|_X;U=L_Y3v!`S?WOPr$_iL8l#Hppql*Wf=5thvKm?yj z9&`#7{07C~=N@zL!xH?%VQq2BwyLt=QODDhN;ybzFm?f}F;FI`DiBmav5c{ig{g@Y zUKc!5UEC<(mm$T`jRtkmJ?c$!2PFnLypjSI`U48h?VaqsU49q>+L<54+sB3G!QPmX z0{FAE1q$8Xd8w4L>!67*!E?WwKh4$I=g@AaK>xi<7f{a z7tzEml{nD6$rSIUBCry?6hU7Ks{@)se+jy5yuk+#d$8)oo>KY*DK&zWx(@q+sJr-p zmm;dM2X$dvW3Q8`r|13yzE(IFM?c>^WP4?t+8^gwp2WoT1W#E@V2O7Q|&Wyy_DEP`MGs#rf#+ z%s3VGr5bnp<;Lut_#Cw-)BKnE|Bb1ZU|a^%n??iU{b0!-tCt(O2k26$5WkmkWX}U= z_#f~48yeof9k2h&aDc3fN5G!yyUe;J0@DMR3GD1m^Yvsmqj=LPY{IY?!ZxS9!*X-> zYCP?KU*KZXKS$|ztPCmO*wVcN0bcBx@HqCEY-TDgfA;^~&dQJ;Ks!15gN^Yj%1edz zY;HOKHa67s--ADB!#3ZauOAZ9KUkUY*U(Zt$T|@90oNR<_C7u?jzAEP(%q?`00$lc z@*dqRd8Rm;Dj99yyd{^T_OOez1PE_8~yr@bR& zK!4yDe&*lLj3X>Ek`C;>=q%+45Gg?%LDi*EX^?C4pm~6CfJcWc0=()UwcI{r_M^Shhb1j24Z{ zRtVg(PgpkWKR_YyY!|aEO6R$FpE8h21tA-Bj{ia&?0r0!;y5Rl0LVuz zN`W~$Zt$T|p=gIlcJT&{mIMQs1d6o&Ir^aXvp(Rkivckn`-4ERkK>Q>@c%MiVAJVO zZS(iy1s^~>`hOsd0CA&tpd~xPSo~o1;|D$Hgh9%_SfvM%9s0C%+WuNt@Ytnu0J?!L zi+uZYH})?aef*|1>{xgC;Q!;J5&W{BVo!CA7351qC)#3k=kr^V zq2lEWB~ptO@;-~XC6pWEah|{ifP2gJ;K>{=kRH1x_@w_qxuI=_jf{_Ww!h% zWgt3RbdbyL>7N?uuv6>5V|pJ?dk;|AStD#~=Uxm#EpGERwG1|=vPi#%nNhmpxU@LDxqi0fPF zw$pnHs}5I1?$>|$;LwcpuKgd0n1ay#rN%3cUj5p!+DI8KSg=jz+BcY_0&i!uU13zT zLE6ykkQc1xTVt)Y{sXVSsS!S?f)`kUBTS#kZ^I!u-?V0jd>%A#aUir|aAY`)QyOI_ zkoYhKdPKoMsdg;#_)-lD7C}Owh|+gjbC+vT#Ms|EqQenP&K)O+?AGB3^h(gBi{Eo9 z#yF@jzlJqbN6iYa(K^s>mFA&bp_SP~#tFfBq{9(br9R9}oQz%dJvr#XiTmGMRVzMc z4tyG!I!(78?UG{+=^In--a=sw;jt;|LA+V$6m<^&y7c@#>xFEnPKsS9;yKJ<%YEl$ zv_M+m8|>UWu*@_c?v*+)xI3b1R*@7`oX^MXQWw!{QZx>ltWKbb3U-xN=2*6g1mecc-wPqJxKYVQ@#Jc4VRs69-_v1NN!K7=N1Pp;QsGULyZ+ zd|)h1V=F@)M-ys`7i&#~FRtirI{=%@sK)f$(}F*x`mxmKV4p&LS+5ycP=c zuf(r-WaHtaby{H6!0L!QlQCeq=2`J5F<=NyF!@YA z$#$84*8q83PR2(se;y~n_}jOd&HxM-$(yUpp=ab~p%l6Nc@JQarc3+ArD_)z;m9mAyU#lDYWx5O4$~Va*gTOf>5snxHYXB#sLUM0x;>1gTxr3*EEesWdzw5+o zO?-kh0>Db5o$XcwGHnKwG}(6~k&6E)WR)@)e7~s~oCvEVMJ6{V$`cjAAinb^@Z7lz zj+&?ujNcoj?GXdxWEj@>^h*VtG{#r%Lp5jN2*>M{IH&QZ_p;5vemS`uzi*hS7TTpMtTE%dm5(jG} zqe|((Ao-@bO`&?jhJo4FhASu4tx~S_#Q74W0Optau_AC}XL5aXK{`@+>t>Au{AfhV z++LrJoPO)HBZu_#Rsd4Va=O;o5b0+nG#^znBqAvp1pzsM`Cv0?c?V0m;mD6?>Mz_( zc0VB~@lMA1`1q&Q+fUS!fWsSaQAeZ4Lsp-Iw&u&kA}^Wfq)SH@Yv)LR@Dl) zIpDI1PBsqg?G9q7VjQ1=qXWKD!RpZ3s8VfsDtFT`mm9COM^{IAeW%l|W?&sFh8ELw zfYY@ZX?4rvTtPbP#JRz?Ot9bQBliLj!AbSes`Uz!XU1ar^2Fg|Tfs)__?S8aoPM|H z?x|hKPnvkXpbK?EU^(}z(&FA3*dQ-G=w6Qi(i5xQYFl!A?-woq0r}Gi&^w$+; zf49o+Kjirg&sEVDjndp8{J>;2oEVAZL}u_u@cN45PMG^0pT6uxajoc)ZAVpYIMu~8 z`)I$7b0uJcFsEELG1nHpgJH9&H>|ys;(LIP_DOT*Bs%DXc052yHi#<=wHMiG7;N#j z!?x4Osc~OSbGz{;vAddxaYI0CapR!l+9jMfF}2i90lT}94TdFeb)AtJTtLP!uOd^` z`9JCgv*bnYwj1x}Z#|6uRUICS%;SK^A=T)El%%edXp@#9|F4qkc4u%zSOL6QcTI(= z$#C7cH3m@h-nMo+DWnPP{$8(R@j+dX@S7hXyCSMbq zOnHE-I9`7nta>)BUlSp!oog?gH{@RWKK4?A#idy_lwH+&I1jL$RiPvEKqlt{%b>v& zUSX48pD~X2A--9z-jtQgD% zgyIO8r3Nvo&bd|+>(pZ?V&14$pIDHtaxNEW_@bA=A|ouy#Z8}ze5%FACPy5P^FWvG z1xAh9&Tug`L{Ub~tQdp7%?iefPw$It(Y0#@Bl=8=Rc?`RmKo-H@&NLmfk{NdBD4+RK8J(4Qh6_JxTGRx_k8c?w8JNj z4OQDA&k_!#gk!7ST@3`rG}z)2t-IW~r%}T}Kn{&P2o_Www6?}@OX=x?^tD|nM}rd2 zKR4vTtvs$>2^Q3K^IY5)iIfx5g%sW5%eQ(9zQ<188d@!=2?S;mNMx7DW>p1deOkJW z%D0mR=~9MDJ}0y@K}VMvt}D_KDb|x)u&P5T>Zx3~3QGp$flyckAQj4TknX{W-yq&7 zXN)Zy|Js_jA)k(}u^ZUH>g0(KhLpa^Dx+JAqoFZ#kmM_Vox*$|Uo&^?IHc90Kw7=W zxBJ)#I=eCtg}@FDKL86DKD@XIO?H017r@e?)3hT%hvm%5Ty@_SqC8)C>RGAQM< z7qIq-HG2RbG#m|#B4K@wH>L}3y5>whlI(M3fw;tp2!fO?q3YY4?Tr;* zp0%`QbR7%a8mD~+fzU5juyE~x?C|gV5i2}4wQk^xY4pbO*^S?%VQ-fL2LqsD@V((IPC2UU)PE z&hbg}xlP7Z=@arbvcWv19B{UC*|_tRXoa}ri;!!)sMm5&8G^&VpO|m?oJeuE?kAmq%@?3SzeBSGqeM=+AI{3lydN>FGH@s<3-;FjOcy^^RcWD}tWfWv0K4Xq&IVz=Wk8*A0t_2J#abox_8!_c#t{X4#g)tMujYe@{{~Gtkvvg6<>)WU4cK_BbZaC(_VDFlJ5-N zjM}AKL1W+i_(axP_t-fVkiMpcKM@DQhgNogpk1{T% z4}9!Z(S&62@i~}8{!Y0=m69p_?aj!(^9{ozwlXfYA_na*uC{W1tH_j-;PKY~PF=&F zc0SBHTC)WV&kl2g2@!|Ick?#$*WP~ryl2m;aaFEwJS~`3ZgsEf*{4!-2Gm~Vidnw( z=c{M@WzLO*xWWjyncR(V=JSxVlIKEq#DkI- zRj2QbZ>x$f&DI1GK?nP3pJ>5gnnz3e(LkNldwTjKpM4+&MKPm37CI4$r!}nF>y#?Q zKNCE?$7wm=Kk|Sm1$bm)A!D)E|feix*mo#*9Z)VxHp6 z*NK~!y&K_6G`DCO8qjr=e^GG#$g6m@Fz0K83K`aWAjCmHz6XVmD)h*IE1<|?Y7_Yl zW0QwZyIIvW^KWs~lX84#0K%`V#$%aZ*4Z2y82LP{n2y`T$YcbU%UOF^2X9otn92Kn zE8|+1shtb?5gV_84l8#nCzZMk-QdH=hOg5!r(XFeu1yY^z9&9^!lzYz>)I8^g5Tb` zKLYz@BEcQU-p6IMe>)!zoP!ro`P6<1HE87stX zyf^qruH@O1^M<|yOlJkF;L`Vg_imKN_Ph5!=}$Y}dw~a6-qh=9;<^T`1Sg{ykXXI` zlEH>|#Wf={L&DByy>7gu)rAZ*pYG8*a-+vDOI+Riokz?FmekVW_$=gFK&+~L*W})k z8;S%A_ffyW8uuLc?iOO?4JN`Jh1~#-m1X|M?X9oM(bjrR*@j7?>h7!g%NuoX4eP3i zz0T_Pcp21Pxlo`tQS4q-6Oh7fwM!D4`~;BD!0`4h4maPG4>$TePj@V?>Wi-nx+`$* z*V`4X+dofjy7hFTyGYV!jZPGh9}X;sGMCAu^L5PTzAlV)nCpnv&H9rcv$_HM2m z`5QHe&69!ra%9c5_nLZ;ogj24dX5{|t<}HG%QtK_auhZD#JbaCs1PG0J%-b8GiXW& zQHgCYAAamv1={rUEJ$OKLM!O;(?YOqM?jW#3U~~Y=uqa0i)VSe%IUZSs*&lN{VR@c zm{cV6G1r5{2Z|%m<5f3OwJ%%yiIk(tnkD^COCAv+_N=m10-o^_*rxHsP{Y_R_hygx zI%4|K1=F!%=`X!cHA|O{ z^$>k0XltMxlAE6>xMnx%`qU#6d1B$Lkj6V9aQ%_N4aPAMRrV*iHRH>S-x`S8DUHM9QwzPnHrOew34# z2Ek!dHs~>h5b~P8MAm(PL_Z5j6tY|c!e$l&7`n1J>*8BkvTn2>nyfV-oNmbr@_bzo zBk@jMHO!u=#p}j`T;Vyo;iH0ySSJ7swSk z-pwAiU~-(*G!_ejS0p&BQEJ{EPczDmCie2*ZEt>+$9oL)umC;wO_;3oGu@wmvjm|N zOh%qI;RhlIHb}O3wdQ~ncE1W)9Q5ER18zb)Hw=t4&un*G1-~9MD^pVRMS{2~a-VvQ z8Fe^3?E;j=JAp(8zaw3~?M>N@p-O%goeOb|K0Xc^kEBsxqbB5(3ZtOHkB^;M8meRaCV%lQDauP6aoE*>cbY!=}Hf`bch zTMI$?qi74g#`kGS#@i1OKDd(7v#h>n0g(plSP8OAVFaefZ!7kI3b{Ec9Xlh`cfRHe z$W+15nqcVJz5VCzAlB4U(r+f;Ic(Sn_1Z3=9Z5HMz^f}D4qj%by>qGO8L3eI7U^RaHePblVxLN*9${^*4r>j$=G*fixBCQ@| zvys|HY4zx?lq0_4?z>G)*R3`H7h6b6AwaUbqBrvg=`GRMie^DHCc7&GBpX;~fU^2A z+S|$-pklqalmckCB4!YDs(|k3PG0${M1OIN;wN9LWTqSWPS}{W36L@wP;6(8o!Lok zcPr`L_*!angyX?4+tlGy2oc(7NvdSO>B?+G4bn32=puHo+V!g_@HR< zQioL$hg9;rZ;l%B|rKjt~B=Y5O-N1H8p=iJq zq2lrFu!vnM`9729UDryGVILkZ8fqu#I~o2!{wY6#!|S892S57hx8zg^Pl$N2F+-rf z+(%s?8r+zHRFm`!m!T{QK=Gsw3Ii)?Zv;3fTsvBW0KfICQb_=99UVA(7%G~P$;=@}$ikK@OEBm&9AOHiYs9H}%4*yh)! zBmmrwbb>ud0?fcjdYeyJ-2<|?rjc=O(e?oIL1IE>0yK4`2ot&sfq`~hYN@hx=)gZn zcn;wk4KXerGbe2fz`W{)T?3ANA{d$wLpW0Taoq~2%|0kwxG&I&+r)uKpZ~=P1u@7P zfPqN)CxAgoP{2V~!l?CN`4$=xo6qy31n`?&S1y9FnBqQ6((aXL=;=Q;UXZ46dOR@g zwcOxJ!r0IoJb(uV-wa^gUY|FJM~ur7U(LNvvymTkQQi(>`ZVT|x;3sWaD^JKy#VYm zM<{4);2xI(t&~V%5`!8f@$~UsB>!DO@%bfb1g;GsT7#?S-K1PY z{;#!Zp$7ZNJH_0cauNfpXLm~0nzi2_t!9Swo*tu6p=DeGl9B&OcxY3icCy5~xip0o zdK|O1(zUcE>{R}Z4P7Y}Eknh3r1cihv=c~F@#c;8lk=Q2Nc2dkD#>5)z%5d{sd7SV z+W1hP^OSPMo*^2}AG-Lqlm`66&pom0T5oRr$E0v%$GKCkYm`brz zo>as+J)>tKuWZJ@nULygqJEX9zL1)S4%1mEF}5I+>ia$UDo*tE_Gn2A8cWtbV<{9J zr%(ADTnJ<4Teo0VTUIY!aT>hIwY~c|vi>mlxFnHC7EK?2qE^UadGLyjgtm1ofQ&*w zs`dfvoa({dor`og0@gzhw)>ZJ2CYLo8_neAuUb!hH=$ql=>{oCuZ%FDLEuS+t|4F8MeeAscBFoGgYJ zOifF=S~(CJX}+&wjhr-?mo5pYjz}D6Mm@fWuv*FQ1mbXQyI`=EQ6|9w4ouFi#vuTX z-VmU3IbVbZ2k=JYJ1W58ZU-lW)GTgESO>s0$`xJ-N$>`6w{>@mG3bx!Y0U@Dr~z_g4ICrm8w3|XT^#7pAbMQAAG$if$25a51dCsZ+6#^% zS`zwbvM1c6X#@Mnj_U3`~uP!$45bcbtL*4lECPB|umUFi<-y%mrbf0x;D+F5Z0^{sji% zCI}oXViUOUKrdQ22yp1a6vqY=ZD1A-dNgzuzl3!;V8p}rVH3#tKthL$v1?sQFPsD+ z?!5#U#3ug*1~4Yl0R~qFKoBAAs2}HSiZuDM0+Ru*)5!3TYq)_~mary+cLQk!FPR{m zO98Ia$YJfBvtD3|2X9$2kcd=57>NG`1^~MT80R7xfQ~~Mc?vi4^(sp&2QUlgV__)p zSi<_RNJoYErukPGES|qbGH^qXJQV1&Lv1fYgokkuSnMk@hzCFQ{SUV zsAzul@VUOx+!!Vo`)~-nI5Hy{Ug?c0LsiYzO6|PRAF$BD^7tIU*WwKF8T=M!`%m+n zM6%I#g~6}WT!-UR`qID3N!Gf=+p=ccVt1fR#lf48ZIMRbj&zo!kN8*5;z)HbM_b2O zLo-QJiQTVy>WtdIrFq~g_!75I!&mA?V(Q~ee%Ty>6uZs<%8pKJtvmyFdBIbJ!qVVT zzph2^vvIT69KZT%4o=dt5&1wR*_waHa6WQ&&C%**X>Pyf9y9)Bq>VA&oc6kO9eR&e zeu?Op_Zw+RHf{9QGgPDOdYQUN!u{530+M?lMq3n#%pH3(vT;|u*2=!1aOPYIri)mt=jjdiK0G>@G47y{H{#xaa@R63^wvocngLTZVt(RBU z%FTP;t3C?#4&CVy)M|GPAm7S8s3+;7TuHjQdN5n6&#kP0n9<<1=+k z(0E@NW@15d?i_QDlBKO5dF>aytoul?m&ExOy$*KxR4ai_aQ(hNacCWSWWMbn-*scD zxuQ)&e54?!_rGl7dlOI}jSQ&B4?A*gVJ%_S*MH&encOO3yMWwW!-~24SKfE#FzDx* zJFkA-n=H|N&^YLj`zsNtotLhfdrf6Y?ks#h5al#^+4Roak*V}?xwLb8-2^6sFEVSd zI~XF)zEEOmF^X@$WX)eiuD|nPL2#-EJo^_U6Atzj3aVaQf7fke3DR7v0~_;#6fad? z>Kjsh43XS>S`c0mH0Mleb6t0!!vI{#FKoIq9fGi^K$CSQ(M>yzQKef%@bN-j(jZ8% zJ|G;vU?KFie43{&;PK8Y(^G~mLkS71?7!`mA5MxPW5&K4ecx|`I9*7J%dwS}#mg=j zwa>+i?1n5|RHcgNOWhp!e%IAk)tj{Na;YcdG{u~qUfi6WTJIpC$rJHa{6J1^4{JVG z*5K8g$9n6$FSfBC0_=@rnIC8Q%P{Xp_N0w7@^X;!Xbp)Sqerf6I<1&0NF0I_YI=I6 z)}u{t^*O%~6puuHJAWpd@AUW{9vdwOr_bGD{(L($_gxFwb4O)1APNqHA*`V90^n86 zwhD|@E0n7_9VnSlkGOaSA$!AD{%t~|C~9y1?iCFkX|K8Y5o8mTU*h%JptemTNVKBu zobLj-X~R`CSzaya-Z@36uzpp$jo5c=j!u{*KbcRH7(?<+mncw6_9d3 zziFyitWwK7Ha;MnG1riGPvl^;&c?fJS9@RO+O-M-GtG><<(rGRG#2E7RtxQ6-9C@^z_i?|v1G&z8M1bA z_T1Rmx20UnUr?*0yQfU9_M;K;|3UP)Po zG4XLj@y(j;@hR<$gUl`-w~&~Oxc528?Pc=StP8&Hj9~o=N#T@>(w-y(sRjx~!o#Hx)G!80{g!2-y9a96?mp4HuL242eUIApCu$4?u0z5Yf6~iGREJPbTP9l%a!ku zrFUH7y+e`Un)q|wK>tv#48F*8g&Vd1EYZiKB)+r1;wpbx>zagw7Q{5#~QG)!X zgijTULz~j-Etx4Lr^aasSM|8Ji)EUL@GA>>b?7&dxGvmZQS++B+kOs<^XD@YsBwN2 z^KFIX_3jRSWj?3LGGLe{$EjKFEft57)O`%4 zB|oV<_!}RdxckgJU_FZ%+px~E7OScmTFE@}cEn7n#*10t;L|Vk{)4-I(@bG6rp^O$ z^x^g1+#0vN6PE}h@$eaxp!PEybCtgGnDeOtzmZAD-0UmHZ8-eH-Sp%lM$ z&*3vMfwIKBk^afNI|To;zi!%^Z;*W~Ju@Z4{F!${E2A^S{Q7&FG>3z`5k(h^8F`^D z9V2?9?nT3ODdUb@ry7Tm=+u)kJf>glopOpWw(jc@BlF*`tZ8yQc)zySQtn-dr`Kc0 zE?R8$9@=zf!{i6wBc@L~c12>QW*b>hH298W*Zelb7gd{(yg?%WrlhALVYcqfu~vD% zBMr&ju_-s!Tl<97vmADKOx#&0k<@?Ud|f*KFh1}S^Zw);*IA(*u97t63K_fMLm4wW z<(SH|L=Iy!cJ z+(el5&$>;CP0T#1rQJt|XZol4($eg%WHyvp8YQ}>w+wE@uexywvFPb_$ zy_%5VUW+E@A*QAhj)A?bO1m$NLa(%`?C#s7U--Ehe6t~(^5j$8P*RPdyYaKC;5z19 zR-QW=_k_d_nj0Osk>OvW+KiKk9p0xGJuw2F>W}oa?pR{BAPw(MU$;Igyx} zsJR8t{WJmVL=i$cHZC6Surmk)~Y?<<->jGzPhG#Jx?g3}L-XB<9zV?H-17=o$CoX#4F@`ftb_WCS}0{-WNlUSj6&JhvWWTjCveso7n=iHUX?2R>w zeZL&unW}_eRhG#A!J^}6ixo!CSj zYSzgu4_`Rj3f`4iZE@ad3q#}bL5-ufc21)QL%USOCPzz8QVkB*>^3hxnSthiB0nG=(lkSB_elJ=SnxYfnfe9Z!Cr9uQ;vETCa+dSOd|$(%(y=8Ytlq-O-* zUC#-j0`9)F%dW0d7VPcCg8Q2i)e0?9Cwfp1_##Ak0up-D1k`efyK1&8&4I^V^pFbSSiolbXMV-4 ShTuQyfRXff>lG92j{hIC6RZ#b literal 0 HcmV?d00001 From b1fb7fe24e353852b3ab8cc97511463746eac0e9 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 25 May 2024 23:46:08 +0900 Subject: [PATCH 119/312] improve lqr steering control docs --- .../lqr_steering_control_main.rst | 2 +- .../lqr_steering_control_model.jpg | Bin 0 -> 11721 bytes .../lqr_steering_control_model.png | Bin 17366 -> 0 bytes 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg delete mode 100644 docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst index b18e4728cd..fcc9b5278a 100644 --- a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -20,7 +20,7 @@ Vehicle motion Model The below figure shows the geometric model of the vehicle used in this simulation: -.. image:: lqr_steering_control_model.png +.. image:: lqr_steering_control_model.jpg :width: 600px The `e` and `theta` represent the lateral error and orientation error, respectively, with respect to the desired trajectory. diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg new file mode 100644 index 0000000000000000000000000000000000000000..83754d5bb01c9a1a4339248be09b476578291922 GIT binary patch literal 11721 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 YY#zr#%kTQLyIC52cxCrT=Fh?Z0n~N9RsaA1 literal 0 HcmV?d00001 diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.png deleted file mode 100644 index 961dfcdc05cd4938c1ea7ebc79e1c8e0314e9dd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17366 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 ShTuQyfRXff>lG92j{hIC6RZ#b From 3504db00a666d84de0e4738fad1db78142f34c17 Mon Sep 17 00:00:00 2001 From: RyuYamamoto Date: Sun, 26 May 2024 15:42:25 +0900 Subject: [PATCH 120/312] fix: typo (#1023) --- PathPlanning/DStarLite/d_star_lite.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/DStarLite/d_star_lite.py b/PathPlanning/DStarLite/d_star_lite.py index 86e777d7b7..f099530173 100644 --- a/PathPlanning/DStarLite/d_star_lite.py +++ b/PathPlanning/DStarLite/d_star_lite.py @@ -2,7 +2,7 @@ D* Lite grid planning author: vss2sn (28676655+vss2sn@users.noreply.github.com) Link to papers: -D* Lite (Link: http://idm-lab.org/bib/abstracts/papers/aaai02b.pd) +D* Lite (Link: http://idm-lab.org/bib/abstracts/papers/aaai02b.pdf) Improved Fast Replanning for Robot Navigation in Unknown Terrain (Link: http://www.cs.cmu.edu/~maxim/files/dlite_icra02.pdf) Implemented maintaining similarity with the pseudocode for understanding. From 9fed26e503fb28fbb6169e8fc3f8b4c29975e16f Mon Sep 17 00:00:00 2001 From: Tim Huff <89954856+timmarkhuff@users.noreply.github.com> Date: Sat, 25 May 2024 23:43:05 -0700 Subject: [PATCH 121/312] Fixing ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py (#1022) * fixing script * removing unnecessary code * fixing CI issue --------- Co-authored-by: Tim Huff --- .../rrt_star_seven_joint_arm_control.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py b/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py index 0f449bbe51..3bc2a5ec1d 100755 --- a/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py +++ b/ArmNavigation/rrt_star_seven_joint_arm_control/rrt_star_seven_joint_arm_control.py @@ -265,7 +265,7 @@ def steer(self, from_node, to_node, extend_length=float("inf")): def draw_graph(self, rnd=None): plt.cla() - self.ax.axis([-1, 1, -1, 1]) + self.ax.axis([-1, 1, -1, 1, -1, 1]) self.ax.set_zlim(0, 1) self.ax.grid(True) for (ox, oy, oz, size) in self.obstacle_list: @@ -375,9 +375,9 @@ def main(): search_until_max_iter=False) if path is None: - print("Cannot find path") + print("Cannot find path.") else: - print("found path!!") + print("Found path!") # Draw final path if show_animation: @@ -396,7 +396,7 @@ def main(): [y for y in y_points], [z for z in z_points], "o-", color="grey", ms=4, mew=0.5) - plt.pause(0.01) + plt.pause(0.1) plt.show() From 1aa9a12873c49393dfa1b17a01f72e38b71ece6d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 May 2024 20:50:36 +0900 Subject: [PATCH 122/312] Bump ruff from 0.4.4 to 0.4.5 in /requirements (#1024) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.4 to 0.4.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.4...v0.4.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cbf18ad938..6a07880f45 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.1 pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.4 # For unit test +ruff == 0.4.5 # For unit test From 01949a6edcf79100527a24ccf7d07fad235df03e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 1 Jun 2024 17:46:27 +0900 Subject: [PATCH 123/312] Bump scipy from 1.13.0 to 1.13.1 in /requirements (#1025) Bumps [scipy](https://github.com/scipy/scipy) from 1.13.0 to 1.13.1. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.13.0...v1.13.1) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6a07880f45..337f56781d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 1.26.4 -scipy == 1.13.0 +scipy == 1.13.1 matplotlib == 3.9.0 cvxpy == 1.5.1 pytest == 8.2.1 # For unit test From a9be11d131e404df00d9b91c91289aec7bc895ea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 5 Jun 2024 07:21:06 +0900 Subject: [PATCH 124/312] Bump ruff from 0.4.5 to 0.4.7 in /requirements (#1026) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.5 to 0.4.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.5...v0.4.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 337f56781d..a7cdea961e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.1 pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.5 # For unit test +ruff == 0.4.7 # For unit test From 9d06b1e3c3179f9da85f9646bf2e25aea0e4b068 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Jun 2024 12:50:05 +0900 Subject: [PATCH 125/312] Bump ruff from 0.4.7 to 0.4.8 in /requirements (#1027) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.7 to 0.4.8. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.7...v0.4.8) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a7cdea961e..7a1b36454c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.1 pytest == 8.2.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.7 # For unit test +ruff == 0.4.8 # For unit test From f289bd22b9390ab7fafe20c88fe8dda6919a4b67 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Jun 2024 19:45:30 +0900 Subject: [PATCH 126/312] Bump pytest from 8.2.1 to 8.2.2 in /requirements (#1028) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.2.1 to 8.2.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.2.1...8.2.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7a1b36454c..3263de2c56 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 1.26.4 scipy == 1.13.1 matplotlib == 3.9.0 cvxpy == 1.5.1 -pytest == 8.2.1 # For unit test +pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test ruff == 0.4.8 # For unit test From 83cfed15b6430b01130240da53a6c4d745ef9378 Mon Sep 17 00:00:00 2001 From: Yukihiro Saito Date: Sat, 15 Jun 2024 07:46:15 +0900 Subject: [PATCH 127/312] fix(README.md): typo in reeds-shepp path (#1031) Signed-off-by: Yukihito Saito --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7a01ae361a..ee40dfc7eb 100644 --- a/README.md +++ b/README.md @@ -407,7 +407,7 @@ Ref: ### RRT\* with reeds-shepp path -![Robotics/animation.gif at master · AtsushiSakai/PythonRobotics](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/RRTStarReedsShepp/animation.gif)) +![Robotics/animation.gif at master · AtsushiSakai/PythonRobotics](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/RRTStarReedsShepp/animation.gif) Path planning for a car robot with RRT\* and reeds shepp path planner. From 15e1ed5de1b2f3d53eedf896b0c9efb9650d25bc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Jun 2024 07:57:18 +0900 Subject: [PATCH 128/312] Bump ruff from 0.4.8 to 0.4.9 in /requirements (#1033) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.8 to 0.4.9. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.8...v0.4.9) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3263de2c56..3b51f38858 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.1 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.8 # For unit test +ruff == 0.4.9 # For unit test From 75f3e4d56cb68ae0d6c1b2fc61e7f265cb2005d4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 20:27:21 +0900 Subject: [PATCH 129/312] Bump cvxpy from 1.5.1 to 1.5.2 in /requirements (#1035) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.5.1 to 1.5.2. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.5.1...v1.5.2) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3b51f38858..7cf9cfb7c3 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 1.26.4 scipy == 1.13.1 matplotlib == 3.9.0 -cvxpy == 1.5.1 +cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test From d6075ca7d039b0ce98fd51518b9f48ca13763b3e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 21:32:49 +0900 Subject: [PATCH 130/312] Bump ruff from 0.4.9 to 0.4.10 in /requirements (#1036) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.9 to 0.4.10. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.9...v0.4.10) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7cf9cfb7c3..576bfcb86d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.0 # For unit test -ruff == 0.4.9 # For unit test +ruff == 0.4.10 # For unit test From df5d99248dae9967a9e90517900e3858b0ae8b5d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 22:12:57 +0900 Subject: [PATCH 131/312] Bump numpy from 1.26.4 to 2.0.0 in /requirements (#1032) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.4 to 2.0.0. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.4...v2.0.0) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 576bfcb86d..12830626aa 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 1.26.4 +numpy == 2.0.0 scipy == 1.13.1 matplotlib == 3.9.0 cvxpy == 1.5.2 From 71766f0a3eba78fcf6ba3820ed74464f32f751ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 07:38:06 +0900 Subject: [PATCH 132/312] Bump scipy from 1.13.1 to 1.14.0 in /requirements (#1040) Bumps [scipy](https://github.com/scipy/scipy) from 1.13.1 to 1.14.0. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.13.1...v1.14.0) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 12830626aa..7285355871 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.0.0 -scipy == 1.13.1 +scipy == 1.14.0 matplotlib == 3.9.0 cvxpy == 1.5.2 pytest == 8.2.2 # For unit test From cca764edf600f3a29456981691af8f414c4030ea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 21:19:23 +0900 Subject: [PATCH 133/312] Bump mypy from 1.10.0 to 1.10.1 in /requirements (#1039) Bumps [mypy](https://github.com/python/mypy) from 1.10.0 to 1.10.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.10.0...v1.10.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7285355871..1c4806ab75 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.0 cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.10.0 # For unit test +mypy == 1.10.1 # For unit test ruff == 0.4.10 # For unit test From 0f8ce35bf236ac7c97baa99e4189f6bc283be834 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 21:57:57 +0900 Subject: [PATCH 134/312] Bump ruff from 0.4.10 to 0.5.0 in /requirements (#1041) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.10 to 0.5.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.10...0.5.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1c4806ab75..5eb478dfca 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.1 # For unit test -ruff == 0.4.10 # For unit test +ruff == 0.5.0 # For unit test From af7a75fa837f98ab2980e4f637e4273ba4a78e50 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 07:16:58 +0900 Subject: [PATCH 135/312] Bump matplotlib from 3.9.0 to 3.9.1 in /requirements (#1045) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.0 to 3.9.1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.0...v3.9.1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5eb478dfca..406786edbc 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.0.0 scipy == 1.14.0 -matplotlib == 3.9.0 +matplotlib == 3.9.1 cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test From 4b69c7a859e7658483c16cd5b17820f1056ae21c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 21:21:56 +0900 Subject: [PATCH 136/312] Bump ruff from 0.5.0 to 0.5.1 in /requirements (#1044) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.0 to 0.5.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.0...0.5.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 406786edbc..e334ab227a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.1 # For unit test -ruff == 0.5.0 # For unit test +ruff == 0.5.1 # For unit test From 26deca19b63382e2fffecc804fceb6694c21d5aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 Jul 2024 08:20:28 +0900 Subject: [PATCH 137/312] Bump ruff from 0.5.1 to 0.5.2 in /requirements (#1048) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.1 to 0.5.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.1...0.5.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e334ab227a..aa91cb258f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.2.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.1 # For unit test -ruff == 0.5.1 # For unit test +ruff == 0.5.2 # For unit test From 1e101d1f8adbbb6cdb9334807067b872ac62004a Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 16 Jul 2024 23:02:31 +0900 Subject: [PATCH 138/312] improve LQT steering and speed control document (#1047) * improve LQT steering and speed control * improve LQT steering and speed control * improve LQT steering and speed control doc * improve LQT steering and speed control doc * improve LQT steering and speed control doc * improve LQT steering and speed control doc --- .../lqr_speed_steer_control.py | 13 +- .../lqr_speed_and_steering_control_main.rst | 127 ++++++++++++++++++ .../lqr_steering_control_model.jpg | Bin 0 -> 11721 bytes .../lqr_speed_and_steering_control/speed.png | Bin 0 -> 22550 bytes .../lqr_speed_and_steering_control/x-y.png | Bin 0 -> 31256 bytes .../lqr_speed_and_steering_control/yaw.png | Bin 0 -> 23991 bytes .../lqr_steering_control_main.rst | 15 ++- tests/test_codestyle.py | 2 +- 8 files changed, 149 insertions(+), 8 deletions(-) create mode 100644 docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg create mode 100644 docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png create mode 100644 docs/modules/path_tracking/lqr_speed_and_steering_control/x-y.png create mode 100644 docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png diff --git a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py index a70e30d378..d85fa98a84 100644 --- a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py +++ b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py @@ -55,6 +55,7 @@ def update(state, a, delta): def pi_2_pi(angle): return angle_mod(angle) + def solve_dare(A, B, Q, R): """ solve a discrete time_Algebraic Riccati equation (DARE) @@ -221,8 +222,9 @@ def do_simulation(cx, cy, cyaw, ck, speed_profile, goal): if target_ind % 1 == 0 and show_animation: plt.cla() # for stopping simulation with the esc key. - plt.gcf().canvas.mpl_connect('key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + plt.gcf().canvas.mpl_connect( + 'key_release_event', + lambda event: [exit(0) if event.key == 'escape' else None]) plt.plot(cx, cy, "-r", label="course") plt.plot(x, y, "ob", label="trajectory") plt.plot(cx[target_ind], cy[target_ind], "xg", label="target") @@ -290,6 +292,13 @@ def main(): plt.xlabel("x[m]") plt.ylabel("y[m]") plt.legend() + plt.subplots(1) + + plt.plot(t, np.array(v)*3.6, label="speed") + plt.grid(True) + plt.xlabel("Time [sec]") + plt.ylabel("Speed [m/s]") + plt.legend() plt.subplots(1) plt.plot(s, [np.rad2deg(iyaw) for iyaw in cyaw], "-r", label="yaw") diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst index 68ea9c88b2..a0b145456c 100644 --- a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst @@ -7,6 +7,133 @@ Path tracking simulation with LQR speed and steering control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_speed_steer_control/animation.gif +`[Code Link] `_ + +Overview +~~~~~~~~ + +The LQR (Linear Quadratic Regulator) speed and steering control model implemented in `lqr_speed_steer_control.py` provides a simulation +for an autonomous vehicle to track: + +1. A desired speed by adjusting acceleration based on feedback from the current state and the desired speed. + +2. A desired trajectory by adjusting steering angle based on feedback from the current state and the desired trajectory. + +by only using one LQT controller. + +Vehicle motion Model +~~~~~~~~~~~~~~~~~~~~~ + +The below figure shows the geometric model of the vehicle used in this simulation: + +.. image:: lqr_steering_control_model.jpg + :width: 600px + +The `e`, :math:`{\theta}`, and :math:`\upsilon` represent the lateral error, orientation error, and velocity error, respectively, with respect to the desired trajectory and speed. +And :math:`\dot{e}` and :math:`\dot{\theta}` represent the rates of change of these errors. + +The :math:`e_t` and :math:`\theta_t`, and :math:`\upsilon` are the updated values of `e`, :math:`\theta`, :math:`\upsilon` and at time `t`, respectively, and can be calculated using the following kinematic equations: + +.. math:: e_t = e_{t-1} + \dot{e}_{t-1} dt + +.. math:: \theta_t = \theta_{t-1} + \dot{\theta}_{t-1} dt + +.. math:: \upsilon_t = \upsilon_{t-1} + a_{t-1} dt + +Where `dt` is the time difference and :math:`a_t` is the acceleration at the time `t`. + +The change rate of the `e` can be calculated as: + +.. math:: \dot{e}_t = V \sin(\theta_{t-1}) + +Where `V` is the current vehicle speed. + +If the :math:`\theta` is small, + +.. math:: \theta \approx 0 + +the :math:`\sin(\theta)` can be approximated as :math:`\theta`: + +.. math:: \sin(\theta) = \theta + +So, the change rate of the `e` can be approximated as: + +.. math:: \dot{e}_t = V \theta_{t-1} + +The change rate of the :math:`\theta` can be calculated as: + +.. math:: \dot{\theta}_t = \frac{V}{L} \tan(\delta) + +where `L` is the wheelbase of the vehicle and :math:`\delta` is the steering angle. + +If the :math:`\delta` is small, + +.. math:: \delta \approx 0 + +the :math:`\tan(\delta)` can be approximated as :math:`\delta`: + +.. math:: \tan(\delta) = \delta + +So, the change rate of the :math:`\theta` can be approximated as: + +.. math:: \dot{\theta}_t = \frac{V}{L} \delta + +The above equations can be used to update the state of the vehicle at each time step. + +Control Model +~~~~~~~~~~~~~~ + +To formulate the state-space representation of the vehicle dynamics as a linear model, +the state vector `x` and control input vector `u` are defined as follows: + +.. math:: x_t = [e_t, \dot{e}_t, \theta_t, \dot{\theta}_t, \upsilon_t]^T + +.. math:: u_t = [\delta_t, a_t]^T + +The linear state transition equation can be represented as: + +.. math:: x_{t+1} = A x_t + B u_t + +where: + +:math:`\begin{equation*} A = \begin{bmatrix} 1 & dt & 0 & 0 & 0\\ 0 & 0 & v & 0 & 0\\ 0 & 0 & 1 & dt & 0\\ 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 1\\\end{bmatrix} \end{equation*}` + +:math:`\begin{equation*} B = \begin{bmatrix} 0 & 0\\ 0 & 0\\ 0 & 0\\ \frac{v}{L} & 0\\ 0 & dt \\ \end{bmatrix} \end{equation*}` + +LQR controller +~~~~~~~~~~~~~~~ + +The Linear Quadratic Regulator (LQR) controller is used to calculate the optimal control input `u` that minimizes the quadratic cost function: + +:math:`J = \sum_{t=0}^{N} (x_t^T Q x_t + u_t^T R u_t)` + +where `Q` and `R` are the weighting matrices for the state and control input, respectively. + +for the linear model: + +:math:`x_{t+1} = A x_t + B u_t` + +The optimal control input `u` can be calculated as: + +:math:`u_t = -K x_t` + +where `K` is the feedback gain matrix obtained by solving the Riccati equation. + +Simulation results +~~~~~~~~~~~~~~~~~~~ + + +.. image:: x-y.png + :width: 600px + +.. image:: yaw.png + :width: 600px + +.. image:: speed.png + :width: 600px + + + References: ~~~~~~~~~~~ diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg new file mode 100644 index 0000000000000000000000000000000000000000..83754d5bb01c9a1a4339248be09b476578291922 GIT binary patch literal 11721 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 YY#zr#%kTQLyIC52cxCrT=Fh?Z0n~N9RsaA1 literal 0 HcmV?d00001 diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png b/docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png new file mode 100644 index 0000000000000000000000000000000000000000..ae99eb7ea3ddcb73d6d3e657ac0bee507b1ad6ed GIT binary patch literal 22550 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 MZ4ac2w?%*RA94a*245^ZYCiOlkPR9 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�^J9P{5Ky^UU$V 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 O7_w3iB|qKO^ZFmzkv<^+ literal 0 HcmV?d00001 diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png b/docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png new file mode 100644 index 0000000000000000000000000000000000000000..7f3d9c1d10b7994d883e720d51950fc6bed47916 GIT binary patch literal 23991 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst index fcc9b5278a..baca7a33fc 100644 --- a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -8,6 +8,8 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_steer_control/animation.gif +`[Code Link] `_ + Overview ~~~~~~~~ @@ -23,10 +25,10 @@ The below figure shows the geometric model of the vehicle used in this simulatio .. image:: lqr_steering_control_model.jpg :width: 600px -The `e` and `theta` represent the lateral error and orientation error, respectively, with respect to the desired trajectory. +The `e` and :math:`\theta` represent the lateral error and orientation error, respectively, with respect to the desired trajectory. And :math:`\dot{e}` and :math:`\dot{\theta}` represent the rates of change of these errors. -The :math:`e_t` and :math:`theta_t` are the updated values of `e` and `theta` at time `t`, respectively, and can be calculated using the following kinematic equations: +The :math:`e_t` and :math:`\theta_t` are the updated values of `e` and :math:`\theta` at time `t`, respectively, and can be calculated using the following kinematic equations: .. math:: e_t = e_{t-1} + \dot{e}_{t-1} dt @@ -38,9 +40,9 @@ The change rate of the `e` can be calculated as: .. math:: \dot{e}_t = V \sin(\theta_{t-1}) -Where `V` is the vehicle speed. +Where `V` is the current vehicle speed. -If the :math:`theta` is small, +If the :math:`\theta` is small, .. math:: \theta \approx 0 @@ -72,6 +74,9 @@ So, the change rate of the :math:`\theta` can be approximated as: The above equations can be used to update the state of the vehicle at each time step. +Control Model +~~~~~~~~~~~~~~ + To formulate the state-space representation of the vehicle dynamics as a linear model, the state vector `x` and control input vector `u` are defined as follows: @@ -79,7 +84,7 @@ the state vector `x` and control input vector `u` are defined as follows: .. math:: u_t = \delta_t -The state transition equation can be represented as: +The linear state transition equation can be represented as: .. math:: x_{t+1} = A x_t + B u_t diff --git a/tests/test_codestyle.py b/tests/test_codestyle.py index a7d11d270f..55e558c184 100644 --- a/tests/test_codestyle.py +++ b/tests/test_codestyle.py @@ -54,7 +54,7 @@ def run_ruff(files, fix): return 0, "" args = ['--fix'] if fix else [] res = subprocess.run( - ['ruff', f'--config={CONFIG}'] + args + files, + ['ruff', 'check', f'--config={CONFIG}'] + args + files, stdout=subprocess.PIPE, encoding='utf-8' ) From c862d496f415399f28ba131abe503353c7b6dfcb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 10:15:23 +0900 Subject: [PATCH 139/312] Bump numpy from 2.0.0 to 2.0.1 in /requirements (#1051) Bumps [numpy](https://github.com/numpy/numpy) from 2.0.0 to 2.0.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.0.0...v2.0.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index aa91cb258f..a0af999bba 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.0.0 +numpy == 2.0.1 scipy == 1.14.0 matplotlib == 3.9.1 cvxpy == 1.5.2 From f3ca769076b11f03f02508ed112c85901e4b79c5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 20:14:40 +0900 Subject: [PATCH 140/312] Bump pytest from 8.2.2 to 8.3.1 in /requirements (#1049) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.2.2 to 8.3.1. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.2.2...8.3.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a0af999bba..9cbe4747a0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.0.1 scipy == 1.14.0 matplotlib == 3.9.1 cvxpy == 1.5.2 -pytest == 8.2.2 # For unit test +pytest == 8.3.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.10.1 # For unit test ruff == 0.5.2 # For unit test From 76ba4ba1913fc7153e51fef434b3e955a58b3c2c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 21:44:01 +0900 Subject: [PATCH 141/312] Bump mypy from 1.10.1 to 1.11.0 in /requirements (#1052) Bumps [mypy](https://github.com/python/mypy) from 1.10.1 to 1.11.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.10.1...v1.11) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9cbe4747a0..1055194460 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.1 cvxpy == 1.5.2 pytest == 8.3.1 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.10.1 # For unit test +mypy == 1.11.0 # For unit test ruff == 0.5.2 # For unit test From 65cb7f5b41b75ef0d198949e5274546b9f015cc6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Jul 2024 17:53:37 +0900 Subject: [PATCH 142/312] Bump ruff from 0.5.2 to 0.5.4 in /requirements (#1050) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.2 to 0.5.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.2...0.5.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1055194460..2c2e156d62 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.3.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.5.2 # For unit test +ruff == 0.5.4 # For unit test From b1856d5ef3384d7ce1e8ecdd4937d1f76b28d99f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jul 2024 22:09:58 +0900 Subject: [PATCH 143/312] Bump ruff from 0.5.4 to 0.5.5 in /requirements (#1053) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.4 to 0.5.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.4...0.5.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 2c2e156d62..7a89f692fb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.3.1 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.5.4 # For unit test +ruff == 0.5.5 # For unit test From f9ae5e5f887e527b7333b83d0332d5d25f1e0564 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Jul 2024 22:10:12 +0900 Subject: [PATCH 144/312] Bump pytest from 8.3.1 to 8.3.2 in /requirements (#1054) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.3.1 to 8.3.2. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.3.1...8.3.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 7a89f692fb..528c8f713c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.0.1 scipy == 1.14.0 matplotlib == 3.9.1 cvxpy == 1.5.2 -pytest == 8.3.1 # For unit test +pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test ruff == 0.5.5 # For unit test From 171e3a8f60c984afd493c333fb97a8b8f5fb19df Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Aug 2024 09:06:26 +0900 Subject: [PATCH 145/312] Bump matplotlib from 3.9.1 to 3.9.1.post1 in /requirements (#1059) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.1 to 3.9.1.post1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.1...v3.9.1.post1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 528c8f713c..d9e5930498 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.0.1 scipy == 1.14.0 -matplotlib == 3.9.1 +matplotlib == 3.9.1.post1 cvxpy == 1.5.2 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test From e1e3d8f5d7266229d46cd5b09d0c034d9c389eda Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Aug 2024 09:54:41 +0900 Subject: [PATCH 146/312] Bump ruff from 0.5.5 to 0.5.7 in /requirements (#1058) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.5 to 0.5.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.5...0.5.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d9e5930498..1bcbf1ac34 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.2 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.5.5 # For unit test +ruff == 0.5.7 # For unit test From e6c6814f7bd8865940f31354a84b18ebd659db87 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 22:24:41 +0900 Subject: [PATCH 147/312] Bump cvxpy from 1.5.2 to 1.5.3 in /requirements (#1062) Bumps [cvxpy](https://github.com/cvxpy/cvxpy) from 1.5.2 to 1.5.3. - [Release notes](https://github.com/cvxpy/cvxpy/releases) - [Commits](https://github.com/cvxpy/cvxpy/compare/v1.5.2...v1.5.3) --- updated-dependencies: - dependency-name: cvxpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 1bcbf1ac34..bc09cdb54e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,7 @@ numpy == 2.0.1 scipy == 1.14.0 matplotlib == 3.9.1.post1 -cvxpy == 1.5.2 +cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test From 12d6e694dc62d4ab4441cfafb429623e07803270 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 22:33:02 +0900 Subject: [PATCH 148/312] Bump ruff from 0.5.7 to 0.6.1 in /requirements (#1063) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.5.7 to 0.6.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.5.7...0.6.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index bc09cdb54e..54a3c3eaf5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.5.7 # For unit test +ruff == 0.6.1 # For unit test From 791d4e7f003e6e5e75df2b4223fce40e05f87eef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Aug 2024 21:21:17 +0900 Subject: [PATCH 149/312] Bump matplotlib from 3.9.1.post1 to 3.9.2 in /requirements (#1061) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.1.post1 to 3.9.2. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.1.post1...v3.9.2) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 54a3c3eaf5..dcba39a756 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.0.1 scipy == 1.14.0 -matplotlib == 3.9.1.post1 +matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test From 6eed25537f3c683047ff154bcd09d7dea2dd898f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 07:07:58 +0900 Subject: [PATCH 150/312] Bump ruff from 0.6.1 to 0.6.2 in /requirements (#1064) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.1 to 0.6.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.1...0.6.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index dcba39a756..f219e1d279 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.0 # For unit test -ruff == 0.6.1 # For unit test +ruff == 0.6.2 # For unit test From 2b6c9b0888734b4caa4bf1a8f3c810def3dfa0ba Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 20:14:07 +0900 Subject: [PATCH 151/312] Bump scipy from 1.14.0 to 1.14.1 in /requirements (#1066) Bumps [scipy](https://github.com/scipy/scipy) from 1.14.0 to 1.14.1. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.14.0...v1.14.1) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f219e1d279..500002ff0e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.0.1 -scipy == 1.14.0 +scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.2 # For unit test From b139717b297f90daa063e107154fc1ce96c5066e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 20:23:07 +0900 Subject: [PATCH 152/312] Bump mypy from 1.11.0 to 1.11.2 in /requirements (#1065) Bumps [mypy](https://github.com/python/mypy) from 1.11.0 to 1.11.2. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.11...v1.11.2) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 500002ff0e..0b8a51fcac 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.11.0 # For unit test +mypy == 1.11.2 # For unit test ruff == 0.6.2 # For unit test From dab1a9b2dca0b27bc4eef30d98c516ec655ac2aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 21:34:35 +0900 Subject: [PATCH 153/312] Bump ruff from 0.6.2 to 0.6.3 in /requirements (#1069) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.2 to 0.6.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.2...0.6.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0b8a51fcac..8a27c1e301 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.2 # For unit test +ruff == 0.6.3 # For unit test From 4ae9555a699b2823ea2e065e0ffe11b3622aa2b6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Sep 2024 21:39:10 +0900 Subject: [PATCH 154/312] Bump numpy from 2.0.1 to 2.1.1 in /requirements (#1071) Bumps [numpy](https://github.com/numpy/numpy) from 2.0.1 to 2.1.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.0.1...v2.1.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8a27c1e301..87107816bb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.0.1 +numpy == 2.1.1 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 From ad600cd9023e67cd8064b678213d6586d076dd15 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Sep 2024 21:39:27 +0900 Subject: [PATCH 155/312] Bump ruff from 0.6.3 to 0.6.4 in /requirements (#1072) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.3 to 0.6.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.3...0.6.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 87107816bb..c614c4e96a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.2 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.3 # For unit test +ruff == 0.6.4 # For unit test From bf69f444afcfffd8ebb44ec8f0988598a0b37ab6 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 16 Sep 2024 22:03:54 +0900 Subject: [PATCH 156/312] add turning radius calculation doc (#1068) * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc * add turning radius calculation doc --- docs/modules/appendix/appendix_main.rst | 1 + .../steering_motion_model/steering_model.png | Bin 0 -> 72443 bytes .../turning_radius_calc1.png | Bin 0 -> 14926 bytes .../turning_radius_calc2.png | Bin 0 -> 21792 bytes .../appendix/steering_motion_model_main.rst | 97 ++++++++++++++++++ 5 files changed, 98 insertions(+) create mode 100644 docs/modules/appendix/steering_motion_model/steering_model.png create mode 100644 docs/modules/appendix/steering_motion_model/turning_radius_calc1.png create mode 100644 docs/modules/appendix/steering_motion_model/turning_radius_calc2.png create mode 100644 docs/modules/appendix/steering_motion_model_main.rst diff --git a/docs/modules/appendix/appendix_main.rst b/docs/modules/appendix/appendix_main.rst index 8a29d84676..cb1ac04066 100644 --- a/docs/modules/appendix/appendix_main.rst +++ b/docs/modules/appendix/appendix_main.rst @@ -7,6 +7,7 @@ Appendix :maxdepth: 2 :caption: Contents + steering_motion_model Kalmanfilter_basics Kalmanfilter_basics_2 diff --git a/docs/modules/appendix/steering_motion_model/steering_model.png b/docs/modules/appendix/steering_motion_model/steering_model.png new file mode 100644 index 0000000000000000000000000000000000000000..c66dded87afebc082d11743b5bab8b7531da1d20 GIT binary patch literal 72443 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

B=42M# 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 z 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 G{{H|kNPn*Y literal 0 HcmV?d00001 diff --git a/docs/modules/appendix/steering_motion_model_main.rst b/docs/modules/appendix/steering_motion_model_main.rst new file mode 100644 index 0000000000..6e444b7909 --- /dev/null +++ b/docs/modules/appendix/steering_motion_model_main.rst @@ -0,0 +1,97 @@ + +Steering Motion Model +----------------------- + +Turning radius calculation by steering motion model +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The turning Radius represents the radius of the circle when the robot turns, as shown in the diagram below. + +.. image:: steering_motion_model/steering_model.png + +When the steering angle is tilted by :math:`\delta`, +the turning radius :math:`R` can be calculated using the following equation, +based on the geometric relationship between the wheelbase (WB), +which is the distance between the rear wheel center and the front wheel center, +and the assumption that the turning radius circle passes through the center of +the rear wheels in the diagram above. + +:math:`R = \frac{WB}{tan\delta}` + +The curvature :math:`\kappa` is the reciprocal of the turning radius: + +:math:`\kappa = \frac{tan\delta}{WB}` + +In the diagram above, the angular difference :math:`\Delta \theta` in the vehicle’s heading between two points on the turning radius :math:`R` +is the same as the angle of the vector connecting the two points from the center of the turn. + +From the formula for the length of an arc and the radius, + +:math:`\Delta \theta = \frac{s}{R}` + +Here, :math:`s` is the distance between two points on the turning radius. + +So, yaw rate :math:`\omega` can be calculated as follows. + +:math:`\omega = \frac{v}{R}` + +and + +:math:`\omega = v\kappa` + +here, :math:`v` is the velocity of the vehicle. + + +Turning radius calculation by 2 consecutive positions of the robot trajectory +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In this section, we will derive the formula for the turning radius from 2 consecutive positions of the robot trajectory. + +.. image:: steering_motion_model/turning_radius_calc1.png + +As shown in the upper diagram above, the robot moves from a point at time :math:`t` to a point at time :math:`t+1`. +Each point is represented by a 2D position :math:`(x_t, y_t)` and an orientation :math:`\theta_t`. + +The distance between the two points is :math:`d = \sqrt{(x_{t+1} - x_t)^2 + (y_{t+1} - y_t)^2}`. + +The angle between the two vectors from the turning center to the two points is :math:`\theta = \theta_{t+1} - \theta_t`. +Here, by drawing a perpendicular line from the center of the turning radius +to a straight line of length :math:`d` connecting two points, +the following equation can be derived from the resulting right triangle. + +:math:`sin\frac{\theta}{2} = \frac{d}{2R}` + +So, the turning radius :math:`R` can be calculated as follows. + +:math:`R = \frac{d}{2sin\frac{\theta}{2}}` + +The curvature :math:`\kappa` is the reciprocal of the turning radius. +So, the curvature can be calculated as follows. + +:math:`\kappa = \frac{2sin\frac{\theta}{2}}{d}` + +Target speed by maximum steering speed +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +If the maximum steering speed is given as :math:`\dot{\delta}_{max}`, +the maximum curvature change rate :math:`\dot{\kappa}_{max}` can be calculated as follows: + +:math:`\dot{\kappa}_{max} = \frac{tan\dot{\delta}_{max}}{WB}` + +From the curvature calculation by 2 consecutive positions of the robot trajectory, + +the maximum curvature change rate :math:`\dot{\kappa}_{max}` can be calculated as follows: + +:math:`\dot{\kappa}_{max} = \frac{\kappa_{t+1}-\kappa_{t}}{\Delta t}` + +If we can assume that the vehicle will not exceed the maximum curvature change rate, + +the target minimum velocity :math:`v_{min}` can be calculated as follows: + +:math:`v_{min} = \frac{d_{t+1}+d_{t}}{\Delta t} = \frac{d_{t+1}+d_{t}}{(\kappa_{t+1}-\kappa_{t})}\frac{tan\dot{\delta}_{max}}{WB}` + + +References: +~~~~~~~~~~~ + +- `Vehicle Dynamics and Control `_ From e26d5cb99aed3d282508cc18457feb7a7b8ca18f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Sep 2024 21:13:36 +0900 Subject: [PATCH 157/312] Bump pytest from 8.3.2 to 8.3.3 in /requirements (#1077) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.3.2 to 8.3.3. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.3.2...8.3.3) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index c614c4e96a..6bbe33e378 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.1.1 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 -pytest == 8.3.2 # For unit test +pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test ruff == 0.6.4 # For unit test From 3e178598d467b65154fb1b409ac9fab8339957b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 21:55:03 +0900 Subject: [PATCH 158/312] Bump ruff from 0.6.4 to 0.6.5 in /requirements (#1078) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.4 to 0.6.5. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.4...0.6.5) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6bbe33e378..f149183e96 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.4 # For unit test +ruff == 0.6.5 # For unit test From 660646a361162b9c286d5182558775eda5207ebe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Sep 2024 06:19:38 -0700 Subject: [PATCH 159/312] Bump ruff from 0.6.5 to 0.6.7 in /requirements (#1080) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.5 to 0.6.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.5...0.6.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f149183e96..453922eb8c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.5 # For unit test +ruff == 0.6.7 # For unit test From fafae87236eaf95785f5566e35fe9d6ba2fa3701 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Oct 2024 20:51:46 +0900 Subject: [PATCH 160/312] Bump ruff from 0.6.7 to 0.6.8 in /requirements (#1081) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.7 to 0.6.8. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.7...0.6.8) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 453922eb8c..83f9bc438f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.7 # For unit test +ruff == 0.6.8 # For unit test From 857a80febf8aef959d7df441f8948fe073e790d5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 21:05:58 +0900 Subject: [PATCH 161/312] Bump numpy from 2.1.1 to 2.1.2 in /requirements (#1083) Bumps [numpy](https://github.com/numpy/numpy) from 2.1.1 to 2.1.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.1.1...v2.1.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 83f9bc438f..e006f944ff 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.1.1 +numpy == 2.1.2 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 From a791c79da200435cb89d707320e106c10ca5b6db Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Oct 2024 21:37:36 +0900 Subject: [PATCH 162/312] Bump ruff from 0.6.8 to 0.6.9 in /requirements (#1082) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.8 to 0.6.9. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.8...0.6.9) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e006f944ff..62f9bc183a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.11.2 # For unit test -ruff == 0.6.8 # For unit test +ruff == 0.6.9 # For unit test From 4d009a7916bffa53d2747cc6100180a3521e376c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Oct 2024 12:48:45 +0900 Subject: [PATCH 163/312] Bump mypy from 1.11.2 to 1.12.0 in /requirements (#1084) Bumps [mypy](https://github.com/python/mypy) from 1.11.2 to 1.12.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.11.2...v1.12.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 62f9bc183a..cbab816c8a 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.11.2 # For unit test +mypy == 1.12.0 # For unit test ruff == 0.6.9 # For unit test From 74e9dcc0921f8128488b449901812b1b51e54bad Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Oct 2024 22:01:11 +0900 Subject: [PATCH 164/312] Bump ruff from 0.6.9 to 0.7.0 in /requirements (#1088) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.6.9 to 0.7.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.6.9...0.7.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cbab816c8a..f275d9d82e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.12.0 # For unit test -ruff == 0.6.9 # For unit test +ruff == 0.7.0 # For unit test From 899f749f33637159be3515264705ca7fe2d8609e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Oct 2024 22:24:33 +0900 Subject: [PATCH 165/312] Bump mypy from 1.12.0 to 1.12.1 in /requirements (#1089) Bumps [mypy](https://github.com/python/mypy) from 1.12.0 to 1.12.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.12.0...v1.12.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f275d9d82e..0b44092a15 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.12.0 # For unit test +mypy == 1.12.1 # For unit test ruff == 0.7.0 # For unit test From 9ecc98d3e6af70865d902a88b5d96dffd4764b7c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2024 23:27:05 +0900 Subject: [PATCH 166/312] Bump mypy from 1.12.1 to 1.13.0 in /requirements (#1093) Bumps [mypy](https://github.com/python/mypy) from 1.12.1 to 1.13.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.12.1...v1.13.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0b44092a15..92ffcf3a74 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.9.2 cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.12.1 # For unit test +mypy == 1.13.0 # For unit test ruff == 0.7.0 # For unit test From 41fea75c0ee0cfb6a1c24307f0e0c1f1bb0af133 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 21:32:30 +0900 Subject: [PATCH 167/312] Bump ruff from 0.7.0 to 0.7.1 in /requirements (#1092) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.7.0 to 0.7.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.7.0...0.7.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 92ffcf3a74..9fd97ba106 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.7.0 # For unit test +ruff == 0.7.1 # For unit test From 7c5959c5f2d0dbde7889870fc0056491577a5653 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 21:01:38 +0900 Subject: [PATCH 168/312] Bump numpy from 2.1.2 to 2.1.3 in /requirements (#1095) Bumps [numpy](https://github.com/numpy/numpy) from 2.1.2 to 2.1.3. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.1.2...v2.1.3) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9fd97ba106..38a0aed0f8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.1.2 +numpy == 2.1.3 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 From 5d8326957bcb40d62076e2920f5d61290f658fe6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 13 Nov 2024 21:44:25 +0900 Subject: [PATCH 169/312] Bump ruff from 0.7.1 to 0.7.3 in /requirements (#1097) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.7.1 to 0.7.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.7.1...0.7.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 38a0aed0f8..21c9c64364 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.7.1 # For unit test +ruff == 0.7.3 # For unit test From 3f87bd4cfc9b8cc5a6e3c97dcfd113f020023801 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Nov 2024 07:40:59 +0900 Subject: [PATCH 170/312] Bump ruff from 0.7.3 to 0.7.4 in /requirements (#1099) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.7.3 to 0.7.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.7.3...0.7.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 21c9c64364..d3d3627d5c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.3 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.7.3 # For unit test +ruff == 0.7.4 # For unit test From 0f91e58ca3d3e67bdbc592105140791efa6b2dbc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Dec 2024 08:25:12 +0900 Subject: [PATCH 171/312] Bump pytest from 8.3.3 to 8.3.4 in /requirements (#1102) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.3.3 to 8.3.4. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.3.3...8.3.4) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d3d3627d5c..44875f28d6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.1.3 scipy == 1.14.1 matplotlib == 3.9.2 cvxpy == 1.5.3 -pytest == 8.3.3 # For unit test +pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test ruff == 0.7.4 # For unit test From 455542d7178565517ac751a025e103d5ff11ced0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Dec 2024 15:36:51 +0900 Subject: [PATCH 172/312] Bump ruff from 0.7.4 to 0.8.1 in /requirements (#1103) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.7.4 to 0.8.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.7.4...0.8.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 44875f28d6..a224af5d40 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.7.4 # For unit test +ruff == 0.8.1 # For unit test From 115b32d2feb03bd96b52efeb2403dfb272c5e703 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Dec 2024 08:31:54 +0900 Subject: [PATCH 173/312] Bump matplotlib from 3.9.2 to 3.9.3 in /requirements (#1101) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.2 to 3.9.3. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.2...v3.9.3) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a224af5d40..91566508d6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.1.3 scipy == 1.14.1 -matplotlib == 3.9.2 +matplotlib == 3.9.3 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test From f86eecec7fa851fcc52aeb09a7c58b4c3c0110d0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Dec 2024 06:46:52 +0900 Subject: [PATCH 174/312] Bump numpy from 2.1.3 to 2.2.0 in /requirements (#1106) Bumps [numpy](https://github.com/numpy/numpy) from 2.1.3 to 2.2.0. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.1.3...v2.2.0) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 91566508d6..a99ed51781 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.1.3 +numpy == 2.2.0 scipy == 1.14.1 matplotlib == 3.9.3 cvxpy == 1.5.3 From 4ebe7543ffac5f4eb40bceedec14f11703cc6a1f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Dec 2024 13:17:18 +0900 Subject: [PATCH 175/312] Bump ruff from 0.8.1 to 0.8.2 in /requirements (#1105) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.1 to 0.8.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.1...0.8.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index a99ed51781..dbc555e0c9 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.8.1 # For unit test +ruff == 0.8.2 # For unit test From 0d8cd9bb6cca5697a3cd3f1b279e4cd8a27d3cb7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Dec 2024 09:32:02 +0900 Subject: [PATCH 176/312] Bump matplotlib from 3.9.3 to 3.10.0 in /requirements (#1107) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.9.3 to 3.10.0. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.9.3...v3.10.0) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index dbc555e0c9..650e7a4048 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.2.0 scipy == 1.14.1 -matplotlib == 3.9.3 +matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test From e5eea35ee4a03082cd5acf5efea208d677df0a0a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Dec 2024 09:37:51 +0900 Subject: [PATCH 177/312] Bump ruff from 0.8.2 to 0.8.3 in /requirements (#1108) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.2 to 0.8.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.2...0.8.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 650e7a4048..cd4a01f88f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.8.2 # For unit test +ruff == 0.8.3 # For unit test From 4bc70480448295205fceb28053d0ed9c5efca99d Mon Sep 17 00:00:00 2001 From: Weipu Shan Date: Fri, 20 Dec 2024 20:32:57 +0800 Subject: [PATCH 178/312] fix: arm_obstacle_navigation calc_heuristic_map node through 4 corners error (#1034) * fix: arm_obstacle_navigation calc_heuristic_map node through 4 corners error * style: remove trailing whitespace --- .../arm_obstacle_navigation/arm_obstacle_navigation.py | 8 ++++---- .../arm_obstacle_navigation_2.py | 10 +++++----- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py index 75b1f9d2c4..e377897e54 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py @@ -203,10 +203,10 @@ def calc_heuristic_map(M, goal_node): for i in range(heuristic_map.shape[0]): for j in range(heuristic_map.shape[1]): heuristic_map[i, j] = min(heuristic_map[i, j], - i + 1 + heuristic_map[M - 1, j], - M - i + heuristic_map[0, j], - j + 1 + heuristic_map[i, M - 1], - M - j + heuristic_map[i, 0] + M - i - 1 + heuristic_map[M - 1, j], + i + heuristic_map[0, j], + M - j - 1 + heuristic_map[i, M - 1], + j + heuristic_map[i, 0] ) return heuristic_map diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py index 591cd401eb..10f4615c34 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py @@ -105,7 +105,7 @@ def get_occupancy_grid(arm, obstacles): Args: arm: An instance of NLinkArm obstacles: A list of obstacles, with each obstacle defined as a list - of xy coordinates and a radius. + of xy coordinates and a radius. Returns: Occupancy grid in joint space @@ -234,10 +234,10 @@ def calc_heuristic_map(M, goal_node): for i in range(heuristic_map.shape[0]): for j in range(heuristic_map.shape[1]): heuristic_map[i, j] = min(heuristic_map[i, j], - i + 1 + heuristic_map[M - 1, j], - M - i + heuristic_map[0, j], - j + 1 + heuristic_map[i, M - 1], - M - j + heuristic_map[i, 0] + M - i - 1 + heuristic_map[M - 1, j], + i + heuristic_map[0, j], + M - j - 1 + heuristic_map[i, M - 1], + j + heuristic_map[i, 0] ) return heuristic_map From 1f4214012a612f2163b01930444d83712d99b5f9 Mon Sep 17 00:00:00 2001 From: Aryaz Eghbali <64126826+AryazE@users.noreply.github.com> Date: Fri, 20 Dec 2024 14:00:49 +0100 Subject: [PATCH 179/312] Performance improvement (#1075) --- PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py b/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py index 8968c54dcc..7e93caa8fb 100644 --- a/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py +++ b/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py @@ -64,7 +64,7 @@ def transform( is_visited = np.zeros_like(transform_matrix, dtype=bool) is_visited[src[0], src[1]] = True traversal_queue = [src] - calculated = [(src[0] - 1) * n_cols + src[1]] + calculated = set([(src[0] - 1) * n_cols + src[1]]) def is_valid_neighbor(g_i, g_j): return 0 <= g_i < n_rows and 0 <= g_j < n_cols \ @@ -86,7 +86,7 @@ def is_valid_neighbor(g_i, g_j): if not is_visited[ni][nj] \ and ((ni - 1) * n_cols + nj) not in calculated: traversal_queue.append((ni, nj)) - calculated.append((ni - 1) * n_cols + nj) + calculated.add((ni - 1) * n_cols + nj) return transform_matrix From af456c70b0ec336442b0b32c5aab1a220aefaf74 Mon Sep 17 00:00:00 2001 From: Surabhi Gupta <103124390+SurabhiGupta17@users.noreply.github.com> Date: Fri, 20 Dec 2024 18:42:31 +0530 Subject: [PATCH 180/312] Implement Catmull-Rom Spline with test and documentation (#1085) --- .../blending_functions.py | 34 ++++++ .../catmull_rom_spline_path.py | 86 +++++++++++++++ .../catmull_rom_spline/blending_functions.png | Bin 0 -> 41129 bytes .../catmull_rom_path_planning.png | Bin 0 -> 33505 bytes .../catmull_rom_spline_main.rst | 103 ++++++++++++++++++ tests/test_catmull_rom_spline.py | 16 +++ 6 files changed, 239 insertions(+) create mode 100644 PathPlanning/Catmull_RomSplinePath/blending_functions.py create mode 100644 PathPlanning/Catmull_RomSplinePath/catmull_rom_spline_path.py create mode 100644 docs/modules/path_planning/catmull_rom_spline/blending_functions.png create mode 100644 docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png create mode 100644 docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst create mode 100644 tests/test_catmull_rom_spline.py diff --git a/PathPlanning/Catmull_RomSplinePath/blending_functions.py b/PathPlanning/Catmull_RomSplinePath/blending_functions.py new file mode 100644 index 0000000000..f3ef5dd323 --- /dev/null +++ b/PathPlanning/Catmull_RomSplinePath/blending_functions.py @@ -0,0 +1,34 @@ +import numpy as np +import matplotlib.pyplot as plt + +def blending_function_1(t): + return -t + 2*t**2 - t**3 + +def blending_function_2(t): + return 2 - 5*t**2 + 3*t**3 + +def blending_function_3(t): + return t + 4*t**2 - 3*t**3 + +def blending_function_4(t): + return -t**2 + t**3 + +def plot_blending_functions(): + t = np.linspace(0, 1, 100) + + plt.plot(t, blending_function_1(t), label='b1') + plt.plot(t, blending_function_2(t), label='b2') + plt.plot(t, blending_function_3(t), label='b3') + plt.plot(t, blending_function_4(t), label='b4') + + plt.title("Catmull-Rom Blending Functions") + plt.xlabel("t") + plt.ylabel("Value") + plt.legend() + plt.grid(True) + plt.axhline(y=0, color='k', linestyle='--') + plt.axvline(x=0, color='k', linestyle='--') + plt.show() + +if __name__ == "__main__": + plot_blending_functions() \ No newline at end of file diff --git a/PathPlanning/Catmull_RomSplinePath/catmull_rom_spline_path.py b/PathPlanning/Catmull_RomSplinePath/catmull_rom_spline_path.py new file mode 100644 index 0000000000..79916330c9 --- /dev/null +++ b/PathPlanning/Catmull_RomSplinePath/catmull_rom_spline_path.py @@ -0,0 +1,86 @@ +""" +Path Planner with Catmull-Rom Spline +Author: Surabhi Gupta (@this_is_surabhi) +Source: http://graphics.cs.cmu.edu/nsp/course/15-462/Fall04/assts/catmullRom.pdf +""" + +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) + +import numpy as np +import matplotlib.pyplot as plt + +def catmull_rom_point(t, p0, p1, p2, p3): + """ + Parameters + ---------- + t : float + Parameter value (0 <= t <= 1) (0 <= t <= 1) + p0, p1, p2, p3 : np.ndarray + Control points for the spline segment + + Returns + ------- + np.ndarray + Calculated point on the spline + """ + return 0.5 * ((2 * p1) + + (-p0 + p2) * t + + (2 * p0 - 5 * p1 + 4 * p2 - p3) * t**2 + + (-p0 + 3 * p1 - 3 * p2 + p3) * t**3) + + +def catmull_rom_spline(control_points, num_points): + """ + Parameters + ---------- + control_points : list + List of control points + num_points : int + Number of points to generate on the spline + + Returns + ------- + tuple + x and y coordinates of the spline points + """ + t_vals = np.linspace(0, 1, num_points) + spline_points = [] + + control_points = np.array(control_points) + + for i in range(len(control_points) - 1): + if i == 0: + p1, p2, p3 = control_points[i:i+3] + p0 = p1 + elif i == len(control_points) - 2: + p0, p1, p2 = control_points[i-1:i+2] + p3 = p2 + else: + p0, p1, p2, p3 = control_points[i-1:i+3] + + for t in t_vals: + point = catmull_rom_point(t, p0, p1, p2, p3) + spline_points.append(point) + + return np.array(spline_points).T + + +def main(): + print(__file__ + " start!!") + + way_points = [[-1.0, -2.0], [1.0, -1.0], [3.0, -2.0], [4.0, -1.0], [3.0, 1.0], [1.0, 2.0], [0.0, 2.0]] + n_course_point = 100 + spline_x, spline_y = catmull_rom_spline(way_points, n_course_point) + + plt.plot(spline_x,spline_y, '-r', label="Catmull-Rom Spline Path") + plt.plot(np.array(way_points).T[0], np.array(way_points).T[1], '-og', label="Way points") + plt.title("Catmull-Rom Spline Path") + plt.grid(True) + plt.legend() + plt.axis("equal") + plt.show() + +if __name__ == '__main__': + main() \ No newline at end of file diff --git a/docs/modules/path_planning/catmull_rom_spline/blending_functions.png b/docs/modules/path_planning/catmull_rom_spline/blending_functions.png new file mode 100644 index 0000000000000000000000000000000000000000..928946df46c7f14524247d675697d81e049c9a86 GIT binary patch literal 41129 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

tE>;rj18uQ$r_-%kmJ0~e2j$!iQ~wUR=gX9pvB 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 O%hb^P{1biW*nb0@J+h|& literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png new file mode 100644 index 0000000000000000000000000000000000000000..1d0ff001e60bbe01787ab8f134768a6558542ad7 GIT binary patch literal 33505 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 literal 0 HcmV?d00001 diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst new file mode 100644 index 0000000000..4d8d3bdefe --- /dev/null +++ b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst @@ -0,0 +1,103 @@ +Catmull-Rom Spline Planning +----------------- + +.. image:: catmull_rom_path_planning.png + +This is a Catmull-Rom spline path planning routine. + +If you provide waypoints, the Catmull-Rom spline generates a smooth path that always passes through the control points, +exhibits local control, and maintains 𝐶1 continuity. + + +Catmull-Rom Spline Fundamentals +~~~~~~~~~~~~~~ + +Catmull-Rom splines are a type of cubic spline that passes through a given set of points, known as control points. + +They are defined by the following equation for calculating a point on the spline: + +:math:`P(t) = 0.5 \times \left( 2P_1 + (-P_0 + P_2)t + (2P_0 - 5P_1 + 4P_2 - P_3)t^2 + (-P_0 + 3P_1 - 3P_2 + P_3)t^3 \right)` + +Where: + +* :math:`P(t)` is the point on the spline at parameter :math:`t`. +* :math:`P_0, P_1, P_2, P_3` are the control points surrounding the parameter :math:`t`. + +Types of Catmull-Rom Splines +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +There are different types of Catmull-Rom splines based on the choice of the **tau** parameter, which influences how the curve +behaves in relation to the control points: + +1. **Uniform Catmull-Rom Spline**: + The standard implementation where the parameterization is uniform. Each segment of the spline is treated equally, + regardless of the distances between control points. + + +2. **Chordal Catmull-Rom Spline**: + This spline type takes into account the distance between control points. The parameterization is based on the actual distance + along the spline, ensuring smoother transitions. The equation can be modified to include the chord length :math:`L_i` between + points :math:`P_i` and :math:`P_{i+1}`: + + .. math:: + \tau_i = \sqrt{(x_{i+1} - x_i)^2 + (y_{i+1} - y_i)^2} + +3. **Centripetal Catmull-Rom Spline**: + This variation improves upon the chordal spline by using the square root of the distance to determine the parameterization, + which avoids oscillations and creates a more natural curve. The parameter :math:`t_i` is adjusted using the following relation: + + .. math:: + t_i = \sqrt{(x_{i+1} - x_i)^2 + (y_{i+1} - y_i)^2} + + +Blending Functions +~~~~~~~~~~~~~~~~~~ + +In Catmull-Rom spline interpolation, blending functions are used to calculate the influence of each control point on the spline at a +given parameter :math:`t`. The blending functions ensure that the spline is smooth and passes through the control points while +maintaining continuity. The four blending functions used in Catmull-Rom splines are defined as follows: + +1. **Blending Function 1**: + + .. math:: + b_1(t) = -t + 2t^2 - t^3 + +2. **Blending Function 2**: + + .. math:: + b_2(t) = 2 - 5t^2 + 3t^3 + +3. **Blending Function 3**: + + .. math:: + b_3(t) = t + 4t^2 - 3t^3 + +4. **Blending Function 4**: + + .. math:: + b_4(t) = -t^2 + t^3 + +The blending functions are combined in the spline equation to create a smooth curve that reflects the influence of each control point. + +The following figure illustrates the blending functions over the interval :math:`[0, 1]`: + +.. image:: blending_functions.png + +Catmull-Rom Spline API +~~~~~~~~~~~~~~~~~~~~~~~ + +This section provides an overview of the functions used for Catmull-Rom spline path planning. + +API +++++ + +.. autofunction:: PathPlanning.Catmull_RomSplinePath.catmull_rom_spline_path.catmull_rom_point + +.. autofunction:: PathPlanning.Catmull_RomSplinePath.catmull_rom_spline_path.catmull_rom_spline + + +References +~~~~~~~~~~ + +- `Catmull-Rom Spline - Wikipedia `__ +- `Catmull-Rom Splines `__ \ No newline at end of file diff --git a/tests/test_catmull_rom_spline.py b/tests/test_catmull_rom_spline.py new file mode 100644 index 0000000000..41a73588c3 --- /dev/null +++ b/tests/test_catmull_rom_spline.py @@ -0,0 +1,16 @@ +import conftest +from PathPlanning.Catmull_RomSplinePath.catmull_rom_spline_path import catmull_rom_spline + +def test_catmull_rom_spline(): + way_points = [[0, 0], [1, 2], [2, 0], [3, 3]] + num_points = 100 + + spline_x, spline_y = catmull_rom_spline(way_points, num_points) + + assert spline_x.size > 0, "Spline X coordinates should not be empty" + assert spline_y.size > 0, "Spline Y coordinates should not be empty" + + assert spline_x.shape == spline_y.shape, "Spline X and Y coordinates should have the same shape" + +if __name__ == '__main__': + conftest.run_this_test(__file__) From 7eeb9d215cb5652a800db507f066047bfd5d023f Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 21 Dec 2024 15:04:02 +0900 Subject: [PATCH 181/312] Add catmull_rom_spline doc (#1109) --- docs/modules/path_planning/path_planning_main.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/modules/path_planning/path_planning_main.rst b/docs/modules/path_planning/path_planning_main.rst index a3237f16f1..30802fd7a6 100644 --- a/docs/modules/path_planning/path_planning_main.rst +++ b/docs/modules/path_planning/path_planning_main.rst @@ -18,6 +18,7 @@ Path Planning rrt/rrt cubic_spline/cubic_spline bspline_path/bspline_path + catmull_rom_spline/catmull_rom_spline clothoid_path/clothoid_path eta3_spline/eta3_spline bezier_path/bezier_path From b5988dbcbc3c1d8cdbb3f9f3f9dec75cf63defb9 Mon Sep 17 00:00:00 2001 From: parmaski <89462537+parmaski@users.noreply.github.com> Date: Sat, 21 Dec 2024 19:39:16 +0900 Subject: [PATCH 182/312] Fix: Hybrid A* direction is incorrect (#1086) * fix to preseve direction history * add path to Reeds Shepp and its users e.g. hybrid A* --- PathPlanning/HybridAStar/hybrid_a_star.py | 5 +++-- PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py | 4 ++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/PathPlanning/HybridAStar/hybrid_a_star.py b/PathPlanning/HybridAStar/hybrid_a_star.py index 03db0dc167..1962efe295 100644 --- a/PathPlanning/HybridAStar/hybrid_a_star.py +++ b/PathPlanning/HybridAStar/hybrid_a_star.py @@ -105,12 +105,13 @@ def calc_next_node(current, steer, direction, config, ox, oy, kd_tree): x, y, yaw = current.x_list[-1], current.y_list[-1], current.yaw_list[-1] arc_l = XY_GRID_RESOLUTION * 1.5 - x_list, y_list, yaw_list = [], [], [] + x_list, y_list, yaw_list, direction_list = [], [], [], [] for _ in np.arange(0, arc_l, MOTION_RESOLUTION): x, y, yaw = move(x, y, yaw, MOTION_RESOLUTION * direction, steer) x_list.append(x) y_list.append(y) yaw_list.append(yaw) + direction_list.append(direction == 1) if not check_car_collision(x_list, y_list, yaw_list, ox, oy, kd_tree): return None @@ -134,7 +135,7 @@ def calc_next_node(current, steer, direction, config, ox, oy, kd_tree): cost = current.cost + added_cost + arc_l node = Node(x_ind, y_ind, yaw_ind, d, x_list, - y_list, yaw_list, [d], + y_list, yaw_list, direction_list, parent_index=calc_index(current, config), cost=cost, steer=steer) diff --git a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py index 8e134ff38b..618d1d99ba 100644 --- a/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py +++ b/PathPlanning/ReedsSheppPath/reeds_shepp_path_planning.py @@ -6,6 +6,10 @@ co-author Videh Patel(@videh25) : Added the missing RS paths """ +import sys +import pathlib +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) + import math import matplotlib.pyplot as plt From b137ba1817af11ed944a28f8c1c8ad1a95848726 Mon Sep 17 00:00:00 2001 From: parmaski <89462537+parmaski@users.noreply.github.com> Date: Sat, 21 Dec 2024 19:40:30 +0900 Subject: [PATCH 183/312] fix behavior when path is not found (#1104) --- PathPlanning/HybridAStar/car.py | 2 +- PathPlanning/HybridAStar/hybrid_a_star.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/PathPlanning/HybridAStar/car.py b/PathPlanning/HybridAStar/car.py index d7631133c7..959db74078 100644 --- a/PathPlanning/HybridAStar/car.py +++ b/PathPlanning/HybridAStar/car.py @@ -97,7 +97,7 @@ def pi_2_pi(angle): def move(x, y, yaw, distance, steer, L=WB): x += distance * cos(yaw) y += distance * sin(yaw) - yaw += pi_2_pi(distance * tan(steer) / L) # distance/2 + yaw = pi_2_pi(yaw + distance * tan(steer) / L) # distance/2 return x, y, yaw diff --git a/PathPlanning/HybridAStar/hybrid_a_star.py b/PathPlanning/HybridAStar/hybrid_a_star.py index 1962efe295..0fa04189c6 100644 --- a/PathPlanning/HybridAStar/hybrid_a_star.py +++ b/PathPlanning/HybridAStar/hybrid_a_star.py @@ -282,7 +282,7 @@ def hybrid_a_star_planning(start, goal, ox, oy, xy_resolution, yaw_resolution): while True: if not openList: print("Error: Cannot find path, No open set") - return [], [], [] + return Path([], [], [], [], 0) cost, c_id = heapq.heappop(pq) if c_id in openList: From ca54f1b6880b9731b06fc33db338bc28bd63c864 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 07:50:00 +0900 Subject: [PATCH 184/312] Bump ruff from 0.8.3 to 0.8.4 in /requirements (#1111) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.3 to 0.8.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.3...0.8.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cd4a01f88f..d28cd5f956 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.13.0 # For unit test -ruff == 0.8.3 # For unit test +ruff == 0.8.4 # For unit test From d1f1190106d624e555b0fdd0853b65ad844e3204 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 07:59:16 +0900 Subject: [PATCH 185/312] Bump numpy from 2.2.0 to 2.2.1 in /requirements (#1113) Bumps [numpy](https://github.com/numpy/numpy) from 2.2.0 to 2.2.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.2.0...v2.2.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d28cd5f956..0992ab6cf0 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.2.0 +numpy == 2.2.1 scipy == 1.14.1 matplotlib == 3.10.0 cvxpy == 1.5.3 From aacae0d79a9595356bd7f15ad8e565220a04de61 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 09:13:35 +0900 Subject: [PATCH 186/312] Bump mypy from 1.13.0 to 1.14.0 in /requirements (#1112) Bumps [mypy](https://github.com/python/mypy) from 1.13.0 to 1.14.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.13.0...v1.14.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0992ab6cf0..47db4245fd 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.13.0 # For unit test +mypy == 1.14.0 # For unit test ruff == 0.8.4 # For unit test From 7d33f5f7140513d14bad016f48d132a08bc5c8a3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 31 Dec 2024 07:04:57 +0900 Subject: [PATCH 187/312] Bump mypy from 1.14.0 to 1.14.1 in /requirements (#1116) Bumps [mypy](https://github.com/python/mypy) from 1.14.0 to 1.14.1. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.14.0...v1.14.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 47db4245fd..bcfbbf97ac 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.14.0 # For unit test +mypy == 1.14.1 # For unit test ruff == 0.8.4 # For unit test From c27803f781c00384c9de29fe1fd82ace8279d788 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Jan 2025 11:49:14 +0900 Subject: [PATCH 188/312] build(deps): bump ruff from 0.8.4 to 0.8.6 in /requirements (#1117) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.4 to 0.8.6. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.4...0.8.6) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index bcfbbf97ac..5291c45c58 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.8.4 # For unit test +ruff == 0.8.6 # For unit test From 01d398f4ab276bcbcac3a7ce8d62b2e2712f0a5a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Jan 2025 13:01:34 +0900 Subject: [PATCH 189/312] build(deps): bump scipy from 1.14.1 to 1.15.0 in /requirements (#1118) Bumps [scipy](https://github.com/scipy/scipy) from 1.14.1 to 1.15.0. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.14.1...v1.15.0) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5291c45c58..5aeded446f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.2.1 -scipy == 1.14.1 +scipy == 1.15.0 matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test From 647ce9ccfa1f581bff558a16803bfd7e2c343c3e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Jan 2025 07:24:59 +0900 Subject: [PATCH 190/312] build(deps): bump scipy from 1.15.0 to 1.15.1 in /requirements (#1119) Bumps [scipy](https://github.com/scipy/scipy) from 1.15.0 to 1.15.1. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.15.0...v1.15.1) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5aeded446f..f5a7ff315c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.2.1 -scipy == 1.15.0 +scipy == 1.15.1 matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test From 4cf7531839a12faa9b7daf6a70aab4f596aa1b0c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Jan 2025 07:25:29 +0900 Subject: [PATCH 191/312] build(deps): bump ruff from 0.8.6 to 0.9.1 in /requirements (#1120) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.8.6 to 0.9.1. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.8.6...0.9.1) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f5a7ff315c..d212202cdb 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.8.6 # For unit test +ruff == 0.9.1 # For unit test From 4c2e3e8f9b686baef5774dcfe0afd7dda6150af4 Mon Sep 17 00:00:00 2001 From: Mritunjai <101278178+Mritunjaii@users.noreply.github.com> Date: Mon, 20 Jan 2025 09:59:15 +0530 Subject: [PATCH 192/312] hashmap instead of a linear search (#1110) --- .../AStar/a_star_searching_from_two_side.py | 70 +++++++++---------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/PathPlanning/AStar/a_star_searching_from_two_side.py b/PathPlanning/AStar/a_star_searching_from_two_side.py index 822f5ea500..f43cea71b4 100644 --- a/PathPlanning/AStar/a_star_searching_from_two_side.py +++ b/PathPlanning/AStar/a_star_searching_from_two_side.py @@ -78,43 +78,43 @@ def boundary_and_obstacles(start, goal, top_vertex, bottom_vertex, obs_number): def find_neighbor(node, ob, closed): - # generate neighbors in certain condition - ob_list = ob.tolist() - neighbor: list = [] + # Convert obstacles to a set for faster lookup + ob_set = set(map(tuple, ob.tolist())) + neighbor_set = set() + + # Generate neighbors within the 3x3 grid around the node for x in range(node.coordinate[0] - 1, node.coordinate[0] + 2): for y in range(node.coordinate[1] - 1, node.coordinate[1] + 2): - if [x, y] not in ob_list: - # find all possible neighbor nodes - neighbor.append([x, y]) - # remove node violate the motion rule - # 1. remove node.coordinate itself - neighbor.remove(node.coordinate) - # 2. remove neighbor nodes who cross through two diagonal - # positioned obstacles since there is no enough space for - # robot to go through two diagonal positioned obstacles - - # top bottom left right neighbors of node - top_nei = [node.coordinate[0], node.coordinate[1] + 1] - bottom_nei = [node.coordinate[0], node.coordinate[1] - 1] - left_nei = [node.coordinate[0] - 1, node.coordinate[1]] - right_nei = [node.coordinate[0] + 1, node.coordinate[1]] - # neighbors in four vertex - lt_nei = [node.coordinate[0] - 1, node.coordinate[1] + 1] - rt_nei = [node.coordinate[0] + 1, node.coordinate[1] + 1] - lb_nei = [node.coordinate[0] - 1, node.coordinate[1] - 1] - rb_nei = [node.coordinate[0] + 1, node.coordinate[1] - 1] - - # remove the unnecessary neighbors - if top_nei and left_nei in ob_list and lt_nei in neighbor: - neighbor.remove(lt_nei) - if top_nei and right_nei in ob_list and rt_nei in neighbor: - neighbor.remove(rt_nei) - if bottom_nei and left_nei in ob_list and lb_nei in neighbor: - neighbor.remove(lb_nei) - if bottom_nei and right_nei in ob_list and rb_nei in neighbor: - neighbor.remove(rb_nei) - neighbor = [x for x in neighbor if x not in closed] - return neighbor + coord = (x, y) + if coord not in ob_set and coord != tuple(node.coordinate): + neighbor_set.add(coord) + + # Define neighbors in cardinal and diagonal directions + top_nei = (node.coordinate[0], node.coordinate[1] + 1) + bottom_nei = (node.coordinate[0], node.coordinate[1] - 1) + left_nei = (node.coordinate[0] - 1, node.coordinate[1]) + right_nei = (node.coordinate[0] + 1, node.coordinate[1]) + lt_nei = (node.coordinate[0] - 1, node.coordinate[1] + 1) + rt_nei = (node.coordinate[0] + 1, node.coordinate[1] + 1) + lb_nei = (node.coordinate[0] - 1, node.coordinate[1] - 1) + rb_nei = (node.coordinate[0] + 1, node.coordinate[1] - 1) + + # Remove neighbors that violate diagonal motion rules + if top_nei in ob_set and left_nei in ob_set: + neighbor_set.discard(lt_nei) + if top_nei in ob_set and right_nei in ob_set: + neighbor_set.discard(rt_nei) + if bottom_nei in ob_set and left_nei in ob_set: + neighbor_set.discard(lb_nei) + if bottom_nei in ob_set and right_nei in ob_set: + neighbor_set.discard(rb_nei) + + # Filter out neighbors that are in the closed set + closed_set = set(map(tuple, closed)) + neighbor_set -= closed_set + + return list(neighbor_set) + def find_node_index(coordinate, node_list): From 1cb45a5d3bdcb07b254c20ce7763d527435c355e Mon Sep 17 00:00:00 2001 From: Aryaz Eghbali <64126826+AryazE@users.noreply.github.com> Date: Mon, 20 Jan 2025 09:16:20 +0100 Subject: [PATCH 193/312] Fixed multitype list (#1076) * Fixed multitype list * Cast to float * Reverted to all floats * Moved all remaining to float --- .../BreadthFirstSearch/breadth_first_search.py | 10 +++++----- PathPlanning/Dijkstra/dijkstra.py | 10 +++++----- .../ProbabilisticRoadMap/probabilistic_road_map.py | 10 +++++----- PathPlanning/VoronoiRoadMap/voronoi_road_map.py | 10 +++++----- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/PathPlanning/BreadthFirstSearch/breadth_first_search.py b/PathPlanning/BreadthFirstSearch/breadth_first_search.py index ff662170e7..ad994732a5 100644 --- a/PathPlanning/BreadthFirstSearch/breadth_first_search.py +++ b/PathPlanning/BreadthFirstSearch/breadth_first_search.py @@ -220,20 +220,20 @@ def main(): # set obstacle positions ox, oy = [], [] for i in range(-10, 60): - ox.append(i) + ox.append(float(i)) oy.append(-10.0) for i in range(-10, 60): ox.append(60.0) - oy.append(i) + oy.append(float(i)) for i in range(-10, 61): - ox.append(i) + ox.append(float(i)) oy.append(60.0) for i in range(-10, 61): ox.append(-10.0) - oy.append(i) + oy.append(float(i)) for i in range(-10, 40): ox.append(20.0) - oy.append(i) + oy.append(float(i)) for i in range(0, 40): ox.append(40.0) oy.append(60.0 - i) diff --git a/PathPlanning/Dijkstra/dijkstra.py b/PathPlanning/Dijkstra/dijkstra.py index 004e49f15a..8a585e4b18 100644 --- a/PathPlanning/Dijkstra/dijkstra.py +++ b/PathPlanning/Dijkstra/dijkstra.py @@ -221,20 +221,20 @@ def main(): # set obstacle positions ox, oy = [], [] for i in range(-10, 60): - ox.append(i) + ox.append(float(i)) oy.append(-10.0) for i in range(-10, 60): ox.append(60.0) - oy.append(i) + oy.append(float(i)) for i in range(-10, 61): - ox.append(i) + ox.append(float(i)) oy.append(60.0) for i in range(-10, 61): ox.append(-10.0) - oy.append(i) + oy.append(float(i)) for i in range(-10, 40): ox.append(20.0) - oy.append(i) + oy.append(float(i)) for i in range(0, 40): ox.append(40.0) oy.append(60.0 - i) diff --git a/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py b/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py index 294c389023..8bacfd5d19 100644 --- a/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py +++ b/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py @@ -273,20 +273,20 @@ def main(rng=None): oy = [] for i in range(60): - ox.append(i) + ox.append(float(i)) oy.append(0.0) for i in range(60): ox.append(60.0) - oy.append(i) + oy.append(float(i)) for i in range(61): - ox.append(i) + ox.append(float(i)) oy.append(60.0) for i in range(61): ox.append(0.0) - oy.append(i) + oy.append(float(i)) for i in range(40): ox.append(20.0) - oy.append(i) + oy.append(float(i)) for i in range(40): ox.append(40.0) oy.append(60.0 - i) diff --git a/PathPlanning/VoronoiRoadMap/voronoi_road_map.py b/PathPlanning/VoronoiRoadMap/voronoi_road_map.py index 0a1f6f5526..a27e1b6928 100644 --- a/PathPlanning/VoronoiRoadMap/voronoi_road_map.py +++ b/PathPlanning/VoronoiRoadMap/voronoi_road_map.py @@ -146,20 +146,20 @@ def main(): oy = [] for i in range(60): - ox.append(i) + ox.append(float(i)) oy.append(0.0) for i in range(60): ox.append(60.0) - oy.append(i) + oy.append(float(i)) for i in range(61): - ox.append(i) + ox.append(float(i)) oy.append(60.0) for i in range(61): ox.append(0.0) - oy.append(i) + oy.append(float(i)) for i in range(40): ox.append(20.0) - oy.append(i) + oy.append(float(i)) for i in range(40): ox.append(40.0) oy.append(60.0 - i) From 9672434483459a00b13ece407079fbb53dd8a6b0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Jan 2025 08:02:30 +0900 Subject: [PATCH 194/312] build(deps): bump numpy from 2.2.1 to 2.2.2 in /requirements (#1122) Bumps [numpy](https://github.com/numpy/numpy) from 2.2.1 to 2.2.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.2.1...v2.2.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index d212202cdb..e1c117cb1e 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.2.1 +numpy == 2.2.2 scipy == 1.15.1 matplotlib == 3.10.0 cvxpy == 1.5.3 From 2bc59fe61247982eaed5b0b7eab842658a5c07d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Jan 2025 08:15:53 +0900 Subject: [PATCH 195/312] build(deps): bump ruff from 0.9.1 to 0.9.2 in /requirements (#1123) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.1 to 0.9.2. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.1...0.9.2) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e1c117cb1e..11b91abb1f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.9.1 # For unit test +ruff == 0.9.2 # For unit test From 5a66105ff5dc9924fc6b8f8986afaf52f0fd870d Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Wed, 22 Jan 2025 17:57:12 +0800 Subject: [PATCH 196/312] Extend frenet_optimal_trajectory to support more scenarios (#1114) * feat: Add third derivative and curvature rate calculations to CubicSpline classes * feat: Extend frenet_optimal_trajectory to support more scenarios * fix: frenet optimal trajectory type check * fix: cubic spline planner code style check * fix: frenet optimal trajectory review * feat: frenet_optimal_trajectory update doc * fix: frenet optimal trajectory review * fix: frenet optimal trajectory * fix: frenet optimal trajectory --- .../CubicSpline/cubic_spline_planner.py | 67 +++ .../cartesian_frenet_converter.py | 144 +++++ .../frenet_optimal_trajectory.py | 550 +++++++++++++----- .../frenet_frame_path_main.rst | 30 +- tests/test_frenet_optimal_trajectory.py | 40 +- 5 files changed, 674 insertions(+), 157 deletions(-) create mode 100644 PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py diff --git a/PathPlanning/CubicSpline/cubic_spline_planner.py b/PathPlanning/CubicSpline/cubic_spline_planner.py index 7cc7bedc79..2391f67c39 100644 --- a/PathPlanning/CubicSpline/cubic_spline_planner.py +++ b/PathPlanning/CubicSpline/cubic_spline_planner.py @@ -76,6 +76,11 @@ def calc_position(self, x): if `x` is outside the data point's `x` range, return None. + Parameters + ---------- + x : float + x position to calculate y. + Returns ------- y : float @@ -99,6 +104,11 @@ def calc_first_derivative(self, x): if x is outside the input x, return None + Parameters + ---------- + x : float + x position to calculate first derivative. + Returns ------- dy : float @@ -121,6 +131,11 @@ def calc_second_derivative(self, x): if x is outside the input x, return None + Parameters + ---------- + x : float + x position to calculate second derivative. + Returns ------- ddy : float @@ -137,6 +152,31 @@ def calc_second_derivative(self, x): ddy = 2.0 * self.c[i] + 6.0 * self.d[i] * dx return ddy + def calc_third_derivative(self, x): + """ + Calc third derivative at given x. + + if x is outside the input x, return None + + Parameters + ---------- + x : float + x position to calculate third derivative. + + Returns + ------- + dddy : float + third derivative for given x. + """ + if x < self.x[0]: + return None + elif x > self.x[-1]: + return None + + i = self.__search_index(x) + dddy = 6.0 * self.d[i] + return dddy + def __search_index(self, x): """ search data segment index @@ -287,6 +327,33 @@ def calc_curvature(self, s): k = (ddy * dx - ddx * dy) / ((dx ** 2 + dy ** 2)**(3 / 2)) return k + def calc_curvature_rate(self, s): + """ + calc curvature rate + + Parameters + ---------- + s : float + distance from the start point. if `s` is outside the data point's + range, return None. + + Returns + ------- + k : float + curvature rate for given s. + """ + dx = self.sx.calc_first_derivative(s) + dy = self.sy.calc_first_derivative(s) + ddx = self.sx.calc_second_derivative(s) + ddy = self.sy.calc_second_derivative(s) + dddx = self.sx.calc_third_derivative(s) + dddy = self.sy.calc_third_derivative(s) + a = dx * ddy - dy * ddx + b = dx * dddy - dy * dddx + c = dx * ddx + dy * ddy + d = dx * dx + dy * dy + return (b * d - 3.0 * a * c) / (d * d * d) + def calc_yaw(self, s): """ calc yaw diff --git a/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py b/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py new file mode 100644 index 0000000000..4cc8650c89 --- /dev/null +++ b/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py @@ -0,0 +1,144 @@ +""" + +A converter between Cartesian and Frenet coordinate systems + +author: Wang Zheng (@Aglargil) + +Ref: + +- [Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame] +(https://www.researchgate.net/profile/Moritz_Werling/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame/links/54f749df0cf210398e9277af.pdf) + +""" + +import math + + +class CartesianFrenetConverter: + """ + A class for converting states between Cartesian and Frenet coordinate systems + """ + + @ staticmethod + def cartesian_to_frenet(rs, rx, ry, rtheta, rkappa, rdkappa, x, y, v, a, theta, kappa): + """ + Convert state from Cartesian coordinate to Frenet coordinate + + Parameters + ---------- + rs: reference line s-coordinate + rx, ry: reference point coordinates + rtheta: reference point heading + rkappa: reference point curvature + rdkappa: reference point curvature rate + x, y: current position + v: velocity + a: acceleration + theta: heading angle + kappa: curvature + + Returns + ------- + s_condition: [s(t), s'(t), s''(t)] + d_condition: [d(s), d'(s), d''(s)] + """ + dx = x - rx + dy = y - ry + + cos_theta_r = math.cos(rtheta) + sin_theta_r = math.sin(rtheta) + + cross_rd_nd = cos_theta_r * dy - sin_theta_r * dx + d = math.copysign(math.hypot(dx, dy), cross_rd_nd) + + delta_theta = theta - rtheta + tan_delta_theta = math.tan(delta_theta) + cos_delta_theta = math.cos(delta_theta) + + one_minus_kappa_r_d = 1 - rkappa * d + d_dot = one_minus_kappa_r_d * tan_delta_theta + + kappa_r_d_prime = rdkappa * d + rkappa * d_dot + + d_ddot = (-kappa_r_d_prime * tan_delta_theta + + one_minus_kappa_r_d / (cos_delta_theta * cos_delta_theta) * + (kappa * one_minus_kappa_r_d / cos_delta_theta - rkappa)) + + s = rs + s_dot = v * cos_delta_theta / one_minus_kappa_r_d + + delta_theta_prime = one_minus_kappa_r_d / cos_delta_theta * kappa - rkappa + s_ddot = (a * cos_delta_theta - + s_dot * s_dot * + (d_dot * delta_theta_prime - kappa_r_d_prime)) / one_minus_kappa_r_d + + return [s, s_dot, s_ddot], [d, d_dot, d_ddot] + + @ staticmethod + def frenet_to_cartesian(rs, rx, ry, rtheta, rkappa, rdkappa, s_condition, d_condition): + """ + Convert state from Frenet coordinate to Cartesian coordinate + + Parameters + ---------- + rs: reference line s-coordinate + rx, ry: reference point coordinates + rtheta: reference point heading + rkappa: reference point curvature + rdkappa: reference point curvature rate + s_condition: [s(t), s'(t), s''(t)] + d_condition: [d(s), d'(s), d''(s)] + + Returns + ------- + x, y: position + theta: heading angle + kappa: curvature + v: velocity + a: acceleration + """ + if abs(rs - s_condition[0]) >= 1.0e-6: + raise ValueError( + "The reference point s and s_condition[0] don't match") + + cos_theta_r = math.cos(rtheta) + sin_theta_r = math.sin(rtheta) + + x = rx - sin_theta_r * d_condition[0] + y = ry + cos_theta_r * d_condition[0] + + one_minus_kappa_r_d = 1 - rkappa * d_condition[0] + + tan_delta_theta = d_condition[1] / one_minus_kappa_r_d + delta_theta = math.atan2(d_condition[1], one_minus_kappa_r_d) + cos_delta_theta = math.cos(delta_theta) + + theta = CartesianFrenetConverter.normalize_angle(delta_theta + rtheta) + + kappa_r_d_prime = rdkappa * d_condition[0] + rkappa * d_condition[1] + + kappa = (((d_condition[2] + kappa_r_d_prime * tan_delta_theta) * + cos_delta_theta * cos_delta_theta) / one_minus_kappa_r_d + rkappa) * \ + cos_delta_theta / one_minus_kappa_r_d + + d_dot = d_condition[1] * s_condition[1] + v = math.sqrt(one_minus_kappa_r_d * one_minus_kappa_r_d * + s_condition[1] * s_condition[1] + d_dot * d_dot) + + delta_theta_prime = one_minus_kappa_r_d / cos_delta_theta * kappa - rkappa + + a = (s_condition[2] * one_minus_kappa_r_d / cos_delta_theta + + s_condition[1] * s_condition[1] / cos_delta_theta * + (d_condition[1] * delta_theta_prime - kappa_r_d_prime)) + + return x, y, theta, kappa, v, a + + @ staticmethod + def normalize_angle(angle): + """ + Normalize angle to [-pi, pi] + """ + a = math.fmod(angle + math.pi, 2.0 * math.pi) + if a < 0.0: + a += 2.0 * math.pi + return a - math.pi diff --git a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py index 331df36309..248894c1c6 100644 --- a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py +++ b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py @@ -17,43 +17,314 @@ import numpy as np import matplotlib.pyplot as plt import copy -import math import sys import pathlib + sys.path.append(str(pathlib.Path(__file__).parent.parent)) -from QuinticPolynomialsPlanner.quintic_polynomials_planner import \ - QuinticPolynomial +from QuinticPolynomialsPlanner.quintic_polynomials_planner import QuinticPolynomial from CubicSpline import cubic_spline_planner -SIM_LOOP = 500 +from enum import Enum, auto +from FrenetOptimalTrajectory.cartesian_frenet_converter import ( + CartesianFrenetConverter, +) + + +class LateralMovement(Enum): + HIGH_SPEED = auto() + LOW_SPEED = auto() + + +class LongitudinalMovement(Enum): + MERGING_AND_STOPPING = auto() + VELOCITY_KEEPING = auto() + + +# Default Parameters + +LATERAL_MOVEMENT = LateralMovement.HIGH_SPEED +LONGITUDINAL_MOVEMENT = LongitudinalMovement.VELOCITY_KEEPING -# Parameter MAX_SPEED = 50.0 / 3.6 # maximum speed [m/s] -MAX_ACCEL = 2.0 # maximum acceleration [m/ss] +MAX_ACCEL = 5.0 # maximum acceleration [m/ss] MAX_CURVATURE = 1.0 # maximum curvature [1/m] -MAX_ROAD_WIDTH = 7.0 # maximum road width [m] -D_ROAD_W = 1.0 # road width sampling length [m] DT = 0.2 # time tick [s] MAX_T = 5.0 # max prediction time [m] MIN_T = 4.0 # min prediction time [m] -TARGET_SPEED = 30.0 / 3.6 # target speed [m/s] -D_T_S = 5.0 / 3.6 # target speed sampling length [m/s] N_S_SAMPLE = 1 # sampling number of target speed -ROBOT_RADIUS = 2.0 # robot radius [m] # cost weights K_J = 0.1 K_T = 0.1 +K_S_DOT = 1.0 K_D = 1.0 +K_S = 1.0 K_LAT = 1.0 K_LON = 1.0 +SIM_LOOP = 500 show_animation = True -class QuarticPolynomial: +if LATERAL_MOVEMENT == LateralMovement.LOW_SPEED: + MAX_ROAD_WIDTH = 1.0 # maximum road width [m] + D_ROAD_W = 0.2 # road width sampling length [m] + TARGET_SPEED = 3.0 / 3.6 # maximum speed [m/s] + D_T_S = 0.5 / 3.6 # target speed sampling length [m/s] + # Waypoints + WX = [0.0, 2.0, 4.0, 6.0, 8.0, 10.0] + WY = [0.0, 0.0, 1.0, 0.0, -1.0, -2.0] + OBSTACLES = np.array([[3.0, 1.0], [5.0, -0.0], [6.0, 0.5], [8.0, -1.5]]) + ROBOT_RADIUS = 0.5 # robot radius [m] + + # Initial state parameters + INITIAL_SPEED = 1.0 / 3.6 # current speed [m/s] + INITIAL_ACCEL = 0.0 # current acceleration [m/ss] + INITIAL_LAT_POSITION = 0.5 # current lateral position [m] + INITIAL_LAT_SPEED = 0.0 # current lateral speed [m/s] + INITIAL_LAT_ACCELERATION = 0.0 # current lateral acceleration [m/s] + INITIAL_COURSE_POSITION = 0.0 # current course position + + ANIMATION_AREA = 5.0 # Animation area length [m] + + STOP_S = 4.0 # Merge and stop distance [m] + D_S = 0.3 # Stop point sampling length [m] + N_STOP_S_SAMPLE = 3 # Stop point sampling number +else: + MAX_ROAD_WIDTH = 7.0 # maximum road width [m] + D_ROAD_W = 1.0 # road width sampling length [m] + TARGET_SPEED = 30.0 / 3.6 # target speed [m/s] + D_T_S = 5.0 / 3.6 # target speed sampling length [m/s] + # Waypoints + WX = [0.0, 10.0, 20.5, 35.0, 70.5] + WY = [0.0, -6.0, 5.0, 6.5, 0.0] + # Obstacle list + OBSTACLES = np.array( + [[20.0, 10.0], [30.0, 6.0], [30.0, 8.0], [35.0, 8.0], [50.0, 3.0]] + ) + ROBOT_RADIUS = 2.0 # robot radius [m] + + # Initial state parameters + INITIAL_SPEED = 10.0 / 3.6 # current speed [m/s] + INITIAL_ACCEL = 0.0 # current acceleration [m/ss] + INITIAL_LAT_POSITION = 2.0 # current lateral position [m] + INITIAL_LAT_SPEED = 0.0 # current lateral speed [m/s] + INITIAL_LAT_ACCELERATION = 0.0 # current lateral acceleration [m/s] + INITIAL_COURSE_POSITION = 0.0 # current course position + + ANIMATION_AREA = 20.0 # Animation area length [m] + STOP_S = 25.0 # Merge and stop distance [m] + D_S = 2 # Stop point sampling length [m] + N_STOP_S_SAMPLE = 4 # Stop point sampling number + + +class LateralMovementStrategy: + def calc_lateral_trajectory(self, fp, di, c_d, c_d_d, c_d_dd, Ti): + """ + Calculate the lateral trajectory + """ + raise NotImplementedError("calc_lateral_trajectory not implemented") + + def calc_cartesian_parameters(self, fp, csp): + """ + Calculate the cartesian parameters (x, y, yaw, curvature, v, a) + """ + raise NotImplementedError("calc_cartesian_parameters not implemented") + + +class HighSpeedLateralMovementStrategy(LateralMovementStrategy): + def calc_lateral_trajectory(self, fp, di, c_d, c_d_d, c_d_dd, Ti): + tp = copy.deepcopy(fp) + s0_d = fp.s_d[0] + s0_dd = fp.s_dd[0] + # d'(t) = d'(s) * s'(t) + # d''(t) = d''(s) * s'(t)^2 + d'(s) * s''(t) + lat_qp = QuinticPolynomial( + c_d, c_d_d * s0_d, c_d_dd * s0_d**2 + c_d_d * s0_dd, di, 0.0, 0.0, Ti + ) + + tp.d = [] + tp.d_d = [] + tp.d_dd = [] + tp.d_ddd = [] + + # Calculate all derivatives in a single loop to reduce iterations + for i in range(len(fp.t)): + t = fp.t[i] + s_d = fp.s_d[i] + s_dd = fp.s_dd[i] + + s_d_inv = 1.0 / (s_d + 1e-6) + 1e-6 # Avoid division by zero + s_d_inv_sq = s_d_inv * s_d_inv # Square of inverse + + d = lat_qp.calc_point(t) + d_d = lat_qp.calc_first_derivative(t) + d_dd = lat_qp.calc_second_derivative(t) + d_ddd = lat_qp.calc_third_derivative(t) + + tp.d.append(d) + # d'(s) = d'(t) / s'(t) + tp.d_d.append(d_d * s_d_inv) + # d''(s) = (d''(t) - d'(s) * s''(t)) / s'(t)^2 + tp.d_dd.append((d_dd - tp.d_d[i] * s_dd) * s_d_inv_sq) + tp.d_ddd.append(d_ddd) + + return tp + + def calc_cartesian_parameters(self, fp, csp): + # calc global positions + for i in range(len(fp.s)): + ix, iy = csp.calc_position(fp.s[i]) + if ix is None: + break + i_yaw = csp.calc_yaw(fp.s[i]) + i_kappa = csp.calc_curvature(fp.s[i]) + i_dkappa = csp.calc_curvature_rate(fp.s[i]) + s_condition = [fp.s[i], fp.s_d[i], fp.s_dd[i]] + d_condition = [ + fp.d[i], + fp.d_d[i], + fp.d_dd[i], + ] + x, y, theta, kappa, v, a = CartesianFrenetConverter.frenet_to_cartesian( + fp.s[i], ix, iy, i_yaw, i_kappa, i_dkappa, s_condition, d_condition + ) + fp.x.append(x) + fp.y.append(y) + fp.yaw.append(theta) + fp.c.append(kappa) + fp.v.append(v) + fp.a.append(a) + return fp + + +class LowSpeedLateralMovementStrategy(LateralMovementStrategy): + def calc_lateral_trajectory(self, fp, di, c_d, c_d_d, c_d_dd, Ti): + s0 = fp.s[0] + s1 = fp.s[-1] + tp = copy.deepcopy(fp) + # d = d(s), d_d = d'(s), d_dd = d''(s) + # * shift s range from [s0, s1] to [0, s1 - s0] + lat_qp = QuinticPolynomial(c_d, c_d_d, c_d_dd, di, 0.0, 0.0, s1 - s0) + + tp.d = [lat_qp.calc_point(s - s0) for s in fp.s] + tp.d_d = [lat_qp.calc_first_derivative(s - s0) for s in fp.s] + tp.d_dd = [lat_qp.calc_second_derivative(s - s0) for s in fp.s] + tp.d_ddd = [lat_qp.calc_third_derivative(s - s0) for s in fp.s] + return tp + + def calc_cartesian_parameters(self, fp, csp): + # calc global positions + for i in range(len(fp.s)): + ix, iy = csp.calc_position(fp.s[i]) + if ix is None: + break + i_yaw = csp.calc_yaw(fp.s[i]) + i_kappa = csp.calc_curvature(fp.s[i]) + i_dkappa = csp.calc_curvature_rate(fp.s[i]) + s_condition = [fp.s[i], fp.s_d[i], fp.s_dd[i]] + d_condition = [fp.d[i], fp.d_d[i], fp.d_dd[i]] + x, y, theta, kappa, v, a = CartesianFrenetConverter.frenet_to_cartesian( + fp.s[i], ix, iy, i_yaw, i_kappa, i_dkappa, s_condition, d_condition + ) + fp.x.append(x) + fp.y.append(y) + fp.yaw.append(theta) + fp.c.append(kappa) + fp.v.append(v) + fp.a.append(a) + return fp + + +class LongitudinalMovementStrategy: + def calc_longitudinal_trajectory(self, c_speed, c_accel, Ti, s0): + """ + Calculate the longitudinal trajectory + """ + raise NotImplementedError("calc_longitudinal_trajectory not implemented") + + def get_d_arrange(self, s0): + """ + Get the d sample range + """ + raise NotImplementedError("get_d_arrange not implemented") + + def calc_destination_cost(self, fp): + """ + Calculate the destination cost + """ + raise NotImplementedError("calc_destination_cost not implemented") + + +class VelocityKeepingLongitudinalMovementStrategy(LongitudinalMovementStrategy): + def calc_longitudinal_trajectory(self, c_speed, c_accel, Ti, s0): + fplist = [] + for tv in np.arange( + TARGET_SPEED - D_T_S * N_S_SAMPLE, TARGET_SPEED + D_T_S * N_S_SAMPLE, D_T_S + ): + fp = FrenetPath() + lon_qp = QuarticPolynomial(s0, c_speed, c_accel, tv, 0.0, Ti) + fp.t = [t for t in np.arange(0.0, Ti, DT)] + fp.s = [lon_qp.calc_point(t) for t in fp.t] + fp.s_d = [lon_qp.calc_first_derivative(t) for t in fp.t] + fp.s_dd = [lon_qp.calc_second_derivative(t) for t in fp.t] + fp.s_ddd = [lon_qp.calc_third_derivative(t) for t in fp.t] + fplist.append(fp) + return fplist + + def get_d_arrange(self, s0): + return np.arange(-MAX_ROAD_WIDTH, MAX_ROAD_WIDTH, D_ROAD_W) + + def calc_destination_cost(self, fp): + ds = (TARGET_SPEED - fp.s_d[-1]) ** 2 + return K_S_DOT * ds + + +class MergingAndStoppingLongitudinalMovementStrategy(LongitudinalMovementStrategy): + def calc_longitudinal_trajectory(self, c_speed, c_accel, Ti, s0): + if s0 >= STOP_S: + return [] + fplist = [] + for s in np.arange( + STOP_S - D_S * N_STOP_S_SAMPLE, STOP_S + D_S * N_STOP_S_SAMPLE, D_S + ): + fp = FrenetPath() + lon_qp = QuinticPolynomial(s0, c_speed, c_accel, s, 0.0, 0.0, Ti) + fp.t = [t for t in np.arange(0.0, Ti, DT)] + fp.s = [lon_qp.calc_point(t) for t in fp.t] + fp.s_d = [lon_qp.calc_first_derivative(t) for t in fp.t] + fp.s_dd = [lon_qp.calc_second_derivative(t) for t in fp.t] + fp.s_ddd = [lon_qp.calc_third_derivative(t) for t in fp.t] + fplist.append(fp) + return fplist + + def get_d_arrange(self, s0): + # Only if s0 is less than STOP_S / 3, then we sample the road width + if s0 < STOP_S / 3: + return np.arange(-MAX_ROAD_WIDTH, MAX_ROAD_WIDTH, D_ROAD_W) + else: + return [0.0] + + def calc_destination_cost(self, fp): + ds = (STOP_S - fp.s[-1]) ** 2 + return K_S * ds + +LATERAL_MOVEMENT_STRATEGY: LateralMovementStrategy +LONGITUDINAL_MOVEMENT_STRATEGY: LongitudinalMovementStrategy + +if LATERAL_MOVEMENT == LateralMovement.HIGH_SPEED: + LATERAL_MOVEMENT_STRATEGY = HighSpeedLateralMovementStrategy() +else: + LATERAL_MOVEMENT_STRATEGY = LowSpeedLateralMovementStrategy() + +if LONGITUDINAL_MOVEMENT == LongitudinalMovement.VELOCITY_KEEPING: + LONGITUDINAL_MOVEMENT_STRATEGY = VelocityKeepingLongitudinalMovementStrategy() +else: + LONGITUDINAL_MOVEMENT_STRATEGY = MergingAndStoppingLongitudinalMovementStrategy() + +class QuarticPolynomial: def __init__(self, xs, vxs, axs, vxe, axe, time): # calc coefficient of quartic polynomial @@ -61,29 +332,25 @@ def __init__(self, xs, vxs, axs, vxe, axe, time): self.a1 = vxs self.a2 = axs / 2.0 - A = np.array([[3 * time ** 2, 4 * time ** 3], - [6 * time, 12 * time ** 2]]) - b = np.array([vxe - self.a1 - 2 * self.a2 * time, - axe - 2 * self.a2]) + A = np.array([[3 * time**2, 4 * time**3], [6 * time, 12 * time**2]]) + b = np.array([vxe - self.a1 - 2 * self.a2 * time, axe - 2 * self.a2]) x = np.linalg.solve(A, b) self.a3 = x[0] self.a4 = x[1] def calc_point(self, t): - xt = self.a0 + self.a1 * t + self.a2 * t ** 2 + \ - self.a3 * t ** 3 + self.a4 * t ** 4 + xt = self.a0 + self.a1 * t + self.a2 * t**2 + self.a3 * t**3 + self.a4 * t**4 return xt def calc_first_derivative(self, t): - xt = self.a1 + 2 * self.a2 * t + \ - 3 * self.a3 * t ** 2 + 4 * self.a4 * t ** 3 + xt = self.a1 + 2 * self.a2 * t + 3 * self.a3 * t**2 + 4 * self.a4 * t**3 return xt def calc_second_derivative(self, t): - xt = 2 * self.a2 + 6 * self.a3 * t + 12 * self.a4 * t ** 2 + xt = 2 * self.a2 + 6 * self.a3 * t + 12 * self.a4 * t**2 return xt @@ -94,111 +361,85 @@ def calc_third_derivative(self, t): class FrenetPath: - def __init__(self): self.t = [] self.d = [] - self.d_d = [] - self.d_dd = [] - self.d_ddd = [] + self.d_d = [] # d'(s) + self.d_dd = [] # d''(s) + self.d_ddd = [] # d'''(t) in low speed / d'''(s) in high speed self.s = [] - self.s_d = [] - self.s_dd = [] - self.s_ddd = [] - self.cd = 0.0 - self.cv = 0.0 + self.s_d = [] # s'(t) + self.s_dd = [] # s''(t) + self.s_ddd = [] # s'''(t) self.cf = 0.0 self.x = [] self.y = [] self.yaw = [] + self.v = [] + self.a = [] self.ds = [] self.c = [] - -def calc_frenet_paths(c_speed, c_accel, c_d, c_d_d, c_d_dd, s0): + def pop_front(self): + self.x.pop(0) + self.y.pop(0) + self.yaw.pop(0) + self.v.pop(0) + self.a.pop(0) + self.s.pop(0) + self.s_d.pop(0) + self.s_dd.pop(0) + self.s_ddd.pop(0) + self.d.pop(0) + self.d_d.pop(0) + self.d_dd.pop(0) + self.d_ddd.pop(0) + + +def calc_frenet_paths(c_s_d, c_s_dd, c_d, c_d_d, c_d_dd, s0): frenet_paths = [] - # generate path to each offset goal - for di in np.arange(-MAX_ROAD_WIDTH, MAX_ROAD_WIDTH, D_ROAD_W): - - # Lateral motion planning - for Ti in np.arange(MIN_T, MAX_T, DT): - fp = FrenetPath() - - # lat_qp = quintic_polynomial(c_d, c_d_d, c_d_dd, di, 0.0, 0.0, Ti) - lat_qp = QuinticPolynomial(c_d, c_d_d, c_d_dd, di, 0.0, 0.0, Ti) - - fp.t = [t for t in np.arange(0.0, Ti, DT)] - fp.d = [lat_qp.calc_point(t) for t in fp.t] - fp.d_d = [lat_qp.calc_first_derivative(t) for t in fp.t] - fp.d_dd = [lat_qp.calc_second_derivative(t) for t in fp.t] - fp.d_ddd = [lat_qp.calc_third_derivative(t) for t in fp.t] - - # Longitudinal motion planning (Velocity keeping) - for tv in np.arange(TARGET_SPEED - D_T_S * N_S_SAMPLE, - TARGET_SPEED + D_T_S * N_S_SAMPLE, D_T_S): - tfp = copy.deepcopy(fp) - lon_qp = QuarticPolynomial(s0, c_speed, c_accel, tv, 0.0, Ti) - - tfp.s = [lon_qp.calc_point(t) for t in fp.t] - tfp.s_d = [lon_qp.calc_first_derivative(t) for t in fp.t] - tfp.s_dd = [lon_qp.calc_second_derivative(t) for t in fp.t] - tfp.s_ddd = [lon_qp.calc_third_derivative(t) for t in fp.t] - - Jp = sum(np.power(tfp.d_ddd, 2)) # square of jerk - Js = sum(np.power(tfp.s_ddd, 2)) # square of jerk - - # square of diff from target speed - ds = (TARGET_SPEED - tfp.s_d[-1]) ** 2 - - tfp.cd = K_J * Jp + K_T * Ti + K_D * tfp.d[-1] ** 2 - tfp.cv = K_J * Js + K_T * Ti + K_D * ds - tfp.cf = K_LAT * tfp.cd + K_LON * tfp.cv - - frenet_paths.append(tfp) + for Ti in np.arange(MIN_T, MAX_T, DT): + lon_paths = LONGITUDINAL_MOVEMENT_STRATEGY.calc_longitudinal_trajectory( + c_s_d, c_s_dd, Ti, s0 + ) + + for fp in lon_paths: + for di in LONGITUDINAL_MOVEMENT_STRATEGY.get_d_arrange(s0): + tp = LATERAL_MOVEMENT_STRATEGY.calc_lateral_trajectory( + fp, di, c_d, c_d_d, c_d_dd, Ti + ) + + Jp = sum(np.power(tp.d_ddd, 2)) # square of jerk + Js = sum(np.power(tp.s_ddd, 2)) # square of jerk + + lat_cost = K_J * Jp + K_T * Ti + K_D * tp.d[-1] ** 2 + lon_cost = ( + K_J * Js + + K_T * Ti + + LONGITUDINAL_MOVEMENT_STRATEGY.calc_destination_cost(tp) + ) + tp.cf = K_LAT * lat_cost + K_LON * lon_cost + frenet_paths.append(tp) return frenet_paths def calc_global_paths(fplist, csp): - for fp in fplist: - - # calc global positions - for i in range(len(fp.s)): - ix, iy = csp.calc_position(fp.s[i]) - if ix is None: - break - i_yaw = csp.calc_yaw(fp.s[i]) - di = fp.d[i] - fx = ix + di * math.cos(i_yaw + math.pi / 2.0) - fy = iy + di * math.sin(i_yaw + math.pi / 2.0) - fp.x.append(fx) - fp.y.append(fy) - - # calc yaw and ds - for i in range(len(fp.x) - 1): - dx = fp.x[i + 1] - fp.x[i] - dy = fp.y[i + 1] - fp.y[i] - fp.yaw.append(math.atan2(dy, dx)) - fp.ds.append(math.hypot(dx, dy)) - - fp.yaw.append(fp.yaw[-1]) - fp.ds.append(fp.ds[-1]) - - # calc curvature - for i in range(len(fp.yaw) - 1): - fp.c.append((fp.yaw[i + 1] - fp.yaw[i]) / fp.ds[i]) - - return fplist + return [ + LATERAL_MOVEMENT_STRATEGY.calc_cartesian_parameters(fp, csp) for fp in fplist + ] def check_collision(fp, ob): for i in range(len(ob[:, 0])): - d = [((ix - ob[i, 0]) ** 2 + (iy - ob[i, 1]) ** 2) - for (ix, iy) in zip(fp.x, fp.y)] + d = [ + ((ix - ob[i, 0]) ** 2 + (iy - ob[i, 1]) ** 2) + for (ix, iy) in zip(fp.x, fp.y) + ] - collision = any([di <= ROBOT_RADIUS ** 2 for di in d]) + collision = any([di <= ROBOT_RADIUS**2 for di in d]) if collision: return False @@ -207,38 +448,41 @@ def check_collision(fp, ob): def check_paths(fplist, ob): - ok_ind = [] + path_dict = { + "max_speed_error": [], + "max_accel_error": [], + "max_curvature_error": [], + "collision_error": [], + "ok": [], + } for i, _ in enumerate(fplist): - if any([v > MAX_SPEED for v in fplist[i].s_d]): # Max speed check - continue - elif any([abs(a) > MAX_ACCEL for a in - fplist[i].s_dd]): # Max accel check - continue - elif any([abs(c) > MAX_CURVATURE for c in - fplist[i].c]): # Max curvature check - continue + if any([v > MAX_SPEED for v in fplist[i].v]): # Max speed check + path_dict["max_speed_error"].append(fplist[i]) + elif any([abs(a) > MAX_ACCEL for a in fplist[i].a]): # Max accel check + path_dict["max_accel_error"].append(fplist[i]) + elif any([abs(c) > MAX_CURVATURE for c in fplist[i].c]): # Max curvature check + path_dict["max_curvature_error"].append(fplist[i]) elif not check_collision(fplist[i], ob): - continue + path_dict["collision_error"].append(fplist[i]) + else: + path_dict["ok"].append(fplist[i]) + return path_dict - ok_ind.append(i) - return [fplist[i] for i in ok_ind] - - -def frenet_optimal_planning(csp, s0, c_speed, c_accel, c_d, c_d_d, c_d_dd, ob): - fplist = calc_frenet_paths(c_speed, c_accel, c_d, c_d_d, c_d_dd, s0) +def frenet_optimal_planning(csp, s0, c_s_d, c_s_dd, c_d, c_d_d, c_d_dd, ob): + fplist = calc_frenet_paths(c_s_d, c_s_dd, c_d, c_d_d, c_d_dd, s0) fplist = calc_global_paths(fplist, csp) - fplist = check_paths(fplist, ob) + fpdict = check_paths(fplist, ob) # find minimum cost path min_cost = float("inf") best_path = None - for fp in fplist: + for fp in fpdict["ok"]: if min_cost >= fp.cf: min_cost = fp.cf best_path = fp - return best_path + return [best_path, fpdict] def generate_target_course(x, y): @@ -259,40 +503,39 @@ def generate_target_course(x, y): def main(): print(__file__ + " start!!") - # way points - wx = [0.0, 10.0, 20.5, 35.0, 70.5] - wy = [0.0, -6.0, 5.0, 6.5, 0.0] - # obstacle lists - ob = np.array([[20.0, 10.0], - [30.0, 6.0], - [30.0, 8.0], - [35.0, 8.0], - [50.0, 3.0] - ]) - - tx, ty, tyaw, tc, csp = generate_target_course(wx, wy) - - # initial state - c_speed = 10.0 / 3.6 # current speed [m/s] - c_accel = 0.0 # current acceleration [m/ss] - c_d = 2.0 # current lateral position [m] - c_d_d = 0.0 # current lateral speed [m/s] - c_d_dd = 0.0 # current lateral acceleration [m/s] - s0 = 0.0 # current course position - - area = 20.0 # animation area length [m] + tx, ty, tyaw, tc, csp = generate_target_course(WX, WY) + + # Initialize state using global parameters + c_s_d = INITIAL_SPEED + c_s_dd = INITIAL_ACCEL + c_d = INITIAL_LAT_POSITION + c_d_d = INITIAL_LAT_SPEED + c_d_dd = INITIAL_LAT_ACCELERATION + s0 = INITIAL_COURSE_POSITION + + area = ANIMATION_AREA + + last_path = None for i in range(SIM_LOOP): - path = frenet_optimal_planning( - csp, s0, c_speed, c_accel, c_d, c_d_d, c_d_dd, ob) + [path, fpdict] = frenet_optimal_planning( + csp, s0, c_s_d, c_s_dd, c_d, c_d_d, c_d_dd, OBSTACLES + ) + + if path is None: + path = copy.deepcopy(last_path) + path.pop_front() + if len(path.x) <= 1: + print("Finish") + break + last_path = path s0 = path.s[1] c_d = path.d[1] c_d_d = path.d_d[1] c_d_dd = path.d_dd[1] - c_speed = path.s_d[1] - c_accel = path.s_dd[1] - + c_s_d = path.s_d[1] + c_s_dd = path.s_dd[1] if np.hypot(path.x[1] - tx[-1], path.y[1] - ty[-1]) <= 1.0: print("Goal") break @@ -301,15 +544,16 @@ def main(): plt.cla() # for stopping simulation with the esc key. plt.gcf().canvas.mpl_connect( - 'key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + "key_release_event", + lambda event: [exit(0) if event.key == "escape" else None], + ) plt.plot(tx, ty) - plt.plot(ob[:, 0], ob[:, 1], "xk") + plt.plot(OBSTACLES[:, 0], OBSTACLES[:, 1], "xk") plt.plot(path.x[1:], path.y[1:], "-or") plt.plot(path.x[1], path.y[1], "vc") plt.xlim(path.x[1] - area, path.x[1] + area) plt.ylim(path.y[1] - area, path.y[1] + area) - plt.title("v[km/h]:" + str(c_speed * 3.6)[0:4]) + plt.title("v[km/h]:" + str(path.v[1] * 3.6)[0:4]) plt.grid(True) plt.pause(0.0001) @@ -320,5 +564,5 @@ def main(): plt.show() -if __name__ == '__main__': +if __name__ == "__main__": main() diff --git a/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst b/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst index e9d9041e0e..38efaf2b53 100644 --- a/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst +++ b/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst @@ -1,14 +1,40 @@ Optimal Trajectory in a Frenet Frame ------------------------------------ -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/animation.gif - This is optimal trajectory generation in a Frenet Frame. The cyan line is the target course and black crosses are obstacles. The red line is predicted path. +High Speed and Velocity Keeping Scenario +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/high_speed_and_velocity_keeping_frenet_path.gif + +This scenario shows how the trajectory is maintained at high speeds while keeping a consistent velocity. + +High Speed and Merging and Stopping Scenario +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/high_speed_and_merging_and_stopping_frenet_path.gif + +This scenario demonstrates the trajectory planning at high speeds with merging and stopping behaviors. + +Low Speed and Velocity Keeping Scenario +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/low_speed_and_velocity_keeping_frenet_path.gif + +This scenario demonstrates how the trajectory is managed at low speeds while maintaining a steady velocity. + +Low Speed and Merging and Stopping Scenario +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/low_speed_and_merging_and_stopping_frenet_path.gif + +This scenario illustrates the trajectory planning at low speeds with merging and stopping behaviors. + Ref: - `Optimal Trajectory Generation for Dynamic Street Scenarios in a diff --git a/tests/test_frenet_optimal_trajectory.py b/tests/test_frenet_optimal_trajectory.py index 72bb7a8341..b8761ff4a6 100644 --- a/tests/test_frenet_optimal_trajectory.py +++ b/tests/test_frenet_optimal_trajectory.py @@ -1,12 +1,48 @@ import conftest from PathPlanning.FrenetOptimalTrajectory import frenet_optimal_trajectory as m +from PathPlanning.FrenetOptimalTrajectory.frenet_optimal_trajectory import ( + LateralMovement, + LongitudinalMovement, +) -def test1(): +def default_scenario_test(): m.show_animation = False m.SIM_LOOP = 5 m.main() -if __name__ == '__main__': +def high_speed_and_merging_and_stopping_scenario_test(): + m.show_animation = False + m.LATERAL_MOVEMENT = LateralMovement.HIGH_SPEED + m.LONGITUDINAL_MOVEMENT = LongitudinalMovement.MERGING_AND_STOPPING + m.SIM_LOOP = 5 + m.main() + + +def high_speed_and_velocity_keeping_scenario_test(): + m.show_animation = False + m.LATERAL_MOVEMENT = LateralMovement.HIGH_SPEED + m.LONGITUDINAL_MOVEMENT = LongitudinalMovement.VELOCITY_KEEPING + m.SIM_LOOP = 5 + m.main() + + +def low_speed_and_velocity_keeping_scenario_test(): + m.show_animation = False + m.LATERAL_MOVEMENT = LateralMovement.LOW_SPEED + m.LONGITUDINAL_MOVEMENT = LongitudinalMovement.VELOCITY_KEEPING + m.SIM_LOOP = 5 + m.main() + + +def low_speed_and_merging_and_stopping_scenario_test(): + m.show_animation = False + m.LATERAL_MOVEMENT = LateralMovement.LOW_SPEED + m.LONGITUDINAL_MOVEMENT = LongitudinalMovement.MERGING_AND_STOPPING + m.SIM_LOOP = 5 + m.main() + + +if __name__ == "__main__": conftest.run_this_test(__file__) From 95eedba44713883d805fb92ff74aabbe1fa4f735 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 24 Jan 2025 13:24:26 +0900 Subject: [PATCH 197/312] Fix lint error (#1124) --- .../arm_obstacle_navigation.py | 4 ++-- .../arm_obstacle_navigation_2.py | 4 ++-- .../dynamic_movement_primitives.py | 13 ++++++------- .../Eta3SplineTrajectory/eta3_spline_trajectory.py | 7 +++---- PathPlanning/RRT/sobol/sobol.py | 12 ++++++------ 5 files changed, 19 insertions(+), 21 deletions(-) diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py index e377897e54..593db42b34 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py @@ -158,7 +158,7 @@ def astar_torus(grid, start_node, goal_node): while parent_map[route[0][0]][route[0][1]] != (): route.insert(0, parent_map[route[0][0]][route[0][1]]) - print("The route found covers %d grid cells." % len(route)) + print(f"The route found covers {len(route)} grid cells.") for i in range(1, len(route)): grid[route[i]] = 6 plt.cla() @@ -212,7 +212,7 @@ def calc_heuristic_map(M, goal_node): return heuristic_map -class NLinkArm(object): +class NLinkArm: """ Class for controlling and plotting a planar arm with an arbitrary number of links. """ diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py index 10f4615c34..5295b7ca3a 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py @@ -189,7 +189,7 @@ def astar_torus(grid, start_node, goal_node): while parent_map[route[0][0]][route[0][1]] != (): route.insert(0, parent_map[route[0][0]][route[0][1]]) - print("The route found covers %d grid cells." % len(route)) + print(f"The route found covers {len(route)} grid cells.") for i in range(1, len(route)): grid[route[i]] = 6 plt.cla() @@ -243,7 +243,7 @@ def calc_heuristic_map(M, goal_node): return heuristic_map -class NLinkArm(object): +class NLinkArm: """ Class for controlling and plotting a planar arm with an arbitrary number of links. """ diff --git a/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py b/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py index 468d3b9f97..aa34934c0e 100644 --- a/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py +++ b/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py @@ -18,7 +18,7 @@ import numpy as np -class DMP(object): +class DMP: def __init__(self, training_data, data_period, K=156.25, B=25): """ @@ -215,21 +215,21 @@ def show_DMP_purpose(self): T_vals = np.linspace(T_orig, 2*T_orig, 20) for new_q0_value in q0_vals: - plot_title = "Initial Position = [%s, %s]" % \ - (round(new_q0_value[0], 2), round(new_q0_value[1], 2)) + plot_title = (f"Initial Position = [{round(new_q0_value[0], 2)}," + f" {round(new_q0_value[1], 2)}]") _, path = self.recreate_trajectory(new_q0_value, g_orig, T_orig) self.view_trajectory(path, title=plot_title, demo=True) for new_g_value in g_vals: - plot_title = "Goal Position = [%s, %s]" % \ - (round(new_g_value[0], 2), round(new_g_value[1], 2)) + plot_title = (f"Goal Position = [{round(new_g_value[0], 2)}," + f" {round(new_g_value[1], 2)}]") _, path = self.recreate_trajectory(q0_orig, new_g_value, T_orig) self.view_trajectory(path, title=plot_title, demo=True) for new_T_value in T_vals: - plot_title = "Period = %s [sec]" % round(new_T_value, 2) + plot_title = f"Period = {round(new_T_value, 2)} [sec]" _, path = self.recreate_trajectory(q0_orig, g_orig, new_T_value) self.view_trajectory(path, title=plot_title, demo=True) @@ -257,5 +257,4 @@ def example_DMP(): if __name__ == '__main__': - example_DMP() diff --git a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py index d034cb8a32..2dab7a7add 100644 --- a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py +++ b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py @@ -26,8 +26,7 @@ class MaxVelocityNotReached(Exception): def __init__(self, actual_vel, max_vel): - self.message = 'Actual velocity {} does not equal desired max velocity {}!'.format( - actual_vel, max_vel) + self.message = f'Actual velocity {actual_vel} does not equal desired max velocity {max_vel}!' class eta3_trajectory(Eta3Path): @@ -42,7 +41,7 @@ def __init__(self, segments, max_vel, v0=0.0, a0=0.0, max_accel=2.0, max_jerk=5. # ensure that all inputs obey the assumptions of the model assert max_vel > 0 and v0 >= 0 and a0 >= 0 and max_accel > 0 and max_jerk > 0 \ and a0 <= max_accel and v0 <= max_vel - super(eta3_trajectory, self).__init__(segments=segments) + super(__class__, self).__init__(segments=segments) self.total_length = sum([s.segment_length for s in self.segments]) self.max_vel = float(max_vel) self.v0 = float(v0) @@ -166,7 +165,7 @@ def velocity_profile(self): try: assert np.isclose(self.vels[index], 0) except AssertionError as e: - print('The final velocity {} is not zero'.format(self.vels[index])) + print(f'The final velocity {self.vels[index]} is not zero') raise e self.seg_lengths[index] = s_sf diff --git a/PathPlanning/RRT/sobol/sobol.py b/PathPlanning/RRT/sobol/sobol.py index 428ba58a98..cddc9d7c72 100644 --- a/PathPlanning/RRT/sobol/sobol.py +++ b/PathPlanning/RRT/sobol/sobol.py @@ -370,8 +370,8 @@ def i4_sobol(dim_num, seed): if (dim_num < 1 or dim_max < dim_num): print('I4_SOBOL - Fatal error!') print(' The spatial dimension DIM_NUM should satisfy:') - print(' 1 <= DIM_NUM <= %d' % dim_max) - print(' But this input value is DIM_NUM = %d' % dim_num) + print(f' 1 <= DIM_NUM <= {dim_max:d}') + print(f' But this input value is DIM_NUM = {dim_num:d}') return None dim_num_save = dim_num @@ -443,7 +443,7 @@ def i4_sobol(dim_num, seed): # l_var = i4_bit_lo0(seed) - elif (seed <= seed_save): + elif seed <= seed_save: seed_save = 0 lastq = np.zeros(dim_num) @@ -471,8 +471,8 @@ def i4_sobol(dim_num, seed): if maxcol < l_var: print('I4_SOBOL - Fatal error!') print(' Too many calls!') - print(' MAXCOL = %d\n' % maxcol) - print(' L = %d\n' % l_var) + print(f' MAXCOL = {maxcol:d}\n') + print(f' L = {l_var:d}\n') return None @@ -819,7 +819,7 @@ def r8mat_write(filename, m, n, a): with open(filename, 'w') as output: for i in range(0, m): for j in range(0, n): - s = ' %g' % (a[i, j]) + s = f' {a[i, j]:g}' output.write(s) output.write('\n') From 2a489b3b82d3d0a3152cf7641fa137deb116972d Mon Sep 17 00:00:00 2001 From: parmaski <89462537+parmaski@users.noreply.github.com> Date: Fri, 24 Jan 2025 13:28:12 +0900 Subject: [PATCH 198/312] Fix: dead link URL in doc (#1087) * fix dead url links * change link to MPC course * remove dead link --- .github/FUNDING.yml | 2 +- .../arm_obstacle_navigation.py | 2 +- .../arm_obstacle_navigation_2.py | 2 +- PathPlanning/BugPlanning/bug.py | 2 +- .../dynamic_movement_primitives.py | 2 +- .../eta3_spline_trajectory.py | 2 +- .../InformedRRTStar/informed_rrt_star.py | 2 +- .../quintic_polynomials_planner.py | 2 +- PathPlanning/RRT/sobol/sobol.py | 2 +- .../state_lattice_planner.py | 4 ++-- .../wavefront_coverage_path_planner.py | 2 +- PathTracking/cgmres_nmpc/cgmres_nmpc.py | 2 +- README.md | 21 +++++++++---------- SLAM/GraphBasedSLAM/data/README.rst | 2 +- appveyor.yml | 2 +- docs/conf.py | 2 +- docs/getting_started_main.rst | 2 +- docs/how_to_contribute_main.rst | 2 +- docs/make.bat | 2 +- .../particle_filter_localization_main.rst | 2 +- .../rectangle_fitting_main.rst | 4 ++-- .../bezier_path/bezier_path_main.rst | 2 +- .../bugplanner/bugplanner_main.rst | 2 +- .../coverage_path/coverage_path_main.rst | 2 +- .../dubins_path/dubins_path_main.rst | 2 +- ...l_predictive_trajectory_generator_main.rst | 2 +- .../quintic_polynomials_planner_main.rst | 2 +- .../reeds_shepp_path_main.rst | 2 +- docs/modules/path_planning/rrt/rrt_main.rst | 8 +++---- docs/modules/path_planning/rrt/rrt_star.rst | 2 +- .../state_lattice_planner_main.rst | 4 ++-- .../cgmres_nmpc/cgmres_nmpc_main.rst | 2 +- .../lqr_speed_and_steering_control_main.rst | 2 +- ...ictive_speed_and_steering_control_main.rst | 4 ++-- users_comments.md | 16 +++++--------- 35 files changed, 55 insertions(+), 62 deletions(-) diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 24f0926299..0d943696cc 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,4 +1,4 @@ # These are supported funding model platforms github: AtsushiSakai patreon: myenigma -custom: https://www.paypal.me/myenigmapay/ +custom: https://www.paypal.com/paypalme/myenigmapay/ diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py index 593db42b34..9047c13851 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation.py @@ -34,7 +34,7 @@ def detect_collision(line_seg, circle): """ Determines whether a line segment (arm link) is in contact with a circle (obstacle). - Credit to: http://doswa.com/2009/07/13/circle-segment-intersectioncollision.html + Credit to: https://web.archive.org/web/20200130224918/http://doswa.com/2009/07/13/circle-segment-intersectioncollision.html Args: line_seg: List of coordinates of line segment endpoints e.g. [[1, 1], [2, 2]] circle: List of circle coordinates and radius e.g. [0, 0, 0.5] is a circle centered diff --git a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py index 5295b7ca3a..f5d435082a 100644 --- a/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py +++ b/ArmNavigation/arm_obstacle_navigation/arm_obstacle_navigation_2.py @@ -66,7 +66,7 @@ def detect_collision(line_seg, circle): """ Determines whether a line segment (arm link) is in contact with a circle (obstacle). - Credit to: http://doswa.com/2009/07/13/circle-segment-intersectioncollision.html + Credit to: https://web.archive.org/web/20200130224918/http://doswa.com/2009/07/13/circle-segment-intersectioncollision.html Args: line_seg: List of coordinates of line segment endpoints e.g. [[1, 1], [2, 2]] circle: List of circle coordinates and radius e.g. [0, 0, 0.5] is a circle centered diff --git a/PathPlanning/BugPlanning/bug.py b/PathPlanning/BugPlanning/bug.py index 62fec7c109..34890cb55a 100644 --- a/PathPlanning/BugPlanning/bug.py +++ b/PathPlanning/BugPlanning/bug.py @@ -1,7 +1,7 @@ """ Bug Planning author: Sarim Mehdi(muhammadsarim.mehdi@studio.unibo.it) -Source: https://sites.google.com/site/ece452bugalgorithms/ +Source: https://web.archive.org/web/20201103052224/https://sites.google.com/site/ece452bugalgorithms/ """ import numpy as np diff --git a/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py b/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py index aa34934c0e..9ccd18b7c2 100644 --- a/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py +++ b/PathPlanning/DynamicMovementPrimitives/dynamic_movement_primitives.py @@ -9,7 +9,7 @@ More information on Dynamic Movement Primitives available at: https://arxiv.org/abs/2102.03861 -https://www.frontiersin.org/articles/10.3389/fncom.2013.00138/full +https://www.frontiersin.org/journals/computational-neuroscience/articles/10.3389/fncom.2013.00138/full """ diff --git a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py index 2dab7a7add..a73797dacb 100644 --- a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py +++ b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py @@ -6,7 +6,7 @@ Atsushi Sakai (@Atsushi_twi) Refs: -- https://jwdinius.github.io/blog/2018/eta3traj +- https://jwdinius.github.io/blog/2018/eta3traj/ - [eta^3-Splines for the Smooth Path Generation of Wheeled Mobile Robots] (https://ieeexplore.ieee.org/document/4339545/) diff --git a/PathPlanning/InformedRRTStar/informed_rrt_star.py b/PathPlanning/InformedRRTStar/informed_rrt_star.py index c37326e490..0483949c99 100644 --- a/PathPlanning/InformedRRTStar/informed_rrt_star.py +++ b/PathPlanning/InformedRRTStar/informed_rrt_star.py @@ -6,7 +6,7 @@ Reference: Informed RRT*: Optimal Sampling-based Path planning Focused via Direct Sampling of an Admissible Ellipsoidal Heuristic -https://arxiv.org/pdf/1404.2334.pdf +https://arxiv.org/pdf/1404.2334 """ import sys diff --git a/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py b/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py index 8ba11a23d2..fdc181afab 100644 --- a/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py +++ b/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py @@ -6,7 +6,7 @@ Ref: -- [Local Path planning And Motion Control For Agv In Positioning](http://ieeexplore.ieee.org/document/637936/) +- [Local Path planning And Motion Control For Agv In Positioning](https://ieeexplore.ieee.org/document/637936/) """ diff --git a/PathPlanning/RRT/sobol/sobol.py b/PathPlanning/RRT/sobol/sobol.py index cddc9d7c72..520d686a1d 100644 --- a/PathPlanning/RRT/sobol/sobol.py +++ b/PathPlanning/RRT/sobol/sobol.py @@ -13,7 +13,7 @@ PYTHON versions by Corrado Chisari Original code is available at - http://people.sc.fsu.edu/~jburkardt/py_src/sobol/sobol.html + https://people.sc.fsu.edu/~jburkardt/py_src/sobol/sobol.html Note: the i4 prefix means that the function takes a numeric argument or returns a number which is interpreted inside the function as a 4 diff --git a/PathPlanning/StateLatticePlanner/state_lattice_planner.py b/PathPlanning/StateLatticePlanner/state_lattice_planner.py index f4b1461b7a..7f8e725e0a 100644 --- a/PathPlanning/StateLatticePlanner/state_lattice_planner.py +++ b/PathPlanning/StateLatticePlanner/state_lattice_planner.py @@ -12,8 +12,8 @@ - State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments -http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.187.8210&rep=rep1 -&type=pdf +https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf +&doi=e2256b5b24137f89e473f01df288cb3aa72e56a0 """ import sys diff --git a/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py b/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py index 7e93caa8fb..c5a139454b 100644 --- a/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py +++ b/PathPlanning/WavefrontCPP/wavefront_coverage_path_planner.py @@ -4,7 +4,7 @@ author: Todd Tang paper: Planning paths of complete coverage of an unstructured environment by a mobile robot - Zelinsky et.al. -link: http://pinkwink.kr/attachment/cfile3.uf@1354654A4E8945BD13FE77.pdf +link: https://pinkwink.kr/attachment/cfile3.uf@1354654A4E8945BD13FE77.pdf """ import os diff --git a/PathTracking/cgmres_nmpc/cgmres_nmpc.py b/PathTracking/cgmres_nmpc/cgmres_nmpc.py index bb5699b888..a582c9da81 100644 --- a/PathTracking/cgmres_nmpc/cgmres_nmpc.py +++ b/PathTracking/cgmres_nmpc/cgmres_nmpc.py @@ -6,7 +6,7 @@ Ref: Shunichi09/nonlinear_control: Implementing the nonlinear model predictive -control, sliding mode control https://github.com/Shunichi09/nonlinear_control +control, sliding mode control https://github.com/Shunichi09/PythonLinearNonlinearControl """ diff --git a/README.md b/README.md index ee40dfc7eb..ec65342430 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,6 @@ ![GitHub_Action_MacOS_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/MacOS_CI/badge.svg) ![GitHub_Action_Windows_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/Windows_CI/badge.svg) [![Build status](https://ci.appveyor.com/api/projects/status/sb279kxuv1be391g?svg=true)](https://ci.appveyor.com/project/AtsushiSakai/pythonrobotics) -[![codecov](https://codecov.io/gh/AtsushiSakai/PythonRobotics/branch/master/graph/badge.svg)](https://codecov.io/gh/AtsushiSakai/PythonRobotics) Python codes for robotics algorithm. @@ -111,7 +110,7 @@ For development: - [pytest-xdist](https://pypi.org/project/pytest-xdist/) (for parallel unit tests) -- [mypy](http://mypy-lang.org/) (for type check) +- [mypy](https://mypy-lang.org/) (for type check) - [sphinx](https://www.sphinx-doc.org/) (for document generation) @@ -328,7 +327,7 @@ The animation shows a robot finding its path and rerouting to avoid obstacles as Refs: -- [D* Lite](http://idm-lab.org/bib/abstracts/papers/aaai02b.pd) +- [D* Lite](http://idm-lab.org/bib/abstracts/papers/aaai02b.pdf) - [Improved Fast Replanning for Robot Navigation in Unknown Terrain](http://www.cs.cmu.edu/~maxim/files/dlite_icra02.pdf) ### Potential Field algorithm @@ -357,9 +356,9 @@ This code uses the model predictive trajectory generator to solve boundary probl Ref: -- [Optimal rough terrain trajectory generation for wheeled mobile robots](http://journals.sagepub.com/doi/pdf/10.1177/0278364906075328) +- [Optimal rough terrain trajectory generation for wheeled mobile robots](https://journals.sagepub.com/doi/pdf/10.1177/0278364906075328) -- [State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments](http://www.frc.ri.cmu.edu/~alonzo/pubs/papers/JFR_08_SS_Sampling.pdf) +- [State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments](https://www.frc.ri.cmu.edu/~alonzo/pubs/papers/JFR_08_SS_Sampling.pdf) ### Biased polar sampling @@ -403,7 +402,7 @@ Ref: - [Incremental Sampling-based Algorithms for Optimal Motion Planning](https://arxiv.org/abs/1005.0416) -- [Sampling-based Algorithms for Optimal Motion Planning](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.419.5503&rep=rep1&type=pdf) +- [Sampling-based Algorithms for Optimal Motion Planning](https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=bddbc99f97173430aa49a0ada53ab5bade5902fa) ### RRT\* with reeds-shepp path @@ -421,7 +420,7 @@ A double integrator motion model is used for LQR local planner. Ref: -- [LQR\-RRT\*: Optimal Sampling\-Based Motion Planning with Automatically Derived Extension Heuristics](http://lis.csail.mit.edu/pubs/perez-icra12.pdf) +- [LQR\-RRT\*: Optimal Sampling\-Based Motion Planning with Automatically Derived Extension Heuristics](https://lis.csail.mit.edu/pubs/perez-icra12.pdf) - [MahanFathi/LQR\-RRTstar: LQR\-RRT\* method is used for random motion planning of a simple pendulum in its phase plot](https://github.com/MahanFathi/LQR-RRTstar) @@ -436,7 +435,7 @@ It can calculate a 2D path, velocity, and acceleration profile based on quintic Ref: -- [Local Path Planning And Motion Control For Agv In Positioning](http://ieeexplore.ieee.org/document/637936/) +- [Local Path Planning And Motion Control For Agv In Positioning](https://ieeexplore.ieee.org/document/637936/) ## Reeds Shepp planning @@ -523,7 +522,7 @@ Path tracking simulation with LQR speed and steering control. Ref: -- [Towards fully autonomous driving: Systems and algorithms \- IEEE Conference Publication](http://ieeexplore.ieee.org/document/5940562/) +- [Towards fully autonomous driving: Systems and algorithms \- IEEE Conference Publication](https://ieeexplore.ieee.org/document/5940562/) ## Model predictive speed and steering control @@ -630,7 +629,7 @@ If you or your company would like to support this project, please consider: - [Become a backer or sponsor on Patreon](https://www.patreon.com/myenigma) -- [One-time donation via PayPal](https://www.paypal.me/myenigmapay/) +- [One-time donation via PayPal](https://www.paypal.com/paypalme/myenigmapay/) If you would like to support us in some other way, please contact with creating an issue. @@ -640,7 +639,7 @@ If you would like to support us in some other way, please contact with creating They are providing a free license of their IDEs for this OSS development. -### [1Password](https://github.com/1Password/1password-teams-open-source) +### [1Password](https://github.com/1Password/for-open-source) They are providing a free license of their 1Password team license for this OSS project. diff --git a/SLAM/GraphBasedSLAM/data/README.rst b/SLAM/GraphBasedSLAM/data/README.rst index c875cce73f..15bc5b6c03 100644 --- a/SLAM/GraphBasedSLAM/data/README.rst +++ b/SLAM/GraphBasedSLAM/data/README.rst @@ -3,4 +3,4 @@ Acknowledgments and References Thanks to Luca Larlone for allowing inclusion of the `Intel dataset `_ in this repo. -1. Carlone, L. and Censi, A., 2014. `From angular manifolds to the integer lattice: Guaranteed orientation estimation with application to pose graph optimization `_. IEEE Transactions on Robotics, 30(2), pp.475-492. +1. Carlone, L. and Censi, A., 2014. `From angular manifolds to the integer lattice: Guaranteed orientation estimation with application to pose graph optimization `_. IEEE Transactions on Robotics, 30(2), pp.475-492. diff --git a/appveyor.yml b/appveyor.yml index 4964bab3da..05ad8a2820 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -4,7 +4,7 @@ environment: global: # SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the # /E:ON and /V:ON options are not enabled in the batch script intepreter - # See: http://stackoverflow.com/a/13751649/163740 + # See: https://stackoverflow.com/a/13751649/163740 CMD_IN_ENV: "cmd /E:ON /V:ON /C .\\appveyor\\run_with_env.cmd" matrix: diff --git a/docs/conf.py b/docs/conf.py index 46f69cf17b..4e06f3f988 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -3,7 +3,7 @@ # # This file does only contain a selection of the most common options. For a # full list see the documentation: -# http://www.sphinx-doc.org/en/master/config +# https://www.sphinx-doc.org/en/master/config # -- Path setup -------------------------------------------------------------- diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 88f218545e..004d68227b 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -49,7 +49,7 @@ For development: .. _`pytest-xdist`: https://github.com/pytest-dev/pytest-xdist .. _`mypy`: https://mypy-lang.org/ .. _`sphinx`: https://www.sphinx-doc.org/en/master/index.html -.. _`ruff`: https://github.com/charliermarsh/ruff +.. _`ruff`: https://github.com/astral-sh/ruff How to use diff --git a/docs/how_to_contribute_main.rst b/docs/how_to_contribute_main.rst index 48895d6fda..915b2155e4 100644 --- a/docs/how_to_contribute_main.rst +++ b/docs/how_to_contribute_main.rst @@ -159,6 +159,6 @@ Sponsors .. _`JetBrains`: https://www.jetbrains.com/ .. _`Sponsor @AtsushiSakai on GitHub Sponsors`: https://github.com/sponsors/AtsushiSakai .. _`Become a backer or sponsor on Patreon`: https://www.patreon.com/myenigma -.. _`One-time donation via PayPal`: https://www.paypal.me/myenigmapay/ +.. _`One-time donation via PayPal`: https://www.paypal.com/paypalme/myenigmapay/ diff --git a/docs/make.bat b/docs/make.bat index 6aab964dcc..07dcebea41 100644 --- a/docs/make.bat +++ b/docs/make.bat @@ -22,7 +22,7 @@ if errorlevel 9009 ( echo.may add the Sphinx directory to PATH. echo. echo.If you don't have Sphinx installed, grab it from - echo.http://sphinx-doc.org/ + echo.https://sphinx-doc.org/ exit /b 1 ) diff --git a/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst b/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst index c8652ce8a7..20a9eb58fc 100644 --- a/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst +++ b/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst @@ -34,4 +34,4 @@ References: ~~~~~~~~~~~ - `_PROBABILISTIC ROBOTICS: `_ -- `Improving the particle filter in high dimensions using conjugate artificial process noise `_ +- `Improving the particle filter in high dimensions using conjugate artificial process noise `_ diff --git a/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst b/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst index 50a50141b2..b6ced1dc1d 100644 --- a/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst +++ b/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst @@ -7,7 +7,7 @@ This is an object shape recognition using rectangle fitting. This example code is based on this paper algorithm: -- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ +- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ The algorithm consists of 2 steps as below. @@ -66,4 +66,4 @@ API References ~~~~~~~~~~ -- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ +- `Efficient L\-Shape Fitting for Vehicle Detection Using Laser Scanners \- The Robotics Institute Carnegie Mellon University `_ diff --git a/docs/modules/path_planning/bezier_path/bezier_path_main.rst b/docs/modules/path_planning/bezier_path/bezier_path_main.rst index fbba6a4496..d306a85352 100644 --- a/docs/modules/path_planning/bezier_path/bezier_path_main.rst +++ b/docs/modules/path_planning/bezier_path/bezier_path_main.rst @@ -17,4 +17,4 @@ Ref: - `Continuous Curvature Path Generation Based on Bezier Curves for Autonomous - Vehicles `__ + Vehicles ` diff --git a/docs/modules/path_planning/bugplanner/bugplanner_main.rst b/docs/modules/path_planning/bugplanner/bugplanner_main.rst index 72cc46709f..81c91c0313 100644 --- a/docs/modules/path_planning/bugplanner/bugplanner_main.rst +++ b/docs/modules/path_planning/bugplanner/bugplanner_main.rst @@ -5,4 +5,4 @@ This is a 2D planning with Bug algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/BugPlanner/animation.gif -- `ECE452 Bug Algorithms `_ +- `ECE452 Bug Algorithms `_ diff --git a/docs/modules/path_planning/coverage_path/coverage_path_main.rst b/docs/modules/path_planning/coverage_path/coverage_path_main.rst index 828342a294..0a688b5ed2 100644 --- a/docs/modules/path_planning/coverage_path/coverage_path_main.rst +++ b/docs/modules/path_planning/coverage_path/coverage_path_main.rst @@ -29,6 +29,6 @@ This is a 2D grid based wavefront coverage path planner simulation: .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/WavefrontCPP/animation2.gif .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/WavefrontCPP/animation3.gif -- `Planning paths of complete coverage of an unstructured environment by a mobile robot `_ +- `Planning paths of complete coverage of an unstructured environment by a mobile robot `_ diff --git a/docs/modules/path_planning/dubins_path/dubins_path_main.rst b/docs/modules/path_planning/dubins_path/dubins_path_main.rst index 516638d83d..12172fb51e 100644 --- a/docs/modules/path_planning/dubins_path/dubins_path_main.rst +++ b/docs/modules/path_planning/dubins_path/dubins_path_main.rst @@ -72,5 +72,5 @@ Reference ~~~~~~~~~~~~~~~~~~~~ - `On Curves of Minimal Length with a Constraint on Average Curvature, and with Prescribed Initial and Terminal Positions and Tangents `__ - `Dubins path - Wikipedia `__ -- `15.3.1 Dubins Curves `__ +- `15.3.1 Dubins Curves `__ - `A Comprehensive, Step-by-Step Tutorial to Computing Dubin’s Paths `__ diff --git a/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst b/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst index 0fc997898e..463363ddcf 100644 --- a/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst +++ b/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst @@ -19,4 +19,4 @@ Lookup table generation sample Ref: - `Optimal rough terrain trajectory generation for wheeled mobile - robots `__ + robots `__ diff --git a/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst b/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst index feec345bae..0412b3c9b3 100644 --- a/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst +++ b/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst @@ -101,6 +101,6 @@ References: ~~~~~~~~~~~ - `Local Path Planning And Motion Control For Agv In - Positioning `__ + Positioning `__ diff --git a/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst b/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst index 6d456417fe..ff377eb91b 100644 --- a/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst +++ b/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst @@ -383,7 +383,7 @@ Hence, we have: Ref: - `15.3.2 Reeds-Shepp - Curves `__ + Curves `__ - `optimal paths for a car that goes both forwards and backwards `__ diff --git a/docs/modules/path_planning/rrt/rrt_main.rst b/docs/modules/path_planning/rrt/rrt_main.rst index 5a3a30dcff..e5f351a7ba 100644 --- a/docs/modules/path_planning/rrt/rrt_main.rst +++ b/docs/modules/path_planning/rrt/rrt_main.rst @@ -57,7 +57,7 @@ Ref: - `Informed RRT\*: Optimal Sampling-based Path Planning Focused via Direct Sampling of an Admissible Ellipsoidal - Heuristic `__ + Heuristic `__ .. _batch-informed-rrt*: @@ -90,10 +90,10 @@ PID is used for speed control. Ref: - `Motion Planning in Complex Environments using Closed-loop - Prediction `__ + Prediction `__ - `Real-time Motion Planning with Applications to Autonomous Urban - Driving `__ + Driving `__ - `[1601.06326] Sampling-based Algorithms for Optimal Motion Planning Using Closed-loop Prediction `__ @@ -113,6 +113,6 @@ Ref: - `LQR-RRT\*: Optimal Sampling-Based Motion Planning with Automatically Derived Extension - Heuristics `__ + Heuristics `__ - `MahanFathi/LQR-RRTstar: LQR-RRT\* method is used for random motion planning of a simple pendulum in its phase plot `__ \ No newline at end of file diff --git a/docs/modules/path_planning/rrt/rrt_star.rst b/docs/modules/path_planning/rrt/rrt_star.rst index d36eaac70e..6deb6b9172 100644 --- a/docs/modules/path_planning/rrt/rrt_star.rst +++ b/docs/modules/path_planning/rrt/rrt_star.rst @@ -16,6 +16,6 @@ Simulation Ref ^^^ -- `Sampling-based Algorithms for Optimal Motion Planning `__ +- `Sampling-based Algorithms for Optimal Motion Planning `__ - `Incremental Sampling-based Algorithms for Optimal Motion Planning `__ diff --git a/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst b/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst index 3ef0c7eca2..d5e7ed17d1 100644 --- a/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst +++ b/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst @@ -25,9 +25,9 @@ Lane sampling Ref: - `Optimal rough terrain trajectory generation for wheeled mobile - robots `__ + robots `__ - `State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex - Environments `__ + Environments `__ diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst b/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst index a1980ba17e..23f1218a94 100644 --- a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst +++ b/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst @@ -60,7 +60,7 @@ Ref - `Shunichi09/nonlinear_control: Implementing the nonlinear model predictive control, sliding mode - control `__ + control `__ - `非線形モデル予測制御におけるCGMRES法をpythonで実装する - Qiita `__ diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst index a0b145456c..ded187e972 100644 --- a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst +++ b/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst @@ -137,4 +137,4 @@ Simulation results References: ~~~~~~~~~~~ -- `Towards fully autonomous driving: Systems and algorithms `__ +- `Towards fully autonomous driving: Systems and algorithms `__ diff --git a/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst b/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst index 59a7166674..de55b545ba 100644 --- a/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst +++ b/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst @@ -133,5 +133,5 @@ Reference - `Vehicle Dynamics and Control \| Rajesh Rajamani \| Springer `__ -- `MPC Course Material - MPC Lab @ - UC-Berkeley `__ +- `MPC Book - MPC Lab @ + UC-Berkeley `__ diff --git a/users_comments.md b/users_comments.md index 66e8b4022e..a2f798eac4 100644 --- a/users_comments.md +++ b/users_comments.md @@ -17,13 +17,7 @@ Ref: # Educational users -This is a list of users who are using PythonRobotics for education. - -If you found other users, please make an issue to let me know. - -- [CSCI/ARTI 4530/6530: Introduction to Robotics (Fall 2018), University of Georgia ](http://cobweb.cs.uga.edu/~ramviyas/csci_x530.html) - -- [CIT Modules & Programmes \- COMP9073 \- Automation with Python](https://courses.cit.ie/index.cfm/page/module/moduleId/14416) +If you found users who are using PythonRobotics for education, please make an issue to let me know. # Stargazers location map @@ -386,14 +380,14 @@ Dear Atsushi Sakai,
Thank you so much for creating PythonRobotics and docume 1. B. Blaga, M. Deac, R. W. Y. Al-doori, M. Negru and R. Dǎnescu, "Miniature Autonomous Vehicle Development on Raspberry Pi," 2018 IEEE 14th International Conference on Intelligent Computer Communication and Processing (ICCP), Cluj-Napoca, Romania, 2018, pp. 229-236. doi: 10.1109/ICCP.2018.8516589 keywords: {Automobiles;Task analysis;Autonomous vehicles;Path planning;Global Positioning System;Cameras;miniature autonomous vehicle;path planning;navigation;parking assist;lane detection and tracking;traffic sign recognition}, -URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8516589&isnumber=8516425 +URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8516589&isnumber=8516425 2. Peggy (Yuchun) Wang and Caitlin Hogan, "Path Planning with Dynamic Obstacle Avoidance for a Jumping-Enabled Robot", AA228/CS238 class report, Department of Computer Science, Stanford University, URL: https://web.stanford.edu/class/aa228/reports/2018/final113.pdf -3. Welburn, E, Hakim Khalili, H, Gupta, A, Watson, S & Carrasco, J 2019, A Navigational System for Quadcopter Remote Inspection of Offshore Substations. in The Fifteenth International Conference on Autonomic and Autonomous Systems 2019. URL:https://www.research.manchester.ac.uk/portal/files/107169964/ICAS19_A_Navigational_System_for_Quadcopter_Remote_Inspection_of_Offshore_Substations.pdf +3. Welburn, E, Hakim Khalili, H, Gupta, A, Watson, S & Carrasco, J 2019, A Navigational System for Quadcopter Remote Inspection of Offshore Substations. in The Fifteenth International Conference on Autonomic and Autonomous Systems 2019. URL:https://research.manchester.ac.uk/portal/files/107169964/ICAS19_A_Navigational_System_for_Quadcopter_Remote_Inspection_of_Offshore_Substations.pdf 4. E. Horváth, C. Hajdu, C. Radu and Á. Ballagi, "Range Sensor-based Occupancy Grid Mapping with Signatures," 2019 20th International Carpathian Control Conference (ICCC), Krakow-Wieliczka, Poland, 2019, pp. 1-5. -URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8765684&isnumber=8765679 +URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8765684&isnumber=8765679 5. Josie Hughes, Masaru Shimizu, and Arnoud Visser, "A Review of Robot Rescue Simulation Platforms for Robotics Education" URL: https://2019.robocup.org/downloads/program/HughesEtAl2019.pdf @@ -408,7 +402,7 @@ URL: https://arxiv.org/abs/1910.01557 URL: https://pdfs.semanticscholar.org/5c06/f3cb9542a51e1bf1a32523c1bc7fea6cecc5.pdf 9. Brijen Thananjeyan, et al. "ABC-LMPC: Safe Sample-Based Learning MPC for Stochastic Nonlinear Dynamical Systems with Adjustable Boundary Conditions" -URL: https://arxiv.org/pdf/2003.01410.pdf +URL: https://arxiv.org/pdf/2003.01410 # Others From 732db3d40d1dbdcfe60a3a5a02948d306c6a4c88 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 25 Jan 2025 21:06:23 +0900 Subject: [PATCH 199/312] Fix Doc generation warning (#1125) --- docs/getting_started_main.rst | 2 +- .../catmull_rom_spline/catmull_rom_spline_main.rst | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 004d68227b..256319ab8f 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -40,7 +40,7 @@ For development: - `sphinx`_ (for document generation) - `ruff`_ (for code style check) -.. _`Python 3.11.x`: https://www.python.org/ +.. _`Python 3.12.x`: https://www.python.org/ .. _`NumPy`: https://numpy.org/ .. _`SciPy`: https://scipy.org/ .. _`Matplotlib`: https://matplotlib.org/ diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst index 4d8d3bdefe..72e558c486 100644 --- a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst +++ b/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst @@ -1,5 +1,5 @@ Catmull-Rom Spline Planning ------------------ +---------------------------- .. image:: catmull_rom_path_planning.png @@ -10,7 +10,7 @@ exhibits local control, and maintains 𝐶1 continuity. Catmull-Rom Spline Fundamentals -~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Catmull-Rom splines are a type of cubic spline that passes through a given set of points, known as control points. @@ -24,7 +24,7 @@ Where: * :math:`P_0, P_1, P_2, P_3` are the control points surrounding the parameter :math:`t`. Types of Catmull-Rom Splines -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ There are different types of Catmull-Rom splines based on the choice of the **tau** parameter, which influences how the curve behaves in relation to the control points: @@ -51,7 +51,7 @@ behaves in relation to the control points: Blending Functions -~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~ In Catmull-Rom spline interpolation, blending functions are used to calculate the influence of each control point on the spline at a given parameter :math:`t`. The blending functions ensure that the spline is smooth and passes through the control points while @@ -97,7 +97,7 @@ API References -~~~~~~~~~~ +~~~~~~~~~~~~~~ - `Catmull-Rom Spline - Wikipedia `__ - `Catmull-Rom Splines `__ \ No newline at end of file From bf8f1774b753d3b0915960628386bb220de8f0af Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 25 Jan 2025 23:30:14 +0900 Subject: [PATCH 200/312] Update doc organization (#1126) --- docs/conf.py | 2 +- docs/index_main.rst | 24 +++++----- .../{control => 10_control}/control_main.rst | 0 .../inverted-pendulum.png | Bin .../inverted_pendulum_control_main.rst | 0 .../move_to_a_pose_control_main.rst | 0 .../plot/curvature_plot.png | Bin .../{utils => 11_utils}/plot/plot_main.rst | 0 .../{utils => 11_utils}/utils_main.rst | 0 .../Kalmanfilter_basics_2_5_0.png | Bin .../Kalmanfilter_basics_2_main.rst | 0 .../Kalmanfilter_basics_14_1.png | Bin .../Kalmanfilter_basics_16_0.png | Bin .../Kalmanfilter_basics_19_1.png | Bin .../Kalmanfilter_basics_21_1.png | Bin .../Kalmanfilter_basics_22_0.png | Bin .../Kalmanfilter_basics_28_1.png | Bin .../Kalmanfilter_basics_main.rst | 0 .../appendix_main.rst | 0 .../steering_motion_model/steering_model.png | Bin .../turning_radius_calc1.png | Bin .../turning_radius_calc2.png | Bin .../steering_motion_model_main.rst | 0 .../definition_of_robotics_main.rst | 4 ++ .../software_for_robotics_main.rst | 7 +++ .../technology_for_robotics_main.rst | 4 ++ .../1_introduction/introduction_main.rst | 13 ++++++ ...samble_kalman_filter_localization_main.rst | 0 .../ekf_with_velocity_correction_1_0.png | Bin ...xtended_kalman_filter_localization_1_0.png | Bin ...tended_kalman_filter_localization_main.rst | 0 .../histogram_filter_localization/1.png | Bin .../histogram_filter_localization/2.png | Bin .../histogram_filter_localization/3.png | Bin .../histogram_filter_localization/4.png | Bin .../histogram_filter_localization_main.rst | 0 .../localization_main.rst | 0 .../particle_filter_localization_main.rst | 0 ...cented_kalman_filter_localization_main.rst | 0 .../circle_fitting/circle_fitting_main.rst | 0 .../gaussian_grid_map_main.rst | 0 .../k_means_object_clustering_main.rst | 0 .../grid_map_example.png | Bin .../lidar_to_grid_map_tutorial_12_0.png | Bin .../lidar_to_grid_map_tutorial_14_1.png | Bin .../lidar_to_grid_map_tutorial_5_0.png | Bin .../lidar_to_grid_map_tutorial_7_0.png | Bin .../lidar_to_grid_map_tutorial_8_0.png | Bin .../lidar_to_grid_map_tutorial_main.rst | 0 .../{mapping => 3_mapping}/mapping_main.rst | 0 .../ndt_map/grid_clustering.png | Bin .../ndt_map/ndt_map1.png | Bin .../ndt_map/ndt_map2.png | Bin .../ndt_map/ndt_map_main.rst | 0 .../ndt_map/raw_observations.png | Bin .../normal_vector_calc.png | Bin .../normal_vector_estimation_main.rst | 0 .../ransac_normal_vector_estimation.png | Bin .../farthest_point_sampling.png | Bin .../point_cloud_sampling_main.rst | 0 .../poisson_disk_sampling.png | Bin .../voxel_point_sampling.png | Bin .../ray_casting_grid_map_main.rst | 0 .../rectangle_fitting_main.rst | 0 .../FastSLAM1/FastSLAM1_12_0.png | Bin .../FastSLAM1/FastSLAM1_12_1.png | Bin .../FastSLAM1/FastSLAM1_1_0.png | Bin .../FastSLAM1/FastSLAM1_main.rst | 0 .../FastSLAM2/FastSLAM2_main.rst | 0 .../ekf_slam/ekf_slam_1_0.png | Bin .../ekf_slam/ekf_slam_main.rst | 0 .../graph_slam/graphSLAM_SE2_example.rst | 0 .../graphSLAM_SE2_example_13_0.png | Bin .../graphSLAM_SE2_example_15_0.png | Bin .../graphSLAM_SE2_example_16_0.png | Bin .../graphSLAM_SE2_example_4_0.png | Bin .../graphSLAM_SE2_example_8_0.png | Bin .../graphSLAM_SE2_example_9_0.png | Bin .../graph_slam/graphSLAM_doc.rst | 0 .../graphSLAM_doc_11_1.png | Bin .../graphSLAM_doc_11_2.png | Bin .../graphSLAM_doc_files/graphSLAM_doc_2_0.png | Bin .../graphSLAM_doc_files/graphSLAM_doc_2_2.png | Bin .../graphSLAM_doc_files/graphSLAM_doc_4_0.png | Bin .../graphSLAM_doc_files/graphSLAM_doc_9_1.png | Bin .../graph_slam/graphSLAM_formulation.rst | 0 .../graph_slam/graph_slam_main.rst | 0 .../iterative_closest_point_matching_main.rst | 0 docs/modules/{slam => 4_slam}/slam_main.rst | 0 .../bezier_path/Figure_1.png | Bin .../bezier_path/Figure_2.png | Bin .../bezier_path/bezier_path_main.rst | 0 .../bspline_path/approx_and_curvature.png | Bin .../bspline_path/approximation1.png | Bin .../bspline_path/basis_functions.png | Bin .../bspline_path/bspline_path_main.rst | 0 .../bspline_path/bspline_path_planning.png | Bin .../bspline_path/interp_and_curvature.png | Bin .../bspline_path/interpolation1.png | Bin .../bugplanner/bugplanner_main.rst | 0 .../catmull_rom_spline/blending_functions.png | Bin .../catmull_rom_path_planning.png | Bin .../catmull_rom_spline_main.rst | 0 .../closed_loop_rrt_star_car/Figure_1.png | Bin .../closed_loop_rrt_star_car/Figure_3.png | Bin .../closed_loop_rrt_star_car/Figure_4.png | Bin .../closed_loop_rrt_star_car/Figure_5.png | Bin .../clothoid_path/clothoid_path_main.rst | 0 .../coverage_path/coverage_path_main.rst | 0 .../cubic_spline/cubic_spline_1d.png | Bin .../cubic_spline_2d_curvature.png | Bin .../cubic_spline/cubic_spline_2d_path.png | Bin .../cubic_spline/cubic_spline_2d_yaw.png | Bin .../cubic_spline/cubic_spline_main.rst | 0 .../cubic_spline/spline.png | Bin .../cubic_spline/spline_continuity.png | Bin .../dubins_path/RLR.jpg | Bin .../dubins_path/RSR.jpg | Bin .../dubins_path/dubins_path.jpg | Bin .../dubins_path/dubins_path_main.rst | 0 .../dynamic_window_approach_main.rst | 0 .../eta3_spline/eta3_spline_main.rst | 0 .../frenet_frame_path_main.rst | 0 .../grid_base_search_main.rst | 0 .../hybridastar/hybridastar_main.rst | 0 .../lqr_path/lqr_path_main.rst | 0 .../lookup_table.png | Bin ...l_predictive_trajectory_generator_main.rst | 0 .../path_planning_main.rst | 0 .../prm_planner/prm_planner_main.rst | 0 .../quintic_polynomials_planner_main.rst | 0 .../reeds_shepp_path/LR_L.png | Bin .../reeds_shepp_path/LR_LR.png | Bin .../reeds_shepp_path/LSL.png | Bin .../reeds_shepp_path/LSL90xR.png | Bin .../reeds_shepp_path/LSR.png | Bin .../reeds_shepp_path/LSR90_L.png | Bin .../reeds_shepp_path/L_R90SL.png | Bin .../reeds_shepp_path/L_R90SL90_R.png | Bin .../reeds_shepp_path/L_R90SR.png | Bin .../reeds_shepp_path/L_RL.png | Bin .../reeds_shepp_path/L_RL_R.png | Bin .../reeds_shepp_path/L_R_L.png | Bin .../reeds_shepp_path_main.rst | 0 .../rrt/figure_1.png | Bin .../rrt/rrt_main.rst | 0 .../rrt/rrt_star.rst | 0 .../rrt/rrt_star/rrt_star_1_0.png | Bin .../rrt/rrt_star_reeds_shepp/figure_1.png | Bin .../state_lattice_planner/Figure_1.png | Bin .../state_lattice_planner/Figure_2.png | Bin .../state_lattice_planner/Figure_3.png | Bin .../state_lattice_planner/Figure_4.png | Bin .../state_lattice_planner/Figure_5.png | Bin .../state_lattice_planner/Figure_6.png | Bin .../state_lattice_planner_main.rst | 0 .../visibility_road_map_planner/step0.png | Bin .../visibility_road_map_planner/step1.png | Bin .../visibility_road_map_planner/step2.png | Bin .../visibility_road_map_planner/step3.png | Bin .../visibility_road_map_planner_main.rst | 0 .../vrm_planner/vrm_planner_main.rst | 0 .../cgmres_nmpc/cgmres_nmpc_1_0.png | Bin .../cgmres_nmpc/cgmres_nmpc_2_0.png | Bin .../cgmres_nmpc/cgmres_nmpc_3_0.png | Bin .../cgmres_nmpc/cgmres_nmpc_4_0.png | Bin .../cgmres_nmpc/cgmres_nmpc_main.rst | 0 .../lqr_speed_and_steering_control_main.rst | 0 .../lqr_steering_control_model.jpg | Bin .../lqr_speed_and_steering_control/speed.png | Bin .../lqr_speed_and_steering_control/x-y.png | Bin .../lqr_speed_and_steering_control/yaw.png | Bin .../lqr_steering_control_main.rst | 0 .../lqr_steering_control_model.jpg | Bin ...ictive_speed_and_steering_control_main.rst | 0 .../path_tracking_main.rst | 0 .../pure_pursuit_tracking_main.rst | 0 .../rear_wheel_feedback_control_main.rst | 0 .../stanley_control/stanley_control_main.rst | 0 .../Planar_Two_Link_IK_12_0.png | Bin .../Planar_Two_Link_IK_5_0.png | Bin .../Planar_Two_Link_IK_7_0.png | Bin .../Planar_Two_Link_IK_9_0.png | Bin .../arm_navigation_main.rst | 0 .../n_joint_arm_to_point_control_main.rst | 0 ...obstacle_avoidance_arm_navigation_main.rst | 0 .../planar_two_link_ik_main.rst | 0 .../aerial_navigation_main.rst | 0 .../drone_3d_trajectory_following_main.rst | 0 .../rocket_powered_landing_main.rst | 0 .../{bipedal => 9_bipedal}/bipedal_main.rst | 0 .../bipedal_planner/bipedal_planner_main.rst | 0 docs/modules/introduction_main.rst | 42 ------------------ .../Graph_SLAM_optimization.gif | Bin 114966 -> 0 bytes 194 files changed, 41 insertions(+), 55 deletions(-) rename docs/modules/{control => 10_control}/control_main.rst (100%) rename docs/modules/{control => 10_control}/inverted_pendulum_control/inverted-pendulum.png (100%) rename docs/modules/{control => 10_control}/inverted_pendulum_control/inverted_pendulum_control_main.rst (100%) rename docs/modules/{control => 10_control}/move_to_a_pose_control/move_to_a_pose_control_main.rst (100%) rename docs/modules/{utils => 11_utils}/plot/curvature_plot.png (100%) rename docs/modules/{utils => 11_utils}/plot/plot_main.rst (100%) rename docs/modules/{utils => 11_utils}/utils_main.rst (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_2_main.rst (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png (100%) rename docs/modules/{appendix => 12_appendix}/Kalmanfilter_basics_main.rst (100%) rename docs/modules/{appendix => 12_appendix}/appendix_main.rst (100%) rename docs/modules/{appendix => 12_appendix}/steering_motion_model/steering_model.png (100%) rename docs/modules/{appendix => 12_appendix}/steering_motion_model/turning_radius_calc1.png (100%) rename docs/modules/{appendix => 12_appendix}/steering_motion_model/turning_radius_calc2.png (100%) rename docs/modules/{appendix => 12_appendix}/steering_motion_model_main.rst (100%) create mode 100644 docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst create mode 100644 docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst create mode 100644 docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst create mode 100644 docs/modules/1_introduction/introduction_main.rst rename docs/modules/{localization => 2_localization}/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png (100%) rename docs/modules/{localization => 2_localization}/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png (100%) rename docs/modules/{localization => 2_localization}/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/1.png (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/2.png (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/3.png (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/4.png (100%) rename docs/modules/{localization => 2_localization}/histogram_filter_localization/histogram_filter_localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/particle_filter_localization/particle_filter_localization_main.rst (100%) rename docs/modules/{localization => 2_localization}/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/circle_fitting/circle_fitting_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/gaussian_grid_map/gaussian_grid_map_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/k_means_object_clustering/k_means_object_clustering_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/grid_map_example.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png (100%) rename docs/modules/{mapping => 3_mapping}/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/mapping_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/grid_clustering.png (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/ndt_map1.png (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/ndt_map2.png (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/ndt_map_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/ndt_map/raw_observations.png (100%) rename docs/modules/{mapping => 3_mapping}/normal_vector_estimation/normal_vector_calc.png (100%) rename docs/modules/{mapping => 3_mapping}/normal_vector_estimation/normal_vector_estimation_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/normal_vector_estimation/ransac_normal_vector_estimation.png (100%) rename docs/modules/{mapping => 3_mapping}/point_cloud_sampling/farthest_point_sampling.png (100%) rename docs/modules/{mapping => 3_mapping}/point_cloud_sampling/point_cloud_sampling_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/point_cloud_sampling/poisson_disk_sampling.png (100%) rename docs/modules/{mapping => 3_mapping}/point_cloud_sampling/voxel_point_sampling.png (100%) rename docs/modules/{mapping => 3_mapping}/ray_casting_grid_map/ray_casting_grid_map_main.rst (100%) rename docs/modules/{mapping => 3_mapping}/rectangle_fitting/rectangle_fitting_main.rst (100%) rename docs/modules/{slam => 4_slam}/FastSLAM1/FastSLAM1_12_0.png (100%) rename docs/modules/{slam => 4_slam}/FastSLAM1/FastSLAM1_12_1.png (100%) rename docs/modules/{slam => 4_slam}/FastSLAM1/FastSLAM1_1_0.png (100%) rename docs/modules/{slam => 4_slam}/FastSLAM1/FastSLAM1_main.rst (100%) rename docs/modules/{slam => 4_slam}/FastSLAM2/FastSLAM2_main.rst (100%) rename docs/modules/{slam => 4_slam}/ekf_slam/ekf_slam_1_0.png (100%) rename docs/modules/{slam => 4_slam}/ekf_slam/ekf_slam_main.rst (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example.rst (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc.rst (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graphSLAM_formulation.rst (100%) rename docs/modules/{slam => 4_slam}/graph_slam/graph_slam_main.rst (100%) rename docs/modules/{slam => 4_slam}/iterative_closest_point_matching/iterative_closest_point_matching_main.rst (100%) rename docs/modules/{slam => 4_slam}/slam_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/bezier_path/Figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bezier_path/Figure_2.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bezier_path/bezier_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/approx_and_curvature.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/approximation1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/basis_functions.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/bspline_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/bspline_path_planning.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/interp_and_curvature.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bspline_path/interpolation1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/bugplanner/bugplanner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/catmull_rom_spline/blending_functions.png (100%) rename docs/modules/{path_planning => 5_path_planning}/catmull_rom_spline/catmull_rom_path_planning.png (100%) rename docs/modules/{path_planning => 5_path_planning}/catmull_rom_spline/catmull_rom_spline_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/closed_loop_rrt_star_car/Figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/closed_loop_rrt_star_car/Figure_3.png (100%) rename docs/modules/{path_planning => 5_path_planning}/closed_loop_rrt_star_car/Figure_4.png (100%) rename docs/modules/{path_planning => 5_path_planning}/closed_loop_rrt_star_car/Figure_5.png (100%) rename docs/modules/{path_planning => 5_path_planning}/clothoid_path/clothoid_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/coverage_path/coverage_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_1d.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_2d_curvature.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_2d_path.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_2d_yaw.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/cubic_spline_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/spline.png (100%) rename docs/modules/{path_planning => 5_path_planning}/cubic_spline/spline_continuity.png (100%) rename docs/modules/{path_planning => 5_path_planning}/dubins_path/RLR.jpg (100%) rename docs/modules/{path_planning => 5_path_planning}/dubins_path/RSR.jpg (100%) rename docs/modules/{path_planning => 5_path_planning}/dubins_path/dubins_path.jpg (100%) rename docs/modules/{path_planning => 5_path_planning}/dubins_path/dubins_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/dynamic_window_approach/dynamic_window_approach_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/eta3_spline/eta3_spline_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/frenet_frame_path/frenet_frame_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/grid_base_search/grid_base_search_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/hybridastar/hybridastar_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/lqr_path/lqr_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/model_predictive_trajectory_generator/lookup_table.png (100%) rename docs/modules/{path_planning => 5_path_planning}/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/path_planning_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/prm_planner/prm_planner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/quintic_polynomials_planner/quintic_polynomials_planner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LR_L.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LR_LR.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LSL.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LSL90xR.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LSR.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/LSR90_L.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_R90SL.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_R90SL90_R.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_R90SR.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_RL.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_RL_R.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/L_R_L.png (100%) rename docs/modules/{path_planning => 5_path_planning}/reeds_shepp_path/reeds_shepp_path_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/rrt_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/rrt_star.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/rrt_star/rrt_star_1_0.png (100%) rename docs/modules/{path_planning => 5_path_planning}/rrt/rrt_star_reeds_shepp/figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_2.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_3.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_4.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_5.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/Figure_6.png (100%) rename docs/modules/{path_planning => 5_path_planning}/state_lattice_planner/state_lattice_planner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/step0.png (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/step1.png (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/step2.png (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/step3.png (100%) rename docs/modules/{path_planning => 5_path_planning}/visibility_road_map_planner/visibility_road_map_planner_main.rst (100%) rename docs/modules/{path_planning => 5_path_planning}/vrm_planner/vrm_planner_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_1_0.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_2_0.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_3_0.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_4_0.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/cgmres_nmpc/cgmres_nmpc_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/lqr_steering_control_model.jpg (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/speed.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/x-y.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_speed_and_steering_control/yaw.png (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_steering_control/lqr_steering_control_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/lqr_steering_control/lqr_steering_control_model.jpg (100%) rename docs/modules/{path_tracking => 6_path_tracking}/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/path_tracking_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/pure_pursuit_tracking/pure_pursuit_tracking_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst (100%) rename docs/modules/{path_tracking => 6_path_tracking}/stanley_control/stanley_control_main.rst (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/arm_navigation_main.rst (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/n_joint_arm_to_point_control_main.rst (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/obstacle_avoidance_arm_navigation_main.rst (100%) rename docs/modules/{arm_navigation => 7_arm_navigation}/planar_two_link_ik_main.rst (100%) rename docs/modules/{aerial_navigation => 8_aerial_navigation}/aerial_navigation_main.rst (100%) rename docs/modules/{aerial_navigation => 8_aerial_navigation}/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst (100%) rename docs/modules/{aerial_navigation => 8_aerial_navigation}/rocket_powered_landing/rocket_powered_landing_main.rst (100%) rename docs/modules/{bipedal => 9_bipedal}/bipedal_main.rst (100%) rename docs/modules/{bipedal => 9_bipedal}/bipedal_planner/bipedal_planner_main.rst (100%) delete mode 100644 docs/modules/introduction_main.rst delete mode 100644 docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/Graph_SLAM_optimization.gif diff --git a/docs/conf.py b/docs/conf.py index 4e06f3f988..919fa9ac76 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -19,7 +19,7 @@ # -- Project information ----------------------------------------------------- project = 'PythonRobotics' -copyright = '2018-2023, Atsushi Sakai' +copyright = '2018-now, Atsushi Sakai' author = 'Atsushi Sakai' # The short X.Y version diff --git a/docs/index_main.rst b/docs/index_main.rst index 67bd9889f2..08c318ea83 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -34,18 +34,18 @@ See this paper for more details: :caption: Contents getting_started - modules/introduction - modules/localization/localization - modules/mapping/mapping - modules/slam/slam - modules/path_planning/path_planning - modules/path_tracking/path_tracking - modules/arm_navigation/arm_navigation - modules/aerial_navigation/aerial_navigation - modules/bipedal/bipedal - modules/control/control - modules/utils/utils - modules/appendix/appendix + modules/1_introduction/introduction + modules/2_localization/localization + modules/3_mapping/mapping + modules/4_slam/slam + modules/5_path_planning/path_planning + modules/6_path_tracking/path_tracking + modules/7_arm_navigation/arm_navigation + modules/8_aerial_navigation/aerial_navigation + modules/9_bipedal/bipedal + modules/10_control/control + modules/11_utils/utils + modules/12_appendix/appendix how_to_contribute diff --git a/docs/modules/control/control_main.rst b/docs/modules/10_control/control_main.rst similarity index 100% rename from docs/modules/control/control_main.rst rename to docs/modules/10_control/control_main.rst diff --git a/docs/modules/control/inverted_pendulum_control/inverted-pendulum.png b/docs/modules/10_control/inverted_pendulum_control/inverted-pendulum.png similarity index 100% rename from docs/modules/control/inverted_pendulum_control/inverted-pendulum.png rename to docs/modules/10_control/inverted_pendulum_control/inverted-pendulum.png diff --git a/docs/modules/control/inverted_pendulum_control/inverted_pendulum_control_main.rst b/docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst similarity index 100% rename from docs/modules/control/inverted_pendulum_control/inverted_pendulum_control_main.rst rename to docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst diff --git a/docs/modules/control/move_to_a_pose_control/move_to_a_pose_control_main.rst b/docs/modules/10_control/move_to_a_pose_control/move_to_a_pose_control_main.rst similarity index 100% rename from docs/modules/control/move_to_a_pose_control/move_to_a_pose_control_main.rst rename to docs/modules/10_control/move_to_a_pose_control/move_to_a_pose_control_main.rst diff --git a/docs/modules/utils/plot/curvature_plot.png b/docs/modules/11_utils/plot/curvature_plot.png similarity index 100% rename from docs/modules/utils/plot/curvature_plot.png rename to docs/modules/11_utils/plot/curvature_plot.png diff --git a/docs/modules/utils/plot/plot_main.rst b/docs/modules/11_utils/plot/plot_main.rst similarity index 100% rename from docs/modules/utils/plot/plot_main.rst rename to docs/modules/11_utils/plot/plot_main.rst diff --git a/docs/modules/utils/utils_main.rst b/docs/modules/11_utils/utils_main.rst similarity index 100% rename from docs/modules/utils/utils_main.rst rename to docs/modules/11_utils/utils_main.rst diff --git a/docs/modules/appendix/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png b/docs/modules/12_appendix/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png rename to docs/modules/12_appendix/Kalmanfilter_basics_2_files/Kalmanfilter_basics_2_5_0.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_2_main.rst b/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_2_main.rst rename to docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_14_1.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_16_0.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_19_1.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_21_1.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_22_0.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png b/docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png rename to docs/modules/12_appendix/Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png diff --git a/docs/modules/appendix/Kalmanfilter_basics_main.rst b/docs/modules/12_appendix/Kalmanfilter_basics_main.rst similarity index 100% rename from docs/modules/appendix/Kalmanfilter_basics_main.rst rename to docs/modules/12_appendix/Kalmanfilter_basics_main.rst diff --git a/docs/modules/appendix/appendix_main.rst b/docs/modules/12_appendix/appendix_main.rst similarity index 100% rename from docs/modules/appendix/appendix_main.rst rename to docs/modules/12_appendix/appendix_main.rst diff --git a/docs/modules/appendix/steering_motion_model/steering_model.png b/docs/modules/12_appendix/steering_motion_model/steering_model.png similarity index 100% rename from docs/modules/appendix/steering_motion_model/steering_model.png rename to docs/modules/12_appendix/steering_motion_model/steering_model.png diff --git a/docs/modules/appendix/steering_motion_model/turning_radius_calc1.png b/docs/modules/12_appendix/steering_motion_model/turning_radius_calc1.png similarity index 100% rename from docs/modules/appendix/steering_motion_model/turning_radius_calc1.png rename to docs/modules/12_appendix/steering_motion_model/turning_radius_calc1.png diff --git a/docs/modules/appendix/steering_motion_model/turning_radius_calc2.png b/docs/modules/12_appendix/steering_motion_model/turning_radius_calc2.png similarity index 100% rename from docs/modules/appendix/steering_motion_model/turning_radius_calc2.png rename to docs/modules/12_appendix/steering_motion_model/turning_radius_calc2.png diff --git a/docs/modules/appendix/steering_motion_model_main.rst b/docs/modules/12_appendix/steering_motion_model_main.rst similarity index 100% rename from docs/modules/appendix/steering_motion_model_main.rst rename to docs/modules/12_appendix/steering_motion_model_main.rst diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst new file mode 100644 index 0000000000..bdc7dc53e9 --- /dev/null +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -0,0 +1,4 @@ +Definition of Robotics +---------------------- + +TBD diff --git a/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst b/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst new file mode 100644 index 0000000000..835441f85d --- /dev/null +++ b/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst @@ -0,0 +1,7 @@ +Software for Robotics +---------------------- + +Python for Robotics +~~~~~~~~~~~~~~~~~~~~~ + +TBD diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst new file mode 100644 index 0000000000..4c60ab8851 --- /dev/null +++ b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst @@ -0,0 +1,4 @@ +Technology for Robotics +------------------------- + +TBD diff --git a/docs/modules/1_introduction/introduction_main.rst b/docs/modules/1_introduction/introduction_main.rst new file mode 100644 index 0000000000..4561efd349 --- /dev/null +++ b/docs/modules/1_introduction/introduction_main.rst @@ -0,0 +1,13 @@ +.. _introduction: + +Introduction +============ + +.. toctree:: + :maxdepth: 2 + :caption: Table of Contents + + 1_definition_of_robotics/definition_of_robotics + 2_software_for_robotics/software_for_robotics + 3_technology_for_robotics/technology_for_robotics + diff --git a/docs/modules/localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst b/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst rename to docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst diff --git a/docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png b/docs/modules/2_localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png similarity index 100% rename from docs/modules/localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png rename to docs/modules/2_localization/extended_kalman_filter_localization_files/ekf_with_velocity_correction_1_0.png diff --git a/docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png b/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png similarity index 100% rename from docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png rename to docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png diff --git a/docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst b/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst rename to docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst diff --git a/docs/modules/localization/histogram_filter_localization/1.png b/docs/modules/2_localization/histogram_filter_localization/1.png similarity index 100% rename from docs/modules/localization/histogram_filter_localization/1.png rename to docs/modules/2_localization/histogram_filter_localization/1.png diff --git a/docs/modules/localization/histogram_filter_localization/2.png b/docs/modules/2_localization/histogram_filter_localization/2.png similarity index 100% rename from docs/modules/localization/histogram_filter_localization/2.png rename to docs/modules/2_localization/histogram_filter_localization/2.png diff --git a/docs/modules/localization/histogram_filter_localization/3.png b/docs/modules/2_localization/histogram_filter_localization/3.png similarity index 100% rename from docs/modules/localization/histogram_filter_localization/3.png rename to docs/modules/2_localization/histogram_filter_localization/3.png diff --git a/docs/modules/localization/histogram_filter_localization/4.png b/docs/modules/2_localization/histogram_filter_localization/4.png similarity index 100% rename from docs/modules/localization/histogram_filter_localization/4.png rename to docs/modules/2_localization/histogram_filter_localization/4.png diff --git a/docs/modules/localization/histogram_filter_localization/histogram_filter_localization_main.rst b/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/histogram_filter_localization/histogram_filter_localization_main.rst rename to docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst diff --git a/docs/modules/localization/localization_main.rst b/docs/modules/2_localization/localization_main.rst similarity index 100% rename from docs/modules/localization/localization_main.rst rename to docs/modules/2_localization/localization_main.rst diff --git a/docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst b/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/particle_filter_localization/particle_filter_localization_main.rst rename to docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst diff --git a/docs/modules/localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst b/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst similarity index 100% rename from docs/modules/localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst rename to docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst diff --git a/docs/modules/mapping/circle_fitting/circle_fitting_main.rst b/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst similarity index 100% rename from docs/modules/mapping/circle_fitting/circle_fitting_main.rst rename to docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst diff --git a/docs/modules/mapping/gaussian_grid_map/gaussian_grid_map_main.rst b/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst similarity index 100% rename from docs/modules/mapping/gaussian_grid_map/gaussian_grid_map_main.rst rename to docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst diff --git a/docs/modules/mapping/k_means_object_clustering/k_means_object_clustering_main.rst b/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst similarity index 100% rename from docs/modules/mapping/k_means_object_clustering/k_means_object_clustering_main.rst rename to docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/grid_map_example.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/grid_map_example.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/grid_map_example.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/grid_map_example.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_12_0.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_14_1.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_5_0.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_7_0.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_8_0.png diff --git a/docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst similarity index 100% rename from docs/modules/mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst rename to docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst diff --git a/docs/modules/mapping/mapping_main.rst b/docs/modules/3_mapping/mapping_main.rst similarity index 100% rename from docs/modules/mapping/mapping_main.rst rename to docs/modules/3_mapping/mapping_main.rst diff --git a/docs/modules/mapping/ndt_map/grid_clustering.png b/docs/modules/3_mapping/ndt_map/grid_clustering.png similarity index 100% rename from docs/modules/mapping/ndt_map/grid_clustering.png rename to docs/modules/3_mapping/ndt_map/grid_clustering.png diff --git a/docs/modules/mapping/ndt_map/ndt_map1.png b/docs/modules/3_mapping/ndt_map/ndt_map1.png similarity index 100% rename from docs/modules/mapping/ndt_map/ndt_map1.png rename to docs/modules/3_mapping/ndt_map/ndt_map1.png diff --git a/docs/modules/mapping/ndt_map/ndt_map2.png b/docs/modules/3_mapping/ndt_map/ndt_map2.png similarity index 100% rename from docs/modules/mapping/ndt_map/ndt_map2.png rename to docs/modules/3_mapping/ndt_map/ndt_map2.png diff --git a/docs/modules/mapping/ndt_map/ndt_map_main.rst b/docs/modules/3_mapping/ndt_map/ndt_map_main.rst similarity index 100% rename from docs/modules/mapping/ndt_map/ndt_map_main.rst rename to docs/modules/3_mapping/ndt_map/ndt_map_main.rst diff --git a/docs/modules/mapping/ndt_map/raw_observations.png b/docs/modules/3_mapping/ndt_map/raw_observations.png similarity index 100% rename from docs/modules/mapping/ndt_map/raw_observations.png rename to docs/modules/3_mapping/ndt_map/raw_observations.png diff --git a/docs/modules/mapping/normal_vector_estimation/normal_vector_calc.png b/docs/modules/3_mapping/normal_vector_estimation/normal_vector_calc.png similarity index 100% rename from docs/modules/mapping/normal_vector_estimation/normal_vector_calc.png rename to docs/modules/3_mapping/normal_vector_estimation/normal_vector_calc.png diff --git a/docs/modules/mapping/normal_vector_estimation/normal_vector_estimation_main.rst b/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst similarity index 100% rename from docs/modules/mapping/normal_vector_estimation/normal_vector_estimation_main.rst rename to docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst diff --git a/docs/modules/mapping/normal_vector_estimation/ransac_normal_vector_estimation.png b/docs/modules/3_mapping/normal_vector_estimation/ransac_normal_vector_estimation.png similarity index 100% rename from docs/modules/mapping/normal_vector_estimation/ransac_normal_vector_estimation.png rename to docs/modules/3_mapping/normal_vector_estimation/ransac_normal_vector_estimation.png diff --git a/docs/modules/mapping/point_cloud_sampling/farthest_point_sampling.png b/docs/modules/3_mapping/point_cloud_sampling/farthest_point_sampling.png similarity index 100% rename from docs/modules/mapping/point_cloud_sampling/farthest_point_sampling.png rename to docs/modules/3_mapping/point_cloud_sampling/farthest_point_sampling.png diff --git a/docs/modules/mapping/point_cloud_sampling/point_cloud_sampling_main.rst b/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst similarity index 100% rename from docs/modules/mapping/point_cloud_sampling/point_cloud_sampling_main.rst rename to docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst diff --git a/docs/modules/mapping/point_cloud_sampling/poisson_disk_sampling.png b/docs/modules/3_mapping/point_cloud_sampling/poisson_disk_sampling.png similarity index 100% rename from docs/modules/mapping/point_cloud_sampling/poisson_disk_sampling.png rename to docs/modules/3_mapping/point_cloud_sampling/poisson_disk_sampling.png diff --git a/docs/modules/mapping/point_cloud_sampling/voxel_point_sampling.png b/docs/modules/3_mapping/point_cloud_sampling/voxel_point_sampling.png similarity index 100% rename from docs/modules/mapping/point_cloud_sampling/voxel_point_sampling.png rename to docs/modules/3_mapping/point_cloud_sampling/voxel_point_sampling.png diff --git a/docs/modules/mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst b/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst similarity index 100% rename from docs/modules/mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst rename to docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst diff --git a/docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst b/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst similarity index 100% rename from docs/modules/mapping/rectangle_fitting/rectangle_fitting_main.rst rename to docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst diff --git a/docs/modules/slam/FastSLAM1/FastSLAM1_12_0.png b/docs/modules/4_slam/FastSLAM1/FastSLAM1_12_0.png similarity index 100% rename from docs/modules/slam/FastSLAM1/FastSLAM1_12_0.png rename to docs/modules/4_slam/FastSLAM1/FastSLAM1_12_0.png diff --git a/docs/modules/slam/FastSLAM1/FastSLAM1_12_1.png b/docs/modules/4_slam/FastSLAM1/FastSLAM1_12_1.png similarity index 100% rename from docs/modules/slam/FastSLAM1/FastSLAM1_12_1.png rename to docs/modules/4_slam/FastSLAM1/FastSLAM1_12_1.png diff --git a/docs/modules/slam/FastSLAM1/FastSLAM1_1_0.png b/docs/modules/4_slam/FastSLAM1/FastSLAM1_1_0.png similarity index 100% rename from docs/modules/slam/FastSLAM1/FastSLAM1_1_0.png rename to docs/modules/4_slam/FastSLAM1/FastSLAM1_1_0.png diff --git a/docs/modules/slam/FastSLAM1/FastSLAM1_main.rst b/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst similarity index 100% rename from docs/modules/slam/FastSLAM1/FastSLAM1_main.rst rename to docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst diff --git a/docs/modules/slam/FastSLAM2/FastSLAM2_main.rst b/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst similarity index 100% rename from docs/modules/slam/FastSLAM2/FastSLAM2_main.rst rename to docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst diff --git a/docs/modules/slam/ekf_slam/ekf_slam_1_0.png b/docs/modules/4_slam/ekf_slam/ekf_slam_1_0.png similarity index 100% rename from docs/modules/slam/ekf_slam/ekf_slam_1_0.png rename to docs/modules/4_slam/ekf_slam/ekf_slam_1_0.png diff --git a/docs/modules/slam/ekf_slam/ekf_slam_main.rst b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst similarity index 100% rename from docs/modules/slam/ekf_slam/ekf_slam_main.rst rename to docs/modules/4_slam/ekf_slam/ekf_slam_main.rst diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example.rst b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example.rst rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_13_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_15_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_16_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_4_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_8_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_SE2_example_files/graphSLAM_SE2_example_9_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc.rst b/docs/modules/4_slam/graph_slam/graphSLAM_doc.rst similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc.rst rename to docs/modules/4_slam/graph_slam/graphSLAM_doc.rst diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_1.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_11_2.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_2_2.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_4_0.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png b/docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png rename to docs/modules/4_slam/graph_slam/graphSLAM_doc_files/graphSLAM_doc_9_1.png diff --git a/docs/modules/slam/graph_slam/graphSLAM_formulation.rst b/docs/modules/4_slam/graph_slam/graphSLAM_formulation.rst similarity index 100% rename from docs/modules/slam/graph_slam/graphSLAM_formulation.rst rename to docs/modules/4_slam/graph_slam/graphSLAM_formulation.rst diff --git a/docs/modules/slam/graph_slam/graph_slam_main.rst b/docs/modules/4_slam/graph_slam/graph_slam_main.rst similarity index 100% rename from docs/modules/slam/graph_slam/graph_slam_main.rst rename to docs/modules/4_slam/graph_slam/graph_slam_main.rst diff --git a/docs/modules/slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst b/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst similarity index 100% rename from docs/modules/slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst rename to docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst diff --git a/docs/modules/slam/slam_main.rst b/docs/modules/4_slam/slam_main.rst similarity index 100% rename from docs/modules/slam/slam_main.rst rename to docs/modules/4_slam/slam_main.rst diff --git a/docs/modules/path_planning/bezier_path/Figure_1.png b/docs/modules/5_path_planning/bezier_path/Figure_1.png similarity index 100% rename from docs/modules/path_planning/bezier_path/Figure_1.png rename to docs/modules/5_path_planning/bezier_path/Figure_1.png diff --git a/docs/modules/path_planning/bezier_path/Figure_2.png b/docs/modules/5_path_planning/bezier_path/Figure_2.png similarity index 100% rename from docs/modules/path_planning/bezier_path/Figure_2.png rename to docs/modules/5_path_planning/bezier_path/Figure_2.png diff --git a/docs/modules/path_planning/bezier_path/bezier_path_main.rst b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst similarity index 100% rename from docs/modules/path_planning/bezier_path/bezier_path_main.rst rename to docs/modules/5_path_planning/bezier_path/bezier_path_main.rst diff --git a/docs/modules/path_planning/bspline_path/approx_and_curvature.png b/docs/modules/5_path_planning/bspline_path/approx_and_curvature.png similarity index 100% rename from docs/modules/path_planning/bspline_path/approx_and_curvature.png rename to docs/modules/5_path_planning/bspline_path/approx_and_curvature.png diff --git a/docs/modules/path_planning/bspline_path/approximation1.png b/docs/modules/5_path_planning/bspline_path/approximation1.png similarity index 100% rename from docs/modules/path_planning/bspline_path/approximation1.png rename to docs/modules/5_path_planning/bspline_path/approximation1.png diff --git a/docs/modules/path_planning/bspline_path/basis_functions.png b/docs/modules/5_path_planning/bspline_path/basis_functions.png similarity index 100% rename from docs/modules/path_planning/bspline_path/basis_functions.png rename to docs/modules/5_path_planning/bspline_path/basis_functions.png diff --git a/docs/modules/path_planning/bspline_path/bspline_path_main.rst b/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst similarity index 100% rename from docs/modules/path_planning/bspline_path/bspline_path_main.rst rename to docs/modules/5_path_planning/bspline_path/bspline_path_main.rst diff --git a/docs/modules/path_planning/bspline_path/bspline_path_planning.png b/docs/modules/5_path_planning/bspline_path/bspline_path_planning.png similarity index 100% rename from docs/modules/path_planning/bspline_path/bspline_path_planning.png rename to docs/modules/5_path_planning/bspline_path/bspline_path_planning.png diff --git a/docs/modules/path_planning/bspline_path/interp_and_curvature.png b/docs/modules/5_path_planning/bspline_path/interp_and_curvature.png similarity index 100% rename from docs/modules/path_planning/bspline_path/interp_and_curvature.png rename to docs/modules/5_path_planning/bspline_path/interp_and_curvature.png diff --git a/docs/modules/path_planning/bspline_path/interpolation1.png b/docs/modules/5_path_planning/bspline_path/interpolation1.png similarity index 100% rename from docs/modules/path_planning/bspline_path/interpolation1.png rename to docs/modules/5_path_planning/bspline_path/interpolation1.png diff --git a/docs/modules/path_planning/bugplanner/bugplanner_main.rst b/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst similarity index 100% rename from docs/modules/path_planning/bugplanner/bugplanner_main.rst rename to docs/modules/5_path_planning/bugplanner/bugplanner_main.rst diff --git a/docs/modules/path_planning/catmull_rom_spline/blending_functions.png b/docs/modules/5_path_planning/catmull_rom_spline/blending_functions.png similarity index 100% rename from docs/modules/path_planning/catmull_rom_spline/blending_functions.png rename to docs/modules/5_path_planning/catmull_rom_spline/blending_functions.png diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png b/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_path_planning.png similarity index 100% rename from docs/modules/path_planning/catmull_rom_spline/catmull_rom_path_planning.png rename to docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_path_planning.png diff --git a/docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst b/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst similarity index 100% rename from docs/modules/path_planning/catmull_rom_spline/catmull_rom_spline_main.rst rename to docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst diff --git a/docs/modules/path_planning/closed_loop_rrt_star_car/Figure_1.png b/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_1.png similarity index 100% rename from docs/modules/path_planning/closed_loop_rrt_star_car/Figure_1.png rename to docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_1.png diff --git a/docs/modules/path_planning/closed_loop_rrt_star_car/Figure_3.png b/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_3.png similarity index 100% rename from docs/modules/path_planning/closed_loop_rrt_star_car/Figure_3.png rename to docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_3.png diff --git a/docs/modules/path_planning/closed_loop_rrt_star_car/Figure_4.png b/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_4.png similarity index 100% rename from docs/modules/path_planning/closed_loop_rrt_star_car/Figure_4.png rename to docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_4.png diff --git a/docs/modules/path_planning/closed_loop_rrt_star_car/Figure_5.png b/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_5.png similarity index 100% rename from docs/modules/path_planning/closed_loop_rrt_star_car/Figure_5.png rename to docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_5.png diff --git a/docs/modules/path_planning/clothoid_path/clothoid_path_main.rst b/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst similarity index 100% rename from docs/modules/path_planning/clothoid_path/clothoid_path_main.rst rename to docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst diff --git a/docs/modules/path_planning/coverage_path/coverage_path_main.rst b/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst similarity index 100% rename from docs/modules/path_planning/coverage_path/coverage_path_main.rst rename to docs/modules/5_path_planning/coverage_path/coverage_path_main.rst diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_1d.png b/docs/modules/5_path_planning/cubic_spline/cubic_spline_1d.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_1d.png rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_1d.png diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_2d_curvature.png b/docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_curvature.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_2d_curvature.png rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_curvature.png diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_2d_path.png b/docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_path.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_2d_path.png rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_path.png diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_2d_yaw.png b/docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_yaw.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_2d_yaw.png rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_2d_yaw.png diff --git a/docs/modules/path_planning/cubic_spline/cubic_spline_main.rst b/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst similarity index 100% rename from docs/modules/path_planning/cubic_spline/cubic_spline_main.rst rename to docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst diff --git a/docs/modules/path_planning/cubic_spline/spline.png b/docs/modules/5_path_planning/cubic_spline/spline.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/spline.png rename to docs/modules/5_path_planning/cubic_spline/spline.png diff --git a/docs/modules/path_planning/cubic_spline/spline_continuity.png b/docs/modules/5_path_planning/cubic_spline/spline_continuity.png similarity index 100% rename from docs/modules/path_planning/cubic_spline/spline_continuity.png rename to docs/modules/5_path_planning/cubic_spline/spline_continuity.png diff --git a/docs/modules/path_planning/dubins_path/RLR.jpg b/docs/modules/5_path_planning/dubins_path/RLR.jpg similarity index 100% rename from docs/modules/path_planning/dubins_path/RLR.jpg rename to docs/modules/5_path_planning/dubins_path/RLR.jpg diff --git a/docs/modules/path_planning/dubins_path/RSR.jpg b/docs/modules/5_path_planning/dubins_path/RSR.jpg similarity index 100% rename from docs/modules/path_planning/dubins_path/RSR.jpg rename to docs/modules/5_path_planning/dubins_path/RSR.jpg diff --git a/docs/modules/path_planning/dubins_path/dubins_path.jpg b/docs/modules/5_path_planning/dubins_path/dubins_path.jpg similarity index 100% rename from docs/modules/path_planning/dubins_path/dubins_path.jpg rename to docs/modules/5_path_planning/dubins_path/dubins_path.jpg diff --git a/docs/modules/path_planning/dubins_path/dubins_path_main.rst b/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst similarity index 100% rename from docs/modules/path_planning/dubins_path/dubins_path_main.rst rename to docs/modules/5_path_planning/dubins_path/dubins_path_main.rst diff --git a/docs/modules/path_planning/dynamic_window_approach/dynamic_window_approach_main.rst b/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst similarity index 100% rename from docs/modules/path_planning/dynamic_window_approach/dynamic_window_approach_main.rst rename to docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst diff --git a/docs/modules/path_planning/eta3_spline/eta3_spline_main.rst b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst similarity index 100% rename from docs/modules/path_planning/eta3_spline/eta3_spline_main.rst rename to docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst diff --git a/docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst similarity index 100% rename from docs/modules/path_planning/frenet_frame_path/frenet_frame_path_main.rst rename to docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst diff --git a/docs/modules/path_planning/grid_base_search/grid_base_search_main.rst b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst similarity index 100% rename from docs/modules/path_planning/grid_base_search/grid_base_search_main.rst rename to docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst diff --git a/docs/modules/path_planning/hybridastar/hybridastar_main.rst b/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst similarity index 100% rename from docs/modules/path_planning/hybridastar/hybridastar_main.rst rename to docs/modules/5_path_planning/hybridastar/hybridastar_main.rst diff --git a/docs/modules/path_planning/lqr_path/lqr_path_main.rst b/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst similarity index 100% rename from docs/modules/path_planning/lqr_path/lqr_path_main.rst rename to docs/modules/5_path_planning/lqr_path/lqr_path_main.rst diff --git a/docs/modules/path_planning/model_predictive_trajectory_generator/lookup_table.png b/docs/modules/5_path_planning/model_predictive_trajectory_generator/lookup_table.png similarity index 100% rename from docs/modules/path_planning/model_predictive_trajectory_generator/lookup_table.png rename to docs/modules/5_path_planning/model_predictive_trajectory_generator/lookup_table.png diff --git a/docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst similarity index 100% rename from docs/modules/path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst rename to docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst diff --git a/docs/modules/path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst similarity index 100% rename from docs/modules/path_planning/path_planning_main.rst rename to docs/modules/5_path_planning/path_planning_main.rst diff --git a/docs/modules/path_planning/prm_planner/prm_planner_main.rst b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst similarity index 100% rename from docs/modules/path_planning/prm_planner/prm_planner_main.rst rename to docs/modules/5_path_planning/prm_planner/prm_planner_main.rst diff --git a/docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst similarity index 100% rename from docs/modules/path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst rename to docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst diff --git a/docs/modules/path_planning/reeds_shepp_path/LR_L.png b/docs/modules/5_path_planning/reeds_shepp_path/LR_L.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LR_L.png rename to docs/modules/5_path_planning/reeds_shepp_path/LR_L.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LR_LR.png b/docs/modules/5_path_planning/reeds_shepp_path/LR_LR.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LR_LR.png rename to docs/modules/5_path_planning/reeds_shepp_path/LR_LR.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LSL.png b/docs/modules/5_path_planning/reeds_shepp_path/LSL.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LSL.png rename to docs/modules/5_path_planning/reeds_shepp_path/LSL.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LSL90xR.png b/docs/modules/5_path_planning/reeds_shepp_path/LSL90xR.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LSL90xR.png rename to docs/modules/5_path_planning/reeds_shepp_path/LSL90xR.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LSR.png b/docs/modules/5_path_planning/reeds_shepp_path/LSR.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LSR.png rename to docs/modules/5_path_planning/reeds_shepp_path/LSR.png diff --git a/docs/modules/path_planning/reeds_shepp_path/LSR90_L.png b/docs/modules/5_path_planning/reeds_shepp_path/LSR90_L.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/LSR90_L.png rename to docs/modules/5_path_planning/reeds_shepp_path/LSR90_L.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R90SL.png b/docs/modules/5_path_planning/reeds_shepp_path/L_R90SL.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_R90SL.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_R90SL.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png b/docs/modules/5_path_planning/reeds_shepp_path/L_R90SL90_R.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_R90SL90_R.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_R90SL90_R.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R90SR.png b/docs/modules/5_path_planning/reeds_shepp_path/L_R90SR.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_R90SR.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_R90SR.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_RL.png b/docs/modules/5_path_planning/reeds_shepp_path/L_RL.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_RL.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_RL.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_RL_R.png b/docs/modules/5_path_planning/reeds_shepp_path/L_RL_R.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_RL_R.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_RL_R.png diff --git a/docs/modules/path_planning/reeds_shepp_path/L_R_L.png b/docs/modules/5_path_planning/reeds_shepp_path/L_R_L.png similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/L_R_L.png rename to docs/modules/5_path_planning/reeds_shepp_path/L_R_L.png diff --git a/docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst similarity index 100% rename from docs/modules/path_planning/reeds_shepp_path/reeds_shepp_path_main.rst rename to docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst diff --git a/docs/modules/path_planning/rrt/figure_1.png b/docs/modules/5_path_planning/rrt/figure_1.png similarity index 100% rename from docs/modules/path_planning/rrt/figure_1.png rename to docs/modules/5_path_planning/rrt/figure_1.png diff --git a/docs/modules/path_planning/rrt/rrt_main.rst b/docs/modules/5_path_planning/rrt/rrt_main.rst similarity index 100% rename from docs/modules/path_planning/rrt/rrt_main.rst rename to docs/modules/5_path_planning/rrt/rrt_main.rst diff --git a/docs/modules/path_planning/rrt/rrt_star.rst b/docs/modules/5_path_planning/rrt/rrt_star.rst similarity index 100% rename from docs/modules/path_planning/rrt/rrt_star.rst rename to docs/modules/5_path_planning/rrt/rrt_star.rst diff --git a/docs/modules/path_planning/rrt/rrt_star/rrt_star_1_0.png b/docs/modules/5_path_planning/rrt/rrt_star/rrt_star_1_0.png similarity index 100% rename from docs/modules/path_planning/rrt/rrt_star/rrt_star_1_0.png rename to docs/modules/5_path_planning/rrt/rrt_star/rrt_star_1_0.png diff --git a/docs/modules/path_planning/rrt/rrt_star_reeds_shepp/figure_1.png b/docs/modules/5_path_planning/rrt/rrt_star_reeds_shepp/figure_1.png similarity index 100% rename from docs/modules/path_planning/rrt/rrt_star_reeds_shepp/figure_1.png rename to docs/modules/5_path_planning/rrt/rrt_star_reeds_shepp/figure_1.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_1.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_1.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_1.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_1.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_2.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_2.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_2.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_2.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_3.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_3.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_3.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_3.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_4.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_4.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_4.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_4.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_5.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_5.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_5.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_5.png diff --git a/docs/modules/path_planning/state_lattice_planner/Figure_6.png b/docs/modules/5_path_planning/state_lattice_planner/Figure_6.png similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/Figure_6.png rename to docs/modules/5_path_planning/state_lattice_planner/Figure_6.png diff --git a/docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst similarity index 100% rename from docs/modules/path_planning/state_lattice_planner/state_lattice_planner_main.rst rename to docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst diff --git a/docs/modules/path_planning/visibility_road_map_planner/step0.png b/docs/modules/5_path_planning/visibility_road_map_planner/step0.png similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/step0.png rename to docs/modules/5_path_planning/visibility_road_map_planner/step0.png diff --git a/docs/modules/path_planning/visibility_road_map_planner/step1.png b/docs/modules/5_path_planning/visibility_road_map_planner/step1.png similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/step1.png rename to docs/modules/5_path_planning/visibility_road_map_planner/step1.png diff --git a/docs/modules/path_planning/visibility_road_map_planner/step2.png b/docs/modules/5_path_planning/visibility_road_map_planner/step2.png similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/step2.png rename to docs/modules/5_path_planning/visibility_road_map_planner/step2.png diff --git a/docs/modules/path_planning/visibility_road_map_planner/step3.png b/docs/modules/5_path_planning/visibility_road_map_planner/step3.png similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/step3.png rename to docs/modules/5_path_planning/visibility_road_map_planner/step3.png diff --git a/docs/modules/path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst b/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst similarity index 100% rename from docs/modules/path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst rename to docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst diff --git a/docs/modules/path_planning/vrm_planner/vrm_planner_main.rst b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst similarity index 100% rename from docs/modules/path_planning/vrm_planner/vrm_planner_main.rst rename to docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_1_0.png b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_1_0.png similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_1_0.png rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_1_0.png diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_2_0.png b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_2_0.png similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_2_0.png rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_2_0.png diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_3_0.png b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_3_0.png similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_3_0.png rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_3_0.png diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_4_0.png b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_4_0.png similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_4_0.png rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_4_0.png diff --git a/docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst similarity index 100% rename from docs/modules/path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst rename to docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_steering_control_model.jpg diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/speed.png similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/speed.png rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/speed.png diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/x-y.png b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/x-y.png similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/x-y.png rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/x-y.png diff --git a/docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/yaw.png similarity index 100% rename from docs/modules/path_tracking/lqr_speed_and_steering_control/yaw.png rename to docs/modules/6_path_tracking/lqr_speed_and_steering_control/yaw.png diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst similarity index 100% rename from docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_main.rst rename to docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst diff --git a/docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_model.jpg similarity index 100% rename from docs/modules/path_tracking/lqr_steering_control/lqr_steering_control_model.jpg rename to docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_model.jpg diff --git a/docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst similarity index 100% rename from docs/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst rename to docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst diff --git a/docs/modules/path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst similarity index 100% rename from docs/modules/path_tracking/path_tracking_main.rst rename to docs/modules/6_path_tracking/path_tracking_main.rst diff --git a/docs/modules/path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst similarity index 100% rename from docs/modules/path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst rename to docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst diff --git a/docs/modules/path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst similarity index 100% rename from docs/modules/path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst rename to docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst diff --git a/docs/modules/path_tracking/stanley_control/stanley_control_main.rst b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst similarity index 100% rename from docs/modules/path_tracking/stanley_control/stanley_control_main.rst rename to docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst diff --git a/docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png b/docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png similarity index 100% rename from docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png rename to docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_12_0.png diff --git a/docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png b/docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png similarity index 100% rename from docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png rename to docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_5_0.png diff --git a/docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png b/docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png similarity index 100% rename from docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png rename to docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_7_0.png diff --git a/docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png b/docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png similarity index 100% rename from docs/modules/arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png rename to docs/modules/7_arm_navigation/Planar_Two_Link_IK_files/Planar_Two_Link_IK_9_0.png diff --git a/docs/modules/arm_navigation/arm_navigation_main.rst b/docs/modules/7_arm_navigation/arm_navigation_main.rst similarity index 100% rename from docs/modules/arm_navigation/arm_navigation_main.rst rename to docs/modules/7_arm_navigation/arm_navigation_main.rst diff --git a/docs/modules/arm_navigation/n_joint_arm_to_point_control_main.rst b/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst similarity index 100% rename from docs/modules/arm_navigation/n_joint_arm_to_point_control_main.rst rename to docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst diff --git a/docs/modules/arm_navigation/obstacle_avoidance_arm_navigation_main.rst b/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst similarity index 100% rename from docs/modules/arm_navigation/obstacle_avoidance_arm_navigation_main.rst rename to docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst diff --git a/docs/modules/arm_navigation/planar_two_link_ik_main.rst b/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst similarity index 100% rename from docs/modules/arm_navigation/planar_two_link_ik_main.rst rename to docs/modules/7_arm_navigation/planar_two_link_ik_main.rst diff --git a/docs/modules/aerial_navigation/aerial_navigation_main.rst b/docs/modules/8_aerial_navigation/aerial_navigation_main.rst similarity index 100% rename from docs/modules/aerial_navigation/aerial_navigation_main.rst rename to docs/modules/8_aerial_navigation/aerial_navigation_main.rst diff --git a/docs/modules/aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst b/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst similarity index 100% rename from docs/modules/aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst rename to docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst diff --git a/docs/modules/aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst b/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst similarity index 100% rename from docs/modules/aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst rename to docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst diff --git a/docs/modules/bipedal/bipedal_main.rst b/docs/modules/9_bipedal/bipedal_main.rst similarity index 100% rename from docs/modules/bipedal/bipedal_main.rst rename to docs/modules/9_bipedal/bipedal_main.rst diff --git a/docs/modules/bipedal/bipedal_planner/bipedal_planner_main.rst b/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst similarity index 100% rename from docs/modules/bipedal/bipedal_planner/bipedal_planner_main.rst rename to docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst diff --git a/docs/modules/introduction_main.rst b/docs/modules/introduction_main.rst deleted file mode 100644 index f9fb487297..0000000000 --- a/docs/modules/introduction_main.rst +++ /dev/null @@ -1,42 +0,0 @@ - -Introduction -============ - -TBD - -Definition Of Robotics ----------------------- - -TBD - -History Of Robotics ----------------------- - -TBD - -Application Of Robotics ------------------------- - -TBD - -Software for Robotics ----------------------- - -TBD - -Software for Robotics ----------------------- - -TBD - -Python for Robotics ----------------------- - -TBD - -Learning Robotics Algorithms ----------------------------- - -TBD - - diff --git a/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/Graph_SLAM_optimization.gif b/docs/modules/slam/graph_slam/graphSLAM_SE2_example_files/Graph_SLAM_optimization.gif deleted file mode 100644 index 2fabeaafc9cd4ad4b71bbf451637bf2560f1be5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 114966 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
9c|O;e7FnVD_n2A9rMrVj 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≻MieUHv{SR=GG|% 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¨k!z_aNFW=6G#yxJ? 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%0AI;4Y4{-Ta%I zB;|+2w}p04{4z9FJI2rGT#4&K{bhhJ<>AB(2(Ugb1B*p|cL&+)?sY}S4U;alcAu^u n1bp8i9={4d81rZV00i)b-%LrT_UQcoLPCF_P*NiU0I>QW)2;|X From f1b171d88b00d8579e8cd4b0b1ee7cc42e0c8407 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 26 Jan 2025 22:12:28 +0900 Subject: [PATCH 201/312] Update head doc (#1127) * update head doc * update head doc --- LICENSE | 2 +- docs/getting_started_main.rst | 19 +++++++++++++++++-- docs/index_main.rst | 32 ++++++++++++++++---------------- 3 files changed, 34 insertions(+), 19 deletions(-) diff --git a/LICENSE b/LICENSE index c0c52a4321..1c9b928b54 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2016 - 2022 Atsushi Sakai and other contributors: +Copyright (c) 2016 - now Atsushi Sakai and other contributors: https://github.com/AtsushiSakai/PythonRobotics/contributors Permission is hereby granted, free of charge, to any person obtaining a copy diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 256319ab8f..db71960dcf 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -3,11 +3,15 @@ Getting Started =============== -What is this? -------------- +.. _`What is PythonRobotics?`: + +What is PythonRobotics? +------------------------ This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. +This is developped under `MIT license`_ and on `GitHub`_. + The focus of the project is on autonomous navigation, and the goal is for beginners in robotics to understand the basic ideas behind each algorithm. In this project, the algorithms which are practical and widely used in both academia and industry are selected. @@ -16,6 +20,17 @@ Each sample code is written in Python3 and only depends on some standard modules It includes intuitive animations to understand the behavior of the simulation. +.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE + +Features: + +1. Easy to read for understanding each algorithm's basic idea. + +2. Widely used and practical algorithms are selected. + +3. Minimum dependency. + See this paper for more details: diff --git a/docs/index_main.rst b/docs/index_main.rst index 08c318ea83..8c967ac59e 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -6,32 +6,32 @@ Welcome to PythonRobotics's documentation! ========================================== -Python codes for robotics algorithm. The project is on `GitHub`_. +"PythonRobotics" is a Python code collections and html based text book +(This document) for robotics algorithm, which is developed on `GitHub`_. -This is a Python code collection of robotics algorithms. +See this section (:ref:`What is PythonRobotics?`) for more details of this project. -Features: +This project is `the one of the most popular open-source software (OSS) in +the field of robotics on GitHub`_. +This is `user comments about this project`_, and +this graph shows GitHub star history of this project: -1. Easy to read for understanding each algorithm's basic idea. +.. image:: https://api.star-history.com/svg?repos=AtsushiSakai/PythonRobotics&type=Date + :alt: Star History + :width: 80% + :align: center -2. Widely used and practical algorithms are selected. -3. Minimum dependency. - -See this paper for more details: - -- `[1808.10703] PythonRobotics: a Python code collection of robotics - algorithms`_ (`BibTeX`_) - - -.. _`[1808.10703] PythonRobotics: a Python code collection of robotics algorithms`: https://arxiv.org/abs/1808.10703 -.. _BibTeX: https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib .. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`user comments about this project`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/users_comments.md +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE +.. _`the one of the most popular open-source software (OSS) in the field of robotics on GitHub`: https://github.com/topics/robotics +---------------------------------- .. toctree:: :maxdepth: 2 - :caption: Contents + :caption: Table of Contents getting_started modules/1_introduction/introduction From e93ada6cb84ad6be0cb7dd70af22e4defe84b0af Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 27 Jan 2025 22:11:15 +0900 Subject: [PATCH 202/312] update README (#1128) --- README.md | 12 ++++++------ docs/getting_started_main.rst | 2 +- docs/index_main.rst | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index ec65342430..8621a40923 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ![GitHub_Action_Windows_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/Windows_CI/badge.svg) [![Build status](https://ci.appveyor.com/api/projects/status/sb279kxuv1be391g?svg=true)](https://ci.appveyor.com/project/AtsushiSakai/pythonrobotics) -Python codes for robotics algorithm. +Python codes and textbook for robotics algorithm. # Table of Contents @@ -73,9 +73,9 @@ Python codes for robotics algorithm. * [1Password](#1password) * [Authors](#authors) -# What is this? +# What is PythonRobotics? -This is a Python code collection of robotics algorithms. +PythonRobotics is a Python code collection and a [textbook](https://atsushisakai.github.io/PythonRobotics/index.html) of robotics algorithms. Features: @@ -90,7 +90,7 @@ See this paper for more details: - [\[1808\.10703\] PythonRobotics: a Python code collection of robotics algorithms](https://arxiv.org/abs/1808.10703) ([BibTeX](https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib)) -# Requirements +# Requirements to run the code For running each sample code: @@ -116,13 +116,13 @@ For development: - [pycodestyle](https://pypi.org/project/pycodestyle/) (for code style check) -# Documentation +# Documentation (Textbook) This README only shows some examples of this project. If you are interested in other examples or mathematical backgrounds of each algorithm, -You can check the full documentation online: [Welcome to PythonRobotics’s documentation\! — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/index.html) +You can check the full documentation (textbook) online: [Welcome to PythonRobotics’s documentation\! — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/index.html) All animation gifs are stored here: [AtsushiSakai/PythonRoboticsGifs: Animation gifs of PythonRobotics](https://github.com/AtsushiSakai/PythonRoboticsGifs) diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index db71960dcf..86049ac2bf 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -10,7 +10,7 @@ What is PythonRobotics? This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. -This is developped under `MIT license`_ and on `GitHub`_. +This is developed under `MIT license`_ and on `GitHub`_. The focus of the project is on autonomous navigation, and the goal is for beginners in robotics to understand the basic ideas behind each algorithm. diff --git a/docs/index_main.rst b/docs/index_main.rst index 8c967ac59e..b9f334dd9b 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -6,7 +6,7 @@ Welcome to PythonRobotics's documentation! ========================================== -"PythonRobotics" is a Python code collections and html based text book +"PythonRobotics" is a Python code collections and textbook (This document) for robotics algorithm, which is developed on `GitHub`_. See this section (:ref:`What is PythonRobotics?`) for more details of this project. From 6744d4b104d9281f0a6c3404860b996f9d53d0a8 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 27 Jan 2025 22:41:52 +0900 Subject: [PATCH 203/312] copy paper contents (#1129) * copy paper contents * copy paper contents --- README.md | 8 +++- docs/getting_started_main.rst | 42 ++++++++++++++----- .../definition_of_robotics_main.rst | 5 ++- .../technology_for_robotics_main.rst | 10 ++++- .../2_localization/localization_main.rst | 1 + docs/modules/3_mapping/mapping_main.rst | 2 + docs/modules/4_slam/slam_main.rst | 2 + .../5_path_planning/path_planning_main.rst | 2 + .../6_path_tracking/path_tracking_main.rst | 2 + 9 files changed, 60 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 8621a40923..cb1816c2b5 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ![GitHub_Action_Windows_CI](https://github.com/AtsushiSakai/PythonRobotics/workflows/Windows_CI/badge.svg) [![Build status](https://ci.appveyor.com/api/projects/status/sb279kxuv1be391g?svg=true)](https://ci.appveyor.com/project/AtsushiSakai/pythonrobotics) -Python codes and textbook for robotics algorithm. +Python codes and [textbook](https://atsushisakai.github.io/PythonRobotics/index.html) for robotics algorithm. # Table of Contents @@ -85,7 +85,11 @@ Features: 3. Minimum dependency. -See this paper for more details: +See this documentation + +- [Getting Started — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/getting_started.html#what-is-pythonrobotics) + +or this paper for more details: - [\[1808\.10703\] PythonRobotics: a Python code collection of robotics algorithms](https://arxiv.org/abs/1808.10703) ([BibTeX](https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib)) diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index 86049ac2bf..aaf304514d 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -9,27 +9,49 @@ What is PythonRobotics? ------------------------ This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. +These codes are developed under `MIT license`_ and on `GitHub`_. -This is developed under `MIT license`_ and on `GitHub`_. +This project has three main philosophies below: -The focus of the project is on autonomous navigation, and the goal is for beginners in robotics to understand the basic ideas behind each algorithm. +1. Easy to understand each algorithm's basic idea. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In this project, the algorithms which are practical and widely used in both academia and industry are selected. +The goal is for beginners in robotics to understand the basic ideas behind each algorithm. +If the code is not easy to read, it would be difficult to achieve our goal of +allowing beginners to understand the algorithms. -Each sample code is written in Python3 and only depends on some standard modules for readability and ease of use. +Python[12] programming language is adopted in this project. +Python has great libraries for matrix operation, mathematical and scientific operation, +and visualization, which makes code more readable because such operations +don’t need to be re-implemented. +Having the core Python packages allows the user to focus on the algorithms, +rather than the implementations. It includes intuitive animations to understand the behavior of the simulation. -.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics -.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE - -Features: - -1. Easy to read for understanding each algorithm's basic idea. +about documenttion 2. Widely used and practical algorithms are selected. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The second philosophy is that implemented algorithms have to be practical +and widely used in both academia and industry. +We believe learning these algorithms will be useful in many applications. +For example, Kalman filters and particle filter for localization, +grid mapping for mapping, +dynamic programming based approaches and sampling based approaches for path planning, +and optimal control based approach for path tracking. +These algorithms are implemented in this project. 3. Minimum dependency. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Each sample code is written in Python3 and only depends on some standard +modules for readability and ease of use. + + +.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE See this paper for more details: diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index bdc7dc53e9..2f31834017 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -1,4 +1,7 @@ Definition of Robotics ---------------------- -TBD +In recent years, autonomous navigation technologies have received huge +attention in many fields. +Such fields include, autonomous driving[22], drone flight navigation, +and other transportation systems. diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst index 4c60ab8851..4dd1d1842f 100644 --- a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst @@ -1,4 +1,12 @@ Technology for Robotics ------------------------- -TBD +An autonomous navigation system is a system that can move to a goal over long +periods of time without any external control by an operator. +The system requires a wide range of technologies: +- It needs to know where it is (localization) +- Where it is safe (mapping) +- Where and how to move (path planning) +- How to control its motion (path following). + +The autonomous system would not work correctly if any of these technologies is missing. diff --git a/docs/modules/2_localization/localization_main.rst b/docs/modules/2_localization/localization_main.rst index db6651f6b8..22cbd094da 100644 --- a/docs/modules/2_localization/localization_main.rst +++ b/docs/modules/2_localization/localization_main.rst @@ -2,6 +2,7 @@ Localization ============ +Localization is the ability of a robot to know its position and orientation with sensors such as Global Navigation Satellite System:GNSS etc. In localization, Bayesian filters such as Kalman filters, histogram filter, and particle filter are widely used[31]. Fig.2 shows localization simulations using histogram filter and particle filter. .. toctree:: :maxdepth: 2 diff --git a/docs/modules/3_mapping/mapping_main.rst b/docs/modules/3_mapping/mapping_main.rst index a98acaaf50..28e18984d3 100644 --- a/docs/modules/3_mapping/mapping_main.rst +++ b/docs/modules/3_mapping/mapping_main.rst @@ -2,6 +2,8 @@ Mapping ======= +Mapping is the ability of a robot to understand its surroundings with external sensors such as LIDAR and camera. Robots have to recognize the position and shape of obstacles to avoid them. In mapping, grid mapping and machine learning algorithms are widely used[31][18]. Fig.3 shows mapping simulation results using grid mapping with 2D ray casting and 2D object clustering with k-means algorithm. + .. toctree:: :maxdepth: 2 :caption: Contents diff --git a/docs/modules/4_slam/slam_main.rst b/docs/modules/4_slam/slam_main.rst index 86befa6e35..dec04f253a 100644 --- a/docs/modules/4_slam/slam_main.rst +++ b/docs/modules/4_slam/slam_main.rst @@ -4,6 +4,8 @@ SLAM ==== Simultaneous Localization and Mapping(SLAM) examples +Simultaneous Localization and Mapping (SLAM) is an ability to estimate the pose of a robot and the map of the environment at the same time. The SLAM problem is hard to +solve, because a map is needed for localization and localization is needed for mapping. In this way, SLAM is often said to be similar to a ‘chicken-and-egg’ problem. Popular SLAM solution methods include the extended Kalman filter, particle filter, and Fast SLAM algorithm[31]. Fig.4 shows SLAM simulation results using extended Kalman filter and results using FastSLAM2.0[31]. .. toctree:: :maxdepth: 2 diff --git a/docs/modules/5_path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst index 30802fd7a6..4960330b3e 100644 --- a/docs/modules/5_path_planning/path_planning_main.rst +++ b/docs/modules/5_path_planning/path_planning_main.rst @@ -3,6 +3,8 @@ Path Planning ============= +Path planning is the ability of a robot to search feasible and efficient path to the goal. The path has to satisfy some constraints based on the robot’s motion model and obstacle positions, and optimize some objective functions such as time to goal and distance to obstacle. In path planning, dynamic programming based approaches and sampling based approaches are widely used[22]. Fig.5 shows simulation results of potential field path planning and LQRRRT* path planning[27]. + .. toctree:: :maxdepth: 2 :caption: Contents diff --git a/docs/modules/6_path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst index 504ba08795..d7a895b562 100644 --- a/docs/modules/6_path_tracking/path_tracking_main.rst +++ b/docs/modules/6_path_tracking/path_tracking_main.rst @@ -3,6 +3,8 @@ Path Tracking ============= +Path tracking is the ability of a robot to follow the reference path generated by a path planner while simultaneously stabilizing the robot. The path tracking controller may need to account for modeling error and other forms of uncertainty. In path tracking, feedback control techniques and optimization based control techniques are widely used[22]. Fig.6 shows simulations using rear wheel feedback steering control and PID speed control, and iterative linear model predictive path tracking control[27]. + .. toctree:: :maxdepth: 2 :caption: Contents From 53f1ba35d5c1b981eca55a91b72c53fb1000263a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Jan 2025 09:19:20 +0900 Subject: [PATCH 204/312] build(deps): bump ruff from 0.9.2 to 0.9.3 in /requirements (#1130) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.2 to 0.9.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.2...0.9.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 11b91abb1f..e8bed7b6d7 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.9.2 # For unit test +ruff == 0.9.3 # For unit test From fc3562733814e43134da8a1d7d73e370d44b9f4e Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 28 Jan 2025 22:25:53 +0900 Subject: [PATCH 205/312] update getting started (#1131) --- docs/getting_started_main.rst | 122 ++------------------------ docs/how_to_read_textbook_main.rst | 4 + docs/how_to_use_main.rst | 30 +++++++ docs/what_is_python_robotics_main.rst | 100 +++++++++++++++++++++ 4 files changed, 140 insertions(+), 116 deletions(-) create mode 100644 docs/how_to_read_textbook_main.rst create mode 100644 docs/how_to_use_main.rst create mode 100644 docs/what_is_python_robotics_main.rst diff --git a/docs/getting_started_main.rst b/docs/getting_started_main.rst index aaf304514d..07abeec451 100644 --- a/docs/getting_started_main.rst +++ b/docs/getting_started_main.rst @@ -3,120 +3,10 @@ Getting Started =============== -.. _`What is PythonRobotics?`: - -What is PythonRobotics? ------------------------- - -This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. -These codes are developed under `MIT license`_ and on `GitHub`_. - -This project has three main philosophies below: - -1. Easy to understand each algorithm's basic idea. -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -The goal is for beginners in robotics to understand the basic ideas behind each algorithm. -If the code is not easy to read, it would be difficult to achieve our goal of -allowing beginners to understand the algorithms. - -Python[12] programming language is adopted in this project. -Python has great libraries for matrix operation, mathematical and scientific operation, -and visualization, which makes code more readable because such operations -don’t need to be re-implemented. -Having the core Python packages allows the user to focus on the algorithms, -rather than the implementations. - -It includes intuitive animations to understand the behavior of the simulation. - -about documenttion - -2. Widely used and practical algorithms are selected. -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -The second philosophy is that implemented algorithms have to be practical -and widely used in both academia and industry. -We believe learning these algorithms will be useful in many applications. -For example, Kalman filters and particle filter for localization, -grid mapping for mapping, -dynamic programming based approaches and sampling based approaches for path planning, -and optimal control based approach for path tracking. -These algorithms are implemented in this project. - -3. Minimum dependency. -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Each sample code is written in Python3 and only depends on some standard -modules for readability and ease of use. - - -.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics -.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE - - -See this paper for more details: - -- PythonRobotics: a Python code collection of robotics algorithms: https://arxiv.org/abs/1808.10703 - -.. _`Requirements`: - -Requirements -------------- - -- `Python 3.12.x`_ -- `NumPy`_ -- `SciPy`_ -- `Matplotlib`_ -- `cvxpy`_ - -For development: - -- `pytest`_ (for unit tests) -- `pytest-xdist`_ (for parallel unit tests) -- `mypy`_ (for type check) -- `sphinx`_ (for document generation) -- `ruff`_ (for code style check) - -.. _`Python 3.12.x`: https://www.python.org/ -.. _`NumPy`: https://numpy.org/ -.. _`SciPy`: https://scipy.org/ -.. _`Matplotlib`: https://matplotlib.org/ -.. _`cvxpy`: https://www.cvxpy.org/ -.. _`pytest`: https://docs.pytest.org/en/latest/ -.. _`pytest-xdist`: https://github.com/pytest-dev/pytest-xdist -.. _`mypy`: https://mypy-lang.org/ -.. _`sphinx`: https://www.sphinx-doc.org/en/master/index.html -.. _`ruff`: https://github.com/astral-sh/ruff - - -How to use ----------- - -1. Clone this repo and go into dir. - -.. code-block:: - - >$ git clone https://github.com/AtsushiSakai/PythonRobotics.git - - >$ cd PythonRobotics - - -2. Install the required libraries. - -using conda : - -.. code-block:: - - >$ conda env create -f requirements/environment.yml - -using pip : - -.. code-block:: - - >$ pip install -r requirements/requirements.txt - - -3. Execute python script in each directory. - -4. Add star to this repo if you like it 😃. +.. toctree:: + :maxdepth: 2 + :caption: Contents + what_is_python_robotics + how_to_use + how_to_read_textbook diff --git a/docs/how_to_read_textbook_main.rst b/docs/how_to_read_textbook_main.rst new file mode 100644 index 0000000000..3b92970e26 --- /dev/null +++ b/docs/how_to_read_textbook_main.rst @@ -0,0 +1,4 @@ +How To read this textbook +-------------------------- + +TBD \ No newline at end of file diff --git a/docs/how_to_use_main.rst b/docs/how_to_use_main.rst new file mode 100644 index 0000000000..d21b07c1a3 --- /dev/null +++ b/docs/how_to_use_main.rst @@ -0,0 +1,30 @@ +How to use +---------- + +1. Clone this repo and go into dir. + +.. code-block:: + + >$ git clone https://github.com/AtsushiSakai/PythonRobotics.git + + >$ cd PythonRobotics + + +2. Install the required libraries. + +using conda : + +.. code-block:: + + >$ conda env create -f requirements/environment.yml + +using pip : + +.. code-block:: + + >$ pip install -r requirements/requirements.txt + + +3. Execute python script in each directory. + +4. Add star to this repo if you like it 😃. diff --git a/docs/what_is_python_robotics_main.rst b/docs/what_is_python_robotics_main.rst new file mode 100644 index 0000000000..ce6e059dba --- /dev/null +++ b/docs/what_is_python_robotics_main.rst @@ -0,0 +1,100 @@ +.. _`What is PythonRobotics?`: + +What is PythonRobotics? +------------------------ + +This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. +These codes are developed under `MIT license`_ and on `GitHub`_. + +This project has three main philosophies below: + +1. Easy to understand each algorithm's basic idea. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The goal is for beginners in robotics to understand the basic ideas behind each algorithm. + +`Python`_ programming language is adopted in this project to achieve the goal. +Python is a high-level programming language that is easy to read and write. +If the code is not easy to read, it would be difficult to achieve our goal of +allowing beginners to understand the algorithms. +Python has great libraries for matrix operation, mathematical and scientific operation, +and visualization, which makes code more readable because such operations +don’t need to be re-implemented. +Having the core Python packages allows the user to focus on the algorithms, +rather than the implementations. + +PythonRobotics provides not only the code but also intuitive animations that +visually demonstrate the process and behavior of each algorithm over time. +This is an example of an animation gif file that shows the process of the +path planning in a highway scenario for autonomous vehicle. + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/high_speed_and_velocity_keeping_frenet_path.gif + +This animation is a gif file and is created using the `Matplotlib`_ library. +All animaion gif files are stored in the `PythonRoboticsGifs`_ repository and +all animation movies are uploaded to this `YouTube channel`_. + +PythonRobotics also provides a textbook that explains the basic ideas of each algorithm. + +.. _`Python`: https://www.python.org/ +.. _`PythonRoboticsGifs`: https://github.com/AtsushiSakai/PythonRoboticsGifs +.. _`YouTube channel`: https://youtube.com/playlist?list=PL12URV8HFpCozuz0SDxke6b2ae5UZvIwa&si=AH2fNPPYufPtK20S + + +2. Widely used and practical algorithms are selected. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The second philosophy is that implemented algorithms have to be practical +and widely used in both academia and industry. +We believe learning these algorithms will be useful in many applications. +For example, Kalman filters and particle filter for localization, +grid mapping for mapping, +dynamic programming based approaches and sampling based approaches for path planning, +and optimal control based approach for path tracking. +These algorithms are implemented in this project. + +3. Minimum dependency. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Each sample code is written in Python3 and only depends on some standard +modules for readability and ease of use. + + +.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE + + +See this paper for more details: + +- PythonRobotics: a Python code collection of robotics algorithms: https://arxiv.org/abs/1808.10703 + +.. _`Requirements`: + +Requirements +============ + +- `Python 3.12.x`_ +- `NumPy`_ +- `SciPy`_ +- `Matplotlib`_ +- `cvxpy`_ + +For development: + +- `pytest`_ (for unit tests) +- `pytest-xdist`_ (for parallel unit tests) +- `mypy`_ (for type check) +- `sphinx`_ (for document generation) +- `ruff`_ (for code style check) + +.. _`Python 3.12.x`: https://www.python.org/ +.. _`NumPy`: https://numpy.org/ +.. _`SciPy`: https://scipy.org/ +.. _`Matplotlib`: https://matplotlib.org/ +.. _`cvxpy`: https://www.cvxpy.org/ +.. _`pytest`: https://docs.pytest.org/en/latest/ +.. _`pytest-xdist`: https://github.com/pytest-dev/pytest-xdist +.. _`mypy`: https://mypy-lang.org/ +.. _`sphinx`: https://www.sphinx-doc.org/en/master/index.html +.. _`ruff`: https://github.com/astral-sh/ruff + From 44bad786829e713c44259bc18cc7ac24b6c1e24c Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Wed, 29 Jan 2025 21:54:18 +0900 Subject: [PATCH 206/312] update getting started (#1132) --- docs/how_to_read_textbook_main.rst | 4 ---- docs/index_main.rst | 3 +-- .../0_getting_started_main.rst} | 7 +++--- .../1_what_is_python_robotics_main.rst} | 23 +++++++++++++------ .../0_getting_started/2_how_to_use_main.rst} | 0 .../3_how_to_contribute_main.rst} | 0 .../4_how_to_read_textbook_main.rst | 6 +++++ 7 files changed, 27 insertions(+), 16 deletions(-) delete mode 100644 docs/how_to_read_textbook_main.rst rename docs/{getting_started_main.rst => modules/0_getting_started/0_getting_started_main.rst} (53%) rename docs/{what_is_python_robotics_main.rst => modules/0_getting_started/1_what_is_python_robotics_main.rst} (79%) rename docs/{how_to_use_main.rst => modules/0_getting_started/2_how_to_use_main.rst} (100%) rename docs/{how_to_contribute_main.rst => modules/0_getting_started/3_how_to_contribute_main.rst} (100%) create mode 100644 docs/modules/0_getting_started/4_how_to_read_textbook_main.rst diff --git a/docs/how_to_read_textbook_main.rst b/docs/how_to_read_textbook_main.rst deleted file mode 100644 index 3b92970e26..0000000000 --- a/docs/how_to_read_textbook_main.rst +++ /dev/null @@ -1,4 +0,0 @@ -How To read this textbook --------------------------- - -TBD \ No newline at end of file diff --git a/docs/index_main.rst b/docs/index_main.rst index b9f334dd9b..c1e8d22d32 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -33,7 +33,7 @@ this graph shows GitHub star history of this project: :maxdepth: 2 :caption: Table of Contents - getting_started + modules/0_getting_started/0_getting_started modules/1_introduction/introduction modules/2_localization/localization modules/3_mapping/mapping @@ -46,7 +46,6 @@ this graph shows GitHub star history of this project: modules/10_control/control modules/11_utils/utils modules/12_appendix/appendix - how_to_contribute Indices and tables diff --git a/docs/getting_started_main.rst b/docs/modules/0_getting_started/0_getting_started_main.rst similarity index 53% rename from docs/getting_started_main.rst rename to docs/modules/0_getting_started/0_getting_started_main.rst index 07abeec451..cfec5b3c73 100644 --- a/docs/getting_started_main.rst +++ b/docs/modules/0_getting_started/0_getting_started_main.rst @@ -7,6 +7,7 @@ Getting Started :maxdepth: 2 :caption: Contents - what_is_python_robotics - how_to_use - how_to_read_textbook + 1_what_is_python_robotics + 2_how_to_use + 3_how_to_contribute + 4_how_to_read_textbook diff --git a/docs/what_is_python_robotics_main.rst b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst similarity index 79% rename from docs/what_is_python_robotics_main.rst rename to docs/modules/0_getting_started/1_what_is_python_robotics_main.rst index ce6e059dba..32b1ad4e5d 100644 --- a/docs/what_is_python_robotics_main.rst +++ b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst @@ -8,7 +8,7 @@ These codes are developed under `MIT license`_ and on `GitHub`_. This project has three main philosophies below: -1. Easy to understand each algorithm's basic idea. +Philosophy 1. Easy to understand each algorithm's basic idea. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The goal is for beginners in robotics to understand the basic ideas behind each algorithm. @@ -31,17 +31,26 @@ path planning in a highway scenario for autonomous vehicle. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/FrenetOptimalTrajectory/high_speed_and_velocity_keeping_frenet_path.gif This animation is a gif file and is created using the `Matplotlib`_ library. -All animaion gif files are stored in the `PythonRoboticsGifs`_ repository and -all animation movies are uploaded to this `YouTube channel`_. +All animation gif files are stored in the `PythonRoboticsGifs`_ repository and +all animation movies are also uploaded to this `YouTube channel`_. PythonRobotics also provides a textbook that explains the basic ideas of each algorithm. +The PythonRobotics textbook allows you to learn fundamental algorithms used in +robotics with minimal mathematical formulas and textual explanations, +based on PythonRobotics’ sample codes and animations. +The contents of this document, like the code, are managed in the PythonRobotics +`GitHub`_ repository and converted into HTML-based online documents using `Sphinx`_, +which is a Python-based documentation builder. +Please refer to this section ":ref:`How to read this textbook`" for information on +how to read this document for learning. + .. _`Python`: https://www.python.org/ .. _`PythonRoboticsGifs`: https://github.com/AtsushiSakai/PythonRoboticsGifs .. _`YouTube channel`: https://youtube.com/playlist?list=PL12URV8HFpCozuz0SDxke6b2ae5UZvIwa&si=AH2fNPPYufPtK20S -2. Widely used and practical algorithms are selected. +Philosophy 2. Widely used and practical algorithms are selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The second philosophy is that implemented algorithms have to be practical @@ -53,7 +62,7 @@ dynamic programming based approaches and sampling based approaches for path plan and optimal control based approach for path tracking. These algorithms are implemented in this project. -3. Minimum dependency. +Philosophy 3. Minimum dependency. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Each sample code is written in Python3 and only depends on some standard @@ -84,7 +93,7 @@ For development: - `pytest`_ (for unit tests) - `pytest-xdist`_ (for parallel unit tests) - `mypy`_ (for type check) -- `sphinx`_ (for document generation) +- `Sphinx`_ (for document generation) - `ruff`_ (for code style check) .. _`Python 3.12.x`: https://www.python.org/ @@ -95,6 +104,6 @@ For development: .. _`pytest`: https://docs.pytest.org/en/latest/ .. _`pytest-xdist`: https://github.com/pytest-dev/pytest-xdist .. _`mypy`: https://mypy-lang.org/ -.. _`sphinx`: https://www.sphinx-doc.org/en/master/index.html +.. _`Sphinx`: https://www.sphinx-doc.org/en/master/index.html .. _`ruff`: https://github.com/astral-sh/ruff diff --git a/docs/how_to_use_main.rst b/docs/modules/0_getting_started/2_how_to_use_main.rst similarity index 100% rename from docs/how_to_use_main.rst rename to docs/modules/0_getting_started/2_how_to_use_main.rst diff --git a/docs/how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst similarity index 100% rename from docs/how_to_contribute_main.rst rename to docs/modules/0_getting_started/3_how_to_contribute_main.rst diff --git a/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst b/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst new file mode 100644 index 0000000000..fb8db348c6 --- /dev/null +++ b/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst @@ -0,0 +1,6 @@ +.. _`How to read this textbook`: + +How to read this textbook +-------------------------- + +TBD \ No newline at end of file From 2b9cc06000a4ae57dce885240d04e38e30cff8e3 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 30 Jan 2025 22:25:45 +0900 Subject: [PATCH 207/312] update getting started (#1133) --- .../0_getting_started_main.rst | 2 +- .../1_what_is_python_robotics_main.rst | 49 ++++++++++++------- ...rst => 2_how_to_run_sample_codes_main.rst} | 6 ++- 3 files changed, 37 insertions(+), 20 deletions(-) rename docs/modules/0_getting_started/{2_how_to_use_main.rst => 2_how_to_run_sample_codes_main.rst} (84%) diff --git a/docs/modules/0_getting_started/0_getting_started_main.rst b/docs/modules/0_getting_started/0_getting_started_main.rst index cfec5b3c73..cb2cba4784 100644 --- a/docs/modules/0_getting_started/0_getting_started_main.rst +++ b/docs/modules/0_getting_started/0_getting_started_main.rst @@ -8,6 +8,6 @@ Getting Started :caption: Contents 1_what_is_python_robotics - 2_how_to_use + 2_how_to_run_sample_codes 3_how_to_contribute 4_how_to_read_textbook diff --git a/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst index 32b1ad4e5d..8c932b7263 100644 --- a/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst +++ b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst @@ -6,6 +6,9 @@ What is PythonRobotics? This is an Open Source Software (OSS) project: PythonRobotics, which is a Python code collection of robotics algorithms. These codes are developed under `MIT license`_ and on `GitHub`_. +.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics +.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE + This project has three main philosophies below: Philosophy 1. Easy to understand each algorithm's basic idea. @@ -60,35 +63,32 @@ For example, Kalman filters and particle filter for localization, grid mapping for mapping, dynamic programming based approaches and sampling based approaches for path planning, and optimal control based approach for path tracking. -These algorithms are implemented in this project. +These algorithms are implemented and explained in the textbook in this project. Philosophy 3. Minimum dependency. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Each sample code is written in Python3 and only depends on some standard -modules for readability and ease of use. - - -.. _GitHub: https://github.com/AtsushiSakai/PythonRobotics -.. _`MIT license`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/LICENSE - - -See this paper for more details: +Each sample code of PythonRobotics is written in Python3 and only depends on +some standard modules for readability and ease to setup and use. -- PythonRobotics: a Python code collection of robotics algorithms: https://arxiv.org/abs/1808.10703 .. _`Requirements`: Requirements ============ -- `Python 3.12.x`_ -- `NumPy`_ -- `SciPy`_ -- `Matplotlib`_ -- `cvxpy`_ +PythonRobotics depends only on the following five libraries, +including Python itself, to run each sample code. -For development: +- `Python 3.12.x`_ (for Python runtime) +- `NumPy`_ (for matrix operation) +- `SciPy`_ (for scientific operation) +- `cvxpy`_ (for convex optimization) +- `Matplotlib`_ (for visualization) + +If you only need to run the code, the five libraries mentioned above are sufficient. +However, for code development or creating documentation for the textbook, +the following additional libraries are required. - `pytest`_ (for unit tests) - `pytest-xdist`_ (for parallel unit tests) @@ -107,3 +107,18 @@ For development: .. _`Sphinx`: https://www.sphinx-doc.org/en/master/index.html .. _`ruff`: https://github.com/astral-sh/ruff +For instructions on installing the above libraries, please refer to +this section ":ref:`How to run sample codes`". + +Arxiv paper +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +We have published a paper on this project on Arxiv in 2018. + +See this paper for more details about this Project: + +- `PythonRobotics: a Python code collection of robotics algorithms`_ (`BibTeX`_) + +.. _`PythonRobotics: a Python code collection of robotics algorithms`: https://arxiv.org/abs/1808.10703 +.. _`BibTeX`: https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib + diff --git a/docs/modules/0_getting_started/2_how_to_use_main.rst b/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst similarity index 84% rename from docs/modules/0_getting_started/2_how_to_use_main.rst rename to docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst index d21b07c1a3..eff54d3426 100644 --- a/docs/modules/0_getting_started/2_how_to_use_main.rst +++ b/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst @@ -1,5 +1,7 @@ -How to use ----------- +.. _`How to run sample codes`: + +How to run sample codes +------------------------- 1. Clone this repo and go into dir. From a5fc2d039db9cdf6182d9fc97073b0d6e7388830 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 31 Jan 2025 21:38:06 +0900 Subject: [PATCH 208/312] update getting started (#1134) Co-authored-by: Atsushi Sakai --- .../2_how_to_run_sample_codes_main.rst | 94 ++++++++++++++++++- 1 file changed, 90 insertions(+), 4 deletions(-) diff --git a/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst b/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst index eff54d3426..b92fc9bde0 100644 --- a/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst +++ b/docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst @@ -3,7 +3,21 @@ How to run sample codes ------------------------- -1. Clone this repo and go into dir. +In this chapter, we will explain the setup process for running each sample code +in PythonRobotics and describe the contents of each directory. + +Steps to setup and run sample codes +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +1. Install `Python 3.12.x`_ + +Note that older versions of Python3 might work, but we recommend using +the specified version, because the sample codes are only tested with it. + +2. If you prefer to use conda for package management, install +Anaconda or Miniconda to use `conda`_ command. + +3. Clone this repo and go into dir. .. code-block:: @@ -12,7 +26,10 @@ How to run sample codes >$ cd PythonRobotics -2. Install the required libraries. +4. Install the required libraries. + +We have prepared requirements management files for `conda`_ and `pip`_ under +the requirements directory. Using these files makes it easy to install the necessary libraries. using conda : @@ -27,6 +44,75 @@ using pip : >$ pip install -r requirements/requirements.txt -3. Execute python script in each directory. +5. Execute python script in each directory. + +For example, to run the sample code of `Extented Kalman Filter` in the +`localization` directory, execute the following command: + +.. code-block:: + + >$ cd localization/extended_kalman_filter + + >$ python extended_kalman_filter.py + +Then, you can see this animation of the EKF algorithm based localization: + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Localization/extended_kalman_filter/animation.gif + +Please refer to the `Directory structure`_ section for more details on the contents of each directory. + +6. Add star to this repo if you like it 😃. + +.. _`Python 3.12.x`: https://www.python.org/ +.. _`conda`: https://docs.conda.io/projects/conda/en/stable/user-guide/install/index.html +.. _`pip`: https://pip.pypa.io/en/stable/ +.. _`the requirements directory`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/requirements + +.. _`Directory structure`: + +Directory structure +~~~~~~~~~~~~~~~~~~~~ + +The top-level directory structure of PythonRobotics is as follows: + +Sample codes directories: + +- `AerialNavigation`_ : the sample codes of aerial navigation algorithms for drones and rocket landing. +- `ArmNavigation`_ : the sample codes of arm navigation algorithms for robotic arms. +- `Localization`_ : the sample codes of localization algorithms. +- `Bipedal`_ : the sample codes of bipedal walking algorithms for legged robots. +- `Control`_ : the sample codes of control algorithms for robotic systems. +- `Mapping`_ : the sample codes of mapping or obstacle shape recognition algorithms. +- `PathPlanning`_ : the sample codes of path planning algorithms. +- `PathTracking`_ : the sample codes of path tracking algorithms for car like robots. +- `SLAM`_ : the sample codes of SLAM algorithms. + +Other directories: + +- `docs`_ : This directory contains the documentation of PythonRobotics. +- `requirements`_ : This directory contains the requirements management files. +- `tests`_ : This directory contains the unit test files. +- `utils`_ : This directory contains utility functions used in some sample codes in common. +- `.github`_ : This directory contains the GitHub Actions configuration files. +- `.circleci`_ : This directory contains the CircleCI configuration files. + +The structure of this document is the same as that of the sample code +directories mentioned above. +For more details, please refer to the :ref:`How to read this textbook` section. + -4. Add star to this repo if you like it 😃. +.. _`AerialNavigation`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/AerialNavigation +.. _`ArmNavigation`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/ArmNavigation +.. _`Localization`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Localization +.. _`Bipedal`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Bipedal +.. _`Control`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Control +.. _`Mapping`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Mapping +.. _`PathPlanning`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/PathPlanning +.. _`PathTracking`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/PathTracking +.. _`SLAM`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/SLAM +.. _`docs`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/docs +.. _`requirements`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/requirements +.. _`tests`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/tests +.. _`utils`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/utils +.. _`.github`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/.github +.. _`.circleci`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/.circleci From f225c1845775cf8e1d8c62d04164743c2e9e00fc Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 1 Feb 2025 22:47:52 +0900 Subject: [PATCH 209/312] update getting started (#1135) Co-authored-by: Atsushi Sakai --- .../3_how_to_contribute_main.rst | 45 +++++++++++++++---- 1 file changed, 37 insertions(+), 8 deletions(-) diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 915b2155e4..296e4e8658 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -2,9 +2,18 @@ How To Contribute ================= This document describes how to contribute this project. +There are several ways to contribute to this project as below: + +#. `Adding a new algorithm example`_ +#. `Reporting and fixing a defect`_ +#. `Adding missed documentations for existing examples`_ +#. `Supporting this project`_ + + +.. _`Adding a new algorithm example`: Adding a new algorithm example -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ This is a step by step manual to add a new algorithm example. @@ -67,9 +76,16 @@ Please check other documents for details. You can build the doc locally based on `doc README`_. -Note that the `reStructuredText`_ based doc should only focus on the mathematics and the algorithm of the example. +For creating a gif animation, you can use this tool: `matplotrecorder`_. + +The created gif file should be stored in the `PythonRoboticsGifs`_ repository, +so please create a PR to add it and refer to it in the doc. + +Note that the `reStructuredText`_ based doc should only focus on the +mathematics and the algorithm of the example. -Documentations related codes should be in the python script as the header comments of the script or docstrings of each function. +Documentations related codes should be in the python script as the header +comments of the script or docstrings of each function. .. _`submit a pull request`: @@ -92,6 +108,9 @@ After that, I will start the review. Note that this is my hobby project; I appreciate your patience during the review process. +  + +.. _`Reporting and fixing a defect`: Reporting and fixing a defect ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -115,19 +134,24 @@ in the test code to show the issue was solved. This doc `submit a pull request`_ can be helpful to submit a pull request. +.. _`Adding missed documentations for existing examples`: + Adding missed documentations for existing examples ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Adding the missed documentations for existing examples is also great contribution. If you check the `Python Robotics Docs`_, you can notice that some of the examples -only have a simulation gif or short overview descriptions, +only have a simulation gif or short overview descriptions or just TBD., but no detailed algorithm or mathematical description. +These documents needs to be improved. This doc `how to write doc`_ can be helpful to write documents. +.. _`Supporting this project`: + Supporting this project -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^ Supporting this project financially is also a great contribution!!. @@ -141,10 +165,12 @@ If you or your company would like to support this project, please consider: If you would like to support us in some other way, please contact with creating an issue. -Sponsors ---------- +Current Major Sponsors +----------------------- + +#. `JetBrains`_ : They are providing a free license of their IDEs for this OSS development. +#. `1Password`_ : They are providing a free license of their 1Password team license for this OSS project. -1. `JetBrains`_ : They are providing a free license of their IDEs for this OSS development. .. _`Python Robotics Docs`: https://atsushisakai.github.io/PythonRobotics @@ -160,5 +186,8 @@ Sponsors .. _`Sponsor @AtsushiSakai on GitHub Sponsors`: https://github.com/sponsors/AtsushiSakai .. _`Become a backer or sponsor on Patreon`: https://www.patreon.com/myenigma .. _`One-time donation via PayPal`: https://www.paypal.com/paypalme/myenigmapay/ +.. _`1Password`: https://github.com/1Password/for-open-source +.. _`matplotrecorder`: https://github.com/AtsushiSakai/matplotrecorder +.. _`PythonRoboticsGifs`: https://github.com/AtsushiSakai/PythonRoboticsGifs From e6f5dfe537d97cf79d55ad2803911a135aeaa1fd Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 2 Feb 2025 21:34:26 +0900 Subject: [PATCH 210/312] update getting started (#1136) Co-authored-by: Atsushi Sakai --- .../0_getting_started/3_how_to_contribute_main.rst | 2 +- .../0_getting_started/4_how_to_read_textbook_main.rst | 10 +++++++++- docs/modules/1_introduction/introduction_main.rst | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 296e4e8658..6e5c1be8ee 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -1,4 +1,4 @@ -How To Contribute +How to contribute ================= This document describes how to contribute this project. diff --git a/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst b/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst index fb8db348c6..1625c838af 100644 --- a/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst +++ b/docs/modules/0_getting_started/4_how_to_read_textbook_main.rst @@ -3,4 +3,12 @@ How to read this textbook -------------------------- -TBD \ No newline at end of file +This document is structured to help you learn the fundamental concepts +behind each sample code in PythonRobotics. + +If you already have some knowledge of robotics technologies, you can start +by reading any document that interests you. + +However, if you have no prior knowledge of robotics technologies, it is +recommended that you first read the :ref:`Introduction` section and then proceed +to the documents related to the technical fields that interest you. \ No newline at end of file diff --git a/docs/modules/1_introduction/introduction_main.rst b/docs/modules/1_introduction/introduction_main.rst index 4561efd349..ec1f237545 100644 --- a/docs/modules/1_introduction/introduction_main.rst +++ b/docs/modules/1_introduction/introduction_main.rst @@ -1,4 +1,4 @@ -.. _introduction: +.. _Introduction: Introduction ============ From 70269fe9601b6189914a739c4c0d42b598c3425b Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 3 Feb 2025 22:19:10 +0900 Subject: [PATCH 211/312] update getting started (#1138) --- .../python_for_robotics_main.rst} | 5 +---- docs/modules/1_introduction/introduction_main.rst | 7 ++++++- 2 files changed, 7 insertions(+), 5 deletions(-) rename docs/modules/1_introduction/{2_software_for_robotics/software_for_robotics_main.rst => 2_python_for_robotics/python_for_robotics_main.rst} (51%) diff --git a/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst similarity index 51% rename from docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst rename to docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 835441f85d..23f31da779 100644 --- a/docs/modules/1_introduction/2_software_for_robotics/software_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,7 +1,4 @@ -Software for Robotics ----------------------- - Python for Robotics -~~~~~~~~~~~~~~~~~~~~~ +---------------------- TBD diff --git a/docs/modules/1_introduction/introduction_main.rst b/docs/modules/1_introduction/introduction_main.rst index ec1f237545..a7ce55f9bf 100644 --- a/docs/modules/1_introduction/introduction_main.rst +++ b/docs/modules/1_introduction/introduction_main.rst @@ -3,11 +3,16 @@ Introduction ============ +PythonRobotics is composed of two words: "Python" and "Robotics". +Therefore, I will first explain these two topics, Robotics and Python. +After that, I will provide an overview of the robotics technologies +covered in PythonRobotics. + .. toctree:: :maxdepth: 2 :caption: Table of Contents 1_definition_of_robotics/definition_of_robotics - 2_software_for_robotics/software_for_robotics + 2_python_for_robotics/python_for_robotics 3_technology_for_robotics/technology_for_robotics From 5b06435be9e24a73c8ee9d0f0acb1e409a118141 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Feb 2025 07:37:17 +0900 Subject: [PATCH 212/312] build(deps): bump ruff from 0.9.3 to 0.9.4 in /requirements (#1139) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.3 to 0.9.4. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.3...0.9.4) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e8bed7b6d7..9d4e7deb4d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.14.1 # For unit test -ruff == 0.9.3 # For unit test +ruff == 0.9.4 # For unit test From 7b7bd784093e4d46108b667c54261d054894e875 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Wed, 5 Feb 2025 13:41:28 +0900 Subject: [PATCH 213/312] update introduction (#1141) --- .../python_for_robotics_main.rst | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 23f31da779..1ad5316f53 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,4 +1,50 @@ Python for Robotics ---------------------- +Python for general-purpose programming +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +`Python `_ is an general-purpose programming language developed by +`Guido van Rossum `_ in the late 1980s. + +It features as follows: + +#. High-level +#. Interpreted +#. Dynamic type system (also type annotation is supported) +#. Emphasizes code readability +#. Rapid prototyping +#. Batteries included +#. Interoperability for C and Fortran + +Due to these features, Python is the most popular programming language +for educational purposes for programming beginners. + +Python for Scientific Computing +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Python itself was not designed for scientific computing. +However, scientists quickly recognized its strengths. +For example, + +#. High-level and interpreted features enable scientists to focus on their problems without dealing with low-level programming tasks like memory management. +#. Code readability, rapid prototyping, and batteries included features enables scientists who are not professional programmers, to solve their problems easily. +#. The interoperability to wrap C and Fortran libraries enables scientists to access already existed powerful scientific computing libraries. + +To address the more needs of scientific computing, many libraries have been developed. + +- `NumPy `_ is the fundamental package for scientific computing with Python. +- `SciPy `_ is a library that builds on NumPy and provides a large number of functions that operate on NumPy arrays and are useful for different types of scientific and engineering applications. +- `Matplotlib `_ is a plotting library for the Python programming language and its numerical mathematics extension NumPy. +- `Pandas `_ is a fast, powerful, flexible, and easy-to-use open-source data analysis and data manipulation library built on top of NumPy. +- `SymPy `_ is a Python library for symbolic mathematics. + +And more domain-specific libraries have been developed: +- `Scikit-learn `_ is a free software machine learning library for the Python programming language. +- `Scikit-image `_ is a collection of algorithms for image processing. + +Python for Robotics +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + TBD + From 322fead45a62417c5d0d7dbb07ef17067122da7b Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Wed, 5 Feb 2025 20:56:13 +0800 Subject: [PATCH 214/312] feat: add DistanceMap (#1142) * feat: add DistanceMap * feat: add DistanceMap test * feat: add DistanceMap doc * feat: DistanceMap doc update * feat: DistanceMap update --- Mapping/DistanceMap/distance_map.py | 151 ++++++++++++++++++ .../3_mapping/distance_map/distance_map.png | Bin 0 -> 32698 bytes .../distance_map/distance_map_main.rst | 27 ++++ docs/modules/3_mapping/mapping_main.rst | 1 + tests/test_distance_map.py | 118 ++++++++++++++ 5 files changed, 297 insertions(+) create mode 100644 Mapping/DistanceMap/distance_map.py create mode 100644 docs/modules/3_mapping/distance_map/distance_map.png create mode 100644 docs/modules/3_mapping/distance_map/distance_map_main.rst create mode 100644 tests/test_distance_map.py diff --git a/Mapping/DistanceMap/distance_map.py b/Mapping/DistanceMap/distance_map.py new file mode 100644 index 0000000000..54c98c6a75 --- /dev/null +++ b/Mapping/DistanceMap/distance_map.py @@ -0,0 +1,151 @@ +""" +Distance Map + +author: Wang Zheng (@Aglargil) + +Ref: + +- [Distance Map] +(https://cs.brown.edu/people/pfelzens/papers/dt-final.pdf) +""" + +import numpy as np +import matplotlib.pyplot as plt + +INF = 1e20 +ENABLE_PLOT = True + + +def compute_sdf(obstacles): + """ + Compute the signed distance field (SDF) from a boolean field. + + Parameters + ---------- + obstacles : array_like + A 2D boolean array where '1' represents obstacles and '0' represents free space. + + Returns + ------- + array_like + A 2D array representing the signed distance field, where positive values indicate distance + to the nearest obstacle, and negative values indicate distance to the nearest free space. + """ + a = compute_udf(obstacles) + b = compute_udf(obstacles == 0) + return a - b + + +def compute_udf(obstacles): + """ + Compute the unsigned distance field (UDF) from a boolean field. + + Parameters + ---------- + obstacles : array_like + A 2D boolean array where '1' represents obstacles and '0' represents free space. + + Returns + ------- + array_like + A 2D array of distances from the nearest obstacle, with the same dimensions as `bool_field`. + """ + edt = obstacles.copy() + if not np.all(np.isin(edt, [0, 1])): + raise ValueError("Input array should only contain 0 and 1") + edt = np.where(edt == 0, INF, edt) + edt = np.where(edt == 1, 0, edt) + for row in range(len(edt)): + dt(edt[row]) + edt = edt.T + for row in range(len(edt)): + dt(edt[row]) + edt = edt.T + return np.sqrt(edt) + + +def dt(d): + """ + Compute 1D distance transform under the squared Euclidean distance + + Parameters + ---------- + d : array_like + Input array containing the distances. + + Returns: + -------- + d : array_like + The transformed array with computed distances. + """ + v = np.zeros(len(d) + 1) + z = np.zeros(len(d) + 1) + k = 0 + v[0] = 0 + z[0] = -INF + z[1] = INF + for q in range(1, len(d)): + s = ((d[q] + q * q) - (d[int(v[k])] + v[k] * v[k])) / (2 * q - 2 * v[k]) + while s <= z[k]: + k = k - 1 + s = ((d[q] + q * q) - (d[int(v[k])] + v[k] * v[k])) / (2 * q - 2 * v[k]) + k = k + 1 + v[k] = q + z[k] = s + z[k + 1] = INF + k = 0 + for q in range(len(d)): + while z[k + 1] < q: + k = k + 1 + dx = q - v[k] + d[q] = dx * dx + d[int(v[k])] + + +def main(): + obstacles = np.array( + [ + [1, 0, 0, 0, 0], + [0, 1, 1, 1, 0], + [0, 1, 1, 1, 0], + [0, 0, 1, 1, 0], + [0, 0, 1, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 1, 0, 0], + [0, 0, 0, 0, 0], + [0, 0, 0, 0, 0], + ] + ) + + # Compute the signed distance field + sdf = compute_sdf(obstacles) + udf = compute_udf(obstacles) + + if ENABLE_PLOT: + _, (ax1, ax2, ax3) = plt.subplots(1, 3, figsize=(15, 5)) + + obstacles_plot = ax1.imshow(obstacles, cmap="binary") + ax1.set_title("Obstacles") + ax1.set_xlabel("x") + ax1.set_ylabel("y") + plt.colorbar(obstacles_plot, ax=ax1) + + udf_plot = ax2.imshow(udf, cmap="viridis") + ax2.set_title("Unsigned Distance Field") + ax2.set_xlabel("x") + ax2.set_ylabel("y") + plt.colorbar(udf_plot, ax=ax2) + + sdf_plot = ax3.imshow(sdf, cmap="RdBu") + ax3.set_title("Signed Distance Field") + ax3.set_xlabel("x") + ax3.set_ylabel("y") + plt.colorbar(sdf_plot, ax=ax3) + + plt.tight_layout() + plt.show() + + +if __name__ == "__main__": + main() diff --git a/docs/modules/3_mapping/distance_map/distance_map.png b/docs/modules/3_mapping/distance_map/distance_map.png new file mode 100644 index 0000000000000000000000000000000000000000..2d89252a70358ad1b60025d7bb3d9a217a2cefcc GIT binary patch literal 32698 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 literal 0 HcmV?d00001 diff --git a/docs/modules/3_mapping/distance_map/distance_map_main.rst b/docs/modules/3_mapping/distance_map/distance_map_main.rst new file mode 100644 index 0000000000..45273cd3bb --- /dev/null +++ b/docs/modules/3_mapping/distance_map/distance_map_main.rst @@ -0,0 +1,27 @@ +Distance Map +------------ + +This is an implementation of the Distance Map algorithm for path planning. + +The Distance Map algorithm computes the unsigned distance field (UDF) and signed distance field (SDF) from a boolean field representing obstacles. + +The UDF gives the distance from each point to the nearest obstacle. The SDF gives positive distances for points outside obstacles and negative distances for points inside obstacles. + +Example +~~~~~~~ + +The algorithm is demonstrated on a simple 2D grid with obstacles: + +.. image:: distance_map.png + +API +~~~ + +.. autofunction:: PathPlanning.DistanceMap.distance_map.compute_sdf + +.. autofunction:: PathPlanning.DistanceMap.distance_map.compute_udf + +References +~~~~~~~~~~ + +- `Distance Transforms of Sampled Functions `_ paper by Pedro F. Felzenszwalb and Daniel P. Huttenlocher. \ No newline at end of file diff --git a/docs/modules/3_mapping/mapping_main.rst b/docs/modules/3_mapping/mapping_main.rst index 28e18984d3..825b08d3ec 100644 --- a/docs/modules/3_mapping/mapping_main.rst +++ b/docs/modules/3_mapping/mapping_main.rst @@ -17,3 +17,4 @@ Mapping is the ability of a robot to understand its surroundings with external s circle_fitting/circle_fitting rectangle_fitting/rectangle_fitting normal_vector_estimation/normal_vector_estimation + distance_map/distance_map diff --git a/tests/test_distance_map.py b/tests/test_distance_map.py new file mode 100644 index 0000000000..df6e394e2c --- /dev/null +++ b/tests/test_distance_map.py @@ -0,0 +1,118 @@ +import conftest # noqa +import numpy as np +from Mapping.DistanceMap import distance_map as m + + +def test_compute_sdf(): + """Test the computation of Signed Distance Field (SDF)""" + # Create a simple obstacle map for testing + obstacles = np.array([[0, 0, 0], [0, 1, 0], [0, 0, 0]]) + + sdf = m.compute_sdf(obstacles) + + # Verify basic properties of SDF + assert sdf.shape == obstacles.shape, "SDF should have the same shape as input map" + assert np.all(np.isfinite(sdf)), "SDF should not contain infinite values" + + # Verify SDF value is negative at obstacle position + assert sdf[1, 1] < 0, "SDF value should be negative at obstacle position" + + # Verify SDF value is positive in free space + assert sdf[0, 0] > 0, "SDF value should be positive in free space" + + +def test_compute_udf(): + """Test the computation of Unsigned Distance Field (UDF)""" + # Create obstacle map for testing + obstacles = np.array([[0, 0, 0], [0, 1, 0], [0, 0, 0]]) + + udf = m.compute_udf(obstacles) + + # Verify basic properties of UDF + assert udf.shape == obstacles.shape, "UDF should have the same shape as input map" + assert np.all(np.isfinite(udf)), "UDF should not contain infinite values" + assert np.all(udf >= 0), "All UDF values should be non-negative" + + # Verify UDF value is 0 at obstacle position + assert np.abs(udf[1, 1]) < 1e-10, "UDF value should be 0 at obstacle position" + + # Verify UDF value is 1 for adjacent cells + assert np.abs(udf[0, 1] - 1.0) < 1e-10, ( + "UDF value should be 1 for cells adjacent to obstacle" + ) + assert np.abs(udf[1, 0] - 1.0) < 1e-10, ( + "UDF value should be 1 for cells adjacent to obstacle" + ) + assert np.abs(udf[1, 2] - 1.0) < 1e-10, ( + "UDF value should be 1 for cells adjacent to obstacle" + ) + assert np.abs(udf[2, 1] - 1.0) < 1e-10, ( + "UDF value should be 1 for cells adjacent to obstacle" + ) + + +def test_dt(): + """Test the computation of 1D distance transform""" + # Create test data + d = np.array([m.INF, 0, m.INF]) + m.dt(d) + + # Verify distance transform results + assert np.all(np.isfinite(d)), ( + "Distance transform result should not contain infinite values" + ) + assert d[1] == 0, "Distance at obstacle position should be 0" + assert d[0] == 1, "Distance at adjacent position should be 1" + assert d[2] == 1, "Distance at adjacent position should be 1" + + +def test_compute_sdf_empty(): + """Test SDF computation with empty map""" + # Test with empty map (no obstacles) + empty_map = np.zeros((5, 5)) + sdf = m.compute_sdf(empty_map) + + assert np.all(sdf > 0), "All SDF values should be positive for empty map" + assert sdf.shape == empty_map.shape, "Output shape should match input shape" + + +def test_compute_sdf_full(): + """Test SDF computation with fully occupied map""" + # Test with fully occupied map + full_map = np.ones((5, 5)) + sdf = m.compute_sdf(full_map) + + assert np.all(sdf < 0), "All SDF values should be negative for fully occupied map" + assert sdf.shape == full_map.shape, "Output shape should match input shape" + + +def test_compute_udf_invalid_input(): + """Test UDF computation with invalid input values""" + # Test with invalid values (not 0 or 1) + invalid_map = np.array([[0, 2, 0], [0, -1, 0], [0, 0.5, 0]]) + + try: + m.compute_udf(invalid_map) + assert False, "Should raise ValueError for invalid input values" + except ValueError: + pass + + +def test_compute_udf_empty(): + """Test UDF computation with empty map""" + # Test with empty map + empty_map = np.zeros((5, 5)) + udf = m.compute_udf(empty_map) + + assert np.all(udf > 0), "All UDF values should be positive for empty map" + assert np.all(np.isfinite(udf)), "UDF should not contain infinite values" + + +def test_main(): + """Test the execution of main function""" + m.ENABLE_PLOT = False + m.main() + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From 2234abf63d07e5496e37c1b57a1b927c303272a8 Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Thu, 6 Feb 2025 12:05:20 +0800 Subject: [PATCH 215/312] fix: DistanceMap doc autofunction (#1143) --- docs/modules/3_mapping/distance_map/distance_map_main.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/modules/3_mapping/distance_map/distance_map_main.rst b/docs/modules/3_mapping/distance_map/distance_map_main.rst index 45273cd3bb..0ef9e3022f 100644 --- a/docs/modules/3_mapping/distance_map/distance_map_main.rst +++ b/docs/modules/3_mapping/distance_map/distance_map_main.rst @@ -17,9 +17,9 @@ The algorithm is demonstrated on a simple 2D grid with obstacles: API ~~~ -.. autofunction:: PathPlanning.DistanceMap.distance_map.compute_sdf +.. autofunction:: Mapping.DistanceMap.distance_map.compute_sdf -.. autofunction:: PathPlanning.DistanceMap.distance_map.compute_udf +.. autofunction:: Mapping.DistanceMap.distance_map.compute_udf References ~~~~~~~~~~ From 0676dfd67e099198c34c485e176b077ad6fa7374 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 6 Feb 2025 15:16:17 +0900 Subject: [PATCH 216/312] update introduction (#1144) --- .../python_for_robotics_main.rst | 57 +++++++++++++++++-- 1 file changed, 51 insertions(+), 6 deletions(-) diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 1ad5316f53..2f89f0c7b5 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,11 +1,13 @@ Python for Robotics ---------------------- +This section explains the Python itself and features for Robotics. + Python for general-purpose programming ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Python `_ is an general-purpose programming language developed by -`Guido van Rossum `_ in the late 1980s. +`Guido van Rossum `_ from the late 1980s. It features as follows: @@ -17,7 +19,7 @@ It features as follows: #. Batteries included #. Interoperability for C and Fortran -Due to these features, Python is the most popular programming language +Due to these features, Python is one of the most popular programming language for educational purposes for programming beginners. Python for Scientific Computing @@ -29,9 +31,9 @@ For example, #. High-level and interpreted features enable scientists to focus on their problems without dealing with low-level programming tasks like memory management. #. Code readability, rapid prototyping, and batteries included features enables scientists who are not professional programmers, to solve their problems easily. -#. The interoperability to wrap C and Fortran libraries enables scientists to access already existed powerful scientific computing libraries. +#. The interoperability to wrap C and Fortran libraries enables scientists to access already existed powerful and optimized scientific computing libraries. -To address the more needs of scientific computing, many libraries have been developed. +To address the more needs of scientific computing, many fundamental scientific computation libraries have been developed based on the upper features. - `NumPy `_ is the fundamental package for scientific computing with Python. - `SciPy `_ is a library that builds on NumPy and provides a large number of functions that operate on NumPy arrays and are useful for different types of scientific and engineering applications. @@ -39,12 +41,55 @@ To address the more needs of scientific computing, many libraries have been deve - `Pandas `_ is a fast, powerful, flexible, and easy-to-use open-source data analysis and data manipulation library built on top of NumPy. - `SymPy `_ is a Python library for symbolic mathematics. -And more domain-specific libraries have been developed: +Also, more domain-specific libraries have been developed based on these fundamental libraries: + - `Scikit-learn `_ is a free software machine learning library for the Python programming language. - `Scikit-image `_ is a collection of algorithms for image processing. +- `Networkx `_ is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. +- `SunPy `_ is a community-developed free and open-source software package for solar physics. +- `Astropy `_ is a community-developed free and open-source software package for astronomy. + +Currently, Python is one of the most popular programming languages for scientific computing. Python for Robotics ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -TBD +Scientific computation routine are very important for robotics. +For example, matrix operation, optimization, and visualization are fundamental for robotics. + +Python has become an increasingly popular language in robotics due to its versatility, readability, and extensive libraries. Here's a breakdown of why Python is a great choice for robotics development: + +Advantages of Python for Robotics: + +Simplicity and Readability: Python's syntax is clear and concise, making it easier to learn and write code. This is crucial in robotics where complex algorithms and control logic are involved. +Extensive Libraries: Python boasts a rich collection of libraries specifically designed for robotics: +ROS (Robot Operating System): ROS, a widely used framework for robotics development, has strong Python support (rospy). This allows developers to easily create nodes, manage communication between different parts of a robot system, and utilize various ROS tools. +OpenCV: This powerful library provides tools for computer vision tasks like image processing, object detection, and motion tracking, essential for robots that perceive and interact with their environment. +NumPy and SciPy: These libraries offer efficient numerical computation and scientific tools, enabling developers to implement complex mathematical models and control algorithms. +Scikit-learn: This library provides machine learning algorithms, which are increasingly important in robotics for tasks like perception, planning, and control. +Cross-Platform Compatibility: Python code can run on various operating systems (Windows, macOS, Linux), providing flexibility in choosing hardware platforms for robotics projects. +Large Community and Support: Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. +Use Cases of Python in Robotics: + +Robot Control: Python can be used to write control algorithms for robot manipulators, mobile robots, and other robotic systems. +Perception: Python, combined with libraries like OpenCV, enables robots to process sensor data (camera images, lidar data) to understand their surroundings. +Path Planning: Python algorithms can be used to plan collision-free paths for robots to navigate in complex environments. +Machine Learning: Python libraries like Scikit-learn empower robots to learn from data and improve their performance in tasks like object recognition and manipulation. +Simulation: Python can be used to create simulated environments for testing and developing robot algorithms before deploying them on real hardware. +Examples of Python in Robotics: + +Autonomous Navigation: Python is used in self-driving cars and other autonomous vehicles for tasks like perception, localization, and path planning. +Industrial Robotics: Python is employed in manufacturing for robot control, quality inspection, and automation. +Service Robotics: Python powers robots that perform tasks like cleaning, delivery, and customer service in various environments. +Research and Education: Python is a popular choice in robotics research and education due to its ease of use and versatility. +Getting Started with Python in Robotics: + +Learn Python Basics: Familiarize yourself with Python syntax, data structures, and programming concepts. +Explore Robotics Libraries: Dive into libraries like ROS, OpenCV, and others relevant to your robotics interests. +Practice with Projects: Start with small projects to gain hands-on experience, gradually increasing complexity. +Join the Community: Engage with the robotics community through online forums, workshops, and conferences to learn from others and share your knowledge. +In conclusion, Python's simplicity, extensive libraries, and strong community support make it an ideal language for robotics development. Whether you're a beginner or an experienced programmer, Python offers the tools and resources you need to build innovative and capable robots. + +Python is used for this `PythonRobotics` project because of the above features +to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. From 9936f344635e146b9a2ee402ab1672b4e7216d6e Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 7 Feb 2025 13:32:11 +0900 Subject: [PATCH 217/312] update introduction (#1145) --- .../definition_of_robotics_main.rst | 7 +++ .../python_for_robotics_main.rst | 63 +++++++++---------- 2 files changed, 37 insertions(+), 33 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 2f31834017..fd151e3f20 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -5,3 +5,10 @@ In recent years, autonomous navigation technologies have received huge attention in many fields. Such fields include, autonomous driving[22], drone flight navigation, and other transportation systems. + +Examples of Python in Robotics: + +Autonomous Navigation: Python is used in self-driving cars and other autonomous vehicles for tasks like perception, localization, and path planning. +Industrial Robotics: Python is employed in manufacturing for robot control, quality inspection, and automation. +Service Robotics: Python powers robots that perform tasks like cleaning, delivery, and customer service in various environments. +Research and Education: Python is a popular choice in robotics research and education due to its ease of use and versatility. \ No newline at end of file diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 2f89f0c7b5..90edd5dc0c 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -40,55 +40,52 @@ To address the more needs of scientific computing, many fundamental scientific c - `Matplotlib `_ is a plotting library for the Python programming language and its numerical mathematics extension NumPy. - `Pandas `_ is a fast, powerful, flexible, and easy-to-use open-source data analysis and data manipulation library built on top of NumPy. - `SymPy `_ is a Python library for symbolic mathematics. +- `CVXPy `_ is a Python-embedded modeling language for convex optimization problems. Also, more domain-specific libraries have been developed based on these fundamental libraries: - `Scikit-learn `_ is a free software machine learning library for the Python programming language. - `Scikit-image `_ is a collection of algorithms for image processing. -- `Networkx `_ is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. +- `Networkx `_ is a package for the creation, manipulation for complex networks. - `SunPy `_ is a community-developed free and open-source software package for solar physics. - `Astropy `_ is a community-developed free and open-source software package for astronomy. Currently, Python is one of the most popular programming languages for scientific computing. Python for Robotics -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^ -Scientific computation routine are very important for robotics. -For example, matrix operation, optimization, and visualization are fundamental for robotics. +Python has become an increasingly popular language in robotics. -Python has become an increasingly popular language in robotics due to its versatility, readability, and extensive libraries. Here's a breakdown of why Python is a great choice for robotics development: +These are advantages of Python for Robotics: -Advantages of Python for Robotics: +Simplicity and Readability +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python's syntax is clear and concise, making it easier to learn and write code. +This is crucial in robotics where complex algorithms and control logic are involved. -Simplicity and Readability: Python's syntax is clear and concise, making it easier to learn and write code. This is crucial in robotics where complex algorithms and control logic are involved. -Extensive Libraries: Python boasts a rich collection of libraries specifically designed for robotics: + +Extensive libraries for scientific computation. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Scientific computation routine are fundamental for robotics. +For example: + +- Matrix operation is needed for rigid body transformation, state estimation, and model based control. +- Optimization is needed for optimization based SLAM, optimal path planning, and optimal control. +- Visualization is needed for robot teleoperation, debugging, and simulation. + +ROS supports Python +~~~~~~~~~~~~~~~~~~~~~~~~~~~ ROS (Robot Operating System): ROS, a widely used framework for robotics development, has strong Python support (rospy). This allows developers to easily create nodes, manage communication between different parts of a robot system, and utilize various ROS tools. -OpenCV: This powerful library provides tools for computer vision tasks like image processing, object detection, and motion tracking, essential for robots that perceive and interact with their environment. -NumPy and SciPy: These libraries offer efficient numerical computation and scientific tools, enabling developers to implement complex mathematical models and control algorithms. -Scikit-learn: This library provides machine learning algorithms, which are increasingly important in robotics for tasks like perception, planning, and control. -Cross-Platform Compatibility: Python code can run on various operating systems (Windows, macOS, Linux), providing flexibility in choosing hardware platforms for robotics projects. -Large Community and Support: Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. -Use Cases of Python in Robotics: - -Robot Control: Python can be used to write control algorithms for robot manipulators, mobile robots, and other robotic systems. -Perception: Python, combined with libraries like OpenCV, enables robots to process sensor data (camera images, lidar data) to understand their surroundings. -Path Planning: Python algorithms can be used to plan collision-free paths for robots to navigate in complex environments. -Machine Learning: Python libraries like Scikit-learn empower robots to learn from data and improve their performance in tasks like object recognition and manipulation. -Simulation: Python can be used to create simulated environments for testing and developing robot algorithms before deploying them on real hardware. -Examples of Python in Robotics: - -Autonomous Navigation: Python is used in self-driving cars and other autonomous vehicles for tasks like perception, localization, and path planning. -Industrial Robotics: Python is employed in manufacturing for robot control, quality inspection, and automation. -Service Robotics: Python powers robots that perform tasks like cleaning, delivery, and customer service in various environments. -Research and Education: Python is a popular choice in robotics research and education due to its ease of use and versatility. -Getting Started with Python in Robotics: - -Learn Python Basics: Familiarize yourself with Python syntax, data structures, and programming concepts. -Explore Robotics Libraries: Dive into libraries like ROS, OpenCV, and others relevant to your robotics interests. -Practice with Projects: Start with small projects to gain hands-on experience, gradually increasing complexity. -Join the Community: Engage with the robotics community through online forums, workshops, and conferences to learn from others and share your knowledge. -In conclusion, Python's simplicity, extensive libraries, and strong community support make it an ideal language for robotics development. Whether you're a beginner or an experienced programmer, Python offers the tools and resources you need to build innovative and capable robots. + +Cross-Platform Compatibility +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python code can run on various operating systems (Windows, macOS, Linux), providing flexibility in choosing hardware platforms for robotics projects. + +Large Community and Support +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. + Python is used for this `PythonRobotics` project because of the above features to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. From 15e106839285033e1fa68cbed6f14e219f3af88f Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 7 Feb 2025 13:42:56 +0900 Subject: [PATCH 218/312] Update CONTRIBUTING.md --- CONTRIBUTING.md | 24 +++--------------------- 1 file changed, 3 insertions(+), 21 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 91f6dfa822..3bcc499e6a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,23 +1,5 @@ -# Contributing to Python +# Contributing -:+1::tada: First of off, thanks very much for taking the time to contribute! :tada::+1: +:+1::tada: First of all, thank you very much for taking the time to contribute! :tada::+1: -The following is a set of guidelines for contributing to PythonRobotics. - -These are mostly guidelines, not rules. - -Use your best judgment, and feel free to propose changes to this document in a pull request. - -# Before contributing - -## Taking a look at the paper. - -Please check this paper to understand the philosophy of this project. - -- [\[1808\.10703\] PythonRobotics: a Python code collection of robotics algorithms](https://arxiv.org/abs/1808.10703) ([BibTeX](https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib)) - -## Check your Python version. - -We only accept a PR for Python 3.8.x or higher. - -We will not accept a PR for Python 2.x. +Please check this document for contribution: [How to contribute — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/modules/0_getting_started/3_how_to_contribute.html) From a8f3388bbe80e41655acedc44c2cbb86d011fb48 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 9 Feb 2025 21:00:02 +0900 Subject: [PATCH 219/312] update introduction (#1146) --- .../3_how_to_contribute_main.rst | 37 ++++++++++++++----- .../python_for_robotics_main.rst | 29 ++++++++++++--- 2 files changed, 51 insertions(+), 15 deletions(-) diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 6e5c1be8ee..874564cbb8 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -9,10 +9,30 @@ There are several ways to contribute to this project as below: #. `Adding missed documentations for existing examples`_ #. `Supporting this project`_ +Before contributing +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Please check following items before contributing: + +Understanding this project +--------------------------- + +Please check this :ref:`What is PythonRobotics?` section and this paper +`PythonRobotics: a Python code collection of robotics algorithms`_ +to understand the philosophies of this project. + +.. _`PythonRobotics: a Python code collection of robotics algorithms`: https://arxiv.org/abs/1808.10703 + +Check your Python version. +--------------------------- + +We only accept a PR for Python 3.12.x or higher. + +We will not accept a PR for Python 2.x. .. _`Adding a new algorithm example`: -Adding a new algorithm example +1. Adding a new algorithm example ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ This is a step by step manual to add a new algorithm example. @@ -112,8 +132,8 @@ Note that this is my hobby project; I appreciate your patience during the review .. _`Reporting and fixing a defect`: -Reporting and fixing a defect -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +2. Reporting and fixing a defect +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reporting and fixing a defect is also great contribution. @@ -136,8 +156,8 @@ This doc `submit a pull request`_ can be helpful to submit a pull request. .. _`Adding missed documentations for existing examples`: -Adding missed documentations for existing examples -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +3. Adding missed documentations for existing examples +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Adding the missed documentations for existing examples is also great contribution. @@ -150,8 +170,8 @@ This doc `how to write doc`_ can be helpful to write documents. .. _`Supporting this project`: -Supporting this project -^^^^^^^^^^^^^^^^^^^^^^^^ +4. Supporting this project +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Supporting this project financially is also a great contribution!!. @@ -165,8 +185,7 @@ If you or your company would like to support this project, please consider: If you would like to support us in some other way, please contact with creating an issue. -Current Major Sponsors ------------------------ +Current Major Sponsors: #. `JetBrains`_ : They are providing a free license of their IDEs for this OSS development. #. `1Password`_ : They are providing a free license of their 1Password team license for this OSS project. diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 90edd5dc0c..65b1705150 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,6 +1,8 @@ Python for Robotics ---------------------- +Python is used for this `PythonRobotics` project because of the above features +to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. This section explains the Python itself and features for Robotics. Python for general-purpose programming @@ -76,7 +78,27 @@ For example: ROS supports Python ~~~~~~~~~~~~~~~~~~~~~~~~~~~ -ROS (Robot Operating System): ROS, a widely used framework for robotics development, has strong Python support (rospy). This allows developers to easily create nodes, manage communication between different parts of a robot system, and utilize various ROS tools. +`ROS`_ (Robot Operating System) is an open-source and widely used framework for robotics development. +It is designed to help developping complicated robotic applications. +ROS provides essential tools, libraries, and drivers to simplify robot programming and integration. + +Key Features of ROS: + +- Modular Architecture – Uses a node-based system where different components (nodes) communicate via messages. +- Hardware Abstraction – Supports various robots, sensors, and actuators, making development more flexible. +- Powerful Communication System – Uses topics, services, and actions for efficient data exchange between components. +- Rich Ecosystem – Offers many pre-built packages for navigation, perception, and manipulation. +- Multi-language Support – Primarily uses Python and C++, but also supports other languages. +- Simulation & Visualization – Tools like Gazebo (for simulation) and RViz (for visualization) aid in development and testing. +- Scalability & Community Support – Widely used in academia and industry, with a large open-source community. + +ROS has strong Python support (`rospy`_ for ROS1 and `rclpy`_ for ROS2). +This allows developers to easily create nodes, manage communication between +different parts of a robot system, and utilize various ROS tools. + +.. _`ROS`: https://www.ros.org/ +.. _`rospy`: http://wiki.ros.org/rospy +.. _`rclpy`: https://docs.ros.org/en/jazzy/Tutorials/Beginner-Client-Libraries/Writing-A-Simple-Py-Publisher-And-Subscriber.html Cross-Platform Compatibility ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -85,8 +107,3 @@ Python code can run on various operating systems (Windows, macOS, Linux), provid Large Community and Support ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. - - -Python is used for this `PythonRobotics` project because of the above features -to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. - From e304f07a997bf40977a004ac2a66f476aa2aa861 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 10 Feb 2025 11:21:19 +0900 Subject: [PATCH 220/312] update introduction (#1147) --- .../python_for_robotics_main.rst | 32 +++++++++++++++++-- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index 65b1705150..b677d2c59b 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -1,9 +1,10 @@ Python for Robotics ---------------------- -Python is used for this `PythonRobotics` project because of the above features -to achieve the purpose of this project described in the :ref:`What is PythonRobotics?`. -This section explains the Python itself and features for Robotics. +A programing language, Python is used for this `PythonRobotics` project +to achieve the purposes of this project described in the :ref:`What is PythonRobotics?`. + +This section explains the Python itself and features for science computing Robotics. Python for general-purpose programming ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -107,3 +108,28 @@ Python code can run on various operating systems (Windows, macOS, Linux), provid Large Community and Support ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Python has a vast and active community, offering ample resources, tutorials, and support for developers. This is invaluable when tackling challenges in robotics development. + +Situations which Python is NOT suitable for Robotics +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +We explained the advantages of Python for robotics. +However, Python is not always the best choice for robotics development. + +These are situations where Python is NOT suitable for robotics: + +High-speed real-time control +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python is an interpreted language, which means it is slower than compiled languages like C++. +This can be a disadvantage when real-time control is required, +such as in high-speed motion control or safety-critical systems. + +So, for these applications, we recommend to understand the each algorithm you +needed using this project and implement it in other suitable languages like C++. + +Resource-constrained systems +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Python is a high-level language that requires more memory and processing power +compared to low-level languages. +So, it is difficult to run Python on resource-constrained systems like +microcontrollers or embedded devices. +In such cases, C or C++ is more suitable for these applications. From 610f35ff58e6535efa619f9ed73a113c6ca2c7f7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Feb 2025 10:42:10 +0900 Subject: [PATCH 221/312] build(deps): bump mypy from 1.14.1 to 1.15.0 in /requirements (#1148) Bumps [mypy](https://github.com/python/mypy) from 1.14.1 to 1.15.0. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.14.1...v1.15.0) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9d4e7deb4d..178046ac0d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -4,5 +4,5 @@ matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test -mypy == 1.14.1 # For unit test +mypy == 1.15.0 # For unit test ruff == 0.9.4 # For unit test From ba307673013376204ceb5a6def16da0e3a86a15d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Feb 2025 11:35:28 +0900 Subject: [PATCH 222/312] build(deps): bump ruff from 0.9.4 to 0.9.6 in /requirements (#1149) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.4 to 0.9.6. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.4...0.9.6) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 178046ac0d..f5f674d7d2 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.4 # For unit test +ruff == 0.9.6 # For unit test From b298609b2832c8029baa98b2d3906abce0263ec4 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 11 Feb 2025 21:15:34 +0900 Subject: [PATCH 223/312] update introduction doc (#1151) --- .../definition_of_robotics_main.rst | 81 ++++++++++++++++--- .../python_for_robotics_main.rst | 2 +- .../technology_for_robotics_main.rst | 9 +++ 3 files changed, 82 insertions(+), 10 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index fd151e3f20..f6fba646b4 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -1,14 +1,77 @@ Definition of Robotics ---------------------- -In recent years, autonomous navigation technologies have received huge -attention in many fields. -Such fields include, autonomous driving[22], drone flight navigation, -and other transportation systems. +What is Robotics? +^^^^^^^^^^^^^^^^^^ -Examples of Python in Robotics: +Robot is a machine that can perform tasks automatically or semi-autonomously. +Robotics is the study of robots. +The field of robotics has wide areas of technologies such as mechanical engineering, +electrical engineering, computer science, and artificial intelligence (AI), +to create machines that can perform tasks autonomously or semi-autonomously. + +The History of Robots +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +This timeline highlights key milestones in the history of robotics: + +Ancient and Early Concepts (Before 1500s) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The idea of **automated machines** has existed for thousands of years. Ancient civilizations imagined mechanical beings: + +- **Ancient Greece (4th Century BC)** – Greek engineer **Hero of Alexandria** designed early **automata** (self-operating machines) powered by water or air. +- **Chinese and Arabic Automata (9th–13th Century)** – Inventors like **Al-Jazari** created intricate mechanical devices, including water clocks and humanoid robots. + +The Birth of Modern Robotics (1500s–1800s) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- **Leonardo da Vinci’s Robot (1495)** – Designed a humanoid knight with mechanical movement. +- **Jacques de Vaucanson’s Automata (1738)** – Created robotic figures like a mechanical duck that could "eat" and "digest." +- **Industrial Revolution (18th–19th Century)** – Machines began replacing human labor in factories, setting the foundation for automation. + +The Rise of Industrial Robots (1900s–1950s) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- **The Term “Robot” (1921)** – Czech writer **Karel Čapek** introduced the word *“robot”* in his play *R.U.R. (Rossum’s Universal Robots)*. +- **Early Cybernetics (1940s–1950s)** – Scientists like **Norbert Wiener** developed theories of self-regulating machines, influencing modern robotics. + +The Birth of Modern Robotics (1950s–1980s) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- **First Industrial Robot (1961)** – *Unimate*, created by **George Devol and Joseph Engelberger**, was the first programmable robot used in a factory. +- **Rise of AI & Autonomous Robots (1970s–1980s)** – Researchers developed mobile robots like **Shakey** (Stanford, 1966) and AI-based control systems. + +Advanced Robotics and AI Integration (1990s–Present) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- **Autonomous Vehicles & Drones** – Self-driving cars and UAVs (unmanned aerial vehicles) became more advanced. +- **Medical Robotics** – Robots like **da Vinci Surgical System** revolutionized healthcare. +- **Personal Robots** – Devices like **Roomba** (vacuum robot) and **Sophia** (AI humanoid) became popular. +- **Collaborative Robots (Cobots)** – Robots started working alongside humans in industries. + +Key Components of Robotics +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Robotics consists of several essential components: + +#. Sensors – Gather information from the environment (e.g., cameras, LiDAR, gyro, accelerometer, wheel encoders). +#. Actuators – Enable movement and interaction with the world (e.g., motors, hydraulic systems). +#. Computers – Process sensor data and make decisions (e.g., micro-controllers, CPUs, GPUs). +#. Power Supply – Provides energy to run the robot (e.g., batteries, solar power). +#. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, machine learning models, localization, mapping, path planning, control). + +This project, PythonRobotics, focuses on the software and algorithms part of robotics. + +Applications of Robots +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Robots come in various forms depending on their purpose: + +#. 🤖 Industrial Robots – Used in manufacturing (e.g., robotic arms in manufacturing factories). +#. 🏠 Service Robots – Assist in daily life (e.g., vacuum robots, delivery robots). +#. 🚗 Autonomous Vehicles – Self-driving cars and drones. +#. 👨‍⚕️ Medical Robots – Assist in surgeries and healthcare. +#. 🚀 Space & Exploration Robots – Used for planetary exploration (e.g., NASA’s Mars rovers). +#. 🐶 Humanoid & Social Robots – Designed to interact with humans (e.g., ASIMO, Sophia). -Autonomous Navigation: Python is used in self-driving cars and other autonomous vehicles for tasks like perception, localization, and path planning. -Industrial Robotics: Python is employed in manufacturing for robot control, quality inspection, and automation. -Service Robotics: Python powers robots that perform tasks like cleaning, delivery, and customer service in various environments. -Research and Education: Python is a popular choice in robotics research and education due to its ease of use and versatility. \ No newline at end of file diff --git a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst index b677d2c59b..c47c122853 100644 --- a/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst +++ b/docs/modules/1_introduction/2_python_for_robotics/python_for_robotics_main.rst @@ -4,7 +4,7 @@ Python for Robotics A programing language, Python is used for this `PythonRobotics` project to achieve the purposes of this project described in the :ref:`What is PythonRobotics?`. -This section explains the Python itself and features for science computing Robotics. +This section explains the Python itself and features for science computing and robotics. Python for general-purpose programming ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst index 4dd1d1842f..93dc9e3466 100644 --- a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst @@ -1,6 +1,15 @@ Technology for Robotics ------------------------- + +Autonomous Navigation +^^^^^^^^^^^^^^^^^^^^^^^^ + +In recent years, autonomous navigation technologies have received huge +attention in many fields. +Such fields include, autonomous driving[22], drone flight navigation, +and other transportation systems. + An autonomous navigation system is a system that can move to a goal over long periods of time without any external control by an operator. The system requires a wide range of technologies: From be608f067cbd96f34955b81d3e5be9e22a46f588 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Wed, 12 Feb 2025 21:51:29 +0900 Subject: [PATCH 224/312] update introduction doc (#1152) --- .../definition_of_robotics_main.rst | 38 ++++++++++++++----- .../technology_for_robotics_main.rst | 3 ++ 2 files changed, 31 insertions(+), 10 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index f6fba646b4..63525057fe 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -1,14 +1,24 @@ Definition of Robotics ---------------------- +This section explains the definition, history, key components, and applications of robotics. + What is Robotics? ^^^^^^^^^^^^^^^^^^ Robot is a machine that can perform tasks automatically or semi-autonomously. Robotics is the study of robots. -The field of robotics has wide areas of technologies such as mechanical engineering, -electrical engineering, computer science, and artificial intelligence (AI), -to create machines that can perform tasks autonomously or semi-autonomously. + +The word “robot” comes from the Czech word “robota,” which means “forced labor” or “drudgery.” +It was first used in the 1920 science fiction play `R.U.R.`_ (Rossum’s Universal Robots) +by the Czech writer `Karel Čapek`_. +In the play, robots were artificial workers created to serve humans, but they eventually rebelled. + +Over time, “robot” came to refer to machines or automated systems that can perform tasks, +often with some level of intelligence or autonomy. + +.. _`R.U.R.`: https://thereader.mitpress.mit.edu/origin-word-robot-rur/ +.. _`Karel Čapek`: https://en.wikipedia.org/wiki/Karel_%C4%8Capek The History of Robots ^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -18,22 +28,30 @@ This timeline highlights key milestones in the history of robotics: Ancient and Early Concepts (Before 1500s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The idea of **automated machines** has existed for thousands of years. Ancient civilizations imagined mechanical beings: +The idea of **automated machines** has existed for thousands of years. +Ancient civilizations imagined mechanical beings: + +- **Ancient Greece (4th Century BC)** – Greek engineer `Hero of Alexandria`_ designed early **automata** (self-operating machines) powered by water or air. +- **Chinese and Arabic Automata (9th–13th Century)** – Inventors like `Ismail Al-Jazari`_ created intricate mechanical devices, including water clocks and automated moving peacocks driven by hydropower. -- **Ancient Greece (4th Century BC)** – Greek engineer **Hero of Alexandria** designed early **automata** (self-operating machines) powered by water or air. -- **Chinese and Arabic Automata (9th–13th Century)** – Inventors like **Al-Jazari** created intricate mechanical devices, including water clocks and humanoid robots. +.. _`Hero of Alexandria`: https://en.wikipedia.org/wiki/Hero_of_Alexandria +.. _`Ismail Al-Jazari`: https://en.wikipedia.org/wiki/Ismail_al-Jazari The Birth of Modern Robotics (1500s–1800s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- **Leonardo da Vinci’s Robot (1495)** – Designed a humanoid knight with mechanical movement. -- **Jacques de Vaucanson’s Automata (1738)** – Created robotic figures like a mechanical duck that could "eat" and "digest." -- **Industrial Revolution (18th–19th Century)** – Machines began replacing human labor in factories, setting the foundation for automation. +- `Leonardo da Vinci’s Robot`_ (1495) – Designed a humanoid knight with mechanical movement. +- `Jacques de Vaucanson’s Digesting Duck`_ (1738) – Created robotic figures like a mechanical duck that could "eat" and "digest." +- `Industrial Revolution`_ (18th–19th Century) – Machines began replacing human labor in factories, setting the foundation for automation. + +.. _`Leonardo da Vinci’s Robot`: https://en.wikipedia.org/wiki/Leonardo%27s_robot +.. _`Jacques de Vaucanson’s Digesting Duck`: https://en.wikipedia.org/wiki/Jacques_de_Vaucanson +.. _`Industrial Revolution`: https://en.wikipedia.org/wiki/Industrial_Revolution The Rise of Industrial Robots (1900s–1950s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- **The Term “Robot” (1921)** – Czech writer **Karel Čapek** introduced the word *“robot”* in his play *R.U.R. (Rossum’s Universal Robots)*. +- **The Term “Robot” (1921)** – Czech writer `Karel Čapek`_ introduced the word *“robot”* in his play `R.U.R.`_ (Rossum’s Universal Robots). - **Early Cybernetics (1940s–1950s)** – Scientists like **Norbert Wiener** developed theories of self-regulating machines, influencing modern robotics. The Birth of Modern Robotics (1950s–1980s) diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst index 93dc9e3466..e460059e20 100644 --- a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst @@ -1,6 +1,9 @@ Technology for Robotics ------------------------- +The field of robotics needs wide areas of technologies such as mechanical engineering, +electrical engineering, computer science, and artificial intelligence (AI). + Autonomous Navigation ^^^^^^^^^^^^^^^^^^^^^^^^ From 1ecc154fbaf9bc2342671fe93a305e8f0e3f510f Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 13 Feb 2025 17:19:03 +0900 Subject: [PATCH 225/312] update contribution link in README.md to fix invalid link (#1154) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cb1816c2b5..818d7b0d4e 100644 --- a/README.md +++ b/README.md @@ -617,7 +617,7 @@ This is a list of user's comment and references:[users\_comments](https://github Any contribution is welcome!! -Please check this document:[How To Contribute — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/how_to_contribute.html) +Please check this document:[How To Contribute — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/modules/0_getting_started/3_how_to_contribute.html) # Citing From 156483000524488d64687a853ac030e8d57c18a6 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 13 Feb 2025 17:56:17 +0900 Subject: [PATCH 226/312] update robotics definition document to enhance references and clarity (#1155) --- .../definition_of_robotics_main.rst | 29 ++++++++++++++----- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 63525057fe..265814e068 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -52,21 +52,36 @@ The Rise of Industrial Robots (1900s–1950s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - **The Term “Robot” (1921)** – Czech writer `Karel Čapek`_ introduced the word *“robot”* in his play `R.U.R.`_ (Rossum’s Universal Robots). -- **Early Cybernetics (1940s–1950s)** – Scientists like **Norbert Wiener** developed theories of self-regulating machines, influencing modern robotics. +- **Early Cybernetics (1940s–1950s)** – Scientists like `Norbert Wiener`_ developed theories of self-regulating machines, influencing modern robotics (Cybernetics). + +.. _`Norbert Wiener`: https://en.wikipedia.org/wiki/Norbert_Wiener The Birth of Modern Robotics (1950s–1980s) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- **First Industrial Robot (1961)** – *Unimate*, created by **George Devol and Joseph Engelberger**, was the first programmable robot used in a factory. -- **Rise of AI & Autonomous Robots (1970s–1980s)** – Researchers developed mobile robots like **Shakey** (Stanford, 1966) and AI-based control systems. +- **First Industrial Robot (1961)** – `Unimate`_, created by `George Devol`_ and `Joseph Engelberger`_, was the first programmable robot used in a factory. +- **Rise of AI & Autonomous Robots (1970s–1980s)** – Researchers developed mobile robots like `Shakey`_ (Stanford, 1966) and AI-based control systems. + +.. _`Unimate`: https://en.wikipedia.org/wiki/Unimate +.. _`George Devol`: https://en.wikipedia.org/wiki/George_Devol +.. _`Joseph Engelberger`: https://en.wikipedia.org/wiki/Joseph_Engelberger +.. _`Shakey`: https://en.wikipedia.org/wiki/Shakey_the_robot Advanced Robotics and AI Integration (1990s–Present) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- **Autonomous Vehicles & Drones** – Self-driving cars and UAVs (unmanned aerial vehicles) became more advanced. -- **Medical Robotics** – Robots like **da Vinci Surgical System** revolutionized healthcare. -- **Personal Robots** – Devices like **Roomba** (vacuum robot) and **Sophia** (AI humanoid) became popular. -- **Collaborative Robots (Cobots)** – Robots started working alongside humans in industries. +- **Autonomous Vehicles** – Self-driving cars for robo taxi like `Waymo`_ and autonomous haulage system in mining like `AHS`_ became more advanced and bisiness-ready. +- **Medical Robotics** – Robots like `da Vinci Surgical System`_ revolutionized healthcare. +- **Personal Robots** – Devices like `Roomba`_ (vacuum robot) and `Sophia`_ (AI humanoid) became popular. +- **Service Robots** - Assistive robots like serving robots in restaurants and hotels like `Bellabot`_. +- **Collaborative Robots (Drones)** – Collaborative robots like UAV (Unmanned Aerial Vehicle) in drone shows and delivery services. + +.. _`Waymo`: https://waymo.com/ +.. _`AHS`: https://www.futurebridge.com/industry/perspectives-industrial-manufacturing/autonomous-haulage-systems-the-future-of-mining-operations/ +.. _`da Vinci Surgical System`: https://en.wikipedia.org/wiki/Da_Vinci_Surgical_System +.. _`Roomba`: https://en.wikipedia.org/wiki/Roomba +.. _`Sophia`: https://en.wikipedia.org/wiki/Sophia_(robot) +.. _`Bellabot`: https://www.pudurobotics.com/en Key Components of Robotics ^^^^^^^^^^^^^^^^^^^^^^^^^^^ From 77ad3344b5e9df26ca370725d3921dd354c755b1 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 14 Feb 2025 21:20:35 +0900 Subject: [PATCH 227/312] update robotics definition document to improve clarity and add references (#1157) --- .../definition_of_robotics_main.rst | 28 +++++++------------ 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 265814e068..f54d4d41fa 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -70,12 +70,17 @@ The Birth of Modern Robotics (1950s–1980s) Advanced Robotics and AI Integration (1990s–Present) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +- **Industrial Robots** – Advanced robots like `Baxter`_ and `Amazon Robotics`_ revolutionized manufacturing and logistics. - **Autonomous Vehicles** – Self-driving cars for robo taxi like `Waymo`_ and autonomous haulage system in mining like `AHS`_ became more advanced and bisiness-ready. +- **Exploration Robots** – Used for planetary exploration (e.g., NASA’s `Mars rovers`_). - **Medical Robotics** – Robots like `da Vinci Surgical System`_ revolutionized healthcare. - **Personal Robots** – Devices like `Roomba`_ (vacuum robot) and `Sophia`_ (AI humanoid) became popular. - **Service Robots** - Assistive robots like serving robots in restaurants and hotels like `Bellabot`_. - **Collaborative Robots (Drones)** – Collaborative robots like UAV (Unmanned Aerial Vehicle) in drone shows and delivery services. +.. _`Baxter`: https://en.wikipedia.org/wiki/Baxter_(robot) +.. _`Amazon Robotics`: https://en.wikipedia.org/wiki/Amazon_Robotics +.. _`Mars rovers`: https://en.wikipedia.org/wiki/Mars_rover .. _`Waymo`: https://waymo.com/ .. _`AHS`: https://www.futurebridge.com/industry/perspectives-industrial-manufacturing/autonomous-haulage-systems-the-future-of-mining-operations/ .. _`da Vinci Surgical System`: https://en.wikipedia.org/wiki/Da_Vinci_Surgical_System @@ -88,23 +93,10 @@ Key Components of Robotics Robotics consists of several essential components: -#. Sensors – Gather information from the environment (e.g., cameras, LiDAR, gyro, accelerometer, wheel encoders). -#. Actuators – Enable movement and interaction with the world (e.g., motors, hydraulic systems). -#. Computers – Process sensor data and make decisions (e.g., micro-controllers, CPUs, GPUs). -#. Power Supply – Provides energy to run the robot (e.g., batteries, solar power). -#. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, machine learning models, localization, mapping, path planning, control). +#. Sensors – Gather information from the environment (e.g., Cameras, LiDAR, GNSS, Gyro, Accelerometer, Wheel encoders). +#. Actuators – Enable movement and interaction with the world (e.g., Motors, Hydraulic systems). +#. Computers – Process sensor data and make decisions (e.g., Micro-controllers, CPUs, GPUs). +#. Power Supply – Provides energy to run the robot (e.g., Batteries, Solar power). +#. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, Machine learning models, Localization, Mapping, Path planning, Control). This project, PythonRobotics, focuses on the software and algorithms part of robotics. - -Applications of Robots -^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Robots come in various forms depending on their purpose: - -#. 🤖 Industrial Robots – Used in manufacturing (e.g., robotic arms in manufacturing factories). -#. 🏠 Service Robots – Assist in daily life (e.g., vacuum robots, delivery robots). -#. 🚗 Autonomous Vehicles – Self-driving cars and drones. -#. 👨‍⚕️ Medical Robots – Assist in surgeries and healthcare. -#. 🚀 Space & Exploration Robots – Used for planetary exploration (e.g., NASA’s Mars rovers). -#. 🐶 Humanoid & Social Robots – Designed to interact with humans (e.g., ASIMO, Sophia). - From 35c08824d00bd9fb452d1ee951018b177e65fd00 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 15 Feb 2025 16:08:23 +0900 Subject: [PATCH 228/312] add external sensors documentation to appendix (#1159) --- docs/modules/12_appendix/appendix_main.rst | 1 + .../12_appendix/external_sensors_main.rst | 56 +++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 docs/modules/12_appendix/external_sensors_main.rst diff --git a/docs/modules/12_appendix/appendix_main.rst b/docs/modules/12_appendix/appendix_main.rst index cb1ac04066..89a7fa9303 100644 --- a/docs/modules/12_appendix/appendix_main.rst +++ b/docs/modules/12_appendix/appendix_main.rst @@ -10,4 +10,5 @@ Appendix steering_motion_model Kalmanfilter_basics Kalmanfilter_basics_2 + external_sensors diff --git a/docs/modules/12_appendix/external_sensors_main.rst b/docs/modules/12_appendix/external_sensors_main.rst new file mode 100644 index 0000000000..a1dba3b214 --- /dev/null +++ b/docs/modules/12_appendix/external_sensors_main.rst @@ -0,0 +1,56 @@ +External Sensors for Robots +============================ + +Introduction +------------ + +In recent years, the application of robotic technology has advanced, +particularly in areas such as autonomous vehicles and disaster response robots. +A crucial element in these technologies is external recognition—the robot's ability to understand its surrounding environment, identify safe zones, and detect moving objects using onboard sensors. Achieving effective external recognition involves various techniques, but equally important is the selection of appropriate sensors. Robots, like the sensors they employ, come in many forms, but external recognition sensors can be broadly categorized into three types. Developing an advanced external recognition system requires a thorough understanding of each sensor's principles and characteristics to determine their optimal application. This article summarizes the principles and features of these sensors for personal study purposes. + +Laser Sensors +------------- + +Laser sensors measure distances by utilizing light, commonly referred to as Light Detection and Ranging (LIDAR). They operate by emitting light towards an object and calculating the distance based on the time it takes for the reflected light to return, using the speed of light as a constant. + +Radar Sensors +------------- + +TBD + + +Monocular Cameras +----------------- + +Monocular cameras utilize a single camera to recognize the external environment. Compared to other sensors, they can detect color and brightness information, making them primarily useful for object recognition. However, they face challenges in independently measuring distances to surrounding objects and may struggle in low-light or dark conditions. + +Requirements for Cameras and Image Processing in Robotics +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +While camera sensors are widely used in applications like surveillance, deploying them in robotics necessitates meeting specific requirements: + +1. High dynamic range to adapt to various lighting conditions +2. Wide measurement range +3. Capability for three-dimensional measurement through techniques like motion stereo +4. Real-time processing with high frame rates +5. Cost-effectiveness + +Stereo Cameras +-------------- + +Stereo cameras employ multiple cameras to measure distances to surrounding objects. By knowing the positions and orientations of each camera and analyzing the disparity in the images (parallax), the distance to a specific point (the object represented by a particular pixel) can be calculated. + +Characteristics of Stereo Cameras +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Advantages of stereo cameras include the ability to obtain high-precision and high-density distance information at close range, depending on factors like camera resolution and the distance between cameras (baseline). This makes them suitable for indoor robots that require precise shape recognition of nearby objects. Additionally, stereo cameras are relatively cost-effective compared to other sensors, leading to their use in consumer products like Subaru's EyeSight system. However, stereo cameras are less effective for long-distance measurements due to a decrease in accuracy proportional to the square of the distance. They are also susceptible to environmental factors such as lighting conditions. + +Ultrasonic Sensors +------------------ + +Ultrasonic sensors are commonly used in indoor robots and some automotive autonomous driving systems. Their features include affordability compared to laser or radar sensors, the ability to detect very close objects, and the capability to sense materials like glass, which may be challenging for lasers or cameras. However, they have limitations such as shorter maximum measurement distances and lower resolution and accuracy. + +References +---------- + +TBD From e82a12319b5336beaff01ab9fd2ce7818bb08dfb Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 16 Feb 2025 21:41:22 +0900 Subject: [PATCH 229/312] add internal sensors documentation to appendix and create new internal sensors overview (#1161) --- docs/modules/12_appendix/appendix_main.rst | 1 + .../12_appendix/external_sensors_main.rst | 4 +++ .../12_appendix/internal_sensors_main.rst | 32 +++++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 docs/modules/12_appendix/internal_sensors_main.rst diff --git a/docs/modules/12_appendix/appendix_main.rst b/docs/modules/12_appendix/appendix_main.rst index 89a7fa9303..a55389e1e6 100644 --- a/docs/modules/12_appendix/appendix_main.rst +++ b/docs/modules/12_appendix/appendix_main.rst @@ -10,5 +10,6 @@ Appendix steering_motion_model Kalmanfilter_basics Kalmanfilter_basics_2 + internal_sensors external_sensors diff --git a/docs/modules/12_appendix/external_sensors_main.rst b/docs/modules/12_appendix/external_sensors_main.rst index a1dba3b214..d36b852d42 100644 --- a/docs/modules/12_appendix/external_sensors_main.rst +++ b/docs/modules/12_appendix/external_sensors_main.rst @@ -1,6 +1,10 @@ External Sensors for Robots ============================ +This project, `PythonRobotics`, focuses on algorithms, so hardware is not included. +However, having basic knowledge of hardware in robotics is also important for understanding algorithms. +Therefore, we will provide an overview. + Introduction ------------ diff --git a/docs/modules/12_appendix/internal_sensors_main.rst b/docs/modules/12_appendix/internal_sensors_main.rst new file mode 100644 index 0000000000..13b8de4203 --- /dev/null +++ b/docs/modules/12_appendix/internal_sensors_main.rst @@ -0,0 +1,32 @@ +Internal Sensors for Robots +============================ + +This project, `PythonRobotics`, focuses on algorithms, so hardware is not included. +However, having basic knowledge of hardware in robotics is also important for understanding algorithms. +Therefore, we will provide an overview. + +Introduction +------------ + +Global Navigation Satellite System (GNSS) +------------------------------------------- + +Gyroscope +---------- + +Accelerometer +-------------- + +Magnetometer +-------------- + +Inertial Measurement Unit (IMU) +-------------------------------- + +Pressure Sensor +----------------- + +Temperature Sensor +-------------------- + + From c92aaf36d8665a3b9ecd1a661f151cfd6ede4c66 Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Mon, 17 Feb 2025 18:47:04 +0800 Subject: [PATCH 230/312] feat: add ElasticBands (#1156) * feat: add ElasticBands * feat: Elastic Bands update * feat: ElasticBands update * feat: ElasticBands add test * feat: ElasticBands reduce occupation * fix: ElasticBands test * feat: ElasticBands remove tangential component * feat: Elastic Bands update * feat: Elastic Bands doc * feat: Elastic Bands update * feat: ElasticBands update --- Mapping/DistanceMap/distance_map.py | 51 +++ PathPlanning/ElasticBands/elastic_bands.py | 300 ++++++++++++++++++ PathPlanning/ElasticBands/obstacles.npy | Bin 0 -> 384 bytes PathPlanning/ElasticBands/path.npy | Bin 0 -> 224 bytes .../elastic_bands/elastic_bands_main.rst | 73 +++++ .../5_path_planning/path_planning_main.rst | 1 + tests/test_elastic_bands.py | 23 ++ 7 files changed, 448 insertions(+) create mode 100644 PathPlanning/ElasticBands/elastic_bands.py create mode 100644 PathPlanning/ElasticBands/obstacles.npy create mode 100644 PathPlanning/ElasticBands/path.npy create mode 100644 docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst create mode 100644 tests/test_elastic_bands.py diff --git a/Mapping/DistanceMap/distance_map.py b/Mapping/DistanceMap/distance_map.py index 54c98c6a75..0dcc7380c5 100644 --- a/Mapping/DistanceMap/distance_map.py +++ b/Mapping/DistanceMap/distance_map.py @@ -11,11 +11,62 @@ import numpy as np import matplotlib.pyplot as plt +import scipy INF = 1e20 ENABLE_PLOT = True +def compute_sdf_scipy(obstacles): + """ + Compute the signed distance field (SDF) from a boolean field using scipy. + This function has the same functionality as compute_sdf. + However, by using scipy.ndimage.distance_transform_edt, it can compute much faster. + + Example: 500×500 map + • compute_sdf: 3 sec + • compute_sdf_scipy: 0.05 sec + + Parameters + ---------- + obstacles : array_like + A 2D boolean array where '1' represents obstacles and '0' represents free space. + + Returns + ------- + array_like + A 2D array representing the signed distance field, where positive values indicate distance + to the nearest obstacle, and negative values indicate distance to the nearest free space. + """ + # distance_transform_edt use '0' as obstacles, so we need to convert the obstacles to '0' + a = scipy.ndimage.distance_transform_edt(obstacles == 0) + b = scipy.ndimage.distance_transform_edt(obstacles == 1) + return a - b + + +def compute_udf_scipy(obstacles): + """ + Compute the unsigned distance field (UDF) from a boolean field using scipy. + This function has the same functionality as compute_udf. + However, by using scipy.ndimage.distance_transform_edt, it can compute much faster. + + Example: 500×500 map + • compute_udf: 1.5 sec + • compute_udf_scipy: 0.02 sec + + Parameters + ---------- + obstacles : array_like + A 2D boolean array where '1' represents obstacles and '0' represents free space. + + Returns + ------- + array_like + A 2D array of distances from the nearest obstacle, with the same dimensions as `bool_field`. + """ + return scipy.ndimage.distance_transform_edt(obstacles == 0) + + def compute_sdf(obstacles): """ Compute the signed distance field (SDF) from a boolean field. diff --git a/PathPlanning/ElasticBands/elastic_bands.py b/PathPlanning/ElasticBands/elastic_bands.py new file mode 100644 index 0000000000..785f822d14 --- /dev/null +++ b/PathPlanning/ElasticBands/elastic_bands.py @@ -0,0 +1,300 @@ +""" +Elastic Bands + +author: Wang Zheng (@Aglargil) + +Ref: + +- [Elastic Bands: Connecting Path Planning and Control] +(http://www8.cs.umu.se/research/ifor/dl/Control/elastic%20bands.pdf) +""" + +import numpy as np +import sys +import pathlib +import matplotlib.pyplot as plt +from matplotlib.patches import Circle + +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) + +from Mapping.DistanceMap.distance_map import compute_sdf_scipy + +# Elastic Bands Params +MAX_BUBBLE_RADIUS = 100 +MIN_BUBBLE_RADIUS = 10 +RHO0 = 20.0 # Maximum distance for applying repulsive force +KC = 0.05 # Contraction force gain +KR = -0.1 # Repulsive force gain +LAMBDA = 0.7 # Overlap constraint factor +STEP_SIZE = 3.0 # Step size for calculating gradient + +# Visualization Params +ENABLE_PLOT = True +# ENABLE_INTERACTIVE is True allows user to add obstacles by left clicking +# and add path points by right clicking and start planning by middle clicking +ENABLE_INTERACTIVE = False +# ENABLE_SAVE_DATA is True allows saving the path and obstacles which added +# by user in interactive mode to file +ENABLE_SAVE_DATA = False +MAX_ITER = 50 + + +class Bubble: + def __init__(self, position, radius): + self.pos = np.array(position) # Bubble center coordinates [x, y] + self.radius = radius # Safety distance radius ρ(b) + if self.radius > MAX_BUBBLE_RADIUS: + self.radius = MAX_BUBBLE_RADIUS + if self.radius < MIN_BUBBLE_RADIUS: + self.radius = MIN_BUBBLE_RADIUS + + +class ElasticBands: + def __init__( + self, + initial_path, + obstacles, + rho0=RHO0, + kc=KC, + kr=KR, + lambda_=LAMBDA, + step_size=STEP_SIZE, + ): + self.distance_map = compute_sdf_scipy(obstacles) + self.bubbles = [ + Bubble(p, self.compute_rho(p)) for p in initial_path + ] # Initialize bubble chain + self.kc = kc # Contraction force gain + self.kr = kr # Repulsive force gain + self.rho0 = rho0 # Maximum distance for applying repulsive force + self.lambda_ = lambda_ # Overlap constraint factor + self.step_size = step_size # Step size for calculating gradient + self._maintain_overlap() + + def compute_rho(self, position): + """Compute the distance field value at the position""" + return self.distance_map[int(position[0]), int(position[1])] + + def contraction_force(self, i): + """Calculate internal contraction force for the i-th bubble""" + if i == 0 or i == len(self.bubbles) - 1: + return np.zeros(2) + + prev = self.bubbles[i - 1].pos + next_ = self.bubbles[i + 1].pos + current = self.bubbles[i].pos + + # f_c = kc * ( (prev-current)/|prev-current| + (next-current)/|next-current| ) + dir_prev = (prev - current) / (np.linalg.norm(prev - current) + 1e-6) + dir_next = (next_ - current) / (np.linalg.norm(next_ - current) + 1e-6) + return self.kc * (dir_prev + dir_next) + + def repulsive_force(self, i): + """Calculate external repulsive force for the i-th bubble""" + h = self.step_size # Step size + b = self.bubbles[i].pos + rho = self.bubbles[i].radius + + if rho >= self.rho0: + return np.zeros(2) + + # Finite difference approximation of the gradient ∂ρ/∂b + dx = np.array([h, 0]) + dy = np.array([0, h]) + grad_x = (self.compute_rho(b - dx) - self.compute_rho(b + dx)) / (2 * h) + grad_y = (self.compute_rho(b - dy) - self.compute_rho(b + dy)) / (2 * h) + grad = np.array([grad_x, grad_y]) + + return self.kr * (self.rho0 - rho) * grad + + def update_bubbles(self): + """Update bubble positions""" + new_bubbles = [] + for i in range(len(self.bubbles)): + if i == 0 or i == len(self.bubbles) - 1: + new_bubbles.append(self.bubbles[i]) # Fixed start and end points + continue + + f_total = self.contraction_force(i) + self.repulsive_force(i) + v = self.bubbles[i - 1].pos - self.bubbles[i + 1].pos + + # Remove tangential component + f_star = f_total - f_total * v * v / (np.linalg.norm(v) ** 2 + 1e-6) + + alpha = self.bubbles[i].radius # Adaptive step size + new_pos = self.bubbles[i].pos + alpha * f_star + new_pos = np.clip(new_pos, 0, 499) + new_radius = self.compute_rho(new_pos) + + # Update bubble and maintain overlap constraint + new_bubble = Bubble(new_pos, new_radius) + new_bubbles.append(new_bubble) + + self.bubbles = new_bubbles + self._maintain_overlap() + + def _maintain_overlap(self): + """Maintain bubble chain continuity (simplified insertion/deletion mechanism)""" + # Insert bubbles + i = 0 + while i < len(self.bubbles) - 1: + bi, bj = self.bubbles[i], self.bubbles[i + 1] + dist = np.linalg.norm(bi.pos - bj.pos) + if dist > self.lambda_ * (bi.radius + bj.radius): + new_pos = (bi.pos + bj.pos) / 2 + rho = self.compute_rho( + new_pos + ) # Calculate new radius using environment model + self.bubbles.insert(i + 1, Bubble(new_pos, rho)) + i += 2 # Skip the processed region + else: + i += 1 + + # Delete redundant bubbles + i = 1 + while i < len(self.bubbles) - 1: + prev = self.bubbles[i - 1] + next_ = self.bubbles[i + 1] + dist = np.linalg.norm(prev.pos - next_.pos) + if dist <= self.lambda_ * (prev.radius + next_.radius): + del self.bubbles[i] # Delete if redundant + else: + i += 1 + + +class ElasticBandsVisualizer: + def __init__(self): + self.obstacles = np.zeros((500, 500)) + self.obstacles_points = [] + self.path_points = [] + self.elastic_band = None + self.running = True + + if ENABLE_PLOT: + self.fig, self.ax = plt.subplots(figsize=(8, 8)) + self.fig.canvas.mpl_connect("close_event", self.on_close) + self.ax.set_xlim(0, 500) + self.ax.set_ylim(0, 500) + + if ENABLE_INTERACTIVE: + self.path_points = [] # Add a list to store path points + # Connect mouse events + self.fig.canvas.mpl_connect("button_press_event", self.on_click) + else: + self.path_points = np.load(pathlib.Path(__file__).parent / "path.npy") + self.obstacles_points = np.load( + pathlib.Path(__file__).parent / "obstacles.npy" + ) + for x, y in self.obstacles_points: + self.add_obstacle(x, y) + self.plan_path() + + self.plot_background() + + def on_close(self, event): + """Handle window close event""" + self.running = False + plt.close("all") # Close all figure windows + + def plot_background(self): + """Plot the background grid""" + if not ENABLE_PLOT or not self.running: + return + + self.ax.cla() + self.ax.set_xlim(0, 500) + self.ax.set_ylim(0, 500) + self.ax.grid(True) + + if ENABLE_INTERACTIVE: + self.ax.set_title( + "Elastic Bands Path Planning\n" + "Left click: Add obstacles\n" + "Right click: Add path points\n" + "Middle click: Start planning", + pad=20, + ) + else: + self.ax.set_title("Elastic Bands Path Planning", pad=20) + + if self.path_points: + self.ax.plot( + [p[0] for p in self.path_points], + [p[1] for p in self.path_points], + "yo", + markersize=8, + ) + + self.ax.imshow(self.obstacles.T, origin="lower", cmap="binary", alpha=0.8) + self.ax.plot([], [], color="black", label="obstacles") + if self.elastic_band is not None: + path = [b.pos.tolist() for b in self.elastic_band.bubbles] + path = np.array(path) + self.ax.plot(path[:, 0], path[:, 1], "b-", linewidth=2, label="path") + + for bubble in self.elastic_band.bubbles: + circle = Circle( + bubble.pos, bubble.radius, fill=False, color="g", alpha=0.3 + ) + self.ax.add_patch(circle) + self.ax.plot(bubble.pos[0], bubble.pos[1], "bo", markersize=10) + self.ax.plot([], [], color="green", label="bubbles") + + self.ax.legend(loc="upper right") + plt.draw() + plt.pause(0.01) + + def add_obstacle(self, x, y): + """Add an obstacle at the given coordinates""" + size = 30 # Side length of the square + half_size = size // 2 + x_start = max(0, x - half_size) + x_end = min(self.obstacles.shape[0], x + half_size) + y_start = max(0, y - half_size) + y_end = min(self.obstacles.shape[1], y + half_size) + self.obstacles[x_start:x_end, y_start:y_end] = 1 + + def on_click(self, event): + """Handle mouse click events""" + if event.inaxes != self.ax: + return + + x, y = int(event.xdata), int(event.ydata) + + if event.button == 1: # Left click to add obstacles + self.add_obstacle(x, y) + self.obstacles_points.append([x, y]) + + elif event.button == 3: # Right click to add path points + self.path_points.append([x, y]) + + elif event.button == 2: # Middle click to end path input and start planning + if len(self.path_points) >= 2: + if ENABLE_SAVE_DATA: + np.save( + pathlib.Path(__file__).parent / "path.npy", self.path_points + ) + np.save( + pathlib.Path(__file__).parent / "obstacles.npy", + self.obstacles_points, + ) + self.plan_path() + + self.plot_background() + + def plan_path(self): + """Plan the path""" + + initial_path = self.path_points + # Create an elastic band object and optimize + self.elastic_band = ElasticBands(initial_path, self.obstacles) + for _ in range(MAX_ITER): + self.elastic_band.update_bubbles() + self.path_points = [b.pos for b in self.elastic_band.bubbles] + self.plot_background() + + +if __name__ == "__main__": + _ = ElasticBandsVisualizer() + if ENABLE_PLOT: + plt.show(block=True) diff --git a/PathPlanning/ElasticBands/obstacles.npy b/PathPlanning/ElasticBands/obstacles.npy new file mode 100644 index 0000000000000000000000000000000000000000..af4376afcf0e987bbb62c4a80c7afac3d221961d GIT binary patch literal 384 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlWC!@qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$-W;zN+nmP)#3giN=d=|8_M@a;}<~r z%~1IiD1RoD9|z^LL+NCwxEhq72<3}I`IS(%lCm`7X literal 0 HcmV?d00001 diff --git a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst new file mode 100644 index 0000000000..139996f291 --- /dev/null +++ b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst @@ -0,0 +1,73 @@ +Elastic Bands +------------- + +This is a path planning with Elastic Bands. + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/ElasticBands/animation.gif + + +Core Concept +~~~~~~~~~~~~ +- **Elastic Band**: A dynamically deformable collision-free path initialized by a global planner. +- **Objective**: + + * Shorten and smooth the path. + * Maximize obstacle clearance. + * Maintain global path connectivity. + +Bubble Representation +~~~~~~~~~~~~~~~~~~~ +- **Definition**: A local free-space region around configuration :math:`b`: + + .. math:: + B(b) = \{ q: \|q - b\| < \rho(b) \}, + + where :math:`\rho(b)` is the radius of the bubble. + + +Force-Based Deformation +~~~~~~~~~~~~~~~~~~~~~~~ +The elastic band deforms under artificial forces: + +Internal Contraction Force +++++++++++++++++++++++++++ +- **Purpose**: Reduces path slack and length. +- **Formula**: For node :math:`b_i`: + + .. math:: + f_c(b_i) = k_c \left( \frac{b_{i-1} - b_i}{\|b_{i-1} - b_i\|} + \frac{b_{i+1} - b_i}{\|b_{i+1} - b_i\|} \right) + + where :math:`k_c` is the contraction gain. + +External Repulsion Force ++++++++++++++++++++++++++ +- **Purpose**: Pushes the path away from obstacles. +- **Formula**: For node :math:`b_i`: + + .. math:: + f_r(b_i) = \begin{cases} + k_r (\rho_0 - \rho(b_i)) \nabla \rho(b_i) & \text{if } \rho(b_i) < \rho_0, \\ + 0 & \text{otherwise}. + \end{cases} + + where :math:`k_r` is the repulsion gain, :math:`\rho_0` is the maximum distance for applying repulsion force, and :math:`\nabla \rho(b_i)` is approximated via finite differences: + + .. math:: + \frac{\partial \rho}{\partial x} \approx \frac{\rho(b_i + h) - \rho(b_i - h)}{2h}. + +Dynamic Path Maintenance +~~~~~~~~~~~~~~~~~~~~~~~ +1. **Node Update**: + + .. math:: + b_i^{\text{new}} = b_i^{\text{old}} + \alpha (f_c + f_r), + + where :math:`\alpha` is a step-size parameter, which often proportional to :math:`\rho(b_i^{\text{old}})` + +2. **Overlap Enforcement**: +- Insert new nodes if adjacent nodes are too far apart +- Remove redundant nodes if adjacent nodes are too close + +Ref: + +- `Elastic Bands: Connecting Path Planning and Control `__ diff --git a/docs/modules/5_path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst index 4960330b3e..65fbfdbc3d 100644 --- a/docs/modules/5_path_planning/path_planning_main.rst +++ b/docs/modules/5_path_planning/path_planning_main.rst @@ -31,3 +31,4 @@ Path planning is the ability of a robot to search feasible and efficient path to hybridastar/hybridastar frenet_frame_path/frenet_frame_path coverage_path/coverage_path + elastic_bands/elastic_bands \ No newline at end of file diff --git a/tests/test_elastic_bands.py b/tests/test_elastic_bands.py new file mode 100644 index 0000000000..ad4e13af1a --- /dev/null +++ b/tests/test_elastic_bands.py @@ -0,0 +1,23 @@ +import conftest +import numpy as np +from PathPlanning.ElasticBands.elastic_bands import ElasticBands + + +def test_1(): + path = np.load("PathPlanning/ElasticBands/path.npy") + obstacles_points = np.load("PathPlanning/ElasticBands/obstacles.npy") + obstacles = np.zeros((500, 500)) + for x, y in obstacles_points: + size = 30 # Side length of the square + half_size = size // 2 + x_start = max(0, x - half_size) + x_end = min(obstacles.shape[0], x + half_size) + y_start = max(0, y - half_size) + y_end = min(obstacles.shape[1], y + half_size) + obstacles[x_start:x_end, y_start:y_end] = 1 + elastic_bands = ElasticBands(path, obstacles) + elastic_bands.update_bubbles() + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From cbe61f8ca62785a072652741d8b33832caee1942 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Feb 2025 10:45:49 +0900 Subject: [PATCH 231/312] build(deps): bump scipy from 1.15.1 to 1.15.2 in /requirements (#1163) Bumps [scipy](https://github.com/scipy/scipy) from 1.15.1 to 1.15.2. - [Release notes](https://github.com/scipy/scipy/releases) - [Commits](https://github.com/scipy/scipy/compare/v1.15.1...v1.15.2) --- updated-dependencies: - dependency-name: scipy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f5f674d7d2..ea4550edb8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ numpy == 2.2.2 -scipy == 1.15.1 +scipy == 1.15.2 matplotlib == 3.10.0 cvxpy == 1.5.3 pytest == 8.3.4 # For unit test From 395fca59cc1f9c44e9ea7f7c08ce41958e399481 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 18 Feb 2025 20:06:34 +0900 Subject: [PATCH 232/312] fix: update robotics documentation for clarity and correct terminology (#1165) --- docs/modules/12_appendix/external_sensors_main.rst | 2 ++ docs/modules/12_appendix/internal_sensors_main.rst | 2 ++ .../1_definition_of_robotics/definition_of_robotics_main.rst | 5 +++++ .../technologies_for_robotics_main.rst} | 4 +++- docs/modules/1_introduction/introduction_main.rst | 2 +- 5 files changed, 13 insertions(+), 2 deletions(-) rename docs/modules/1_introduction/{3_technology_for_robotics/technology_for_robotics_main.rst => 3_technologies_for_robotics/technologies_for_robotics_main.rst} (88%) diff --git a/docs/modules/12_appendix/external_sensors_main.rst b/docs/modules/12_appendix/external_sensors_main.rst index d36b852d42..3597418150 100644 --- a/docs/modules/12_appendix/external_sensors_main.rst +++ b/docs/modules/12_appendix/external_sensors_main.rst @@ -1,3 +1,5 @@ +.. _`External Sensors for Robots`: + External Sensors for Robots ============================ diff --git a/docs/modules/12_appendix/internal_sensors_main.rst b/docs/modules/12_appendix/internal_sensors_main.rst index 13b8de4203..18f209098e 100644 --- a/docs/modules/12_appendix/internal_sensors_main.rst +++ b/docs/modules/12_appendix/internal_sensors_main.rst @@ -1,3 +1,5 @@ +.. _`Internal Sensors for Robots`: + Internal Sensors for Robots ============================ diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index f54d4d41fa..1e7a833b19 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -17,6 +17,10 @@ In the play, robots were artificial workers created to serve humans, but they ev Over time, “robot” came to refer to machines or automated systems that can perform tasks, often with some level of intelligence or autonomy. +Currently, 2 millions robots are working in the world, and the number is increasing every year. +In South Korea, where the adoption of robots is particularly rapid, +50 robots are operating per 1,000 people. + .. _`R.U.R.`: https://thereader.mitpress.mit.edu/origin-word-robot-rur/ .. _`Karel Čapek`: https://en.wikipedia.org/wiki/Karel_%C4%8Capek @@ -100,3 +104,4 @@ Robotics consists of several essential components: #. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, Machine learning models, Localization, Mapping, Path planning, Control). This project, PythonRobotics, focuses on the software and algorithms part of robotics. +If you are interested in `Sensors` hardware, you can check :ref:`Internal Sensors for Robotics`_ or :ref:`External Sensors for Robotics`_. diff --git a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst similarity index 88% rename from docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst rename to docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst index e460059e20..64c6945c32 100644 --- a/docs/modules/1_introduction/3_technology_for_robotics/technology_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst @@ -1,8 +1,10 @@ -Technology for Robotics +Technologies for Robotics ------------------------- The field of robotics needs wide areas of technologies such as mechanical engineering, electrical engineering, computer science, and artificial intelligence (AI). +This project, `PythonRobotics`, only focus on computer science and artificial intelligence. + Autonomous Navigation diff --git a/docs/modules/1_introduction/introduction_main.rst b/docs/modules/1_introduction/introduction_main.rst index a7ce55f9bf..1871dfc3b1 100644 --- a/docs/modules/1_introduction/introduction_main.rst +++ b/docs/modules/1_introduction/introduction_main.rst @@ -14,5 +14,5 @@ covered in PythonRobotics. 1_definition_of_robotics/definition_of_robotics 2_python_for_robotics/python_for_robotics - 3_technology_for_robotics/technology_for_robotics + 3_technologies_for_robotics/technologies_for_robotics From d53711998aeb1d0b3aab7a62862ef5d358f2aff9 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Tue, 18 Feb 2025 21:49:28 +0900 Subject: [PATCH 233/312] fix: update robotics documentation for clarity and correct terminology (#1166) --- README.md | 4 ++++ .../0_getting_started/1_what_is_python_robotics_main.rst | 6 ++++++ .../definition_of_robotics_main.rst | 2 +- .../5_path_planning/elastic_bands/elastic_bands_main.rst | 7 ++++--- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 818d7b0d4e..9e605435ce 100644 --- a/README.md +++ b/README.md @@ -89,6 +89,10 @@ See this documentation - [Getting Started — PythonRobotics documentation](https://atsushisakai.github.io/PythonRobotics/getting_started.html#what-is-pythonrobotics) +or this Youtube video: + +- [PythonRobotics project audio overview](https://www.youtube.com/watch?v=uMeRnNoJAfU) + or this paper for more details: - [\[1808\.10703\] PythonRobotics: a Python code collection of robotics algorithms](https://arxiv.org/abs/1808.10703) ([BibTeX](https://github.com/AtsushiSakai/PythonRoboticsPaper/blob/master/python_robotics.bib)) diff --git a/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst index 8c932b7263..2a7bd574f0 100644 --- a/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst +++ b/docs/modules/0_getting_started/1_what_is_python_robotics_main.rst @@ -110,6 +110,12 @@ the following additional libraries are required. For instructions on installing the above libraries, please refer to this section ":ref:`How to run sample codes`". +Audio overview of this project +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +For an audio overview of this project, please refer to this `YouTube video`_. + +.. _`YouTube video`: https://www.youtube.com/watch?v=uMeRnNoJAfU + Arxiv paper ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 1e7a833b19..5d78bf858b 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -103,5 +103,5 @@ Robotics consists of several essential components: #. Power Supply – Provides energy to run the robot (e.g., Batteries, Solar power). #. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, Machine learning models, Localization, Mapping, Path planning, Control). -This project, PythonRobotics, focuses on the software and algorithms part of robotics. +This project, `PythonRobotics`, focuses on the software and algorithms part of robotics. If you are interested in `Sensors` hardware, you can check :ref:`Internal Sensors for Robotics`_ or :ref:`External Sensors for Robotics`_. diff --git a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst index 139996f291..8a3e517105 100644 --- a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst +++ b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst @@ -16,7 +16,7 @@ Core Concept * Maintain global path connectivity. Bubble Representation -~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~~~~ - **Definition**: A local free-space region around configuration :math:`b`: .. math:: @@ -56,7 +56,7 @@ External Repulsion Force \frac{\partial \rho}{\partial x} \approx \frac{\rho(b_i + h) - \rho(b_i - h)}{2h}. Dynamic Path Maintenance -~~~~~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. **Node Update**: .. math:: @@ -68,6 +68,7 @@ Dynamic Path Maintenance - Insert new nodes if adjacent nodes are too far apart - Remove redundant nodes if adjacent nodes are too close -Ref: +References +~~~~~~~~~~~~~~~~~~~~~~~ - `Elastic Bands: Connecting Path Planning and Control `__ From 8064488a1d63a1579d8c9d786a376c8b583c02a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Feb 2025 21:49:40 +0900 Subject: [PATCH 234/312] build(deps): bump numpy from 2.2.2 to 2.2.3 in /requirements (#1164) Bumps [numpy](https://github.com/numpy/numpy) from 2.2.2 to 2.2.3. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.2.2...v2.2.3) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ea4550edb8..8176364c29 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.2.2 +numpy == 2.2.3 scipy == 1.15.2 matplotlib == 3.10.0 cvxpy == 1.5.3 From 2b7080991e5289c9524a505244fcd2a4995da06e Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Wed, 19 Feb 2025 13:36:07 +0900 Subject: [PATCH 235/312] Add GitHub copilot pro sponser (#1167) * fix: correct terminology in documentation and update Sphinx options * fix: correct terminology in documentation and update Sphinx options * fix: correct terminology in documentation and update Sphinx options * fix: correct terminology in documentation and update Sphinx options * fix: correct terminology in documentation and update Sphinx options --- docs/Makefile | 3 ++- docs/modules/0_getting_started/3_how_to_contribute_main.rst | 2 ++ .../1_definition_of_robotics/definition_of_robotics_main.rst | 2 +- docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst | 2 +- 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/Makefile b/docs/Makefile index 9296811e02..ae495eb36d 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -2,7 +2,8 @@ # # You can set these variables from the command line. -SPHINXOPTS = +# SPHINXOPTS with -W means turn warnings into errors to fail the build when warnings are present. +SPHINXOPTS = -W SPHINXBUILD = sphinx-build SPHINXPROJ = PythonRobotics SOURCEDIR = . diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 874564cbb8..1e61760649 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -187,6 +187,7 @@ If you would like to support us in some other way, please contact with creating Current Major Sponsors: +#. `GitHub`_ : They are providing a GitHub Copilot Pro license for this OSS development. #. `JetBrains`_ : They are providing a free license of their IDEs for this OSS development. #. `1Password`_ : They are providing a free license of their 1Password team license for this OSS project. @@ -202,6 +203,7 @@ Current Major Sponsors: .. _`doc README`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/docs/README.md .. _`test_codestyle.py`: https://github.com/AtsushiSakai/PythonRobotics/blob/master/tests/test_codestyle.py .. _`JetBrains`: https://www.jetbrains.com/ +.. _`GitHub`: https://www.github.com/ .. _`Sponsor @AtsushiSakai on GitHub Sponsors`: https://github.com/sponsors/AtsushiSakai .. _`Become a backer or sponsor on Patreon`: https://www.patreon.com/myenigma .. _`One-time donation via PayPal`: https://www.paypal.com/paypalme/myenigmapay/ diff --git a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst index 5d78bf858b..ca595301a6 100644 --- a/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst +++ b/docs/modules/1_introduction/1_definition_of_robotics/definition_of_robotics_main.rst @@ -104,4 +104,4 @@ Robotics consists of several essential components: #. Software & Algorithms – Allow the robot to function and make intelligent decisions (e.g., ROS, Machine learning models, Localization, Mapping, Path planning, Control). This project, `PythonRobotics`, focuses on the software and algorithms part of robotics. -If you are interested in `Sensors` hardware, you can check :ref:`Internal Sensors for Robotics`_ or :ref:`External Sensors for Robotics`_. +If you are interested in `Sensors` hardware, you can check :ref:`Internal Sensors for Robots` or :ref:`External Sensors for Robots`. diff --git a/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst index 491320512b..15963aff79 100644 --- a/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst +++ b/docs/modules/4_slam/graph_slam/graphSLAM_SE2_example.rst @@ -165,7 +165,7 @@ different data sources into a single optimization problem. 6 215.8405 -0.000000 -.. figure:: graphSLAM_SE2_example_files/Graph_SLAM_optimization.gif +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/GraphBasedSLAM/Graph_SLAM_optimization.gif .. code:: ipython3 From c7fb228d24856d6c7a0cb28c715176bfb8b17281 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 20 Feb 2025 12:11:04 +0900 Subject: [PATCH 236/312] fix: update section references to use consistent formatting (#1169) --- .../technologies_for_robotics_main.rst | 48 +++++++++++++++---- .../2_localization/localization_main.rst | 2 +- docs/modules/3_mapping/mapping_main.rst | 2 +- docs/modules/4_slam/slam_main.rst | 2 +- .../5_path_planning/path_planning_main.rst | 2 +- .../6_path_tracking/path_tracking_main.rst | 2 +- .../7_arm_navigation/arm_navigation_main.rst | 2 +- .../aerial_navigation_main.rst | 2 +- docs/modules/9_bipedal/bipedal_main.rst | 2 +- 9 files changed, 48 insertions(+), 16 deletions(-) diff --git a/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst index 64c6945c32..c77997a138 100644 --- a/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst @@ -5,22 +5,54 @@ The field of robotics needs wide areas of technologies such as mechanical engine electrical engineering, computer science, and artificial intelligence (AI). This project, `PythonRobotics`, only focus on computer science and artificial intelligence. +The technologies for robotics are categorized as following 3 categories: +#. `Autonomous Navigation`_ +#. `Manipulation`_ +#. `Robot type specific technologies`_ + +.. _`Autonomous Navigation`: Autonomous Navigation ^^^^^^^^^^^^^^^^^^^^^^^^ - -In recent years, autonomous navigation technologies have received huge -attention in many fields. -Such fields include, autonomous driving[22], drone flight navigation, -and other transportation systems. - -An autonomous navigation system is a system that can move to a goal over long +Autonomous navigation is a capability that can move to a goal over long periods of time without any external control by an operator. -The system requires a wide range of technologies: + +To achieve autonomous navigation, the robot needs to have the following technologies: - It needs to know where it is (localization) - Where it is safe (mapping) +- Where is is safe and where the robot is in the map (Simultaneous Localization and Mapping (SLAM)) - Where and how to move (path planning) - How to control its motion (path following). The autonomous system would not work correctly if any of these technologies is missing. + +In recent years, autonomous navigation technologies have received huge +attention in many fields. +For example, self-driving cars, drones, and autonomous mobile robots in indoor and outdoor environments. + +In this project, we provide many algorithms, sample codes, +and documentations for autonomous navigation. + +#. :ref:`Localization` +#. :ref:`Mapping` +#. :ref:`SLAM` +#. :ref:`Path planning` +#. :ref:`Path tracking` + + + +.. _`Manipulation`: + +Manipulation +^^^^^^^^^^^^^^^^^^^^^^^^ + +#. :ref:`Arm Navigation` + +.. _`Robot type specific technologies`: + +Robot type specific technologies +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +#. :ref:`Aerial Navigation` +#. :ref:`Bipedal` diff --git a/docs/modules/2_localization/localization_main.rst b/docs/modules/2_localization/localization_main.rst index 22cbd094da..770a234b69 100644 --- a/docs/modules/2_localization/localization_main.rst +++ b/docs/modules/2_localization/localization_main.rst @@ -1,4 +1,4 @@ -.. _localization: +.. _`Localization`: Localization ============ diff --git a/docs/modules/3_mapping/mapping_main.rst b/docs/modules/3_mapping/mapping_main.rst index 825b08d3ec..34a3744893 100644 --- a/docs/modules/3_mapping/mapping_main.rst +++ b/docs/modules/3_mapping/mapping_main.rst @@ -1,4 +1,4 @@ -.. _mapping: +.. _`Mapping`: Mapping ======= diff --git a/docs/modules/4_slam/slam_main.rst b/docs/modules/4_slam/slam_main.rst index dec04f253a..98211986c2 100644 --- a/docs/modules/4_slam/slam_main.rst +++ b/docs/modules/4_slam/slam_main.rst @@ -1,4 +1,4 @@ -.. _slam: +.. _`SLAM`: SLAM ==== diff --git a/docs/modules/5_path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst index 65fbfdbc3d..a0f9c30a3d 100644 --- a/docs/modules/5_path_planning/path_planning_main.rst +++ b/docs/modules/5_path_planning/path_planning_main.rst @@ -1,4 +1,4 @@ -.. _path_planning: +.. _`Path Planning`: Path Planning ============= diff --git a/docs/modules/6_path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst index d7a895b562..130a2340c1 100644 --- a/docs/modules/6_path_tracking/path_tracking_main.rst +++ b/docs/modules/6_path_tracking/path_tracking_main.rst @@ -1,4 +1,4 @@ -.. _path_tracking: +.. _`Path Tracking`: Path Tracking ============= diff --git a/docs/modules/7_arm_navigation/arm_navigation_main.rst b/docs/modules/7_arm_navigation/arm_navigation_main.rst index bbbc872c58..7acd3ee7d3 100644 --- a/docs/modules/7_arm_navigation/arm_navigation_main.rst +++ b/docs/modules/7_arm_navigation/arm_navigation_main.rst @@ -1,4 +1,4 @@ -.. _arm_navigation: +.. _`Arm Navigation`: Arm Navigation ============== diff --git a/docs/modules/8_aerial_navigation/aerial_navigation_main.rst b/docs/modules/8_aerial_navigation/aerial_navigation_main.rst index b2ccb071af..7f76689770 100644 --- a/docs/modules/8_aerial_navigation/aerial_navigation_main.rst +++ b/docs/modules/8_aerial_navigation/aerial_navigation_main.rst @@ -1,4 +1,4 @@ -.. _aerial_navigation: +.. _`Aerial Navigation`: Aerial Navigation ================= diff --git a/docs/modules/9_bipedal/bipedal_main.rst b/docs/modules/9_bipedal/bipedal_main.rst index fc5b933055..dc387dc4e8 100644 --- a/docs/modules/9_bipedal/bipedal_main.rst +++ b/docs/modules/9_bipedal/bipedal_main.rst @@ -1,4 +1,4 @@ -.. _bipedal: +.. _`Bipedal`: Bipedal ================= From f343573a7bb9b99fd8fcfc72cef7336ccf859c28 Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Thu, 20 Feb 2025 18:09:30 +0800 Subject: [PATCH 237/312] Update move_to_pose for cases where alpha > pi/2 or alpha < -pi/2 (#1168) * Update move_to_pose for cases where alpha > pi/2 or alpha < -pi/2 * Update move_to_pose * Add move_to_pose test * Update move_to_pose --- Control/move_to_pose/move_to_pose.py | 90 +++++++++++++++++++--------- tests/test_move_to_pose.py | 74 ++++++++++++++++++++++- 2 files changed, 134 insertions(+), 30 deletions(-) diff --git a/Control/move_to_pose/move_to_pose.py b/Control/move_to_pose/move_to_pose.py index 279ba0625b..34736a2e21 100644 --- a/Control/move_to_pose/move_to_pose.py +++ b/Control/move_to_pose/move_to_pose.py @@ -5,6 +5,7 @@ Author: Daniel Ingram (daniel-s-ingram) Atsushi Sakai (@Atsushi_twi) Seied Muhammad Yazdian (@Muhammad-Yazdian) + Wang Zheng (@Aglargil) P. I. Corke, "Robotics, Vision & Control", Springer 2017, ISBN 978-3-319-54413-7 @@ -12,8 +13,13 @@ import matplotlib.pyplot as plt import numpy as np -from random import random +import sys +import pathlib + +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) from utils.angle import angle_mod +from random import random + class PathFinderController: """ @@ -70,14 +76,20 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): # [-pi, pi] to prevent unstable behavior e.g. difference going # from 0 rad to 2*pi rad with slight turn + # Ref: The velocity v always has a constant sign which depends on the initial value of α. rho = np.hypot(x_diff, y_diff) - alpha = angle_mod(np.arctan2(y_diff, x_diff) - theta) - beta = angle_mod(theta_goal - theta - alpha) v = self.Kp_rho * rho - w = self.Kp_alpha * alpha - self.Kp_beta * beta + alpha = angle_mod(np.arctan2(y_diff, x_diff) - theta) + beta = angle_mod(theta_goal - theta - alpha) if alpha > np.pi / 2 or alpha < -np.pi / 2: + # recalculate alpha to make alpha in the range of [-pi/2, pi/2] + alpha = angle_mod(np.arctan2(-y_diff, -x_diff) - theta) + beta = angle_mod(theta_goal - theta - alpha) + w = self.Kp_alpha * alpha - self.Kp_beta * beta v = -v + else: + w = self.Kp_alpha * alpha - self.Kp_beta * beta return rho, v, w @@ -85,6 +97,7 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): # simulation parameters controller = PathFinderController(9, 15, 3) dt = 0.01 +MAX_SIM_TIME = 5 # seconds, robot will stop moving when time exceeds this value # Robot specifications MAX_LINEAR_SPEED = 15 @@ -101,18 +114,19 @@ def move_to_pose(x_start, y_start, theta_start, x_goal, y_goal, theta_goal): x_diff = x_goal - x y_diff = y_goal - y - x_traj, y_traj = [], [] + x_traj, y_traj, v_traj, w_traj = [x], [y], [0], [0] rho = np.hypot(x_diff, y_diff) - while rho > 0.001: + t = 0 + while rho > 0.001 and t < MAX_SIM_TIME: + t += dt x_traj.append(x) y_traj.append(y) x_diff = x_goal - x y_diff = y_goal - y - rho, v, w = controller.calc_control_command( - x_diff, y_diff, theta, theta_goal) + rho, v, w = controller.calc_control_command(x_diff, y_diff, theta, theta_goal) if abs(v) > MAX_LINEAR_SPEED: v = np.sign(v) * MAX_LINEAR_SPEED @@ -120,18 +134,35 @@ def move_to_pose(x_start, y_start, theta_start, x_goal, y_goal, theta_goal): if abs(w) > MAX_ANGULAR_SPEED: w = np.sign(w) * MAX_ANGULAR_SPEED + v_traj.append(v) + w_traj.append(w) + theta = theta + w * dt x = x + v * np.cos(theta) * dt y = y + v * np.sin(theta) * dt if show_animation: # pragma: no cover plt.cla() - plt.arrow(x_start, y_start, np.cos(theta_start), - np.sin(theta_start), color='r', width=0.1) - plt.arrow(x_goal, y_goal, np.cos(theta_goal), - np.sin(theta_goal), color='g', width=0.1) + plt.arrow( + x_start, + y_start, + np.cos(theta_start), + np.sin(theta_start), + color="r", + width=0.1, + ) + plt.arrow( + x_goal, + y_goal, + np.cos(theta_goal), + np.sin(theta_goal), + color="g", + width=0.1, + ) plot_vehicle(x, y, theta, x_traj, y_traj) + return x_traj, y_traj, v_traj, w_traj + def plot_vehicle(x, y, theta, x_traj, y_traj): # pragma: no cover # Corners of triangular vehicle when pointing to the right (0 radians) @@ -144,16 +175,16 @@ def plot_vehicle(x, y, theta, x_traj, y_traj): # pragma: no cover p2 = np.matmul(T, p2_i) p3 = np.matmul(T, p3_i) - plt.plot([p1[0], p2[0]], [p1[1], p2[1]], 'k-') - plt.plot([p2[0], p3[0]], [p2[1], p3[1]], 'k-') - plt.plot([p3[0], p1[0]], [p3[1], p1[1]], 'k-') + plt.plot([p1[0], p2[0]], [p1[1], p2[1]], "k-") + plt.plot([p2[0], p3[0]], [p2[1], p3[1]], "k-") + plt.plot([p3[0], p1[0]], [p3[1], p1[1]], "k-") - plt.plot(x_traj, y_traj, 'b--') + plt.plot(x_traj, y_traj, "b--") # for stopping simulation with the esc key. plt.gcf().canvas.mpl_connect( - 'key_release_event', - lambda event: [exit(0) if event.key == 'escape' else None]) + "key_release_event", lambda event: [exit(0) if event.key == "escape" else None] + ) plt.xlim(0, 20) plt.ylim(0, 20) @@ -162,15 +193,16 @@ def plot_vehicle(x, y, theta, x_traj, y_traj): # pragma: no cover def transformation_matrix(x, y, theta): - return np.array([ - [np.cos(theta), -np.sin(theta), x], - [np.sin(theta), np.cos(theta), y], - [0, 0, 1] - ]) + return np.array( + [ + [np.cos(theta), -np.sin(theta), x], + [np.sin(theta), np.cos(theta), y], + [0, 0, 1], + ] + ) def main(): - for i in range(5): x_start = 20.0 * random() y_start = 20.0 * random() @@ -178,10 +210,14 @@ def main(): x_goal = 20 * random() y_goal = 20 * random() theta_goal = 2 * np.pi * random() - np.pi - print(f"Initial x: {round(x_start, 2)} m\nInitial y: {round(y_start, 2)} m\nInitial theta: {round(theta_start, 2)} rad\n") - print(f"Goal x: {round(x_goal, 2)} m\nGoal y: {round(y_goal, 2)} m\nGoal theta: {round(theta_goal, 2)} rad\n") + print( + f"Initial x: {round(x_start, 2)} m\nInitial y: {round(y_start, 2)} m\nInitial theta: {round(theta_start, 2)} rad\n" + ) + print( + f"Goal x: {round(x_goal, 2)} m\nGoal y: {round(y_goal, 2)} m\nGoal theta: {round(theta_goal, 2)} rad\n" + ) move_to_pose(x_start, y_start, theta_start, x_goal, y_goal, theta_goal) -if __name__ == '__main__': +if __name__ == "__main__": main() diff --git a/tests/test_move_to_pose.py b/tests/test_move_to_pose.py index 8bc11a8d24..94c3ec1102 100644 --- a/tests/test_move_to_pose.py +++ b/tests/test_move_to_pose.py @@ -1,13 +1,81 @@ +import itertools +import numpy as np import conftest # Add root path to sys.path from Control.move_to_pose import move_to_pose as m -def test_1(): +def test_random(): m.show_animation = False m.main() -def test_2(): +def test_stability(): + """ + This unit test tests the move_to_pose.py program for stability + """ + m.show_animation = False + x_start = 5 + y_start = 5 + theta_start = 0 + x_goal = 1 + y_goal = 4 + theta_goal = 0 + _, _, v_traj, w_traj = m.move_to_pose( + x_start, y_start, theta_start, x_goal, y_goal, theta_goal + ) + + def v_is_change(current, previous): + return abs(current - previous) > m.MAX_LINEAR_SPEED + + def w_is_change(current, previous): + return abs(current - previous) > m.MAX_ANGULAR_SPEED + + # Check if the speed is changing too much + window_size = 10 + count_threshold = 4 + v_change = [v_is_change(v_traj[i], v_traj[i - 1]) for i in range(1, len(v_traj))] + w_change = [w_is_change(w_traj[i], w_traj[i - 1]) for i in range(1, len(w_traj))] + for i in range(len(v_change) - window_size + 1): + v_window = v_change[i : i + window_size] + w_window = w_change[i : i + window_size] + + v_unstable = sum(v_window) > count_threshold + w_unstable = sum(w_window) > count_threshold + + assert not v_unstable, ( + f"v_unstable in window [{i}, {i + window_size}], unstable count: {sum(v_window)}" + ) + assert not w_unstable, ( + f"w_unstable in window [{i}, {i + window_size}], unstable count: {sum(w_window)}" + ) + + +def test_reach_goal(): + """ + This unit test tests the move_to_pose.py program for reaching the goal + """ + m.show_animation = False + x_start = 5 + y_start = 5 + theta_start_list = [0, np.pi / 2, np.pi, 3 * np.pi / 2] + x_goal_list = [0, 5, 10] + y_goal_list = [0, 5, 10] + theta_goal = 0 + for theta_start, x_goal, y_goal in itertools.product( + theta_start_list, x_goal_list, y_goal_list + ): + x_traj, y_traj, _, _ = m.move_to_pose( + x_start, y_start, theta_start, x_goal, y_goal, theta_goal + ) + x_diff = x_goal - x_traj[-1] + y_diff = y_goal - y_traj[-1] + rho = np.hypot(x_diff, y_diff) + assert rho < 0.001, ( + f"start:[{x_start}, {y_start}, {theta_start}], goal:[{x_goal}, {y_goal}, {theta_goal}], rho: {rho} is too large" + ) + + +def test_max_speed(): """ This unit test tests the move_to_pose.py program for a MAX_LINEAR_SPEED and MAX_ANGULAR_SPEED @@ -18,5 +86,5 @@ def test_2(): m.main() -if __name__ == '__main__': +if __name__ == "__main__": conftest.run_this_test(__file__) From 64779298ffa77c918c63f9206b694f0d8d439c71 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 21 Feb 2025 21:40:21 +0900 Subject: [PATCH 238/312] =?UTF-8?q?refactor:=20rename=20files=20and=20upda?= =?UTF-8?q?te=20references=20for=20inverted=20pendulum=20an=E2=80=A6=20(#1?= =?UTF-8?q?171)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * refactor: rename files and update references for inverted pendulum and path tracking modules * refactor: rename inverted pendulum control files and update type check references * refactor: update import statements to use consistent casing for InvertedPendulum module --- Control/move_to_pose/__init__.py | 0 .../inverted_pendulum_lqr_control.py | 0 .../inverted_pendulum_mpc_control.py | 0 {Control => PathTracking/move_to_pose}/__init__.py | 0 .../move_to_pose/move_to_pose.py | 0 .../move_to_pose/move_to_pose_robot.py | 0 docs/index_main.rst | 2 +- docs/modules/10_control/control_main.rst | 12 ------------ .../inverted-pendulum.png | Bin .../inverted_pendulum_main.rst} | 6 ++++-- docs/modules/11_utils/utils_main.rst | 2 +- docs/modules/12_appendix/appendix_main.rst | 2 +- .../technologies_for_robotics_main.rst | 10 ++++++++++ .../move_to_a_pose_control_main.rst | 0 docs/modules/6_path_tracking/path_tracking_main.rst | 1 + tests/test_inverted_pendulum_lqr_control.py | 2 +- tests/test_inverted_pendulum_mpc_control.py | 2 +- tests/test_move_to_pose.py | 2 +- tests/test_move_to_pose_robot.py | 2 +- tests/test_mypy_type_check.py | 2 +- 20 files changed, 23 insertions(+), 22 deletions(-) delete mode 100644 Control/move_to_pose/__init__.py rename {Control/inverted_pendulum => InvertedPendulum}/inverted_pendulum_lqr_control.py (100%) rename {Control/inverted_pendulum => InvertedPendulum}/inverted_pendulum_mpc_control.py (100%) rename {Control => PathTracking/move_to_pose}/__init__.py (100%) rename {Control => PathTracking}/move_to_pose/move_to_pose.py (100%) rename {Control => PathTracking}/move_to_pose/move_to_pose_robot.py (100%) delete mode 100644 docs/modules/10_control/control_main.rst rename docs/modules/{10_control/inverted_pendulum_control => 10_inverted_pendulum}/inverted-pendulum.png (100%) rename docs/modules/{10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst => 10_inverted_pendulum/inverted_pendulum_main.rst} (97%) rename docs/modules/{10_control => 6_path_tracking}/move_to_a_pose_control/move_to_a_pose_control_main.rst (100%) diff --git a/Control/move_to_pose/__init__.py b/Control/move_to_pose/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/Control/inverted_pendulum/inverted_pendulum_lqr_control.py b/InvertedPendulum/inverted_pendulum_lqr_control.py similarity index 100% rename from Control/inverted_pendulum/inverted_pendulum_lqr_control.py rename to InvertedPendulum/inverted_pendulum_lqr_control.py diff --git a/Control/inverted_pendulum/inverted_pendulum_mpc_control.py b/InvertedPendulum/inverted_pendulum_mpc_control.py similarity index 100% rename from Control/inverted_pendulum/inverted_pendulum_mpc_control.py rename to InvertedPendulum/inverted_pendulum_mpc_control.py diff --git a/Control/__init__.py b/PathTracking/move_to_pose/__init__.py similarity index 100% rename from Control/__init__.py rename to PathTracking/move_to_pose/__init__.py diff --git a/Control/move_to_pose/move_to_pose.py b/PathTracking/move_to_pose/move_to_pose.py similarity index 100% rename from Control/move_to_pose/move_to_pose.py rename to PathTracking/move_to_pose/move_to_pose.py diff --git a/Control/move_to_pose/move_to_pose_robot.py b/PathTracking/move_to_pose/move_to_pose_robot.py similarity index 100% rename from Control/move_to_pose/move_to_pose_robot.py rename to PathTracking/move_to_pose/move_to_pose_robot.py diff --git a/docs/index_main.rst b/docs/index_main.rst index c1e8d22d32..75805d1184 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -43,7 +43,7 @@ this graph shows GitHub star history of this project: modules/7_arm_navigation/arm_navigation modules/8_aerial_navigation/aerial_navigation modules/9_bipedal/bipedal - modules/10_control/control + modules/10_inverted_pendulum/inverted_pendulum modules/11_utils/utils modules/12_appendix/appendix diff --git a/docs/modules/10_control/control_main.rst b/docs/modules/10_control/control_main.rst deleted file mode 100644 index cee2aa9e8e..0000000000 --- a/docs/modules/10_control/control_main.rst +++ /dev/null @@ -1,12 +0,0 @@ -.. _control: - -Control -================= - -.. toctree:: - :maxdepth: 2 - :caption: Contents - - inverted_pendulum_control/inverted_pendulum_control - move_to_a_pose_control/move_to_a_pose_control - diff --git a/docs/modules/10_control/inverted_pendulum_control/inverted-pendulum.png b/docs/modules/10_inverted_pendulum/inverted-pendulum.png similarity index 100% rename from docs/modules/10_control/inverted_pendulum_control/inverted-pendulum.png rename to docs/modules/10_inverted_pendulum/inverted-pendulum.png diff --git a/docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst b/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst similarity index 97% rename from docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst rename to docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst index e41729fd61..048cbea9ac 100644 --- a/docs/modules/10_control/inverted_pendulum_control/inverted_pendulum_control_main.rst +++ b/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst @@ -1,5 +1,7 @@ -Inverted Pendulum Control ------------------------------ +.. _`Inverted Pendulum`: + +Inverted Pendulum +------------------ An inverted pendulum on a cart consists of a mass :math:`m` at the top of a pole of length :math:`l` pivoted on a horizontally moving base as shown in the adjacent. diff --git a/docs/modules/11_utils/utils_main.rst b/docs/modules/11_utils/utils_main.rst index ff79a26205..95c982b077 100644 --- a/docs/modules/11_utils/utils_main.rst +++ b/docs/modules/11_utils/utils_main.rst @@ -1,4 +1,4 @@ -.. _utils: +.. _`utils`: Utilities ========== diff --git a/docs/modules/12_appendix/appendix_main.rst b/docs/modules/12_appendix/appendix_main.rst index a55389e1e6..d0b9eeea3a 100644 --- a/docs/modules/12_appendix/appendix_main.rst +++ b/docs/modules/12_appendix/appendix_main.rst @@ -1,4 +1,4 @@ -.. _appendix: +.. _`Appendix`: Appendix ============== diff --git a/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst index c77997a138..0ed51e961b 100644 --- a/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst +++ b/docs/modules/1_introduction/3_technologies_for_robotics/technologies_for_robotics_main.rst @@ -56,3 +56,13 @@ Robot type specific technologies #. :ref:`Aerial Navigation` #. :ref:`Bipedal` +#. :ref:`Inverted Pendulum` + + +Additional Information +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +#. :ref:`utils` +#. :ref:`Appendix` + + diff --git a/docs/modules/10_control/move_to_a_pose_control/move_to_a_pose_control_main.rst b/docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst similarity index 100% rename from docs/modules/10_control/move_to_a_pose_control/move_to_a_pose_control_main.rst rename to docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst diff --git a/docs/modules/6_path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst index 130a2340c1..d98e324583 100644 --- a/docs/modules/6_path_tracking/path_tracking_main.rst +++ b/docs/modules/6_path_tracking/path_tracking_main.rst @@ -16,3 +16,4 @@ Path tracking is the ability of a robot to follow the reference path generated b lqr_speed_and_steering_control/lqr_speed_and_steering_control model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control cgmres_nmpc/cgmres_nmpc + move_to_a_pose_control/move_to_a_pose_control diff --git a/tests/test_inverted_pendulum_lqr_control.py b/tests/test_inverted_pendulum_lqr_control.py index cbbabb93b1..62afda71c3 100644 --- a/tests/test_inverted_pendulum_lqr_control.py +++ b/tests/test_inverted_pendulum_lqr_control.py @@ -1,5 +1,5 @@ import conftest -from Control.inverted_pendulum import inverted_pendulum_lqr_control as m +from InvertedPendulum import inverted_pendulum_lqr_control as m def test_1(): diff --git a/tests/test_inverted_pendulum_mpc_control.py b/tests/test_inverted_pendulum_mpc_control.py index 800aefd7d5..94859c2e0a 100644 --- a/tests/test_inverted_pendulum_mpc_control.py +++ b/tests/test_inverted_pendulum_mpc_control.py @@ -1,6 +1,6 @@ import conftest -from Control.inverted_pendulum import inverted_pendulum_mpc_control as m +from InvertedPendulum import inverted_pendulum_mpc_control as m def test1(): diff --git a/tests/test_move_to_pose.py b/tests/test_move_to_pose.py index 94c3ec1102..e06d801555 100644 --- a/tests/test_move_to_pose.py +++ b/tests/test_move_to_pose.py @@ -1,7 +1,7 @@ import itertools import numpy as np import conftest # Add root path to sys.path -from Control.move_to_pose import move_to_pose as m +from PathTracking.move_to_pose import move_to_pose as m def test_random(): diff --git a/tests/test_move_to_pose_robot.py b/tests/test_move_to_pose_robot.py index a93b44d198..7a82f98556 100644 --- a/tests/test_move_to_pose_robot.py +++ b/tests/test_move_to_pose_robot.py @@ -1,5 +1,5 @@ import conftest # Add root path to sys.path -from Control.move_to_pose import move_to_pose as m +from PathTracking.move_to_pose import move_to_pose as m def test_1(): diff --git a/tests/test_mypy_type_check.py b/tests/test_mypy_type_check.py index 07afb40afd..6b933c1011 100644 --- a/tests/test_mypy_type_check.py +++ b/tests/test_mypy_type_check.py @@ -7,12 +7,12 @@ "AerialNavigation", "ArmNavigation", "Bipedal", - "Control", "Localization", "Mapping", "PathPlanning", "PathTracking", "SLAM", + "InvertedPendulum" ] From 6e13e8292aad80661093603ed262c6f0bdcb4137 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Feb 2025 08:07:42 +0900 Subject: [PATCH 239/312] build(deps): bump ruff from 0.9.6 to 0.9.7 in /requirements (#1173) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.6 to 0.9.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.6...0.9.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 8176364c29..b439ea4266 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.4 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.6 # For unit test +ruff == 0.9.7 # For unit test From 0c8ff11645e6804db18bec6bd918e03ed03454f7 Mon Sep 17 00:00:00 2001 From: Jonathan Schwartz Date: Tue, 25 Feb 2025 06:53:36 -0500 Subject: [PATCH 240/312] Space-Time AStar (#1170) * wip - sketch out obstacles * move to correct path * better animation * clean up * use np to sample points * implemented time-based A* * cleaning up Grid + adding new obstacle arrangement * added unit test * formatting p1 * format STA* file * remove newlines by docstrings * linter * working on typehints * fix linter errors * lint some more * appease AppVeyor * dataclasses are :fire: * back to @total_ordering * trailing whitespace * add docs page on SpaceTimeA* * docs lint * remove trailing newlines in doc * address comments * Update docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst --------- Co-authored-by: Atsushi Sakai --- .../GridWithDynamicObstacles.py | 273 ++++++++++++++++++ .../TimeBasedPathPlanning/SpaceTimeAStar.py | 220 ++++++++++++++ .../TimeBasedPathPlanning/__init__.py | 0 .../5_path_planning/path_planning_main.rst | 1 + .../time_based_grid_search_main.rst | 22 ++ tests/test_space_time_astar.py | 33 +++ 6 files changed, 549 insertions(+) create mode 100644 PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py create mode 100644 PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py create mode 100644 PathPlanning/TimeBasedPathPlanning/__init__.py create mode 100644 docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst create mode 100644 tests/test_space_time_astar.py diff --git a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py new file mode 100644 index 0000000000..7b0190d023 --- /dev/null +++ b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py @@ -0,0 +1,273 @@ +""" +This file implements a grid with a 3d reservation matrix with dimensions for x, y, and time. There +is also infrastructure to generate dynamic obstacles that move around the grid. The obstacles' paths +are stored in the reservation matrix on creation. +""" +import numpy as np +import matplotlib.pyplot as plt +from enum import Enum +from dataclasses import dataclass + +@dataclass(order=True) +class Position: + x: int + y: int + + def as_ndarray(self) -> np.ndarray: + return np.array([self.x, self.y]) + + def __add__(self, other): + if isinstance(other, Position): + return Position(self.x + other.x, self.y + other.y) + raise NotImplementedError( + f"Addition not supported for Position and {type(other)}" + ) + + def __sub__(self, other): + if isinstance(other, Position): + return Position(self.x - other.x, self.y - other.y) + raise NotImplementedError( + f"Subtraction not supported for Position and {type(other)}" + ) + + +class ObstacleArrangement(Enum): + # Random obstacle positions and movements + RANDOM = 0 + # Obstacles start in a line in y at center of grid and move side-to-side in x + ARRANGEMENT1 = 1 + + +class Grid: + # Set in constructor + grid_size: np.ndarray + reservation_matrix: np.ndarray + obstacle_paths: list[list[Position]] = [] + # Obstacles will never occupy these points. Useful to avoid impossible scenarios + obstacle_avoid_points: list[Position] = [] + + # Number of time steps in the simulation + time_limit: int + + # Logging control + verbose = False + + def __init__( + self, + grid_size: np.ndarray, + num_obstacles: int = 40, + obstacle_avoid_points: list[Position] = [], + obstacle_arrangement: ObstacleArrangement = ObstacleArrangement.RANDOM, + time_limit: int = 100, + ): + self.obstacle_avoid_points = obstacle_avoid_points + self.time_limit = time_limit + self.grid_size = grid_size + self.reservation_matrix = np.zeros((grid_size[0], grid_size[1], self.time_limit)) + + if num_obstacles > self.grid_size[0] * self.grid_size[1]: + raise Exception("Number of obstacles is greater than grid size!") + + if obstacle_arrangement == ObstacleArrangement.RANDOM: + self.obstacle_paths = self.generate_dynamic_obstacles(num_obstacles) + elif obstacle_arrangement == ObstacleArrangement.ARRANGEMENT1: + self.obstacle_paths = self.obstacle_arrangement_1(num_obstacles) + + for i, path in enumerate(self.obstacle_paths): + obs_idx = i + 1 # avoid using 0 - that indicates free space in the grid + for t, position in enumerate(path): + # Reserve old & new position at this time step + if t > 0: + self.reservation_matrix[path[t - 1].x, path[t - 1].y, t] = obs_idx + self.reservation_matrix[position.x, position.y, t] = obs_idx + + """ + Generate dynamic obstacles that move around the grid. Initial positions and movements are random + """ + def generate_dynamic_obstacles(self, obs_count: int) -> list[list[Position]]: + obstacle_paths = [] + for _ in (0, obs_count): + # Sample until a free starting space is found + initial_position = self.sample_random_position() + while not self.valid_obstacle_position(initial_position, 0): + initial_position = self.sample_random_position() + + positions = [initial_position] + if self.verbose: + print("Obstacle initial position: ", initial_position) + + # Encourage obstacles to mostly stay in place - too much movement leads to chaotic planning scenarios + # that are not fun to watch + weights = [0.05, 0.05, 0.05, 0.05, 0.8] + diffs = [ + Position(0, 1), + Position(0, -1), + Position(1, 0), + Position(-1, 0), + Position(0, 0), + ] + + for t in range(1, self.time_limit - 1): + sampled_indices = np.random.choice( + len(diffs), size=5, replace=False, p=weights + ) + rand_diffs = [diffs[i] for i in sampled_indices] + + valid_position = None + for diff in rand_diffs: + new_position = positions[-1] + diff + + if not self.valid_obstacle_position(new_position, t): + continue + + valid_position = new_position + break + + # Impossible situation for obstacle - stay in place + # -> this can happen if the oaths of other obstacles this one + if valid_position is None: + valid_position = positions[-1] + + positions.append(valid_position) + + obstacle_paths.append(positions) + + return obstacle_paths + + """ + Generate a line of obstacles in y at the center of the grid that move side-to-side in x + Bottom half start moving right, top half start moving left. If `obs_count` is less than the length of + the grid, only the first `obs_count` obstacles will be generated. + """ + def obstacle_arrangement_1(self, obs_count: int) -> list[list[Position]]: + obstacle_paths = [] + half_grid_x = self.grid_size[0] // 2 + half_grid_y = self.grid_size[1] // 2 + + for y_idx in range(0, min(obs_count, self.grid_size[1])): + moving_right = y_idx < half_grid_y + position = Position(half_grid_x, y_idx) + path = [position] + + for t in range(1, self.time_limit - 1): + # sit in place every other time step + if t % 2 == 0: + path.append(position) + continue + + # first check if we should switch direction (at edge of grid) + if (moving_right and position.x == self.grid_size[0] - 1) or ( + not moving_right and position.x == 0 + ): + moving_right = not moving_right + # step in direction + position = Position( + position.x + (1 if moving_right else -1), position.y + ) + path.append(position) + + obstacle_paths.append(path) + + return obstacle_paths + + """ + Check if the given position is valid at time t + + input: + position (Position): (x, y) position + t (int): time step + + output: + bool: True if position/time combination is valid, False otherwise + """ + def valid_position(self, position: Position, t: int) -> bool: + # Check if new position is in grid + if not self.inside_grid_bounds(position): + return False + + # Check if new position is not occupied at time t + return self.reservation_matrix[position.x, position.y, t] == 0 + + """ + Returns True if the given position is valid at time t and is not in the set of obstacle_avoid_points + """ + def valid_obstacle_position(self, position: Position, t: int) -> bool: + return ( + self.valid_position(position, t) + and position not in self.obstacle_avoid_points + ) + + """ + Returns True if the given position is within the grid's boundaries + """ + def inside_grid_bounds(self, position: Position) -> bool: + return ( + position.x >= 0 + and position.x < self.grid_size[0] + and position.y >= 0 + and position.y < self.grid_size[1] + ) + + """ + Sample a random position that is within the grid's boundaries + + output: + Position: (x, y) position + """ + def sample_random_position(self) -> Position: + return Position( + np.random.randint(0, self.grid_size[0]), + np.random.randint(0, self.grid_size[1]), + ) + + """ + Returns a tuple of (x_positions, y_positions) of the obstacles at time t + """ + def get_obstacle_positions_at_time(self, t: int) -> tuple[list[int], list[int]]: + x_positions = [] + y_positions = [] + for obs_path in self.obstacle_paths: + x_positions.append(obs_path[t].x) + y_positions.append(obs_path[t].y) + return (x_positions, y_positions) + + +show_animation = True + + +def main(): + grid = Grid( + np.array([11, 11]), + num_obstacles=10, + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + ) + + if not show_animation: + return + + fig = plt.figure(figsize=(8, 7)) + ax = fig.add_subplot( + autoscale_on=False, + xlim=(0, grid.grid_size[0] - 1), + ylim=(0, grid.grid_size[1] - 1), + ) + ax.set_aspect("equal") + ax.grid() + ax.set_xticks(np.arange(0, 11, 1)) + ax.set_yticks(np.arange(0, 11, 1)) + (obs_points,) = ax.plot([], [], "ro", ms=15) + + # for stopping simulation with the esc key. + plt.gcf().canvas.mpl_connect( + "key_release_event", lambda event: [exit(0) if event.key == "escape" else None] + ) + + for i in range(0, grid.time_limit - 1): + obs_positions = grid.get_obstacle_positions_at_time(i) + obs_points.set_data(obs_positions[0], obs_positions[1]) + plt.pause(0.2) + plt.show() + + +if __name__ == "__main__": + main() diff --git a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py new file mode 100644 index 0000000000..3b3613d695 --- /dev/null +++ b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py @@ -0,0 +1,220 @@ +""" +Space-time A* Algorithm + This script demonstrates the Space-time A* algorithm for path planning in a grid world with moving obstacles. + This algorithm is different from normal 2D A* in one key way - the cost (often notated as g(n)) is + the number of time steps it took to get to a given node, instead of the number of cells it has + traversed. This ensures the path is time-optimal, while respescting any dynamic obstacles in the environment. + + Reference: https://www.davidsilver.uk/wp-content/uploads/2020/03/coop-path-AIWisdom.pdf +""" + +import numpy as np +import matplotlib.pyplot as plt +from PathPlanning.TimeBasedPathPlanning.GridWithDynamicObstacles import ( + Grid, + ObstacleArrangement, + Position, +) +import heapq +from collections.abc import Generator +import random +from dataclasses import dataclass +from functools import total_ordering + + +# Seed randomness for reproducibility +RANDOM_SEED = 50 +random.seed(RANDOM_SEED) +np.random.seed(RANDOM_SEED) + +@dataclass() +# Note: Total_ordering is used instead of adding `order=True` to the @dataclass decorator because +# this class needs to override the __lt__ and __eq__ methods to ignore parent_index. Parent +# index is just used to track the path found by the algorithm, and has no effect on the quality +# of a node. +@total_ordering +class Node: + position: Position + time: int + heuristic: int + parent_index: int + + """ + This is what is used to drive node expansion. The node with the lowest value is expanded next. + This comparison prioritizes the node with the lowest cost-to-come (self.time) + cost-to-go (self.heuristic) + """ + def __lt__(self, other: object): + if not isinstance(other, Node): + return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") + return (self.time + self.heuristic) < (other.time + other.heuristic) + + def __eq__(self, other: object): + if not isinstance(other, Node): + return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") + return self.position == other.position and self.time == other.time + + +class NodePath: + path: list[Node] + positions_at_time: dict[int, Position] = {} + + def __init__(self, path: list[Node]): + self.path = path + for node in path: + self.positions_at_time[node.time] = node.position + + """ + Get the position of the path at a given time + """ + def get_position(self, time: int) -> Position | None: + return self.positions_at_time.get(time) + + """ + Time stamp of the last node in the path + """ + def goal_reached_time(self) -> int: + return self.path[-1].time + + def __repr__(self): + repr_string = "" + for i, node in enumerate(self.path): + repr_string += f"{i}: {node}\n" + return repr_string + + +class SpaceTimeAStar: + grid: Grid + start: Position + goal: Position + + def __init__(self, grid: Grid, start: Position, goal: Position): + self.grid = grid + self.start = start + self.goal = goal + + def plan(self, verbose: bool = False) -> NodePath: + open_set: list[Node] = [] + heapq.heappush( + open_set, Node(self.start, 0, self.calculate_heuristic(self.start), -1) + ) + + expanded_set: list[Node] = [] + while open_set: + expanded_node: Node = heapq.heappop(open_set) + if verbose: + print("Expanded node:", expanded_node) + + if expanded_node.time + 1 >= self.grid.time_limit: + if verbose: + print(f"\tSkipping node that is past time limit: {expanded_node}") + continue + + if expanded_node.position == self.goal: + print(f"Found path to goal after {len(expanded_set)} expansions") + path = [] + path_walker: Node = expanded_node + while True: + path.append(path_walker) + if path_walker.parent_index == -1: + break + path_walker = expanded_set[path_walker.parent_index] + + # reverse path so it goes start -> goal + path.reverse() + return NodePath(path) + + expanded_idx = len(expanded_set) + expanded_set.append(expanded_node) + + for child in self.generate_successors(expanded_node, expanded_idx, verbose): + heapq.heappush(open_set, child) + + raise Exception("No path found") + + """ + Generate possible successors of the provided `parent_node` + """ + def generate_successors( + self, parent_node: Node, parent_node_idx: int, verbose: bool + ) -> Generator[Node, None, None]: + diffs = [ + Position(0, 0), + Position(1, 0), + Position(-1, 0), + Position(0, 1), + Position(0, -1), + ] + for diff in diffs: + new_pos = parent_node.position + diff + if self.grid.valid_position(new_pos, parent_node.time + 1): + new_node = Node( + new_pos, + parent_node.time + 1, + self.calculate_heuristic(new_pos), + parent_node_idx, + ) + if verbose: + print("\tNew successor node: ", new_node) + yield new_node + + def calculate_heuristic(self, position) -> int: + diff = self.goal - position + return abs(diff.x) + abs(diff.y) + + +show_animation = True +verbose = False + +def main(): + start = Position(1, 11) + goal = Position(19, 19) + grid_side_length = 21 + grid = Grid( + np.array([grid_side_length, grid_side_length]), + num_obstacles=40, + obstacle_avoid_points=[start, goal], + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + ) + + planner = SpaceTimeAStar(grid, start, goal) + path = planner.plan(verbose) + + if verbose: + print(f"Path: {path}") + + if not show_animation: + return + + fig = plt.figure(figsize=(10, 7)) + ax = fig.add_subplot( + autoscale_on=False, + xlim=(0, grid.grid_size[0] - 1), + ylim=(0, grid.grid_size[1] - 1), + ) + ax.set_aspect("equal") + ax.grid() + ax.set_xticks(np.arange(0, grid_side_length, 1)) + ax.set_yticks(np.arange(0, grid_side_length, 1)) + + (start_and_goal,) = ax.plot([], [], "mD", ms=15, label="Start and Goal") + start_and_goal.set_data([start.x, goal.x], [start.y, goal.y]) + (obs_points,) = ax.plot([], [], "ro", ms=15, label="Obstacles") + (path_points,) = ax.plot([], [], "bo", ms=10, label="Path Found") + ax.legend(bbox_to_anchor=(1.05, 1)) + + # for stopping simulation with the esc key. + plt.gcf().canvas.mpl_connect( + "key_release_event", lambda event: [exit(0) if event.key == "escape" else None] + ) + + for i in range(0, path.goal_reached_time()): + obs_positions = grid.get_obstacle_positions_at_time(i) + obs_points.set_data(obs_positions[0], obs_positions[1]) + path_position = path.get_position(i) + path_points.set_data([path_position.x], [path_position.y]) + plt.pause(0.2) + plt.show() + + +if __name__ == "__main__": + main() diff --git a/PathPlanning/TimeBasedPathPlanning/__init__.py b/PathPlanning/TimeBasedPathPlanning/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/docs/modules/5_path_planning/path_planning_main.rst b/docs/modules/5_path_planning/path_planning_main.rst index a0f9c30a3d..0c84a19c22 100644 --- a/docs/modules/5_path_planning/path_planning_main.rst +++ b/docs/modules/5_path_planning/path_planning_main.rst @@ -12,6 +12,7 @@ Path planning is the ability of a robot to search feasible and efficient path to dynamic_window_approach/dynamic_window_approach bugplanner/bugplanner grid_base_search/grid_base_search + time_based_grid_search/time_based_grid_search model_predictive_trajectory_generator/model_predictive_trajectory_generator state_lattice_planner/state_lattice_planner prm_planner/prm_planner diff --git a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst new file mode 100644 index 0000000000..0c26badec7 --- /dev/null +++ b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst @@ -0,0 +1,22 @@ +Time based grid search +---------------------- + +Space-time astar +~~~~~~~~~~~~~~~~~~~~~~ + +This is an extension of A* algorithm that supports planning around dynamic obstacles. + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar/path_animation.gif + +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar/path_animation2.gif + +The key difference of this algorithm compared to vanilla A* is that the cost and heuristic are now time-based instead of distance-based. +Using a time-based cost and heuristic ensures the path found is optimal in terms of time to reach the goal. + +The cost is the amount of time it takes to reach a given node, and the heuristic is the minimum amount of time it could take to reach the goal from that node, disregarding all obstacles. +For a simple scenario where the robot can move 1 cell per time step and stop and go as it pleases, the heuristic for time is equivalent to the heuristic for distance. + +References: +~~~~~~~~~~~ + +- `Cooperative Pathfinding `__ diff --git a/tests/test_space_time_astar.py b/tests/test_space_time_astar.py new file mode 100644 index 0000000000..5290738eb4 --- /dev/null +++ b/tests/test_space_time_astar.py @@ -0,0 +1,33 @@ +from PathPlanning.TimeBasedPathPlanning.GridWithDynamicObstacles import ( + Grid, + ObstacleArrangement, + Position, +) +from PathPlanning.TimeBasedPathPlanning import SpaceTimeAStar as m +import numpy as np +import conftest + + +def test_1(): + start = Position(1, 11) + goal = Position(19, 19) + grid_side_length = 21 + grid = Grid( + np.array([grid_side_length, grid_side_length]), + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + ) + + m.show_animation = False + planner = m.SpaceTimeAStar(grid, start, goal) + + path = planner.plan(False) + + # path should have 28 entries + assert len(path.path) == 31 + + # path should end at the goal + assert path.path[-1].position == goal + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From 67a3ca7138384b4a013974dbf22383252f83686e Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Fri, 28 Feb 2025 19:30:24 +0800 Subject: [PATCH 241/312] add state machine (#1172) * add state machine state_machine test state_machine_update * add state machine test/doc * state machine update * state machine generate_plantuml() can show diagram by using https://www.plantuml.com/plantuml/ --- .../StateMachine/robot_behavior_case.py | 111 +++++++ MissionPlanning/StateMachine/state_machine.py | 294 ++++++++++++++++++ docs/index_main.rst | 1 + .../mission_planning_main.rst | 12 + .../state_machine/robot_behavior_case.png | Bin 0 -> 28565 bytes .../state_machine/state_machine_main.rst | 74 +++++ tests/test_state_machine.py | 51 +++ 7 files changed, 543 insertions(+) create mode 100644 MissionPlanning/StateMachine/robot_behavior_case.py create mode 100644 MissionPlanning/StateMachine/state_machine.py create mode 100644 docs/modules/13_mission_planning/mission_planning_main.rst create mode 100644 docs/modules/13_mission_planning/state_machine/robot_behavior_case.png create mode 100644 docs/modules/13_mission_planning/state_machine/state_machine_main.rst create mode 100644 tests/test_state_machine.py diff --git a/MissionPlanning/StateMachine/robot_behavior_case.py b/MissionPlanning/StateMachine/robot_behavior_case.py new file mode 100644 index 0000000000..03ee60ae9f --- /dev/null +++ b/MissionPlanning/StateMachine/robot_behavior_case.py @@ -0,0 +1,111 @@ +""" +A case study of robot behavior using state machine + +author: Wang Zheng (@Aglargil) +""" + +from state_machine import StateMachine + + +class Robot: + def __init__(self): + self.battery = 100 + self.task_progress = 0 + + # Initialize state machine + self.machine = StateMachine("robot_sm", self) + + # Add state transition rules + self.machine.add_transition( + src_state="patrolling", + event="detect_task", + dst_state="executing_task", + guard=None, + action=None, + ) + + self.machine.add_transition( + src_state="executing_task", + event="task_complete", + dst_state="patrolling", + guard=None, + action="reset_task", + ) + + self.machine.add_transition( + src_state="executing_task", + event="low_battery", + dst_state="returning_to_base", + guard="is_battery_low", + ) + + self.machine.add_transition( + src_state="returning_to_base", + event="reach_base", + dst_state="charging", + guard=None, + action=None, + ) + + self.machine.add_transition( + src_state="charging", + event="charge_complete", + dst_state="patrolling", + guard=None, + action="battery_full", + ) + + # Set initial state + self.machine.set_current_state("patrolling") + + def is_battery_low(self): + """Battery level check condition""" + return self.battery < 30 + + def reset_task(self): + """Reset task progress""" + self.task_progress = 0 + print("[Action] Task progress has been reset") + + # Modify state entry callback naming convention (add state_ prefix) + def on_enter_executing_task(self): + print("\n------ Start Executing Task ------") + print(f"Current battery: {self.battery}%") + while self.machine.get_current_state().name == "executing_task": + self.task_progress += 10 + self.battery -= 25 + print( + f"Task progress: {self.task_progress}%, Remaining battery: {self.battery}%" + ) + + if self.task_progress >= 100: + self.machine.process("task_complete") + break + elif self.is_battery_low(): + self.machine.process("low_battery") + break + + def on_enter_returning_to_base(self): + print("\nLow battery, returning to charging station...") + self.machine.process("reach_base") + + def on_enter_charging(self): + print("\n------ Charging ------") + self.battery = 100 + print("Charging complete!") + self.machine.process("charge_complete") + + +# Keep the test section structure the same, only modify the trigger method +if __name__ == "__main__": + robot = Robot() + print(robot.machine.generate_plantuml()) + + print(f"Initial state: {robot.machine.get_current_state().name}") + print("------------") + + # Trigger task detection event + robot.machine.process("detect_task") + + print("\n------------") + print(f"Final state: {robot.machine.get_current_state().name}") diff --git a/MissionPlanning/StateMachine/state_machine.py b/MissionPlanning/StateMachine/state_machine.py new file mode 100644 index 0000000000..de72f0f451 --- /dev/null +++ b/MissionPlanning/StateMachine/state_machine.py @@ -0,0 +1,294 @@ +""" +State Machine + +author: Wang Zheng (@Aglargil) + +Ref: + +- [State Machine] +(https://en.wikipedia.org/wiki/Finite-state_machine) +""" + +import string +from urllib.request import urlopen, Request +from base64 import b64encode +from zlib import compress +from io import BytesIO +from collections.abc import Callable +from matplotlib.image import imread +from matplotlib import pyplot as plt + + +def deflate_and_encode(plantuml_text): + """ + zlib compress the plantuml text and encode it for the plantuml server. + + Ref: https://plantuml.com/en/text-encoding + """ + plantuml_alphabet = ( + string.digits + string.ascii_uppercase + string.ascii_lowercase + "-_" + ) + base64_alphabet = ( + string.ascii_uppercase + string.ascii_lowercase + string.digits + "+/" + ) + b64_to_plantuml = bytes.maketrans( + base64_alphabet.encode("utf-8"), plantuml_alphabet.encode("utf-8") + ) + zlibbed_str = compress(plantuml_text.encode("utf-8")) + compressed_string = zlibbed_str[2:-4] + return b64encode(compressed_string).translate(b64_to_plantuml).decode("utf-8") + + +class State: + def __init__(self, name, on_enter=None, on_exit=None): + self.name = name + self.on_enter = on_enter + self.on_exit = on_exit + + def enter(self): + print(f"entering <{self.name}>") + if self.on_enter: + self.on_enter() + + def exit(self): + print(f"exiting <{self.name}>") + if self.on_exit: + self.on_exit() + + +class StateMachine: + def __init__(self, name: str, model=object): + """Initialize the state machine. + + Args: + name (str): Name of the state machine. + model (object, optional): Model object used to automatically look up callback functions + for states and transitions: + State callbacks: Automatically searches for 'on_enter_' and 'on_exit_' methods. + Transition callbacks: When action or guard parameters are strings, looks up corresponding methods in the model. + + Example: + >>> class MyModel: + ... def on_enter_idle(self): + ... print("Entering idle state") + ... def on_exit_idle(self): + ... print("Exiting idle state") + ... def can_start(self): + ... return True + ... def on_start(self): + ... print("Starting operation") + >>> model = MyModel() + >>> machine = StateMachine("my_machine", model) + """ + self._name = name + self._states = {} + self._events = {} + self._transition_table = {} + self._model = model + self._state: State = None + + def _register_event(self, event: str): + self._events[event] = event + + def _get_state(self, name): + return self._states[name] + + def _get_event(self, name): + return self._events[name] + + def _has_event(self, event: str): + return event in self._events + + def add_transition( + self, + src_state: str | State, + event: str, + dst_state: str | State, + guard: str | Callable = None, + action: str | Callable = None, + ) -> None: + """Add a transition to the state machine. + + Args: + src_state (str | State): The source state where the transition begins. + Can be either a state name or a State object. + event (str): The event that triggers this transition. + dst_state (str | State): The destination state where the transition ends. + Can be either a state name or a State object. + guard (str | Callable, optional): Guard condition for the transition. + If callable: Function that returns bool. + If str: Name of a method in the model class. + If returns True: Transition proceeds. + If returns False: Transition is skipped. + action (str | Callable, optional): Action to execute during transition. + If callable: Function to execute. + If str: Name of a method in the model class. + Executed after guard passes and before entering new state. + + Example: + >>> machine.add_transition( + ... src_state="idle", + ... event="start", + ... dst_state="running", + ... guard="can_start", + ... action="on_start" + ... ) + """ + # Convert string parameters to objects if necessary + self.register_state(src_state) + self._register_event(event) + self.register_state(dst_state) + + def get_state_obj(state): + return state if isinstance(state, State) else self._get_state(state) + + def get_callable(func): + return func if callable(func) else getattr(self._model, func, None) + + src_state_obj = get_state_obj(src_state) + dst_state_obj = get_state_obj(dst_state) + + guard_func = get_callable(guard) if guard else None + action_func = get_callable(action) if action else None + self._transition_table[(src_state_obj.name, event)] = ( + dst_state_obj, + guard_func, + action_func, + ) + + def state_transition(self, src_state: State, event: str): + if (src_state.name, event) not in self._transition_table: + raise ValueError( + f"|{self._name}| invalid transition: <{src_state.name}> : [{event}]" + ) + + dst_state, guard, action = self._transition_table[(src_state.name, event)] + + def call_guard(guard): + if callable(guard): + return guard() + else: + return True + + def call_action(action): + if callable(action): + action() + + if call_guard(guard): + call_action(action) + if src_state.name != dst_state.name: + print( + f"|{self._name}| transitioning from <{src_state.name}> to <{dst_state.name}>" + ) + src_state.exit() + self._state = dst_state + dst_state.enter() + else: + print( + f"|{self._name}| skipping transition from <{src_state.name}> to <{dst_state.name}> because guard failed" + ) + + def register_state(self, state: str | State, on_enter=None, on_exit=None): + """Register a state in the state machine. + + Args: + state (str | State): The state to register. Can be either a string (state name) + or a State object. + on_enter (Callable, optional): Callback function to be executed when entering the state. + If state is a string and on_enter is None, it will look for + a method named 'on_enter_' in the model. + on_exit (Callable, optional): Callback function to be executed when exiting the state. + If state is a string and on_exit is None, it will look for + a method named 'on_exit_' in the model. + Example: + >>> machine.register_state("idle", on_enter=on_enter_idle, on_exit=on_exit_idle) + >>> machine.register_state(State("running", on_enter=on_enter_running, on_exit=on_exit_running)) + """ + if isinstance(state, str): + if on_enter is None: + on_enter = getattr(self._model, "on_enter_" + state, None) + if on_exit is None: + on_exit = getattr(self._model, "on_exit_" + state, None) + self._states[state] = State(state, on_enter, on_exit) + return + + self._states[state.name] = state + + def set_current_state(self, state: State | str): + if isinstance(state, str): + self._state = self._get_state(state) + else: + self._state = state + + def get_current_state(self): + return self._state + + def process(self, event: str) -> None: + """Process an event in the state machine. + + Args: + event: Event name. + + Example: + >>> machine.process("start") + """ + if self._state is None: + raise ValueError("State machine is not initialized") + + if self._has_event(event): + self.state_transition(self._state, event) + else: + raise ValueError(f"Invalid event: {event}") + + def generate_plantuml(self) -> str: + """Generate PlantUML state diagram representation of the state machine. + + Returns: + str: PlantUML state diagram code. + """ + if self._state is None: + raise ValueError("State machine is not initialized") + + plant_uml = ["@startuml"] + plant_uml.append("[*] --> " + self._state.name) + + # Generate transitions + for (src_state, event), ( + dst_state, + guard, + action, + ) in self._transition_table.items(): + transition = f"{src_state} --> {dst_state.name} : {event}" + + # Add guard and action if present + conditions = [] + if guard: + guard_name = guard.__name__ if callable(guard) else guard + conditions.append(f"[{guard_name}]") + if action: + action_name = action.__name__ if callable(action) else action + conditions.append(f"/ {action_name}") + + if conditions: + transition += "\\n" + " ".join(conditions) + + plant_uml.append(transition) + + plant_uml.append("@enduml") + plant_uml_text = "\n".join(plant_uml) + + try: + url = f"http://www.plantuml.com/plantuml/img/{deflate_and_encode(plant_uml_text)}" + headers = {"User-Agent": "Mozilla/5.0"} + request = Request(url, headers=headers) + + with urlopen(request) as response: + content = response.read() + + plt.imshow(imread(BytesIO(content), format="png")) + plt.axis("off") + plt.show() + except Exception as e: + print(f"Error showing PlantUML: {e}") + + return plant_uml_text diff --git a/docs/index_main.rst b/docs/index_main.rst index 75805d1184..65634f32e8 100644 --- a/docs/index_main.rst +++ b/docs/index_main.rst @@ -44,6 +44,7 @@ this graph shows GitHub star history of this project: modules/8_aerial_navigation/aerial_navigation modules/9_bipedal/bipedal modules/10_inverted_pendulum/inverted_pendulum + modules/13_mission_planning/mission_planning modules/11_utils/utils modules/12_appendix/appendix diff --git a/docs/modules/13_mission_planning/mission_planning_main.rst b/docs/modules/13_mission_planning/mission_planning_main.rst new file mode 100644 index 0000000000..385e62f68e --- /dev/null +++ b/docs/modules/13_mission_planning/mission_planning_main.rst @@ -0,0 +1,12 @@ +.. _`Mission Planning`: + +Mission Planning +================ + +Mission planning includes tools such as finite state machines and behavior trees used to describe robot behavior and high level task planning. + +.. toctree:: + :maxdepth: 2 + :caption: Contents + + state_machine/state_machine diff --git a/docs/modules/13_mission_planning/state_machine/robot_behavior_case.png b/docs/modules/13_mission_planning/state_machine/robot_behavior_case.png new file mode 100644 index 0000000000000000000000000000000000000000..fbc1369cbcd71f278a89d38adbcda6da4b737e36 GIT binary patch literal 28565 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 VMQeA>!#)E3qv`LZ-qN)T{cpp^WxxOc literal 0 HcmV?d00001 diff --git a/docs/modules/13_mission_planning/state_machine/state_machine_main.rst b/docs/modules/13_mission_planning/state_machine/state_machine_main.rst new file mode 100644 index 0000000000..abaece1b11 --- /dev/null +++ b/docs/modules/13_mission_planning/state_machine/state_machine_main.rst @@ -0,0 +1,74 @@ +State Machine +------------- + +A state machine is a model used to describe the transitions of an object between different states. It clearly shows how an object changes state based on events and may trigger corresponding actions. + +Core Concepts +~~~~~~~~~~~~~ + +- **State**: A distinct mode or condition of the system (e.g. "Idle", "Running"). Managed by State class with optional on_enter/on_exit callbacks +- **Event**: A trigger signal that may cause state transitions (e.g. "start", "stop") +- **Transition**: A state change path from source to destination state triggered by an event +- **Action**: An operation executed during transition (before entering new state) +- **Guard**: A precondition that must be satisfied to allow transition + +API +~~~ + +.. autoclass:: MissionPlanning.StateMachine.state_machine.StateMachine + :members: add_transition, process, register_state + :special-members: __init__ + +PlantUML Support +~~~~~~~~~~~~~~~~ + +The ``generate_plantuml()`` method creates diagrams showing: + +- Current state (marked with [*] arrow) +- All possible transitions +- Guard conditions in [brackets] +- Actions prefixed with / + +Example +~~~~~~~ + +state machine diagram: ++++++++++++++++++++++++ +.. image:: robot_behavior_case.png + +state transition table: ++++++++++++++++++++++++ +.. list-table:: State Transitions + :header-rows: 1 + :widths: 20 15 20 20 20 + + * - Source State + - Event + - Target State + - Guard + - Action + * - patrolling + - detect_task + - executing_task + - + - + * - executing_task + - task_complete + - patrolling + - + - reset_task + * - executing_task + - low_battery + - returning_to_base + - is_battery_low + - + * - returning_to_base + - reach_base + - charging + - + - + * - charging + - charge_complete + - patrolling + - + - \ No newline at end of file diff --git a/tests/test_state_machine.py b/tests/test_state_machine.py new file mode 100644 index 0000000000..e36a8120fd --- /dev/null +++ b/tests/test_state_machine.py @@ -0,0 +1,51 @@ +import conftest + +from MissionPlanning.StateMachine.state_machine import StateMachine + + +def test_transition(): + sm = StateMachine("state_machine") + sm.add_transition(src_state="idle", event="start", dst_state="running") + sm.set_current_state("idle") + sm.process("start") + assert sm.get_current_state().name == "running" + + +def test_guard(): + class Model: + def can_start(self): + return False + + sm = StateMachine("state_machine", Model()) + sm.add_transition( + src_state="idle", event="start", dst_state="running", guard="can_start" + ) + sm.set_current_state("idle") + sm.process("start") + assert sm.get_current_state().name == "idle" + + +def test_action(): + class Model: + def on_start(self): + self.start_called = True + + model = Model() + sm = StateMachine("state_machine", model) + sm.add_transition( + src_state="idle", event="start", dst_state="running", action="on_start" + ) + sm.set_current_state("idle") + sm.process("start") + assert model.start_called + + +def test_plantuml(): + sm = StateMachine("state_machine") + sm.add_transition(src_state="idle", event="start", dst_state="running") + sm.set_current_state("idle") + assert sm.generate_plantuml() + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From 346037a6e2362ed17870928ccf26992b60b0e54c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Mar 2025 07:26:47 +0900 Subject: [PATCH 242/312] build(deps): bump pytest from 8.3.4 to 8.3.5 in /requirements (#1178) Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.3.4 to 8.3.5. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.3.4...8.3.5) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b439ea4266..b46a0e41f1 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,7 +2,7 @@ numpy == 2.2.3 scipy == 1.15.2 matplotlib == 3.10.0 cvxpy == 1.5.3 -pytest == 8.3.4 # For unit test +pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test ruff == 0.9.7 # For unit test From cd09abd5e00ca29d15f42c539121cf62751ecd52 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Mar 2025 12:21:33 +0900 Subject: [PATCH 243/312] build(deps): bump ruff from 0.9.7 to 0.9.9 in /requirements (#1179) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.7 to 0.9.9. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.7...0.9.9) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b46a0e41f1..3e2a1e7c7c 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.7 # For unit test +ruff == 0.9.9 # For unit test From 5f3be9bccd6366493ea8d159ceeae26d55ed5250 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Mar 2025 12:52:57 +0900 Subject: [PATCH 244/312] build(deps): bump matplotlib from 3.10.0 to 3.10.1 in /requirements (#1181) Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.10.0 to 3.10.1. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.10.0...v3.10.1) --- updated-dependencies: - dependency-name: matplotlib dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3e2a1e7c7c..552bf8482b 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,6 +1,6 @@ numpy == 2.2.3 scipy == 1.15.2 -matplotlib == 3.10.0 +matplotlib == 3.10.1 cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test From 30a61add126e2c21c035d50a7a448ed8eb06afb0 Mon Sep 17 00:00:00 2001 From: Surya Singh <133056660+spnsingh@users.noreply.github.com> Date: Fri, 7 Mar 2025 09:01:37 -0500 Subject: [PATCH 245/312] bug: fix typo on line 6 of SpaceTimeAStar.py (#1182) * bug: fix typo on line 6 of SpaceTimeAStar.py * bug: removed extra line return on line 11 of SpaceTimeAStar.py --- PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py index 3b3613d695..a7aed41869 100644 --- a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py +++ b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py @@ -3,7 +3,7 @@ This script demonstrates the Space-time A* algorithm for path planning in a grid world with moving obstacles. This algorithm is different from normal 2D A* in one key way - the cost (often notated as g(n)) is the number of time steps it took to get to a given node, instead of the number of cells it has - traversed. This ensures the path is time-optimal, while respescting any dynamic obstacles in the environment. + traversed. This ensures the path is time-optimal, while respecting any dynamic obstacles in the environment. Reference: https://www.davidsilver.uk/wp-content/uploads/2020/03/coop-path-AIWisdom.pdf """ From fc160179c06cb4b57f821d83a9bdcf192379bd72 Mon Sep 17 00:00:00 2001 From: Aglargil <34728006+Aglargil@users.noreply.github.com> Date: Sat, 8 Mar 2025 18:26:23 +0800 Subject: [PATCH 246/312] feat: add behavior tree (#1177) * feat: add behavior tree * feat: add behavior tree test * feat: add behavior tree doc * feat: add behavior tree update --- MissionPlanning/BehaviorTree/behavior_tree.py | 690 ++++++++++++++++++ .../BehaviorTree/robot_behavior_case.py | 247 +++++++ .../BehaviorTree/robot_behavior_tree.xml | 57 ++ .../behavior_tree/behavior_tree_main.rst | 104 +++ .../behavior_tree/robot_behavior_case.svg | 22 + .../mission_planning_main.rst | 1 + tests/test_behavior_tree.py | 207 ++++++ 7 files changed, 1328 insertions(+) create mode 100644 MissionPlanning/BehaviorTree/behavior_tree.py create mode 100644 MissionPlanning/BehaviorTree/robot_behavior_case.py create mode 100644 MissionPlanning/BehaviorTree/robot_behavior_tree.xml create mode 100644 docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst create mode 100644 docs/modules/13_mission_planning/behavior_tree/robot_behavior_case.svg create mode 100644 tests/test_behavior_tree.py diff --git a/MissionPlanning/BehaviorTree/behavior_tree.py b/MissionPlanning/BehaviorTree/behavior_tree.py new file mode 100644 index 0000000000..59f4c713f1 --- /dev/null +++ b/MissionPlanning/BehaviorTree/behavior_tree.py @@ -0,0 +1,690 @@ +""" +Behavior Tree + +author: Wang Zheng (@Aglargil) + +Ref: + +- [Behavior Tree](https://en.wikipedia.org/wiki/Behavior_tree_(artificial_intelligence,_robotics_and_control)) +""" + +import time +import xml.etree.ElementTree as ET +from enum import Enum + + +class Status(Enum): + SUCCESS = "success" + FAILURE = "failure" + RUNNING = "running" + + +class NodeType(Enum): + CONTROL_NODE = "ControlNode" + ACTION_NODE = "ActionNode" + DECORATOR_NODE = "DecoratorNode" + + +class Node: + """ + Base class for all nodes in a behavior tree. + """ + + def __init__(self, name): + self.name = name + self.status = None + + def tick(self) -> Status: + """ + Tick the node. + + Returns: + Status: The status of the node. + """ + raise ValueError("Node is not implemented") + + def tick_and_set_status(self) -> Status: + """ + Tick the node and set the status. + + Returns: + Status: The status of the node. + """ + self.status = self.tick() + return self.status + + def reset(self): + """ + Reset the node. + """ + self.status = None + + def reset_children(self): + """ + Reset the children of the node. + """ + pass + + +class ControlNode(Node): + """ + Base class for all control nodes in a behavior tree. + + Control nodes manage the execution flow of their child nodes according to specific rules. + They typically have multiple children and determine which children to execute and in what order. + """ + + def __init__(self, name): + super().__init__(name) + self.children = [] + self.type = NodeType.CONTROL_NODE + + def not_set_children_raise_error(self): + if len(self.children) == 0: + raise ValueError("Children are not set") + + def reset_children(self): + for child in self.children: + child.reset() + + +class SequenceNode(ControlNode): + """ + Executes child nodes in sequence until one fails or all succeed. + + Returns: + - Returns FAILURE if any child returns FAILURE + - Returns SUCCESS when all children have succeeded + - Returns RUNNING when a child is still running or when moving to the next child + + Example: + .. code-block:: xml + + + + + + """ + + def __init__(self, name): + super().__init__(name) + self.current_child_index = 0 + + def tick(self) -> Status: + self.not_set_children_raise_error() + + if self.current_child_index >= len(self.children): + self.reset_children() + return Status.SUCCESS + status = self.children[self.current_child_index].tick_and_set_status() + if status == Status.FAILURE: + self.reset_children() + return Status.FAILURE + elif status == Status.SUCCESS: + self.current_child_index += 1 + return Status.RUNNING + elif status == Status.RUNNING: + return Status.RUNNING + else: + raise ValueError("Unknown status") + + +class SelectorNode(ControlNode): + """ + Executes child nodes in sequence until one succeeds or all fail. + + Returns: + - Returns SUCCESS if any child returns SUCCESS + - Returns FAILURE when all children have failed + - Returns RUNNING when a child is still running or when moving to the next child + + Examples: + .. code-block:: xml + + + + + + """ + + def __init__(self, name): + super().__init__(name) + self.current_child_index = 0 + + def tick(self) -> Status: + self.not_set_children_raise_error() + + if self.current_child_index >= len(self.children): + self.reset_children() + return Status.FAILURE + status = self.children[self.current_child_index].tick_and_set_status() + if status == Status.SUCCESS: + self.reset_children() + return Status.SUCCESS + elif status == Status.FAILURE: + self.current_child_index += 1 + return Status.RUNNING + elif status == Status.RUNNING: + return Status.RUNNING + else: + raise ValueError("Unknown status") + + +class WhileDoElseNode(ControlNode): + """ + Conditional execution node with three parts: condition, do, and optional else. + + Returns: + First executes the condition node (child[0]) + If condition succeeds, executes do node (child[1]) and returns RUNNING + If condition fails, executes else node (child[2]) if present and returns result of else node + If condition fails and there is no else node, returns SUCCESS + + Example: + .. code-block:: xml + + + + + + + """ + + def __init__(self, name): + super().__init__(name) + + def tick(self) -> Status: + if len(self.children) != 3 and len(self.children) != 2: + raise ValueError("WhileDoElseNode must have exactly 3 or 2 children") + + condition_node = self.children[0] + do_node = self.children[1] + else_node = self.children[2] if len(self.children) == 3 else None + + condition_status = condition_node.tick_and_set_status() + if condition_status == Status.SUCCESS: + do_node.tick_and_set_status() + return Status.RUNNING + elif condition_status == Status.FAILURE: + if else_node is not None: + else_status = else_node.tick_and_set_status() + if else_status == Status.SUCCESS: + self.reset_children() + return Status.SUCCESS + elif else_status == Status.FAILURE: + self.reset_children() + return Status.FAILURE + elif else_status == Status.RUNNING: + return Status.RUNNING + else: + raise ValueError("Unknown status") + else: + self.reset_children() + return Status.SUCCESS + else: + raise ValueError("Unknown status") + + +class ActionNode(Node): + """ + Base class for all action nodes in a behavior tree. + + Action nodes are responsible for performing specific tasks or actions. + They do not have children and are typically used to execute logic or operations. + """ + + def __init__(self, name): + super().__init__(name) + self.type = NodeType.ACTION_NODE + + +class SleepNode(ActionNode): + """ + Sleep node that sleeps for a specified duration. + + Returns: + Returns SUCCESS after the specified duration has passed + Returns RUNNING if the duration has not yet passed + + Example: + .. code-block:: xml + + + """ + + def __init__(self, name, duration): + super().__init__(name) + self.duration = duration + self.start_time = None + + def tick(self) -> Status: + if self.start_time is None: + self.start_time = time.time() + if time.time() - self.start_time > self.duration: + return Status.SUCCESS + return Status.RUNNING + + +class EchoNode(ActionNode): + """ + Echo node that prints a message to the console. + + Returns: + Returns SUCCESS after the message has been printed + + Example: + .. code-block:: xml + + + """ + + def __init__(self, name, message): + super().__init__(name) + self.message = message + + def tick(self) -> Status: + print(self.name, self.message) + return Status.SUCCESS + + +class DecoratorNode(Node): + """ + Base class for all decorator nodes in a behavior tree. + + Decorator nodes modify the behavior of their child node. + They must have a single child and can alter the status of the child node. + """ + + def __init__(self, name): + super().__init__(name) + self.type = NodeType.DECORATOR_NODE + self.child = None + + def not_set_child_raise_error(self): + if self.child is None: + raise ValueError("Child is not set") + + def reset_children(self): + self.child.reset() + + +class InverterNode(DecoratorNode): + """ + Inverter node that inverts the status of its child node. + + Returns: + - Returns SUCCESS if the child returns FAILURE + - Returns FAILURE if the child returns SUCCESS + - Returns RUNNING if the child returns RUNNING + + Examples: + .. code-block:: xml + + + + + """ + + def __init__(self, name): + super().__init__(name) + + def tick(self) -> Status: + self.not_set_child_raise_error() + status = self.child.tick_and_set_status() + return Status.SUCCESS if status == Status.FAILURE else Status.FAILURE + + +class TimeoutNode(DecoratorNode): + """ + Timeout node that fails if the child node takes too long to execute + + Returns: + - FAILURE: If the timeout duration has been exceeded + - Child's status: Otherwise, passes through the status of the child node + + Example: + .. code-block:: xml + + + + + """ + + def __init__(self, name, timeout): + super().__init__(name) + self.timeout = timeout + self.start_time = None + + def tick(self) -> Status: + self.not_set_child_raise_error() + if self.start_time is None: + self.start_time = time.time() + if time.time() - self.start_time > self.timeout: + return Status.FAILURE + print(f"{self.name} is running") + return self.child.tick_and_set_status() + + +class DelayNode(DecoratorNode): + """ + Delay node that delays the execution of its child node for a specified duration. + + Returns: + - Returns RUNNING if the duration has not yet passed + - Returns child's status after the duration has passed + + Example: + .. code-block:: xml + + + + + """ + + def __init__(self, name, delay): + super().__init__(name) + self.delay = delay + self.start_time = None + + def tick(self) -> Status: + self.not_set_child_raise_error() + if self.start_time is None: + self.start_time = time.time() + if time.time() - self.start_time > self.delay: + return self.child.tick_and_set_status() + return Status.RUNNING + + +class ForceSuccessNode(DecoratorNode): + """ + ForceSuccess node that always returns SUCCESS. + + Returns: + - Returns RUNNING if the child returns RUNNING + - Returns SUCCESS if the child returns SUCCESS or FAILURE + """ + + def __init__(self, name): + super().__init__(name) + + def tick(self) -> Status: + self.not_set_child_raise_error() + status = self.child.tick_and_set_status() + if status == Status.FAILURE: + return Status.SUCCESS + return status + + +class ForceFailureNode(DecoratorNode): + """ + ForceFailure node that always returns FAILURE. + + Returns: + - Returns RUNNING if the child returns RUNNING + - Returns FAILURE if the child returns SUCCESS or FAILURE + """ + + def __init__(self, name): + super().__init__(name) + + def tick(self) -> Status: + self.not_set_child_raise_error() + status = self.child.tick_and_set_status() + if status == Status.SUCCESS: + return Status.FAILURE + return status + + +class BehaviorTree: + """ + Behavior tree class that manages the execution of a behavior tree. + """ + + def __init__(self, root): + self.root = root + + def tick(self): + """ + Tick once on the behavior tree. + """ + self.root.tick_and_set_status() + + def reset(self): + """ + Reset the behavior tree. + """ + self.root.reset() + + def tick_while_running(self, interval=None, enable_print=True): + """ + Tick the behavior tree while it is running. + + Args: + interval (float, optional): The interval between ticks. Defaults to None. + enable_print (bool, optional): Whether to print the behavior tree. Defaults to True. + """ + while self.root.tick_and_set_status() == Status.RUNNING: + if enable_print: + self.print_tree() + if interval is not None: + time.sleep(interval) + if enable_print: + self.print_tree() + + def to_text(self, root, indent=0): + """ + Recursively convert the behavior tree to a text representation. + """ + current_text = "" + if root.status == Status.RUNNING: + # yellow + current_text = "\033[93m" + root.name + "\033[0m" + elif root.status == Status.SUCCESS: + # green + current_text = "\033[92m" + root.name + "\033[0m" + elif root.status == Status.FAILURE: + # red + current_text = "\033[91m" + root.name + "\033[0m" + else: + current_text = root.name + if root.type == NodeType.CONTROL_NODE: + current_text = " " * indent + "[" + current_text + "]\n" + for child in root.children: + current_text += self.to_text(child, indent + 2) + elif root.type == NodeType.DECORATOR_NODE: + current_text = " " * indent + "(" + current_text + ")\n" + current_text += self.to_text(root.child, indent + 2) + elif root.type == NodeType.ACTION_NODE: + current_text = " " * indent + "<" + current_text + ">\n" + return current_text + + def print_tree(self): + """ + Print the behavior tree. + + Node print format: + Action: + Decorator: (Decorator) + Control: [Control] + + Node status colors: + Yellow: RUNNING + Green: SUCCESS + Red: FAILURE + """ + text = self.to_text(self.root) + text = text.strip() + print("\033[94m" + "Behavior Tree" + "\033[0m") + print(text) + print("\033[94m" + "Behavior Tree" + "\033[0m") + + +class BehaviorTreeFactory: + """ + Factory class for creating behavior trees from XML strings. + """ + + def __init__(self): + self.node_builders = {} + # Control nodes + self.register_node_builder( + "Sequence", + lambda node: SequenceNode(node.attrib.get("name", SequenceNode.__name__)), + ) + self.register_node_builder( + "Selector", + lambda node: SelectorNode(node.attrib.get("name", SelectorNode.__name__)), + ) + self.register_node_builder( + "WhileDoElse", + lambda node: WhileDoElseNode( + node.attrib.get("name", WhileDoElseNode.__name__) + ), + ) + # Decorator nodes + self.register_node_builder( + "Inverter", + lambda node: InverterNode(node.attrib.get("name", InverterNode.__name__)), + ) + self.register_node_builder( + "Timeout", + lambda node: TimeoutNode( + node.attrib.get("name", SelectorNode.__name__), + float(node.attrib["sec"]), + ), + ) + self.register_node_builder( + "Delay", + lambda node: DelayNode( + node.attrib.get("name", DelayNode.__name__), + float(node.attrib["sec"]), + ), + ) + self.register_node_builder( + "ForceSuccess", + lambda node: ForceSuccessNode( + node.attrib.get("name", ForceSuccessNode.__name__) + ), + ) + self.register_node_builder( + "ForceFailure", + lambda node: ForceFailureNode( + node.attrib.get("name", ForceFailureNode.__name__) + ), + ) + # Action nodes + self.register_node_builder( + "Sleep", + lambda node: SleepNode( + node.attrib.get("name", SleepNode.__name__), + float(node.attrib["sec"]), + ), + ) + self.register_node_builder( + "Echo", + lambda node: EchoNode( + node.attrib.get("name", EchoNode.__name__), + node.attrib["message"], + ), + ) + + def register_node_builder(self, node_name, builder): + """ + Register a builder for a node + + Args: + node_name (str): The name of the node. + builder (function): The builder function. + + Example: + .. code-block:: python + + factory = BehaviorTreeFactory() + factory.register_node_builder( + "MyNode", + lambda node: MyNode( + node.attrib.get("name", MyNode.__name__), + node.attrib["my_param"], + ), + ) + """ + self.node_builders[node_name] = builder + + def build_node(self, node): + """ + Build a node from an XML element. + + Args: + node (Element): The XML element to build the node from. + + Returns: + BehaviorTree Node: the built node + """ + if node.tag in self.node_builders: + root = self.node_builders[node.tag](node) + if root.type == NodeType.CONTROL_NODE: + if len(node) <= 0: + raise ValueError(f"{root.name} Control node must have children") + for child in node: + root.children.append(self.build_node(child)) + elif root.type == NodeType.DECORATOR_NODE: + if len(node) != 1: + raise ValueError( + f"{root.name} Decorator node must have exactly one child" + ) + root.child = self.build_node(node[0]) + elif root.type == NodeType.ACTION_NODE: + if len(node) != 0: + raise ValueError(f"{root.name} Action node must have no children") + return root + else: + raise ValueError(f"Unknown node type: {node.tag}") + + def build_tree(self, xml_string): + """ + Build a behavior tree from an XML string. + + Args: + xml_string (str): The XML string containing the behavior tree. + + Returns: + BehaviorTree: The behavior tree. + """ + xml_tree = ET.fromstring(xml_string) + root = self.build_node(xml_tree) + return BehaviorTree(root) + + def build_tree_from_file(self, file_path): + """ + Build a behavior tree from a file. + + Args: + file_path (str): The path to the file containing the behavior tree. + + Returns: + BehaviorTree: The behavior tree. + """ + with open(file_path) as file: + xml_string = file.read() + return self.build_tree(xml_string) + + +xml_string = """ + + + + + + + + """ + + +def main(): + factory = BehaviorTreeFactory() + tree = factory.build_tree(xml_string) + tree.tick_while_running() + + +if __name__ == "__main__": + main() diff --git a/MissionPlanning/BehaviorTree/robot_behavior_case.py b/MissionPlanning/BehaviorTree/robot_behavior_case.py new file mode 100644 index 0000000000..6c39aa76b2 --- /dev/null +++ b/MissionPlanning/BehaviorTree/robot_behavior_case.py @@ -0,0 +1,247 @@ +""" +Robot Behavior Tree Case + +This file demonstrates how to use a behavior tree to control robot behavior. +""" + +from behavior_tree import ( + BehaviorTreeFactory, + Status, + ActionNode, +) +import time +import random +import os + + +class CheckBatteryNode(ActionNode): + """ + Node to check robot battery level + + If battery level is below threshold, returns FAILURE, otherwise returns SUCCESS + """ + + def __init__(self, name, threshold=20): + super().__init__(name) + self.threshold = threshold + self.battery_level = 100 # Initial battery level is 100% + + def tick(self): + # Simulate battery level decreasing + self.battery_level -= random.randint(1, 5) + print(f"Current battery level: {self.battery_level}%") + + if self.battery_level <= self.threshold: + return Status.FAILURE + return Status.SUCCESS + + +class ChargeBatteryNode(ActionNode): + """ + Node to charge the robot's battery + """ + + def __init__(self, name, charge_rate=10): + super().__init__(name) + self.charge_rate = charge_rate + self.charging_time = 0 + + def tick(self): + # Simulate charging process + if self.charging_time == 0: + print("Starting to charge...") + + self.charging_time += 1 + charge_amount = self.charge_rate * self.charging_time + + if charge_amount >= 100: + print("Charging complete! Battery level: 100%") + self.charging_time = 0 + return Status.SUCCESS + else: + print(f"Charging in progress... Battery level: {min(charge_amount, 100)}%") + return Status.RUNNING + + +class MoveToPositionNode(ActionNode): + """ + Node to move to a specified position + """ + + def __init__(self, name, position, move_duration=2): + super().__init__(name) + self.position = position + self.move_duration = move_duration + self.start_time = None + + def tick(self): + if self.start_time is None: + self.start_time = time.time() + print(f"Starting movement to position {self.position}") + + elapsed_time = time.time() - self.start_time + + if elapsed_time >= self.move_duration: + print(f"Arrived at position {self.position}") + self.start_time = None + return Status.SUCCESS + else: + print( + f"Moving to position {self.position}... {int(elapsed_time / self.move_duration * 100)}% complete" + ) + return Status.RUNNING + + +class DetectObstacleNode(ActionNode): + """ + Node to detect obstacles + """ + + def __init__(self, name, obstacle_probability=0.3): + super().__init__(name) + self.obstacle_probability = obstacle_probability + + def tick(self): + # Use random probability to simulate obstacle detection + if random.random() < self.obstacle_probability: + print("Obstacle detected!") + return Status.SUCCESS + else: + print("No obstacle detected") + return Status.FAILURE + + +class AvoidObstacleNode(ActionNode): + """ + Node to avoid obstacles + """ + + def __init__(self, name, avoid_duration=1.5): + super().__init__(name) + self.avoid_duration = avoid_duration + self.start_time = None + + def tick(self): + if self.start_time is None: + self.start_time = time.time() + print("Starting obstacle avoidance...") + + elapsed_time = time.time() - self.start_time + + if elapsed_time >= self.avoid_duration: + print("Obstacle avoidance complete") + self.start_time = None + return Status.SUCCESS + else: + print("Avoiding obstacle...") + return Status.RUNNING + + +class PerformTaskNode(ActionNode): + """ + Node to perform a specific task + """ + + def __init__(self, name, task_name, task_duration=3): + super().__init__(name) + self.task_name = task_name + self.task_duration = task_duration + self.start_time = None + + def tick(self): + if self.start_time is None: + self.start_time = time.time() + print(f"Starting task: {self.task_name}") + + elapsed_time = time.time() - self.start_time + + if elapsed_time >= self.task_duration: + print(f"Task complete: {self.task_name}") + self.start_time = None + return Status.SUCCESS + else: + print( + f"Performing task: {self.task_name}... {int(elapsed_time / self.task_duration * 100)}% complete" + ) + return Status.RUNNING + + +def create_robot_behavior_tree(): + """ + Create robot behavior tree + """ + + factory = BehaviorTreeFactory() + + # Register custom nodes + factory.register_node_builder( + "CheckBattery", + lambda node: CheckBatteryNode( + node.attrib.get("name", "CheckBattery"), + int(node.attrib.get("threshold", "20")), + ), + ) + + factory.register_node_builder( + "ChargeBattery", + lambda node: ChargeBatteryNode( + node.attrib.get("name", "ChargeBattery"), + int(node.attrib.get("charge_rate", "10")), + ), + ) + + factory.register_node_builder( + "MoveToPosition", + lambda node: MoveToPositionNode( + node.attrib.get("name", "MoveToPosition"), + node.attrib.get("position", "Unknown Position"), + float(node.attrib.get("move_duration", "2")), + ), + ) + + factory.register_node_builder( + "DetectObstacle", + lambda node: DetectObstacleNode( + node.attrib.get("name", "DetectObstacle"), + float(node.attrib.get("obstacle_probability", "0.3")), + ), + ) + + factory.register_node_builder( + "AvoidObstacle", + lambda node: AvoidObstacleNode( + node.attrib.get("name", "AvoidObstacle"), + float(node.attrib.get("avoid_duration", "1.5")), + ), + ) + + factory.register_node_builder( + "PerformTask", + lambda node: PerformTaskNode( + node.attrib.get("name", "PerformTask"), + node.attrib.get("task_name", "Unknown Task"), + float(node.attrib.get("task_duration", "3")), + ), + ) + # Read XML from file + xml_path = os.path.join(os.path.dirname(__file__), "robot_behavior_tree.xml") + return factory.build_tree_from_file(xml_path) + + +def main(): + """ + Main function: Create and run the robot behavior tree + """ + print("Creating robot behavior tree...") + tree = create_robot_behavior_tree() + + print("\nStarting robot behavior tree execution...\n") + # Run for a period of time or until completion + + tree.tick_while_running(interval=0.01) + + print("\nBehavior tree execution complete!") + + +if __name__ == "__main__": + main() diff --git a/MissionPlanning/BehaviorTree/robot_behavior_tree.xml b/MissionPlanning/BehaviorTree/robot_behavior_tree.xml new file mode 100644 index 0000000000..0bca76a3ff --- /dev/null +++ b/MissionPlanning/BehaviorTree/robot_behavior_tree.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst b/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst new file mode 100644 index 0000000000..ae3e16da81 --- /dev/null +++ b/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst @@ -0,0 +1,104 @@ +Behavior Tree +------------- + +Behavior Tree is a modular, hierarchical decision model that is widely used in robot control, and game development. +It present some similarities to hierarchical state machines with the key difference that the main building block of a behavior is a task rather than a state. +Behavior Tree have been shown to generalize several other control architectures (https://ieeexplore.ieee.org/document/7790863) + +Core Concepts +~~~~~~~~~~~~~ + +Control Node +++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.ControlNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.SequenceNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.SelectorNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.WhileDoElseNode + +Action Node +++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.ActionNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.EchoNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.SleepNode + +Decorator Node +++++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.DecoratorNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.InverterNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.TimeoutNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.DelayNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.ForceSuccessNode + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.ForceFailureNode + +Behavior Tree Factory ++++++++++++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.BehaviorTreeFactory + :members: + +Behavior Tree ++++++++++++++ + +.. autoclass:: MissionPlanning.BehaviorTree.behavior_tree.BehaviorTree + :members: + +Example +~~~~~~~ + +Visualize the behavior tree by `xml-tree-visual `_. + +.. image:: ./robot_behavior_case.svg + +Print the behavior tree + +.. code-block:: text + + Behavior Tree + [Robot Main Controller] + [Battery Management] + (Low Battery Detection) + + + + [Patrol Task] + + [Move to Position A] + + [Obstacle Handling A] + [Obstacle Present] + + + + + [Move to Position B] + (Short Wait) + + + (Limited Time Obstacle Handling) + [Obstacle Present] + + + + [Conditional Move to C] + + [Perform Position C Task] + + (Ensure Completion) + + + + + Behavior Tree diff --git a/docs/modules/13_mission_planning/behavior_tree/robot_behavior_case.svg b/docs/modules/13_mission_planning/behavior_tree/robot_behavior_case.svg new file mode 100644 index 0000000000..a3d43aed52 --- /dev/null +++ b/docs/modules/13_mission_planning/behavior_tree/robot_behavior_case.svg @@ -0,0 +1,22 @@ +Selectorname: Robot Main ControllerSequencename: Battery ManagementSequencename: Patrol TaskInvertername: Low Battery DetectionEchoname: Low Battery Warningmessage: Battery level low!Charging neededChargeBatteryname: Charge Batterycharge_rate: 20Echoname: Start Taskmessage: Starting patrol taskSequencename: Move to Position ASequencename: Move to Position BWhileDoElsename: Conditional Move to CEchoname: Complete Patrolmessage: Patrol taskcompleted, returning tocharging stationMoveToPositionname: Return to ChargingStationposition: Charging Stationmove_duration: 4CheckBatteryname: Check Batterythreshold: 30MoveToPositionname: Move to Aposition: Amove_duration: 2Selectorname: Obstacle Handling APerformTaskname: Position A Tasktask_name: Check Device Statustask_duration: 2Delayname: Short Waitsec: 1MoveToPositionname: Move to Bposition: Bmove_duration: 3Timeoutname: Limited Time ObstacleHandlingsec: 2PerformTaskname: Position B Tasktask_name: Data Collectiontask_duration: 2.5CheckBatteryname: Check Sufficient Batterythreshold: 50Sequencename: Perform Position C TaskEchoname: Skip Position Cmessage: Insufficient power,skipping position C taskSequencename: Obstacle PresentEchoname: No Obstaclemessage: Path clearEchoname: Prepare Movementmessage: Preparing to move tonext positionSequencename: Obstacle PresentMoveToPositionname: Move to Cposition: Cmove_duration: 2.5ForceSuccessname: Ensure CompletionDetectObstaclename: Detect Obstacleobstacle_probability: 0.3AvoidObstaclename: Avoid Obstacleavoid_duration: 1.5DetectObstaclename: Detect Obstacleobstacle_probability: 0.4AvoidObstaclename: Avoid Obstacleavoid_duration: 1.8PerformTaskname: Position C Tasktask_name: EnvironmentMonitoringtask_duration: 2 \ No newline at end of file diff --git a/docs/modules/13_mission_planning/mission_planning_main.rst b/docs/modules/13_mission_planning/mission_planning_main.rst index 385e62f68e..c35eacd8d5 100644 --- a/docs/modules/13_mission_planning/mission_planning_main.rst +++ b/docs/modules/13_mission_planning/mission_planning_main.rst @@ -10,3 +10,4 @@ Mission planning includes tools such as finite state machines and behavior trees :caption: Contents state_machine/state_machine + behavior_tree/behavior_tree diff --git a/tests/test_behavior_tree.py b/tests/test_behavior_tree.py new file mode 100644 index 0000000000..0898690448 --- /dev/null +++ b/tests/test_behavior_tree.py @@ -0,0 +1,207 @@ +import pytest +import conftest + +from MissionPlanning.BehaviorTree.behavior_tree import ( + BehaviorTreeFactory, + Status, + ActionNode, +) + + +def test_sequence_node1(): + xml_string = """ + + + + + + + + """ + bt_factory = BehaviorTreeFactory() + bt = bt_factory.build_tree(xml_string) + bt.tick() + assert bt.root.status == Status.RUNNING + assert bt.root.children[0].status == Status.SUCCESS + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + bt.tick() + bt.tick() + assert bt.root.status == Status.FAILURE + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + + +def test_sequence_node2(): + xml_string = """ + + + + + + + + """ + bt_factory = BehaviorTreeFactory() + bt = bt_factory.build_tree(xml_string) + bt.tick_while_running() + assert bt.root.status == Status.SUCCESS + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + + +def test_selector_node1(): + xml_string = """ + + + + + + + + """ + bt_factory = BehaviorTreeFactory() + bt = bt_factory.build_tree(xml_string) + bt.tick() + assert bt.root.status == Status.RUNNING + assert bt.root.children[0].status == Status.FAILURE + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + bt.tick() + assert bt.root.status == Status.SUCCESS + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + + +def test_selector_node2(): + xml_string = """ + + + + + + + + + """ + bt_factory = BehaviorTreeFactory() + bt = bt_factory.build_tree(xml_string) + bt.tick_while_running() + assert bt.root.status == Status.FAILURE + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + + +def test_while_do_else_node(): + xml_string = """ + + + + + + """ + + class CountNode(ActionNode): + def __init__(self, name, count_threshold): + super().__init__(name) + self.count = 0 + self.count_threshold = count_threshold + + def tick(self): + self.count += 1 + if self.count >= self.count_threshold: + return Status.FAILURE + else: + return Status.SUCCESS + + bt_factory = BehaviorTreeFactory() + bt_factory.register_node_builder( + "Count", + lambda node: CountNode( + node.attrib.get("name", CountNode.__name__), + int(node.attrib["count_threshold"]), + ), + ) + bt = bt_factory.build_tree(xml_string) + bt.tick() + assert bt.root.status == Status.RUNNING + assert bt.root.children[0].status == Status.SUCCESS + assert bt.root.children[1].status is Status.SUCCESS + assert bt.root.children[2].status is None + bt.tick() + assert bt.root.status == Status.RUNNING + assert bt.root.children[0].status == Status.SUCCESS + assert bt.root.children[1].status is Status.SUCCESS + assert bt.root.children[2].status is None + bt.tick() + assert bt.root.status == Status.SUCCESS + assert bt.root.children[0].status is None + assert bt.root.children[1].status is None + assert bt.root.children[2].status is None + + +def test_node_children(): + # ControlNode Must have children + xml_string = """ + + + """ + bt_factory = BehaviorTreeFactory() + with pytest.raises(ValueError): + bt_factory.build_tree(xml_string) + + # DecoratorNode Must have child + xml_string = """ + + + """ + with pytest.raises(ValueError): + bt_factory.build_tree(xml_string) + + # DecoratorNode Must have only one child + xml_string = """ + + + + + """ + with pytest.raises(ValueError): + bt_factory.build_tree(xml_string) + + # ActionNode Must have no children + xml_string = """ + + + + """ + with pytest.raises(ValueError): + bt_factory.build_tree(xml_string) + + # WhileDoElse Must have exactly 2 or 3 children + xml_string = """ + + + + """ + with pytest.raises(ValueError): + bt = bt_factory.build_tree(xml_string) + bt.tick() + + xml_string = """ + + + + + + + """ + with pytest.raises(ValueError): + bt = bt_factory.build_tree(xml_string) + bt.tick() + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From e7f893ef1aa503df04c83ec6355d18dd05d36394 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 9 Mar 2025 20:21:24 +0900 Subject: [PATCH 247/312] feat: add linkcode_resolve function for enhanced documentation linking (#1185) * feat: add linkcode_resolve function for enhanced documentation linking * feat: enhance documentation linking with linkcode and relative path resolution --- docs/conf.py | 47 +++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 919fa9ac76..eeabab11b1 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -13,6 +13,8 @@ # import os import sys +from pathlib import Path + sys.path.insert(0, os.path.abspath('../')) @@ -41,7 +43,7 @@ 'matplotlib.sphinxext.plot_directive', 'sphinx.ext.autodoc', 'sphinx.ext.mathjax', - 'sphinx.ext.viewcode', + 'sphinx.ext.linkcode', 'sphinx.ext.napoleon', 'sphinx.ext.imgconverter', 'IPython.sphinxext.ipython_console_highlighting', @@ -184,4 +186,45 @@ ] -# -- Extension configuration ------------------------------------------------- +# -- linkcode setting ------------------------------------------------- + +import inspect +import os +import sys +import functools + +GITHUB_REPO = "https://github.com/AtsushiSakai/PythonRobotics" +GITHUB_BRANCH = "master" + + +def linkcode_resolve(domain, info): + if domain != "py": + return None + + modname = info["module"] + fullname = info["fullname"] + + try: + module = __import__(modname, fromlist=[fullname]) + obj = functools.reduce(getattr, fullname.split("."), module) + except (ImportError, AttributeError): + return None + + try: + srcfile = inspect.getsourcefile(obj) + srcfile = get_relative_path_from_parent(srcfile, "PythonRobotics") + lineno = inspect.getsourcelines(obj)[1] + except Exception: + return None + + return f"{GITHUB_REPO}/blob/{GITHUB_BRANCH}/{srcfile}#L{lineno}" + + +def get_relative_path_from_parent(file_path: str, parent_dir: str): + path = Path(file_path).resolve() + + try: + parent_path = next(p for p in path.parents if p.name == parent_dir) + return str(path.relative_to(parent_path)) + except StopIteration: + raise ValueError(f"Parent directory '{parent_dir}' not found in {file_path}") From 73ebcd85dc967dbb160e29ee4c529b7a64f11e2b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 12 Mar 2025 21:26:09 +0900 Subject: [PATCH 248/312] build(deps): bump ruff from 0.9.9 to 0.9.10 in /requirements (#1186) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.9 to 0.9.10. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.9...0.9.10) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 552bf8482b..cf6dea3a46 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.9 # For unit test +ruff == 0.9.10 # For unit test From 1308e76424723eb68a4a864117e60c0bbd054df1 Mon Sep 17 00:00:00 2001 From: Jonathan Schwartz Date: Thu, 13 Mar 2025 10:24:53 -0400 Subject: [PATCH 249/312] Add expanded node set to SpaceTime AStar (#1183) * speed up spacetime astar * forgot to include hash impl on Position * add condition to test on node expansions * remove heuristic from Node __hash__ impl * update rst with note about optimization --- .../GridWithDynamicObstacles.py | 3 ++ .../TimeBasedPathPlanning/SpaceTimeAStar.py | 51 +++++++++++++------ .../time_based_grid_search_main.rst | 17 +++++++ tests/test_space_time_astar.py | 1 + 4 files changed, 57 insertions(+), 15 deletions(-) diff --git a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py index 7b0190d023..7416ff2f08 100644 --- a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py +++ b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py @@ -30,6 +30,9 @@ def __sub__(self, other): f"Subtraction not supported for Position and {type(other)}" ) + def __hash__(self): + return hash((self.x, self.y)) + class ObstacleArrangement(Enum): # Random obstacle positions and movements diff --git a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py index a7aed41869..c4e2802d37 100644 --- a/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py +++ b/PathPlanning/TimeBasedPathPlanning/SpaceTimeAStar.py @@ -20,7 +20,7 @@ import random from dataclasses import dataclass from functools import total_ordering - +import time # Seed randomness for reproducibility RANDOM_SEED = 50 @@ -48,11 +48,17 @@ def __lt__(self, other: object): return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") return (self.time + self.heuristic) < (other.time + other.heuristic) + """ + Note: cost and heuristic are not included in eq or hash, since they will always be the same + for a given (position, time) pair. Including either cost or heuristic would be redundant. + """ def __eq__(self, other: object): if not isinstance(other, Node): return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") return self.position == other.position and self.time == other.time + def __hash__(self): + return hash((self.position, self.time)) class NodePath: path: list[Node] @@ -86,6 +92,8 @@ class SpaceTimeAStar: grid: Grid start: Position goal: Position + # Used to evaluate solutions + expanded_node_count: int = -1 def __init__(self, grid: Grid, start: Position, goal: Position): self.grid = grid @@ -98,7 +106,8 @@ def plan(self, verbose: bool = False) -> NodePath: open_set, Node(self.start, 0, self.calculate_heuristic(self.start), -1) ) - expanded_set: list[Node] = [] + expanded_list: list[Node] = [] + expanded_set: set[Node] = set() while open_set: expanded_node: Node = heapq.heappop(open_set) if verbose: @@ -110,23 +119,25 @@ def plan(self, verbose: bool = False) -> NodePath: continue if expanded_node.position == self.goal: - print(f"Found path to goal after {len(expanded_set)} expansions") + print(f"Found path to goal after {len(expanded_list)} expansions") path = [] path_walker: Node = expanded_node while True: path.append(path_walker) if path_walker.parent_index == -1: break - path_walker = expanded_set[path_walker.parent_index] + path_walker = expanded_list[path_walker.parent_index] # reverse path so it goes start -> goal path.reverse() + self.expanded_node_count = len(expanded_set) return NodePath(path) - expanded_idx = len(expanded_set) - expanded_set.append(expanded_node) + expanded_idx = len(expanded_list) + expanded_list.append(expanded_node) + expanded_set.add(expanded_node) - for child in self.generate_successors(expanded_node, expanded_idx, verbose): + for child in self.generate_successors(expanded_node, expanded_idx, verbose, expanded_set): heapq.heappush(open_set, child) raise Exception("No path found") @@ -135,7 +146,7 @@ def plan(self, verbose: bool = False) -> NodePath: Generate possible successors of the provided `parent_node` """ def generate_successors( - self, parent_node: Node, parent_node_idx: int, verbose: bool + self, parent_node: Node, parent_node_idx: int, verbose: bool, expanded_set: set[Node] ) -> Generator[Node, None, None]: diffs = [ Position(0, 0), @@ -146,13 +157,17 @@ def generate_successors( ] for diff in diffs: new_pos = parent_node.position + diff + new_node = Node( + new_pos, + parent_node.time + 1, + self.calculate_heuristic(new_pos), + parent_node_idx, + ) + + if new_node in expanded_set: + continue + if self.grid.valid_position(new_pos, parent_node.time + 1): - new_node = Node( - new_pos, - parent_node.time + 1, - self.calculate_heuristic(new_pos), - parent_node_idx, - ) if verbose: print("\tNew successor node: ", new_node) yield new_node @@ -166,9 +181,12 @@ def calculate_heuristic(self, position) -> int: verbose = False def main(): - start = Position(1, 11) + start = Position(1, 5) goal = Position(19, 19) grid_side_length = 21 + + start_time = time.time() + grid = Grid( np.array([grid_side_length, grid_side_length]), num_obstacles=40, @@ -179,6 +197,9 @@ def main(): planner = SpaceTimeAStar(grid, start, goal) path = planner.plan(verbose) + runtime = time.time() - start_time + print(f"Planning took: {runtime:.5f} seconds") + if verbose: print(f"Path: {path}") diff --git a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst index 0c26badec7..48dc1289c2 100644 --- a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst +++ b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst @@ -16,6 +16,23 @@ Using a time-based cost and heuristic ensures the path found is optimal in terms The cost is the amount of time it takes to reach a given node, and the heuristic is the minimum amount of time it could take to reach the goal from that node, disregarding all obstacles. For a simple scenario where the robot can move 1 cell per time step and stop and go as it pleases, the heuristic for time is equivalent to the heuristic for distance. +One optimization that was added in `this PR `__ was to add an expanded set to the algorithm. The algorithm will not expand nodes that are already in that set. This greatly reduces the number of node expansions needed to find a path, since no duplicates are expanded. It also helps to reduce the amount of memory the algorithm uses. + +Before:: + + Found path to goal after 204490 expansions + Planning took: 1.72464 seconds + Memory usage (RSS): 68.19 MB + + +After:: + + Found path to goal after 2348 expansions + Planning took: 0.01550 seconds + Memory usage (RSS): 64.85 MB + +When starting at (1, 11) in the structured obstacle arrangement (second of the two gifs above). + References: ~~~~~~~~~~~ diff --git a/tests/test_space_time_astar.py b/tests/test_space_time_astar.py index 5290738eb4..390c7732dc 100644 --- a/tests/test_space_time_astar.py +++ b/tests/test_space_time_astar.py @@ -28,6 +28,7 @@ def test_1(): # path should end at the goal assert path.path[-1].position == goal + assert planner.expanded_node_count < 1000 if __name__ == "__main__": conftest.run_this_test(__file__) From 41187d67b11f06265431b87dcf0b9da679345249 Mon Sep 17 00:00:00 2001 From: Zichao Yang Date: Sun, 16 Mar 2025 21:40:11 +0800 Subject: [PATCH 250/312] fix "ModuleNotFoundError: No module named 'utils'" (#1188) --- .../lqr_speed_steer_control/lqr_speed_steer_control.py | 4 ++-- PathTracking/lqr_steer_control/lqr_steer_control.py | 4 ++-- PathTracking/rear_wheel_feedback/rear_wheel_feedback.py | 7 +++++-- PathTracking/stanley_controller/stanley_controller.py | 4 ++-- 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py index d85fa98a84..5831d02d30 100644 --- a/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py +++ b/PathTracking/lqr_speed_steer_control/lqr_speed_steer_control.py @@ -11,9 +11,9 @@ import numpy as np import scipy.linalg as la import pathlib -from utils.angle import angle_mod -sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod from PathPlanning.CubicSpline import cubic_spline_planner # === Parameters ===== diff --git a/PathTracking/lqr_steer_control/lqr_steer_control.py b/PathTracking/lqr_steer_control/lqr_steer_control.py index 461d6e3722..3c066917ff 100644 --- a/PathTracking/lqr_steer_control/lqr_steer_control.py +++ b/PathTracking/lqr_steer_control/lqr_steer_control.py @@ -11,9 +11,9 @@ import numpy as np import sys import pathlib -from utils.angle import angle_mod -sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod from PathPlanning.CubicSpline import cubic_spline_planner Kp = 1.0 # speed proportional gain diff --git a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py b/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py index 1702bd47dd..fd04fb6d17 100644 --- a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py +++ b/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py @@ -8,11 +8,14 @@ import matplotlib.pyplot as plt import math import numpy as np -from utils.angle import angle_mod - +import sys +import pathlib from scipy import interpolate from scipy import optimize +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod + Kp = 1.0 # speed proportional gain # steering control parameter KTH = 1.0 diff --git a/PathTracking/stanley_controller/stanley_controller.py b/PathTracking/stanley_controller/stanley_controller.py index 08aa049395..bc98175f17 100644 --- a/PathTracking/stanley_controller/stanley_controller.py +++ b/PathTracking/stanley_controller/stanley_controller.py @@ -13,9 +13,9 @@ import matplotlib.pyplot as plt import sys import pathlib -from utils.angle import angle_mod -sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +sys.path.append(str(pathlib.Path(__file__).parent.parent.parent)) +from utils.angle import angle_mod from PathPlanning.CubicSpline import cubic_spline_planner k = 0.5 # control gain From aa61a6ea570e013d346c40874f8a33890ec66d28 Mon Sep 17 00:00:00 2001 From: Jonathan Schwartz Date: Mon, 17 Mar 2025 09:01:07 -0400 Subject: [PATCH 251/312] Safe Interval Path Planner (#1184) * it works and is WAY faster than a* * some bug fixes from testing different scenarios * add some docs & address todos * add sipp test * spiff up comments revert changes in speed-up * explain what the removal is doing * linting * fix docs build * docs formatting * revert change to file (maybe linter did it?) * point at gifs in gifs repo * use raw githubusercontent gif links * change formatting on planner results * format output differently * proper formatting final * missing underline * revert unintended change * grammar + add descriptions for gifs * missing :: * add title to gifs section * dont use sections for sub-sections * constent a* spelling * Update PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update tests/test_safe_interval_path_planner.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst Co-authored-by: Atsushi Sakai * Update PathPlanning/TimeBasedPathPlanning/SafeInterval.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * addressing comments * revert np.full change --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Atsushi Sakai --- .../GridWithDynamicObstacles.py | 57 +++- .../TimeBasedPathPlanning/SafeInterval.py | 303 ++++++++++++++++++ .../time_based_grid_search_main.rst | 43 ++- tests/test_safe_interval_path_planner.py | 33 ++ 4 files changed, 434 insertions(+), 2 deletions(-) create mode 100644 PathPlanning/TimeBasedPathPlanning/SafeInterval.py create mode 100644 tests/test_safe_interval_path_planner.py diff --git a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py index 7416ff2f08..2a47023f8c 100644 --- a/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py +++ b/PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py @@ -33,6 +33,10 @@ def __sub__(self, other): def __hash__(self): return hash((self.x, self.y)) +@dataclass +class Interval: + start_time: int + end_time: int class ObstacleArrangement(Enum): # Random obstacle positions and movements @@ -40,6 +44,14 @@ class ObstacleArrangement(Enum): # Obstacles start in a line in y at center of grid and move side-to-side in x ARRANGEMENT1 = 1 +""" +Generates a 2d numpy array with lists for elements. +""" +def empty_2d_array_of_lists(x: int, y: int) -> np.ndarray: + arr = np.empty((x, y), dtype=object) + # assign each element individually - np.full creates references to the same list + arr[:] = [[[] for _ in range(y)] for _ in range(x)] + return arr class Grid: # Set in constructor @@ -89,7 +101,7 @@ def __init__( """ def generate_dynamic_obstacles(self, obs_count: int) -> list[list[Position]]: obstacle_paths = [] - for _ in (0, obs_count): + for _ in range(0, obs_count): # Sample until a free starting space is found initial_position = self.sample_random_position() while not self.valid_obstacle_position(initial_position, 0): @@ -234,6 +246,49 @@ def get_obstacle_positions_at_time(self, t: int) -> tuple[list[int], list[int]]: y_positions.append(obs_path[t].y) return (x_positions, y_positions) + """ + Returns safe intervals for each cell. + """ + def get_safe_intervals(self) -> np.ndarray: + intervals = empty_2d_array_of_lists(self.grid_size[0], self.grid_size[1]) + for x in range(intervals.shape[0]): + for y in range(intervals.shape[1]): + intervals[x, y] = self.get_safe_intervals_at_cell(Position(x, y)) + + return intervals + + """ + Generate the safe intervals for a given cell. The intervals will be in order of start time. + ex: Interval (2, 3) will be before Interval (4, 5) + """ + def get_safe_intervals_at_cell(self, cell: Position) -> list[Interval]: + vals = self.reservation_matrix[cell.x, cell.y, :] + # Find where the array is zero + zero_mask = (vals == 0) + + # Identify transitions between zero and nonzero elements + diff = np.diff(zero_mask.astype(int)) + + # Start indices: where zeros begin (1 after a nonzero) + start_indices = np.where(diff == 1)[0] + 1 + + # End indices: where zeros stop (just before a nonzero) + end_indices = np.where(diff == -1)[0] + + # Handle edge cases if the array starts or ends with zeros + if zero_mask[0]: # If the first element is zero, add index 0 to start_indices + start_indices = np.insert(start_indices, 0, 0) + if zero_mask[-1]: # If the last element is zero, add the last index to end_indices + end_indices = np.append(end_indices, len(vals) - 1) + + # Create pairs of (first zero, last zero) + intervals = [Interval(int(start), int(end)) for start, end in zip(start_indices, end_indices)] + + # Remove intervals where a cell is only free for one time step. Those intervals not provide enough time to + # move into and out of the cell each take 1 time step, and the cell is considered occupied during + # both the time step when it is entering the cell, and the time step when it is leaving the cell. + intervals = [interval for interval in intervals if interval.start_time != interval.end_time] + return intervals show_animation = True diff --git a/PathPlanning/TimeBasedPathPlanning/SafeInterval.py b/PathPlanning/TimeBasedPathPlanning/SafeInterval.py new file mode 100644 index 0000000000..7fea10c67f --- /dev/null +++ b/PathPlanning/TimeBasedPathPlanning/SafeInterval.py @@ -0,0 +1,303 @@ +""" +Safe interval path planner + This script implements a safe-interval path planner for a 2d grid with dynamic obstacles. It is faster than + SpaceTime A* because it reduces the number of redundant node expansions by pre-computing regions of adjacent + time steps that are safe ("safe intervals") at each position. This allows the algorithm to skip expanding nodes + that are in intervals that have already been visited earlier. + + Reference: https://www.cs.cmu.edu/~maxim/files/sipp_icra11.pdf +""" + +import numpy as np +import matplotlib.pyplot as plt +from PathPlanning.TimeBasedPathPlanning.GridWithDynamicObstacles import ( + Grid, + Interval, + ObstacleArrangement, + Position, + empty_2d_array_of_lists, +) +import heapq +import random +from dataclasses import dataclass +from functools import total_ordering +import time + +@dataclass() +# Note: Total_ordering is used instead of adding `order=True` to the @dataclass decorator because +# this class needs to override the __lt__ and __eq__ methods to ignore parent_index. The Parent +# index and interval member variables are just used to track the path found by the algorithm, +# and has no effect on the quality of a node. +@total_ordering +class Node: + position: Position + time: int + heuristic: int + parent_index: int + interval: Interval + + """ + This is what is used to drive node expansion. The node with the lowest value is expanded next. + This comparison prioritizes the node with the lowest cost-to-come (self.time) + cost-to-go (self.heuristic) + """ + def __lt__(self, other: object): + if not isinstance(other, Node): + return NotImplementedError(f"Cannot compare Node with object of type: {type(other)}") + return (self.time + self.heuristic) < (other.time + other.heuristic) + + """ + Equality only cares about position and time. Heuristic and interval will always be the same for a given + (position, time) pairing, so they are not considered in equality. + """ + def __eq__(self, other: object): + if not isinstance(other, Node): + return NotImplemented + return self.position == other.position and self.time == other.time + +@dataclass +class EntryTimeAndInterval: + entry_time: int + interval: Interval + +class NodePath: + path: list[Node] + positions_at_time: dict[int, Position] = {} + + def __init__(self, path: list[Node]): + self.path = path + for (i, node) in enumerate(path): + if i > 0: + # account for waiting in interval at previous node + prev_node = path[i-1] + for t in range(prev_node.time, node.time): + self.positions_at_time[t] = prev_node.position + + self.positions_at_time[node.time] = node.position + + """ + Get the position of the path at a given time + """ + def get_position(self, time: int) -> Position | None: + return self.positions_at_time.get(time) + + """ + Time stamp of the last node in the path + """ + def goal_reached_time(self) -> int: + return self.path[-1].time + + def __repr__(self): + repr_string = "" + for i, node in enumerate(self.path): + repr_string += f"{i}: {node}\n" + return repr_string + + +class SafeIntervalPathPlanner: + grid: Grid + start: Position + goal: Position + + def __init__(self, grid: Grid, start: Position, goal: Position): + self.grid = grid + self.start = start + self.goal = goal + + # Seed randomness for reproducibility + RANDOM_SEED = 50 + random.seed(RANDOM_SEED) + np.random.seed(RANDOM_SEED) + + """ + Generate a plan given the loaded problem statement. Raises an exception if it fails to find a path. + Arguments: + verbose (bool): set to True to print debug information + """ + def plan(self, verbose: bool = False) -> NodePath: + + safe_intervals = self.grid.get_safe_intervals() + + open_set: list[Node] = [] + first_node_interval = safe_intervals[self.start.x, self.start.y][0] + heapq.heappush( + open_set, Node(self.start, 0, self.calculate_heuristic(self.start), -1, first_node_interval) + ) + + expanded_list: list[Node] = [] + visited_intervals = empty_2d_array_of_lists(self.grid.grid_size[0], self.grid.grid_size[1]) + while open_set: + expanded_node: Node = heapq.heappop(open_set) + if verbose: + print("Expanded node:", expanded_node) + + if expanded_node.time + 1 >= self.grid.time_limit: + if verbose: + print(f"\tSkipping node that is past time limit: {expanded_node}") + continue + + if expanded_node.position == self.goal: + print(f"Found path to goal after {len(expanded_list)} expansions") + path = [] + path_walker: Node = expanded_node + while True: + path.append(path_walker) + if path_walker.parent_index == -1: + break + path_walker = expanded_list[path_walker.parent_index] + + # reverse path so it goes start -> goal + path.reverse() + return NodePath(path) + + expanded_idx = len(expanded_list) + expanded_list.append(expanded_node) + entry_time_and_node = EntryTimeAndInterval(expanded_node.time, expanded_node.interval) + add_entry_to_visited_intervals_array(entry_time_and_node, visited_intervals, expanded_node) + + for child in self.generate_successors(expanded_node, expanded_idx, safe_intervals, visited_intervals): + heapq.heappush(open_set, child) + + raise Exception("No path found") + + """ + Generate list of possible successors of the provided `parent_node` that are worth expanding + """ + def generate_successors( + self, parent_node: Node, parent_node_idx: int, intervals: np.ndarray, visited_intervals: np.ndarray + ) -> list[Node]: + new_nodes = [] + diffs = [ + Position(0, 0), + Position(1, 0), + Position(-1, 0), + Position(0, 1), + Position(0, -1), + ] + for diff in diffs: + new_pos = parent_node.position + diff + if not self.grid.inside_grid_bounds(new_pos): + continue + + current_interval = parent_node.interval + + new_cell_intervals: list[Interval] = intervals[new_pos.x, new_pos.y] + for interval in new_cell_intervals: + # if interval starts after current ends, break + # assumption: intervals are sorted by start time, so all future intervals will hit this condition as well + if interval.start_time > current_interval.end_time: + break + + # if interval ends before current starts, skip + if interval.end_time < current_interval.start_time: + continue + + # if we have already expanded a node in this interval with a <= starting time, skip + better_node_expanded = False + for visited in visited_intervals[new_pos.x, new_pos.y]: + if interval == visited.interval and visited.entry_time <= parent_node.time + 1: + better_node_expanded = True + break + if better_node_expanded: + continue + + # We know there is a node worth expanding. Generate successor at the earliest possible time the + # new interval can be entered + for possible_t in range(max(parent_node.time + 1, interval.start_time), min(current_interval.end_time, interval.end_time)): + if self.grid.valid_position(new_pos, possible_t): + new_nodes.append(Node( + new_pos, + # entry is max of interval start and parent node time + 1 (get there as soon as possible) + max(interval.start_time, parent_node.time + 1), + self.calculate_heuristic(new_pos), + parent_node_idx, + interval, + )) + # break because all t's after this will make nodes with a higher cost, the same heuristic, and are in the same interval + break + + return new_nodes + + """ + Calculate the heuristic for a given position - Manhattan distance to the goal + """ + def calculate_heuristic(self, position) -> int: + diff = self.goal - position + return abs(diff.x) + abs(diff.y) + + +""" +Adds a new entry to the visited intervals array. If the entry is already present, the entry time is updated if the new +entry time is better. Otherwise, the entry is added to `visited_intervals` at the position of `expanded_node`. +""" +def add_entry_to_visited_intervals_array(entry_time_and_interval: EntryTimeAndInterval, visited_intervals: np.ndarray, expanded_node: Node): + # if entry is present, update entry time if better + for existing_entry_and_interval in visited_intervals[expanded_node.position.x, expanded_node.position.y]: + if existing_entry_and_interval.interval == entry_time_and_interval.interval: + existing_entry_and_interval.entry_time = min(existing_entry_and_interval.entry_time, entry_time_and_interval.entry_time) + + # Otherwise, append + visited_intervals[expanded_node.position.x, expanded_node.position.y].append(entry_time_and_interval) + + +show_animation = True +verbose = False + +def main(): + start = Position(1, 18) + goal = Position(19, 19) + grid_side_length = 21 + + start_time = time.time() + + grid = Grid( + np.array([grid_side_length, grid_side_length]), + num_obstacles=250, + obstacle_avoid_points=[start, goal], + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + # obstacle_arrangement=ObstacleArrangement.RANDOM, + ) + + planner = SafeIntervalPathPlanner(grid, start, goal) + path = planner.plan(verbose) + runtime = time.time() - start_time + print(f"Planning took: {runtime:.5f} seconds") + + if verbose: + print(f"Path: {path}") + + if not show_animation: + return + + fig = plt.figure(figsize=(10, 7)) + ax = fig.add_subplot( + autoscale_on=False, + xlim=(0, grid.grid_size[0] - 1), + ylim=(0, grid.grid_size[1] - 1), + ) + ax.set_aspect("equal") + ax.grid() + ax.set_xticks(np.arange(0, grid_side_length, 1)) + ax.set_yticks(np.arange(0, grid_side_length, 1)) + + (start_and_goal,) = ax.plot([], [], "mD", ms=15, label="Start and Goal") + start_and_goal.set_data([start.x, goal.x], [start.y, goal.y]) + (obs_points,) = ax.plot([], [], "ro", ms=15, label="Obstacles") + (path_points,) = ax.plot([], [], "bo", ms=10, label="Path Found") + ax.legend(bbox_to_anchor=(1.05, 1)) + + # for stopping simulation with the esc key. + plt.gcf().canvas.mpl_connect( + "key_release_event", lambda event: [exit(0) if event.key == "escape" else None] + ) + + for i in range(0, path.goal_reached_time() + 1): + obs_positions = grid.get_obstacle_positions_at_time(i) + obs_points.set_data(obs_positions[0], obs_positions[1]) + path_position = path.get_position(i) + path_points.set_data([path_position.x], [path_position.y]) + plt.pause(0.2) + plt.show() + + +if __name__ == "__main__": + main() diff --git a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst index 48dc1289c2..04001d4504 100644 --- a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst +++ b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst @@ -33,7 +33,48 @@ After:: When starting at (1, 11) in the structured obstacle arrangement (second of the two gifs above). -References: + +Safe Interval Path Planning +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The safe interval path planning algorithm is described in this paper: + +`SIPP: Safe Interval Path Planning for Dynamic Environments `__ + +It is faster than space-time A* because it pre-computes the intervals of time that are unoccupied in each cell. This allows it to reduce the number of successor node it generates by avoiding nodes within the same interval. + +**Comparison with SpaceTime A*:** + +Arrangement 1 starting at (1, 18) + +SafeInterval planner:: + + Found path to goal after 322 expansions + Planning took: 0.00730 seconds + +SpaceTime A*:: + + Found path to goal after 2717154 expansions + Planning took: 20.51330 seconds + +**Benchmarking the Safe Interval Path Planner:** + +250 random obstacles:: + + Found path to goal after 764 expansions + Planning took: 0.60596 seconds + +.. image:: https://raw.githubusercontent.com/AtsushiSakai/PythonRoboticsGifs/refs/heads/master/PathPlanning/TimeBasedPathPlanning/SafeIntervalPathPlanner/path_animation.gif + +Arrangement 1 starting at (1, 18):: + + Found path to goal after 322 expansions + Planning took: 0.00730 seconds + +.. image:: https://raw.githubusercontent.com/AtsushiSakai/PythonRoboticsGifs/refs/heads/master/PathPlanning/TimeBasedPathPlanning/SafeIntervalPathPlanner/path_animation2.gif + +References ~~~~~~~~~~~ - `Cooperative Pathfinding `__ +- `SIPP: Safe Interval Path Planning for Dynamic Environments `__ diff --git a/tests/test_safe_interval_path_planner.py b/tests/test_safe_interval_path_planner.py new file mode 100644 index 0000000000..f1fbf90d2a --- /dev/null +++ b/tests/test_safe_interval_path_planner.py @@ -0,0 +1,33 @@ +from PathPlanning.TimeBasedPathPlanning.GridWithDynamicObstacles import ( + Grid, + ObstacleArrangement, + Position, +) +from PathPlanning.TimeBasedPathPlanning import SafeInterval as m +import numpy as np +import conftest + + +def test_1(): + start = Position(1, 11) + goal = Position(19, 19) + grid_side_length = 21 + grid = Grid( + np.array([grid_side_length, grid_side_length]), + obstacle_arrangement=ObstacleArrangement.ARRANGEMENT1, + ) + + m.show_animation = False + planner = m.SafeIntervalPathPlanner(grid, start, goal) + + path = planner.plan(False) + + # path should have 31 entries + assert len(path.path) == 31 + + # path should end at the goal + assert path.path[-1].position == goal + + +if __name__ == "__main__": + conftest.run_this_test(__file__) From 19fc48d60fea057f6c14365c502db4d18490c3a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Mar 2025 20:22:31 +0900 Subject: [PATCH 252/312] build(deps): bump numpy from 2.2.3 to 2.2.4 in /requirements (#1189) Bumps [numpy](https://github.com/numpy/numpy) from 2.2.3 to 2.2.4. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.2.3...v2.2.4) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index cf6dea3a46..3ea4197736 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -numpy == 2.2.3 +numpy == 2.2.4 scipy == 1.15.2 matplotlib == 3.10.1 cvxpy == 1.5.3 From 764ba21f86fc0d5c2ae5b613449ca81ea6406036 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Mar 2025 20:29:12 +0900 Subject: [PATCH 253/312] build(deps): bump ruff from 0.9.10 to 0.11.0 in /requirements (#1191) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.10 to 0.11.0. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.9.10...0.11.0) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3ea4197736..5438678f87 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.9.10 # For unit test +ruff == 0.11.0 # For unit test From 1c1596be21f015b3b2c3db6489b93cd94d6eca01 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 28 Apr 2025 08:51:09 +0900 Subject: [PATCH 254/312] docs: enhance contribution guide with instructions for linking code in GitHub (#1202) --- docs/_static/img/source_link_1.png | Bin 0 -> 87987 bytes docs/_static/img/source_link_2.png | Bin 0 -> 237071 bytes .../3_how_to_contribute_main.rst | 13 +++++++++++++ 3 files changed, 13 insertions(+) create mode 100644 docs/_static/img/source_link_1.png create mode 100644 docs/_static/img/source_link_2.png diff --git a/docs/_static/img/source_link_1.png b/docs/_static/img/source_link_1.png new file mode 100644 index 0000000000000000000000000000000000000000..53febda7cbc62ba625f3f179b399552c7da351e5 GIT binary patch literal 87987 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%0D@AHN5z) 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

S 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 literal 0 HcmV?d00001 diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 1e61760649..30e3001f36 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -107,6 +107,18 @@ mathematics and the algorithm of the example. Documentations related codes should be in the python script as the header comments of the script or docstrings of each function. +Also, each document should have a link to the code in Github. +You can easily add the link by using the `.. autoclass::`, `.. autofunction::`, and `.. automodule` by Sphinx's `autodoc`_ module. + +Using this `autodoc`_ module, the generated documentations have the link to the code in Github like: + +.. image:: /_static/img/source_link_1.png + +When you click the link, you will jump to the source code in Github like: + +.. image:: /_static/img/source_link_2.png + + .. _`submit a pull request`: @@ -210,5 +222,6 @@ Current Major Sponsors: .. _`1Password`: https://github.com/1Password/for-open-source .. _`matplotrecorder`: https://github.com/AtsushiSakai/matplotrecorder .. _`PythonRoboticsGifs`: https://github.com/AtsushiSakai/PythonRoboticsGifs +.. _`autodoc`: https://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html From f466f25f5328e019bd1e0ccc62b176ff2fc72187 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Apr 2025 08:53:35 +0900 Subject: [PATCH 255/312] build(deps): bump ruff from 0.11.0 to 0.11.6 in /requirements (#1201) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.11.0 to 0.11.6. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.11.0...0.11.6) --- updated-dependencies: - dependency-name: ruff dependency-version: 0.11.6 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 5438678f87..f3e6c3dc51 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -5,4 +5,4 @@ cvxpy == 1.5.3 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.11.0 # For unit test +ruff == 0.11.6 # For unit test From af0442d358b1deca5710c0c6812424b12b39f7e7 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 1 May 2025 13:08:29 +0900 Subject: [PATCH 256/312] build(deps): update cvxpy version from 1.5.3 to 1.6.5 in requirements (#1203) * build(deps): update cvxpy version from 1.5.3 to 1.6.5 in requirements * Add ECOS solver and improve solver handling for stability Added ECOS to requirements and enhanced compatibility with cvxpy solvers by specifying 'order' for matrix reshaping. Updated solver configurations in rocket landing and pendulum control for consistency and reliability. Improved test behavior by enforcing stricter warning handling in pytest. --- .../rocket_powered_landing/rocket_powered_landing.py | 9 +++++---- InvertedPendulum/inverted_pendulum_mpc_control.py | 2 +- requirements/requirements.txt | 3 ++- tests/conftest.py | 2 +- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py index 239f3629c1..1918dc1cee 100644 --- a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py +++ b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py @@ -31,6 +31,7 @@ W_DELTA_SIGMA = 1e-1 # difference in flight time W_NU = 1e5 # virtual control +print(cvxpy.installed_solvers()) solver = 'ECOS' verbose_solver = False @@ -462,11 +463,11 @@ def __init__(self, m, K): # x_t+1 = A_*x_t+B_*U_t+C_*U_T+1*S_*sigma+zbar+nu constraints += [ self.var['X'][:, k + 1] == - cvxpy.reshape(self.par['A_bar'][:, k], (m.n_x, m.n_x)) @ + cvxpy.reshape(self.par['A_bar'][:, k], (m.n_x, m.n_x), order='F') @ self.var['X'][:, k] + - cvxpy.reshape(self.par['B_bar'][:, k], (m.n_x, m.n_u)) @ + cvxpy.reshape(self.par['B_bar'][:, k], (m.n_x, m.n_u), order='F') @ self.var['U'][:, k] + - cvxpy.reshape(self.par['C_bar'][:, k], (m.n_x, m.n_u)) @ + cvxpy.reshape(self.par['C_bar'][:, k], (m.n_x, m.n_u), order='F') @ self.var['U'][:, k + 1] + self.par['S_bar'][:, k] * self.var['sigma'] + self.par['z_bar'][:, k] + @@ -536,7 +537,7 @@ def solve(self, **kwargs): with warnings.catch_warnings(): # For User warning from solver warnings.simplefilter('ignore') self.prob.solve(verbose=verbose_solver, - solver=solver) + solver=solver) except cvxpy.SolverError: error = True diff --git a/InvertedPendulum/inverted_pendulum_mpc_control.py b/InvertedPendulum/inverted_pendulum_mpc_control.py index 9a5fa2ab41..c45dde8acc 100644 --- a/InvertedPendulum/inverted_pendulum_mpc_control.py +++ b/InvertedPendulum/inverted_pendulum_mpc_control.py @@ -91,7 +91,7 @@ def mpc_control(x0): prob = cvxpy.Problem(cvxpy.Minimize(cost), constr) start = time.time() - prob.solve(verbose=False) + prob.solve(verbose=False, solver=cvxpy.CLARABEL) elapsed_time = time.time() - start print(f"calc time:{elapsed_time:.6f} [sec]") diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f3e6c3dc51..e9c68be7e6 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,7 +1,8 @@ numpy == 2.2.4 scipy == 1.15.2 matplotlib == 3.10.1 -cvxpy == 1.5.3 +cvxpy == 1.6.5 +ecos == 2.0.14 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test diff --git a/tests/conftest.py b/tests/conftest.py index 3485fe8150..b707b22d00 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -10,4 +10,4 @@ def run_this_test(file): - pytest.main([os.path.abspath(file)]) + pytest.main(args=["-W", "error", "-Werror", "--pythonwarnings=error", os.path.abspath(file)]) From 1f729cb8cbd5075871bb52c8fb31df2732ad6641 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 May 2025 13:59:15 +0900 Subject: [PATCH 257/312] build(deps): bump ruff from 0.11.6 to 0.11.7 in /requirements (#1205) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.11.6 to 0.11.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.11.6...0.11.7) --- updated-dependencies: - dependency-name: ruff dependency-version: 0.11.7 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index e9c68be7e6..88cbb21f81 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -6,4 +6,4 @@ ecos == 2.0.14 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.11.6 # For unit test +ruff == 0.11.7 # For unit test From a2c42c3d6837658edb734e9f16ab64c1bd2662e7 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Thu, 1 May 2025 21:53:12 +0900 Subject: [PATCH 258/312] Update Python version to 3.13 across the project (#1208) * Update Python version to 3.13 across the project Upgraded the required Python version to 3.13 in configurations, CI workflows, documentation, and environment files. This ensures compatibility with the latest Python release and maintains consistency across all project components. * Update Python version to 3.13 across the project Upgraded the required Python version to 3.13 in configurations, CI workflows, documentation, and environment files. This ensures compatibility with the latest Python release and maintains consistency across all project components. --- .circleci/config.yml | 2 +- .github/workflows/Linux_CI.yml | 2 +- .github/workflows/MacOS_CI.yml | 2 +- .github/workflows/Windows_CI.yml | 2 +- README.md | 2 +- appveyor.yml | 2 +- docs/modules/0_getting_started/3_how_to_contribute_main.rst | 2 +- requirements/environment.yml | 2 +- ruff.toml | 4 ++-- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 9f803ece4a..f6eff674de 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,7 +6,7 @@ orbs: jobs: build_doc: docker: - - image: cimg/python:3.12 + - image: cimg/python:3.13 steps: - checkout - run: diff --git a/.github/workflows/Linux_CI.yml b/.github/workflows/Linux_CI.yml index 7b3dc14751..907d36452d 100644 --- a/.github/workflows/Linux_CI.yml +++ b/.github/workflows/Linux_CI.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [ '3.12' ] + python-version: [ '3.13' ] name: Python ${{ matrix.python-version }} CI diff --git a/.github/workflows/MacOS_CI.yml b/.github/workflows/MacOS_CI.yml index 5ea15ac72e..03db65f43d 100644 --- a/.github/workflows/MacOS_CI.yml +++ b/.github/workflows/MacOS_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python-version: [ '3.12' ] + python-version: [ '3.13' ] name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/Windows_CI.yml b/.github/workflows/Windows_CI.yml index b9c8dea649..5cb19699b2 100644 --- a/.github/workflows/Windows_CI.yml +++ b/.github/workflows/Windows_CI.yml @@ -16,7 +16,7 @@ jobs: runs-on: windows-latest strategy: matrix: - python-version: [ '3.12' ] + python-version: [ '3.13' ] name: Python ${{ matrix.python-version }} CI steps: - uses: actions/checkout@v4 diff --git a/README.md b/README.md index 9e605435ce..6d04c90bc8 100644 --- a/README.md +++ b/README.md @@ -102,7 +102,7 @@ or this paper for more details: For running each sample code: -- [Python 3.12.x](https://www.python.org/) +- [Python 3.13.x](https://www.python.org/) - [NumPy](https://numpy.org/) diff --git a/appveyor.yml b/appveyor.yml index 05ad8a2820..72d89acf11 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -8,7 +8,7 @@ environment: CMD_IN_ENV: "cmd /E:ON /V:ON /C .\\appveyor\\run_with_env.cmd" matrix: - - PYTHON_DIR: C:\Python310-x64 + - PYTHON_DIR: C:\Python313-x64 branches: only: diff --git a/docs/modules/0_getting_started/3_how_to_contribute_main.rst b/docs/modules/0_getting_started/3_how_to_contribute_main.rst index 30e3001f36..0325aaacae 100644 --- a/docs/modules/0_getting_started/3_how_to_contribute_main.rst +++ b/docs/modules/0_getting_started/3_how_to_contribute_main.rst @@ -26,7 +26,7 @@ to understand the philosophies of this project. Check your Python version. --------------------------- -We only accept a PR for Python 3.12.x or higher. +We only accept a PR for Python 3.13.x or higher. We will not accept a PR for Python 2.x. diff --git a/requirements/environment.yml b/requirements/environment.yml index afbb3fb8ce..023a3d75bf 100644 --- a/requirements/environment.yml +++ b/requirements/environment.yml @@ -2,7 +2,7 @@ name: python_robotics channels: - conda-forge dependencies: - - python=3.12 + - python=3.13 - pip - scipy - numpy diff --git a/ruff.toml b/ruff.toml index 5823ca3db7..d76b715a06 100644 --- a/ruff.toml +++ b/ruff.toml @@ -5,8 +5,8 @@ ignore = ["E501", "E741", "E402"] exclude = [ ] -# Assume Python 3.11 -target-version = "py312" +# Assume Python 3.13 +target-version = "py313" [per-file-ignores] From 22cbee49218a1f8acb07ad488416db3c952c19d6 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Fri, 2 May 2025 10:01:19 +0900 Subject: [PATCH 259/312] Standardize "Ref:" to "Reference" across files (#1210) Updated all instances of "Ref:" to "Reference" for consistency in both code and documentation. This change improves clarity and aligns with standard terminology practices. --- .../rocket_powered_landing.py | 2 +- .../two_joint_arm_to_point_control.py | 2 +- .../ensemble_kalman_filter.py | 2 +- Mapping/DistanceMap/distance_map.py | 2 +- .../rectangle_fitting/rectangle_fitting.py | 2 +- MissionPlanning/BehaviorTree/behavior_tree.py | 2 +- MissionPlanning/StateMachine/state_machine.py | 4 +- PathPlanning/ElasticBands/elastic_bands.py | 2 +- .../Eta3SplinePath/eta3_spline_path.py | 2 +- .../cartesian_frenet_converter.py | 2 +- .../frenet_optimal_trajectory.py | 2 +- .../potential_field_planning.py | 2 +- .../quintic_polynomials_planner.py | 2 +- .../state_lattice_planner.py | 2 +- PathTracking/cgmres_nmpc/cgmres_nmpc.py | 2 +- PathTracking/move_to_pose/move_to_pose.py | 2 +- .../stanley_controller/stanley_controller.py | 2 +- README.md | 42 ++--- .../Kalmanfilter_basics_2_main.rst | 2 +- .../12_appendix/Kalmanfilter_basics_main.rst | 2 +- .../steering_motion_model_main.rst | 2 +- ...samble_kalman_filter_localization_main.rst | 5 + ...tended_kalman_filter_localization_main.rst | 168 +++++++++--------- .../histogram_filter_localization_main.rst | 7 +- .../particle_filter_localization_main.rst | 8 +- ...cented_kalman_filter_localization_main.rst | 8 +- .../modules/4_slam/ekf_slam/ekf_slam_main.rst | 2 +- .../4_slam/graph_slam/graph_slam_main.rst | 2 +- .../bezier_path/bezier_path_main.rst | 2 +- .../eta3_spline/eta3_spline_main.rst | 2 +- .../frenet_frame_path_main.rst | 2 +- .../grid_base_search_main.rst | 6 +- ...l_predictive_trajectory_generator_main.rst | 2 +- .../prm_planner/prm_planner_main.rst | 2 +- .../quintic_polynomials_planner_main.rst | 2 +- .../reeds_shepp_path_main.rst | 2 +- docs/modules/5_path_planning/rrt/rrt_main.rst | 8 +- .../state_lattice_planner_main.rst | 2 +- .../vrm_planner/vrm_planner_main.rst | 2 +- .../lqr_speed_and_steering_control_main.rst | 2 +- .../lqr_steering_control_main.rst | 2 +- .../pure_pursuit_tracking_main.rst | 2 +- .../rear_wheel_feedback_control_main.rst | 2 +- .../stanley_control/stanley_control_main.rst | 2 +- users_comments.md | 2 +- 45 files changed, 173 insertions(+), 155 deletions(-) diff --git a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py index 1918dc1cee..e8ba8fa220 100644 --- a/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py +++ b/AerialNavigation/rocket_powered_landing/rocket_powered_landing.py @@ -5,7 +5,7 @@ author: Sven Niederberger Atsushi Sakai -Ref: +Reference: - Python implementation of 'Successive Convexification for 6-DoF Mars Rocket Powered Landing with Free-Final-Time' paper by Michael Szmuk and Behcet Acıkmese. diff --git a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py index c2227f18e3..09969c30be 100644 --- a/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py +++ b/ArmNavigation/two_joint_arm_to_point_control/two_joint_arm_to_point_control.py @@ -5,7 +5,7 @@ Author: Daniel Ingram (daniel-s-ingram) Atsushi Sakai (@Atsushi_twi) -Ref: P. I. Corke, "Robotics, Vision & Control", Springer 2017, +Reference: P. I. Corke, "Robotics, Vision & Control", Springer 2017, ISBN 978-3-319-54413-7 p102 - [Robotics, Vision and Control] (https://link.springer.com/book/10.1007/978-3-642-20144-8) diff --git a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py index 2bab3b49c1..e8a988a270 100644 --- a/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py +++ b/Localization/ensemble_kalman_filter/ensemble_kalman_filter.py @@ -4,7 +4,7 @@ author: Ryohei Sasaki(rsasaki0109) -Ref: +Reference: Ensemble Kalman filtering (https://rmets.onlinelibrary.wiley.com/doi/10.1256/qj.05.135) diff --git a/Mapping/DistanceMap/distance_map.py b/Mapping/DistanceMap/distance_map.py index 0dcc7380c5..0f96c9e8c6 100644 --- a/Mapping/DistanceMap/distance_map.py +++ b/Mapping/DistanceMap/distance_map.py @@ -3,7 +3,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [Distance Map] (https://cs.brown.edu/people/pfelzens/papers/dt-final.pdf) diff --git a/Mapping/rectangle_fitting/rectangle_fitting.py b/Mapping/rectangle_fitting/rectangle_fitting.py index 177f078871..7902619666 100644 --- a/Mapping/rectangle_fitting/rectangle_fitting.py +++ b/Mapping/rectangle_fitting/rectangle_fitting.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - Efficient L-Shape Fitting for Vehicle Detection Using Laser Scanners - The Robotics Institute Carnegie Mellon University https://www.ri.cmu.edu/publications/ diff --git a/MissionPlanning/BehaviorTree/behavior_tree.py b/MissionPlanning/BehaviorTree/behavior_tree.py index 59f4c713f1..9ad886aafb 100644 --- a/MissionPlanning/BehaviorTree/behavior_tree.py +++ b/MissionPlanning/BehaviorTree/behavior_tree.py @@ -3,7 +3,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [Behavior Tree](https://en.wikipedia.org/wiki/Behavior_tree_(artificial_intelligence,_robotics_and_control)) """ diff --git a/MissionPlanning/StateMachine/state_machine.py b/MissionPlanning/StateMachine/state_machine.py index de72f0f451..454759236e 100644 --- a/MissionPlanning/StateMachine/state_machine.py +++ b/MissionPlanning/StateMachine/state_machine.py @@ -3,7 +3,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [State Machine] (https://en.wikipedia.org/wiki/Finite-state_machine) @@ -23,7 +23,7 @@ def deflate_and_encode(plantuml_text): """ zlib compress the plantuml text and encode it for the plantuml server. - Ref: https://plantuml.com/en/text-encoding + Reference https://plantuml.com/en/text-encoding """ plantuml_alphabet = ( string.digits + string.ascii_uppercase + string.ascii_lowercase + "-_" diff --git a/PathPlanning/ElasticBands/elastic_bands.py b/PathPlanning/ElasticBands/elastic_bands.py index 785f822d14..77d4e6e399 100644 --- a/PathPlanning/ElasticBands/elastic_bands.py +++ b/PathPlanning/ElasticBands/elastic_bands.py @@ -3,7 +3,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [Elastic Bands: Connecting Path Planning and Control] (http://www8.cs.umu.se/research/ifor/dl/Control/elastic%20bands.pdf) diff --git a/PathPlanning/Eta3SplinePath/eta3_spline_path.py b/PathPlanning/Eta3SplinePath/eta3_spline_path.py index dc07d3c84b..3f685e512f 100644 --- a/PathPlanning/Eta3SplinePath/eta3_spline_path.py +++ b/PathPlanning/Eta3SplinePath/eta3_spline_path.py @@ -5,7 +5,7 @@ author: Joe Dinius, Ph.D (https://jwdinius.github.io) Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - [eta^3-Splines for the Smooth Path Generation of Wheeled Mobile Robots] (https://ieeexplore.ieee.org/document/4339545/) diff --git a/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py b/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py index 4cc8650c89..482712ceaf 100644 --- a/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py +++ b/PathPlanning/FrenetOptimalTrajectory/cartesian_frenet_converter.py @@ -4,7 +4,7 @@ author: Wang Zheng (@Aglargil) -Ref: +Reference: - [Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame] (https://www.researchgate.net/profile/Moritz_Werling/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame/links/54f749df0cf210398e9277af.pdf) diff --git a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py index 248894c1c6..4b82fb70fd 100644 --- a/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py +++ b/PathPlanning/FrenetOptimalTrajectory/frenet_optimal_trajectory.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - [Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame] (https://www.researchgate.net/profile/Moritz_Werling/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame/links/54f749df0cf210398e9277af.pdf) diff --git a/PathPlanning/PotentialFieldPlanning/potential_field_planning.py b/PathPlanning/PotentialFieldPlanning/potential_field_planning.py index 8f136b5ee3..603a9d16cf 100644 --- a/PathPlanning/PotentialFieldPlanning/potential_field_planning.py +++ b/PathPlanning/PotentialFieldPlanning/potential_field_planning.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: https://www.cs.cmu.edu/~motionplanning/lecture/Chap4-Potential-Field_howie.pdf """ diff --git a/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py b/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py index fdc181afab..86f9f662da 100644 --- a/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py +++ b/PathPlanning/QuinticPolynomialsPlanner/quintic_polynomials_planner.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - [Local Path planning And Motion Control For Agv In Positioning](https://ieeexplore.ieee.org/document/637936/) diff --git a/PathPlanning/StateLatticePlanner/state_lattice_planner.py b/PathPlanning/StateLatticePlanner/state_lattice_planner.py index 7f8e725e0a..05f8df78f8 100644 --- a/PathPlanning/StateLatticePlanner/state_lattice_planner.py +++ b/PathPlanning/StateLatticePlanner/state_lattice_planner.py @@ -8,7 +8,7 @@ https://github.com/AtsushiSakai/PythonRobotics/blob/master/PathPlanning /ModelPredictiveTrajectoryGenerator/lookup_table_generator.py -Ref: +Reference: - State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments diff --git a/PathTracking/cgmres_nmpc/cgmres_nmpc.py b/PathTracking/cgmres_nmpc/cgmres_nmpc.py index a582c9da81..ee40e73504 100644 --- a/PathTracking/cgmres_nmpc/cgmres_nmpc.py +++ b/PathTracking/cgmres_nmpc/cgmres_nmpc.py @@ -4,7 +4,7 @@ author Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: Shunichi09/nonlinear_control: Implementing the nonlinear model predictive control, sliding mode control https://github.com/Shunichi09/PythonLinearNonlinearControl diff --git a/PathTracking/move_to_pose/move_to_pose.py b/PathTracking/move_to_pose/move_to_pose.py index 34736a2e21..faf1264953 100644 --- a/PathTracking/move_to_pose/move_to_pose.py +++ b/PathTracking/move_to_pose/move_to_pose.py @@ -76,7 +76,7 @@ def calc_control_command(self, x_diff, y_diff, theta, theta_goal): # [-pi, pi] to prevent unstable behavior e.g. difference going # from 0 rad to 2*pi rad with slight turn - # Ref: The velocity v always has a constant sign which depends on the initial value of α. + # The velocity v always has a constant sign which depends on the initial value of α. rho = np.hypot(x_diff, y_diff) v = self.Kp_rho * rho diff --git a/PathTracking/stanley_controller/stanley_controller.py b/PathTracking/stanley_controller/stanley_controller.py index bc98175f17..01c2ec0229 100644 --- a/PathTracking/stanley_controller/stanley_controller.py +++ b/PathTracking/stanley_controller/stanley_controller.py @@ -4,7 +4,7 @@ author: Atsushi Sakai (@Atsushi_twi) -Ref: +Reference: - [Stanley: The robot that won the DARPA grand challenge](http://isl.ecst.csuchico.edu/DOCS/darpa2005/DARPA%202005%20Stanley.pdf) - [Autonomous Automobile Path Tracking](https://www.ri.cmu.edu/pub_files/2009/2/Automatic_Steering_Methods_for_Autonomous_Automobile_Path_Tracking.pdf) diff --git a/README.md b/README.md index 6d04c90bc8..05fd0262df 100644 --- a/README.md +++ b/README.md @@ -168,7 +168,7 @@ All animation gifs are stored here: [AtsushiSakai/PythonRoboticsGifs: Animation EKF pic -Ref: +Reference - [documentation](https://atsushisakai.github.io/PythonRobotics/modules/localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization.html) @@ -186,7 +186,7 @@ It is assumed that the robot can measure a distance from landmarks (RFID). These measurements are used for PF localization. -Ref: +Reference - [PROBABILISTIC ROBOTICS](http://www.probabilistic-robotics.org/) @@ -207,7 +207,7 @@ The filter integrates speed input and range observations from RFID for localizat Initial position is not needed. -Ref: +Reference - [PROBABILISTIC ROBOTICS](http://www.probabilistic-robotics.org/) @@ -256,7 +256,7 @@ It can calculate a rotation matrix, and a translation vector between points and ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/iterative_closest_point/animation.gif) -Ref: +Reference - [Introduction to Mobile Robotics: Iterative Closest Point Algorithm](https://cs.gmu.edu/~kosecka/cs685/cs685-icp.pdf) @@ -275,7 +275,7 @@ Black points are landmarks, blue crosses are estimated landmark positions by Fas ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/FastSLAM1/animation.gif) -Ref: +Reference - [PROBABILISTIC ROBOTICS](http://www.probabilistic-robotics.org/) @@ -321,7 +321,7 @@ This is a 2D grid based the shortest path planning with D star algorithm. The animation shows a robot finding its path avoiding an obstacle using the D* search algorithm. -Ref: +Reference - [D* Algorithm Wikipedia](https://en.wikipedia.org/wiki/D*) @@ -346,7 +346,7 @@ This is a 2D grid based path planning with Potential Field algorithm. In the animation, the blue heat map shows potential value on each grid. -Ref: +Reference - [Robotic Motion Planning:Potential Functions](https://www.cs.cmu.edu/~motionplanning/lecture/Chap4-Potential-Field_howie.pdf) @@ -362,7 +362,7 @@ This script is a path planning code with state lattice planning. This code uses the model predictive trajectory generator to solve boundary problem. -Ref: +Reference - [Optimal rough terrain trajectory generation for wheeled mobile robots](https://journals.sagepub.com/doi/pdf/10.1177/0278364906075328) @@ -390,7 +390,7 @@ Cyan crosses means searched points with Dijkstra method, The red line is the final path of PRM. -Ref: +Reference - [Probabilistic roadmap \- Wikipedia](https://en.wikipedia.org/wiki/Probabilistic_roadmap) @@ -406,7 +406,7 @@ This is a path planning code with RRT\* Black circles are obstacles, green line is a searched tree, red crosses are start and goal positions. -Ref: +Reference - [Incremental Sampling-based Algorithms for Optimal Motion Planning](https://arxiv.org/abs/1005.0416) @@ -426,7 +426,7 @@ A double integrator motion model is used for LQR local planner. ![LQR_RRT](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/LQRRRTStar/animation.gif) -Ref: +Reference - [LQR\-RRT\*: Optimal Sampling\-Based Motion Planning with Automatically Derived Extension Heuristics](https://lis.csail.mit.edu/pubs/perez-icra12.pdf) @@ -441,7 +441,7 @@ Motion planning with quintic polynomials. It can calculate a 2D path, velocity, and acceleration profile based on quintic polynomials. -Ref: +Reference - [Local Path Planning And Motion Control For Agv In Positioning](https://ieeexplore.ieee.org/document/637936/) @@ -451,7 +451,7 @@ A sample code with Reeds Shepp path planning. ![RSPlanning](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/ReedsSheppPath/animation.gif?raw=true) -Ref: +Reference - [15.3.2 Reeds\-Shepp Curves](http://planning.cs.uiuc.edu/node822.html) @@ -477,7 +477,7 @@ The cyan line is the target course and black crosses are obstacles. The red line is the predicted path. -Ref: +Reference - [Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame](https://www.researchgate.net/profile/Moritz_Werling/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame/links/54f749df0cf210398e9277af.pdf) @@ -492,7 +492,7 @@ This is a simulation of moving to a pose control ![2](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/move_to_pose/animation.gif) -Ref: +Reference - [P. I. Corke, "Robotics, Vision and Control" \| SpringerLink p102](https://link.springer.com/book/10.1007/978-3-642-20144-8) @@ -503,7 +503,7 @@ Path tracking simulation with Stanley steering control and PID speed control. ![2](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/stanley_controller/animation.gif) -Ref: +Reference - [Stanley: The robot that won the DARPA grand challenge](http://robots.stanford.edu/papers/thrun.stanley05.pdf) @@ -517,7 +517,7 @@ Path tracking simulation with rear wheel feedback steering control and PID speed ![PythonRobotics/figure_1.png at master · AtsushiSakai/PythonRobotics](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/rear_wheel_feedback/animation.gif) -Ref: +Reference - [A Survey of Motion Planning and Control Techniques for Self-driving Urban Vehicles](https://arxiv.org/abs/1604.07446) @@ -528,7 +528,7 @@ Path tracking simulation with LQR speed and steering control. ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_speed_steer_control/animation.gif) -Ref: +Reference - [Towards fully autonomous driving: Systems and algorithms \- IEEE Conference Publication](https://ieeexplore.ieee.org/document/5940562/) @@ -539,7 +539,7 @@ Path tracking simulation with iterative linear model predictive speed and steeri MPC pic -Ref: +Reference - [documentation](https://atsushisakai.github.io/PythonRobotics/modules/path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control.html) @@ -551,7 +551,7 @@ A motion planning and path tracking simulation with NMPC of C-GMRES ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/cgmres_nmpc/animation.gif) -Ref: +Reference - [documentation](https://atsushisakai.github.io/PythonRobotics/modules/path_tracking/cgmres_nmpc/cgmres_nmpc.html) @@ -591,7 +591,7 @@ This is a 3d trajectory generation simulation for a rocket powered landing. ![3](https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/AerialNavigation/rocket_powered_landing/animation.gif) -Ref: +Reference - [documentation](https://atsushisakai.github.io/PythonRobotics/modules/aerial_navigation/rocket_powered_landing/rocket_powered_landing.html) diff --git a/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst b/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst index 9ae6fc5bcb..b7ff84e6f6 100644 --- a/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst +++ b/docs/modules/12_appendix/Kalmanfilter_basics_2_main.rst @@ -331,7 +331,7 @@ are vectors and matrices, but the concepts are exactly the same: - Use the process model to predict the next state (the prior) - Form an estimate part way between the measurement and the prior -References: +Reference ~~~~~~~~~~~ 1. Roger Labbe’s diff --git a/docs/modules/12_appendix/Kalmanfilter_basics_main.rst b/docs/modules/12_appendix/Kalmanfilter_basics_main.rst index 6548377e07..a1d99d47ef 100644 --- a/docs/modules/12_appendix/Kalmanfilter_basics_main.rst +++ b/docs/modules/12_appendix/Kalmanfilter_basics_main.rst @@ -552,7 +552,7 @@ a given (X,Y) value. .. image:: Kalmanfilter_basics_files/Kalmanfilter_basics_28_1.png -References: +Reference ~~~~~~~~~~~ 1. Roger Labbe’s diff --git a/docs/modules/12_appendix/steering_motion_model_main.rst b/docs/modules/12_appendix/steering_motion_model_main.rst index 6e444b7909..c697123fa2 100644 --- a/docs/modules/12_appendix/steering_motion_model_main.rst +++ b/docs/modules/12_appendix/steering_motion_model_main.rst @@ -91,7 +91,7 @@ the target minimum velocity :math:`v_{min}` can be calculated as follows: :math:`v_{min} = \frac{d_{t+1}+d_{t}}{\Delta t} = \frac{d_{t+1}+d_{t}}{(\kappa_{t+1}-\kappa_{t})}\frac{tan\dot{\delta}_{max}}{WB}` -References: +Reference ~~~~~~~~~~~ - `Vehicle Dynamics and Control `_ diff --git a/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst b/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst index 2543d1186a..214e645d10 100644 --- a/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst +++ b/docs/modules/2_localization/ensamble_kalman_filter_localization_files/ensamble_kalman_filter_localization_main.rst @@ -5,3 +5,8 @@ Ensamble Kalman Filter Localization This is a sensor fusion localization with Ensamble Kalman Filter(EnKF). +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Localization.ensemble_kalman_filter.ensemble_kalman_filter.enkf_localization + diff --git a/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst b/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst index da214b6de5..adb41e5e40 100644 --- a/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst +++ b/docs/modules/2_localization/extended_kalman_filter_localization_files/extended_kalman_filter_localization_main.rst @@ -23,28 +23,40 @@ is estimated trajectory with EKF. The red ellipse is estimated covariance ellipse with EKF. -Code: `PythonRobotics/extended_kalman_filter.py at master · -AtsushiSakai/PythonRobotics `__ +Code Link +~~~~~~~~~~~~~ -Kalman Filter with Speed Scale Factor Correction -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +.. autofunction:: Localization.extended_kalman_filter.extended_kalman_filter.ekf_estimation +Extended Kalman Filter algorithm +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. image:: ekf_with_velocity_correction_1_0.png - :width: 600px +Localization process using Extended Kalman Filter:EKF is -This is a Extended kalman filter (EKF) localization with velocity correction. +=== Predict === -This is for correcting the vehicle speed measured with scale factor errors due to factors such as wheel wear. +:math:`x_{Pred} = Fx_t+Bu_t` -Code: `PythonRobotics/extended_kalman_ekf_with_velocity_correctionfilter.py -AtsushiSakai/PythonRobotics `__ +:math:`P_{Pred} = J_f P_t J_f^T + Q` -Filter design -~~~~~~~~~~~~~ +=== Update === -Position Estimation Kalman Filter -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +:math:`z_{Pred} = Hx_{Pred}` + +:math:`y = z - z_{Pred}` + +:math:`S = J_g P_{Pred}.J_g^T + R` + +:math:`K = P_{Pred}.J_g^T S^{-1}` + +:math:`x_{t+1} = x_{Pred} + Ky` + +:math:`P_{t+1} = ( I - K J_g) P_{Pred}` + + + +Filter design +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In this simulation, the robot has a state vector includes 4 states at time :math:`t`. @@ -82,27 +94,9 @@ In the code, “observation” function generates the input and observation vector with noise `code `__ -Kalman Filter with Speed Scale Factor Correction -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -In this simulation, the robot has a state vector includes 5 states at -time :math:`t`. - -.. math:: \textbf{x}_t=[x_t, y_t, \phi_t, v_t, s_t] - -x, y are a 2D x-y position, :math:`\phi` is orientation, v is -velocity, and s is a scale factor of velocity. - -In the code, “xEst” means the state vector. -`code `__ - -The rest is the same as the Position Estimation Kalman Filter. Motion Model -~~~~~~~~~~~~ - -Position Estimation Kalman Filter -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +~~~~~~~~~~~~~~~~~ The robot model is @@ -137,9 +131,61 @@ Its Jacobian matrix is :math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & -v \sin(\phi) \Delta t & \cos(\phi) \Delta t\\ 0 & 1 & v \cos(\phi) \Delta t & \sin(\phi) \Delta t\\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \end{equation*}` +Observation Model +~~~~~~~~~~~~~~~~~ + +The robot can get x-y position information from GPS. + +So GPS Observation model is + +.. math:: \textbf{z}_{t} = g(\textbf{x}_t) = H \textbf{x}_t + +where + +:math:`\begin{equation*} H = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ \end{bmatrix} \end{equation*}` + +The observation function states that + +:math:`\begin{equation*} \begin{bmatrix} x' \\ y' \end{bmatrix} = g(\textbf{x}) = \begin{bmatrix} x \\ y \end{bmatrix} \end{equation*}` + +Its Jacobian matrix is + +:math:`\begin{equation*} J_g = \begin{bmatrix} \frac{\partial x'}{\partial x} & \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{ \partial v}\\ \end{bmatrix} \end{equation*}` + +:math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ \end{bmatrix} \end{equation*}` + Kalman Filter with Speed Scale Factor Correction ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +This is a Extended kalman filter (EKF) localization with velocity correction. + +This is for correcting the vehicle speed measured with scale factor errors due to factors such as wheel wear. + + +In this simulation, the robot has a state vector includes 5 states at +time :math:`t`. + +.. math:: \textbf{x}_t=[x_t, y_t, \phi_t, v_t, s_t] + +x, y are a 2D x-y position, :math:`\phi` is orientation, v is +velocity, and s is a scale factor of velocity. + +In the code, “xEst” means the state vector. +`code `__ + +The rest is the same as the Position Estimation Kalman Filter. + +.. image:: ekf_with_velocity_correction_1_0.png + :width: 600px + +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: Localization.extended_kalman_filter.ekf_with_velocity_correction.ekf_estimation + + +Motion Model +~~~~~~~~~~~~ The robot model is @@ -178,33 +224,7 @@ Its Jacobian matrix is Observation Model ~~~~~~~~~~~~~~~~~ -Position Estimation Kalman Filter -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The robot can get x-y position infomation from GPS. - -So GPS Observation model is - -.. math:: \textbf{z}_{t} = g(\textbf{x}_t) = H \textbf{x}_t - -where - -:math:`\begin{equation*} H = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ \end{bmatrix} \end{equation*}` - -The observation function states that - -:math:`\begin{equation*} \begin{bmatrix} x' \\ y' \end{bmatrix} = g(\textbf{x}) = \begin{bmatrix} x \\ y \end{bmatrix} \end{equation*}` - -Its Jacobian matrix is - -:math:`\begin{equation*} J_g = \begin{bmatrix} \frac{\partial x'}{\partial x} & \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{ \partial v}\\ \end{bmatrix} \end{equation*}` - -:math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ \end{bmatrix} \end{equation*}` - -Kalman Filter with Speed Scale Factor Correction -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The robot can get x-y position infomation from GPS. +The robot can get x-y position information from GPS. So GPS Observation model is @@ -225,32 +245,8 @@ Its Jacobian matrix is :math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0 & 0\\ 0 & 1 & 0 & 0 & 0\\ \end{bmatrix} \end{equation*}` -Extended Kalman Filter -~~~~~~~~~~~~~~~~~~~~~~ - -Localization process using Extended Kalman Filter:EKF is - -=== Predict === - -:math:`x_{Pred} = Fx_t+Bu_t` - -:math:`P_{Pred} = J_f P_t J_f^T + Q` - -=== Update === - -:math:`z_{Pred} = Hx_{Pred}` - -:math:`y = z - z_{Pred}` - -:math:`S = J_g P_{Pred}.J_g^T + R` - -:math:`K = P_{Pred}.J_g^T S^{-1}` - -:math:`x_{t+1} = x_{Pred} + Ky` - -:math:`P_{t+1} = ( I - K J_g) P_{Pred}` -Ref: -~~~~ +Reference +^^^^^^^^^^^ - `PROBABILISTIC-ROBOTICS.ORG `__ diff --git a/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst b/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst index fafd578333..3a175b1316 100644 --- a/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst +++ b/docs/modules/2_localization/histogram_filter_localization/histogram_filter_localization_main.rst @@ -16,6 +16,11 @@ The filter uses speed input and range observations from RFID for localization. Initial position information is not needed. +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: Localization.histogram_filter.histogram_filter.histogram_filter_localization + Filtering algorithm ~~~~~~~~~~~~~~~~~~~~ @@ -107,7 +112,7 @@ There are two ways to calculate the final positions: -References: +Reference ~~~~~~~~~~~ - `_PROBABILISTIC ROBOTICS: `_ diff --git a/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst b/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst index 20a9eb58fc..d648d8e080 100644 --- a/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst +++ b/docs/modules/2_localization/particle_filter_localization/particle_filter_localization_main.rst @@ -15,6 +15,12 @@ It is assumed that the robot can measure a distance from landmarks This measurements are used for PF localization. +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: Localization.particle_filter.particle_filter.pf_localization + + How to calculate covariance matrix from particles ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -30,7 +36,7 @@ The covariance matrix :math:`\Xi` from particle information is calculated by the - :math:`\mu_j` is the :math:`j` th mean state of particles. -References: +Reference ~~~~~~~~~~~ - `_PROBABILISTIC ROBOTICS: `_ diff --git a/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst b/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst index bb6b5b664b..a7a5aab61b 100644 --- a/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst +++ b/docs/modules/2_localization/unscented_kalman_filter_localization/unscented_kalman_filter_localization_main.rst @@ -7,7 +7,13 @@ This is a sensor fusion localization with Unscented Kalman Filter(UKF). The lines and points are same meaning of the EKF simulation. -References: +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: Localization.unscented_kalman_filter.unscented_kalman_filter.ukf_estimation + + +Reference ~~~~~~~~~~~ - `Discriminatively Trained Unscented Kalman Filter for Mobile Robot Localization `_ diff --git a/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst index b27971225e..a1486ffe1e 100644 --- a/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst +++ b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst @@ -578,7 +578,7 @@ reckoning and control functions are passed along here as well. .. image:: ekf_slam_1_0.png -References: +Reference ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - `PROBABILISTIC ROBOTICS `_ diff --git a/docs/modules/4_slam/graph_slam/graph_slam_main.rst b/docs/modules/4_slam/graph_slam/graph_slam_main.rst index 987eed385c..a2ef513527 100644 --- a/docs/modules/4_slam/graph_slam/graph_slam_main.rst +++ b/docs/modules/4_slam/graph_slam/graph_slam_main.rst @@ -17,7 +17,7 @@ The black stars are landmarks for graph edge generation. .. include:: graphSLAM_formulation.rst .. include:: graphSLAM_SE2_example.rst -References: +Reference ~~~~~~~~~~~ - `A Tutorial on Graph-Based SLAM `_ diff --git a/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst index d306a85352..9d9b3de709 100644 --- a/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst +++ b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst @@ -13,7 +13,7 @@ You can get different Beizer course: .. image:: Figure_2.png -Ref: +Reference - `Continuous Curvature Path Generation Based on Bezier Curves for Autonomous diff --git a/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst index ffc3cc6451..82e0a71044 100644 --- a/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst +++ b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst @@ -7,7 +7,7 @@ Eta^3 Spline path planning This is a path planning with Eta^3 spline. -Ref: +Reference - `\\eta^3-Splines for the Smooth Path Generation of Wheeled Mobile Robots `__ diff --git a/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst index 38efaf2b53..371d536e3f 100644 --- a/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst +++ b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst @@ -35,7 +35,7 @@ Low Speed and Merging and Stopping Scenario This scenario illustrates the trajectory planning at low speeds with merging and stopping behaviors. -Ref: +Reference - `Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet diff --git a/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst index 1644ed00cc..bf82c9f391 100644 --- a/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst +++ b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst @@ -63,7 +63,7 @@ This is a 2D grid based shortest path planning with D star algorithm. The animation shows a robot finding its path avoiding an obstacle using the D* search algorithm. -Ref: +Reference - `D* search Wikipedia `__ @@ -74,7 +74,7 @@ This is a 2D grid based path planning and replanning with D star lite algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/DStarLite/animation.gif -Ref: +Reference - `Improved Fast Replanning for Robot Navigation in Unknown Terrain `_ @@ -88,7 +88,7 @@ This is a 2D grid based path planning with Potential Field algorithm. In the animation, the blue heat map shows potential value on each grid. -Ref: +Reference - `Robotic Motion Planning:Potential Functions `__ diff --git a/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst index 463363ddcf..1c5df1c9cc 100644 --- a/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst +++ b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst @@ -16,7 +16,7 @@ Lookup table generation sample .. image:: lookup_table.png -Ref: +Reference - `Optimal rough terrain trajectory generation for wheeled mobile robots `__ diff --git a/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst index 0628719176..f816c5c1b9 100644 --- a/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst +++ b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst @@ -13,7 +13,7 @@ Cyan crosses means searched points with Dijkstra method, The red line is the final path of PRM. -Ref: +Reference - `Probabilistic roadmap - Wikipedia `__ diff --git a/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst index 0412b3c9b3..66c3001c05 100644 --- a/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst +++ b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst @@ -97,7 +97,7 @@ Each velocity and acceleration boundary condition can be calculated with each or :math:`v_{xe}=v_ecos(\theta_e), v_{ye}=v_esin(\theta_e)` -References: +Reference ~~~~~~~~~~~ - `Local Path Planning And Motion Control For Agv In diff --git a/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst index ff377eb91b..a4a5d28e01 100644 --- a/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst +++ b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst @@ -380,7 +380,7 @@ Hence, we have: - :math:`v = (t - φ)` -Ref: +Reference - `15.3.2 Reeds-Shepp Curves `__ diff --git a/docs/modules/5_path_planning/rrt/rrt_main.rst b/docs/modules/5_path_planning/rrt/rrt_main.rst index e5f351a7ba..da3a4957a5 100644 --- a/docs/modules/5_path_planning/rrt/rrt_main.rst +++ b/docs/modules/5_path_planning/rrt/rrt_main.rst @@ -53,7 +53,7 @@ This is a path planning code with Informed RRT*. The cyan ellipse is the heuristic sampling domain of Informed RRT*. -Ref: +Reference - `Informed RRT\*: Optimal Sampling-based Path Planning Focused via Direct Sampling of an Admissible Ellipsoidal @@ -68,7 +68,7 @@ Batch Informed RRT\* This is a path planning code with Batch Informed RRT*. -Ref: +Reference - `Batch Informed Trees (BIT*): Sampling-based Optimal Planning via the Heuristically Guided Search of Implicit Random Geometric @@ -87,7 +87,7 @@ In this code, pure-pursuit algorithm is used for steering control, PID is used for speed control. -Ref: +Reference - `Motion Planning in Complex Environments using Closed-loop Prediction `__ @@ -109,7 +109,7 @@ A double integrator motion model is used for LQR local planner. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/LQRRRTStar/animation.gif -Ref: +Reference - `LQR-RRT\*: Optimal Sampling-Based Motion Planning with Automatically Derived Extension diff --git a/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst index d5e7ed17d1..bf89ac11ae 100644 --- a/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst +++ b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst @@ -22,7 +22,7 @@ Lane sampling .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/StateLatticePlanner/LaneSampling.gif -Ref: +Reference - `Optimal rough terrain trajectory generation for wheeled mobile robots `__ diff --git a/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst index 92e729ab29..65e0e53465 100644 --- a/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst +++ b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst @@ -11,7 +11,7 @@ Cyan crosses mean searched points with Dijkstra method, The red line is the final path of Vornoi Road-Map. -Ref: +Reference - `Robotic Motion Planning `__ diff --git a/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst index ded187e972..568ef9a0df 100644 --- a/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst +++ b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst @@ -134,7 +134,7 @@ Simulation results -References: +Reference ~~~~~~~~~~~ - `Towards fully autonomous driving: Systems and algorithms `__ diff --git a/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst index baca7a33fc..831423f364 100644 --- a/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -113,7 +113,7 @@ The optimal control input `u` can be calculated as: where `K` is the feedback gain matrix obtained by solving the Riccati equation. -References: +Reference ~~~~~~~~~~~ - `ApolloAuto/apollo: An open autonomous driving platform `_ diff --git a/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst index 5c7bcef85f..d7354cf8fb 100644 --- a/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst +++ b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst @@ -9,7 +9,7 @@ speed control. The red line is a target course, the green cross means the target point for pure pursuit control, the blue line is the tracking. -References: +Reference ~~~~~~~~~~~ - `A Survey of Motion Planning and Control Techniques for Self-driving diff --git a/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst index 70875fdc6c..d18cd6fbf7 100644 --- a/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst +++ b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst @@ -6,7 +6,7 @@ PID speed control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/rear_wheel_feedback/animation.gif -References: +Reference ~~~~~~~~~~~ - `A Survey of Motion Planning and Control Techniques for Self-driving Urban Vehicles `__ diff --git a/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst index fe325b0102..69089ac33b 100644 --- a/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst +++ b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst @@ -6,7 +6,7 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/stanley_controller/animation.gif -References: +Reference ~~~~~~~~~~~ - `Stanley: The robot that won the DARPA grand diff --git a/users_comments.md b/users_comments.md index a2f798eac4..1674f21377 100644 --- a/users_comments.md +++ b/users_comments.md @@ -10,7 +10,7 @@ This is an electric wheelchair control demo by [Katsushun89](https://github.com/ ![1](https://github.com/AtsushiSakai/PythonRoboticsGifs/blob/master/Users/WHILL_Model_CR_with_move_to_a_pose/WHLL_Model_CR_with_move_to_a_pose.gif) -Ref: +Reference: - [toioと同じように動くWHILL Model CR (in Japanese)](https://qiita.com/KatsuShun89/items/68fde7544ecfe36096d2) From 5392fcff4d555421b4417827dc67c611ad14cc06 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sat, 3 May 2025 09:25:12 +0900 Subject: [PATCH 260/312] Refactor module links and improve code documentation. (#1211) * Refactor module links and improve code documentation. Updated documentation to rename "API" sections to "Code Link" for clarity and consistency. Enhanced docstrings for `circle_fitting` and `kmeans_clustering` functions, improving parameter descriptions and adding return value details. Fixed typos in function and file names in the ray casting grid map module. * Fix import typo in ray casting grid map test module. Corrected the import statement in the test file by updating the module's name to `ray_casting_grid_map` for consistency with the source file. This ensures proper functionality of the test suite. --- Mapping/circle_fitting/circle_fitting.py | 33 +++++++++++++++---- .../kmeans_clustering/kmeans_clustering.py | 27 ++++++++++++++- .../ray_casting_grid_map.py} | 4 +-- .../circle_fitting/circle_fitting_main.rst | 4 +++ .../distance_map/distance_map_main.rst | 4 +-- .../gaussian_grid_map_main.rst | 6 ++++ .../k_means_object_clustering_main.rst | 6 ++++ .../lidar_to_grid_map_tutorial_main.rst | 6 ++++ .../normal_vector_estimation_main.rst | 8 ++--- .../point_cloud_sampling_main.rst | 8 ++--- .../ray_casting_grid_map_main.rst | 7 +++- .../rectangle_fitting_main.rst | 4 +-- ...id_map.py => test_ray_casting_grid_map.py} | 2 +- 13 files changed, 96 insertions(+), 23 deletions(-) rename Mapping/{raycasting_grid_map/raycasting_grid_map.py => ray_casting_grid_map/ray_casting_grid_map.py} (96%) rename tests/{test_raycasting_grid_map.py => test_ray_casting_grid_map.py} (71%) diff --git a/Mapping/circle_fitting/circle_fitting.py b/Mapping/circle_fitting/circle_fitting.py index 2eba550127..b5714b507c 100644 --- a/Mapping/circle_fitting/circle_fitting.py +++ b/Mapping/circle_fitting/circle_fitting.py @@ -16,12 +16,33 @@ def circle_fitting(x, y): """ - Circle Fitting with least squared - input: point x-y positions - output cxe x center position - cye y center position - re radius of circle - error: prediction error + Fits a circle to a given set of points using a least-squares approach. + + This function calculates the center (x, y) and radius of a circle that best fits + the given set of points in a two-dimensional plane. It minimizes the squared + errors between the circle and the provided points and returns the calculated + center coordinates, radius, and the fitting error. + + Raises + ------ + ValueError + If the input lists x and y do not contain the same number of elements. + + Parameters + ---------- + x : list[float] + The x-coordinates of the points. + y : list[float] + The y-coordinates of the points. + + Returns + ------- + tuple[float, float, float, float] + A tuple containing: + - The x-coordinate of the center of the fitted circle (float). + - The y-coordinate of the center of the fitted circle (float). + - The radius of the fitted circle (float). + - The fitting error as a deviation metric (float). """ sumx = sum(x) diff --git a/Mapping/kmeans_clustering/kmeans_clustering.py b/Mapping/kmeans_clustering/kmeans_clustering.py index e18960e990..cee01e5ad5 100644 --- a/Mapping/kmeans_clustering/kmeans_clustering.py +++ b/Mapping/kmeans_clustering/kmeans_clustering.py @@ -17,12 +17,37 @@ def kmeans_clustering(rx, ry, nc): + """ + Performs k-means clustering on the given dataset, iteratively adjusting cluster centroids + until convergence within a defined threshold or reaching the maximum number of + iterations. + + The implementation initializes clusters, calculates initial centroids, and refines the + clusters through iterative updates to optimize the cost function based on minimum + distance between datapoints and centroids. + + Arguments: + rx: List[float] + The x-coordinates of the dataset points to be clustered. + ry: List[float] + The y-coordinates of the dataset points to be clustered. + nc: int + The number of clusters to group the data into. + + Returns: + Clusters + An instance containing the final cluster assignments and centroids after + convergence. + + Raises: + None + + """ clusters = Clusters(rx, ry, nc) clusters.calc_centroid() pre_cost = float("inf") for loop in range(MAX_LOOP): - print("loop:", loop) cost = clusters.update_clusters() clusters.calc_centroid() diff --git a/Mapping/raycasting_grid_map/raycasting_grid_map.py b/Mapping/ray_casting_grid_map/ray_casting_grid_map.py similarity index 96% rename from Mapping/raycasting_grid_map/raycasting_grid_map.py rename to Mapping/ray_casting_grid_map/ray_casting_grid_map.py index 8ce37b925b..c7e73f0630 100644 --- a/Mapping/raycasting_grid_map/raycasting_grid_map.py +++ b/Mapping/ray_casting_grid_map/ray_casting_grid_map.py @@ -48,7 +48,7 @@ def atan_zero_to_twopi(y, x): return angle -def precasting(minx, miny, xw, yw, xyreso, yawreso): +def pre_casting(minx, miny, xw, yw, xyreso, yawreso): precast = [[] for i in range(int(round((math.pi * 2.0) / yawreso)) + 1)] @@ -81,7 +81,7 @@ def generate_ray_casting_grid_map(ox, oy, xyreso, yawreso): pmap = [[0.0 for i in range(yw)] for i in range(xw)] - precast = precasting(minx, miny, xw, yw, xyreso, yawreso) + precast = pre_casting(minx, miny, xw, yw, xyreso, yawreso) for (x, y) in zip(ox, oy): diff --git a/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst b/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst index 1892d1f8f7..e243529a9c 100644 --- a/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst +++ b/docs/modules/3_mapping/circle_fitting/circle_fitting_main.rst @@ -11,3 +11,7 @@ The red crosses are observations from a ranging sensor. The red circle is the estimated object shape using circle fitting. +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.circle_fitting.circle_fitting.circle_fitting diff --git a/docs/modules/3_mapping/distance_map/distance_map_main.rst b/docs/modules/3_mapping/distance_map/distance_map_main.rst index 0ef9e3022f..ec60e752c9 100644 --- a/docs/modules/3_mapping/distance_map/distance_map_main.rst +++ b/docs/modules/3_mapping/distance_map/distance_map_main.rst @@ -14,8 +14,8 @@ The algorithm is demonstrated on a simple 2D grid with obstacles: .. image:: distance_map.png -API -~~~ +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. autofunction:: Mapping.DistanceMap.distance_map.compute_sdf diff --git a/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst b/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst index b0f112a871..50033d2a20 100644 --- a/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst +++ b/docs/modules/3_mapping/gaussian_grid_map/gaussian_grid_map_main.rst @@ -6,3 +6,9 @@ Gaussian grid map This is a 2D Gaussian grid mapping example. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Mapping/gaussian_grid_map/animation.gif + +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.gaussian_grid_map.gaussian_grid_map.generate_gaussian_grid_map + diff --git a/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst b/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst index e098ca5409..0ece604009 100644 --- a/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst +++ b/docs/modules/3_mapping/k_means_object_clustering/k_means_object_clustering_main.rst @@ -4,3 +4,9 @@ k-means object clustering This is a 2D object clustering with k-means algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Mapping/kmeans_clustering/animation.gif + +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.kmeans_clustering.kmeans_clustering.kmeans_clustering + diff --git a/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst index 1f62179efd..29f5878e48 100644 --- a/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst +++ b/docs/modules/3_mapping/lidar_to_grid_map_tutorial/lidar_to_grid_map_tutorial_main.rst @@ -196,3 +196,9 @@ Let’s use this flood fill on real data: .. image:: lidar_to_grid_map_tutorial_14_1.png +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.lidar_to_grid_map.lidar_to_grid_map.main + + diff --git a/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst b/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst index a4d1bf0df2..68a19e1534 100644 --- a/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst +++ b/docs/modules/3_mapping/normal_vector_estimation/normal_vector_estimation_main.rst @@ -25,8 +25,8 @@ This is an example of normal vector calculation: .. figure:: normal_vector_calc.png -API -===== +Code Link +========== .. autofunction:: Mapping.normal_vector_estimation.normal_vector_estimation.calc_normal_vector @@ -67,8 +67,8 @@ This is an example of RANSAC based normal vector estimation: .. figure:: ransac_normal_vector_estimation.png -API -===== +Code Link +========== .. autofunction:: Mapping.normal_vector_estimation.normal_vector_estimation.ransac_normal_vector_estimation diff --git a/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst b/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst index cbb5652f56..8cb08d4b78 100644 --- a/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst +++ b/docs/modules/3_mapping/point_cloud_sampling/point_cloud_sampling_main.rst @@ -27,8 +27,8 @@ This method determines which each point is in a grid, and replaces the point clouds that are in the same Voxel with their average to reduce the number of points. -API -===== +Code Link +========== .. autofunction:: Mapping.point_cloud_sampling.point_cloud_sampling.voxel_point_sampling @@ -61,8 +61,8 @@ Although this method does not have good performance comparing the Farthest distance sample where each point is distributed farther from each other, this is suitable for real-time processing because of its fast computation time. -API -===== +Code Link +========== .. autofunction:: Mapping.point_cloud_sampling.point_cloud_sampling.poisson_disk_sampling diff --git a/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst b/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst index cc5a1a1c5b..bee2f64193 100644 --- a/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst +++ b/docs/modules/3_mapping/ray_casting_grid_map/ray_casting_grid_map_main.rst @@ -3,4 +3,9 @@ Ray casting grid map This is a 2D ray casting grid mapping example. -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Mapping/raycasting_grid_map/animation.gif \ No newline at end of file +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Mapping/raycasting_grid_map/animation.gif + +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: Mapping.ray_casting_grid_map.ray_casting_grid_map.generate_ray_casting_grid_map diff --git a/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst b/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst index b6ced1dc1d..06d85efe61 100644 --- a/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst +++ b/docs/modules/3_mapping/rectangle_fitting/rectangle_fitting_main.rst @@ -57,8 +57,8 @@ This evaluation function uses the squreed distances between the edges of the rec Calculating the squared error is the same as calculating the variance. The smaller this variance, the more it signifies that the points fit within the rectangle. -API -~~~~~~ +Code Link +~~~~~~~~~~~ .. autoclass:: Mapping.rectangle_fitting.rectangle_fitting.LShapeFitting :members: diff --git a/tests/test_raycasting_grid_map.py b/tests/test_ray_casting_grid_map.py similarity index 71% rename from tests/test_raycasting_grid_map.py rename to tests/test_ray_casting_grid_map.py index f08ae9277e..2d192c9310 100644 --- a/tests/test_raycasting_grid_map.py +++ b/tests/test_ray_casting_grid_map.py @@ -1,5 +1,5 @@ import conftest # Add root path to sys.path -from Mapping.raycasting_grid_map import raycasting_grid_map as m +from Mapping.ray_casting_grid_map import ray_casting_grid_map as m def test1(): From e1cdb24ecfd68ff4eaf51626e5a3f4854da588a4 Mon Sep 17 00:00:00 2001 From: Yuri Harada <55676955+NightzDev@users.noreply.github.com> Date: Fri, 2 May 2025 21:51:20 -0300 Subject: [PATCH 261/312] docs: rewrite internal sensors section with detailed descriptions and references (#1197) * docs: rewrite and enhance internal sensors documentation * Update docs/modules/12_appendix/internal_sensors_main.rst --------- Co-authored-by: Atsushi Sakai --- .../12_appendix/internal_sensors_main.rst | 41 +++++++++++++++---- 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/docs/modules/12_appendix/internal_sensors_main.rst b/docs/modules/12_appendix/internal_sensors_main.rst index 18f209098e..fa2594a2bf 100644 --- a/docs/modules/12_appendix/internal_sensors_main.rst +++ b/docs/modules/12_appendix/internal_sensors_main.rst @@ -3,32 +3,59 @@ Internal Sensors for Robots ============================ -This project, `PythonRobotics`, focuses on algorithms, so hardware is not included. -However, having basic knowledge of hardware in robotics is also important for understanding algorithms. -Therefore, we will provide an overview. +This project, `PythonRobotics`, focuses on algorithms, so hardware is not included. However, having basic knowledge of hardware in robotics is also important for understanding algorithms. Therefore, we will provide an overview. Introduction ------------- +------------- + +In robotic systems, internal sensors play a crucial role in monitoring the robot’s internal state, such as orientation, acceleration, angular velocity, altitude, and temperature. These sensors provide essential feedback that supports control, localization, and safety mechanisms. While external sensors perceive the environment, internal sensors give the robot self-awareness of its own motion and condition. Understanding the principles and characteristics of these sensors is vital to fully utilize their information within algorithms and decision-making systems. This section outlines the main internal sensors used in robotics. Global Navigation Satellite System (GNSS) -------------------------------------------- +----------------------------------------- + +GNSS is a satellite-based navigation system that provides global positioning and time information by analyzing signals from multiple satellites. It is commonly used in outdoor environments for absolute positioning. Although GNSS offers global coverage without infrastructure dependency, its performance is limited indoors or in obstructed areas, and it suffers from low update rates and susceptibility to signal noise. It is widely used in outdoor navigation for drones, vehicles, and delivery robots. Gyroscope ---------- +A gyroscope measures angular velocity around the robot’s axes, enabling orientation and attitude estimation through detection of the Coriolis effect. Gyroscopes are compact, cost-effective, and provide high update rates, but they are prone to drift and require calibration or sensor fusion for long-term accuracy. These sensors are essential in drones, balancing robots, and IMU-based systems for motion tracking. + Accelerometer --------------- +--------------- + +An accelerometer measures linear acceleration along one or more axes, typically by detecting mass displacement due to motion. It is small, affordable, and useful for detecting movement, tilt, or vibration. However, accelerometers are limited by noisy output and cannot independently determine position without integration and fusion. They are commonly applied in wearable robotics, step counters, and vibration sensing. Magnetometer -------------- +A magnetometer measures the direction and intensity of magnetic fields, enabling heading estimation based on Earth’s magnetic field. It is lightweight and useful for orientation, especially in GPS-denied environments, though it is sensitive to interference from electronics and requires calibration. Magnetometers are often used in conjunction with IMUs for navigation and directional awareness. + Inertial Measurement Unit (IMU) -------------------------------- +An IMU integrates a gyroscope, accelerometer, and sometimes a magnetometer to estimate a robot's motion and orientation through sensor fusion techniques such as Kalman filters. IMUs are compact and provide high-frequency data, which is essential for localization and navigation in GPS-denied areas. Nonetheless, they accumulate drift over time and require complex filtering to maintain accuracy. IMUs are found in drones, mobile robots, and motion tracking systems. + Pressure Sensor ------------------ +---------------- + +Pressure sensors detect atmospheric or fluid pressure by measuring the force exerted on a diaphragm. They are effective for estimating altitude and monitoring environmental conditions, especially in drones and underwater robots. Although cost-effective and efficient, their accuracy may degrade due to temperature variation and limitations in low-altitude resolution. Temperature Sensor -------------------- +Temperature sensors monitor environmental or internal component temperatures, using changes in resistance or voltage depending on sensor type (e.g., RTD or thermocouple). They are simple and reliable for safety and thermal regulation, though they may respond slowly and be affected by nearby electronics. Common applications include battery and motor monitoring, safety systems, and ambient sensing. + +References +---------- +- *Introduction to Autonomous Mobile Robots*, Roland Siegwart, Illah Nourbakhsh, Davide Scaramuzza +- *Probabilistic Robotics*, Sebastian Thrun, Wolfram Burgard, Dieter Fox +- Wikipedia articles: + + - `Inertial Measurement Unit (IMU) `_ + - `Accelerometer `_ + - `Gyroscope `_ + - `Magnetometer `_ + - `Pressure sensor `_ + - `Temperature sensor `_ +- `Adafruit Sensor Guides `_ \ No newline at end of file From d2fe5ae8f0e414f394c00570771c07807d167e68 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 4 May 2025 09:50:49 +0900 Subject: [PATCH 262/312] Add code links to SLAM module documentation (#1212) This commit updates SLAM module documentation files to include direct code links for better navigation. It also adjusts imports in `test_iterative_closest_point.py` to reflect updated module structure and adds a safety check for the directory in `runtests.sh`. --- .../icp_matching.py} | 0 docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst | 5 +++++ docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst | 6 ++++++ docs/modules/4_slam/ekf_slam/ekf_slam_main.rst | 6 ++++++ docs/modules/4_slam/graph_slam/graph_slam_main.rst | 6 ++++++ .../iterative_closest_point_matching_main.rst | 8 +++++++- runtests.sh | 1 + tests/test_iterative_closest_point.py | 2 +- 8 files changed, 32 insertions(+), 2 deletions(-) rename SLAM/{iterative_closest_point/iterative_closest_point.py => ICPMatching/icp_matching.py} (100%) diff --git a/SLAM/iterative_closest_point/iterative_closest_point.py b/SLAM/ICPMatching/icp_matching.py similarity index 100% rename from SLAM/iterative_closest_point/iterative_closest_point.py rename to SLAM/ICPMatching/icp_matching.py diff --git a/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst b/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst index a2aa521216..b6bafa0982 100644 --- a/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst +++ b/docs/modules/4_slam/FastSLAM1/FastSLAM1_main.rst @@ -22,6 +22,11 @@ The red points are particles of FastSLAM. Black points are landmarks, blue crosses are estimated landmark positions by FastSLAM. +Code Link +~~~~~~~~~~~~ + +.. autofunction:: SLAM.FastSLAM1.fast_slam1.fast_slam1 + Introduction ~~~~~~~~~~~~ diff --git a/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst b/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst index 9e79b496a3..59ed3b9f75 100644 --- a/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst +++ b/docs/modules/4_slam/FastSLAM2/FastSLAM2_main.rst @@ -7,6 +7,12 @@ The animation has the same meanings as one of FastSLAM 1.0. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/FastSLAM2/animation.gif +Code Link +~~~~~~~~~~~ + +.. autofunction:: SLAM.FastSLAM2.fast_slam2.fast_slam2 + + References ~~~~~~~~~~ diff --git a/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst index a1486ffe1e..3967a7ae4d 100644 --- a/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst +++ b/docs/modules/4_slam/ekf_slam/ekf_slam_main.rst @@ -21,6 +21,12 @@ This is a simulation of EKF SLAM. - Blue line: ground truth - Red line: EKF SLAM position estimation +Code Link +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. autofunction:: SLAM.EKFSLAM.ekf_slam.ekf_slam + + Introduction ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/4_slam/graph_slam/graph_slam_main.rst b/docs/modules/4_slam/graph_slam/graph_slam_main.rst index a2ef513527..2ef17e4179 100644 --- a/docs/modules/4_slam/graph_slam/graph_slam_main.rst +++ b/docs/modules/4_slam/graph_slam/graph_slam_main.rst @@ -13,6 +13,12 @@ The black stars are landmarks for graph edge generation. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/GraphBasedSLAM/animation.gif +Code Link +~~~~~~~~~~~~ + +.. autofunction:: SLAM.GraphBasedSLAM.graph_based_slam.graph_based_slam + + .. include:: graphSLAM_doc.rst .. include:: graphSLAM_formulation.rst .. include:: graphSLAM_SE2_example.rst diff --git a/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst b/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst index a30b1fc99b..772fe62889 100644 --- a/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst +++ b/docs/modules/4_slam/iterative_closest_point_matching/iterative_closest_point_matching_main.rst @@ -10,7 +10,13 @@ points to points. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/SLAM/iterative_closest_point/animation.gif +Code Link +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autofunction:: SLAM.ICPMatching.icp_matching.icp_matching + + References -~~~~~~~~~~ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - `Introduction to Mobile Robotics: Iterative Closest Point Algorithm `_ diff --git a/runtests.sh b/runtests.sh index 12d1b80453..c4460c8aa7 100755 --- a/runtests.sh +++ b/runtests.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +cd "$(dirname "$0")" || exit 1 echo "Run test suites! " # === pytest based test runner === diff --git a/tests/test_iterative_closest_point.py b/tests/test_iterative_closest_point.py index 3e726b5649..cdfa89cc55 100644 --- a/tests/test_iterative_closest_point.py +++ b/tests/test_iterative_closest_point.py @@ -1,5 +1,5 @@ import conftest -from SLAM.iterative_closest_point import iterative_closest_point as m +from SLAM.ICPMatching import icp_matching as m def test_1(): From a38da41bafaf82bb56d4491d94a0095c1019ac4a Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Sun, 4 May 2025 20:32:11 +0900 Subject: [PATCH 263/312] Add code links to documentation and fix naming inconsistencies (#1213) Added references to related Python functions in documentation for better navigation and usability. Corrected inconsistencies in module and test names to align with their respective directories and improve clarity. --- .../rear_wheel_feedback_control.py} | 0 .../stanley_control.py} | 0 .../10_inverted_pendulum/inverted_pendulum_main.rst | 12 ++++++++++++ .../behavior_tree/behavior_tree_main.rst | 2 +- .../state_machine/state_machine_main.rst | 4 ++-- .../cgmres_nmpc/cgmres_nmpc_main.rst | 5 +++++ .../lqr_speed_and_steering_control_main.rst | 7 ++++++- .../lqr_steering_control_main.rst | 6 +++++- ...l_predictive_speed_and_steering_control_main.rst | 13 ++++++------- .../move_to_a_pose_main.rst} | 8 +++++++- docs/modules/6_path_tracking/path_tracking_main.rst | 2 +- .../pure_pursuit_tracking_main.rst | 6 ++++++ .../rear_wheel_feedback_control_main.rst | 6 ++++++ .../stanley_control/stanley_control_main.rst | 6 ++++++ .../n_joint_arm_to_point_control_main.rst | 7 +++++++ .../obstacle_avoidance_arm_navigation_main.rst | 7 ++++++- .../7_arm_navigation/planar_two_link_ik_main.rst | 6 ++++++ .../drone_3d_trajectory_following_main.rst | 5 +++++ .../rocket_powered_landing_main.rst | 8 ++++++++ .../bipedal_planner/bipedal_planner_main.rst | 5 +++++ tests/test_rear_wheel_feedback.py | 2 +- tests/test_stanley_controller.py | 2 +- 22 files changed, 102 insertions(+), 17 deletions(-) rename PathTracking/{rear_wheel_feedback/rear_wheel_feedback.py => rear_wheel_feedback_control/rear_wheel_feedback_control.py} (100%) rename PathTracking/{stanley_controller/stanley_controller.py => stanley_control/stanley_control.py} (100%) rename docs/modules/6_path_tracking/{move_to_a_pose_control/move_to_a_pose_control_main.rst => move_to_a_pose/move_to_a_pose_main.rst} (97%) diff --git a/PathTracking/rear_wheel_feedback/rear_wheel_feedback.py b/PathTracking/rear_wheel_feedback_control/rear_wheel_feedback_control.py similarity index 100% rename from PathTracking/rear_wheel_feedback/rear_wheel_feedback.py rename to PathTracking/rear_wheel_feedback_control/rear_wheel_feedback_control.py diff --git a/PathTracking/stanley_controller/stanley_controller.py b/PathTracking/stanley_control/stanley_control.py similarity index 100% rename from PathTracking/stanley_controller/stanley_controller.py rename to PathTracking/stanley_control/stanley_control.py diff --git a/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst b/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst index 048cbea9ac..58dc0f2e57 100644 --- a/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst +++ b/docs/modules/10_inverted_pendulum/inverted_pendulum_main.rst @@ -89,6 +89,12 @@ and :math:`P` is the unique positive definite solution to the discrete time .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Control/InvertedPendulumCart/animation_lqr.gif +Code Link +^^^^^^^^^^^ + +.. autofunction:: InvertedPendulum.inverted_pendulum_lqr_control.main + + MPC control ~~~~~~~~~~~~~~~~~~~~~~~~~~~ The MPC controller minimize this cost function defined as: @@ -101,3 +107,9 @@ subject to: - Initial state .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Control/InvertedPendulumCart/animation.gif + +Code Link +^^^^^^^^^^^ + +.. autofunction:: InvertedPendulum.inverted_pendulum_mpc_control.main + diff --git a/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst b/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst index ae3e16da81..22849f7c54 100644 --- a/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst +++ b/docs/modules/13_mission_planning/behavior_tree/behavior_tree_main.rst @@ -5,7 +5,7 @@ Behavior Tree is a modular, hierarchical decision model that is widely used in r It present some similarities to hierarchical state machines with the key difference that the main building block of a behavior is a task rather than a state. Behavior Tree have been shown to generalize several other control architectures (https://ieeexplore.ieee.org/document/7790863) -Core Concepts +Code Link ~~~~~~~~~~~~~ Control Node diff --git a/docs/modules/13_mission_planning/state_machine/state_machine_main.rst b/docs/modules/13_mission_planning/state_machine/state_machine_main.rst index abaece1b11..3f516d46a9 100644 --- a/docs/modules/13_mission_planning/state_machine/state_machine_main.rst +++ b/docs/modules/13_mission_planning/state_machine/state_machine_main.rst @@ -12,8 +12,8 @@ Core Concepts - **Action**: An operation executed during transition (before entering new state) - **Guard**: A precondition that must be satisfied to allow transition -API -~~~ +Code Link +~~~~~~~~~~~ .. autoclass:: MissionPlanning.StateMachine.state_machine.StateMachine :members: add_transition, process, register_state diff --git a/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst index 23f1218a94..914a4555ff 100644 --- a/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst +++ b/docs/modules/6_path_tracking/cgmres_nmpc/cgmres_nmpc_main.rst @@ -17,6 +17,11 @@ Nonlinear Model Predictive Control with C-GMRES .. figure:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/cgmres_nmpc/animation.gif :alt: gif +Code Link +~~~~~~~~~~~~ + +.. autofunction:: PathTracking.cgmres_nmpc.cgmres_nmpc.NMPCControllerCGMRES + Mathematical Formulation ~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst index 568ef9a0df..b0ba9e0d45 100644 --- a/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst +++ b/docs/modules/6_path_tracking/lqr_speed_and_steering_control/lqr_speed_and_steering_control_main.rst @@ -7,7 +7,12 @@ Path tracking simulation with LQR speed and steering control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_speed_steer_control/animation.gif -`[Code Link] `_ + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.lqr_speed_steer_control.lqr_speed_steer_control.lqr_speed_steering_control + Overview ~~~~~~~~ diff --git a/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst index 831423f364..fc8f2a33aa 100644 --- a/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst +++ b/docs/modules/6_path_tracking/lqr_steering_control/lqr_steering_control_main.rst @@ -8,7 +8,11 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/lqr_steer_control/animation.gif -`[Code Link] `_ +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.lqr_steer_control.lqr_steer_control.lqr_steering_control + Overview ~~~~~~~~ diff --git a/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst b/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst index de55b545ba..76a6819a46 100644 --- a/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst +++ b/docs/modules/6_path_tracking/model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control_main.rst @@ -5,13 +5,6 @@ Model predictive speed and steering control .. figure:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/model_predictive_speed_and_steer_control/animation.gif?raw=true :alt: Model predictive speed and steering control - Model predictive speed and steering control - -code: - -`PythonRobotics/model_predictive_speed_and_steer_control.py at master · -AtsushiSakai/PythonRobotics `__ - This is a path tracking simulation using model predictive control (MPC). The MPC controller controls vehicle speed and steering base on @@ -22,6 +15,12 @@ This code uses cvxpy as an optimization modeling tool. - `Welcome to CVXPY 1.0 — CVXPY 1.0.6 documentation `__ +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.model_predictive_speed_and_steer_control.model_predictive_speed_and_steer_control.iterative_linear_mpc_control + + MPC modeling ~~~~~~~~~~~~ diff --git a/docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst b/docs/modules/6_path_tracking/move_to_a_pose/move_to_a_pose_main.rst similarity index 97% rename from docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst rename to docs/modules/6_path_tracking/move_to_a_pose/move_to_a_pose_main.rst index 77ec682a30..19bb0e4c14 100644 --- a/docs/modules/6_path_tracking/move_to_a_pose_control/move_to_a_pose_control_main.rst +++ b/docs/modules/6_path_tracking/move_to_a_pose/move_to_a_pose_main.rst @@ -3,7 +3,13 @@ Move to a Pose Control In this section, we present the logic of PathFinderController that drives a car from a start pose (x, y, theta) to a goal pose. A simulation of moving to a pose control is presented below. -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/move_to_pose/animation.gif +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Control/move_to_pose/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.move_to_pose.move_to_pose.move_to_pose + Position Control of non-Holonomic Systems ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/6_path_tracking/path_tracking_main.rst b/docs/modules/6_path_tracking/path_tracking_main.rst index d98e324583..742cc807e6 100644 --- a/docs/modules/6_path_tracking/path_tracking_main.rst +++ b/docs/modules/6_path_tracking/path_tracking_main.rst @@ -16,4 +16,4 @@ Path tracking is the ability of a robot to follow the reference path generated b lqr_speed_and_steering_control/lqr_speed_and_steering_control model_predictive_speed_and_steering_control/model_predictive_speed_and_steering_control cgmres_nmpc/cgmres_nmpc - move_to_a_pose_control/move_to_a_pose_control + move_to_a_pose/move_to_a_pose diff --git a/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst index d7354cf8fb..ff6749bbbe 100644 --- a/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst +++ b/docs/modules/6_path_tracking/pure_pursuit_tracking/pure_pursuit_tracking_main.rst @@ -9,6 +9,12 @@ speed control. The red line is a target course, the green cross means the target point for pure pursuit control, the blue line is the tracking. +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.pure_pursuit.pure_pursuit.pure_pursuit_steer_control + + Reference ~~~~~~~~~~~ diff --git a/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst index d18cd6fbf7..56d0db63ad 100644 --- a/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst +++ b/docs/modules/6_path_tracking/rear_wheel_feedback_control/rear_wheel_feedback_control_main.rst @@ -6,6 +6,12 @@ PID speed control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/rear_wheel_feedback/animation.gif +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.rear_wheel_feedback_control.rear_wheel_feedback_control.rear_wheel_feedback_control + + Reference ~~~~~~~~~~~ - `A Survey of Motion Planning and Control Techniques for Self-driving diff --git a/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst index 69089ac33b..3c491804f6 100644 --- a/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst +++ b/docs/modules/6_path_tracking/stanley_control/stanley_control_main.rst @@ -6,6 +6,12 @@ control. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathTracking/stanley_controller/animation.gif +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathTracking.stanley_control.stanley_control.stanley_control + + Reference ~~~~~~~~~~~ diff --git a/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst b/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst index cc6279f681..56900acde1 100644 --- a/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst +++ b/docs/modules/7_arm_navigation/n_joint_arm_to_point_control_main.rst @@ -11,3 +11,10 @@ plotting area. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/ArmNavigation/n_joint_arm_to_point_control/animation.gif In this simulation N = 10, however, you can change it. + + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: ArmNavigation.n_joint_arm_to_point_control.n_joint_arm_to_point_control.main + diff --git a/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst b/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst index 899a64a5cd..4433ab531b 100644 --- a/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst +++ b/docs/modules/7_arm_navigation/obstacle_avoidance_arm_navigation_main.rst @@ -3,4 +3,9 @@ Arm navigation with obstacle avoidance Arm navigation with obstacle avoidance simulation. -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/ArmNavigation/arm_obstacle_navigation/animation.gif \ No newline at end of file +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/ArmNavigation/arm_obstacle_navigation/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: ArmNavigation.arm_obstacle_navigation.arm_obstacle_navigation.main diff --git a/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst b/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst index 2da2b0dc30..5b2712eb48 100644 --- a/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst +++ b/docs/modules/7_arm_navigation/planar_two_link_ik_main.rst @@ -11,6 +11,12 @@ This is a interactive simulation. You can set the goal position of the end effector with left-click on the plotting area. +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: ArmNavigation.two_joint_arm_to_point_control.two_joint_arm_to_point_control.main + + Inverse Kinematics for a Planar Two-Link Robotic Arm ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst b/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst index c3bdc33cdc..1805bb3f6d 100644 --- a/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst +++ b/docs/modules/8_aerial_navigation/drone_3d_trajectory_following/drone_3d_trajectory_following_main.rst @@ -4,3 +4,8 @@ Drone 3d trajectory following This is a 3d trajectory following simulation for a quadrotor. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/AerialNavigation/drone_3d_trajectory_following/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: AerialNavigation.drone_3d_trajectory_following.drone_3d_trajectory_following.quad_sim diff --git a/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst b/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst index 6c90d2b44e..4bf5117500 100644 --- a/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst +++ b/docs/modules/8_aerial_navigation/rocket_powered_landing/rocket_powered_landing_main.rst @@ -1,6 +1,14 @@ Rocket powered landing ----------------------------- +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/AerialNavigation/rocket_powered_landing/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: AerialNavigation.rocket_powered_landing.rocket_powered_landing.main + + Simulation ~~~~~~~~~~ diff --git a/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst b/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst index 2ee5971e7a..6253715cc1 100644 --- a/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst +++ b/docs/modules/9_bipedal/bipedal_planner/bipedal_planner_main.rst @@ -4,3 +4,8 @@ Bipedal Planner Bipedal Walking with modifying designated footsteps .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Bipedal/bipedal_planner/animation.gif + +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: Bipedal.bipedal_planner.bipedal_planner.BipedalPlanner diff --git a/tests/test_rear_wheel_feedback.py b/tests/test_rear_wheel_feedback.py index 895eb188b3..eccde52358 100644 --- a/tests/test_rear_wheel_feedback.py +++ b/tests/test_rear_wheel_feedback.py @@ -1,5 +1,5 @@ import conftest # Add root path to sys.path -from PathTracking.rear_wheel_feedback import rear_wheel_feedback as m +from PathTracking.rear_wheel_feedback_control import rear_wheel_feedback_control as m def test1(): diff --git a/tests/test_stanley_controller.py b/tests/test_stanley_controller.py index a1d8073764..bd590cb51a 100644 --- a/tests/test_stanley_controller.py +++ b/tests/test_stanley_controller.py @@ -1,5 +1,5 @@ import conftest # Add root path to sys.path -from PathTracking.stanley_controller import stanley_controller as m +from PathTracking.stanley_control import stanley_control as m def test1(): From 73e1c0bebccf4f4fc67ae59ada53b783a8533096 Mon Sep 17 00:00:00 2001 From: Atsushi Sakai Date: Mon, 5 May 2025 17:29:45 +0900 Subject: [PATCH 264/312] Add "Code Link" sections and rename classes for consistency (#1214) This commit adds "Code Link" sections to documentation across various path planning modules, linking to relevant class and function APIs. Additionally, several class renaming changes were made, such as `Dijkstra` to `DijkstraPlanner` and `eta3_trajectory` to `Eta3SplineTrajectory`, to enhance naming consistency. Minor fixes include file restructuring and image renaming for the RRT module. --- ..._rrtstar.py => batch_informed_rrt_star.py} | 0 PathPlanning/Dijkstra/dijkstra.py | 4 +- .../eta3_spline_trajectory.py | 14 ++--- .../bezier_path/bezier_path_main.rst | 9 ++- .../bspline_path/bspline_path_main.rst | 8 +-- .../bugplanner/bugplanner_main.rst | 8 +++ .../catmull_rom_spline_main.rst | 4 +- .../clothoid_path/clothoid_path_main.rst | 5 ++ .../coverage_path/coverage_path_main.rst | 21 +++++++ .../cubic_spline/cubic_spline_main.rst | 8 +-- .../dubins_path/dubins_path_main.rst | 2 +- .../dynamic_window_approach_main.rst | 12 +++- .../elastic_bands/elastic_bands_main.rst | 7 ++- .../eta3_spline/eta3_spline_main.rst | 7 +++ .../frenet_frame_path_main.rst | 6 ++ .../grid_base_search_main.rst | 50 ++++++++++++++++ .../hybridastar/hybridastar_main.rst | 5 ++ .../lqr_path/lqr_path_main.rst | 5 ++ ...l_predictive_trajectory_generator_main.rst | 7 +++ .../prm_planner/prm_planner_main.rst | 7 +++ .../quintic_polynomials_planner_main.rst | 5 ++ .../reeds_shepp_path_main.rst | 7 +++ .../closed_loop_rrt_star_car/Figure_1.png | Bin .../closed_loop_rrt_star_car/Figure_3.png | Bin .../closed_loop_rrt_star_car/Figure_4.png | Bin .../closed_loop_rrt_star_car/Figure_5.png | Bin docs/modules/5_path_planning/rrt/rrt_main.rst | 54 ++++++++++++++++++ docs/modules/5_path_planning/rrt/rrt_star.rst | 6 ++ .../state_lattice_planner_main.rst | 17 ++++++ .../time_based_grid_search_main.rst | 9 +++ .../visibility_road_map_planner_main.rst | 7 ++- .../vrm_planner/vrm_planner_main.rst | 6 ++ tests/test_batch_informed_rrt_star.py | 2 +- 33 files changed, 277 insertions(+), 25 deletions(-) rename PathPlanning/BatchInformedRRTStar/{batch_informed_rrtstar.py => batch_informed_rrt_star.py} (100%) rename docs/modules/5_path_planning/{ => rrt}/closed_loop_rrt_star_car/Figure_1.png (100%) rename docs/modules/5_path_planning/{ => rrt}/closed_loop_rrt_star_car/Figure_3.png (100%) rename docs/modules/5_path_planning/{ => rrt}/closed_loop_rrt_star_car/Figure_4.png (100%) rename docs/modules/5_path_planning/{ => rrt}/closed_loop_rrt_star_car/Figure_5.png (100%) diff --git a/PathPlanning/BatchInformedRRTStar/batch_informed_rrtstar.py b/PathPlanning/BatchInformedRRTStar/batch_informed_rrt_star.py similarity index 100% rename from PathPlanning/BatchInformedRRTStar/batch_informed_rrtstar.py rename to PathPlanning/BatchInformedRRTStar/batch_informed_rrt_star.py diff --git a/PathPlanning/Dijkstra/dijkstra.py b/PathPlanning/Dijkstra/dijkstra.py index 8a585e4b18..f5a4703910 100644 --- a/PathPlanning/Dijkstra/dijkstra.py +++ b/PathPlanning/Dijkstra/dijkstra.py @@ -12,7 +12,7 @@ show_animation = True -class Dijkstra: +class DijkstraPlanner: def __init__(self, ox, oy, resolution, robot_radius): """ @@ -246,7 +246,7 @@ def main(): plt.grid(True) plt.axis("equal") - dijkstra = Dijkstra(ox, oy, grid_size, robot_radius) + dijkstra = DijkstraPlanner(ox, oy, grid_size, robot_radius) rx, ry = dijkstra.planning(sx, sy, gx, gy) if show_animation: # pragma: no cover diff --git a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py index a73797dacb..e72d33261e 100644 --- a/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py +++ b/PathPlanning/Eta3SplineTrajectory/eta3_spline_trajectory.py @@ -29,7 +29,7 @@ def __init__(self, actual_vel, max_vel): self.message = f'Actual velocity {actual_vel} does not equal desired max velocity {max_vel}!' -class eta3_trajectory(Eta3Path): +class Eta3SplineTrajectory(Eta3Path): """ eta3_trajectory @@ -300,8 +300,8 @@ def test1(max_vel=0.5): trajectory_segments.append(Eta3PathSegment( start_pose=start_pose, end_pose=end_pose, eta=eta, kappa=kappa)) - traj = eta3_trajectory(trajectory_segments, - max_vel=max_vel, max_accel=0.5) + traj = Eta3SplineTrajectory(trajectory_segments, + max_vel=max_vel, max_accel=0.5) # interpolate at several points along the path times = np.linspace(0, traj.total_time, 101) @@ -334,8 +334,8 @@ def test2(max_vel=0.5): trajectory_segments.append(Eta3PathSegment( start_pose=start_pose, end_pose=end_pose, eta=eta, kappa=kappa)) - traj = eta3_trajectory(trajectory_segments, - max_vel=max_vel, max_accel=0.5) + traj = Eta3SplineTrajectory(trajectory_segments, + max_vel=max_vel, max_accel=0.5) # interpolate at several points along the path times = np.linspace(0, traj.total_time, 101) @@ -400,8 +400,8 @@ def test3(max_vel=2.0): start_pose=start_pose, end_pose=end_pose, eta=eta, kappa=kappa)) # construct the whole path - traj = eta3_trajectory(trajectory_segments, - max_vel=max_vel, max_accel=0.5, max_jerk=1) + traj = Eta3SplineTrajectory(trajectory_segments, + max_vel=max_vel, max_accel=0.5, max_jerk=1) # interpolate at several points along the path times = np.linspace(0, traj.total_time, 1001) diff --git a/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst index 9d9b3de709..19fb89a1b1 100644 --- a/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst +++ b/docs/modules/5_path_planning/bezier_path/bezier_path_main.rst @@ -13,8 +13,15 @@ You can get different Beizer course: .. image:: Figure_2.png +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.BezierPath.bezier_path.calc_4points_bezier_path + + Reference +~~~~~~~~~~~~~~~ - `Continuous Curvature Path Generation Based on Bezier Curves for Autonomous - Vehicles ` + Vehicles `__ diff --git a/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst b/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst index e734352e34..00e5ef2fdb 100644 --- a/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst +++ b/docs/modules/5_path_planning/bspline_path/bspline_path_main.rst @@ -105,8 +105,8 @@ The default spline degree is 3, so curvature changes smoothly. .. image:: interp_and_curvature.png -API -++++ +Code link +++++++++++ .. autofunction:: PathPlanning.BSplinePath.bspline_path.interpolate_b_spline_path @@ -133,8 +133,8 @@ The default spline degree is 3, so curvature changes smoothly. .. image:: approx_and_curvature.png -API -++++ +Code Link +++++++++++ .. autofunction:: PathPlanning.BSplinePath.bspline_path.approximate_b_spline_path diff --git a/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst b/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst index 81c91c0313..e1cd2fe353 100644 --- a/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst +++ b/docs/modules/5_path_planning/bugplanner/bugplanner_main.rst @@ -5,4 +5,12 @@ This is a 2D planning with Bug algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/BugPlanner/animation.gif +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.BugPlanning.bug.main + +Reference +~~~~~~~~~~~~ + - `ECE452 Bug Algorithms `_ diff --git a/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst b/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst index 72e558c486..fa2a2ff72b 100644 --- a/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst +++ b/docs/modules/5_path_planning/catmull_rom_spline/catmull_rom_spline_main.rst @@ -88,8 +88,8 @@ Catmull-Rom Spline API This section provides an overview of the functions used for Catmull-Rom spline path planning. -API -++++ +Code Link +++++++++++ .. autofunction:: PathPlanning.Catmull_RomSplinePath.catmull_rom_spline_path.catmull_rom_point diff --git a/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst b/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst index 1e8cee694a..16d0ec03c1 100644 --- a/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst +++ b/docs/modules/5_path_planning/clothoid_path/clothoid_path_main.rst @@ -73,6 +73,11 @@ The final clothoid path can be calculated with the path parameters and Fresnel i &y(s)=y_{0}+\int_{0}^{s} \sin \left(\frac{1}{2} \kappa^{\prime} \tau^{2}+\kappa \tau+\vartheta_{0}\right) \mathrm{d} \tau \end{aligned} +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.ClothoidPath.clothoid_path_planner.generate_clothoid_path + References ~~~~~~~~~~ diff --git a/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst b/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst index 0a688b5ed2..eaa876c80b 100644 --- a/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst +++ b/docs/modules/5_path_planning/coverage_path/coverage_path_main.rst @@ -8,6 +8,11 @@ This is a 2D grid based sweep coverage path planner simulation: .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/GridBasedSweepCPP/animation.gif +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.GridBasedSweepCPP.grid_based_sweep_coverage_path_planner.planning + Spiral Spanning Tree ~~~~~~~~~~~~~~~~~~~~ @@ -17,6 +22,14 @@ This is a 2D grid based spiral spanning tree coverage path planner simulation: .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/SpiralSpanningTreeCPP/animation2.gif .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/SpiralSpanningTreeCPP/animation3.gif +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.SpiralSpanningTreeCPP.spiral_spanning_tree_coverage_path_planner.main + +Reference ++++++++++++++ + - `Spiral-STC: An On-Line Coverage Algorithm of Grid Environments by a Mobile Robot `_ @@ -29,6 +42,14 @@ This is a 2D grid based wavefront coverage path planner simulation: .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/WavefrontCPP/animation2.gif .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/WavefrontCPP/animation3.gif +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.WavefrontCPP.wavefront_coverage_path_planner.wavefront + +Reference ++++++++++++++ + - `Planning paths of complete coverage of an unstructured environment by a mobile robot `_ diff --git a/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst b/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst index 33471f7c85..a110217a2e 100644 --- a/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst +++ b/docs/modules/5_path_planning/cubic_spline/cubic_spline_main.rst @@ -171,8 +171,8 @@ the second derivative by: These equations can be calculated by differentiating the cubic polynomial. -API -=== +Code Link +========== This is the 1D cubic spline class API: @@ -199,8 +199,8 @@ Curvature of each point can be also calculated analytically by: :math:`\kappa=\frac{y^{\prime \prime} x^{\prime}-x^{\prime \prime} y^{\prime}}{\left(x^{\prime2}+y^{\prime2}\right)^{\frac{2}{3}}}` -API -=== +Code Link +========== .. autoclass:: PathPlanning.CubicSpline.cubic_spline_planner.CubicSpline2D :members: diff --git a/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst b/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst index 12172fb51e..5a3d14464b 100644 --- a/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst +++ b/docs/modules/5_path_planning/dubins_path/dubins_path_main.rst @@ -62,7 +62,7 @@ You can generate a path from these information and the maximum curvature informa A path type which has minimum course length among 6 types is selected, and then a path is constructed based on the selected type and its distances. -API +Code Link ~~~~~~~~~~~~~~~~~~~~ .. autofunction:: PathPlanning.DubinsPath.dubins_path_planner.plan_dubins_path diff --git a/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst b/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst index d645838597..ac5322df94 100644 --- a/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst +++ b/docs/modules/5_path_planning/dynamic_window_approach/dynamic_window_approach_main.rst @@ -5,7 +5,17 @@ Dynamic Window Approach This is a 2D navigation sample code with Dynamic Window Approach. +.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/DynamicWindowApproach/animation.gif + +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.DynamicWindowApproach.dynamic_window_approach.dwa_control + + +Reference +~~~~~~~~~~~~ + - `The Dynamic Window Approach to Collision Avoidance `__ -.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/DynamicWindowApproach/animation.gif diff --git a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst index 8a3e517105..d0109d4ec3 100644 --- a/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst +++ b/docs/modules/5_path_planning/elastic_bands/elastic_bands_main.rst @@ -5,6 +5,11 @@ This is a path planning with Elastic Bands. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/ElasticBands/animation.gif +Code Link ++++++++++++++ + +.. autoclass:: PathPlanning.ElasticBands.elastic_bands.ElasticBands + Core Concept ~~~~~~~~~~~~ @@ -69,6 +74,6 @@ Dynamic Path Maintenance - Remove redundant nodes if adjacent nodes are too close References -~~~~~~~~~~~~~~~~~~~~~~~ ++++++++++++++ - `Elastic Bands: Connecting Path Planning and Control `__ diff --git a/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst index 82e0a71044..9ee343e8a7 100644 --- a/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst +++ b/docs/modules/5_path_planning/eta3_spline/eta3_spline_main.rst @@ -7,7 +7,14 @@ Eta^3 Spline path planning This is a path planning with Eta^3 spline. +Code Link +~~~~~~~~~~~~~~~ + +.. autoclass:: PathPlanning.Eta3SplineTrajectory.eta3_spline_trajectory.Eta3SplineTrajectory + + Reference +~~~~~~~~~~~~~~~ - `\\eta^3-Splines for the Smooth Path Generation of Wheeled Mobile Robots `__ diff --git a/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst index 371d536e3f..0f84d381ea 100644 --- a/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst +++ b/docs/modules/5_path_planning/frenet_frame_path/frenet_frame_path_main.rst @@ -7,6 +7,12 @@ The cyan line is the target course and black crosses are obstacles. The red line is predicted path. +Code Link +~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.FrenetOptimalTrajectory.frenet_optimal_trajectory.main + + High Speed and Velocity Keeping Scenario ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst index bf82c9f391..c4aa6882aa 100644 --- a/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst +++ b/docs/modules/5_path_planning/grid_base_search/grid_base_search_main.rst @@ -10,6 +10,12 @@ This is a 2D grid based path planning with Breadth first search algorithm. In the animation, cyan points are searched nodes. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.BreadthFirstSearch.breadth_first_search.BreadthFirstSearchPlanner + + Depth First Search ~~~~~~~~~~~~~~~~~~~~ @@ -19,6 +25,12 @@ This is a 2D grid based path planning with Depth first search algorithm. In the animation, cyan points are searched nodes. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.DepthFirstSearch.depth_first_search.DepthFirstSearchPlanner + + .. _dijkstra: Dijkstra algorithm @@ -30,6 +42,12 @@ This is a 2D grid based shortest path planning with Dijkstra's algorithm. In the animation, cyan points are searched nodes. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.Dijkstra.dijkstra.DijkstraPlanner + + .. _a*-algorithm: A\* algorithm @@ -43,6 +61,12 @@ In the animation, cyan points are searched nodes. Its heuristic is 2D Euclid distance. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.AStar.a_star.AStarPlanner + + Bidirectional A\* algorithm ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -52,6 +76,12 @@ This is a 2D grid based shortest path planning with bidirectional A star algorit In the animation, cyan points are searched nodes. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.BidirectionalAStar.bidirectional_a_star.BidirectionalAStarPlanner + + .. _D*-algorithm: D\* algorithm @@ -63,7 +93,14 @@ This is a 2D grid based shortest path planning with D star algorithm. The animation shows a robot finding its path avoiding an obstacle using the D* search algorithm. +Code Link ++++++++++++++ + +.. autoclass:: PathPlanning.DStar.dstar.Dstar + + Reference +++++++++++++ - `D* search Wikipedia `__ @@ -74,7 +111,13 @@ This is a 2D grid based path planning and replanning with D star lite algorithm. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/DStarLite/animation.gif +Code Link ++++++++++++++ + +.. autoclass:: PathPlanning.DStarLite.d_star_lite.DStarLite + Reference +++++++++++++ - `Improved Fast Replanning for Robot Navigation in Unknown Terrain `_ @@ -88,7 +131,14 @@ This is a 2D grid based path planning with Potential Field algorithm. In the animation, the blue heat map shows potential value on each grid. +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.PotentialFieldPlanning.potential_field_planning.potential_field_planning + + Reference +++++++++++++ - `Robotic Motion Planning:Potential Functions `__ diff --git a/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst b/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst index a9876fa3d4..36f340e0c2 100644 --- a/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst +++ b/docs/modules/5_path_planning/hybridastar/hybridastar_main.rst @@ -4,3 +4,8 @@ Hybrid a star This is a simple vehicle model based hybrid A\* path planner. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/HybridAStar/animation.gif + +Code Link ++++++++++++++ + +.. autofunction:: PathPlanning.HybridAStar.hybrid_a_star.hybrid_a_star_planning diff --git a/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst b/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst index 788442ff63..1eb1e4d840 100644 --- a/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst +++ b/docs/modules/5_path_planning/lqr_path/lqr_path_main.rst @@ -4,3 +4,8 @@ LQR based path planning A sample code using LQR based path planning for double integrator model. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/LQRPlanner/animation.gif?raw=true + +Code Link ++++++++++++++ + +.. autoclass:: PathPlanning.LQRPlanner.lqr_planner.LQRPlanner diff --git a/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst index 1c5df1c9cc..76472a6792 100644 --- a/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst +++ b/docs/modules/5_path_planning/model_predictive_trajectory_generator/model_predictive_trajectory_generator_main.rst @@ -6,6 +6,12 @@ generator. This algorithm is used for state lattice planner. +Code Link +~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.ModelPredictiveTrajectoryGenerator.trajectory_generator.optimize_trajectory + + Path optimization sample ~~~~~~~~~~~~~~~~~~~~~~~~ @@ -17,6 +23,7 @@ Lookup table generation sample .. image:: lookup_table.png Reference +~~~~~~~~~~~~ - `Optimal rough terrain trajectory generation for wheeled mobile robots `__ diff --git a/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst index f816c5c1b9..d58d1e2633 100644 --- a/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst +++ b/docs/modules/5_path_planning/prm_planner/prm_planner_main.rst @@ -13,7 +13,14 @@ Cyan crosses means searched points with Dijkstra method, The red line is the final path of PRM. +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.ProbabilisticRoadMap.probabilistic_road_map.prm_planning + + Reference +~~~~~~~~~~~ - `Probabilistic roadmap - Wikipedia `__ diff --git a/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst index 66c3001c05..c7bc3fb55c 100644 --- a/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst +++ b/docs/modules/5_path_planning/quintic_polynomials_planner/quintic_polynomials_planner_main.rst @@ -9,6 +9,11 @@ Motion planning with quintic polynomials. It can calculate 2D path, velocity, and acceleration profile based on quintic polynomials. +Code Link +~~~~~~~~~~~~~~~ + +.. autofunction:: PathPlanning.QuinticPolynomialsPlanner.quintic_polynomials_planner.quintic_polynomials_planner + Quintic polynomials for one dimensional robot motion diff --git a/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst index a4a5d28e01..4dd54d7c97 100644 --- a/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst +++ b/docs/modules/5_path_planning/reeds_shepp_path/reeds_shepp_path_main.rst @@ -5,6 +5,12 @@ A sample code with Reeds Shepp path planning. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/ReedsSheppPath/animation.gif?raw=true +Code Link +============== + +.. autofunction:: PathPlanning.ReedsSheppPath.reeds_shepp_path_planning.reeds_shepp_path_planning + + Mathematical Description of Individual Path Types ================================================= Here is an overview of mathematical derivations of formulae for individual path types. @@ -381,6 +387,7 @@ Hence, we have: Reference +============= - `15.3.2 Reeds-Shepp Curves `__ diff --git a/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_1.png b/docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_1.png similarity index 100% rename from docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_1.png rename to docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_1.png diff --git a/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_3.png b/docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_3.png similarity index 100% rename from docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_3.png rename to docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_3.png diff --git a/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_4.png b/docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_4.png similarity index 100% rename from docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_4.png rename to docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_4.png diff --git a/docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_5.png b/docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_5.png similarity index 100% rename from docs/modules/5_path_planning/closed_loop_rrt_star_car/Figure_5.png rename to docs/modules/5_path_planning/rrt/closed_loop_rrt_star_car/Figure_5.png diff --git a/docs/modules/5_path_planning/rrt/rrt_main.rst b/docs/modules/5_path_planning/rrt/rrt_main.rst index da3a4957a5..1bd5497f4c 100644 --- a/docs/modules/5_path_planning/rrt/rrt_main.rst +++ b/docs/modules/5_path_planning/rrt/rrt_main.rst @@ -14,6 +14,12 @@ This is a simple path planning code with Rapidly-Exploring Random Trees Black circles are obstacles, green line is a searched tree, red crosses are start and goal positions. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRT.rrt.RRT + + .. include:: rrt_star.rst @@ -24,6 +30,12 @@ RRT with dubins path Path planning for a car robot with RRT and dubins path planner. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRTDubins.rrt_dubins.RRTDubins + + .. _rrt*-with-dubins-path: RRT\* with dubins path @@ -33,6 +45,12 @@ RRT\* with dubins path Path planning for a car robot with RRT\* and dubins path planner. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRTStarDubins.rrt_star_dubins.RRTStarDubins + + .. _rrt*-with-reeds-sheep-path: RRT\* with reeds-sheep path @@ -42,6 +60,12 @@ RRT\* with reeds-sheep path Path planning for a car robot with RRT\* and reeds sheep path planner. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRTStarReedsShepp.rrt_star_reeds_shepp.RRTStarReedsShepp + + .. _informed-rrt*: Informed RRT\* @@ -53,7 +77,14 @@ This is a path planning code with Informed RRT*. The cyan ellipse is the heuristic sampling domain of Informed RRT*. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.InformedRRTStar.informed_rrt_star.InformedRRTStar + + Reference +^^^^^^^^^^ - `Informed RRT\*: Optimal Sampling-based Path Planning Focused via Direct Sampling of an Admissible Ellipsoidal @@ -68,12 +99,20 @@ Batch Informed RRT\* This is a path planning code with Batch Informed RRT*. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.BatchInformedRRTStar.batch_informed_rrt_star.BITStar + + Reference +^^^^^^^^^^^ - `Batch Informed Trees (BIT*): Sampling-based Optimal Planning via the Heuristically Guided Search of Implicit Random Geometric Graphs `__ + .. _closed-loop-rrt*: Closed Loop RRT\* @@ -87,7 +126,14 @@ In this code, pure-pursuit algorithm is used for steering control, PID is used for speed control. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.ClosedLoopRRTStar.closed_loop_rrt_star_car.ClosedLoopRRTStar + + Reference +^^^^^^^^^^^^ - `Motion Planning in Complex Environments using Closed-loop Prediction `__ @@ -98,6 +144,7 @@ Reference - `[1601.06326] Sampling-based Algorithms for Optimal Motion Planning Using Closed-loop Prediction `__ + .. _lqr-rrt*: LQR-RRT\* @@ -109,7 +156,14 @@ A double integrator motion model is used for LQR local planner. .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/LQRRRTStar/animation.gif +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.LQRRRTStar.lqr_rrt_star.LQRRRTStar + + Reference +~~~~~~~~~~~~~ - `LQR-RRT\*: Optimal Sampling-Based Motion Planning with Automatically Derived Extension diff --git a/docs/modules/5_path_planning/rrt/rrt_star.rst b/docs/modules/5_path_planning/rrt/rrt_star.rst index 6deb6b9172..960b9976d5 100644 --- a/docs/modules/5_path_planning/rrt/rrt_star.rst +++ b/docs/modules/5_path_planning/rrt/rrt_star.rst @@ -7,6 +7,12 @@ This is a path planning code with RRT\* Black circles are obstacles, green line is a searched tree, red crosses are start and goal positions. +Code Link +^^^^^^^^^^ + +.. autoclass:: PathPlanning.RRTStar.rrt_star.RRTStar + + Simulation ^^^^^^^^^^ diff --git a/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst index bf89ac11ae..9f8cc0c50f 100644 --- a/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst +++ b/docs/modules/5_path_planning/state_lattice_planner/state_lattice_planner_main.rst @@ -12,17 +12,34 @@ Uniform polar sampling .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/StateLatticePlanner/UniformPolarSampling.gif +Code Link +^^^^^^^^^^^^^ + +.. autofunction:: PathPlanning.StateLatticePlanner.state_lattice_planner.calc_uniform_polar_states + + Biased polar sampling ~~~~~~~~~~~~~~~~~~~~~ .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/StateLatticePlanner/BiasedPolarSampling.gif +Code Link +^^^^^^^^^^^^^ +.. autofunction:: PathPlanning.StateLatticePlanner.state_lattice_planner.calc_biased_polar_states + + Lane sampling ~~~~~~~~~~~~~ .. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/PathPlanning/StateLatticePlanner/LaneSampling.gif +Code Link +^^^^^^^^^^^^^ +.. autofunction:: PathPlanning.StateLatticePlanner.state_lattice_planner.calc_lane_states + + Reference +~~~~~~~~~~~~~~~ - `Optimal rough terrain trajectory generation for wheeled mobile robots `__ diff --git a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst index 04001d4504..9517e95b31 100644 --- a/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst +++ b/docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst @@ -33,6 +33,10 @@ After:: When starting at (1, 11) in the structured obstacle arrangement (second of the two gifs above). +Code Link +^^^^^^^^^^^^^ +.. autoclass:: PathPlanning.TimeBasedPathPlanning.SpaceTimeAStar.SpaceTimeAStar + Safe Interval Path Planning ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -73,6 +77,11 @@ Arrangement 1 starting at (1, 18):: .. image:: https://raw.githubusercontent.com/AtsushiSakai/PythonRoboticsGifs/refs/heads/master/PathPlanning/TimeBasedPathPlanning/SafeIntervalPathPlanner/path_animation2.gif +Code Link +^^^^^^^^^^^^^ +.. autoclass:: PathPlanning.TimeBasedPathPlanning.SafeInterval.SafeIntervalPathPlanner + + References ~~~~~~~~~~~ diff --git a/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst b/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst index 3c9b7c008c..aac96d6e19 100644 --- a/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst +++ b/docs/modules/5_path_planning/visibility_road_map_planner/visibility_road_map_planner_main.rst @@ -13,6 +13,11 @@ red crosses are visibility nodes, and blue lines area collision free visibility The red line is the final path searched by dijkstra algorithm frm the visibility graphs. +Code Link +~~~~~~~~~~~~ +.. autoclass:: PathPlanning.VisibilityRoadMap.visibility_road_map.VisibilityRoadMap + + Algorithms ~~~~~~~~~~ @@ -64,7 +69,7 @@ The red line is searched path in the figure: You can find the details of Dijkstra algorithm in :ref:`dijkstra`. References -^^^^^^^^^^ +~~~~~~~~~~~~ - `Visibility graph - Wikipedia `_ diff --git a/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst index 65e0e53465..a9a41aab74 100644 --- a/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst +++ b/docs/modules/5_path_planning/vrm_planner/vrm_planner_main.rst @@ -11,7 +11,13 @@ Cyan crosses mean searched points with Dijkstra method, The red line is the final path of Vornoi Road-Map. +Code Link +~~~~~~~~~~~~~~~ +.. autoclass:: PathPlanning.VoronoiRoadMap.voronoi_road_map.VoronoiRoadMapPlanner + + Reference +~~~~~~~~~~~~ - `Robotic Motion Planning `__ diff --git a/tests/test_batch_informed_rrt_star.py b/tests/test_batch_informed_rrt_star.py index 3ad78bdb23..cf0a9827a8 100644 --- a/tests/test_batch_informed_rrt_star.py +++ b/tests/test_batch_informed_rrt_star.py @@ -1,7 +1,7 @@ import random import conftest -from PathPlanning.BatchInformedRRTStar import batch_informed_rrtstar as m +from PathPlanning.BatchInformedRRTStar import batch_informed_rrt_star as m def test_1(): From 0c82dde2be24e5f3955018caa061750d7404978d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 07:22:51 +0900 Subject: [PATCH 265/312] build(deps): bump ruff from 0.11.7 to 0.11.8 in /requirements (#1215) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.11.7 to 0.11.8. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/0.11.7...0.11.8) --- updated-dependencies: - dependency-name: ruff dependency-version: 0.11.8 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 88cbb21f81..e78b9b8d51 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -6,4 +6,4 @@ ecos == 2.0.14 pytest == 8.3.5 # For unit test pytest-xdist == 3.6.1 # For unit test mypy == 1.15.0 # For unit test -ruff == 0.11.7 # For unit test +ruff == 0.11.8 # For unit test From 292c9dc613d1b0ace3d25ca8a0295e19549516f2 Mon Sep 17 00:00:00 2001 From: atm <72185056+sutatoruta@users.noreply.github.com> Date: Sat, 10 May 2025 09:34:19 +0900 Subject: [PATCH 266/312] fix broken links (#1216) --- .github/pull_request_template.md | 2 +- README.md | 12 ++++++------ users_comments.md | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index b6ac52efa2..c0d9f7eab2 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,7 +1,7 @@

W4dI(KFNqnSFN&(5qD#9iYJv?;M5mMvk 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