No dice please!
It is custom in RPG game AI to rely more or less on random number generator's. Probably down this road I'll resort to that too. At this point I envision interaction of individual with world - both persons and all non-living elements (collective unconscious heritage, customs, location etc.) and gained experience as key driving element of person vivid personality. Modeling dynamics of interactions of above and placing it "in head" of Vega Person is what this project is all about.
I'm perfectly aware of enormous complexity which can easily be constructed.
Let me just point simple argument for "No dice" and complexity approach - chess.
You don't have dice for chess and yet many people find it fascinating and some spend life dedicated to researching this game.
All rules for chess can fit on one short sheet of paper. How about that?
Of course on the other hand a lot of people hate playing chess just because of that. They like things predictable, simple and easy to cheat.
Hence game AI developers are not stupid but usual mainstream commercial game AI have to balance speed, performance and game learning curve.
They have to sell it and not make piece of art and that is completely different approach.
Now it's time to put foothold in more concrete blueprint of all this abstract visions in very first Vega person architecture blueprint.
Emotions
In Vega world person is ruled by emotions or more poetically said "sea of emotions".
In real world we are ruled by emotions. We are emotional beings. Even in criminal justice woman that just had baby is ruled out as not guilty for some severe crime based on emotional upheaval.
Furthermore you could be righteously upset and commit some crime and it will be taken as benefit in your trial.
History teaches us that incentive speeches of charismatic leaders made people do irrational heroics etc.
So we agree that emotions run our world. But what kind of emotions we have?
At the moment I'll create only one distinction - persistence.
Each emotion has calculated influence or strength value in certain time moment.
Lower emotions L.E.
Every human being as part of animal heritage has basic survival instincts (defend body, hunger etc.) and satisfying higher body needs (reproduction, fatigue, poverty, discomfort etc.)
Let's call them lower emotions (L.E.). They are common to every person and always exist. In simplest (and incorrect) way mathematically we can describe them as constant in time. Value of this constant for each of them and for different person can vary. One person will more care about fatigue then about poverty and another one about reproduction etc.
Yes, we could make difference between basic instinct for survival and for example need for warm clothing but let's for know stick with various constant values.
Higher emotions H.E
Motivations, beliefs, virtues or flaws all fall to this category. It is what drives us apart from L.E. True, some people are rarely driven by H.E. at all. That represents modeling challenge for me. We know that even a worst no-good of man may at some point in life conduct bravely or honorably.
Maybe using word "high" is too strong. They denote all emotions that relate to world or non-body interaction of individual. Examples vary from self-gain materialistic toward most noble and selfless like self-sacrifice It is obvious that they don't belong in same bag. At the moment their only important denominator is uncertainty Unlike L.E. one does not have to have them at all. Furthermore their strength dynamics through time are puzzling. Currently their behavior and things that affect them through time are very core of "to be" or not to be of Vega AI.
Psyche
Psyche will denote space in which emotions fight for rule. Idea is that in Vega AI Psyche on demand determines power balance of emotions. It determines strength of each one of them. Lastly it makes ordered list of them by their strength.
Final outcome is that at each moment Psyche can provide list of ruling emotions.
Goal
In real life our life goals, both short and long run, are colored with emotion.
As youngsters we are explained that we need to go to school (goal) to fulfill our duty. So we have goal - attending school class and ruling goal emotion - duty.
In middle ages noble knights were rented by their King in battle for their duty and/or reward. So goal - winning battle is defined by ruling emotion -duty or self-gain (this depends of person).
In sinking boat captain has goal to save his crew and passengers by staying on boat.
Hence goal (saving lives) with ruling emotion - self sacrifice.
One can remember scenes from "Titanic" where some sailors conduct bravely and help passengers save themselves while other sailors save their life.
To conclude, goal in Vega AI must be at least clearly identifiable and have one ruling emotion (R.E.).
Goal must be comparable
Prototyping means that it is possible to meaningfully (pragmatically) determine that goal X and goal Y are similar and how much similar.
Goal definition is complex stuff. It is wide open to anything you can imagine as a goal in world. Hence it does not get wider than that :).
But bottom line is that anything I'll develop out of it must provide way to compare it to other goal in simple manner.
Pool of completed goals (PCG)
When goal is completed it is archived in PCG. IsBeneficial value is assigned.
This means that Vega person, upon completion, based on yet unknown logic determine how beneficiary was that goal for her.
So for example goal X with R.E.12 was not beneficial.
PCG purpose is to serve as person memory or experience database.
Catch is that we will have collective PCG. As modern psychology states there is something called collective unconscious or heritage, legends, stories of nations, ethnic groups, history of mankind etc.
As in real life individual takes his wisdom from both collective and personal PCG.
Now sweet part is modeling Vega person abilities to access both of these pools.
We know that some guys don't learn even from their life mistakes while wise one use wisdom of mankind, nation, state, community etc.
Issue is how to define R.E. in collective PCG?
Collective PCG, as last resort for determining R.E. for Vega Person, must cover all possible emotions.
Goal R.E. lifespan and dynamic
Goals can be defined during Vega world lifespan.
Only initial set of goals exists in collective.
Something has to determine subset of goals that are viable for given Vega Person from collective PCG.
At that moment it becomes part of pool of person goals PPG.
But not before Vega Person (VP) assigns it some initial R.E. value.
PPG represent stuff that is possible for us to do.
VP can try finding match in either his PCG or in collective PCG.
When match is found R.E. value is assigned to goal and it becomes valid member of PPG.
In real life this is process of connecting with our memory in order to determine likeness of goals we encounter. True, many people don't bother with their own memory and tend to either accept other people suggestion or resort to their people's belief's or mass religion values. So this is another sweet future modeling field.
Once goal from PPG is accepted it gets one Psyche working cycle. This means that it does not get finished in one iteration but multiple.
Important thing to grasp is that something can change R.E. during goal lifetime making it more or less acceptable for future Psyche working cycle.
Example would be farmers conscripted to battle with promise of reward. So VP has goal of battle with self-gain R.E. But after conscripted farmer understand he was tricked and if he desert he will be killed. Hence R.E. for his goal changes to fear for existence or basic instinct.
Psyche working cycle
All above elements can be comprised in one algorithm depicting one working iteration or cycle of Psyche.
- PPG must be initialized
- Psyche determines VP emotions strength based on various params
- Psyche orders VP emotions in R.E. ordered list by strength REOL
- For each element in REOL
- Can you find R.E. match in PPG ?
- Loop REOL
- When found (must be found!) it is winning goal WG
- Execute WG
- Is WG completed?
- If no loop to 2.
- If yes save WG to PCG
Nema komentara:
Objavi komentar