Personalization of the Workplace through a Proximity Detection System Using User Profiles

This paper presents a prototype for adapting workplaces for disabled people. The effective integration of people with disabilities in the workplace is a huge challenge to society, and it presents an opportunity to make use of new technologies. The project, called AZTECA, aims to develop new tools that contribute to the employment of groups of people with visual, hearing, or motor disabilities in office environments. These different tools for the disabled people have been modelled with intelligent agents that use Web services. These agents are implemented and deployed within the PANGEA platform so PANGEA conforms the skeleton of the system and allows to develop an integral system. The main target of prototype presented in this work is the people detection using ZigBee technology and the personalization of the workplace according to the user's disability.


Introduction
Due to the advance of technologies and communications, intelligent systems have become an integral part of many people's lives, available products and services have become more varied and capable, and users expect to be able to personalize a product or service to meet their individual needs, no longer accepting a "one size fits all" solution.Personalization can range from simple cosmetic factors, such as custom ring tones, to the complex tailoring of the presentation of a shopping website to a user's personal interests and their previous purchasing behavior [1].These innovative techniques are expected to expand to a wide range of fields.One of the segments of the population expected to benefit with the advance of personalized systems, which will contribute to improve their quality of life [2], is people with disabilities [3].It is important to study the different procedures that facilitate the adaption of these systems to the disability of each user, allowing them to experience improvement in their quality of life and in their work production.
There are currently a number of barriers that make it difficult for persons with disabilities to be incorporated into the workforce and, consequently, for businesses to include them among their personnel.The greatest challenges for incorporating these individuals into the workforce are personal autonomy (mobility), information processing (language, knowledge of numbers, learning tasks, and spatial orientation), attitude toward work (responsibility, attention, rhythm, organization, work relationships, security, interest, etc.), emotional control, interpersonal relationships, and selfdetermination.It becomes necessary, therefore, to provide new tools that can eliminate these barriers and facilitate the integration of this group of individuals into the workforce.The solutions that can make it possible to reach these goals should consider the type and degree of disability, since the objectives for the integration of these individuals are conditioned by the special needs of each type of disability.
In the near future, public and private companies will be provided with intelligent systems specifically designed to facilitate interaction with human users.These intelligent systems will be able to personalize the services offered to the users according to their specific profile.It is necessary to improve the services provided as well as the way to offer them [4].Technologies such as Multiagent Systems (MAS) and Ambient Intelligence based on mobile devices have been recently explored as a system of interaction with dependent people [5].These systems can provide support in the daily lives of dependent people [6].
This paper presents a multiagent based proximity detection prototype, specifically developed for a work environment, which can facilitate tasks such as activating and personalizing the work environment; these apparently simple tasks are in reality extremely complicated for some people with disabilities.Each user has a unique profile which identifies its disability and adapts its workplace with all the tools needed.
The rest of the paper is structured as follows.The next section introduces the technologies for localization systems and presents open MAS.Section 3 presents the proximity prototype system and the agent platform used for its design and integration.Section 4 explains the case study and, finally, in Section 5 some conclusions and future work are presented.

Background
This section will review different existing localization technologies, highlighting those that enable indoor tracking.Different open MAS technologies that can integrate and process data received from location systems will then be analyzed.

