Towards the internet of agents: an analysis of the internet of things from the intelligence and autonomy perspective

Recently, the scientific community has demonstrated a special interest in the process related to the integration of the agent-oriented technology with Internet of Things (IoT) platforms. Then, it arises a novel approach named Internet of Agents (IoA) as an alternative to add an intelligence and autonomy component for IoT devices and networks. This paper presents an analysis of the main benefits derived from the use of the IoA approach, based on a practical point of view regarding the necessities that humans demand in their daily life and work, which can be solved by IoT networks modeled as IoA infrastructures. It has been presented 24 study cases of the IoA approach at different domains ––smart industry, smart city and smart health wellbeing–– in order to define the scope of these proposals in terms of intelligence and autonomy in contrast to their corresponding generic IoT applications


Introduction
The Internet of Things (IoT) is a recent paradigm that arose with the aim to control the physical-real world by means of a global network of heterogeneous smart objects interconnected through the Internet (Li, Xu, & Zhao, 2015;Miorandi, Sicari, De Pellegrini, & Chlamtac, 2012).Recent technological advances in the spectrum of the Electronic and Telecommunications have contributed to the consolidation of the IoT and other approaches related to the Future Internet (Issarny, V., 2011) such as Internet of People and Internet of Services.Furthermore, these technological advances have originated the proliferation of a wide range of objects compatible with heterogeneous interfaces of IoT --humanhuman, human-machine, machine-machine--that have allowed the development of many real applications in different areas --education, industry, health, transportation, home--where the human being realizes everyday (Khan, Khan, Zaheer, & Khan, 2012).
Nowadays, experts in marketing commonly offer to clients of IoT smart objects such as smart TVs, smart fridges, smart light bulbs, smart vacuum cleaners, and smart watches.
Nonetheless, the real situation is that these objects are still far from achieving the borders of the natural intelligence.Against this background, the scientific community has demonstrated a special interest in the process of integration of IoT technologies and software (Mzahm, Ahmad, & Tang, 2016;Savaglio, C., 2017).Thus, it arises a new paradigm proposed by Yu et al. (2013) known as the Internet of Agents (IoA) (H.Yu, Shen, & Leung, 2013).In this way, some issues such as the intelligence, interoperability and autonomy level (Savaglio, Fortino, & Zhou, 2017), and the end-user participation in tasks related to the personalization of the global behavior of an IoT network (H.Yu et al., 2013) are improved thanks to the capabilities inherent to agents, such as autonomy, learning, social ability, adaptability, collaboration, mobility and proactivity (Franklin & Graesser, 1996).
The aim of this work is to analyze the main domains, areas and subareas of application of the IoT approach in order to pose real cases of IoT applications adopting the IoA paradigm.Therefore, our contribution in this research field is the description of practical IoA systems oriented to solve problems where humans daily interact for carrying out both, work and daily life activities by means of the modelling of the IoT based on agents.This paper is organized as follows.Section 2 presents a general vision of the IoA paradigm, its main goal and the most suitable models proposed to integrate the agentoriented technologies and IoT networks.In Section 3, the most relevant domains, areas, and subareas of application of the IoT are detailed.Based on each detailed sub area where the IoT has been applied, a practical case of IoT application and its related application adopting the IoA approach is formulated in Section 4. Finally, the conclusions and future works are outlined in Section 5.

