An Adaptive System for Home Monitoring Using a Multiagent Classification of Patterns

This research takes place in the S(MA)2D project which proposes software architecture to monitor elderly people in their own homes. We want to build patterns dynamically from data about activity, movements, and physiological information of the monitored people. To achieve that, we propose a multiagent method of classification: every agent has a simple know-how of classification. Data generated at this local level are communicated and adjusted between agents to obtain a set of patterns. The patterns are used at a personal level, for example to raise an alert, but also to evaluate global risks (epidemic, heat wave). These data are dynamic; the system has to maintain the built patterns and has to create new patterns. So, the system is adaptive and can be spread on a large scale.


INTRODUCTION
In Europe, many countries will be confronted with aging populations in the coming decades. For example, it is estimated that in 2020, 28% of the French population will be over 60 [1]. A great way to resolve partially this difficulty is to encourage old people to be cared for in their own homes. This strategy presents two main advantages: (i) the elderly want to stay at home as long as possible; they keep the privacy they do not want to lose, (ii) it is less expensive than a place in a collective accommodation.
Our project takes place in this context. It aims to help professional home-care teams in their job by thinking up innovative software technologies, more precisely: (i) by increasing the number of old people looked after in their homes with an adaptive and nonintrusive remote assistance, (ii) by reassuring family circle. The system ensures that the monitored person is secure; so, people around him feel at ease, and (iii) by contributing towards its democratization. The use of simple elements (e.g., basic sensors) minimizes the initial cost of a monitoring system.
We made a study of systems having the same aim-the following section describes three well-known and relevant European systems in the home-care domain. These systems focus on individuals (they are user-centred): a system surveys only one person; thus, there is a duplication for each individual looked after. None of these systems collects individual monitoring for merging global behaviour patterns. Nevertheless, patterns of monitored people could be used to estimate the status of someone in relation to their community or to integrate new comings. We propose a multiagent system that is able to generalize, which builds a classification of monitored people. An agent watches over one or more indicators of a group of people. An indicator is data about daily activities, positions, and physiological information. In a first step, the agent applies a local-classification method and obtains an incomplete patterns' partition. Next, the partial partitions are compared with each other in order to build a complete classification.
We conceived an open system: new people or/and new indicators bring in new agents or/and new patterns.
In Section 3, we present the architecture of the system and how it runs.
The system manages a set of patterns of monitored people. This dynamically updated classification has the following three main uses: (i) to find certain similarities with the existing tools for evaluating the dependence-dependence grid of the social services, for example, (ii) to get global statistical data about old people looked after in their own homes, and (iii) to generate specialized alarms depending on the detected event. Once the classification is set up and people status is known, decisions can be taken to personalize the process of monitoring someone-activated sensors, generated alarms, and danger zone.
These aspects are discussed in the last section.

A SURVEY OF THREE HOME-MONITORING SYSTEMS
The use of computers to help people stay at home has been the subject of many research projects. Some of them are quite ambitious and regroup many partners. In this section, we describe a selection of three projects designed to assist people in their living environment. We expect to give the reader an overview of the advancement in this area and also the bases our project is laying on. The selection shows different hardware and software problematics (communication networks, system interoperability, data analysis, emergency handling, and alerts filtering). These problems must be solved to achieve efficient monitoring. We begin by explaining the main objectives of each project. Then, we propose a table that summarizes their most relevant features.

The PROSAFE project
The PROSAFE project [2,3] attempts to automatically identify the daily activities of the monitored person. The processing of collected data is carried out on doctor's request with an adapted interface.
The final operational objective is to detect any abnormal behaviour such as a fall, a runaway, or an accident. The research objective is to gather characteristic data about the nightly or daily activities of the patient. More precisely, the system can (i) describe events that took place during monitoring time-time spent in bed or in the toilets, entering or leaving the bedroom, moving inside the home, (ii) build a database with all abnormal situations detected, and (iii) build statistics about past activities.
At the hardware level, the system configuration uses a ground network (a mobile version is also usable). Currently acquisition and data processing are local, and monitoring is both local and distant.
The PROSAFE system is primary used by the medical staff in hospitals. The interface for nurses allows them visualizing the patient state and abnormal situations (alerts and alarms) in the bedroom. As soon as an alarm is raised, a beeper calls a nurse. In the same time, doctors can access a database updated in real time with statistical data about the patient behaviour.
Experiments have been made to gather data about the daily activities of patients in hospitals, especially during the night. Experimental sites have been set up in two hospitals and three more are being installed in elderly people residences.
To conclude, let us say that one of the main features of this project is to be based on real-time analysis of data.

