Approaches are described for formation retrieval. Embodiments receive positional data, across an interval window, including a respective agent trajectory for each agent and an object trajectory for one or more objects. The interval window is partitioned into frames and, at each frame, embodiments calculate a cost of assigning a role to each agent based on one or more exemplar formations. A formation is determined by assigning a role to each agent based on the calculated cost. Each frame of the formation is compared to a corresponding frame of a stored formation, by calculating a distance between a position of each assigned role in the frame and a position of a corresponding role in the stored formation and by comparing the object trajectory for the one or more objects with a corresponding object trajectory in the stored formation. Based on the comparisons, a list of stored formations is generated.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method of sports play retrieval, comprising: receiving positional data, across an interval window, comprising a respective agent trajectory for each of a plurality of agents during the interval window; partitioning the interval window into a plurality of frames; at each of the plurality of frames, calculating a cost of assigning a role to each agent of the plurality of agents based on one or more exemplar formations; determining a formation by assigning a role to each agent based on the calculated cost; comparing each frame of the plurality of frames of the formation to a corresponding frame of a stored formation, by calculating a distance between a position of each assigned role in the frame and a position of a corresponding role in the stored formation; and generating, based on the comparisons, a list of stored formations that are similar to the formation. 2. The method of claim 1, wherein receiving the positional data, across the interval window, comprising the respective agent trajectory for each of the plurality of agents during the interval window, further comprises: providing a user interface through which a representation of the formation across the interval window can be dynamically created; and generating the positional data for the formation based on a plurality of input actions within the provided user interface. 3. The method of claim 1, wherein receiving the positional data, across the interval window, comprising the respective agent trajectory for each of the plurality of agents during the interval window, further comprises: receiving a plurality of measured agent locations from an existing sports activity. 4. The method of claim 3, further comprising: providing a user interface through which the interval window can be chosen; and providing editing capability in the user interface through which the plurality of measured agent locations may be edited. 5. The method of claim 1, further comprising: receiving an object trajectory for one or more objects during the interval window, and wherein comparing each frame of the plurality of frames of the formation to a corresponding frame of the stored formation further comprises: comparing the object trajectory for the one or more objects with a corresponding object trajectory in the stored formation. 6. The method of claim 1, further comprising: providing a user interface through which one or more video clips from existing games may be displayed, wherein the one or more video clips correspond to the formations in the list of formations. 7. The method of claim 1, wherein receiving positional data for the formation, across the interval window, comprising the respective agent trajectory for each the plurality of agents during the interval window, further comprises: rotating the positional data for the formation across the interval window 180 degrees; and receiving additional positional data for the formation based on the rotation. 8. The method of claim 1, further comprising: receiving team data specifying a respective team corresponding to each of the plurality of agents; and including the team data when comparing to the corresponding frame of the stored formation. 9. The method of claim 1, further comprising: receiving agent identification information that uniquely identifies each agent of the plurality of agents; and including the agent identification information when comparing to the corresponding frame of the stored formation. 10. A non-transitory computer-readable storage medium including instructions that, when executed by a processor, cause the process to retrieve sports plays, by performing an operation comprising: receiving positional data, across an interval window, comprising a respective agent trajectory for each of a plurality of agents during the interval window; partitioning the interval window into a plurality of frames; at each of the plurality of frames, calculating a cost of assigning a role to each agent of the plurality of agents based on one or more exemplar formations; determining a formation by assigning a role to each agent based on the calculated cost; comparing each frame of the plurality of frames of the formation to a corresponding frame of a stored formation, by calculating a distance between a position of each assigned role in the frame and a position of a corresponding role in the stored formation; and generating, based on the comparisons, a list of stored formations that are similar to the formation. 11. The non-transitory computer-readable storage medium claim 10, wherein receiving the positional data, across the interval window, comprising the respective agent trajectory for each of the plurality of agents during the interval window, further comprises: providing a user interface through which a visual representation of the formation across the interval can be dynamically created; and generating the positional data for the formation based on a plurality of input actions within the provided user interface. 12. The non-transitory computer-readable storage medium of claim 10, wherein receiving the positional data, across the interval window, comprising the respective agent trajectory for each of the plurality of agents during the interval window, further comprises: receiving a plurality of measured agent locations from an existing sports activity. 13. The non-transitory computer-readable storage medium of claim 12, further comprising: providing a user interface through which the interval window can be chosen; and providing editing capability in the user interface through which the plurality of measured agent locations may be edited. 14. The non-transitory computer-readable storage medium of claim 10, further comprising: receiving an object trajectory for one or more objects during the interval window, and wherein comparing each frame of the plurality of frames of the formation to a corresponding frame of the stored formation further comprises: comparing the object trajectory for the one or more objects with a corresponding object trajectory in the stored formation. 15. The non-transitory computer-readable storage medium of claim 10, further comprising: providing a user interface through which one or more video clips from existing games may be displayed, wherein the one or more video clips correspond to the formations in the list of formations. 16. The non-transitory computer-readable storage medium of claim 10, wherein receiving positional data for the formation, across the interval window, comprising the respective agent trajectory for each of the plurality of agents during the interval window, further comprises: rotating the positional data for the formation across the interval window 180 degrees; and receiving additional positional data for the formation based on the rotation. 17. The non-transitory computer-readable storage medium of claim 10, further comprising: receiving team data specifying a respective team corresponding to each of the plurality of agents; and including the team data when comparing to the corresponding frame of the stored formation. 18. The non-transitory computer-readable storage medium of claim 10, further comprising: receiving agent identification information that uniquely identifies each agent of the plurality of agents; and including the agent identification information when comparing to the corresponding frame of the stored formation. 19. A computing system, comprising: a memory that is configured to store instructions for a program; and a processor that is configured to execute the instructions for the program to retrieve sports plays, by performing an operation comprising: receiving positional data, across an interval window, comprising a respective agent trajectory for each of a plurality of agents during the interval window; partitioning the interval window into a plurality of frames; at each of the plurality of frames, calculating a cost of assigning a role to each agent of the plurality of agents based on one or more exemplar formations; determining a formation by assigning a role to each agent based on the calculated cost; comparing each frame of the plurality of frames of the formation to a corresponding frame of a stored formation, by calculating a distance between a position of each assigned role in the frame and a position of a corresponding role in the stored formation; and generating, based on the comparisons, a list of stored formations that are similar to the formation. 20. The computing system of claim 19, wherein receiving the positional data, across the interval window, comprising the respective agent trajectory for each of the plurality of agents during the interval window, further comprises: providing a user interface through which a representation of the formation across the interval window can be dynamically created; and generating the positional data based on a plurality of input actions within the user interface.