Technologies for Localization Systems.
Localization systems can identify and locate different elements within a specific environment.Localization systems are composed of two elements: sensors and tags.The tags are found in the elements to be located, while the sensors are usually placed in fixed location, thus generating a sensor network that can locate different devices.
There are currently different localization systems based on the type of technology used.Among different available alternatives are the following.
(i) GPS: the operation of a real-time GPS (Global Positioning System) localization system basically consists of a set of satellites (fixed transmitters) that continually send information, which is gathered by mobile devices (receivers).These receivers calculate position based on the satellite coordinates, meaning that the more satellite references available, the greater the precision in calculating location.A minimum of 3 references are required in order to calculate position.
(ii) GSM/GPRS: mobile phone operators also offer localization services.They function by using the same network of antennas provided by the telephone service.
In this case, the localization can be made through the mobile device or the service provider since both the antennas and the devices are at once transmitters and receivers.The localization is calculated by using parameters such as signal receive time, angles of incidence, and triangulation of signals or relevant cells.
(iii) RFID: Radio Frequency Identification Technology (RFID) [7] is another alternative used to develop realtime localization systems.It functions through a network of readers and RFID tags.The readers transmit a continuous RF signal which is received by the tags, which in turn respond to the readers by sending a numerical identification.In this type of localization process, each reader covers a specific area through its RF signal (reading field).When a tag passes through the reading field of a particular reader, the tag is said to be in its zone.An RFID system is essentially composed of four elements: (1) tags, (2) readers, (3) antennas and radios, and (4) processing hardware [7,8].The tags or RFID chips can be passive (without batteries), in which case they are referred to as transponders [7].Transponders are significantly cheaper and are much smaller in size than active chips (with batteries), but they have a much smaller range.The primary applications of RFID technology are found in industrial, transport, and other fields, although its application in other sectors, including medicine, is increasingly important [7][8][9].
(iv) Wi-Fi: localization systems based on Wi-Fi [10] use devices from wireless networks to calculate position, a mesh of nodes (transmitters and fixed receivers) that function as a reference for mobile nodes.The system calculates the position of the mobile nodes using the signals received by the fixed nodes.There are many techniques for processing these signals and determining position, including symbolic or signpost localization, triangulation, trilateration, and heuristics.Localization based on Wi-Fi networks has three primary components: (1) a tag that sends and receives signals using the 802.11 standard [11], (2) a WLAN infrastructure formed by access points and controllers, and (3) a localization engine consisting of software capable of interpreting the information provided by the Wi-Fi infrastructure and the tags to provide data relative to the location of the user [12].
(v) Another technology that works, as does Wi-Fi, in the 2.4 GHZ ISM band, is the well-known Bluetooth standard.It can be used to build RTLSs, mainly based on RSSI measurements; like Wi-Fi, it also uses locating techniques such as signpost, fingerprinting, or trilateration.The greatest inconvenience, which invalidates this technology for our proposal, is the difficulty in building WSNs made up of more than 8 devices [13].
(vi) ZigBee is a low-cost, low-power consumption and two-way wireless communication standard that was developed by the ZigBee Alliance [14].The ZigBee standard allows operating in the ISM (industrial, scientific, and medical) band, which includes 2.4 GHz almost all over the world.The underlying IEEE 802.15.4 standard is designed to work with low-power limited resources nodes [15].ZigBee adds network and application layers over IEEE 802.15.4 and allows more than 65.000 nodes to be connected in a mesh topology WSN.Another standard to deploy WSNs is Bluetooth [16].This standard also operates in the 2.4 GHz band and allows creating star topology WSNs of up to 8 devices, one acting as master and the rest as slaves, but it is possible to create larger WSNs through devices that belong simultaneously to several WSNs.However, it is not easy to integrate devices from different technologies into a single WSN [17].The lack of a common architecture may lead to additional costs due to the necessity of deploying interconnection elements amongst different WSNs.
The most appropriate technologies for indoor localization are based on ZigBee and Wi-Fi since the satellite signals required by other technologies, such as GPS, limit their use to outdoors.Other networks such as GSM can locate, but their high margin of error prevents their consideration.The advantage of Wi-Fi is the reduced cost of the infrastructure and the existence of mobile terminals that the users have, which support the technology.The precision of Wi-Fi is inferior to ZigBee, but the cost is also much less.Given its excellent precision and the ability to be deployed quickly and easily, ZigBee was chosen for the prototype.It is designed to be embedded in consumer electronics, home and building automation, industrial controls, PC peripherals, medical sensor applications, toys, and games; it is intended for home, building, and industrial automation purposes, addressing the needs of monitoring, control, and sensory network applications [14].
Our prototype must allow precise and efficient indoor locating because computers are very close to each other, for which reason the Real-Time Locating Systems (RTLS) model was chosen.The infrastructure of a Real-Time Locating System contains a network of reference nodes called readers [18] and mobile nodes known as tags [18,19].Tags send a broadcast signal which includes a unique identifier associated to each tag.The readers then obtain the identifier as well as specific measurements of the signal.These measurements give information about the power of the received signal (e.g., RSSI), its quality (e.g., LQI, Link Quality Indicator), the Signal to Noise Ratio (SNR), or the Angle of Arrival (AoA) to the reader, amongst many others.These signals are gathered and processed in order to calculate the position of each tag.
RTLS can be categorized by its type of wireless sensor infrastructure and by the locating techniques used to calculate the position of the tags.This way, there is a range of several wireless technologies, such as RFID, Wi-Fi, UWB (Ultrawide Band), Bluetooth, and ZigBee and also a wide range of locating techniques that can be used for determining the position of the tags [20].

