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

Vehicles going backwards #4

Closed ningwak closed 3 years ago

ningwak commented 3 years ago

Hi, I am trying to use RRB to predict the motion of vehicles in highway-env (https://github.com/eleurent/highway-env). I use the data from observation (method provided in highway-env) as input. In the predicted trajectory the vehicle often get stuck at some point and even go backwards while the true trajectory keeps going foeward. When I use the EDN model given in this repository there won't be such a problem but it cannot correctly predict lane changes. Did you also come across such problems? Using EDN in the same frame work it can predict straight line motion well so I suppose that at least I am feeding data in a correct way. Thanks!

ningwak commented 3 years ago

For example, the prediction is: Pred: [Row(frame=25, pedestrian=6, x=tensor(5.2000), y=tensor(82.8000)), Row(frame=30, pedestrian=6, x=tensor(4.2400), y=tensor(83.5200)), Row(frame=35, pe destrian=6, x=tensor(4.0000), y=tensor(84.3200)), Row(frame=40, pedestrian=6, x=tensor(4.0000), y=tensor(84.8800)), Row(frame=45, pedestrian=6, x=tensor(4. 0800), y=tensor(85.1200)), Row(frame=50, pedestrian=6, x=tensor(4.0800), y=tensor(85.0400)), Row(frame=55, pedestrian=6, x=tensor(4.1600), y=tensor(84.6400 )), Row(frame=60, pedestrian=6, x=tensor(4.3200), y=tensor(84.)), Row(frame=65, pedestrian=6, x=tensor(4.5600), y=tensor(82.9600)), Row(frame=70, pedestria n=6, x=tensor(4.8800), y=tensor(81.6800))]

And the true trajectory is: [Row(frame=0, pedestrian=6, x=6.0, y=75.33822935899447), Row(frame=5, pedestrian=6, x=6.0, y=76.86337687264472), Row(frame=10, pedestrian=6, x=6.0, y=78.39802419472502), Row(frame=15, pedestrian=6, x=6.0, y=79.94123556345687), Row(frame=20, pedestrian=6, x=6.0, y=81.49218415147918), Row(frame=25, pede strian=6, x=6.0, y=83.05013812861726), Row(frame=30, pedestrian=6, x=5.176695174265374, y=84.24806657034647), Row(frame=35, pedestrian=6, x=3.7766526902658 697, y=84.97216857709952), Row(frame=40, pedestrian=6, x=2.8950673104755413, y=86.32200518844073), Row(frame=45, pedestrian=6, x=2.5671092004086544, y=88.0 4879107653478), Row(frame=50, pedestrian=6, x=2.3506388467696664, y=89.86055492468488), Row(frame=55, pedestrian=6, x=2.213878484300225, y=91.7240391756026 7), Row(frame=60, pedestrian=6, x=2.129620338742156, y=93.61896661814046), Row(frame=65, pedestrian=6, x=2.0782644129924908, y=95.53416624752164), Row(fram e=70, pedestrian=6, x=2.047123507389872, y=97.4637638328115)]

MohammadHossein-Bahari commented 3 years ago

Hello, Well, if EDN is working properly, you might have issues with the knowledge-aware predictions. I suspect the lane information part to be erroneous. Plot the KD predictions for the cases where you have wrong predictions. Hope it helps.

ningwak commented 3 years ago

Thanks! fixed the issue. I found that the KD predictions are stuck at one point. The center line points I set are too sparse, so different points in the path will be attached to one single point in the center line and the speed will be considered to be zero.

MohammadHossein-Bahari commented 3 years ago

Glad to hear that! So I will close the issue.