A method of operating an autonomous vehicle (205, 405), the method comprising: detecting one or more objects in an environment of an autonomous vehicle (205, 405); predicting a first set of predicted object trajectories comprising one or more trajectories for each of the detected one or more objects; using a motion planning model to generate a plurality of candidate autonomous vehicle trajectories for the autonomous vehicle (205, 405), wherein at least one predicted object trajectory in the first set from a persisted prediction cache as well as persisted predicted object trajectories that are stored in a second set in the persisted prediction cache are used as an input to the motion planning model for each of the candidate autonomous vehicle trajectories, wherein the persisted predictions for the object in the second set of predicted object trajectories are only considered if no predictions for the object exist in the first set of predicted object trajectories; scoring each of the candidate autonomous vehicle trajectories according to a cost function; using the scoring to select a final autonomous vehicle trajectory for execution; determining which of the predicted object trajectories affected the final autonomous vehicle trajectory and which did not do so; adding the predicted object trajectories that affected the final autonomous vehicle trajectory to the persisted prediction cache; excluding from the persisted prediction cache any predicted object trajectories that did not affect the final autonomous vehicle trajectory; and using a motion planning system of the autonomous vehicle (205, 405), executing the final autonomous vehicle trajectory to cause the autonomous vehicle (205, 405) to move along the final autonomous vehicle trajectory. detecting one or more objects in an environment of an autonomous vehicle (205, 405); predicting a first set of predicted object trajectories comprising one or more trajectories for each of the detected one or more objects; using a motion planning model to generate a plurality of candidate autonomous vehicle trajectories for the autonomous vehicle (205, 405), wherein at least one predicted object trajectory in the first set from a persisted prediction cache as well as persisted predicted object trajectories that are stored in a second set in the persisted prediction cache are used as an input to the motion planning model for each of the candidate autonomous vehicle trajectories, wherein the persisted predictions for the object in the second set of predicted object trajectories are only considered if no predictions for the object exist in the first set of predicted object trajectories; scoring each of the candidate autonomous vehicle trajectories according to a cost function; using the scoring to select a final autonomous vehicle trajectory for execution; determining which of the predicted object trajectories affected the final autonomous vehicle trajectory and which did not do so; adding the predicted object trajectories that affected the final autonomous vehicle trajectory to the persisted prediction cache; excluding from the persisted prediction cache any predicted object trajectories that did not affect the final autonomous vehicle trajectory; and using a motion planning system of the autonomous vehicle (205, 405), executing the final autonomous vehicle trajectory to cause the autonomous vehicle (205, 405) to move along the final autonomous vehicle trajectory.