Providing Collaborative Algorithms Support for Personal Health Care

: Problem statement: Today, there is a growing interest towards the adoption of novel technology in the field of medical monitoring and personal health care systems in general. This is especially case with certain categories of people suffering from chronicle diseases that need 24 h access to medical care. Approach: To solve this challenging issue, a model of a system containing three levels: bionetwork, social community and primary and secondary health-care centers, was developed. The main purpose of the proposed methodology is to find the dependency of the users’ health condition (obtained by bionetwork) and physical activity he/she perform (get by mobile application). To achieve this we consider datasets from the health history of users (obtained from clinical centers) and use classification algorithms on these datasets for grouping the users based on their similarity. Results: Developed model of a system which enables 24 h monitoring of the condition of patients and the possibility of sending an emergency call for sudden deterioration of his/her medical condition. In addition, the system enables the patient (system user) to contact other people with similar condition and exchange their experience. Conclusion: The system improves the terms of home care treatment of the patient and increases the medical capacity of the appropriate healthcare institutions which results in significant reduction of the overall costs for patients and


INTRODUCTION
The development of mobile technology and mobile applications has expanded the usage of mobile devices in customer services. Today, we use various mobile applications for many purposes such as: entertainment, organizing our activities, managing our resources, accesses our bank accounts.
There is also a growing interest towards the adoption of advances technology and mobile devices by the medical community. Use of advanced technologies in healthcare offers many challenges in creation, dissemination and preservation of health care knowledge (Kaur and Wasan, 2006).
One of the approaches of using mobile technology in healthcare has been the use of Short Message Service (SMS) for sending people various health reminders on their cell phones. There are studies for this approach that gave empirical evaluation of users' reasons to accept or resist the application of mobile information and communication technology for health promotion (Cocosila and Archer, 2010).
The need for high performance, costeffective healthcare solutions is one of the critical strengths for any developing country (Al-Saud et al., 2012). Therefore, the recent trend in healthcare support systems is the development of patient-centric pervasive environments in addition to the hospital-centric ones (Koufi et al., 2008). Such systems enable healthcare personnels to be able to timely access, review and update and send patient information from wherever they are, whenever they want (Chakravorty, 2006). Patientcentered development process is useful for healthcare information system in order to reduce system complexity and increase the usability (Salman et al., 2010).
Pervasive health care takes steps to design, develop and evaluate computer technologies that help citizens participate more closely in their own healthcare (Ahamed et al., 2007), on one hand and on the other to provide flexibility in the life of patient who lead an active everyday life with work, family and friends (Ballegaard et al., 2008). However, these systems do not consider collaborative value that can be provided with matching gathered data.
The basic feature of mobile and Web services is communication that eases the collaboration. In the case of our proposed system, the communication paths between patients with the same diagnoses can be provided both directly, or as statistical summaries grouped by some indicator. This communication enables the exchange of patients' experiences in terms of therapy and rehabilitation, by using the experiences of the activities that have been taken by other patients (Kotevska et al., 2011).
The collaborative Information system model (COHESY) we present in this study, gives a new dimension in the usage of novel technologies in the healthcare. This system use mobile, web and broadband technologies, so the citizens have ubiquity of support services where ever they may be, rather than becoming bound to their homes or health centers as pointed out by different authors (Taylor and Dajani, 2008). Cohesy use collaborative algorithms that are implemented in the social network. These algorithms allow connecting users with same or similar diagnosis, sharing their results and exchanging their opinions about performed activities and received therapy. At the same time, they also generate average values based on filtering large amounts of data about concrete conditions as are geographical region, age, sex, diagnosis, The different levels of the validity of the data used by the collaborative algorithms and thus the validity of obtained results are elaborated in more details in .
Cohesy has simple graphical interfaces that provide easy use and access not only for the young, but also for elderly users. System model has more purpose and includes use by multiple categories of users (patients with different diagnoses). Some of its advantages are scalability and ability of data information storing when communication link fail. Cohesy is interoperable system model that allow data share between different systems and databases.
The most important benefits of our proposed system model are: increased medical prevention, more immediate time response at emergency calls for doctors, 24 h monitoring of the patients' condition, possibility for patient notification in different scenarios, transmissions of the collected biosignals (blood pressure, heart rate) automatically to medical personnel similar to the study of Komnakos et al. (2008), increased flexibility in collecting medical data. Our system model creates the opportunity for increasing patient health care within their homes by 24 h monitoring on the one hand and increasing medical capacity of health care institutions on the other hand. This results in reducing the overall costs for patients and hospitals and improves the patient's quality of life (Zimmerman and Chang, 2008).