The Internet of Agents Approach
One of the most important challenges that the IoT confronts to date is the management of the heterogeneity of the objects connected to these types of infrastructures.Many of these objects rely on heterogeneous communication protocols and consequently, conflicts in aspects related to the integration of heterogeneous IoT networks are originated.This is the main reason why the management of mechanisms of intelligence and autonomy is affected and therefore, the implementation is not a trivial task from the point of view of the hardware level (Atzori, Iera, & Morabito, 2010).However, an alternative to solve this concern is the use of software agents integrated with IoT technologies (Savaglio et al., 2017).Indeed, the process of linking a software agent to each IoT object enables it to establish communication processes through the FIPA-ACL (FIPA Agent Communication Language) standard (FIPA, 2002) and consequently, it is possible to build distributed, autonomous and heterogeneous IoT systems.In short, agents are the better current technologies to create smart objects than other approaches such as service-orientation and object-orientation (Savaglio et al., 2017).
The integration of both agents and IoT is one of the antecedents because the IoA approach arose.In this line, two important approximations that directly refer to this merging process are presented.The first one proposes the IoA as an evolutionary process of the IoT where the participation of the end-user is considered as necessary in order to adapt the behavior of the IoT network through the personalization of specific agents at runtime (H.Yu et al., 2013).By contrast, in the second point of view, the IoA is seen as an intelligent ecosystem of agents that manages the resources associated with the IoT objects.To achieve this level of cognition, software agents that employ semantic contracts are introduced into IoT infrastructures.In this way, issues such as context, social circles, services, and IoT resources are managed (P.Pico-Valencia & Holgado-Terriza, 2016).Additionally, the authors assert that using these components in a compact and suitable way, the semantic descriptors included within the agents contracts are the input to agents can perform reasoning processes and consequently, the objects connected within IoT networks become really smart objects as Fortino et al. (2014) proposed (Fortino, Guerrieri, Russo, & Savaglio, 2014).Likewise, the use of agents that discover resources from knowledge represented as ontology enables objects of IoT ecosystems the capability to act autonomously with heterogeneous objects.Thus, the semantic interoperability is achieved by IoT systems (Savaglio, C., 2017).
Another significant approach regarding the IoA, but not defined directly under this name is the proposal of Mzahm et al. (2013).In their work, they formulated the concept called Agent of Thing as a high-abstraction unit from which is feasible that an IoT object can operate smarter and more autonomous with other objects independently of both its degree of heterogeneity and communication protocol supported (Mzahm, Ahmad, & Alicia Y.C.Tang, 2013).
Additionally to the previously described approaches, in the IoA field has also been published other approaches focused on describing integration models of agents and IoT.Among the most relevant approximations is the model proposed by Fortino et al. (2017) for building smart objects based on agents (Savaglio et al., 2017).On the other hand, in Kamiski et al. (2016) and Nieves et al. (2017) are presented the modeling of IoT scenarios also employing software agents (Kaminski, Murphy, & Marchetti, 2016;Nieves & Andrade, Daniel, 2017).Finally, Alexakos et al. (2015) and Leong et al. (2014) addressed their research for managing IoT ecosystems by means of Multi-agent Systems (MASs) (Alexakos & Kalogeras, 2015;Leong & Lu, 2014).However, the integration of applications developed under these paradigms is still a challenge that the IoA must solve.

Applications domains of the IoT
In the scope of the IoT, some surveys and systematic reviews in which the analysis of issues such as definitions, terminology, key features, architectures, standards, frameworks, middleware, limitations, trends and challenges have been proposed.Additionally, these literature reviews also include a special section where the application domains of the IoT approach are defined (Al-Fuqaha, Guizani, Mohammadi, Aledhari, & Ayyash, 2015;Atzori et al., 2010;Borgia, 2014;Li et al., 2015).Nonetheless, most researchers limit their surveys listing a little group of areas where this paradigm may be applied.Unlike these researchers, Borgia (2014) presents a wider taxonomy as is shown in Figure 1, where 24 subareas of application in the industry, health wellbeing, and smart city domain are encompassed.
The industrial domain of the Borgia's taxonomy contemplates both areas and subareas related to the practical application of the IoT in the automation of processes carried out by humans in order to create a product or provide a service (Kaur & Sood, 2015).On the other hand, the smart city domain includes some areas linked to the implementation of technologies focused on providing better life conditions for the inhabitants of big metropolis (Dameri & Benevolo, 2015).Thus, they will be able to optimize their time, and the governments may manage and plan the public resources and services more efficiently and effectively.Finally, the last application domain considered by Borgia (2014) includes the health wellbeing domain which is oriented to automate tasks focused on real-time monitoring of healthcare parameters of sick and elderly people, and people with special capabilities and disabilities in order to provide them a better quality of life at both, individual and group level (Jara, Zamora-Izquierdo, & Skarmeta, 2013).From the IoT to the IoA approach Advances in the Microelectronic, Telecommunications and Information Systems have contributed to the current real world is connected and controlled by pervasive IoT sensors and actuators at every instant and everywhere.The necessities of the modern society with respect to the IoT are not only focused on the partial or total automation process from objects connected within IoT networks, but it is also trending to control different real scenarios applying smart behaviors with the less human intervention through software agents.In order to show the application of the IoA, we have been adopted the Borgia's taxonomy to present a set of 24 proposals of current IoT applications already developed by scientific community and present their equivalent application by adopting the philosophy of the IoA approach.

