mirror of
https://github.com/zhm-real/PathPlanning.git
synced 2026-08-29 08:34:46 +08:00
update anytime D*
This commit is contained in:
@@ -45,7 +45,7 @@ class ADStar:
|
||||
self.count_env_change = 0
|
||||
self.obs_add = set()
|
||||
self.obs_remove = set()
|
||||
self.title = "Anytime D*: Small changes" # significant changes
|
||||
self.title = "Anytime D*: Small changes" # Significant changes
|
||||
self.fig = plt.figure()
|
||||
|
||||
def run(self):
|
||||
@@ -85,17 +85,20 @@ class ADStar:
|
||||
if self.title == "Anytime D*: Small changes":
|
||||
if (x, y) not in self.obs:
|
||||
self.obs.add((x, y))
|
||||
plt.plot(x, y, 'sk')
|
||||
self.g[(x, y)] = float("inf")
|
||||
self.rhs[(x, y)] = float("inf")
|
||||
else:
|
||||
self.obs.remove((x, y))
|
||||
plt.plot(x, y, marker='s', color='white')
|
||||
self.UpdateState((x, y))
|
||||
|
||||
self.Plot.update_obs(self.obs)
|
||||
|
||||
for sn in self.get_neighbor((x, y)):
|
||||
self.UpdateState(sn)
|
||||
|
||||
plt.cla()
|
||||
self.Plot.plot_grid(self.title)
|
||||
|
||||
while True:
|
||||
if len(self.INCONS) == 0:
|
||||
break
|
||||
@@ -126,6 +129,8 @@ class ADStar:
|
||||
if (x, y) in self.obs_add:
|
||||
self.obs_add.remove((x, y))
|
||||
|
||||
self.Plot.update_obs(self.obs)
|
||||
|
||||
if self.count_env_change >= 15:
|
||||
self.count_env_change = 0
|
||||
self.eps += 2.0
|
||||
@@ -141,6 +146,9 @@ class ADStar:
|
||||
self.UpdateState(sn)
|
||||
self.UpdateState(s)
|
||||
|
||||
plt.cla()
|
||||
self.Plot.plot_grid(self.title)
|
||||
|
||||
while True:
|
||||
if self.eps <= 1.0:
|
||||
break
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 303 KiB After Width: | Height: | Size: 490 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 437 KiB After Width: | Height: | Size: 320 KiB |
Reference in New Issue
Block a user