Detail system design:
In a world with abundant, actionable health data-both from electronic medical records and our everyday observations-we will be empowered to make better decisions and our relationships with doctors may significantly change.
Therefore, in the process of designing a new healthcare system the following points should be considered: Data on its own is not enough. It needs to be actionable.
Data needs to be accessible-to patients, policy makers and health care providers-to enable them to make better decisions.
"Every day" data needs to be considered and can be as valuable as lab tests in its impact on your health outcomes: how much you sleep, how much exercise you get, whether or not you are fighting with your spouse.
The focus needs to move away from the clinical setting to the individual's homes and the other settings where they live their lives. Doing so will require a number of changes, including the need to address how health care providers are able to bill for their services.
Patients and providers need to look at their relationship as a collaboration, which is going to require shedding old baggage about power dynamics in the doctor-patient relationship.
Technology offers new opportunities, but it is not the silver bullet. The technology cannot be intrusive; it needs to be a part of an individual's life.
System layers: Simple overview of our system model is presented in Fig. 1. This system is deployed over three basic usage layers. The first layer is consisting of the bionetwork (implemented from various body sensors) and mobile application that collects users' bio data during various physical activities (e.g., walking, running and cycling). The second layer is presented by the social network implemented as a web portal which enables different collaboration within the end user community. The third layer enables interoperability with the primary/secondary health care information systems which can be implemented in the clinical centers and different policy maker institutions.
Communication between the first and the second layer is defined by users' access to the social network where user can store their own data (e.g., personal records, healthcare records, bionetwork records, readings on physical activities). Social network allows communication between users based on collaborative filtering techniques, thus connecting the users with the same or similar diagnoses, sharing their results and exchanging their opinions about performed activities and received therapy. Users can also receive average results from the other patients that share same conditions in a form of notifications. These notifications can vary from the average levels of certain bio data calculated for certain geographical region, age, sex to the recommendation for certain activity based on the activities of other user. Collaborative filtering can be used to achieve different recommendations in these contexts.
Communication between the first and the third layer is determined with the communication between patient and health care centers. The patient has 24 h access to medical personnel and possibility of sending an emergency call. The medical personnel remotely monitors the patient's medical condition, reviewing the medical data (fatigue, blood pressure, heart rate) and respond to the patient by suggesting most suitable therapy (if different from the one that is encoded in the mobile application) as well as sending him/her various notifications (e.g., tips and suggestions) regarding his/her health condition.
The second and the third layer can exchange data and information regarding a larger group of patients group by any significant indicator (region, time period, sex, type of the activities) which can be later used for research, policy recommendations and medical campaign suggestions.
System architecture: The mobile technologies (devices and applications) in this system are used to support and enable collaboration. The installed mobile application, using various sensors (bionetwork), performs readings regarding users health during his physical activities (walking, running, cycling) and based on them, gives appropriate instructions, proposals and constraints of their execution, in order to improve his own health. In presented system model, mobile application attempts to categorize events by processing the collected data, from patient current state and patterns of the biologic and environmental sensors. For example, if the heart rate monitor detects an increase in pulse rate, the accelerometer detects movement and the GPS detects a frequent change in location, it can be inferred that the user is exercising. Threshold parameters are then adjusted automatically to minimize interaction with the user. In cases where only heart rate may spike and no accelerometer and GPS activity is detected the user is quickly prompted to provide simple feedback. This feedback is stored to be used in machine learning algorithms for future decisions. Based on such results, the data set can be flagged for further analysis by medical professionals as a supplement to a more complex analysis of the patient.
The application can also generate notifications and recommendation based on second system layer (collaborative filtering from data gathered in the social network layer) or third system layer (direct notifications from healthcare institutions).
The Cohesy system not only offers the possibility of sending an emergency call for sudden deterioration of patient medical condition. The patients are not restricted in their movements or their location. By using their mobile phone (the installed application) they have access to the medical personnel at any time. The medical personnel can remotely monitors the patient's medical condition, reviewing the medical data (fatigue, blood pressure, heart rate) arriving from the mobile application of the patient. At the same time, the patient individual data can be compared with average data obtained using different collaborative filtering techniques. In this way, medical personnel can quickly respond to the patient by suggesting most suitable therapy as well as when to receive it, focusing on activities that are necessary for his rehabilitation and maintenance of his health, sending him various tips and suggestions for improving his health. Even more important, the social network can learn from this recommendation and generate notifications and recommendation based on the most successful scenarios.
The installed mobile application has access to the social network (web portal) where it can store users' data and read average data readings on bio and physical activities of all users. Social network allows direct communication between users (if approved by the user and stored in the user profile) and sharing their results. This portal can provide interface and use data from a variety of medical databases and environmental databases (temperature, wind speed, humidity). In this way mobile application within the Cohesy system provides a tool for a complete personal healthcare.  The proposed Cohesy model is an infrastructure that enables various personal healthcare scenarios. For example, it enables matching of performed user activity combining this various data, including: length of path crossed, duration, speed of movement, medical condition of the user (heart rate, blood pressure, occurrence of arrhythmia), weather conditions (atmospheric pressure, humidity, temperature), what is the medical diagnosis or therapy of the user (if there are any) and can generate recommendation when certain patient should perform walk, with what pace and duration. This complex structure of data from a social network along with the data arriving from different clinical centers can be used by different medical databases for further analysis and research.
The conclusions drawn from research data, while exploring medical databases, can rout back to the clinical centers. These data are used to individually analyze the condition of patients. Clinical centers have access to data on physical activities of patients collected by the application installed on their mobile device. Therapies and recommendation are drawn from the analysis of the overall data obtained by the clinical centers. Those therapies and recommendations now can be easily routed back to the patients' mobile devices.
Simultaneously, clinical centers can exchange data and information with a social network and thus have access to a larger group of patients that can share research, recommendation and suggestion of the medical personnel.
Received therapies and recommendations can be used by the application to suggest to users when, where and what action to accomplished in order to improve their health. The social network has incorporated collaborative filtering that allows filtering large amounts of data on concrete condition. So, policy makers can get those data, make specific analysis of it and gave recommendations for national action by governments and non-government organizations, including programs and strategies.
The flow and exchange of data information in this system is shown in the diagram on Fig. 2. According to this diagram, mobile devices and installed mobile application are usually used for conversation between users and for connection to the Social network. When the user logs on the network he/she store his own data as age, weight, height, diagnose, blood pressure, heart rate, glucose level and information about realized activity that include type of activity, path length, time interval and average speed. All of this data without information about age, weight, height and diagnose, can be forward to Clinical centers and, if needed the center can send an emergency call. Social network get information about weather temperature, atmospheric pressure, air humidity and wind speed for particular place in specific time from environmental databases.
Combining information obtained from Environmental databases and users and using collaborative filtering, Social network send information as name and surname of the patient, diagnose, realized activity with type of activity, blood pressure, heart rate, glucose level, path length, time interval, average speed, weather temperature, atmospheric pressure, air humidity and wind speed to Clinical centers, Medical databases and Policy makers. Data information about diagnosis, recommended therapy, suggestions, recommended activity with type of activity, path length, time interval and in what conditions (weather temperature, atmospheric pressure and air humidity) are exchanged between Clinical centers and Medical databases while also sent to Social network. Clinical centers forward this information extended with diagnose to their patients.
All data information exchanged between different parts of Cohesy is shown in Table 1. We emphasize that data sent to Policy makers should be filtered using different confidential conditions.

