vita-epfl / RRB

Official implementation of "Injecting Knowledge in Data-driven Vehicle Trajectory Predictors", Published in Transportation research part C.
BSD 2-Clause "Simplified" License
67 stars 11 forks source link

Difference between single and multimodal RRB #5

Closed ningwak closed 2 years ago

ningwak commented 3 years ago

Hi! I am trying to substitute the knowledge driven model with trajectories generated with IDM+MOBIL. I tried to feed the trajectory into RRB without multimodal, and feed the same trajectory as two entries of multimodel_center_road_traj into RRB with multimodal. Then I selected the first output of the mutimodal method, and surprisingly the prediction is much better than the one without multimodal. I am wondering why the multimodal method fed with exactly the same kd model can still make a difference.

MohammadHossein-Bahari commented 3 years ago

Hi, Assuming that there is no engineering problem in the single modal case (e.g., feeding the knowledge-driven trajectory in a wrong way or ...), maybe the boost is because of the fact that in multimodal case, even with using one KD traj, still two models of residuals are calculated and added to the outputs. Thus, the multimodal prediction covers two mods of data instead of producing the average mode. You can check this by visualizing the outputs.

ningwak commented 3 years ago

Hi, Assuming that there is no engineering problem in the single modal case (e.g., feeding the knowledge-driven trajectory in a wrong way or ...), maybe the boost is because of the fact that in multimodal case, even with using one KD traj, still two models of residuals are calculated and added to the outputs. Thus, the multimodal prediction covers two mods of data instead of producing the average mode. You can check this by visualizing the outputs.

Thank you! Now we have two output trajectories. You mean each of these is related to both models of residuals instead of one trajectory only corresponds to one model?

MohammadHossein-Bahari commented 3 years ago

I'm not sure if I got your question. Can you elaborate more?

ningwak commented 2 years ago

Sorry for not replying in time. I had to concentrate more on my courses during the past semester. I noticed that in mlp.py line 214-215 and 512-513 two offsets are added as + 70 # + 110 and 0.5 # - 1. I am not sure how these values are decided.

MohammadHossein-Bahari commented 2 years ago

Hello, Sorry for the late reply. Actually, that's just a bias I add. If I remember correctly, it is to avoid negative values through the data. It is just an implementation choice. I would close the issue, but feel free to open it if your question remains.