IoA in the smart industry domain
Next, nine practical IoT and IoA applications in the industrial processing (a-c), agriculture and breeding (d-f), and logical and product lifetime management (g-i) are presented.It was done by applying a string search composed by (("IoT" or "Internet of Things") and subarea of application) for each subarea of the Borgia's taxonomy listed in Figure 1.

a. Real-time vehicle. IoT: A vehicle with GPS
navigation that provides information regarding the road state and the traffic at real-time according a destination specified (He, Yan, & Xu, 2014).IoA: A smart vehicle that provides optimum routes according to the road states and the weather prediction.This suggestions are possible after an intelligent agent communicate on the one hand, with external agents which predict the weather during the time of the travel and on the other hand, with agents that access to the platform of reports of roads that manage the transport Ministry.In addition, if the driver has an accident or the car has a fail during the trip, the agent can request first aids to the 911 Service or contact with the contracted insurer in order to ask for assistance.In both cases, the agent will provide contextual data such as geolocation, time, and description of the incidence.
b. Luggage management.IoT: Real-time tracking of airport luggage using mobile applications that inform the arrival of the luggage to the owners (Ghazal, Ali, Haneefa, & Sweleh, 2016).IoA: Smart real-time tracking of airport luggage that communicates the owner that the luggage is ready to be picked up.In addition, the agent is capable to monitor the tracking of the luggage if it lost.

