A data processing system for structuring data includes a repository storing data referencing sources, the data representing actions and states for each of the sources. A data structuring engine generates a data sequence, for each source. Each data sequence represents states and actions for the source. An aggregation engine aggregates data sequences for the sources into a data structure, each entry of the data structure representing a state. Each entry includes an identifier for the state, a probability value of at least one action occurring at the state, the probability value based on a proportion of the data sequences comprising the state that also comprises the at least one action, and frequency data indicating a proportion of the data sequences included in the entry. A classification engine traverses the data structure and classifies the data sequences into groups based on probability values and frequency data associated with each state of each respective data sequence.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A data processing system for structuring data, the data processing system comprising: a repository storing data referencing one or more sources, the data representing actions and states for each of the one or more sources; a data structuring engine that generates a data sequence, for each source, from one or more portions of the stored data for that source, each data sequence representing one or more states and one or more actions for the source; an aggregation engine that aggregates data sequences for the one or more sources into a data structure, each entry of the data structure representing a state, each entry comprising: an identifier for the state; a probability value of at least one action occurring at the state, the probability value based on a proportion of the data sequences, comprising the state, that also comprise the at least one action; and frequency data indicating a proportion of the data sequences included in the entry; and a classification engine that traverses the data structure and classifies the data sequences into groups based on probability values and frequency data associated with each state of each respective data sequence. 2. The data processing system of claim 1, wherein the classification engine identifies a first data sequence of a group of data sequences to be a particular sequence, and a second data sequence of the group to be a variation of the particular sequence, the variation comprising at least one particular action for a data sequence having a probability value above a predetermined threshold. 3. The data processing system of claim 1, further comprising a simulation engine for generating, using the data structure, a simulation comprising: an environment having one or more objects; and one or more data sequences automatically generated by the simulation engine, each data sequence of the one or more data sequences representing behavior of an object of the one or more objects of the environment, the one or more data sequences being automatically generated by: selecting, from the data structure generated, a group of the data sequences classified by the classification engine; retrieving, from the data structure generated, probability values associated with states of the data sequences of the group; retrieving, from the data structure generated, frequency data associated with the states of the data sequences of the group; and generating a data sequence that simulates a new source by traversing the data structure according to the probability values and the frequency data; wherein the one or more objects behave in the simulation according to the generated data sequence representing the behavior of the object. 4. The data processing system of claim 3, wherein the simulation further comprises: an interface comprising one or more controls for controlling behavior of an additional object and a display for the environment of the simulation; and a logging engine that records the behavior of the additional object; wherein the data structuring engine generates an additional data sequence for the additional object according to the behavior of the additional object recorded by the logging engine; and wherein the classification engine classifies the additional data sequence into one of the groups. 5. The data processing system of claim 4, wherein the aggregation engine updates the probability values and the frequency data based on the additional data sequence. 6. The data processing system of claim 1, wherein each state comprises a feature vector representing one or more characteristics of the state. 7. The data processing system of claim 1, wherein each state is associated with a utility score based on one or more probability values and frequency data associated with the state. 8. The data processing system of claim 1, further comprising a visualization engine that generates a visual representation of a group of data sequences, wherein the visual representation comprises: an indicator for each of the states and actions of the data sequences of the group; a representation of each probability value; and an indication of a particular data sequence of the group. 9. The data processing system of claim 8, wherein the visual representation comprises one or more selectable controls for selecting a data sequence of the group. 10. The data processing system of claim 9, wherein the visual representation provides a visual indication of a variation of the selected data sequence, the variation comprising at least one particular action for a data sequence based on a probability value of the particular action. 11. The data processing system of claim 1, wherein the data structuring engine extracts the actions and the states from the data referencing one or more sources by identifying one or more features of the data that correspond to a state or an action. 12. The data processing system of claim 1, wherein the data representing one or more sources comprises behavior logs. 13. A data processing system for generating a visualization, the visualization comprising: a first display comprising: a first data sequence of a data structure, the first data sequence representing first states and first actions, wherein the first states and the first actions are ordered and each displayed proximate to respective one or more representations of one or more feature vectors that define the first states and the first actions; one or more second data sequences, the one or more second data sequences representing second states and second actions that are less likely to occur relative to occurrences of the first states and the first actions of the first data sequence; and one or more connectors that connect the first states and the first actions to one another and to the second states and the second actions, wherein a thickness a connector represents a probability value; wherein each of the first states, the first actions, the second states and the second actions comprise a selectable control that enable the first display to show additional states and additional actions when the selectable control is activated, and wherein each of the first states, the first actions, the second states, and the second actions each comprise a passive control, wherein the passive control enables the first display to show additional details about a respective state or action when the passive control is activated; and a second display rendering a visual representation of the data structure. 14. A method for structuring data, the method comprising: storing data referencing one or more sources, the data representing actions and states for each of the one or more sources; generating a data sequence, for each source, from one or more portions of the stored data for that source, each data sequence representing one or more states and one or more actions for the source; aggregating data sequences for the one or more sources into a data structure, each entry of the data structure representing a state, each entry comprising: an identifier for the state; a probability value of at least one action occurring at the state, the probability value based on a proportion of the data sequences, comprising the state, that also comprise the at least one action; and frequency data indicating a proportion of the data sequences included in the entry; and traversing the data structure to classify the data sequences into groups based on probability values and frequency data associated with each state of each respective data sequence. 15. The method of claim 14, further comprising: identifying a first data sequence of a group of data sequences to be a particular sequence, and a second data sequence of the group to be a variation of the particular sequence, the variation comprising at least one particular action for a data sequence having a probability value above a predetermined threshold. 16. The method of claim 14, further comprising: simulating an environment having one or more objects; and automatically generating one or more data sequences, each data sequence of the one or more data sequences representing behavior of an object of the one or more objects of the environment, the one or more data sequences being automatically generated by: selecting, from the data structure generated, a group of the data sequences classified; retrieving, from the data structure generated, probability values associated with states of the data sequences of the group; retrieving, from the data structure generated, frequency data associated with the states of the data sequences of the group; and generating a data sequence that simulates a new source by traversing the data structure according to the probability values and the frequency data; wherein the one or more objects behave in the simulation according to the generated data sequence representing the behavior of the object. 17. The method of claim 16, further comprising: receiving commands from an interface comprising one or more controls for controlling behavior of an additional object; displaying the behavior of the additional object; recording the behavior of the additional object; generating an additional data sequence for the additional object according to the behavior of the additional object; and classifying the additional data sequence into one of the groups. 18. The method of claim 17, further comprising updating the probability values and the frequency data based on the additional data sequence. 19. The method of claim 14, wherein each state comprises a feature vector representing one or more characteristics of the state. 20. The method of claim 14, wherein each state is associated with a utility score based on one or more probability values and frequency data associated with the state. 21. The method of claim 14, further comprising: generating a visual representation of a group of data sequences, wherein the visual representation comprises: an indicator for each of the states and actions of the data sequences of the group; a representation of each probability value; and an indication of a particular data sequence of the group. 22. The method of claim 21, wherein the visual representation comprises one or more selectable controls for selecting a data sequence of the group. 23. The method of claim 22, wherein the visual representation provides a visual indication of a variation of the selected data sequence, the variation comprising at least one particular action for a data sequence based on a probability value of the particular action. 24. A non-transitory computer readable medium storing instructions that are executable by one or more processors configured to perform operations comprising: storing data referencing one or more sources, the data representing actions and states for each of the one or more sources; generating a data sequence, for each source, from one or more portions of the stored data for that source, each data sequence representing one or more states and one or more actions for the source; aggregating data sequences for the one or more sources into a data structure, each entry of the data structure representing a state, each entry comprising: an identifier for the state; a probability value of at least one action occurring at the state, the probability value based on a proportion of the data sequences, comprising the state, that also comprise the at least one action; and frequency data indicating a proportion of the data sequences included in the entry; and traversing the data structure to classify the data sequences into groups based on probability values and frequency data associated with each state of each respective data sequence.