我实际上是在一个项目中,我必须协调停车场中的众多自动驾驶汽车。 我可以找到每辆车的路径,但我真的不知道如何使所有车辆同时互动而不会发生碰撞。
我的策略是这样的:
可用于两辆车。但是如何做到这一点呢?我认为时间应该占有一席之地,但是我不知道该怎么做。
很抱歉拼写错误。这是我的第一篇文章,我只是开始使用python进行编码。如有必要,我可以共享我的代码(这真的很长,要理解它需要时间)。
谢谢!
freePos = ['1504']
path = get_path(source,freePos)
print(" My car's path:", path)
car2Position = ['1534']
for spot in car2Position:
s = get_path(spot, dest)
print(" car 2's path :", s)
common = commonWaypoints(path, s)
if common:
p, n = changePath(path, s) # a function that changes a path
if n ==1: # tells if we changed the first or the second path
path = p
elif n ==2 :
s = p # I have to send this path to the other car
print (path) # I print The path Of my car ( actual one)
答案 0 :(得分:0)
只要行车道上有接触点即可,只要不在同一时间即可。一种方法是计算时间轴上的所有路径-看看路径在哪个时间交叉-实现等待行为。另一种可能更简单的方法是,将每个代理的当前位置(t)和位置(t + 1)广播到中央频道。如果(t + 1)位置会干扰任何 其他车辆的t + 1位置,则应采用逻辑来处理(例如,先右)。