Component- -based, Context based, Context- -aware aware - - PowerPoint PPT Presentation

component based context based context aware aware
SMART_READER_LITE
LIVE PREVIEW

Component- -based, Context based, Context- -aware aware - - PowerPoint PPT Presentation

Component- -based, Context based, Context- -aware aware Component Software Systems Software Systems Workshop on Spontaneous Networking Rutgers University Michael Przybilski 1 10.05.2006 michael.przybilski@cs.helsinki.fi Outline


slide-1
SLIDE 1

1 10.05.2006 michael.przybilski@cs.helsinki.fi

Component Component-

  • based, Context

based, Context-

  • aware

aware Software Systems Software Systems

Workshop on Spontaneous Networking Rutgers University

Michael Przybilski

slide-2
SLIDE 2

2 10.05.2006 michael.przybilski@cs.helsinki.fi

Outline Outline

  • Motivation
  • Research Problems
  • Thesis
  • Example
  • Ongoing Work
slide-3
SLIDE 3

3 10.05.2006 michael.przybilski@cs.helsinki.fi

Motivation Motivation

  • Increase of available context information
  • Wireless information devices
  • Integrating increasing number of input and output devices
  • Use for applications
  • Explicit, potential
  • Use of communication possibilities
  • Remote devices
  • Number of devices
slide-4
SLIDE 4

4 10.05.2006 michael.przybilski@cs.helsinki.fi

Context and Context Reasoning Context and Context Reasoning

  • Context is any information that can be used to characterize the

situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and application themselves. [A. Dey and G. Abowd, 1999]

  • Context-reasoning can be defined as deducing new and

relevant information from the various sources of context-data

slide-5
SLIDE 5

5 10.05.2006 michael.przybilski@cs.helsinki.fi

Challenges Challenges

  • Acquisition, processing and provision of context data
  • Rapidly changing and uncertain sources
  • Reuse
  • Common steps
  • Context information
  • Scalability
  • Flexibility
slide-6
SLIDE 6

6 10.05.2006 michael.przybilski@cs.helsinki.fi

Software Components Software Components

  • A component is a coherent package of software artifacts that
  • can be independently developed and delivered as a unit, and
  • can be composed, unchanged, with other general components to build

something larger

  • An interface is a description of a set of operations related to the

external specification of a component. An interface consists of:

  • a set of operations that a component needs to access in its surrounding

environment (required interface),

  • a set of operations that the surrounding environment can access on the

given component (provided interface).

  • An operation is unit of functionality implemented by a

component which may map to:

  • a method,
  • a function,
  • a procedure.
slide-7
SLIDE 7

7 10.05.2006 michael.przybilski@cs.helsinki.fi

Distribution Distribution

  • Distributed processing / information sharing
  • Nearby, resulting in a context-aware system
  • Remote
  • Simple sensors
  • Wireless information devices
  • Online processing
  • Groups of devices
  • Limited resources (processing, storage, networking, power, etc.)
  • Servers
  • High level of resources
  • Specialized
slide-8
SLIDE 8

8 10.05.2006 michael.przybilski@cs.helsinki.fi

Research Problems Research Problems

  • What are the minimum requirements for a distributed context

management system, based on software components?

  • How can context reasoning mechanisms be efficiently

integrated?

  • How can context-aware applications be built from software

components?

  • How can additional requirements be efficiently integrated?
slide-9
SLIDE 9

9 10.05.2006 michael.przybilski@cs.helsinki.fi

Scope Scope

  • Ranging from embedded devices, to mainframe computers
  • Context management on user’s wireless information device
  • Using remote devices for acquisition of context information and

processing tasks (context reasoning)

  • Multi-bearer ad-hoc / P2P networks
  • Sensor-based context
  • Not specific to location context
  • Not specific to static contexts (device configuration)
  • Context-aware computing view
  • Not specific to semantic web
  • Flexible, component-based framework that can integrate

additional QAs

slide-10
SLIDE 10

10 10.05.2006 michael.przybilski@cs.helsinki.fi

