最近一直在自己琢磨自动驾驶的算法是怎么接入仿真环节中的,略有所得,特写出来,请高士指正。
为什么要思考这个问题呢?
我在此前的一篇文章中,将自己学到的自动驾驶仿真的案例拿出来分享,如下所示:
我后来发现,在这个案例中,我竟然直接就实现了LKA的仿真,似乎根本就不需要算法工程师来进行路径规划了,那我就奇怪了,我这个仿真模型到底在测试什么呢!
按照我的理解,一个仿真模型的存在,就是为了对某种算法进行测试的。
比如,算法工程师研究出一种特殊的路径规划策略,想先在仿真模型中进行测试,但在我以上分享的仿真方法中,竟然根本就不需要他的算法。因为,例子中我自己竟然直接在一个程序中把所有流程都做了,包括算法。(例子中具体的算法是根据车道线拟合出一个理论的二次曲线,根据目前的车辆速度和方向,预测车辆接下来的路径和这个理论二次曲线之间的误差,用这个误差判断接下来的转向轮应该有多少的转角,从而保证车辆保持在车道之间。)
这个案例,此刻想来,不算是一个好的仿真案例,原因很简单,它没有外部接口,算法部分的接口。虽然算法内部自己搞定了,但这不应该是一个正确的流程。我所理解的正确的流程似乎更类似于以下这种: