Scenarios for AI in Digital Media
Game, movie, animation and website creation all rely on both computer scientists and digital media artists to create a good final project. The role for computer scientists is not limited to just the creation of the programs used by digital media artists. Artificial Intelligence is being used in many capacities for each of these media. Below are scenarios where the roles of digital media artists and computer scientists begin to intertwine.
A.I. would be able to handle the group behavior necessary to have a large army respond to each other and their environments. This would be done through the use of agent technologies similar in method to Massive and the Artificial Life project. These technologies use Fuzzy Logic to allow agents to react similarly to humans through the use of non-harsh boundaries to make decisions.The ability for software to learn from users makes games more enjoyable and tailors the experience to each user. This has been harnessed in many games including Revolt and Command and Conquer: Renegade This A.I. technology harnesses the power of Machine Learning
convert: missing an image filename `/tmp/transform_521ae7dc7af2-1.jpg' @ error/convert.c/ConvertImageCommand/3011.
This has been a dilemma for many animation and visual effects studios. Hand animating individual soldiers in an army takes an extreme amount of time. A.I. would be a great solution to this problem. Agent technology would allow you to create agents that would respond to each other and the environment. This would require that you create an animation (or multiple animations) for each action that an agent can go through. These actions would be called by the agent's brain. The agent brain uses Fuzzy Logic in order to make decisions as to what action should be called.
One of the biggest developments in large scale character interaction was the AI system created for use in the Lord of the Rings films, Massive Software. It has been used in feature films (Lord of the Rings, King Kong, Chronicles of Narnia) and commercials to simulate lifelike crowds that are able to be controlled. This system allows for the creation of agents that respond to their environment and each other. These responses are determined through the programming of the 'brain'. This 'brain' is created through the definition of parameters using Fuzzy Logic. Through the evaluation of these parameters the brain is able to determine and action (or blending of actions) for each agent. An action is an animation (key framed or motion captured). These actions are all created by digital artists and then brought into the system for use. Action trees are created to establish connections between animations to allow for the transition from one action to another. These transitions can range from change from one animation to another, to traveling through several short animations to arrive at a final goal. The action tree also is responsible for creating loops within the action or defining branching points for changes mid animation. Because of the direct connection between animation and programming it is important for the digital artists and the computer programmers to work closely to develop both the brain and the action tree in order to ensure an accurate final product.
You wish to create a 3d animation where you want your character to respond to real world physics at certain points while adhering to your animation at other points in time. For example you want a character to be running down the road, get hit by a car, and then land safely on its feet. You want to be able to control the animation before the character was hit by the car and once it lands however in between them you wish for physics to take command as long as it can achieve the starting pose you defined after it hits the road. While the character is in air you want to constrain him so that he has a behavior to attempt to achieve (such as do a flip or attempt to grab something). How can A.I help here?
A system like this is the basis of Natural Motion's Endorphin. Endorphin uses adaptive behaviors which allows for interaction between characters. These behaviors set goals for characters to achieve. These goals can range from attempting to jump and grab an object to balancing while standing up. The animator can apply forces on top of these behaviors which the character will respond to while still attempting to achieve the goal. The animator can also have collide with the character instead of just using invisible forces. This system also allows for the constraining of objects with weight to the characters which will affect the character's motions. Animation constraints that are affected by real world physics was suggested by Witken and Cass's theories on spacetime constraints.Because there is not one solution that provides an exact solution to this problem it is hard to come to a solution for this dilemma. Through the use of genetic algorithms the computer can discover a solution that works best. Genetic algorithms are a subsection of Evolutionary Computation.
You create a online system that allows a user to attach tags to a movie file they upload. These movie files become nodes that are able to be connected to each other to create a branching non-linear story path. You want to allow the user to find paths based on length as well as creating a system that allows the user to make a short sentence that will be used to search for a path that will most resemble the sentence. How can AI help to solve this pathfinding?
The English language has many words all have the same or similar meaning. Because of this, it becomes important to break down these words using Natural Language Processing and then gather all the synonyms for each word in order to create a large database of similar words to compare to the tags. This would help to find the most accurate path. Natural Language Processing (NLP) is s subsection of Machine Learning. An example of node based automated video editing is Philbert and Dodge
A multi-touch display would be an ideal solution for the hardware issue of this dilemma. These units are touch sensitive displays that allow for multiple points of contact simultaneously. To allow for multiple users, AI must be used to differentiate each one based on proximity and time of touch. This not only allows for a more intuitive interaction but also provides the ability for multiple users to interact with each other and work simultaneously on one system. Gesture recognition is an important part for making this system intuitive. This can be done through training the computer program to recognize each of the gestures by harnessing the techniques of Machine Learning.
Nintendo's Wii is a platform that allows game developers to create such games. It uses a tiny accelerometer as well as infrared detection (IRD) to measure the movement of the remote in 3d space. Game designers can develop actions that will rely on the gestures created by the remote. The recognition of gestures can be trained by the computer through Machine Learning. This is achieved by having a trainer go through the actions several times so that the computer can compile data on the action. This data is then used to interpret actions the user makes by choosing the one that is "best fit".