MATERIALS AND METHODS
Recommendations module, which is part of the social network (implemented as a web service), generate recommendations for users to carry out physical activities to improve their health.
This web service uses data read by bionetwork, data for the user's physical activity (get by the mobile application), medical records of the user (obtained from clinical centers) and data of the user profile on social network (so far based on knowledge of social network).
The main purpose of this algorithm is to find the dependency of the users' health condition and physical activity he/she perform. To achieve this we consider datasets from the health history of users and use classification algorithms on these datasets for grouping the users based on their similarity. The algorithms used for functionality of this web service, will be explained in the following.

Basic concepts in the recommendation algorithm:
The recommendation algorithm is based on the dependence between the values of user's health parameters (heart rate, blood pressure, occurrence of arrhythmia) and his physical activities (walking, running, cycling). All activities between two readings of the same health parameter (e.g., heart rate) affect the resultant change of that health parameter a little or a lot. The aim of the recommendation algorithm is to discover which activities affect change in the value of each health parameter individually. Once revealed, algorithm can use that information in situations it recognizes as same or similar to previous health conditions of a same or another user with similar medical problems. If there is information, in users' history, that after execution of a physical activity, the health situation had already changed for the better, it can be concluded that this activity can help him or other users with similar health condition and improve their health condition.
The periods between every two consecutive readings of the value of a particular health parameter are taken as intervals for testing physical activities that contribute changing the health status. All activities that occur within this period and determine their effect in the change of the health status are considered. Each parameter is viewed independently of others and all activities that affect him during the two consecutive readings are monitored.
In systems where cannot be made strict separation between the conditions of the variables, it is good to use fuzzy logic. Therefore, it is necessary to bring fuzzy logic in our system for recommendations, in order to better represent the reality. There is application of this imprecision at the health parameter characteristics: normal lower limit and normal upper limit. Let's consider an example with parameter heart rate. We assume normal speed value of heart beat is in the range among 90-120. What happens when the measured value of the parameter is 90, but also, what happens when the measured value of the parameter is 89? We can't put a strict limit, so we apply fuzzy logic to represent the information to which extent a value is normal or not.

