Determination of an action for an autonomous vehicle in the presence of intelligent agents
A method that includes obtaining, using at least one processor, sensor data associated with an environment in which an autonomous vehicle (AV) is in operation. The method includes determining, using the at least one processor, an intended action of the AV based on the environment in which the AV is in operation. The method includes determining, using the at least one processor, an action for the AV based on the intended action of the AV and an agent prediction.
1 . A method comprising:
obtaining, using at least one processor, sensor data associated with an environment in which an autonomous vehicle (AV) is in operation, wherein the environment comprises an agent;
determining, using the at least one processor, an intended action of the AV based on the environment in which the AV is in operation;
determining, using the at least one processor, an agent prediction indicative of an action that the agent expects the AV to perform based on the environment in which the AV is in operation;
determining, using the at least one processor, an action for the AV based on the intended action of the AV and the agent prediction; and
providing, using the at least one processor, operation data associated with performance of the action to cause the AV to operate based on the action for the AV.
2 . The method of claim 1 , the method further comprising:
obtaining, using the at least one processor, an agent profile.
3 . The method of claim 2 , wherein obtaining, using the at least one processor, the agent profile comprises:
estimating, based on the sensor data, the agent profile.
4 . The method of claim 2 , wherein determining, using the at least one processor, the action for the AV comprises:
determining the action based on the intended action of the AV, the agent prediction and the agent profile.
5 . The method of claim 2 , the method further comprising:
predicting, using the at least one processor, based on the sensor data, an agent trajectory;
wherein determining, using the at least one processor, the action for the AV comprises determining the action based on the intended action of the AV, the agent prediction and the predicted agent trajectory.
6 . The method of claim 5 , the method further comprising:
obtaining, using the at least one processor, further sensor data associated with the environment after the action for the AV is performed by the AV; and
updating, using the at least one processor, based on the further sensor data, the agent prediction.
7 . The method of claim 5 , the method comprising:
predicting, using the at least one processor, a change in the agent prediction based on one or more of: the agent prediction, the action for the AV, the agent profile, and the predicted agent trajectory; and
determining, using the at least one processor, a utility score associated with the predicted change in the agent prediction based on one or more of: the agent prediction, the action for the AV, the agent profile, and the predicted agent trajectory.
8 . The method of claim 7 , wherein predicting the change in the agent prediction comprises:
determining a transition function between a current state and a next state, wherein the current state is representative of one or more of: the agent prediction, the action for the AV, and the agent profile.
9 . The method of claim 8 , the method further comprising:
determining, using the at least one processor, based on the utility score, an AV trajectory.
10 . The method of claim 1 , wherein the environment comprises a plurality of agents, the method further comprising:
filtering, using the at least one processor, based on a criterion, the agent among the plurality of agents, wherein the criterion is based on one or more of: an agent position with respect to the AV, an agent constraining an intended AV trajectory, and a difference between the intended action and the agent prediction.
11 . The method of claim 1 , wherein determining, using the at least one processor, the intended action and the agent prediction comprises:
obtaining an AV internal state comprising the intended action and the agent prediction.
12 . The method of claim 1 , wherein the action for the AV comprises one or more of: a signaling action, a velocity action, and a maneuver.
13 . A system, comprising at least one processor, and at least one memory storing instructions thereon that, when executed by the at least one processor, cause the at least one processor to carry out operations comprising:
obtaining sensor data associated with an environment in which an autonomous vehicle (AV) is in operation; wherein the environment comprises an agent;
determining an intended action of the AV based on the environment in which the AV is in operation;
determining an agent prediction indicative of an action that the agent expects the AV to perform based on the environment in which the AV is in operation;
determining an action for the AV based on the intended action of the AV and the agent prediction; and
providing operation data associated with performance of the action to cause the AV to operate based on the action for the AV.
14 . The system of claim 13 , the operations comprising:
obtaining an agent profile.
15 . The system of claim 14 , the operations further comprising:
predicting, based on the sensor data, an agent trajectory;
wherein determining the action for the AV comprises determining the action for the AV based on the intended action of the AV, the agent prediction and the predicted agent trajectory.
16 . The system of claim 13 , the operations further comprising:
obtaining further sensor data associated with the environment after the action is performed by the AV; and
updating, based on the further sensor data, the agent prediction.
17 . The system of claim 15 , the operations further comprising:
updating, based on the update of the agent prediction, the predicted agent trajectory; and
determining a utility score associated with a predicted change in the agent prediction based on one or more of: the agent prediction, the action for the AV, the agent profile, and the predicted agent trajectory.
18 . A non-transitory computer readable medium comprising instructions stored thereon that, when executed by at least one processor, cause the at least one processor to carry out operations comprising:
obtaining sensor data associated with an environment in which an autonomous vehicle (AV) is in operation; wherein the environment comprises an agent;
determining an intended action of the AV based on the environment in which the AV is in operation;
determining an agent prediction indicative of an action that the agent expects the AV to perform based on the environment in which the AV is in operation;
determining an action for the AV based on the intended action of the AV and the agent prediction; and
providing operation data associated with performance of the action to cause the AV to operate based on the action for the AV.
19 . The method of claim 1 , wherein determining an agent prediction comprises calculating a probabilistic prediction of what the agent knows about the intended action of the AV.
20 . The method of claim 1 , wherein the action is different than the intended action and wherein the agent is a vehicle, distinct from the AV.