The first round was with the interviewer. He gave a quick rundown of his background, then asked how to model other agents in the simulation. The coding part was based on an input of shape [batch, num_waypoint, 2], and I had to compute a suffix sum, with output shape [batch, num_waypoint]. I forget the exact follow-up question after that... let me think about it more.
The second round was with the interviewer. Also started with a quick background intro, then some RL questions — like the difference between GRPO and PPO, and whether to go with a heuristic reward or a learned reward in RL. The coding question was to implement an RL reward that keeps the car within the speed limit. The input was the raw trajectory, shape [batch, num_waypoint, 2], sampled at 10Hz.
I ended up implementing two rewards: one that checks at each step whether the car is over the speed limit, and uses the total time spent speeding as the reward; the second computes how much over the limit each step is — the more it's over, the lower the reward.
Then he asked: what if the original speed limit was given, but it actually changes over time — say the limit is 50mph for the first two seconds and 30mph for the next three seconds — what's the failure case of my reward function in that situation?
I said, what if I recompute the reward using a state-dependent speed limit derived from the trajectory? He said that wouldn't work, and asked, in general, what would happen then? I was pretty lost.
Contributing a data point here.
I felt like the second interviewer was a bit aggressive, but maybe I was just being sensitive.
Discussion
Loading comments…