System for simulating a collection of activities, the system comprising: source code (402, 510, 600) located on a storage system in a network data processing system, wherein the source code (402, 510, 600) is written in a language for predicting the collection of activities and includes a definition and actions, wherein the definition is a representation of a group of humans and the environment in which the group of humans live, wherein the actions represent influences that are applied to the definition during simulation; an interpreter (404, 518, 1700) executing on hardware in the network data processing system, the interpreter (404, 510, 600) including a language interpreter and a communications module, wherein the language interpreter executes a simulation with the source code (402, 510, 600) using artificial intelligence (802, 3202) to generate interpreted source code and a new definition; a graphical user interface processor (406, 522, 524, 528, 2600) executing on the hardware in the network data processing system, wherein the graphical user interface processor (406, 522, 524, 528, 2600) receives the interpreted source code from the language interpreter to form received interpreted source code and generates device dependent output using the received interpreted source code; and a set of devices (408, 523, 530, 532, 2618) in communication with the graphical user interface processor (406, 522, 524, 528, 2600), wherein the set of devices (408, 523, 530, 532, 2618) displays the device dependent output, wherein the set of devices (408, 523, 530, 532, 2618) receives user input including a selection of actions to form received user input and sends the received user input to the graphical user interface processor (406, 522, 524, 528, 2600), and wherein the communications module receives the received user input including the selection of actions from the graphical user interface processor (406, 522, 524, 528, 2600) and a new definition or action from the language interpreter in order to form modifications used to modify the source code (402, 510, 600) with the received user input and the new definition to form modified source code, wherein the language interpreter further executes the simulation with the modified source code, wherein the communications module comprises: a registration module configured to register and validate users that return user input; an input module configured to receive the returned user input of a user and modifications and to send the returned user input to a dispatcher module; and the dispatcher module configured to determine whether to write the modification to the source code using a policy with an identification of the user, the returned user input, and a portion of the source code to be written. source code (402, 510, 600) located on a storage system in a network data processing system, wherein the source code (402, 510, 600) is written in a language for predicting the collection of activities and includes a definition and actions, wherein the definition is a representation of a group of humans and the environment in which the group of humans live, wherein the actions represent influences that are applied to the definition during simulation; an interpreter (404, 518, 1700) executing on hardware in the network data processing system, the interpreter (404, 510, 600) including a language interpreter and a communications module, wherein the language interpreter executes a simulation with the source code (402, 510, 600) using artificial intelligence (802, 3202) to generate interpreted source code and a new definition; a graphical user interface processor (406, 522, 524, 528, 2600) executing on the hardware in the network data processing system, wherein the graphical user interface processor (406, 522, 524, 528, 2600) receives the interpreted source code from the language interpreter to form received interpreted source code and generates device dependent output using the received interpreted source code; and a set of devices (408, 523, 530, 532, 2618) in communication with the graphical user interface processor (406, 522, 524, 528, 2600), wherein the set of devices (408, 523, 530, 532, 2618) displays the device dependent output, wherein the set of devices (408, 523, 530, 532, 2618) receives user input including a selection of actions to form received user input and sends the received user input to the graphical user interface processor (406, 522, 524, 528, 2600), and a registration module configured to register and validate users that return user input; an input module configured to receive the returned user input of a user and modifications and to send the returned user input to a dispatcher module; and the dispatcher module configured to determine whether to write the modification to the source code using a policy with an identification of the user, the returned user input, and a portion of the source code to be written.