Open MAS.
There are many different platforms available for creating multiagent systems that facilitate working with agents [21][22][23][24]; however our aim is to have a tool that allows users to create an increasingly open and dynamic multiagent systems.The architecture proposed within the framework of this project assumes a significant and objective improvement over existing systems for the integration of people with physical disabilities into the work force [25,26].The European project CommonWell [27] proposes an architecture to support European citizens with limited mobility or a hearing or visual impairment.However, it focuses on the elderly and does not incorporate either advanced adaptive interfaces or identification and localization elements.The European project DTV4A11 [28] proposes the use of digital television to integrate persons with disabilities, but it relies on the television as the only mechanisms to provide services.The European project MonAMI [29] proposes a global framework to offer services to the elderly and handicapped, but it focuses on providing these individuals with a more independent lifestyle.At a national level, the DISCATEL project [30] aims to incorporate persons with disabilities to contact centers or allow them to telecommute from their home or residence.The INREDIS project (Interfaces for the Relationship between People with Disabilities [31]) is a CENIT project headed by Technosite, which is investigating the concept of using personal devices with interoperability and ubiquitous characteristics to strengthen accessibility of persons with disabilities.However, this project is based on personal devices and not an integral architecture capable of offering personalized services.The eVia platform has the INCLUTEC [32] study group, which is oriented toward analysis, and promotes the use and development of mobility mechanisms, such as assisted wheelchairs and specialized vehicle, alternative and enhanced communication, manipulation, and cognition.
All previous platforms have very general objectives and in many cases include a high theoretical component.For the most part, the solution is focused as much on the collective group of the elderly as on the social integration of persons with disabilities.The AZTECA project develops the PANGEA platform whose novelty is a dynamic and adaptable architecture capable of integrating new services for incorporating persons with visual, hearing, or mobile impairments into the workforce.In conjunction with PANGEA, AZTECA contains an innovative solution with a high technological component that, unlike any architecture known to exist at this point, is capable of integrating adaptive interface systems, identification and localization systems, indoor guiding, and training and workplace virtualization systems using the TV and the internet for the integration of persons with physical disabilities into the workforce.This platform was used to build the base architecture of an integral support systems for disabled persons in the workplace.

System Overview
The proposed proximity detection system is based on the detection of presence by a localized sensor called the control point (where the ZigBeeReaderAgent is deployed), which has a permanent and known location.Once the ZigBee tag carried by the person has been detected and identified, its location is delimited within the proximity of the sensor that identified it.Consequently, the location is based on the criteria of presence and proximity, according to the precision of the system and the number of control points displayed.Under normal conditions, the distance between transmitter and receiver is inversely related to the RSSI value measured in the receiver; in other words, the greater the distance, the lower the signal strength received.This is the most commonly used parameter among RTLS.
As shown in Figure 1, the tag located between two readers will be recognized by each reader with different RSSI levels.
RSSI levels provide an appropriate parameter for allowing our system to function properly.However, variations in both the signal transmission and the environment require us to define an efficient algorithm that will allow us to carry out our proposal.This algorithm is based on the use of a step or measurement levels (5 levels were used).The tags default to level 0. When a user enters the range or proximity indicated by an RSSI level of −50, the levels are activated as shown in Figure 2.This means that the user is close to a reader tag and the level is increased by one unit.While the values received are less than the given range, each measurement of the system activates a level.However, if the values received fall outside the range, the level is deactivated.When the maximum number of levels has been activated, the system interprets this to mean that the user is within the proximity distance of detection and wants to use the computer equipment.Consequently, the mechanisms are activated to remotely switch on both the computer and the profile specific to the user's disability.
Reaching an initial level of 0 means that the user has moved a significant distance away from the workspace, and the computer is turned off.
The system uses a LAN infrastructure that uses the wakeon-LAN protocol for the remote switching on and off of equipment.Wake-on-LAN/WAN is a technology that allows a computer to be turned on remotely by a software call.It can be implemented in both local area networks (LAN) and wide area networks (WAN) [33].It has many uses, including turning on a Web/FTP server, remotely accessing files stored on a machine, telecommuting, and, in this case, turning on a computer even when the user's computer is turned off [34].The Wake-On-LAN protocol defines a package called "Magic Package" shown in Figure 3.This package contains  the MAC address of the machine that is desired to switch on.The Magic Package is sent by the link data layer to all the NICs (Network Interface Controllers) using the address of the network diffusion.The frame is formed by 6 bytes (FF-FF-FF-FF-FF-FF) followed by 16 repetitions of 48 bits that represent the MAC address.The frame has 102 bytes in total.
This proximity detection prototype is integrated within an open MAS that includes all the agents and information needed to create an integral system for helping disabled people in the workplace.
Open MAS are systems in which the structure is able to change dynamically.Its components are not known a priori, change over time, and may be heterogeneous.The open MAS must allow the participation of heterogeneous agents with different architectures and even languages [35].This makes it difficult to rely on the agents' behavior and necessitates controls based on societal norms or rules.The open MAS was created using PANGEA.

