The Design and Implementation of Multiterminal Based Proactive Information Delivery System

Currently, the development of various communication terminal devices has greatly promoted people’s daily life, while information using efficiency with these devices decreases rapidly due to the information overload. To solve this problem, a multiterminal based proactive information delivery system (MPIDS) is designed and implemented in this paper. Firstly, users’ interests are computed comprehensively from the historical data, taking full consideration of users’ behaviorswhen visitingwebpages. Secondly, a proactive informationmonitor service is introduced tomonitor users’ data requirements and their interest changes, with which, user data are pushed to their online device automatically according to the strategies. Finally, a data self-adapter is given to encode and transform the data according to users’ online parameters and a series of data self-adaptive strategies. The experimental results show that MPIDS provides richly featured, secure, and robust personalized functions, reduces the running cost, and promotes the end-user experience and business efficiency.


Introduction
Currently, the internet, because of its rapid growth in the scale and coverage, has brought a serious problem of information overload.It is hard for users to find what they really want when large amount of information appears at the same time.Therefore, the information using efficiency is declining regrettably [1].Meanwhile, because of the development of wireless technology and the popularization of wireless communications devices, people are no longer satisfied with the traditional way of accessing the information.With the update and evolution of the smart hand held device, such as mobile phone and Personal Digital Assistant (PDA), all kinds of hand held communication device are becoming popular in the society.Meanwhile, the arrival of information era leads to an explosive expansion of data resource, and users cannot find their useful information.Therefore, how to deliver the personalized information to users quickly, proactively, and accurately according to their information requirement and online state becomes an attractive topic [2].Currently, a lot of work has been done on the personalized information recommendation, while the system theory and prototype still cannot meet the demand of internet users [3].
Personalized recommendation is a service mode that can meet the demand of the individual users [4].Currently, personalized recommendation is widely used in many domains, such as news sites and knowledge-based systems.Song et al. proposed a framework of user profile of personalized service for digital library [3].Yang et al. gave collaborative filtering and recommendation algorithm based on matrix factorization and user nearest neighbor model to find similar users and their interests [4,5].In literature [6], we put forward the architecture of multiterminal based proactive information supply system which is the foundation of this research.In order to fully solve the problems of information utilization, in this paper, a multiterminal based proactive information delivery system (MPIDS) is designed on the basis of our previous work [6][7][8][9][10].We hope that through the MPIDS, data can be sent to users timely, correctly, and proactively.
The framework of MPDIS is given in Figure 1.From the figure, we can see that there are mainly three modules in the

MPDIS: (1) user interests computing and updating module;
(2) proactive information monitor module; (3) data selfadaptive module.The processes of design and implementation are discussed in detail in Sections 2, 3, and 4.
As shown in Figure 1, we can see that MPIDS is a richly featured and robust personalized service, and it can bring down the running cost and promote the end-users experience and their business efficiency.Users, especially those of information intensive system such as e-commerce and e-learning, often cannot find information they really need conveniently through the communication devices.Therefore, through using MPDIS, end users can get information they need anywhere and anytime by their various communication devices.In this information intensive system, users' logs can be collected easily.With their logs, MPDIS can compute their interests through their recorded behavior when visiting data pages.According to their interests, proactive information service monitors user information requirements, then it retrieves users' online state and selects proper push strategies, and at last it submits the information to data selfadaptive module.When data self-adaptive module receives the information from proactive information service, it will collect the environment parameters and retreat the source files to meet the requirement of user terminal devices, and then it will push the messages to the corresponding users.
This paper is organized as follows.In the second section, a users' interest discovery approach is given to compute user interests in a comprehensive viewpoint.In Section 3, on the basis of users' interests, user data is retrieved and generated in a self-adaptive way.An approach of push strategy abstraction is presented in Section 4 according to users' interests.The experimental results of the designed system are given in User T 0,0,j T 0,1,j T 0,2,j T 0,i,j T 1,i,j T 0,0,0 T 0,1,0 T 0,2,0 T 0,i,0 Section 5. Finally, our work of this paper is summarized in the last section.

User Interests Discovery
In this section, we give an approach to compute users' interests by analyzing their history data.As shown in Figure 1, this part is corresponding to the first module in MPDIS.

