This presentation was given at the nectar session of the 9th Hellenic Conference on Artificial Intelligence (SETN 2016) that took place on May18th- 20th in Thessaloniki.
It is about applying an agent-oriented software engineering (AOSE) methodology, i.e. the Agent Systems Engineering Methodology (ASEME) for building intelligent systems. We present it along with a case study in the Ambient Intelligence (AmI) Application Domain. We discuss the challenges, the ASEME Methodology, the System Architecture and our results.
2. Presentation Contents
Application Domain and Challenges
The ASEME Methodology
System Architecture System Architecture
Results
Conclusion
3. Project goals
HERA (Home sERvices for specialised elderly
Assisted living) aims to provide cost-effective
specialized assisted living services for the
elderly people suffering fromelderly 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
4. Application Domain
Ambient Assisted Living (AAL)
combination of tele-homecare and smart homes
in the field of Ambient Intelligence (AmI)
5. 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
6. 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
7. 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)
9. AOSE Considerations
What, how many agents?
How to structure of agent?
Model of the environment?
Communication? Communication?
Relationships?
Coordination?
Protocols?
(Hexmoor and Brainov, 2002)
10. ASEME
the phases and abstraction layers
Agent Level Capability Level
Development
Phase Society Level
Levels of Abstraction
Goals RequirementsActors
Requirements
Analysis
Capabilities
Agent Control ComponentsSociety Control
Roles and Protocols
Design
Analysis
Agent code
Capabilities
code
Platform
management code
Implementation
Analysis
Functionality
11. Requirements Analysis
Identify the stakeholders
Seniors@home
Hospitals, health centers
Telecom operators, internet service providers
(ISPs), portals
14. 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
17. 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 Interpretation
x . y x followed by y
x | y x or y occurs
x* x occurs 0 or more times
x+ x occurs 1 or more times
x ~ x occurs infinitely often
[x] x is optional
x || y x and y interleaved
19. 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
22. 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
24. A graphical view of SRM
The functionality graph
Interfaces with
external systems
Functionality sending a
standard FIPA ACL message
25. 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
27. 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
37. 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
39. 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
40. 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