What character do you think of about "A.I."?

Obviously, it is monotonous. One, single profile. Like "Star Wars Episode II". Those clones.

Also, often questioned if it has a mind or not. In Japan, there're many that have minds to help people against evils.

Oops, is it a robot? Robot isn't it "A.I."?

Definition.

"the study and design of intelligent agents," where an intelligent agent is a system that perceives its environment and takes actions that maximize its chances of success.

Okay, so "A.I." has a goal by definition, lives to achieve a goal. This sounds, nothing to do with "intelligence". Or, "intelligence" is an ability to achieve a goal!?

Again, the definition.

Intelligence is an umbrella term describing a property of the mind comprehending related abilities, such as the capacities for abstract thought, reasoning, planning, problem solving, speech, and learning.

A property of the mind. But it should not be of oneself, but of others. It is "others" that think someone as "INTELLIGENT".

So, it doesn't matter if it has mind or is clever and perfect.

Is it safe to redefine "INTELLIGENT" as "RELIABLE"? You can count on it. Then, it is "INTELLIGENT". Like us for human, it is not entirely, but on a specific field/situation. "RELIABLE" needs a small print.

No, but are we "RELIABLE"? No. I could label us "NOT RELIABLE".

Yet, we can accept it. Then, we can get along with.

We expect something perfect. But nothing. Plus and Minus. Up and Down. I guess, it's easier to get along with such a "NOT RELIABLE". Someone perfect must be empty or too disciplined.

So, I guess we have an ability to recognize a certain character. It is a key. Then, we can get along with. A "character". It seems to be the realistic and helpful direction of "A.I.".

Infinite loop on a finite state machine

Finite State Machine and Behavior Tree are often used in game AI. In game, designer asks expected actions to give users expected experience. So, generic offerings like machine learning is somewhat useless because it lacks control.

But there IS a difficulty in decision making. What action to take at when? There're many possibilities.

State --> Action --> Path Finding, Movement, etc.

A1 A2 A3 A4
PC
S1 S2 S3 S4 S5 S6 S7 S8

a1 a2 a3 a4
NPC
s1 s2 s3 s4 s5 s6 s7 s8

Action: A, a
State: S, s
* current in bold

Actions may be ordered by behavior trees.
States may be directed.
In FSM, there's only one state at a time, and is designed as directed graph.


So, in this case,
Decision Making is done as "Pick up an action or a chain of actions based on current states". And what leads to better decision making?

In FSM, for example in FPS, state is simple. In combat or not. Whenever NPC become aware of PC, it gets in combat mode to kill you. But the action could be complicated. Which path to get closer? With obstacles to hide? Can work as a team? Evaluation function? More variables gets you less control. If NPC is damn zombie, sending more zombies with damn pathfinder makes sense. But if it is not, it seems another layer of state machine is required. And, that would require another, and another, and another...

It may not help, but think about ourselves. We, human, does this in three stages.

-Define Goal
Often, defining goal is not easy. It is not plain, but hierarchical. In team, we share it.
-Observe
Collect information to describe the current situation towards the goal.
-Analyse
Analyse collected information, and list possible actions.

Wrong analysis on less information or wrong information likely leads to failure.

This happens also in game. Information given is limited both in its amount and its realtime ness due to system resource. Even if information is enough, the situation may not be obvious.

But a game is basically zero-sum game. I mean, there is an opponent. So if you know what the opponent does, you can choose a winning option. But if the opponent knows it, it can choose a counter solution. And if, and if, and if...

Now it seems we are in an infinite loop on a finite state machine. This may represent a common argue, "WE NEED MORE PROCESSING POWER". Seriously?

A sniper will put most of its efforts on collecting information. A soldier on actions to give more damages. If there is a diversity in NPC abilities, which fates its character, their fights to take their advantages to achieve their goals become a game. Doesn't it become an expectation of what your team mates do? Like, one tend to stay back and cover, another to go first and lead. That kind of character makes game play a lot easier to work with and more fun to fight against NPCs.

A character, an expectation, to count on others, simplifies decision making. PC reveals its character, too, through actions made in the past, which makes team play easier, and prevent bad users from the community to keep game experience.

NPC Training College

NPC stands for Non Player Character, which moves autonomously. Here's the definition in WIkipedia.

What's for? To have NPC experienced. Then apply the experience to another.
What's needed? Reusability.
What's possible in the future? NPC will forcast, recognize differences from the actual happenings, then concentrait on the current situation(increase sensitibity rather than forcast) to achieve the goal. And it becomes an experience.

NPC:
has a goal.
can recognize the situation.
then make an action.

NPC will:
forcast.
recognize the differences from events actually happened.
concentrait to sense the situation to deal with unknown situation.

Underlying Theorem: Bayes' Theorem
1. Improve prior probability(by expert, by machine learning)
2. Collect posterior to have it experienced
Situation is modeled as Bayesian network. Then, makes an action.

The problem: Reusability
Raw sense information is too concrete to be reused.

Solution: Multiple sense layers(Hierarchical Baysian network )
According to "On INTELLIGENCE, Jeff Hawkins", human neo cortex is layered. HIgher a layer is, more abstracted information is. So sensing happens bottom-up, while forcast happens up-down.

Mmmm, this contains lots of tasks unresolved. I need to focus. But, this is an interesting project to have AI experienced by open, community based efforts.

Free Blog Themes and Free Blog Templates