Artificial Intelligence in (Terminator) Gaming
By: Withheld on request
The purpose of writing this article is for largely entertainment purposes only. I do realize that a new Terminator game is in the making (Terminator Salvation for Consoles in Fall 2009) but I also realize it will be largely a let down and a failure in as far as "Artificial Intelligence" (AI in short) is concerned.
Technological difficulties aside, the gaming industry is first and foremost a business, and from that perspective it makes little sense to invest heavily in AI where there is almost zero immediate return on investment for any major developer or publisher to produce such an attempt at this kind of game/simulation. If the current macroeconomic state of affairs of the world are any indicator, there may never be a Skynet or Terminator or even any game that simulates it.
Struggle of existence in any life-form
Ultimately the only permanent imperative of any life-form (whether biological, digital, virtual, In Silicio or existential) is survival and to "exists" in general. Darwinistic evolution, natural selection and the anthropic principle all dictate that this "survival" and "struggle of existence" is the one underlying and all encompassing force and motive of all life (and perhaps indeed the existence of the local universe and its laws itself).
All the other motives, drives, emotions and feelings can be derived from this first-final 'a priori' axiom of existence and in fact it can be argued everything else is basically different manifestations and expressions of this one force of nature.
Consciousness, and self-awareness, self-identity along with higher level thinking exists as the motivation and utility of a "workspace" that allows for large amounts of both relevant and irrelevant information to be brought together in one subjective arena.
This kind of higher level cognitive function that evolved in humans serves as a great simplifier of things that allows us to filter and select the appropriate course of action(s) when presented with different and often contradicting types of data inputs.
Why create a 'true' AI (Terminator) game?
Why create a PC game with an AI Terminator robot capable of some sort of true but minimalistic "artificial intelligence"? Because of REALISM.
What we need, and what has been so far sorely lacking in the gaming/simulation world, is a game that is created from the ground up to be fundamentally supportive of an true artificial intelligence even at the most atomic level. We need a game that supports the embedding of an Autonomous Agent(s) with Embodied AI that is capable of learning and evolving with its built-in or evolved-in drives to accomplish its hard coded directives and soft coded higher level goals.
- Autonomous Agent
Is a system/agent situated within and a-part of an environment that senses that environment and acts on it, and over time, in pursuit of its own agenda(s) and so as to effect what it senses in the future.
- Embodied Agent
Is an autonomous living creature, subject to the constraints of its environment. By having the AI aware of biological limitations, we gain the ability to use embodiment as a tool for enhancing the realism and experience for the player. So in effect, the AI agents in the game become digital actors that always try to get a few steps ahead of the player and out-think him or her.
- Full Agent/Unit control
In parallel: one command per unit per simulation frame; atomic actions - no predefined low-level behavior; client/agents are in total control within the 'laws of physics' and environmental constraints of its own body mechanisms and the world it resides in.
Again by having the AI aware of biological and physical limitations, we gain the ability to use embodiment as a great tool to achieving the ultimate levels of realism which then necessitates a embodied AI to take advantage of that level of realism. We should do something like the following for in-game actors/robots/terminators:
- Be aware of what information is not attainable in a biologically/mechanically plausible way.
- Have the robots fake extra steps to "acquire" this information a second time in an embodied way.
- Take extra measures to act this out according to the player's expectations.
Furthermore this should include:
Numerous little details related to the visual senses can be simulated very easily when we model the ocular organs explicitly. This includes visual delay, errors in perception (position, types of entity). We can also actively enforce a realistic field of view and line of sight paradigm.
When an robot is moving, the games engine must be physically simulating its body. Things like momentum, turning rate, center of gravity, etc will all be automatically applied to any motion command.
We also need to separate, differentiate and make independent the core "Game" and the artificially intelligent robot AI Terminator within the game. In short we need to have two distinct and pronounced aspects to the entire Game:
- The game itself (the game engine, physics, textures, low level "ai", sound, NPC characters, scripts,
even the mesh, texture, graphics, mechanics of the vessel/shell that is the Terminator robot itself etc everything
except the core artificial intelligence and "programming code" aspect of the actual 'AI TERMINATOR ROBOT MACHINE')
- The actual "brain" of the Terminator robot that runs independently of the rest of the Game, and is on equal footing with the actual human player in terms that it has no access to the games information and is strictly an embodied agent that connects to and sees the world through its "physical body" (and the physical and real limitations that come along with it) that is in the game itself.
Artificial Intelligence (ro)bots
We must have the Terminator AI bot be some sort of Modular and External AI code that can be modified independent of the games programming code or its low level ai or rendering engine. (for example, player can capture robot "in game" and extract his "cpu/brain" then make changes to it by plugging it into another in-game virtual computer and reprogramming it or giving it a new mission etc and boot the robot back up and play and experiment in this sandbox environment, or player can design his own "ai brain" outside of the gaming interface on his own 'real computer' and replace it / insert it into the Terminator robot in the game and see the results of his own programming and engineering.)
By making it (the ai agent component) modular and external and 'remote' we can if necessary for example connect a super-computer to the game/simulation/server to let it play as this extremely state of the art Terminator against ourselves in the game or against other embodied autonomous agents whether in game (Terminator VS Terminator) or by using other Terminators designed by other gamers.
For this to happen there must be both High Level and Low Level design and implementation and programming of the AI Terminator Robot. Making this a Robot that is a true autonomous and learning (ie capable of "curiosity" and true randomness and follows a rewards and punishment mechanism of evolving more efficient behavior towards achieving its goal via a "natural selection" of sorts...) embodied AI agent that is subject to the constraints of it own "physical" (endoskeleton and bodily mechanics simulated in a virtual in-game world via the games physics and graphics engine, etc) limitations and also the limitations brought about by the environment that it lives in (the virtual city that the robot resides in during the game/simulation).
Three Laws of Robotics
An example of high level instruction/guidance would be the Three Laws of Robotics. An robot in the context of a Terminator of course would not follow any of these, but in its place would be a new set of directives etc.
- A robot may not injure a human being or, through inaction, allow a human being to come to harm.
- A robot must obey orders given to it by human beings, except where such orders would conflict with the First Law.
- A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.
So what would a game like this feel like to play?
Imagine we enter the world of Terminator and we are in Los Angelos (or any other major US cities). Let this city be more expansive, more realistic, more detailed and more interactive and immersive than Liberty City in GTAIV. Let this city not have an abrupt boundary or artificial "end" like the islands of Liberty City, the mountains of Superman Returns, or the matrix fields of the 13th Floor but let it continue on forever (or at least model the size and spherical curvature of earth itself) using fractal and autogen technologies such as in games like Project IGI and Flight Simulator respectively.
Let the graphics be as good or better than the best of Crysis: Warhead and Crytek 2 Engine. Let the physics be orders of magnitude above the Havoks 2 and NaturalMotion euphoria engine which was extentsively showcased for GTAIV character physics. Let the individual NPC's be as lifelike and unique and as individual as characters in the upcoming Sims 3 simulation (etc)... Let the natural language dialogue be as in depth as Facade for PC, and the neural network of the Terminator robot more advanced than any combination of Framsticks (3D simulation and evolution) and Nero AI for PC.
Now within the context and confines of this marvelous city and its buildings, commerce, infrastructure, technology, streets, homes and citizens we the gamer/player/user is targeted and scheduled for "termination" by an advanced Terminator Robot that comes back from the future to kill us and our goal/objective is to avoid termination at all costs and to survive and destroy the robot that is haunting us.
It is truly an "open ended" sandbox type game much more so than GTAIV or Crysis or Oblivion or Fallout or any other game in any other genre that I could possibly think of. The only "GOAL" in the game is the goal of all of life itself, as it mirrors existence itself in a self similar way.
Surviving (in) the game
To "survive" is the most basic goal. After all if Terminator succeed then we are dead, and seeing how "cheats" have no purpose in an embodied game, dying is the ultimate GAME OVER. But such a game need not be "over simplistic" because if we are given a truly interactive city to play in then the one goal of survival will quickly branch out into countless sub goals as we the player develop different tactics and strategies to survive.
Again this is reflective of the larger life itself, everything we do and everything we have ever done whether as individuals or as a collective species has been done in the name of survival. Simplistic virtual worlds that do not cross a threshold of "complexity" could never give rise to the emergent properties of existence as this one top level survival agenda branches and manifests itself into all the infinite varieties of the many disciplines, sciences, arts etc..
While a full fledged Virtual Reality may never be possible, there is much to be gained in terms of implementing a virtual world with a virtual robotic opponent by mimicking and emulating many of the lower level processes of the world and of the mind in an approximate functional way rather than from an impossible 'atomic' level of resolution.
So then if we are smart and lucky and use the tools and people in the virtual city as defensive or offensive weapons against our assassin the Terminator robot we can try to OUTSMART an AI Terminator Machine and find ways to hide, to evade, to escape, and to attack, to defend, to even terminate the Terminator. Imagine how cool it would be if we could "mod the bot" (so to speak) INSIDE THE GAME.
If we can incapacitate the "Terminator" long enough to extract his chip and take it to a virtual computer and crank the juicing and start reprogramming him in-game on the fly to edit its high level directives to restructure its commands and instead of attacking us to protect us or attack a certain target (kind of like hitman except Terminator is much better at it). Or make it a kind-loving helpful and protective robot or whatever...
Modify your own gameplay
Basically instead of having computer savvy people create mods of bots with sdk or whatever they should make an INGAME interface that allows users to easily write high level pseudo code that lets the average Joe modify the parameters of this Terminator to make it act or behave in a certain way with distinct personalities and mission objectives.
Let's say we are bored after defeating the Terminator and we extract his "chip" and find it and his endoskeleton relatively intact and we proceed to find a way to reprogram him on the fly inside the game world and we script him to follow our orders and protect us the player at all costs.
Then we reinsert his chip and let him reboot and we ascend on the city GTAIV style and cause madness and mayhem on the streets everywhere and but this time we have a near superhuman extremely smart and agile Terminator robot fighting FOR us on our side! The relatively much dumber and deterministic NPC's of the city (citizens, cops, workers, etc) will be virtually helpless to defeat or defend against us! (they have to follow "rules" too and cannot rubberband or cheat simply because of the fact that they are intellectually speaking inferior to the player and the Terminator).
The possibilities are endless to the degree that this virtual reality replicas our physical world and the extend of the AI of our Teminator robot within this virtual existence.
So a Terminator will be extremely processor, memory and space intensive. On a processor probably at least 2 cores will be dedicated to multicore the "Terminator" AI robot and many Gigabytes of system RAM as well (not counting the CPU and RAM needed for the REST of the game itself...). (this is all very extremely conservative guesstimates).
In its first iteration such a "game" could have say just ONE "Terminator" robot to save resources (CPU, Ram, etc) and only much later on when the hardware and software caught up would we have Terminator VS Terminator fights and battles etc... Because the Terminator is an advanced AI capable of learning and modifying its own data, perception filters, code and programming (but not to the extent of violating its hardcoded or top level mission goals and objectives) and because all physical processes are simulated faithfully with the utmost fidelity (vision, motion, energy consumption, critical decision making, mission analysis, etc) and because it is a truly autonomous agent (as opposed to a lame duck NPC character following a predefined script) and genuine embodied AI agent (it is on equal footing as the player and has no "access" to game information and cannot "cheat") it can over time (and sometimes rather quickly so) adapt its tactics and strategy to better accomplish its mission, and it can even develop a distinct personality and subgoals and additional drives as long as these do not stand in the way of its primary mission...
If captured and reprogrammed it's mission and memory can be wiped out and it can be instructed to protect instead of to harm or it can be "set free" to live without imperatives or higher order goals or objectives and it can simply "live and let live" until it decides or develops its own set of code of conduct, its own interests or hobbies etc...
Helping to create a true AI game
Before releasing such a game the developers could have thousands of fans 'beta test' the game and fight against the blank state and relatively untrained "Terminator" to train him. After millions of man hours the Terminator will be trained to be have a very specific "intelligence" of sheer survival and this will become part of his hardcoded prexisting programming that ships with the game, a template of sorts, and then once in-game and in real-time the individual Terminator will continue to learn and adapt when fighting against the end user (gamer) and each time the gamer dies he learns and adapts but the "Terminators" from each replay don't forget their experiences and the Terminator as well learn through this aggregate experience and the knowledge becomes cumulative and it became smarter as it fights the end user.
The end user and his Terminator are unique and it becomes a bio-digital feedback loop and after many many epic battles the individual users' Terminators are each unique in their own way and fight differently and act not the same...
Then instead of humans playing online multiplayer we can have our Terminators battle against each other to see how well we "trained" them!
Ultimately the universe is the ultimate "computer", everything else including all other computers, human brains, digital lifeforms are just emulators in the grand scheme of things. The laws of physics and the physical universe "out there" is the last frontier, the only TRUE computing computer. So why not have an emulation within another emulation?
In simulations and games in general the advancements in physics and the physical aspects of a game engine have lead to and necessitated the advances in AI. The advancements in graphics have also required an equal advancement in physics, and the advancements in both need AI to be on equal grounds to let these multifaceted aspects of this virtual worlds really come together and combine in a smooth holistic natural way.
All three are interdisciplinary and depend mutually on each others existence and advancement. Having embodied AI makes little sense if the game engine is say a primitive Quake II etc... Without the necessary big and little details and the scale and intricacies of the physical virtual world super intelligent robots simple have "nothing to do" in such an ultra simplistic universe.
The world so far
So far we have come a long way in terms of graphics and even physics (GTAIV's naturalmotion euphoria engine and Crytek graphics as prime examples) but are sorely lacking in TRUE AI. Even main characters in so called Next Generation games are 99.99% scripted and deterministic and have no memories, have no ability to truly "learn" or to do random things "outside the box" and generally do not have any real-time/ render-time neural network or cognitive abilities no matter how basic or primitive.
They have no image recognition ability, no physical vision with ocular organs simulations or accurate line of sight paradigms, they do not and cannot process raw sensations like sound, touch, and have no ideal of orientation (g's, earth gravity, CG, etc...) and do not possess higher level goals or motives, no interpersonal drives, and cannot see a bigger picture in any meaningful way.
Now I'm not saying we should copy the IBM Blue Brain Project and make/simulate every single neuron in the human brain down to the molecular level and create a true AI from the bottom up that contains the illusive "ghost in the machine" or anything like that...
I'm simply suggesting that AI in games have not processed much since the old DOS days of DOOM or Wolfenstein. Crysis is great to look at, but there is no substance, nothing beneath that paper thin layer of skin. How marvelous and glorious it would be, how ironic it would be, to create this AI Terminator Robot as an emulation within an emulation, the ultimate simulator per se and endow it with all the mythical and legendary abilities and superpowers of the Terminator franchise and bring to life a truly AI agent in the virtual form of an assassin robot embodied and beheld at last on the PC Desktop platform! (come on we have to find some way to but octo-core processors and the next gen video cards to good use!!!)
Why not build a Terminator robot (virtually I mean) capable of being highly cognizant and capable of interacting in a realistic, embodied, and fascinating manner with its virtual world, a robot that follows the nitty gritty rules of the known laws of physics and is vulnerable to damage and destruction.
A robot that starts to break down realistically as it is shot too many times and its endoskeleton takes a heavy beating and sustains much internal damage, a robot that begins to "glitch" and its program malfunction as its chip is exposed to damage or its power core is ruptured or fuel cells become erratic and it is running out of "juice" (with realistic simulation of what happens when a CPU is undervoltaged etc..) (perhaps its programming code becomes partially corrupt, or its ram is fried or whatever.. but modeled on the tiniest physical levels and not 'canned' in any way.)
Running away from such a Terminator would be as challenging as running away from a REAL life Terminator, and besides, the fun would be endless if we have finally met our match (so to speak) as long as it doesn't decide to take over our computer and do something crazy to our network or find a way to inflict damage in the so called real world.