Presented at 30th International Conference on Software Engineering & Knowledge Engineering (SEKE) at San Francisco (USA).
1st July, 2018
Instagram: @prof.pantoja
An Architecture for the Development of Ambient Intelligence Systems Managed by Embedded Agents
1. An Architecture for the
Development of AmI Systems
Managed by Embedded
Agents
30th International Conference on
Software Engineering & Knowledge
Engineering (SEKE)
• 1. Federal Center for Technological Education (CEFET/RJ), Brazil
• 2. Fluminense Federal University (UFF), Brazil
• 3. Université Pierre et Marie Curie (UPMC), Paris, France
Carlos Eduardo Pantoja1,2
Heder Dorneles Soares2
José Viterbo2
Amal El-Fallah Seghrouchni3
July 1st, 2018
3. 3An Architecture for the Development of AmI Systems Managed by Embedded Agents
• Ubiquitous Systems
Ubiquitous Computing or pervasive computing is the capability of embedding
intelligence in everyday objects in a way that the person who interacts with this object
reduces the level of interaction with the device or even does not notice them. [Weiser,
2002]
Ambient Intelligence (AmI)
• Internet of Things (IoT)
• Agents [Wooldridge, 2000]
agents are autonomous and cognitive entities from artificial intelligence.
• Multi-Agent Systems [Wooldridge, 2009]
Agents can collaborate with other agents and they have common or conflicting goals.
Besides they are situated in an environment.
1. INTRODUCTION
4. 4An Architecture for the Development of AmI Systems Managed by Embedded Agents
1. INTRODUCTION: DOMAINS
The domain of
this work!!
5. 5An Architecture for the Development of AmI Systems Managed by Embedded Agents
• Early AmI works deal with the automation of common things in home or office
the classical automated coffee pot that sends information about the age, availability
and, temperature of the coffee.
It uses sensors and actuators, a computer, and a UNIX workstation
a simple reactive solution connected to the Internet
no intelligence applied in the solution.
a list of information and services about a room when the user enters it. If the users
enter the kitchen, the refrigerator shows a list of fridge items or a list of recipes using
Internet browsers. It do not consider (above all because of the technological limitations
of that time):
communication between devices
embedded technologies
complex processing or autonomous reasoning,
• With Internet of Things (IoT), it became possible to enhance and interconnect daily
objects together to perform pervasively actions
1.1. PROBLEM SETTING: AmI (Early Works)
6. 6An Architecture for the Development of AmI Systems Managed by Embedded Agents
• AmI Systems + Traditional Programming Languages
based on logic and programming languages such as Java
approaches were bonded to a specific domain
rebuilding the system from the scratch or even to change the hardware employed
platforms and hardware technologies were also limited
rarely consider inference rules to provide a better understanding of the user behavior
presented a centralized multi-agent solution (even with inference rules)
a central server is responsible for hosting the agents
or presented a distributed multi-agent system
agents were distributed in a closed environment
1.1. PROBLEM SETTING: AmI + Agents (Early Works)
7. 7An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.1. PROBLEM SETTING: AmI + Agents (Early Works)
2003
2009
8. 8An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.1. PROBLEM SETTING: AmI + Agents (Early Works)
2003
2009
9. 9An Architecture for the Development of AmI Systems Managed by Embedded Agents
• AmI Systems + Agent-Oriented Programming Languages (AOPL)
several frameworks for the development of MAS emerges
java-based agent frameworks play an important role in the development of MAS
looks like applications available in smartphones nowadays
using sensors on a large scale
notifying about daily tasks
some works apply the agent approach in simulated solutions
do not consider inference rules
one agent per device
1.2. PROBLEM SETTING: AmI + Agents
10. 10An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.2. PROBLEM SETTING: AmI + Agents
2003
2013
11. 11An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.2. PROBLEM SETTING: AmI + Agents
2003
2013
12. 12An Architecture for the Development of AmI Systems Managed by Embedded Agents
• AmI Systems + MAS + IoT should:
present a distributed and heterogeneous devices are responsible for the reasoning of
an entire environment pervasively
can enter or leave this ambient in a scalable way
still act independently from the technological architecture employed
• Embedded Systems
exploit existent architectures and middleware to facilitate the communication between
hardware and a MAS
use a central processing unit for controlling from distance
one agent per device
conceptual works consider agents working as things in network:
One agent is responsible for a thing in a Agents of Things (AoT) network
The possibility of employing MAS for controlling things (blue sky paper)
1.3. PROBLEM SETTING: AmI + Agents + IoT
13. 13An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.3. PROBLEM SETTING: AmI + Agents + IoT
2013
2017
14. 14An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.3. PROBLEM SETTING: AmI + Agents + IoT
2013
2017
15. 15An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.3. PROBLEM SETTING: AmI + Agents + IoT
2013
2017
16. 16An Architecture for the Development of AmI Systems Managed by Embedded Agents
• Architecture for the Internet of Smart Things (IoST):
a scalable architecture for the deployment of AmI Systems;
comprised by mobile and fixed devices enhanced by MAS
based on IoT technologies
mobile devices can enter or leave anytime.
an independent and embedded MAS representing a smart thing
1.4. ABSTRACT GOAL: AN ARCHITECTURE FOR IoST
17. 17An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.4. ABSTRACT GOAL: AN ARCHITECTURE FOR IoST
Metering Devices
Indoor Air Quality Sensors
Soil Humidity Sensors
IoT
18. 18An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.4. ABSTRACT GOAL: AN ARCHITECTURE FOR IoST
Smart Thing
Smart Thing
Smart Thing
Metering Devices
Indoor Air Quality Sensors
Soil Humidity Sensors
Smart Thing
IoT
ST
ST
ST
ST
Smart Thing
ST
19. 19An Architecture for the Development of AmI Systems Managed by Embedded Agents
• The Smart Thing:
device composed of sensors and actuators
a MAS responsible for controlling the device
able of communicating with other devices apart of the technology employed in them
can enter or leave in the AmI system
self-configurable
able of informing their abilities and utilities to the other devices
1.5. GOALS: SMART THING
20. 20An Architecture for the Development of AmI Systems Managed by Embedded Agents
1.5. GOAL: SMART THING
IoT
22. 22An Architecture for the Development of AmI Systems Managed by Embedded Agents
2. BACKGROUND: JASON + ARGO
ARGO [Pantoja et al., 2016] is a customized
architecture for Jason framework.
• It is a special kind of agent responsible for
controlling hardware devices (ATMEGA, PIC,
Intel, etc.):
• Javino [Lazarin and Pantoja, 2015]
Interface for communication between
microcontrollers and high-level software
with error detection.
• Perceptions Filters [Stabile Jr e Sichman,
2015]
Perceptions Filters reduce the amount of
information perceived by the agent at
runtime.
The Argo
by Lorenzo Costa
23. 23An Architecture for the Development of AmI Systems Managed by Embedded Agents
2. BACKGROUND: JASON + ARGO
The modified
reasoning
cycle of an
ARGO agent!
24. 24An Architecture for the Development of AmI Systems Managed by Embedded Agents
2. BACKGROUND: CONTEXNET
Controller
Gateway
Gateway
Gateway
Processing
node
Core SDDL
(DDS Domain)
.
.
.
.
.
.2G/3G
Network
WiFi
Gateway
Processing
node
.
.
.
GroupDefiner PoA-Manager
Data
Connection
MR-UDP
MR-UDP
MR-UDP
MR-UDP
26. 26An Architecture for the Development of AmI Systems Managed by Embedded Agents
• Available Attributes
Autonomy
The ST should perform independently of any technology outside of its architecture.
The ST should work properly if it has been moved to another AmI system.
The ST should perform its functionalities even if there is no communication available.
Communicability
ST are able of connecting at an IoT based infrastructure.
It should be able of communicating with other devices including ST themselves.
Context-awareness
Data processing can occur in the ST without obligation to send it to a central part.
They can use the result for decision making or send it to any device in the AmI System.
ST are also able of dealing with inference rules for discovering context situations
Self-configurable
ST are capable of setting up itself in an AmI system presenting its functionalities and
how to communicate with it.
3. THE PROPOSED APPROACH: SMART THING (ST)
27. 27An Architecture for the Development of AmI Systems Managed by Embedded Agents
3. THE PROPOSED APPROACH: SMART THING
29. 29An Architecture for the Development of AmI Systems Managed by Embedded Agents
4.1. HYBRID ARCHITECTURE FOR SMART THINGS
• Layered Architecture [Pantoja et al., 2018b]
Hardware:
controls heterogeneous hardware devices
(ATMEGA, PIC, etc.)
connected to sensors and actuators
Serial interface:
uses serial ports for exchanging data
between hardware and software.
High-level programming language
uses a MAS using Jason framework
• Possible Agents in a Smart Thing
Standard [Bordini et al.,2007]
Argo [Pantoja et al., 2016b]
Communicator [Pantoja et al., 2018a]
Augmented [Casals et al., 2017]
30. 30An Architecture for the Development of AmI Systems Managed by Embedded Agents
4.1. HYBRID ARCHITECTURE FOR SMART THINGS
The architecture capable of
controlling different
devices in a Smart Home
scenario.
This architecture is the
same employed in the
Smart Thing.
However, there is no
communication
mechanism available
with other devices!
31. 31An Architecture for the Development of AmI Systems Managed by Embedded Agents
4.1. HYBRID ARCHITECTURE FOR SMART THINGS
SMARTTHING1
SMARTTHING2
It is possible to
provide a
communication
channel using
ContextNet!
The idea is to provide
Smart Things managed by
MAS to control specific
parts of the solution.
And make them capable
of communicating with
each other.
32. 32An Architecture for the Development of AmI Systems Managed by Embedded Agents
A
A C
C
A
MAS A MAS B
ContextNet
[Endler et al.,
2011]
SMART
THING
SMART
THING
4.2. COMMUNICABILITY AND CONNECTIVITY
33. 33An Architecture for the Development of AmI Systems Managed by Embedded Agents
4.2. COMMUNICABILITY AND CONNECTIVITY
The modified
reasoning
cycle of
Communicator
agent!
34. 34An Architecture for the Development of AmI Systems Managed by Embedded Agents
4.2. COMMUNICABILITY AND CONNECTIVITY
Ex.: .sendOut ("788 b2b22−baa6 −4c61−b1bb− 33 01 cff1f5f878 ", achieve, decrease)
preamble field size sender
fffe 04
4 hex 2 hex up to 256 bytes
field size
2 hex
receiver
up to 256 bytes
field size
2 hex
force
up to 256 bytes
field size
2 hex
message
up to 256 bytes
kate 03 bob 07 achieve 08 Hello CN
.sendOut(receiver, illocutionary forces, propositional content)
The format of a message sent using Jason and ContextNet.
Used to identify necessary attributes for both technologies.
35. 35An Architecture for the Development of AmI Systems Managed by Embedded Agents
RECEIVERSENDER
Add the
preamble
Calculate the
size of all
fields
Mount the
message
Send the
message
using
ContexNet
Verify the
preamble
Is Ok?
Discard
message
Verify the size
of all fields
Is Ok?
Mount a
message
Start
sending a
message
Process it as
a Jason’s
Message
End of the
processyes
yes
no
no
4.2. COMMUNICABILITY AND CONNECTIVITY
The process
of sending
and receiving
a message.
36. 36An Architecture for the Development of AmI Systems Managed by Embedded Agents
4.3 EXAMPLE 1
37. 37An Architecture for the Development of AmI Systems Managed by Embedded Agents
4.3 EXAMPLE 2
38. 38An Architecture for the Development of AmI Systems Managed by Embedded Agents
4.3 EXAMPLE 3 (CEFET’s LAB)
40. 40An Architecture for the Development of AmI Systems Managed by Embedded Agents
• This work presented:
an architecture for the development of AmI systems employing the agent approach and
supported by an IoT middleware named ContexNet
it is possible to assemble devices, which have embedded MAS responsible for controlling
sensors and actuators and for communicating with other devices
every device is an independent solution and it is free to enter and leave in the architecture
• Future Works
To extend the architecture for providing organizational constructions.
A Self-configurable Smart Thing using logic programming language.
5. CONCLUSION
41. 41An Architecture for the Development of AmI Systems Managed by Embedded Agents
[1] M. Weiser, “The computer for the 21st century,” IEEE pervasive computing, vol. 1, no. 1, pp.
19–25, 2002.
[2] D. Surie, O. Laguionie, and T. Pederson, “Wireless sensor networking of everyday objects in
a smart home environment,” in Intelligent Sensors, Sensor Networks and Information
Processing, 2008. ISSNIP 2008. International Conference on. IEEE, 2008, pp. 189–194.
[3] H. D. Soares, R. P. de Oliveira Guerra, and C. V. N. de Albuquerque, “Ftsp+: A mac
timestamp independent flooding time synchronization protocol,” in XXXIV Simpósio Brasileiro
de Redes de Computadores e Sistemas Distribuídos - SBRC. Sociedade Brasileira de
Computação, 2016, pp. 820–832.
[4] M. Endler, G. Baptista, L. Silva, R. Vasconcelos, M. Malcher, V. Pantoja, V. Pinheiro, and J.
Viterbo, “Contextnet: context reasoning and sharing middleware for large-scale pervasive
collaboration and social networking,” in Proceedings of the Workshop on Posters and Demos
Track. ACM, 2011, p. 2.
[5] G. Pardo-Castellote, “Omg data-distribution service: Architectural overview,” in Distributed
Computing Systems Workshops, 2003. Proceedings. 23rd International Conference on. IEEE,
2003, pp. 200–206.
[6] M. Wooldridge, An Introduction to MultiAgent Systems. Wiley, 2009
REFERENCES
42. 42An Architecture for the Development of AmI Systems Managed by Embedded Agents
[7] C. Maciel, P. C. de Souza, J. Viterbo, F. F. Mendes, and A. El Fallah Seghrouchni, A Multi-
agent Architecture to Support Ubiquitous Applications in Smart Environments. Berlin,
Heidelberg: Springer Berlin Heidelberg, 2015, pp. 106–11647.
[8] R. H. Bordini, J. F. H¨ubner, and M. Wooldridge, Programming MultiAgent Systems in
AgentSpeak using Jason. John Wiley & Sons Ltd, 2007.
[9] L. Silva, M. Endler, and M. Roriz, “Mr-udp: Yet another reliable user datagram protocol, now
for mobile nodes,” Monografias em Ciência da Computação, nr, vol. 1200, pp. 06–13, 2013.
[10] C. E. Pantoja, M. F. Stabile, N. M. Lazarin, and J. S. Sichman, “Argo: An extended jason
architecture that facilitates embedded robotic agents programming,” in Engineering Multi-
Agent Systems: 4th International Workshop, EMAS 2016, M. Baldoni, J. P. M¨uller, I. Nunes,
and R. ZalilaWenkstern, Eds. Springer, 2016, pp. 136–155.
[11] N. M. Lazarin and C. E. Pantoja, “A robotic-agent platform for embedding software agents
using raspberry pi and arduino boards,” in 9th Software Agents, Environments and
Applications School, 2015.
[12] C. Savaglio, G. Fortino, and M. Zhou, “Towards interoperable, cognitive and autonomic iot
systems: an agent-based approach,” in Internet of Thing
REFERENCES
43. 43An Architecture for the Development of AmI Systems Managed by Embedded Agents
ACKNOWLEDGMENTS
THANK YOU!
QUESTIONS?
pantoja@cefet-rj.br
viterbo@ic.uff.br
amal.elfallah@lip6.fr