Description of PANGEA.
PANGEA is a service-oriented platform that allows the implemented open MAS to take maximum advantage of the distribution of resources.To this end, all services are implemented as Web services.Due to its service orientation, different tools modeled with agents that consume Web services can be integrated and operated from the platform, regardless of their physical location or implementation.This makes it possible for the platform to include both a service provider agent and a consumer agent, thus emulating client-server architecture.The provider agent (a general agent that provides a service) knows how to contact the Web service, while the remaining agents know how to contact with the provider agent due to their communication with the ServiceAgent, which contains information about services.
Once the client agent's request has been received, the provider agent extracts the required parameters and establishes contact.Once received, the results are sent to the client agent.Using Web services also allows the platform to introduce the SOA (Service-Oriented Architecture) [36] into MAS systems.SOA is an architectural style for building applications that use services available in a network such as the web.It promotes loose coupling between software components so that they can be reused.Applications in SOA are built based on services.Using PANGEA, the platform will automatically launch the following agents.
(i) OrganizationManager: this agent is responsible for the actual management of organizations and suborganizations.It is responsible for verifying the entry and exit of agents and for assigning roles.To carry out these tasks, it works with the OrganizationAgent, which is a specialized version of this agent.
(ii) InformationAgent: this agent is responsible for accessing the database containing all pertinent system information.
(iii) ServiceAgent: this agent is responsible for recording and controlling the operation of services offered by the agents.
(iv) NormAgent: this agent ensures compliance with all the refined norms in the organization.
(v) CommunicationAgent: this agent is responsible for controlling communication among agents and for recording the interaction between agents and organizations.
(vi) Sniffer: it manages the message history and filters information by controlling communication initiated by queries.
The platform agents are implemented with Java, while the agents of the detection prototype are implemented in NET and nesC.These agents interact with the specific agents of the detection prototype; their interactions can be seen in Figure 4.  (i) ZigBeeManagerAgent: it manages communication and events and is deployed in the server machine.
(ii) UsersProfileAgent: it is responsible for managing user profiles and is also deployed in the server machine.
(iii) ClientComputerAgent: these are user agents located in the client computer.They are responsible for detecting the user's presence with ZigBee technology and for sending the user's identification to the Zig-BeeManagerAgent.They manage the strength of the signal in order to determine how close or far away the user is.These agents are responsible for requesting the profile role adapted for the user to the Profile-ManagerAgent when the user's equipment needs to be turned on and personalized.Each ClientCom-puterAgent is located in a piece of office equipment (computer).
(iv) DatabaseAgent: the detection proximity system uses a database, which stores data related to the users, sensors, computer equipment and status, and user profiles.It can also communicate with the Information-Agent of PANGEA.
(v) ZigBeeCoordinatorAgent: it is included in the ZigBee device and is responsible for coordinating the other ZigBee devices in the office.
(vi) ZigBeeReaderAgent: these agents are included in several ZigBee devices that are used to detect the presence of a user.This agent is responsible for managing the personalized information for each user.
Every user in the proposed system carries a ZigBee tag, which is detected by a ZigBeeReaderAgent located in each system terminal and continuously in communication with the ClientComputerAgent.Thus, when a user tag is sufficiently close to a specific terminal (within a range defined according to the strength of the signal), the ZigBeeReaderAgent can detect the user tag and immediately send a message to the ClientComputerAgent.Next, this agent communicates the tag identification to the UsersProfileAgent, which consults the database to create the XML file that is returned to the ClientComputerAgent.The ClientComputerAgent then interacts with the ServiceAgent to invoke the Web services needed to personalize the computer according to the user's profile.
Figure 5 presents a sequence diagram that shows the interaction between the agents involved in a case of user detection by the prototype.The note of the sequence diagram shows an example of XML used to identify the user profile.