Component Framework Component Framework

  • Functionality
  • Basic sensing
  • Learning + Inference
  • Provision of new context (prediction)
  • Abstraction of higher level of context (interpretation)
  • Store context data
  • Application logic
  • Basic communication
  • Compile-time / runtime extension with other QAs
  • Access list; restrict communication to specific other components
  • Privacy, security, (network) location
slide-11
SLIDE 11

11 10.05.2006 michael.przybilski@cs.helsinki.fi

Components Components

  • 1-way communication (Messaging; Publish / Subscribe – Publish;

synchronous / asynchronous / isochronous)

  • 2-way communication (RPC;

synchronous / asynchronous)

  • Optimization: combination of components, re-use of common

functionalities at runtime Simple RPC Simple Msg.

slide-12
SLIDE 12

12 10.05.2006 michael.przybilski@cs.helsinki.fi

Simple Application Simple Application

  • The stolen / forgotten mobile phone
  • Sensor
  • Simple BT beacon
  • Attached to user
  • Transmit Freq. <= 1 Hz
  • Reasoning
  • Beacon is with user
  • Mobile phone is owned by user
  • Should never be out of reach

=> stolen / forgotten

  • Application logic
  • Sound / display alarm if stolen / forgotten

Reasoning Beacon Application

subscribe(select NULL where user = Michael, epoch = 1000)

slide-13
SLIDE 13

13 10.05.2006 michael.przybilski@cs.helsinki.fi

Advanced Advanced “ “Application Application” ”

  • Inferring User Activity from 3D Acceleratometer
  • Steps

Classification Data gathering Pre Processing Feature Extraction Feature Selection

slide-14
SLIDE 14

14 10.05.2006 michael.przybilski@cs.helsinki.fi

Inferring User Activity from 3D Inferring User Activity from 3D Acceleratometer Acceleratometer

  • Components

Sensor Preproc. FeatureExtr. FeatureSel. Classifier

subscribe(select x, y, z from acceleratometer where user = Michael, epoch = 10) subscribe(select variance, absoluteMagnitude from Feature-Selection where source = acceleratometer and user = Michael, epoch = 10) get(select activity from activity where user = Michael)

slide-15
SLIDE 15

15 10.05.2006 michael.przybilski@cs.helsinki.fi

Inferring User Activity from 3D Inferring User Activity from 3D Acceleratometer Acceleratometer

Sensor Preproc. FeatureExtr. FeatureSel. Classifier

Node 1 Node 2

  • Sensor
  • 220 000 samples (100 Hz)
  • Preprocessor
  • Feature Extraction
  • Feature Selection
  • Variance, absolute Magnitude of Acceleration
  • Classifier
  • Simple linear classifier
  • 300 samples for learning
  • 300 samples for calibration

Nokia 6600 BT Link L2CAP Sensorbox

slide-16
SLIDE 16

16 10.05.2006 michael.przybilski@cs.helsinki.fi

Inferring User Activity from 3D Inferring User Activity from 3D Acceleratometer Acceleratometer

10 20 30 40 50 60 70 80 0.05 0.1 0.15 0.2 0.25 0.3 0.35

Variance Absolute Magnitude

*International Conference on Artificial Intelligence 2005

slide-17
SLIDE 17

17 10.05.2006 michael.przybilski@cs.helsinki.fi

Other work Other work

  • Agent-paradigm
  • Distributed preprocessing
  • Integration of policy-based privacy and security
  • Autonomous Intelligent Systems: Agents and Data Mining, 2005
  • Evaluation of reasoning mechanisms
  • Software framework for remote data gathering
  • WS / EJB components / WEKA
  • Pervasive Systems and Computing, 2005
slide-18
SLIDE 18

18 10.05.2006 michael.przybilski@cs.helsinki.fi

Ongoing Work Ongoing Work

  • Further integration
  • iMotes (NesC)
  • Series 60 / 80 Mobilephones (Symbian C++)
  • JBoss Application Server
  • Communication
  • Ad-hoc (BT) and P2P (IP; 3G/GPRS / LAN)
  • Energy saving by remote processing
  • Reasoning mechanisms
  • Simple Bayesian networks, SVM
slide-19
SLIDE 19

19 10.05.2006 michael.przybilski@cs.helsinki.fi

Questions? Questions?