c. Monitoring industrial plants.
IoT: Monitoring industrial processes and tracking the physical plant components by using sensors during and after operating (Ramakrishnan & Loveleen, 2015).
IoA: Smart recommendation system to carry out the preventive maintenance of the industrial plant based on the inventory of the lifetime of the elements installed and the environmental conditions where they operate.In addition, agents are capable to activate the protocol of evacuation when an emergency event has occurred and calculate the evacuation routes according to the location and the type of damage.
d. Irrigation monitoring.IoT: An irrigation system to open gardens based on the real-time controlling of soil moisture (Kranthi Kumar & Srenivasa Ravi, 2016).IoA: A smart irrigation system for opening gardens based on sensors and meteorological data (e.g., humidity, temperature).The agents are capable to communicate with external agents specialized in predict the weather and based on these information the specific agent decide if perform the irrigation or take advantages of the rains.In this way, the agent optimize the quantity of water used.However, the agent will take into account the specie of each plant and its size to provide the suitable quantity of water.Thus, the irrigation system helps to the plants of the gardens grow in better conditions.
e. Animal tracking.IoT: Monitoring of wildlife based on cameras and tracking to provide data regarding the movements, current position, and the behavior of the a specific species of animal in their natural habitat (Rosales, Golubovic, Krintz, & Wolski, 2017).IoA: Smart remote monitoring of the location of the animals in a zoo detecting changes and anomalies in the common behavior in each one of the species that inhabit within the zoo.The intelligent agent can analyze the current behavior with the historical behavior of each specific animal such as its movements and sounds emitted in order to alert to the veterinary when an animal is sick and needs assistance.In this way, the technology can avoid the dead of the animals.
f. Farm registration management.IoT: Automating the collection of environmental, soil, fertilization, and irrigation data to improve the farm productivity (Jayaraman, Yavari, Georgakopoulos, Morshed, & Zaslavsky, 2016).IoA: Smart automatic collection of soil parameters, weather and meteorological data that are input to an intelligent which recommends irrigation and uses of fertilizer.
g. Identification of material.IoT: Identification of dangerous goods in container yards to monitor environment parameters in chemical labs or industrial plants (Ding, Chen, & Li, 2016).IoA: Smart identification of dangerous goods and PICO-VALENCIA, HOLGADO-TERRIZA, HERRERA-SÁNCHEZ, AND SAMPIETRO meteorological data (e.g., humidity, environmental temperature, CO 2 ) in order to optimize the report of air quality monitoring by measuring pollution levels through autonomous drones for specific outdoor environments.These drones in turn can generate prediction reports based on intelligent agents that use the stored behavior history information to constitute a decision tree focused on the risk assessment for an external environment under study.
k. Video surveillance.IoT: Urban speeding traffic monitoring system using the Fog Computing paradigm (N.Chen et al., 2016).IoA: Smart retime measurement and analysis of traffic flows per hour that determines the fastest roads and optimum routes in the city.The use of intelligent agents that implement the theory of graphs (and their respective algorithms such as Floyd or Dijkstra) in combination with the real-time readings of the status of the adjacency matrix of possible routes, provide an optimal platform for the management and control of priorities and anomalies, allowing to obtain a system of recommendation and visualization of traffic flow more precise.
l. Emergency plan.IoT: Modeling the spatiotemporal mobility of indoor people to determine and relieve the congestion of corridors and exits (L.Chen, Member, & Chung, 2017).IoA: Smart monitoring the remote location and model the spatiotemporal mobility of all people to find a dedicated path with the shortest escape time for each group of people, minimizing total evacuation time and adapting the evacuation route according the mobility necessities of the user (e.g., children, young, or elderly people).Under this spatiotemporal model, the current position of each person within the facilities can be represented as a node within a minimum spanning tree, which is obtained from a graph with possible routes which can grow dynamically depending on the number of options of possible escape and adjacencies that are generated as a result of the data obtained in real time, based on mobility needs.
m. Energy maintenance.IoT: Providing energyefficient optimization and scheduling of IoT-based smart cities (Ejaz, Naeem, Shahid, Anpalagan, & Jo, 2017).IoA: Smart recommendation system to perform the decisions regarding energy devices (when, why, and how to connect) according to the contextual background based on cognitive entities.This recommendation system allows the generation of a state prediction report, through the compilation of a log of anomalies and a history of behaviors, under a data structure based on an adaptive network and the generating smart preventive notifications.
control of emergency situations (e.g., explosions, gas emission, chemical leaks and spills) that can be produced in chemical labs or industry applying the contingency and auto protection plans accordingly to the specific condition of the people.
The agent is capable to analyze the situation and act according the defined protocol, this is, the agent will call the fire department if an explosion has occurred, or the agent will activate the alarm system according the event, and in addition, the will provide details that help authorities to clear the main reasons for the accident.
h. Inventory.IoT: Real-time location of the pieces that compose an track inventory (Ramakrishnan, Gaur, & Singh, 2016).IoA: Real-time tracking of movements of the pieces that take part of an inventory since their origin until their destination.
The intelligent agent is capable to emit alert when the pieces are in an inadequate location and negotiating with external agents to provide alternative routes in order to continue the process as soon as possible.
i. Shopping operation.IoT: A supermarket shopping guide system that allows customers, the product identification and acquirement information (Rong Chen, Li Peng, & Yi Qin, 2010).IoA: A smart shopping guide system that gives information of the products and it also recommends customers products based on their nutritional information in order to maintain a personal healthy diet.In addition, the assisting agent of the user is capable to communicate with the agent of his/her smart fridge and suggest the client regarding products that are necessary to be bought.On the other hand, the agent can also assist the client when a specific product is on sale with discount or is fresher in other supermarket located near from the client is.In this way, the IoA supports the family economy.