Case Study
This paper presents a proximity detection system that is used by people with disabilities to facilitate their integration in the workplace.The main goal of the system is to detect the proximity of a person to a computer using ZigBee technology.This allows an individual to be identified and different actions to be performed on the computer, thus facilitating workplace integration: automatic switch on/off of the computer, identifying user profile, launching applications, and adapting the job to the specific needs of the user.As a result of the ZigBee technology, the prototype is notably superior to existing technologies using Bluetooth, infrareds, or radiofrequencies and is highly efficient with regard to detection and distance.Additionally, different types of situations in a work environment were taken into account, including nearby computers, shared computers as can be seen in Figure 6.Our case study included a distribution of computers and laptops in a real office environment, separated by a distance of 2 meters.The activation zone is approximately 90 cm, a distance considered close enough to be able to initiate the activation process.It should be noted that there is a "sensitive area" in which it is unknown exactly which computer should be switched on; this is because two computers in close proximity may impede the system's efficiency from switching on the desired computer.Tests demonstrate that the optimal distance separating two computers should be at least 40 cm.
User profiles stored data related to applications that are useful to users.These data can be classified according to the application, as shown in Table 1.As can be seen, the system stores in user profiles parameters related to the use of the computer such as the cursor speed, magnification, or colors.All this information is configurable in the prototype, which can be adapted to future users with other preferences related to its disabilities.
Figure 7 shows the equipment needed.On the left of the image appears the tag which the user must carry on in order    to be detected.Next to it is the tag that works as a router and should be connected to the computer to be turned on when the presence of the user has been detected.
Figure 8 shows two images taken during the test.On the left, a user places the tag containing personalized information in his pocket where it is easily detectable.To the right we can see the tag router placed beneath the user's workplace desk.
Figure 9 shows two tools that the system provides in the main server where the ZigBeeManagerAgent is running.The tools shown in the top screen allow tracking the flow of events and controlling which computers are on and who the users are, identifying their tags and consulting the UsersPro-fileManagerAgent.Moreover, this tool allows for the remote execution of applications or programs.Figure 10 shows the screen that appears in the user's computer when someone with a tag is sufficiently close to it.The ClientComputerAgent running in this computer detects the user's presence and then switches on the computer with all the personal configurations.The computer is automatically connected with the user's personal information, allowing the computer to be configured according to the user's profile.
Analyzing in detail the impact in the case of study, the following qualitative advantages were found with respect to other approaches with different platforms or technologies.
(1) The PANGEA platform thanks to its Web service orientation has allowed us to include progressively more different tools related to each profile.As the ServiceAgent is responsible for management of service, the new tools have just to register their provider agents with the corresponding Web services.This fact is very important since the whole system is still being extended with more tools for disable people and in the future, new tools could be designed.
(2) Another important fact is that the PANGEA platform could be now used in different areas since the purpose is to control and manage open MAS whatever its application or case study.Its design is capable to handle norms, roles, and heterogeneous agents allowing the development of complex organizations of agents.
(3) The proximity detection tool has been implemented with a very successful technology such as ZigBee.We can deploy the system in any office and in a very quickly way.Moreover, the tests in real offices demonstrate that it is possible to differentiate which computer should be switched on/off for each user.The information of the users' tags enables the system to execute the most suitable profile associated with a concrete configuration.This configuration can include different screen parameters and different tools or programs to be automatically executed.Consequently, the disabled people have any computer of an office ready to start working.

Conclusions
This prototype allows the detection and identification of a user, making it possible to identify any special needs, and for the computer to be automatically adapted for the user's individual use.This allows the system to define and manage the different profiles of people with disabilities, facilitating their job assimilation by automatically switching on or off the computer upon detecting the user's presence, or initiating a procedure that automatically adapts the computer to the personal needs of the user.This prototype is specifically oriented to facilitate the integration of people with disabilities into the workplace.The prototype is part of a complete and global project called AZTECA, in which different tools for helping disabled people will be included.Using PANGEA, which models all services as Web services and promotes scalability, the future addition of all services conforming to the global project will be easier.Some of these future services include pointer services, predictive writing mechanisms, adaptation for alternative peripheral, virtual interpretations in language of signs, and identification of objects by means of RFID.
With PANGEA it is possible to integrate agents into devices used to measure the signal levels in a WSN, allowing information to be gathered and processed by the system both efficiently and simply.PANGEA also facilitates communication mechanisms and error tolerance levels in communication, thus allowing distributed computing in the application.

2 Figure 1 :
Figure 1: Diagram of proximity distance detection based on RSSI.

Figure 2 :
Figure 2: System operation according to levels.

Figure 6 :
Figure 6: Diagram of a work environment.

Figure 8 :
Figure 8: Images taken during the tests.

Figure 9 :
Figure 9: Screenshot of the prototype in the main server.

Figure 10 :
Figure 10: Screenshot of the prototype in the main server.

Table 1 :
Example of a user profile.