What is Probability?
Hit probabilities
Damage probabilities
Personality (e.g. chance of attack, run, etc.)
???
Probabilities are used to add a little
uncertainty into the game AI in terms of
decision making (most of the time), strategy
and tactics, and even spawn occurrences
We look at some examples…
Generation of random numbers
Common practice
Seeding random
numbers
Random numbers can be fed into various
game AI
–
movement, decision

making ,
strategy to provide a sense of randomness
May not reflect behaviors intelligently
Representing a character’s chances of hitting
and opponent in combat or battle
Typically, a game developer defines several
probabilities (RPG game e.g.)
◦
Moderate dexterity
–
60% prob. of striking with
knife in melee
◦
High dexterity
–
90% prob. of striking with knife
Probabilities can be adjusted given other
factors (High
dex
e.g.)
◦
95%

in possession of “Dagger of Speed”
◦
85%

opponent has magic
armour
Design
hit probability tables
to calculate the
appropriate probability given the occurrence
or non

occurrence of any number of events
or conditions
Define abilities of character classes using
probabilities
Ability
Wizard
Fighter
Rouge
Ranger
Use magic
0.9
0.05
0.2
0.1
Wield
sword
0.1
0.9
0.7
0.75
Harvest
wood
0.3
0.5
0.6
0.8
Pick locks
0.15
0.1
0.05
0.5
Find traps
0.13
0.05
0.2
0.7
Read map
0.4
0.2
0.1
0.8
…
…
…
…
…
In practice, these probabilities can be further
conditioned on the overall class level
◦
A first

level wizard might have only 10% chance of
using magic
◦
The idea here is that as the player earns levels, his
proficiency in the craft increases (reflected by the
probabilities)
On the computer

side of the game AI, other
characters in the world can have their own set
of probability tables…
Combine probabilities with state transitions
in a FSM
Instead of deterministically selecting a state
to move to, assign certain probabilities to
each transition
◦
50% chance of attacking, 20% chance of fleeing,
10% chance of hiding
For even more variability, assign different
probabilities to different types of characters,
making some more aggressive than others,
etc.
A step further
distinct personalities?
How do we implement this efficiently?
Update certain game probabilities as the
game is played to facilitate computer

controlled AI learning and adapting (Non

deterministic AI)
◦
E.g. Collect statistics on the number and outcome
of fights between different characters
◦
Probability of encounters resulting in a win (or
death) can be calculated real

time
◦
Use this change of probabilities to make future
decisions on whether to engage in battle or avoid
certain characters or flee battle, etc.
3 common interpretations of probability
◦
Classical Probability
◦
Frequency Interpretation
◦
Subjective Interpretation
Refers to events and possibilities, or possible
outcomes
Given an event
E
, which can occur in
n
ways
out of a total of
N
possible outcomes, the
probability
p
of occurrence of the event is:
p = P(E) = n/N
P(E): Probability of success of the event
Probability of failure of the event: 1

P(E)
E.g. Rolling a six

sided dice, the probability
that a 4 would show up is…?
Consider two six

sided dice, both rolled at
the same time, what is the probability that
the sum of the numbers that show up equal
to 5?
Also known as relative frequency or objective
probability
Considers events and samples or experiments
If an experiment is conducted
N
times and
some event
E
occurs
n
times, the probability
of
E
occurring is:
P(E) = n/N as N
For finite number of experiments, the
resulting probability will be approximate or
empirical
derived statistically
Frequentist approach: Coin tossed 1000
times
◦
Experimentally, the results could come to getting
heads 510 times (e.g.), so the probability of getting
heads is
P(heads) = 0.51 or 51%
Should “approach” 0.5 if number of
experiments increase…
Approximation by experiment
A measure, on a scale from zero to one, of a
person’s
degree of belief
that a particular
event will occur given their knowledge,
experience or judgment.
Useful when the event in question is
not
repeatable
(therefore, can’t use frequentist
approach)
“It probably will rain tomorrow”, “I have a
good chance of passing this subject”
More empirical e.g. “I have a 75% chance of
passing this subject”
◦
If you later did better in the next
homework/assignment, you might revise you belief
that you have a 90% chance of passing the subject
Bayesian theory
◦
Allows us to update our belief of some event
given
the availability of new information
Odds
◦
Common in betting scenarios
◦
If we say the odds in
favour
of success of some
event
E
, are “a to b” (3 to 1 odds, e.g.), the
probability of success of that event, P(E)
P(E) = a / (
a+b
)
◦
Can work the opposite direction, given the
probability
work out the odds
Expectation
◦
Expected value of some discrete random variable
X
that can take on any values,
x
0
, x
1
,…
x
n
with
probabilities
p
0
, p
1
,…
p
n
can be determined as:
◦
For such a distribution, you can think of
expectation as an average value
◦
Measure of central tendency, measure of payoff
Expectation
◦
E.g. Online RPG
–
monitoring the
number of players who gather at a
local tavern/inn each evening
–
collecting intelligence
◦
Table shows the probabilities of
no. of players each evening
◦
In this case, what is the
expected
number of players in the tavern in
the evening?
◦
What use is this information?
# Players
Probability
0
0.02
2
0.08
4
0.20
6
0.24
8
0.17
10
0.13
12
0.10
14
0.05
16
0.01
Difficult to pin down subjective probabilities
to a specific method or number
Fine

tuning or “hacks” can be used
When events are not independent, they are
“conditional”
◦
E.g. if you find your lawn wet, what is the
probability that it rained while you were at work? Is
it possible that someone turned on your sprinklers
while you were at work?
◦
Outcome of your grass being wet is “conditional”
upon whether it rained, or whether someone
turned on your sprinkler.
◦
Bayesian analysis
◦
If event A depends on whether event B occurred,
we can’t use typical probability calculations
P(AB)
◦
Probability of A occurring
given
B has occurred:
P(AB)
◦
Probability of B occurring given A has occurred:
P(BA)
P(AB)
P(BA)
◦
To find the compound probability of both A and B
occurring, we say
P(A
B) = P(A) P(BA)
◦
But usually we are interested in the probability of
an event given some other event has occurred
P(BA
) = P(A
B)/P(A)
= P(B) P(AB) / P(A)
◦
Posterior = likelihood * prior

marginal likelihood
Example 1: A melee attack by a wizard
character, with additional magical aid
◦
To determine the probability of a melee hit given
magical aid
P(hit) = 0.9, P(~hit) = 0.1
P(
magichit
) = 0.85
P(magic~hit) = 0.15
P(
hitmagic
) = (0.9)(0.85) / [(0.9)(0.85)+(0.1)(0.15)]
= 0.765/0.78
= 0.981
Indicating stronger probability of
hitting given magical aid
Example 2: A 1

on

1 fight between a warrior
(fighting ability) and a wizard (magic ability)
To determine the attacking (hit) probability of the
warrior given the wizard’s magical ward defense
C1: P(A) = 0.8, P(~A) = 0.2
C2: P(DA) = 0.3
P(D~A) = 0.7
P(AD) = (0.8)(0.3) / [(0.8)(0.3)+(0.2)(0.7)]
= 0.24/0.38
= 0.632
Indicating weaker warrior attack
probability given magic defense from
wizard
Bayesian inference, Bayesian networks for
adding uncertainty to decision making (refer
to
textbook Chapter 13)
Comments 0
Log in to post a comment