Engineering Ambient Intelligence Systems using Agent Technology

40
Engineering Ambient Intelligence Systems using Agent Technology using Agent Technology Nikos Spanoudakis Technical University of Crete

Transcript of Engineering Ambient Intelligence Systems using Agent Technology

Engineering Ambient Intelligence Systems using Agent Technologyusing Agent Technology

Nikos SpanoudakisTechnical University of Crete

Presentation Contents

Application Domain and Challenges

The ASEME Methodology

System Architecture System Architecture

Results

Conclusion

Project goals

HERA (Home sERvices for specialised elderly Assisted living) aims to provide cost-effective specialized assisted living services for the elderly people suffering from elderly people suffering from

Mild Cognitive Impairment (MCI)

mild/moderate Alzheimer Disease (AD)

other diseases (diabetes, cardiovascular)

to improve the quality of their home life, extend its duration

Application Domain

Ambient Assisted Living (AAL)

combination of tele-homecare and smart homes

in the field of Ambient Intelligence (AmI)

Challenges

Engineering an AAL system is a non-trivial task(Nehmer et al., 2006)

Several issues are open for this type of applications (Kleinberger et al., 2007; Koch, applications (Kleinberger et al., 2007; Koch, 2006):

Adaptability

Natural and anticipatory Human-Computer Interaction

Heterogeneity

Lack of an evaluation framework considering legal, ethical, economical, usability and technical aspects

Contribution

An Agent Oriented Software Engineering (AOSE) methodology for developing AmI systems

An architecture for the problem domain An architecture for the problem domain

An architecture for integrating agents to the general service oriented software architecture

Why agents?

Agents are

proactive (have goals and pursue them)

reactive (respond to events in environment)

social (acquainted with other similar software and can cooperate-compete with it)

autonomous (do not need human intervention to act)

intelligent (may perform tasks that when performed by humans we consider that are the evidence of a certain intelligence)

THE ASEME METHODOLOGY

A methodology for guiding project development

AOSE Considerations

What, how many agents? How to structure of agent? Model of the environment? Communication? Communication? Relationships? Coordination? Protocols?

(Hexmoor and Brainov, 2002)

ASEMEthe phases and abstraction layers

Agent Level Capability LevelDevelopment

Phase Society Level

Levels of Abstraction

Goals RequirementsActorsRequirements

Analysis

Capabilities

Agent Control ComponentsSociety Control

Roles and Protocols

Design

Analysis

Agent codeCapabilities

codePlatform

management codeImplementation

Analysis

Functionality

Requirements Analysis

Identify the stakeholders

Seniors@home

Hospitals, health centers

Telecom operators, internet service providers (ISPs), portals

The Systems Actors Goals model (SAG) - initial

SAG refined

Analysis Phase

The first model is the System Use Cases

Goals are transformed to high level tasks and are decomposed to simple tasks

Let’s see for example the goal assign pills

Analysis Phase

Transform SAG goal to use case (SUC)

Analysis Phase

Refine the SUC diagram

The Agent Interaction Protocols model For each use case connecting two roles

we create an interaction protocol

We use Gaia formulas to define liveness of each role within the protocolof each role within the protocol

Operator Interpretationx . y x followed by yx | y x or y occursx* x occurs 0 or more timesx+ x occurs 1 or more timesx ~ x occurs infinitely often[x] x is optional

x || y x and y interleaved

The AIP modelRole

Rules for engaging

Results

Liveness

The system roles model (SRM)

Shows each role’s liveness

Including all used protocols

Associating including use case to Associating including use case to capabilities

Included use cases to activities

Associating activities to functionalities

Example – Assign pills

Example – Assign pills

Assign pills: Produced SRM

Role: PersonalAssistant

Capabilities and Protocols:

AssignPills_PersonalAssistant, …

Activities:

ReceiveNewPillPrescriptionRequest, UpdateUserScheduleReceiveNewPillPrescriptionRequest, UpdateUserSchedule

Liveness:

PersonalAssistant = AssignPills_PersonalAssistant OP? …

AssignPills_PersonalAssistant = ReceiveNewPillPrescriptionRequest. UpdateUserSchedule

… This formula was copied from the AIP model

Assign pills: Refined SRM

Role: PersonalAssistant

Capabilities and Protocols:

AssignPills_PersonalAssistant, UpdateUserSchedule, …

Activities:

ReceiveNewPillPrescriptionRequest, ResolveConflicts, ReceiveNewPillPrescriptionRequest, ResolveConflicts, UpdateUserScheduleStructure, …

Liveness:

PersonalAssistant = AssignPills_PersonalAssistant~ || …

AssignPills_PersonalAssistant = ReceiveNewPillPrescriptionRequest. UpdateUserSchedule

UpdateUserSchedule = ResolveConflicts. UpdateUserScheduleStructure

A graphical view of SRM

The functionality graph

Interfaces with external systems

Functionality sending a standard FIPA ACL message

Design phase

In the design phase liveness formulas are transformed to statecharts

Then,

The variables (in/out params) of each state activity are defined

the transition expressions are defined

Transformation templates

Are applied recursively in formulas

The Inter- and Intra-Agent Control

The inter-agent control (EAC) is a statechart defining the parallel behaviour of two or more roles

The intra-agent control (IAC) coordinates the interactions between the agent’s capabilities (or modules)

Every role in an EAC can be merged in the IAC model as-is and it can be refined: By turning a state to a superstate with substates

IAC allows the parallel execution of multiple protocols

The EAC model for AssignPills

And the Personal Assistant

Automatic Code Generation

Automatically generating all control code. The developer just needs to invoke functions at appropriate parts

Automatic Code Generation

Automatically generating all control code. The developer just needs to invoke functions at appropriate parts

The ASEME Dashboard

AmI Architecture

Environment

Interfaces(standards)

People

ComputingSubsystems

Sensors

Integrated System Architecture

MAS Architecture

Agents Architecture

HERA trials

Two development iterations

We focused in two categories of users:

the end-users (who use the HERA services) A total of 30 end-users (10 healthy elderly, 8 suffering from A total of 30 end-users (10 healthy elderly, 8 suffering from

MCI, 8 suffering from mild AD, and 4 suffering from moderate AD) were selected to participate in the project trials phase

the Medical Personnel (who configure the HERA services and assess the end users’ progress).

10 medical experts

Results

Satisfaction of the users for the two phases

Concluding

We showed how a practitioner can apply the ASEME methodology, a model-driven development methodology, to build an AmI systemsystem

We proposed an architecture for such a successful real world system (HERA)

The system validation results show that agent technology aids personal assistance in ambient intelligence environments

This presentation was about the IEEE Intelligent Systems paper:

Spanoudakis N., Moraitis, P.. Engineering Ambient Intelligence Systems using Agent Technology. IEEE Intelligent Systems, Vol. 30, Issue 3, May-June 2015, pp. 60-67

Find the paper@ http://dx.doi.org/10.1109/MIS.2015.3

More on ASEME: http://aseme.tuc.gr

THANK YOU!

More on ASEME: http://aseme.tuc.gr

More on HERA: http://w3.mi.parisdescartes.fr/hera

More on Nikos: http://users.isc.tuc.gr/~nispanoudakis