在课程开始的时候,你已经看到了这张图。现在你可能会猜测行为模块的原因更低的频率比例如轨迹模块更新。
这是由于高层做出的决定行为模块花费更长的时间范围,只是不会经常更改。
但轨迹模块仍然依靠我们的决定和整个系统体系结构的重要性不允许比较慢的模块
行为计划者记录其他更快速组件的正常运行。让我们花一秒钟来谈谈所谓的排班问题以及如何在自驾车中处理。
此图显示了在行为模块的两个处理周期中发生的情况。
如您所见,预测模块的更新频率高于“行为”。轨迹更高。等等。
但请注意行为完成第一个周期后发生的情况。
要开始第二轮,行为模块需要来自预测和本地化的数据。
对于本地化来说,从理论上来说这很容易,这一瞬间它会有一些新的数据和行为可以使用它。
但是对于预测呢。在这个瞬间,它实际上正处于更新周期的中间。
行为是否应该等到预测完成?不,如果我们开始等待,那么我们阻塞下游组件的管道。
答案是使用来自这里的数据并接受它有点陈旧。
当你实施最终项目的一半规划者时,我们将为您提供处理所有这些问题的代码。
但值得一提的是,这是如何完成的。