Algorithm for calculating the impact of activities:
When adding a new reading of the value of a health parameter, last entered value for this parameter is required and the focus is on the interval between them. All activities in this interval are considered. We define the impact of the physical activity, so that each performed activity is characterized by its intensity (formula that includes path length, time interval and average speed). This conclusion about the activity can be represented by record (name-of-parameter, oldvalue, new-value, period, type-of-activity and resultant-intensity). The resultant intensity is a product of the impact of the activity to the concrete parameter (real number in the interval from 0.0-1.0) and the intensity of the activity we test.
The problem occurs when there are more activities with same name that occur in the interval. One way of solving this problem is to get one record for each activity. But this method does not include information that the execution of activity many times leads to better (or worse) results. We need a method to collect intensities of the activity, so that the resultant intensity would be bigger than all intensities of the same activity that occur within the interval frames, but simultaneously the resultant must not go out of range for a value of activity [0,100]. That means introducing a function to summarize the intensities of the same activity, in the same interval. When new records are calculated, they are added to the database where all knowledge is stored.

Categorization of users:
The main data used for recommending is derived from the data of users within the social network. Such database stores all the conclusions about changes in the parameters depending on the specific activities that are obtained from medical history and history of activities of social network users. This database gathers the knowledge of all users, but these data are now categorized and classified. Using the classified data when generating the recommendation provides more relevant recommendations, because they are enacted on knowledge for users with similar medical conditions and reference parameters. To perform the classification of the users, it is necessary to build profiles of users on which basis the classification will be done.
There are several different ways of representation of users. A (simplest) representation of the user may be in one single form (such as: diagnosis, age, weight, height). Moreover, users who have similar values for these parameters will be grouped together. Here we can apply a decision tree, because there are not many attributes in the representation of the users. Once we create the tree using the training set (where the reference values are provided by expert medical personnel), the decision tree can very quickly decide in which class label is a concrete user.
When the web service is requesting data from the knowledge base of social network as result it gets knowledge for users with same class label as the subject user, for which the service is requested. The smaller number of users providing knowledge, the more precise the recommendations are, but on the other side of this issue, the users' number should not be too small, to gain greater relevance of the recommendations.
Another example that could be used to represent user profile is a representation form (average-value-of first-parameter, the-variance-of-first-parameter, meanof-N-the-parameter, variance-of the-N-the-parameter). This representation is useful because there are users with more variance (or standard deviation) of the health parameters and the mean values of all users should not necessarily be the same. The values of these attributes can be calculated by methods of mathematical statistics. In this case, there's no need to be selected any rule in advance. Based on the analysis of attributes, expert medical personnel can decide which users of the training set will be placed in one and which users will be placed in another class. Once the training population is labeled, a classification algorithm can be applied to label the other users. Commonly used classification algorithms are Naive Bayes classifiers, neural network or the k-nearest neighbor algorithm.