User Interest Computing
Definition 1. User-page-time visited matrix, UPTV(n, i, j): it means that user n visited the ith page at the jth time frame.The value of each item is a visit transaction set to certain page. = { ∈  |  id , name, . ..} denotes the users' information. = { ∈  | size, path, no, . . .,  re ,  re ,  ce } denotes the page data, where  re is the user referenced reading count,  re is the user referenced reading time, and  ce is the user referenced rollback count. = { ∈  |  min , . . .,  max } is the time frame. = {TansSet} denotes the users access transaction set, denoting  = || as the reading count of a user.Therefore, Tans = {tans | pageno, id , . . .,   ,   ,   ,   } is a transaction that a user visited a page, where   is whether the user saved or copied the page,   is reading count in a transaction,   is reading time, and   is the rollback count.The UPTV matrix is shown in Figure 2. According to the definition above, we can obtain the interest degree of a page  id = (/) * BW.By introducing BW, V, P and C, we can get the comprehensive user interest degree as where  id is the value of interesting degree.Then we should adjust and update users' interest by gradual forgetting algorithm.
We define gradual forgetting function ℎ() to denote the change of users' interests with time.With ℎ(), the weight of each observed interest feature can be generated according to

Topic
User its time sequence.ℎ() is designed with a nonlinear function as where  min and  max are the first time and the last time when the user visited the page ( min ≤  ≤  max ).ℎ() can be viewed as the amount of users' information still obtained, and m is forgetting coefficient, also can be denoted as the forgetting speed,  ∈ [0, 1].When  = 0, nothing is forgotten; when  = 1, everything is working with fully forgotten mechanism (0 < ℎ() < 1).
After giving the gradual forgetting function ℎ(), we can compute the time-aware user interest degree (ID) on each page.The calculation formula is given as ID , denotes the interest degree of user n on page j.Through using (3), a user-page visited matrix (UPV) can be generated according to UPTV.The detailed UPV is given in Figure 3.
If we recommend information on the basis of UPV, there will be great redundancy.In fact, many pages belong to a meaningful topic; for example, p 1 , p 2 , p 3 , p 4 , and p 5 are all of the same topic m (  ); therefore, a user may have a overall interest degree on   .The overall interest degree given in formula (4) can be denoted by (ID): where   is the set of pages which all belong to topic m and |  | is the page count of topic m.ID , denotes the overall degree that user  interests in topic .By using (4), we can get user-topic visited matrix UTV(, ), as shown in Figure 4.

User Interests Updating.
With the users interesting topics matrix, we can find user interested contents easily and dynamically, and more detailed implementation can be found in literature [7].As we know users' interests may change gradually as their knowledge improves.Therefore, user interests updating is very important for MPDIS.Two ways are used to update users' interest.(1) Collecting the changes of user profile: if users change their profiles or interesting topics, the MPDIS will automatically update users' interests list.
(2) User interest recomputing: we install a timer in the service to monitor users log changes in fixed time interval; if the changes are great enough, then the timer will start the process of interests recomputing and update user interests list.We now realize that if the log grows explosively, recomputing will cost a lot of time beyond enduring.Therefore, user interests online updating or incremental computing will be carried out in our future work.

Proactive Information Monitor
In order to visit information anywhere and anytime, the MPDIS should monitor the newly changed user data and push the new data to users' online terminals according to their interests.Therefore, we design and implement a proactive data delivery modular to satisfy users' requirement.
There are many proactive technologies used in information intensive industries, such as literature [11,12].In MPDIS, the detailed proactive information delivery technology is implemented in literature [8], and in the next paragraph, we merely introduce the main idea of the proactive monitor.As shown in Figure 1, the proactive information monitor is corresponding to the second module of MPDIS.
In Figure 5, the flow of proactive data delivery modular is given to show its work process.From the figure, we can see that this modular is also driven by user data requirement or terminal request, and it works on the basis of data selfadaptive process modular.In fact, there may be several terminals online at the same time for a single user, and different data may be suitable for particular terminal.Therefore, in order to deliver the user data to proper and efficient way, we give the proactive information push strategies to monitor online terminals and push user data to the right terminal.The selection of proactive information push strategies is given in Algorithm 1.
The proactive information delivery modular is always online to monitor the user data changes and user data requirements.Moreover, the modular also can update users interest changes according to their feedback for the delivered user information.