IoA in the smart city domain
In regards to the smart management of the services in smart cities, next, twelve applications are detailed based on the IoA approach to cover the public safety and environment monitoring (j-l), smart homes and buildings (m-o), and smart mobility and smart tourism (p-r) areas.The method to recover the IoT applications was the same as the followed for the industrial domain.
j. Environmental monitoring.IoT: Monitoring important environmental parameters such as temperature, humidity and CO 2 within one smart city (Shah & Mishra, 2016).IoA: Smart monitoring system based on heterogeneous sensors connected to different networks that gather and n.Home video surveillance.IoT: Monitoring system which includes motion detection algorithm implemented along with some alarming features and based image processing unit with internet connectivity (Virendra & Ukunde, 2016).IoA: Smart monitoring system which includes motion detection based on local sensors to detect the presence of any moving object.In addition, real-time image reading and facial recognition is performed to the consultation and comparison based on an immediate search within a police database, using a network that implements an ontology guided by an intelligent agent to detect possible behaviors based on suspicious human movements.
o. Comfortable living.IoT: Providing comfort to inhabitants of smart-homes (Herrera Quintero, 2005) based on parameters (e.g., temperature, humidity) measured by sensors (P. A. Pico-Valencia & Holgado-Terriza, 2016).IoA: Providing smart comfort to inhabitants of smart-homes based on sensors, data of prognostic weather, and the behavioral history of the inhabitants of the smart home.The agent learn the routines of the inhabitants and provide comfort trying to turn on the HVAC system when the energy is cheaper.In this way, the smart house owner will live comfortable and paying cheaper bills of electricity.
p. Traffic management.IoT: Low cost real-time traffic management system to provide better service by deploying traffic indicators to update the traffic details instantly that helps to low cost vehicle detecting sensors are embedded in the middle of road for every 1000 meters (Rizwan, Suresh, & Babu, 2016).IoA: Real-time smart traffic management system to provide better service by deploying traffic indicators to update the traffic details instantly based on data from global/local sensors that are embedded in the middle of road, sending for big data analytics to analyze the traffic density through predictive analytics agents.It is also possible to incorporate a system for detecting and recommending possible available parking spaces, by means of a real-time mapping of the vehicle movement reading and the change of status of the parking spaces, provided by a network of notifications managed manually by the users, along with an smart platform (sensors, cameras) that provides a constant review of access to these sites.
q. Road condition monitoring.IoT: Targeting pothole detection and mapping as a use case and the final application shall have classifiers for rough roads, bumps as well as potholes, to have a more complete picture of the roads (Ghose et al., 2012).IoA: Smart real-time alert system which shows a view of the road conditions map of a city, that provide geolocation data, targeting pothole detection and mapping, classifiers for rough roads, bumps as well as potholes.Road conditions can also be obtained by direct scanning of sensors located on the front or bottom of the vehicles, which model and map in real time the structure and shape of the road, providing these data to the creation of graphics and 2D / 3D visualization maps that allow the prediction and recommendation of actions for the drivers, together with the respective smart alerts.
r. Tour guide services.IoT: E-Tourism application recommends the attractions in which a tourist is interested based on the preferences and the current situation of the visited place (Smirnov, Kashevnik, Ponomarev, Shchekotov, & Kulakov, 2016).IoA: Smart tourist guide application to provide the tourist a list of attractions recovered from their preferences, duration of the visit and the current geolocation of the visitor.In addition the agent intelligent is capable to calculate the shortest route and also establish communication with external agents in order to reserve/buy the tickets for the payable places selected by the visitor such as museums, zoos, theaters, concerts, hostel reservations, transportation, city tour and stadiums.

IoA in the smart health wellbeing domain
Finally, six practical applications based on the IoA approach to carry out the medical and healthcare (s-u) and independent living (v-x) are detailed.The primary papers analyzed in this field were also recovered applying the same search method used by the previous subareas of the Borgia's taxonomy.
s. Monitoring medical parameters.IoT: Measurement of the patient's glucose level through glucometer to control and analysis the disease state (Lanzola, G., 2016).IoA: Smart measurement of the patient's glucose level informing the condition to the patient, and his/her family and doctor in order to act preventively before his/her state is worsened.
In addition, the intelligent agent analyzes the geolocation of the patient, recommend the nearest hospital and also requests and pays an Uber taxi to move as faster as possible if necessary.
t. Medical equipment tracking.IoT: Monitoring and controlling the movements of demented patients indoor centers based on RFID tags to avoid the contact with dangerous scenarios (Maged & Berry, 2012).IoA: An intelligent agent embedded in a robot is enabled to monitor and track the movements of demented patients indoor a care center.In addition, the robot can interact PICO-VALENCIA, HOLGADO-TERRIZA, HERRERA-SÁNCHEZ, AND SAMPIETRO

