From 6796e5ea68084221c0395e3b4b1a7b9a8d5b4297 Mon Sep 17 00:00:00 2001 From: zhm-real Date: Thu, 25 Jun 2020 12:14:28 -0700 Subject: [PATCH] update RRT_2D --- Sampling-based Planning/rrt_2D/RRT_star.jpeg | Bin 0 -> 127114 bytes .../rrt_2D/__pycache__/env.cpython-37.pyc | Bin 1303 -> 1250 bytes .../__pycache__/plotting.cpython-37.pyc | Bin 2831 -> 2831 bytes .../rrt_2D/__pycache__/rrt.cpython-37.pyc | Bin 3509 -> 3520 bytes .../rrt_2D/__pycache__/utils.cpython-37.pyc | Bin 2962 -> 3459 bytes Sampling-based Planning/rrt_2D/env.py | 23 ++++------- Sampling-based Planning/rrt_2D/plotting.py | 4 +- Sampling-based Planning/rrt_2D/rrt.py | 6 +-- Sampling-based Planning/rrt_2D/rrt_star.py | 19 ++++++--- Sampling-based Planning/rrt_2D/test.py | 14 +++++++ Sampling-based Planning/rrt_2D/utils.py | 39 ++++++++++++++---- 11 files changed, 72 insertions(+), 33 deletions(-) create mode 100644 Sampling-based Planning/rrt_2D/RRT_star.jpeg create mode 100644 Sampling-based Planning/rrt_2D/test.py diff --git a/Sampling-based Planning/rrt_2D/RRT_star.jpeg b/Sampling-based Planning/rrt_2D/RRT_star.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..1646ec8bbddf6a7eba5d33ad46db3ed2a1f25b98 GIT binary patch literal 127114 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%0D3+>jh3CRT(m7uwL53!uW*O3-nNdBRE!I; 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
{W-JOEVW4PRLbr16My8WNpBAu8o-mF@ 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 delta 342 zcmX|+F-t=+6or$Qyw|?hmsD%jQ7QS~eKI)goUpUt&jL-J#W^Uj8Yq6=3&aqaPfM_Yihz(Xssi3M(^`tKb zs>XTKoere^t#jDvZiH&Bp43v!{31KNmDwqmgds+RCB{Ub*i$=TML8jc#Bn+>(~*Z% zrqO@Xm+8u!ZVG|50Am7Eh&9_I(vS-#l>a8;HXevu1Y5^_AYfs%=lKvJ^Y5{9bHtPt j`GkABR0Y)lnCa`@lfp7;^pOH00N=QU*a-1@=j-RU`Cs{n}_h6M~Y%nKPAK`h1^ z#u}D|Okg%s4HHN-g&~+hlhJSTOD1(j*2#j*Vu~zziMgq_I1}?Sa}!H4^Ye=MfW|-w zeh^E1vlBBX6Kjzekh3|EHGq*(a`Ga!Yix2LNrlOE>_&{@n>VsogT!???Zsq(;_1~Q z>)an!wb*O26hYNBan>-3PyWwYAq5hM5&~LQkdt4MlbNJfkXVwOky>0NKY1co9RNT{ BH`V|E delta 258 zcmeAd>lfp7;^pOH0D`AhU*b|W@=j-RWdU)407QeZGY}W60Errg1q>;S3mF+fEXEqf z8s>#eU^Y_?6G$|LA(%mv$uEjIC@5s|6DD;dmLhJTwp$!|`6;P6nZ+fySPBwLGH!7u z=4Iw4mSpDV74ZS(Ap}2&CAQg_nUjg_7E4}YZtCVh)&NFEiOGxDuCd92WaTH2PG*uG R&;`jEsl`QdlP7Z30RR~$L diff --git a/Sampling-based Planning/rrt_2D/__pycache__/rrt.cpython-37.pyc b/Sampling-based Planning/rrt_2D/__pycache__/rrt.cpython-37.pyc index 8436bd653449601aa536b8dea2068aee43f459ce..3083612edcbd87f0d90a553b9c72f47f560279d9 100644 GIT binary patch delta 129 zcmdlgeL$MmiIgy;YjmiI;p!_L)1l85kzl@>DX4 JO#aSu5&)ek9&i8v diff --git a/Sampling-based Planning/rrt_2D/__pycache__/utils.cpython-37.pyc b/Sampling-based Planning/rrt_2D/__pycache__/utils.cpython-37.pyc index 892e236eb5a826086133910b908db50bcf7959c0..c7c08f63ae1d0e32fad09bbb65a1b5ab2881c398 100644 GIT binary patch delta 1533 zcmZWp&u<$=6rP#=HS4t<6I>^4ni7?&>Y~u5X(A!@fK*V#DF|Xz5ru}-vlKUJ0<%lx zRI~Wt-1)H=j`6MP0SPMchj3hp14kr|oDhe8Z=4#ZUFm)E=FOY;-hS`x{x~z3tKX^B zDh$t0%Y_^&fCQWe(S1=RP~r`$|O`ZRX=6}zFC1jr5aX`)N30oo_@B=d!ipu z1UwCh4|xxgRykwFQT#kJ9^owQgxvvW*#nUW#y@lJzjQ8*OO}XXMFiXkGj_s_G~rO> z6;n}sSLla*c~LxBP!d_b5Cfjq3_E$pH{8@vQ5_r71@tLXH&dga%H3d8 zV(hJJkiz~VSZl{Yaof9d<)GxM%Vjb2;){)Ly4~H+ z5}hWUY+EOtm}tHPV7&O-oA0+i$+~;#^_Sf`9=YHNA>;P^jE&_+*m6As{&JsM1xha| zL5zaxQ3Lt7fesqT6_6T8H;o6D18^DiPszNe98mhyQu#sVz@26wFoIS~r43*$2sEZr zf;}`3H=F@SVAuFF)SRc5KNR$Wzcqah#kXTmx3KCN0=!qBX@}G~Kpg5S>BNqHgJ1zr za$O3wOwQ0VeT@!kW2lq)^)vK!y1KKMyo-ah31Ga+eIdCk7R4-IWdc*Y<4 zx~=#IJ7f1T?!Ml8#U2<5`|&GwX*}5bOLXw{(p}bDL}C|-FK;<{m{;-$;qe6^WoRns zax`@H6YKrtE~Ckao%Qxw?3XpmRoYd__QCzM3?3wy%bg<~;Y~G7r=~xHej5;1M-911 zhIzoXiQZf$voN1m_LWq;*21nC8uAH-bK2 z)k|>GHwh#G@g7T?zI68wRAT!-;bpV@Auo8>;h7Zw$-(qEMC|HO$;A)hf_DQBz2dj< z(~njt@+!gquHw{{tY@dn&g8eSrvkvlFy=)61@F5gfm69KQHz ze@WW_58_F?Ez*U?V1fumVvZoA1BRF*H5wU0J+rQ!TQ`L+Gd96L?tm4k5PGyDOp)r-$PyNV zP0Dwe5?LW^C_NRIHC#3Nv=73XB9Sc%gdz0XD0h*Dh)oP*90`_OqpV zsb7$ADy9DzKDToom9==@$%7r=cb2B-WTiYVae}ZC)~gLaeAQxH9>DW)-Umt6NVMkL#_Mf99v?dUe*t|Z(mVhF diff --git a/Sampling-based Planning/rrt_2D/env.py b/Sampling-based Planning/rrt_2D/env.py index 0a41212..fbc5ae3 100644 --- a/Sampling-based Planning/rrt_2D/env.py +++ b/Sampling-based Planning/rrt_2D/env.py @@ -25,26 +25,21 @@ class Env: @staticmethod def obs_rectangle(): obs_rectangle = [ - [13, 10, 5, 3], - [18, 4, 5, 4], - [18, 20, 8, 5], - [22, 13, 6, 3], - [33, 15, 5, 3], - [42, 6, 5, 3] - # [42, 25, 1, 2], - # [45, 23, 2, 1], - # [46, 27, 1, 2] + [14, 12, 8, 2], + [18, 22, 8, 3], + [26, 7, 2, 12], + [32, 14, 10, 2] ] return obs_rectangle @staticmethod def obs_circle(): obs_cir = [ - [5, 10, 3], - [10, 22, 3.5], - [34, 9, 4], - [37, 23, 3], - [45, 20, 2] + [7, 12, 3], + [46, 20, 2], + [15, 5, 2], + [37, 7, 3], + [37, 23, 3] ] return obs_cir diff --git a/Sampling-based Planning/rrt_2D/plotting.py b/Sampling-based Planning/rrt_2D/plotting.py index 775f975..a885317 100644 --- a/Sampling-based Planning/rrt_2D/plotting.py +++ b/Sampling-based Planning/rrt_2D/plotting.py @@ -22,8 +22,8 @@ class Plotting: self.obs_circle = self.env.obs_circle self.obs_rectangle = self.env.obs_rectangle - def animation(self, nodelist, path, animation=False): - self.plot_grid("RRT") + def animation(self, nodelist, path, name, animation=False): + self.plot_grid(name) self.plot_visited(nodelist, animation) self.plot_path(path) diff --git a/Sampling-based Planning/rrt_2D/rrt.py b/Sampling-based Planning/rrt_2D/rrt.py index 616fddd..016d879 100644 --- a/Sampling-based Planning/rrt_2D/rrt.py +++ b/Sampling-based Planning/rrt_2D/rrt.py @@ -100,13 +100,13 @@ class Rrt: def main(): x_start = (2, 2) # Starting node - x_goal = (49, 28) # Goal node + x_goal = (49, 24) # Goal node - rrt = Rrt(x_start, x_goal, 5, 0.05, 3000) + rrt = Rrt(x_start, x_goal, 0.5, 0.03, 5000) path = rrt.planning() if path: - rrt.plotting.animation(rrt.vertex, path, True) + rrt.plotting.animation(rrt.vertex, path, "RRT", True) else: print("No Path Found!") diff --git a/Sampling-based Planning/rrt_2D/rrt_star.py b/Sampling-based Planning/rrt_2D/rrt_star.py index 487665f..70db37e 100644 --- a/Sampling-based Planning/rrt_2D/rrt_star.py +++ b/Sampling-based Planning/rrt_2D/rrt_star.py @@ -47,6 +47,9 @@ class RrtStar: def planning(self): for k in range(self.iter_max): + if k % 500 == 0: + print(k) + node_rand = self.random_state(self.goal_sample_rate) node_near = self.nearest_neighbor(self.vertex, node_rand) node_new = self.new_state(node_near, node_rand) @@ -87,9 +90,12 @@ class RrtStar: def find_near_neighbor(self, node_new): n = len(self.vertex) + 1 r = min(self.search_radius * math.sqrt((math.log(n) / n)), self.step_len) - dist_table = [math.hypot(nd.x - node_new.x, nd.y - node_new.y) for nd in self.vertex] - return [dist_table.index(d) for d in dist_table if d <= r] + dist_table = [math.hypot(nd.x - node_new.x, nd.y - node_new.y) for nd in self.vertex] + dist_table_index = [dist_table.index(d) for d in dist_table if d <= r and + not self.utils.is_collision(node_new, self.vertex[dist_table.index(d)])] + + return dist_table_index def choose_parent(self, node_new, neighbor_index): cost = [] @@ -109,7 +115,8 @@ class RrtStar: node_index = [dist_list.index(i) for i in dist_list if i <= self.step_len] if node_index: - cost_list = [dist_list[i] + self.vertex[i].cost for i in node_index] + cost_list = [dist_list[i] + self.vertex[i].cost for i in node_index + if not self.utils.is_collision(self.vertex[i], self.xG)] return node_index[int(np.argmin(cost_list))] return None @@ -152,13 +159,13 @@ class RrtStar: def main(): x_start = (2, 2) # Starting node - x_goal = (49, 28) # Goal node + x_goal = (49, 24) # Goal node - rrt_star = RrtStar(x_start, x_goal, 5, 0.2, 20, 20000) + rrt_star = RrtStar(x_start, x_goal, 8, 0.10, 20, 20000) path = rrt_star.planning() if path: - rrt_star.plotting.animation(rrt_star.vertex, path) + rrt_star.plotting.animation(rrt_star.vertex, path, "RRT*") else: print("No Path Found!") diff --git a/Sampling-based Planning/rrt_2D/test.py b/Sampling-based Planning/rrt_2D/test.py new file mode 100644 index 0000000..65b48c5 --- /dev/null +++ b/Sampling-based Planning/rrt_2D/test.py @@ -0,0 +1,14 @@ +import math +import numpy as np +import os +import sys + +sys.path.append(os.path.dirname(os.path.abspath(__file__)) + + "/../../Sampling-based Planning/") + +from rrt_2D import env +from rrt_2D import plotting +from rrt_2D import utils + +a = [0, 0] +r = 1 diff --git a/Sampling-based Planning/rrt_2D/utils.py b/Sampling-based Planning/rrt_2D/utils.py index 28ed399..5dca98a 100644 --- a/Sampling-based Planning/rrt_2D/utils.py +++ b/Sampling-based Planning/rrt_2D/utils.py @@ -38,9 +38,7 @@ class Utils: return obs_list - def is_intersect_segment(self, start, end, a, b): - o, d = self.get_ray(start, end) - + def is_intersect_rec(self, start, end, o, d, a, b): v1 = [o[0] - a[0], o[1] - a[1]] v2 = [b[0] - a[0], b[1] - a[1]] v3 = [-d[1], d[0]] @@ -48,7 +46,7 @@ class Utils: div = np.dot(v2, v3) if div == 0: - div = 0.01 + return False t1 = np.linalg.norm(np.cross(v2, v1)) / div t2 = np.dot(v1, v3) / div @@ -62,15 +60,40 @@ class Utils: return False + def is_intersect_circle(self, o, d, a, r): + d2 = np.dot(d, d) + delta = self.delta + + if d2 == 0: + return False + + t = np.dot([a[0] - o[0], a[1] - o[1]], d) / d2 + + if 0 <= t <= 1: + shot = Node((o[0] + t * d[0], o[1] + t * d[1])) + if self.get_dist(shot, Node(a)) <= r + delta: + return True + + return False + def is_collision(self, start, end): if self.is_inside_obs(start) or self.is_inside_obs(end): return True + o, d = self.get_ray(start, end) + for (v1, v2, v3, v4) in self.obs_vertex: - if self.is_intersect_segment(start, end, v1, v2) \ - or self.is_intersect_segment(start, end, v2, v3) \ - or self.is_intersect_segment(start, end, v3, v4) \ - or self.is_intersect_segment(start, end, v4, v1): + if self.is_intersect_rec(start, end, o, d, v1, v2): + return True + if self.is_intersect_rec(start, end, o, d, v2, v3): + return True + if self.is_intersect_rec(start, end, o, d, v3, v4): + return True + if self.is_intersect_rec(start, end, o, d, v4, v1): + return True + + for (x, y, r) in self.obs_circle: + if self.is_intersect_circle(o, d, [x, y], r): return True return False