A Scalable Execution Control Method for Context

A Scalable Execution
Control Method for Contextdependent Services
Wataru Uchida, Hiroyuki Kasai, Shoji Kurakake
Network Laboratories,
NTT DoCoMo, Inc.
Jun. 28, 2006
1
Outline
Background and motivation
 Proposal of service execution control
method
 Simulation results
 Conclusions and future works

2
Background

Cellular networks are expected to provide contextdependent services
 assist
user's real world activities
 continuously monitor context and are executed when the
context satisfies pre-defined condition.
3
Context-dependent services
Push-based restaurant
recommendation
context:
・location of user
・availability of tables
user
Child surveillance
context: location of child
I arrived
at the school!
child's terminal
with GPS
French
restaurant
"la mère"
menu
mother's
terminal
user terminal's
display
automatically recommends nearby
restaurants which have vacant tables.
automatically notify mother of her
child's arrival to school/station/private
school.
Other examples: 24hours healthcare service, Friend-finder service,...
4
Problem and objective

Need tremendous number of operations for
execution controls
 We have to
 continuously acquire and collect many kinds of context
 determine execution for a large number of services.
 Example
 Restaurant-recommendation: continuously locate user,
measure number of vacant tables, collect them and
determine to recommend or not

Execution control operations with low frequency
doesn't always work well (risk of missing execution
timing).
Objective: reduce cost of execution control
while preserving the service quality
5
Service execution control
Server A Server B Server C
Execution
condition
Execution
condition
③ Determination
of service execution
Execution
condition
・・・
execution
Network
② Context
collection
① Context
acquisition
Context acquisition terminals
User
(ex. cell phones with GPS device, non-contact type IC
cards,...)
: execution control operations
6
Determination of execution

Calculate expected utility (EU) for execution(a1)
and non-execution(a2), and chose one with
higher EU
 Utility:
effect of execution/non-execution for the user
X
t
 EU for a1 and a2: E U a =
P t (yi )U a1(yi ) yi : state of context
Expected
utility (EU)
1
E U at2
Xi
=
t
U aj (yi ) : utility of
P (yi )U a2(yi ) action
i
EU of non-execution
( E U t)
a2
EU of execution (E U t )
a1
execution
time
t
7
principle of our method
Reduction of execution control
operations

Probability of satisfying execution condition
(=risk of missing chance of execution) varies
with time.
Reduce execution control operations when
probability of satisfying execution condition is low
EU
EU of non-execution ( E U t )
a2
low frequency (small risk of
missing chance)
EU of execution (E U t )
high frequency (large
risk)
a1
t
8
Interchange probability estimation



Predict context values
Utility in future can be estimated using predicted values
Compare estimated E U at with E U at
1
EU
EU of non-execution ( E U t )
a2
2
estimated E U t
a
2
:probability
distribution
of EU
estimated E U at
1
now
t
EU of execution (E U t )
a1
Low
probability
High
probability
9
Collecting context with large effect

Interchange probability depends on the values
of each context.
 Each


context's effect on the probability is not equal.
Context with large effect is collected more
frequently.
Each context's effect can be calculated using
conditional probabilities.
10
Utility estimation

use Bayesian network
 can
handle probability distributions of context.
Action (A)
Distance
(D)
Option
(O)
a1: recommend
a2: don't recommend
O
Utility (U)
customer
number (C)
NO
YES
NO
X
PyiU a1(yi )
i
YES
YES
Accepts
the user
(B)
E U a1 =
B
NO
A
U
a1
200
a2
-150
a1
-50
a2
100
a1
-50
a2
100
a1
-200
a2
150
Utility table
11
System architecture
Server A
Server B
Register execution condition
Collect context with
high effect frequently
when probability of
satisfying execution
condition is high.
Server C
...
Invoke execution
Server-side controller
Each terminal send
values when the
value enters "alert
region" (estimation is
incorrect and execution
time approaches )
Context 1
acquisition
terminal
Context 2
acquisition
terminal
(Future work)
...
12
Simulation setup


Metrics: number of collections, service quality
(explained in following slides)
Assumed service: restaurant recommendation
Context: distance from restaurant,
availability of tables
3km
Random-walk
3km
User
・・・
Restaurant

Max speed:
100m/min
Num. vacant tables
increased or decreased at
every minute
Compared with: method which Periodically
performs Execution Control operations (PEC)
13
Service quality (1/2)

We measured execution ratio:
(num. of timings service is executed) /
(num. of timings execution condition is
satisfied)
 Service
quality is high when the ratio is high.
t
Execution ratio = 4 / 8 = 50%
:Timings execution
condition is satisfied
:Timings services are
executed
14
Service quality (2/2)

Also measured deviation from ideal decisions:
 Sum
of times when the decision is different from that
of the ideal case (execution control with the highest
frequency)
 Service quality is high when the value is small.
Timings in the ideal case
Time when the decision
is different
t
t
Timings the method detected
15
Result 1/2: Execution ratio
180000
160000
Number of collections
Cost: high
200000
140000
Proposed
PEC
120000
100000
80000
Reduce 90% of
the total cost
60000
40000
20000
0
20%
30%
40%
50%
60%
70%
Execution ratio
80%
90%
100%
Service quality: high
16
Result 2/2:
deviation from ideal decisions
180000
160000
Number of collections
Cost: high
200000
140000
120000
100000
Proposed
PEC
80000
60000
40000
20000
0
0
500
1000
1500
Service quality: high
2000
2500
3000
3500
Deviation from ideal decisions
4000
4500
5000
17
Conclusions

Scalable execution control method for contextdependent services
 Methodology:
gather context when the service
execution condition is about to be satisfied
 Simulation results: execution control operations
are reduced while preserving service quality
[Future works]


Development of execution control using alert region
Service quality loss-less (e.g. execution guaranteed) method
18
Thank you!
email: [email protected]
19