Context-aware architectures - Guy Bernard / INT - October2003 1
Context-aware architectures
Context-aware architectures
Guy Bernard
Context-aware architectures - Guy Bernard / INT - October 2003 2
VTT (1)
VTT (1)
Context-aware architectures - Guy Bernard / INT - October 2003 3
VTT (2)
VTT (2)
framework for Symbian OS
"blackboard-based" communication (center = context manager)
stress on
fuzzy thresholds (Bayesian reasoning)
low-level vs. high-level context values
Context-aware architectures - Guy Bernard / INT - October 2003 4
VTT (3)
Context-aware architectures - Guy Bernard / INT - October 2003 5
CICESE, Mexico
CICESE, Mexico
IEEE Computer, september 2003
Context-aware architectures - Guy Bernard / INT - October 2003 6
Univ
Univ
. Lancaster,
. Lancaster,
ReMMoC
ReMMoC
project
project
Context-aware architectures - Guy Bernard / INT - October 2003 7
Univ
Context-aware architectures - Guy Bernard / INT - October 2003 8
CARISMA (2)
Context-aware architectures - Guy Bernard / INT - October 2003 9
CARISMA (3)
CARISMA (3)
Context-aware architectures - Guy Bernard / INT - October 2003 10
GET, CARISM project
GET, CARISM project
Couche de communication
La couche de communication est
b asé e sur l e g r ap he de p r otocol es
de J onathan dans l e b ut de:
instancier dynamiquement un
g rap h e adap té aux co nditio ns de
l ’ env iro nnement à cet instant;
restructurer et mo dif ier ce g rap h e
si l es co nditio ns v arient p endant
l ’ ex é cutio n
C onnex ion mul tip l e: p ossib il ité
d’ util iser simul tané ment p l usieur s
connecteur s ( T C P , U D P … )
!" # $ % & % &Context-aware architectures - Guy Bernard / INT - October 2003 11
CARISM (2)
CARISM (2)
Le p r o j et G E T C A R I S M ( 2 / 2 )
Plate-f o r m e m o b i le
! "#$ % %& '$ ( ) * %' # + $ , + -'. , /0Réseau
Point d ’ a c c è s
Point d ’ a c c è s
I E E E 8 0 2 . 1 1
1 2 3 4 5 6 7 78 5 9 2 : 2 ;6 < <= 7 5 ;8 4 5 6 7 >? 2 9@ 2 = 9 AB ? CM id d l e w a r e e m b a r q u é
PDAs iPAQ ( l in u x + J V M )
Faibles ressources
Context-aware architectures - Guy Bernard / INT - October 2003 12
CARISM (3)
CARISM (3)
Gestion l oc a l e à l ’ u nité m ob il e
API JMS
l ic a tions
M i l
M onite u r d e
r e s s ou r c e s s s tè m e s
G e s t i o n a r c h i t e c t u r e l o c a l e
@ 8 = 8 45 6 7 2 3 2 63 5 7 3 9 5 32 2 7 6; < 4 2 2 3 2 63 5 7 3 2 38 5 ; 8 4 5 6 7 3C h o i x d e c o n f i g u r a t i o n
Context-aware architectures - Guy Bernard / INT - October 2003 13
CARISM (4)
CARISM (4)
Simulateur
d e c o n tex te
O b s erv ateur
d e c o n tex te
I n terg ic iel
C o n tex te
G es tio n n aire
lo c al
d ’ arc h itec ture
G es tio n n aire
lo c al
d e s erv ic es
C o n f ig uratio n
Context-aware architectures - Guy Bernard / INT - October 2003 14
ITEA Vivian project, ICM
Context-aware architectures - Guy Bernard / INT - October 2003 15
AMPROS proposed architecture (1)
AMPROS proposed architecture (1)
device
device
OS
Resource
Monitor
Resource
Monitor
Context
Recognition
Service
Appl/Users
Profiles
Appl/Users
Profiles
Context
Manager
Middleware
Manager
Middleware Core
g
e
t
c
o
n
fig
/
s
e
t
c
o
n
fig
Multi-Net
mgt
Discon.
mgt
Failure
detector
Discov.
service
Logging/
reconciliation
Appl
Appl
query/
subscribe
Middleware Services
(naming, trading, notification, persistency, ...
notify
Appl/Users
Policy
Appl/Users
Context-aware architectures - Guy Bernard / INT - October 2003 16
AMPROS proposed architecture (2)
AMPROS proposed architecture (2)
Resource Monitor
1
resource monitor
for each resource ("driver") type
WiFi, TETRA, remaining battery, available memory, geolocalisation, # of
processes, …
includes some system- and device-dependent code
gets raw data and processes it in order to provide system-independent
low-level context data, e.g.:
bandwidth =>average value in the last minute
geolocalisation => x, y
pushes (periodically ??) low-level context data to
Context Recognition
Service
, e.g.:
Device:Network:WiFi:bandwidth =30
Location:Coordinates = {80.0, 140.3}
Context-aware architectures - Guy Bernard / INT - October 2003 17
AMPROS proposed architecture (3)
AMPROS proposed architecture (3)
Context Recognition Service
gathers low-level context data from
Resource Monitors
returns the appropriate high-level context data, as considered by
Applications/Users Profiles
, to the
Context Manager
, e.g.:
Device:Network:*:Bandwidth = {WiFi:Bandwidth=30, Tetra:Bandwidth=0}
Applications/Users Profiles
describe the interest of individual applications, or users, or middleware
itself to monitor low-level or high-level context data, e.g.:
Device:Network:*:Bandwidth
Location:Coordinates
Context-aware architectures - Guy Bernard / INT - October 2003 18
AMPROS proposed architecture (4)
AMPROS proposed architecture (4)
Policies
describe the interest of individual applications, or users, or middleware
itself to be notified when significant context changes occur, and the
associated behaviour, e.g.:
if (Device:Network:*:Bandwidth < {10} && Device:Processor > 25) then
"enable compression"
Context Manager
notifies the appropriate entity (application, user, middleware) when
significant context changes occur, e.g.:
notify "middleware", "enable compression"
notify "user", "battery low"