Recommendation algorithm:
Recommendation algorithms are very important element in the choosy model. The purpose of recommendation algorithm is to give a recommendation for performing a specific activity that will improve user's health, based on his given health condition and set of knowledge derived from the history of the user and users like him. The algorithm is shown in Fig. 3.
For each activity from the set of activities, efficiency is calculated before it is recommended. This efficiency is determined by points which are assigned to that activity. The argument of the recommending function is the current given health condition of the user in the form of values of the health parameters. All knowledge is gained from the history of the user that uses and the histories of other users with similar health parameters. This knowledge is filtered twice. First it is filtered according to whether the activity involved in the knowledge is equal to the activity which is currently under calculation of efficiency function. Then it is tested whether the health parameter, is monitored, is disturbed. This function is shown in Fig. 4. If both conditions are met, points are added or subtracted, according to whether the activity would contribute to the improvement or deterioration of the current health condition of the user. The test function whether the health parameter is disturbed checks whether the current value of that parameter is in the normal range or not. To determine the health parameter disturbance we use fuzzy logic, or algorithm that will deliver value in the interval [0, 1]. In this case, the test for parameter disturbance can be omitted, while points will be always added or subtracted, but the difference is that those points are multiplied by the degree of disturbance of the parameter (1-degree of disturbance of the parameter).
Test function for efficiency of the activity checks whether the direction of change in the value of the health parameter, which is in the knowledge base, is required to normalize the value of the disturbed parameter. For example, if in the knowledge base is preserved that the old value was a and the new value was B and we know that A<B then this activity has contributed to increase the value of the parameter. This is useful when the value of the disturbed parameter is less than the lower normal limit, but has a bad effect if the value of the disturbed parameter is greater than the upper normal limit. In this case the activity would contribute to further disruption of the health parameter and thus the overall health of the user. Therefore points are deducted for this activity.
Function to calculate the points for an activity should give a value which depends on the change in the value of the health parameter and the period of change, range of values for that parameter and intensity of activity. The activity is more effective if the change is greater and if the period is smaller. In practical implementation period is measured in seconds and for less sensitivity of function vs. period, the change in value is divided by logarithm of the period, rather than directly with the period. The final formula is: new value old value ( ) uppet lim it lower lim it .int ensity.coefficient (parameter) in(period) The formula uses coefficient that indicates the importance of the health parameter. That is, if a parameter is more important and change of its value would be critical to the health of the user, then its coefficient should be larger. Once we get the number of points for each activity, we check if the maximum number of points is less than or equal to zero. If this condition is met, it means there is no activity that would be treated favorably in terms of improving the health condition of the user. In this case there is no returned recommendation. Otherwise, it selects the action with the highest number of points. According to the current health condition of the user, the recommendation is chosen from the knowledge base corresponding to the activity and the appropriate intensity of the activity.