The AILISA project
The AILISA project [4,5] (Intelligent Apartments for effective longevity) is an experimental platform to evaluate remote care and assistive technologies in gerontology. This ambitious project regroups specialists of smart homes, networks and computing, electronics, and signal processing. More precisely, the project sets up a monitoring platform composed of (i) a home equipped with a set of sensors and health devices (presence detectors, wrist arterial pressure sensors, and pulse oximeter), (ii) a smart shirt developed by the French company TAM with several sensors and electronics embedded in the textile to detect falls, (iii) a smart assistant robot for ambulation to secure the displacements and assist the person during transfers, and (iv) a software system to gather and analyze the sensors output.
The project aims to set up an interdisciplinary platform for the evaluation of the technologies at the three following levels: technical, medical, and ethical.

The e-Vital project
The e-Vital project [6] (cost-effective health services for interactive continuous monitoring of vital signs parameters) is a modular and ambulatory telemedicine platform. Its objective is to increase patient's feeling of safety concerning their health. Patients and caregivers feed a central database with some measuring equipment. The developed device allows staff to take measurements and data collected to be sent to the resident doctor. This doctor can remotely diagnose whether there is a problem that needs them to visit or that requires the resident to receive hospital treatment. By way of a personal digital assistant (PDA), the e-Vital server connects monitoring devices produced by several manufacturers. The server is a multiagent system where each agent focuses on a specific task related to the medical stored data. For example, an alert manager is specialized for the raising of alert messages, a profile manager for access management and a schedule manager for healthcare scheduling.
The e-Vital project is mainly hardware and tries to solve the interoperability problems between non compatible devices. It focuses on communication protocols and on the central database format.
These objectives (care protocol, devices interoperability) are different from ours but the approach is similar: e-Vital is an open system with several interconnected modules, one of which being a multiagent system. The difference resides on the application level: when our system is a group-centred system, e-Vital is a patient-centred system (it does not use the patient's record to develop generic profiles).

Results of the survey
We presented three systems which are able to monitor the "elderly" in their own homes. Table 1 summarizes some features that we found relevant to compare.
All three projects seek to gather information about people by the way of hardware and software solutions. They differ in the type of collected data, in the way they use it, and in their objectives. From the simple gathering of health information for caregivers, to the complete profiling of people, resources are quite different.
In all cases, the patient is an isolated person, installed in the centre of these systems; systems which have mainly a local vision of situations.
These works have inspired more recent projects; these projects are in progress so their results can not be analysed yet. This is the case of the GERHOME [7] project, led by two French research centers. This project intends to create a smart home for weak people. This objective can also be found in the European project SOPRANO [8]. Let us also talk of the European OLDES [9] project, which tackles the problem of the elderly people access to the new technologies. It tries to create low-cost hardware with very easy-to-use interfaces.
Our research is based on the progress and technologies developed in all these projects, especially those that gather information about the monitored person, whatever granularity this information can have. For example, the information can be the cardiac output, or something of higher level like behaviour information. This data is the raw material of our system and is used to generate several categories of people. Then these categories are used to make global assumptions about people belonging to the same class.
So our problematic is to collect the results of a large number of individual monitoring and to draw several categories. This classification provides several reusable classes of people.
For that, we deploy a classification framework, usable in a large-scale configuration, and based on multiagent technology. The next section describes this architecture.

S(MA) 2 D SYSTEM
We propose a system able to carry out a generalization of profiles' patterns and to propose a classification of monitored people. S(MA) 2 D (multiagent system for keeping elderly people in their own homes) is a multiagent framework in which agents use a restricted cooperation protocol to collectively perform classifications.

Multiagent and health
We chose a multiagent approach because these systems proved their adequacy in many health problems [10]. In this field, medical knowledge to solve a problem can be distributed in various places. For example, to establish the medical file of a patient, it is necessary to have analyzes and tests coming from several hospitals. Agents work in various places, each agent managing a part of the knowledge.
Multiagent architecture is particularly adequate if the problem-solving implies the coordination of various specialized people (e.g., units of a hospital must collaborate to establish patient scheduling). Then, the agents have cooperative skills to communicate and to build together a solution progressively.
Moreover, many medical problems are complex and often standard solutions are not easy to find. A multiagent problem-solving is based on decomposition in subproblems. Let us take for example organ transplants [11]: when a new organ is available, the more appropriate recipient must be found very quickly. It can be located in a very far medical center. Moreover, each hospital keeps the data of its patients; they are in the waiting list depending on the type of organ. It would be difficult to conceive and apply a complex centralized system to solve this coordination problem (e.g., a standard decision aid expert system).
Multiagent technology also proved its reliability in medical information retrieval. A great quantity of medical knowledge is available on the Internet, and it is necessary to access to the most suitable information. The agents can be employed to play the mediators between doctors and patients, or between medical resources. These agents seek information issued from various sources, analyze selected data, and choose useful information according to the profiles of the consultants.
To conclude, the agents' autonomy is an adequate paradigm to deploy systems, in which each component models the behaviour of an independent entity; this entity has its own knowledge, skills, and individual goals.
We recalled the general interest of multiagent systems in the health field. Now we are going to present the expected functionalities of our system.

Architecture and functioning
The system is based on a bunch of sensors carried by monitored people or installed in their homes. Those sensors are, for example, presence and movement sensors or medical measuring apparatus. The data coming from sensors are transformed into indicators. Some indicators can also come from human information: notes of a nurse or patient's answers to a questionnaire.
These indicators will be used by the system to generate its classification. Their abstraction from data requires asoftware layer. The set of sensors and this software layer are out of the scope of our work. It is the result of projects described in Section 2.
It is important to note that the functioning of the system is independent of the type and the number of indicators.
Indicators are collected by classification agents constituting the system. Because the system is strongly distributed, indicators of two people will not be inevitably collected by the same agent. There can also be some overlaps, if the same information is collected by several agents.
· · · · · · · · · i n Generation of indicators Thus, classification agents A j have indicators i k concerning several individuals P i (Figure 1).
With its indicators, each agent calculates a local, partial classification. This classification does not take into account all the indicators and is related to a reduced sample of the population.
Since the data inputs are numerical values, any statistical classification method is applicable.
To refine this classification, the agents communicate each other. They congregate in acquaintances network according to the similarity of the produced partitions. More precisely, each agent seeks the other agents which made a classification close to its own. To compute the classes of the collaboratively determined partition, we designed a restricted cooperation protocol in three steps: call for participation/acquaintance's group constitution/multiagent classification. Section 3.3 gives a detailed example of this protocol. There may be several groups of agents. They constitute parallel classifications: they are views of the same monitored people but according to various criteria ( Figure 2).

Example
It is assumed that the behaviour indicators have numerical values. These values can be normalized by several methods as (i) normalization between [0 · · · 1] where I min j (resp., I max j ) is the minimum value (resp., maximum value) of indicator number j, and (ii) linear normalization where I j is the average values of indicator number j for a given agent, and σ j is the standard deviation of the indicator number j for a given agent where V j is the variance of indicator number j for a given agent; n is the number of people monitored by an agent; I k j is the indicator number j of the person number k. Thereafter we apply our proposal on an example of 3 agents, 3 behaviour indicators, and 11 people. Suppose I 1 is the body temperature, I 2 is the number of getting up/sleeping in one night, and I 3 is the number of entries to the toilets each day.
The following table shows the distribution of people (P i ) and indicators (I j ) on the agents (A k ) of the system. Table 2 shows that agent A 1 monitors 2 indicators I 1 and I 2 on people P 1 , P 2 , P 3 , P 4 , P 5 , and P 11 . Agent A 2 monitors 2 indicators I 2 and I 3 on people P 4 , P 5 , P 6 , P 7 , P 8 , and P 11 . A 3 monitors 2 indicators I 1 and I 3 on people P 3 , P 6 , P 9 , P 10 , and P 11 .
This table also shows that people do not have the same indicators (it will often happen in real situations). For example, P 1 has only two indicators because for this person it is not necessary to test the number of entries to the toilets. The aim is that each person has the indicators suited to his case.
We assume that the sensors send data to the system on a daily basis. In reality there are indicators that are more important than others, for example, body temperature is more important than the outside temperature, so we give a weight for each indicator; this weight will help us later to form the groups of agents and to calculate the distance between classes. The most important indicator will be the one with the largest weight.
In our case we give to I 1 (body temperature) the weight 3, I 2 the weight 2, and I 3 the weight 1 (which is the default value).
By applying a local classification method (e.g., ISODATA [12]) each agent builds its partition. Each class is characterized by a midvector calculated by ISODATA.
Preliminary step: construction of partitions ( Figure 3). The first step is the call for participation. It aims to form groups of agents to generalize the classification. The agents of the system communicate with each other through the facilitator agent. The process to constitute agents groups for each agent A i is as follows: (i) A i sends its indicators to other agents; (ii) A i receives the indicators from other agents; (iii) for each other agent, A i calculates the sum of the weights of common indicators (calling S 1 ), and the sum of the weights of noncommon indicators (calling S 2 ); (iv) if S 1 S 2 A i responds to the agent concerned; (v) the agents of a group are agents who have exchanged messages between them.
In our case, A 1 sends I 1 and I 2 . A 1 also receives from A 2 and A 3 their indicators. We find And as the weight of I 1 is greater than I 2 and I 3 , A 1 chooses A 3 to form a group. The result is two groups of agents. The first group is formed by A 1 and A 3 , and the second is formed by A 2 . This second step is the acquaintance's group constitution.
The third (and last) step is to generalize the classification. The agents of a group measure the distances between their classes using the weighted Euclidean distance: In which c and c are two classes, w j is the weight of the indicator number j, n is the number of common indicators between the two classes, and d j (c, c ) is the distance between the two midvectors of the two classes according to the indicator number j.  We can apply this formula on the actual values or normalized values of indicators. In this example we use the actual values. The agent A 1 seeks to each of its classes, the closest classes of its group among other agents.
Calculation of distances between classes: After the calculation of distances, we find that the class C 1

A1
should be merged with C 2 A3 , and that C 2 A1 should be merged 7  A person may belong to several classes according to the indicators used. For example, P 3 is classified by A 1 and A 3 in a class by itself according to I 1 and I 2 , and it is classified with P 2 , P 5 , P 6 , and P 10 according to I 1 , I 2 , and I 3 .
As prospects, we intend to set a minimum threshold for the distance between classes. This threshold will be based on indicators and their weights. If the distance between two classes is greater than this threshold, they will not merge, even if they are close in the sense described above. It will be a more true-to-life approach.

Relevance of the multiagent architecture
This classification is actually multiagent because the classification result is not the work of a simple agent, as it is the case in other multiagent systems (choice of the most skilled [13]). It is really a collective work.
This multiagent classification answers to the problem of the search of patterns in an open and dynamic environment. Classical methods do not make it possible to increase the system scale: for example, when the number of entries changes (with the addition of a new indicator), all calculation and generation of classes must be made again.
Thus, our method satisfies the requirements of our application because it does not depend on the type of the indicators and does not require preliminary categories.
The management of the monitored people continues throughout the functioning of the system, as the agents collect more indicators values. Thus patterns evolve and the class of people can change.
Also an indicator can be deactivated: it corresponds to a data for which it is not essential to monitor this type of people.

APPLICATIONS RELATED TO HEALTH
Our system builds dynamic classifications of monitored people according to indicators that depend on the application. This adaptability is the result of two essential characteristics. The first is the dynamic evolution of classifications-if needed, new data and new indicators can be added at any moment, and the system is able to reconfigure its classes and generate new classification patterns. The second is that the system is generic with respect to indicators and, thus, is able to function on any type of applications having strongly distributed entries.
Such a system is likely to bring solutions to several current problems in the home-monitoring field. Some of these problems are presented in this section.

Monitoring of dependent old people
Organizations of assistance to elderly people often use an evaluation grid of the dependence degree to determine the service needed by people. The result of this evaluation is also used to evaluate the cost of taking charge of someone.
The use of our classification system will make it possible to see whether there is an adequacy between the evaluation of monitored people by the grid and the produced profile classes. The matching of the two evaluation ways would validate our approach but also could consolidate the relevance of the grid criteria. In the contrary case, it will be necessary to re-examine the classification method and/or the selected indicators.
After validation, the system will be able to follow the evolution of the dependence degree of someone. Thus, somebody leaving his original pattern to enter a new one could be re-evaluated by the helper organization, and the assistance could be adapted to his new behaviours.

Detection of global medical problems
A metamonitoring will also make it possible to detect more global problems. The migration of a lot of people from a class toward another or the modification of certain characteristics of a class should indicate a collective event which affects several people; this can happen, for example, during a heat wave or an epidemic.

Remote monitoring of people suffering from chronic health problems
This help is for already detected people, suffering of cardiac and pulmonary insufficiencies, asthma, or Alzheimer disease.
The possibility of having a global vision of several monitored people can bring richer and more relevant information on the follow-up; the distribution in classes and the historic of the patterns evolution (system training) should allow new people entering the system to get a better service; in particular, more appropriate alerts according to the incurring risk should be generated.

Preventive control of high-risk people
In the long term, with the evolution of life ways, we can consider the monitoring of healthy people with personal or family antecedents relating to a disease or a medical event.
8 International Journal of Telemedicine and Applications The system will make it possible to identify evolution diagrams of health parameters and life way (e.g., state-ofthe-immune system, sleeping, nutrition, activity, etc.) who will indicate high risks to develop diseases.

CONCLUSION
We chose to tackle the home-monitoring issue in a more global way rather than in an only individual-centred way. This collective vision makes it possible to release individuals' patterns who will allow the system answering current health problems.
This large-scale and global solution (uninterrupted monitoring of hundreds of people) requires setting up a strongly distributed and dynamic system. Because classical classification methods are not adapted to this context, we had to propose a new distributed classification method.
The multiagent S(MA) 2 D system implements this method. To evaluate its performances, we randomly generated a great number of numerical vectors of values and we observed the formation of classes. Now, we have to define the real indicators to take into account. One of our professional partners CVital (platform of coordination of care and services to the person) is making a study about people whom this organism follows. This study will make it possible to define the number and the types of main indicators.
We will also request them to semantically interpret the classes.