Virtual Life
I find myself becoming more and more obsessed with this subject. There are many instances of virtual life already available today. One of the more popular forms is in the gaming world, where everyone seems to be living their own virtual life. In games like World of Warcraft, you can interact with other live players, and then go and complete quests and kill things together. Only the things you kill are rather dumb. They die and reappear again in a few minutes, just as dumb as the last time they spawned.
Why cant the villans have intelligence? What if killing a monster or a villain in a cemetery caused the monster's wife and family to become enraged, aggressive, vicious, and vengeful?
And what if they didn't reappear? What if the other villains needed to reproduce to new villains, nurture their young, and develop villain relationships that will bond them for life, or virtual life if you will.
And what if these villains could be reformed, bargained with, or even tricked. They may even have individual personalities.
This is the idea of replicating some of the functions of the human brain in a programming model. The idea is to network the relationships of emotion and personality to probability determination. We all act differently in different situations, even though we may have very similar experiences. Some are shy in a crowd, while others are outgoing, and talkative.
When we get angry or defensive, we shut off other functions in order to focus. This is a survival technique adopted in our evolution. Anger strengthens our muscles, stops digestive processes, constricts blood vessels, and reduces pain receptors. Programmatically, anger has relationships to other physiological functions. As anger increases, some of these other receptors, may or may not be triggered, depending on your predisposition, or in this case, your temper.
These are some of the attributes of virtual life I am presently attempting to model and develop. I need to work on how to store experience, and reuse it at the various functional nodes. I have to keep the experiences small and focused, and be able to index and access them quickly across various nodes. Its hard to define such arbitrary elements in a program. Its almost JIT datatyping.
This is really some bleeding edge stuff, but it seems like somebody would have already tried something like this.
Anyway, good luck. Will be great if it works.
Posted by: Roger | April 10, 2007 at 09:59 PM