RESULTS
The communication between the first and second level of Cohesy is implemented within the framework of Sporty Pal mobile collaborative system (http://www.Sporty Pal.com). It has approximately 450000 active users that are connected to its dedicated social network.
Sporty Pal system is capable of reading parameters for a particular activity, such as path length, speed, time interval, consumed calories. With the help of the GPS service on the mobile phone, Sporty Pal application reads and writes a map of the path by which the activity is executed (Fig. 5). By using an additional device that connects with the application, it can read health parameters of the user, (currently heart rate). Each execution of a specific operation is stored as a separate workout. The user has access to all of his stored workouts and thus he is able to analyze and compare them later. Sporty Pal offers possibility to present each exercise in a map view, draw graphics charts and present its summary information (Fig. 6). From this point of view, current functionality of Sporty Pal system corresponds with the services we offer in Cohesy, especially in terms of tracking the user's physical activity. Although we must stress that there are several differences which can be easily upgraded in Sporty Pal.

DISCUSSION
Unlike the application that we propose in Cohesy, where we have readings of several health parameters (heart rate, sugar level and blood pressure) and the application that is actively used in Sporty Pal allows reading of only one single health parameter (heart rate). Sporty Pal application still has no publically available module that will signalize if an irregularity occurs while reading health parameters for the user. Also, this application has no communication with a medical center so it doesn't offers possibility of sending an emergency call, for sudden deterioration of patient's medical condition, to the medical staff. In terms of social network there is still not publically available connection of Sporty Pal.com with environmental database, so there is no data for weather conditions (temperature, wind speed, humidity) in which the activity was performed.
Although Sporty Pal system has basic profile information about users, such as height and weight, this system does not have data for a possible diagnosis and therapy of the user.
We would also like to emphasize that one of the advantages of Cohesy, its recommendations module.We are convinced that in our further work, we will be able to implement the module for generating recommendations based on the recommendation algorithm that we have proposed and will succeed to evaluate its functionality and benefits through the Sporty Pal system. Before that, we plan to implement specific collaborative algorithms within Cohesy in order to get some summary data, grouping the users by certain parameters Because currently we have no accesses to medical records and have no established cooperation (communication) with the information systems used in institutions of primary and secondary health care, we are not able to present practical results for the 3rd Cohesy level and its communication with the first and the second level. In the coming period we expect to realize the possibility of cooperation with certain institutions of primary and secondary health care which would open the opportunity for full exploration of the complete Cohesy architecture and analysis of the overall benefit from this collaborative information system.

CONCLUSION
In this study we're presenting Collaborative health care system model (Cohesy) implemented with help of the mobile and web technologies. The system provides tool for personal health care by generating different recommendations to the users. Recommendations are generated by the recommendation algorithm. The main purpose of this algorithm is to find the dependency of the users' health condition and physical activity he/she perform. To achieve this we consider datasets from the health history of users and use classification algorithms on these datasets for grouping the users based on their similarity.
In addition to services for end users that our system model offers, other purpose of presented model is collecting different types of data and combining them into complex data structures based on collaboration. The survey, analysis and research of such structures allows to understand the impact and the influence of applied therapy, physical activity, time parameters and other factors on the development of the health condition of the patient. Such analysis can be further used by the clinical centers for diagnose, treatment and therapy of patients.
In future, evaluation of the system will be made by: monitoring the improvement of user's bio-signals after given recommendation; monitoring the increase of information validity versus the increase of patient's number and given recommendations; monitoring speed of change of the validity of information. All these parameters are indicators of the of the system effectiveness and can be used for different qualitative analysis. This analysis will show the impact of such a system.