Data Self-Adaptive Strategies
For convenience, people visit their interesting data on different terminals, such as Web client and hand held devices.Due to the complexity of internet data and weakness of hand held device.The user data should be further prepared to meet the ability of their various terminals.Data selfadaptation is a complex work in the wireless environment.Lee and Lu discussed how to customize the WAP-based information on mobile networks in [13].In our previous work [9], we also have studied the data self-adaptation in the wireless environment.On basis of this work, we present a decision algorithm of data self-adaptive process in this section, through which, user data can be abstracted to meet their demand and processed self-adaptively according to terminal capabilities and network Qos.The flow of data selfadaptive process is given in Figure 6.
As shown in Figure 1, this part is corresponding to the third module of MPDIS.With the analysis above, the decision algorithm of data self-adaptive process is described in Algorithm 2. Totally 12 steps are included in the algorithm.In the MPDIS, this modular is driven by user data demand.Through retrieving and analyzing terminal capabilities, the user data can be collected and processed adaptively according to the terminal capabilities and the network Qos, and finally the newly generated target file would be dynamically sent to the corresponding terminals.
From Algorithm 2, we can see that the terminal capability is the core for user data self-adaptive processing.With this modular, user data submitted to the terminal will be more suitable and visual experience.In the system, we divide network traffic in to 11 grades, and the user data should be further processed gradually according to the network traffic, through which data package loss can be avoided.

Experimental Results
In order to validate the proposed technology, we design and implement the MPDIS using Microsoft C# 2008, and four types of terminals are adopted: PC, Pocket PC 2003, Smart Phone, and J618 (a real cell phone).In the experiments, we validate the MPDIS from three aspects accompanied with the three parts of MPDIS.There are analysis of users interest, discovery of terminal capabilities, and guarantee of MPDIS operation.

Analyzing of Users' Interests.
As mentioned in Section 2, we compute users' interests from their historical data.Therefore, we should analyze the correctness of user interests with the data volume.Figure 7 points out the average correctness collected from their feedback as the total data increases with the change in forgetting coefficient (m).From the figure, we can see that with  = 0.5 and the maximum data volume, users will get the maximum satisfaction with the user data delivered by MPDIS.

Discovery of Terminal Capabilities.
In order to generate data in a self-adaptive way, terminal abilities should be gathered first.Table 1 gives capability list of the main typical terminates used in our experiments.From the table we can see that the J618 is the weakest, because it only supports 8-bit screen depth, and it also has the smallest screen size.While, for web terminal, due to the strong support from PC, it is the strongest terminal.

Guarantee of MPDIS Operation.
As a proactive service, the MPDIS should be nonstop running.Therefore, the ability to guarantee the system stability is very important.However, many preference systems [14] or personalized recommendation systems didnot take this into consideration.In MPDIS, there are many measures used to guarantee the running of the system.The guarantee of PIPS operation is described in Figure 8, and the measures will be discussed in detail, respectively.
The main guarantee measures used in MPDIS mainly include the following.(1) Process and program monitoring: a watch dog service is developed to ensure the normal operations of MPDIS.There are two mechanisms included in the watch dog: one is handshake mechanism, and the other is data monitoring mechanism.The watch dog service checks the running sate of its host by sending handshake packages in small time intervals continuously and monitoring the signal data written to the database.(2) Error control: if the MPDIS program is running in the abnormal way, the error control mechanism may control the system to autorecovery or autorestart itself to ensure the service running continuously.
(3) Load balance and dynamic flow control: load balance is a traffic diversion strategy that deals with such a situation that the system fails to handle when numerous of users are online at the same time.Two queues are adopted in MPDIS to control the internal data flow.If the speed of message processed is faster than that of message received, the system will slow down the process speed to avoid data loss and save memory.

Conclusions
Focusing on the problem of information utilization in the modern society, a proactive information system on multiterminal is designed in this paper.The system firstly computes users' interests from their historical visit data from a more comprehensive viewpoint.Secondly, it retrieves and generates user data in a self-adaptive way according to their requirement and online terminals.Thirdly, the system automatically updates users' interests according to their feedback and interests changes and push users data to their terminals accurately and proactively according to their newly updated interests.Finally, the experiments demonstrate the MPDIS can work well in user interest computing and user data retrieving.By using MPDIS, the information can be sent to users in a timely, correct, and proactive way.As too much time was spent in user interests updating, interests online computing or incremental computing will be carried out in our future work to save time and enhance the efficiency.

Definition 2 .
User behavior weight BW, BW = [  ,   ,   ,   ,   ]  : it means the weight of visit time, reading count, rollback count, reading time, and copy and save, respectively.