Conclusions
The IoT arose at the end of the nineties.However, the models for the integration of agents and the IoT technologies have been recently presented in the last five years.Therefore, the IoA approach is still an approach in process of consolidation which needs the formulation of a standard reference architecture focused on managing components such as semantic, adaptation at runtime easily by end-users, intelligence based on heterogeneous techniques (e.g.swarm (Muñoz et al., 2008) and Artificial Intelligence (Schwabacher & Goebel, 2007)) and interoperability among heterogeneous agents.Although some of these issues have been covered by MASs, agents require to manage the interoperability with heterogeneous MASs.Then, we believe that the IoA approach must trend towards the Linked Open Data approach in order to provide agents described at global level using standard semantic descriptors which allow them to act socially in global ecosystems and not only in specific platforms.In this way, platforms of IoT developed for the management of smart cities, industry, healthcare and any other can be collaborate to provide a more accurate service for users.
A wide diversity of sensors and actuators compatible with the interfaces handled by the IoT has allowed that this approach is ranked as one of the emergent technologies related to the Future Internet.With regard to IoT application domains, we have based our study on the taxonomy of Borgia et al. (2014) because it analyzes the application issue more extended than any other literature review proposed to date.Thus, we analyzed 24 practical applications developed in the IoT domain and we have proposed an example of the equivalent application adopting the philosophy of the IoA paradigm.In this way, we present evidences that the Future Internet is not only oriented to adopt IoT to solve problems in industry and daily life, but also in the inclusion of agents which coordinate the action performed in IoT ecosystems intelligently, autonomously and in an interoperable way (Savaglio, C., 2017).
The deployment of smart IoT networks is not a trivial task (Fortino, Gravina, Russo, & Savaglio, 2017;Fortino, Guerrieri, Russo, & Savaglio, 2016).The IoT services provided for users must be performed taking advantages of heterogeneous data and public resources available within various IoT ecosystems.Nonetheless, the achievement of this goal is difficult to be directly performed by physical devices.The inclusion of entities such as software agents within IoT enables managing the communications among heterogeneous devices, ability to employ semantic knowledge and performing simplex and complex reasoning processes as a human should do.Now, it is important to highlight that manufacturers of IoT objects are mostly physical devices of black box type that hind the integration of software agents directly within the objects.We think that a future line of production should create IoT objects that allow embedding any software components in the own device.This could be decisive for the IoA approach with the patient employing natural language in order to analyze his/her capability to answer and determine better his/her clinical state.Moreover, the agent can assist the walks of the patient on the yard recommending safe routes according patient's individual conditions and also sending alarms when the location is near to dangerous scenarios.
u. Smart hospital services.IoT: Diagnosis system of patients based on complete historical data integrated in tags (L.Yu, Lu, & Zhu, 2012).IoA: Smart diagnosis and treatment based on the identification cards that contain all historical data of the patient independent of the hospital where he/ she has been diagnosed before and not only with the data of the current medical consultation.Agents search which hospitals located near the patient have available quotas to the specialist doctor and then the patient gives consent to request and pay for a quota according him/her agenda.
v. Elderly assistance.IoT: Giving basic services to elderly sick people that live alone are comfortable and take the medicine according the timetable determined by the doctor (Al-Shaqi, Mourshed, & Rezgui, 2016).IoA: Giving comfort at indoor home for elderly sick people according their health condition.The inclusion of intelligent agents provide temperature and light comfort based on weather conditions.In addition, the agent is enabled to report failures occurred in the components of the house, paying bills of public services online, buying foods and medicine online, controlling the timetables of medication, and notifying to family or medical center if vital signs of the person are not normally.
w. Social inclusion.IoT: Recommendation of new contacts for disabled people according their geolocation (Al-Shaqi et al., 2016).IoA: The inclusion of intelligent agents offers gamified services to disabled people in a specific geographic location to participate in culture, learning and entertainment activities, giving the opportunity to apply their own skills and training them in a personalized way in order to improve their weaknesses.
x. Individual well-being.IoT: Giving a music therapy session for a person measuring body parameters (e.g., heart rate, blood pressure) in order to reduce the stress level (Pingle, 2016).IoA: Intelligent agents which analyze both the vital signs, the emotional state and the daily routine of the person in order to recommend the suitable therapy sessions combined with sports routines, advices of entertainment events or suggest visiting the doctor if the stress level aggravates.
to become strengthened and extended as a consolidated paradigm for the design of IoT cognitive systems.

Figure 1 .
Figure 1.Borgia's taxonomy to organize the domains of application of the IoT.Source: Borgia, 2014