learning and predicting user’s movements for intelligent...

59
Learning and Predicting User’s Movements for Intelligent Location-based Services Sang-Jun Han The Graduate School Yonsei University Department of Computer Science and Industrial Systems Engineering

Upload: vominh

Post on 26-Jun-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Learning and Predicting User’s

Movements for Intelligent

Location-based Services

Sang-Jun Han

The Graduate School

Yonsei University

Department of Computer Science

and Industrial Systems Engineering

Page 2: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Learning and Predicting User’s

Movements for Intelligent

Location-based Services

A Dissertation

Submitted to the Department of Computer Science

and Industrial Systems Engineering

and the Graduate School of Yonsei University

in partial fulfillment of the

requirements for the degree of

Master of Science

Sang-Jun Han

June 2004

Page 3: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

This certifies that the master thesis of

Sang-Jun Han is approved.

Thesis Supervisor: Sung-Bae Cho

Yoon-chul Choy

Shin-Dug Kim

The Graduate School

Yonsei University

June 2004

Page 4: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

CONTENTS

ABSTRACT vii

1 INTRODUCTION 1

1.1 Location-based Services . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Contribution of This Thesis . . . . . . . . . . . . . . . . . . . . . 4

2 BACKGROUND 5

2.1 Location-sensing Technologies . . . . . . . . . . . . . . . . . . . 5

2.2 Extracting High-level Context from Low-level Information . . . . 7

2.3 Link to Other Works . . . . . . . . . . . . . . . . . . . . . . . . 12

3 LEARNING AND PREDICTING USER’S MOVEMENT 14

3.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.2 Learning User’s Movements . . . . . . . . . . . . . . . . . . . . 15

3.2.1 Discovering Meaningful Movement Patterns . . . . . . . 17

3.2.2 Building Local Models . . . . . . . . . . . . . . . . . . . 22

3.3 Predicting Future Movement . . . . . . . . . . . . . . . . . . . . 24

3.3.1 Evaluating Current Movement . . . . . . . . . . . . . . . 25

3.3.2 Selecting the Closest Movement Pattern . . . . . . . . . . 25

4 APPLICATION 28

4.1 Device Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.2 User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.2.1 Finding Current Location . . . . . . . . . . . . . . . . . . 28

4.2.2 Assigning Services . . . . . . . . . . . . . . . . . . . . . 30

iii

Page 5: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

4.2.3 Delivering Services . . . . . . . . . . . . . . . . . . . . . 31

5 EXPERIMENTS 34

5.1 Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.2 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . 36

5.2.1 Clustering . . . . . . . . . . . . . . . . . . . . . . . . . . 36

5.2.2 Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . 37

6 CONCLUSION 41

BIBLIOGRAPHY 44

ABSTRACT (KOREAN) 49

iv

Page 6: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

LIST OF FIGURES

1.1 A comparison of approaches to LBS . . . . . . . . . . . . . . . . 3

3.1 An overview of the proposed technique. . . . . . . . . . . . . . . 15

3.2 Procedure of learning movement patterns . . . . . . . . . . . . . 17

3.3 Input and output layer of SOM. . . . . . . . . . . . . . . . . . . . 18

3.4 An example of topological neighborhood and neighborhood func-

tion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.5 RSOM training procedure. . . . . . . . . . . . . . . . . . . . . . 21

3.6 Combination of RSOM and Markov model. . . . . . . . . . . . . 23

3.7 Procedure of the movement prediction. . . . . . . . . . . . . . . . 24

3.8 Relationship among SOM clusters, local models, and services. . . 27

4.1 Handheld computer with a GPS sensor. . . . . . . . . . . . . . . 29

4.2 Current location screen . . . . . . . . . . . . . . . . . . . . . . . 29

4.3 User interface for assigning services . . . . . . . . . . . . . . . . 30

4.4 Service delivery screen . . . . . . . . . . . . . . . . . . . . . . . 31

4.5 Available services . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.1 Collected GPS data superimposed on campus map . . . . . . . . . 35

5.2 Labeled output units of RSOM . . . . . . . . . . . . . . . . . . . 37

5.3 Changes of the best matching nodes over time . . . . . . . . . . . 38

5.4 Changes of local model probabilities and significances . . . . . . 40

v

Page 7: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

LIST OF TABLES

2.1 Researches on extracting high-level contexts . . . . . . . . . . . . 8

2.1 continued . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

5.1 User’s movements in GPS data . . . . . . . . . . . . . . . . . . . 36

5.2 Result of prediction experiments . . . . . . . . . . . . . . . . . . 39

vi

Page 8: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

ABSTRACT

Learning and Predicting User’s Movements forIntelligent Location-based Services

Sang-Jun Han

Dept. of Computer Science and

Industrial Systems Engineering

The Graduate School

Yonsei University

Location-based services which is delivered according to user’s geographical

location are an important application of context-aware computing. For realiz-

ing location-based services, various location-sensing techniques and experimen-

tal/commercial services have been developed. However, in conventional location-

based services, the services are delivered simply depending on the current location

of user. They, thus, have a limitation in terms of flexibility and personalization.

For advanced location-based service, the researches on extracting high-level in-

formation from location data have been actively conducted. In this thesis, a novel

method of predicting user’s future movement by learning user’s location data and

a prototype location-based service application are proposed.

GPS is used for sensing user’s geographical location. RSOM which is special-

ized to process sequential data clusters the GPS data and finds meaningful moving

patterns automatically. Markov chain is used to build the model of each moving

pattern by learning clustered location data. The prediction of future movement is

done by comparing current movement with the models of movement pattern and

selecting most similar movement pattern.

vii

Page 9: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

A prototype of location-aware application is also presented. It assists an uni-

versity student using predicted future movement. The learned moving patterns

are visualized and the user can assign desired services to each moving pattern.

RSOM’s topology preservation ability allows the user to select services easily

and intuitively. HP iPaq handheld computer which has built-in wireless LAN and

additional GPS receiver is used to implement this application.

For verifying the proposed method, real GPS data is collected on campus and

the clustering and predicting performance were evaluated. The result is acceptable

and it worked flexibly even in ambiguous situation.

Keywords: Location-based Services, Context-awareness, Self-organizing Map,

Markov Model

viii

Page 10: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

1. INTRODUCTION

Recent advances in the concept and technology for mobile computing realized

high performance palm-top computers and high speed wireless communications.

These changes allowed people to access several computing resources anywhere

and anytime. Utilizing context information which is captured from sensors, user’s

personal information, device status is specially emphasized in mobile computing

application for following reasons.

First, human-computer interaction in mobile devices is more awkward than

that in conventional desk-top devices. Most of handheld-sized computers such

as personal digital assistants (PDA) and smartphones have small-sized display

panel and pen-based input interface. Context-awareness can be a good solution to

interaction problem of mobile device. For example, we can reduce the number of

interaction cycles needed to access desired information or select information to be

displayed user-adaptively using information about user’s preference and current

environment.

Second, the purpose of use of mobile device is highly dependent to his/her

environment, location, and time. Thus, context-awareness can be a key technique

to create a novel mobile services which are proactive and adaptive to current situ-

ation.

The notion of context includes many aspects such as physical location, user

identity, personal information, preferences, and time of day [20]. Among them,

location is very commonly used but a crucial component of context and there

was much effort to develop techniques for location-aware and create new services

which is adaptive to current location [14, 10, 15, 3, 27, 24]. However, only simple

1

Page 11: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

location information is not enough to develop new intelligent services. It is needed

to mine hidden information such as user’s current task, and future movements

from location information.

In this thesis, I propose a technique to extract high-level context by profiling

user’s movements for personalized location based service and a potential appli-

cation of the proposed technique. The main aims of the proposed technique are

forecasting user’s future movement and providing service appropriate to the fore-

casted movement.

1.1 Location-based Services

Location-based service(LBS) is service based on geographical location of user.

Location is very essential information to provide services that adapt to user needs

because user’s surroundings and situations are dependent on his/her location. The

examples of commercial LBS are as follows: The wireless Emergency 911 (E-

911) public safety service enables rapid response in situations where callers are

unable to speak or do not know their location by locating the caller’s cellular

phone [11]. Location-based services are already be also widely used in the mar-

ket. Wireless service providers can offer new customer-based rates which bills

different rates depending on whether the call is made from the home or offices

using location information [34]. Major credit card companies have created the

wireless ATM-locator services. Wireless device users can find the nearest teller

machine. Location information is a key component for intelligent transport sys-

tems, and telematics [9]. The ability to locate a vehicle enables services such

as providing localized information to travelers, more effective fleet management,

and rapid respond to traffic incidents. AT&T provides ‘find people nearby’ ser-

vice which allows that the user can finds the location of his/her friend and family

2

Page 12: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Location Service

Location Context Service

User Model

(a) Conventional approach

(b) Advanced approach

Figure 1.1: A comparison of approaches to LBS

[2].

Developing a novel LBS is a challenging research topic. Z. Pousman et. al

designed a location-aware event planner for handheld-sized computer [32]. Their

planner integrates mail box, address book, event scheduler, friends finder which

displays buddy’s location on campus map. User can organize their social events in

contextually-enhanced ways. It also includes privacy management functionality

which enables to manage user’s visibility to his/her buddies. Another interesting

research topic is the location-based game, provides experiences, depending on

player’s current location and context information. ‘Can You See Me Now’ of

Mixed Reality Laboratory at University of Nottingham and ‘Human Pacman’ of

Mixed Reality Laboratory at National University of Singapore provide the novel

gaming environments enhanced by physical location [32, 5].

In contrast to these present-day LBS only attempts to measure where a user is

now, this thesis moves beyond present-day location systems by extracting high-

level context (the future movement of a user) from location data. Prediction of

where a uses is going can play a important role to provide user-adaptive services

because the destination location is very closely related to the goal of user’s move-

ment.

3

Page 13: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

1.2 Contribution of This Thesis

This thesis investigates the advanced location-based service system enhanced by

context extraction. The main results of the thesis are following:

� A novel method for predicting user’s future movement and providing ser-

vices based on movement prediction is proposed and verified using real GPS

data that is colleted based on university student life. The proposed method

has the advantage in terms of flexibility comparing with previous work.

� A prototype application which provides personalized location-based ser-

vices in campus domain is developed. It has intuitive interface which is

easy to use non-expert users and the services are designed to assist the cam-

pus life of university students.

The rest of this thesis is organized as follows. Chapter 2 discusses about back-

ground and related work. The detailed description of the method of learning and

predicting user’s movements is presented in Chapter 3. Chapter 4 describes a

prototype application based on the proposed movement prediction technique. Ex-

perimental results are shown in Chapter 5. Chapter 6 is about the conclusion and

future works.

4

Page 14: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

2. BACKGROUND

In this chapter, we discuss background and related work in topics close to this

thesis. Section 2.1 presents discussions about variable location-sensing technolo-

gies. Section 2.2 discusses related work on inferring high-level information from

location information. The difference between the previous works on movement

prediction and this thesis is given in Section 2.3.

2.1 Location-sensing Technologies

Various systems and technologies for locate people, equipment, and other tangi-

ble things have been developed by many researchers, but there is no universally

applicable location-sensing technology because they are aimed for solving differ-

ent problems and to support different applications [15]. GPS is the most widely

known location-sensing technologies for global area today. It uses time-of-flight

lateration information derived from radio signals. The world-wide constellation

of satellite provides ubiquitous coverage and enables a GPS receiver to compute

latitude, longitude, and altitude to within few meters. The satellite infrastruc-

ture of GPS invested and Maintained by U.S. government is very expensive, but

civilian users can benefit from that by using a receiver which is relatively cheap

(around $100). Despite of these advantages, GPS has a significant drawback: it

works only outdoors because receivers cannot detect the satellites’ transmissions

indoors, especially in still-framed buildings [29]. In addition, its accuracy is not

sufficient for many small-scale applications for home or office use.

For wide-area location-sensing systems, the technology of locating cellular

5

Page 15: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

phones have been developed. The systems of this kind compute the distance or

direction from cellular phone to multiple base stations as follows: A cell phone

emits radio waves, which are received by one or more cellular base stations. The

distances to all receiving base stations is calculated based on the measurement

either signal strength, the angle of arrival (AOA) and the time difference of arrival

(TDOA) between the reception at all receivers, or their combinations, and from

this data, the position of the phone can be calculated [4, 8]. This approach has

the advantage of that it can work on existing phones, but its accuracy is relatively

lower (it can locate the position to within 150-300m).

The wireless network signal has been utilized for small-area location-sensing

systems which are used in home, office and building environment. RADAR, a

building-wide location system based on the IEEE 801.11 wireless LAN technol-

ogy, which has been developed by a Microsoft research group is an representa-

tive location-sensing system for small-area [3]. It uses the radio-frequency signal

strength as a measure of the distance between a base station and a receiver, then,

it computes the location within a building using this data. There are commercial

location-sensing products which use similar approach [31, 36]. This approach has

the advantage of that it does not need the special-purpose infrastructure because

it uses existing wireless networking.

In this thesis, GPS is used to track user’s location because we can collect

location data only with a GPS sensor which is relatively cheap and additional

infrastructure is not required. Another advantage of GPS is that additional imple-

mentation of computation procedure is not needed. We can sense user’s location

by directly using data from GPS receiver.

6

Page 16: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

2.2 Extracting High-level Context from Low-level In-

formation

Extracting user’s context has been a main issue in mobile and pervasive comput-

ing because it is critically required for creating pervasive computing applications

which recognize and respond to user’s tacit needs [28]. The main approach for

obtaining user’s context is to build the models of the desired contexts from the

low-level sensor data. Many research groups have been working on this topic.

They have attempted to extract various contexts such as human’s activity, type of

place, human’s affect, visiting preference, and future movement by learning and

modeling the low-level data from one or more sensors, which are wearable, at-

tached to mobile device, or installed in specific target place. Table 2.1 summaries

representative research results.

Several artificial intelligence techniques have been applied for extracting high-

level context. Especially, soft computing techniques such as probabilistic model-

ing, neural networks, and fuzzy logic have been actively applied. Hidden Markov

model (HMM) which is a simple case of probabilistic network model has been

used actively because it is known for good performance in time series data mod-

eling. A.P. Pentland and his colleagues have applied HMM to make wearable

messaging system be aware of audio environment[6]. The conversation which is

made by and around the user is detected by modeling audio data using HMM and

by doing this, wearable messenger can notify incoming messages at the time and

in the way which is appropriate to current environmental context. In [7], they have

extended their research by importing additional sensor: an wearable camera and

various target context: coarse locations and activities. N. Oliver and A.P. Pentland

have applied HMM to recognize driver’s behavior [26]. HMM is used for mod-

eling signals from several sensors installed in real car and recognizing driver’s

7

Page 17: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Table 2.1: Researches on extracting high-level contexts

Researchers(Year) Information sources Techniques Target contexts

D.J. Patterson et al.(2003)[28] Location(GPS) DBN1 Transportation mode: car, bus, walk

F. Sparacino (2003)[33] Location DBN1 Museum visitor type: greedy, busy,

selective

D. Ashbrook et al. (2002)[1] Location(GPS) modified

kMC2,

MC3

Future movement

J. Mantyjarvi et al. (2001)[25] Acccelation sensors MLP3 Activity: Up/down stairs, start/stop

point, level walk

Korpipaa et al. (2003)[22] Microphone, Sensors

for acceleration, light

intensity, tempera-

ture, humidity, skin

conductivity

Naive

Bayes

Activity: walking, running, Place:

elevator, car, Sound: rock music,

classical music, speech

Lee and Mase (2002) [18, 19] Acceleration sensors FS9, Dead

reckoning

Activity: sitting, standing, walking,

Location in a office

Peltonen et al. (2002)[30] Microphone kNN6,

GMM10

Place: streets, office, library, car,

church, etc.

8

Page 18: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Table 2.1: continued

Researchers(Year) Information sources Techniques Target contexts

Laerhoven and Cakmarci (2000)[17] Acceleration sensors SOM5,

kNN6 ,

MC3

Activity: sitting, standing, running,

riding bycicle, etc.

Clakson et al. (2000)[6, 7] Wearable camera, Mir-

cophone

HMM4 Activity: leave/enter office, sitting

on grass, crossing street, etc.

Himberg et al. (2001)[16] Microphone, Sen-

sors for acceleration,

luminosity,

DP7, GIR8 Activity: sitting, walking, standing,

etc., Place: coridor, porch, lobby,

etc.

Oliver and Pentland (2000) [26] Sensors installed in car

for speed, gear, brake,

acceleration, steering

angle

HMM4 Driver’s behavior: passing, turning,

changing lane, etc.

�Dynamic Bayesian Network, �k-Means Clustering, �Markov Chain, �Multi-layer Perceptron, �Hidden Markov Model, �Self-

organizing Map, �k-Nearest Neighbor, �Dynamic Programming, �Global Interactive Replacement, �Fuzzy Sets, ��Gaussian Mixture Model

9

Page 19: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

behavior such as passing, changing lane, and turning.

Naive Bayesian network which is the most straightforward and simplest Bayesian

learning method has applied to classify the context of a mobile device user by P.

Korpipaa et al. [22]. A small sensor box which contains sensors for accelera-

tion, light intensity, temperature, humidity, skin conductivity, and audio is used

for measuring environmental situation. They classified 13 context using features

extracted these sensors achieving an accuracy of 87% true positives and 95% true

negatives against sensor data collected in real world condition with leave-one-out

cross validation.

Dynamic Bayesian network which can be viewed as a generalization of hid-

den Markov model represents the knowledge dependent on time for temporal data

modeling using directed graph model. D.J. Patterson et al. proposed a method

for current transportation mode such as taking a bus, driving a car, and walking

from GPS data using dynamic Bayesian network model [28]. Domain knowledge

about real world constraints such that cars are left in parking lots and bus take off

passengers only at bus stops was incorporated into the Bayesian network model

and the parameters of heir network are learned using expectation-maximization

(EM) algorithm. In their experimental results against real GPS data, the network

model learned using EM outperforms the decision tree, and the network model

without domain knowledge. F. Sparacino utilized dynamic Bayesian network for

user adaptive storytelling in museum [33]. User’s location is tracked by infrared

beacons and she built Bayesian network model that estimates the visitor’s type

such as greedy, selective, and busy from user�s location and duration at each lo-

cation. Visitors see the different explanation about exhibits according to their

visiting habit.

Neural network also has been applied by several researchers in this domain. J.

Mantyjarvi et al. applied multi-layer perceptron classifier to recognize human’s

10

Page 20: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

activity [25]. They used principal component analysis (PCA) and independent

component analysis (ICA) for extracting features from three acceleration sensors

that attached to user’s belt. In their experiments, multi-layer perceptron was used

to classify four activities and the classification results of ICA were superior to

that of PCA. K.V. Laerhoven et al. applied the self-organizing map which is the

representative unsupervised learning neural network as a quantization component

of their context-aware system. SOM plays the role of clustering signals from

various sensors in their system. they mentioned the potential applications which

utilize location-forecasting technique to deliver advanced location-based service.

Fuzzy logic has been used in order to quantize the low-level sensor signal

information of which boundaries are uncertain into context symbols of a finite

number. In [19], S.-W. Lee et al. attempted to recognize three types of human’s

walking activities: walking on level ground, going upstairs and going downstairs

using acceleration sensors. Fuzzy logic reasoning was applied to classify the level

walking activity into one of the sub-categories: slow, normal, or fast for more

accurate location estimation. P. Korpipaa et al. also used fuzzy sets to quantize

extracted feature values from sensor signal [22]. The membership value of each

context symbol are used as input of naive Bayesian classifier.

Besides these soft computing techniques, statistical classification methods have

also been applied. D. Ashbrook et al. proposed a technique for predicting user’s

future movements using a modification of k-means clustering algorithm and Markov

chain model [1]. GPS data were clustered by k-means algorithm to find significant

locations at which the user stayed relatively long time. The historical movements

among these locations were modeled by Markov chain model. J. Himberg et al.

viewed context recognition as time series segmentation problem which is to find

segments that minimize the intra-segment variances [16]. Dynamic programming

which can always provide optimal solution was applied, but it is not feasible be-

11

Page 21: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

cause of its heavy computational cost. Therefore, they applied global iterative

replacement, a kind of greedy optimization algorithm, which can find near opti-

mal solution in shorter time.

K-nearest neighbor classifier(kNN) and Gaussian mixture models(GMM) were

applied to recognize environmental scenes using audio information [30]. They

tested 1-NN classifier and GMM learned using EM algorithm against audio data

which include 17 types of environmental scene. The recognition rate of their

method: 68.4% was comparable with human’s accuracy: 70%.

2.3 Link to Other Works

Previously, D. Ashbrook et al. attempted to predict user’s future movement using

a modified k-means clustering algorithm and a Markov chain model [1]. They

discovered meaningful locations by clustering GPS data and used single Markov

model which uses each location as a state to predict future movement. They also

mentioned the potential applications which utilize location-forecasting technique

to deliver advanced location-based service. However, their work has some limita-

tions.

Their system has the disadvantage of inflexibility, and consequently it cannot

cope with ambiguous situations. It is because it does not consider how the user

moves, but where the user is. For example, when the user is about to leave home,

it will predict that he is likely to move toward school if school is the place to which

he most frequently moved from home. But, even in cases of that the user leaves

for shopping center or restaurant, their method will predict the same. This can be

a big problem when it is attempted to be put into practical use. Another limitation

is that they did not realize potentially-practical application they mentioned.

This thesis attempts to develop a location system based on movement predic-

12

Page 22: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

tion and improved in terms of flexibility and practicality. The technique proposed

in this thesis predicts future movement by learning the path of movement for more

flexible prediction. To get up to the practical real-world application, more concrete

application based on location prediction is implemented.

13

Page 23: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

3. LEARNING AND PREDICTING

USER’S MOVEMENT

This chapter presents the proposed learning and predicting method for intelligent

location-based service. We start by describing the overall architecture of the pro-

posed method in Section 3.1. Section 3.2 presents the technique for clustering

GPS data. In Section 3.2.2, we explain about building local models using Markov

models., and Section 3.3 describes the method to predict user’s future movement.

3.1 Architecture

The main ideas of the proposed are two. First one is automatic knowledge discov-

ery from location data captured from a user’s everyday life. Meaningful move-

ment patterns are discovered without pre-knowledge. Second one is to solve

global problem by dividing it into local problems and solving them. Learning

the whole user’s movement is achieved by dividing user’s movement data into

the groups of similar movements and learning each data group. Prediction of fu-

ture movement is done by finding the movement group which is closest to current

movement.

The proposed method is comprised of four layers. In measurement layer, a

GPS sensor which is carried by user is used to measure user’s movement. Dis-

covery layer plays the role of discovering meaningful patterns from measurement

data and forming local problems. SOM is used to clustering the historic GPS data

collected and discovery local problems. Markov model is used to learning each

cluster of GPS data in learning layer. Action layer delivers the services which are

14

Page 24: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

MeasurementGPS

DiscoverySOM

LearningMarkov model

ActionManual assignment

User

PersonalizedServices

Figure 3.1: An overview of the proposed technique.

most suitable to current situation to user. In this thesis, users manually assign the

services desired to be delivered while they are moving along a certain path. Figure

3.1 illustrates an overview of the proposed technique.

3.2 Learning User’s Movements

There are many kinds of movements in people’s life and the type of movements

are very different person to person. If we attempt to use supervised leaning ap-

proach to modeling a person’s movements, pre-knowledge about the target user

is strongly required. In other words, the number and type of his/her movement

must be known because we have to label each movement pattern. Therefore, it is

not feasible to develop the movement learning system which is able to be easily

adapted to any user. To develop the movement learning system which is eas-

ily adaptable to user’s life pattern, it is need to automatically find what kinds of

15

Page 25: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

movements exist in a person’s life with minimum pre-knowledge. Self-organized

learning is very suited to this purpose. It enables to discover novel knowledge

without pre-knowledge. Self-organizing map, thus, is employed to discover the

types of persons movement from historic location data.

The benefit of SOM is not limited to automatic knowledge discovery. There

are two more reasons of using SOM. One of the nice characteristics of SOM

is topology preservation ability. Output layer provides a good representation of

important feature of input data. Competitive learning algorithm tunes the location

of the units in output layer to be topologically ordered. Consequently, similar

movements are mapped onto contiguous locations in SOM output space. This

feature plays a viable role to develop an intuitive user interface.

The second major benefit is that SOM provides a good approximation of orig-

inal input space. SOM maps continuous input space to discrete output space. The

output space of SOM can be viewed as a smaller set of prototypes which stores

a large set of input vectors. This property contributes to simplify the problem.

The sequences of raw GPS records can be transformed to the sequences of units

of finite number by projecting them onto SOM output space. We can state the

transformed movement data as the state transition sequence of user’s movement.

Thus, we can model user’s movement pattern more effectively by learning tran-

sition sequence of finite states rather than learning sequences of vectors of two

floating-point numbers

After discovering meaningful movement patterns, historic movement data are

clustered into local data sets using SOM and each local data sets are used to learn

local models with Markov chain model. The service which are desired to be deliv-

ered when a user moves along a specific movement pattern is manually assigned

to each local model. The overall procedure of learning user’s movement and as-

signing services are shown in Fig. 3.2.

16

Page 26: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

LearningSOM

Bu

ilding Local M

odels

Assignin

g Service

sClustering

Svc

Svc

Svc

. . .

. . .

SOM

Local data set

. . .

LocalModel

LocalModel

LocalModel

TrainingData

LocalData

LocalData

LocalData

Figure 3.2: Procedure of learning movement patterns

3.2.1 Discovering Meaningful Movement Patterns

Recurrent Self-organizing Map

SOM is a representative unsupervised learning neural network. It has been used to

solving clustering and vector quantization problem. The principal goal is to trans-

form an incoming input pattern of arbitrary dimension into a one or two dimen-

sional discrete map [13]. The output map � consists of a rectangular or hexagonal

lattice of �� units. Figure 3.3 illustrates the schema of input and output layer of

SOM which uses 4�4 size rectangular output map and 3-dimensional input vec-

tor. Each element of input vector is fully connected to all the units in output layer

and each �th unit in output layer has an associated codebook vector ��.

The algorithm for training SOM involves four essential processes: initializa-

tion, competition, cooperation, adaptation. First, we initialize the codebook vec-

tors �����. It can be done in various ways, but most widely used method is assign-

ing randomly-generated numbers. Next three steps are summarized as follows:

1. Competition We draw a input pattern ���� from input space and compute

the difference between current input pattern and each unit in output map

using Euclidean distance measure. The unit of the minimum difference is

17

Page 27: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Output layer

Input layer

Figure 3.3: Input and output layer of SOM.

selected as the best matching unit (BMU) ���� at time step �.

���� � ����������� ������ (3.1)

By this process, continuous input pattern is mapped onto discrete output

space.

2. Cooperation The topological neighborhood is defined with respect to the lat-

tice structure, not according to difference between the current input pattern

and map units. The best matching unit locates the center of a topological

neighborhood of cooperating units. The following Gaussian function � is

typically used as a neighborhood function.

���������� � ���������

������ (3.2)

It decay smooth with lateral distance ���� between BMU �, and unit . The

size of topological neighborhood shrinks with time by decreasing the width

18

Page 28: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Best matching unit

(a) Topological neighborhood (b) Neighborhood function

Figure 3.4: An example of topological neighborhood and neighborhood function

of neighborhood function ���� at time step �. Using this function, immedi-

ate units are activated more that farther away. Figure 3.4 shows an example

of topological neighborhood and neighborhood function

3. Adaptation The weights of units inside the neighborhood are updated in

relation to input vector using the following equation.

����� �� � ����� � ������������������� ������ (3.3)

The learning rate parameter ��� is also varied during learning. It should

decrease gradually with increasing time �. By the neighborhood function,

the units in neighborhood are updated in a distance-weighted manner rather

than update all units within neighborhood equally. The algorithm is con-

tinued with competition step until no noticeable changes in output map are

observed.

RSOM is a modification of SOM, which is specialized for temporal sequence

processing but inherits original properties of SOM [23]. The differences between

19

Page 29: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

RSOM and standard SOM is as follows. RSOM allows storing temporal context

from consecutive input vectors by putting the leaky integrator into the difference

formula of competition step.

����� � ��� ������� �� � ������� ������ (3.4)

where � is the leaking coefficient, ����� is the leaked difference vector at step

� and ���� is input vector at step �. The best matching neuron criterion and

codebook vector update rule are not different from the standard SOM. The best

matching unit at time step �, ����, is the unit with minimum difference.

���� � ������������� (3.5)

The �th codebook vector at step �, �����, is updated as follows:

����� �� � ����� � ���������� ������� (3.6)

The difference vectors are reset to zero after learning each input sequence. The

procedure of training RSOM is shown in Fig. 3.5.

Clustering Movement Data

In this problem, the input vector, ����, is GPS data observed at time �, which is

two dimensional vector composed of user’s longitude and latitude. New GPS data

is captured one or two times per second even if user does not move. Therefore,

there are many meaningless data in raw GPS data. For this reason, we filtered raw

data. Only after user travels some distances, GPS data are captured and used for

training and predicting.

User’s movement, �� � ����� ���� � � � �����, is clustered according to

the last best matching unit. After building the output map, each movement data

in training data set is evaluated by trained RSOM and the sequence of BMU is

traced. The movements which are clustered into the �th output unit forms a local

data set, �� � ��� �� � � � ���.

20

Page 30: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

End

InitializeCodebook Vectors

SelectInput Sequence

Similarity Matching

Set NextInput Vector

Updating

End ofSequence?

End Condition?

No

No

Yes

Yes

Figure 3.5: RSOM training procedure.

21

Page 31: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

3.2.2 Building Local Models

Markov Chain Model

A Markov model is a stochastic process based on the Markov assumption, under

which the probability of a certain observation only depends on the observation that

directly preceded it. A Markov model has a finite number of states, � � � � � that

are defined by a transition probability matrix

� �

���������

��� ��� � � � ���

��� ��� � � � ���...

... � � �...

��� ��� � � � ���

���������

(3.7)

and an initial probability distribution

� � ��� �� � � � ��� (3.8)

where ��� is the probability of state transition from � to , �� is the probability of

which the state � is observed at time 0 and

�����

��� � � (3.9)

We can learn a Markov model by computing the transition probability and the

initial probability distribution from the training data as follows:

��� ����

��

(3.10)

where ��� is the number of state transitions from state � to state and �� is the

number of observation of state � [37].

�� ���

�(3.11)

where � is the total number of observations.

22

Page 32: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

.

.

.

Best maching unitsof SOM

Markov modelGPS recordsequence

x1:(latt, long)

x2:(latt, long)

xn:(latt, long)

x3:(latt, long)

x4:(latt, long)

x5:(latt, long)

x6:(latt, long)

x7:(latt, long)

Probability

bMMRaw GPS data: Sequence of BMUs:

Figure 3.6: Combination of RSOM and Markov model.

Combination of RSOM and Markov Model

Local models are built using first-order Markov model. A Markov model learns

the sequences of the best matching unit instead of raw GPS data. The changes

of the best matching unit during processing sequence data can be considered as

changes of state because SOM approximates the input space.

A transformed local data set ��� is built by transforming each moving pattern

�� into the sequence of best matching unit � �� � ����� ���� � � � ����� and a

local model ��� associated to the �th output node learns a transformed local data

set, ��.

A local model ��� is learned with ��� . There are local models which are

as many as the number of output units of RSOM because one Markov model is

used per one local data set. Figure 3.6 illustrates the combination of RSOM and

Markov model.

23

Page 33: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

ReadNew GPS Record

Find BMU

ExceedThreshold?

Evaluate BMUSequence

ComputeSignificance

Execute AssignedService

Select LM of MaxProbability

Figure 3.7: Procedure of the movement prediction.

3.3 Predicting Future Movement

The procedure of the movement prediction is shown in Fig. 3.7. A new GPS

record is read from GPS receiver and it is inputted into RSOM to get the BMU.

The new sequence of BMU is made by concatenating the newly obtained BMU

and previously obtained BMUs. Then, the BMU sequence is evaluated using local

models and the local model of maximum probability is selected. If the probability

of the selected model is significantly high, current movement is considered as the

movement pattern which corresponds to the selected local model and the service

which is manually pre-assigned to that local model is invoked. The rest of this

section describes how the BMU sequence is evaluated by local models and how

the significant local model is selected.

24

Page 34: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

3.3.1 Evaluating Current Movement

The state � in Markov model corresponds to the �th output unit in SOM because

the sequences of the best matching units are used as inputs. The probability that

a sequence of the best matching unit ���� ���� � � � ��� � occurs from a given

Markov model is computed as follows:

� ����� ���� � � � ��������� � �����

�����

��������� (3.12)

The higher probability we obtain from (3.12), the more likely user moves similarly

to the corresponding local data set.

3.3.2 Selecting the Closest Movement Pattern

The predicttion of user’s future movement is made using the probabilities of local

models. The simplest solution to selecting the likeliest movement pattern is maybe

applying a threshold to the probability of the local model and selecting the local

model which shows the probability exceeds the predefined threshold. However,

this method is lack of flexibility because the level of probability varies according

to the length of the movement. As the movement the overall level of probability

decreases because the longer user moves, the more the state transition probability

of Markov model is multiplied. Thus, the decision boundary has to be varied

according to movement pattern.

Therefore, the significance of a local model is used rather than the direct use of

the local model probability. GPS data which are newly generated from user’s cur-

rent movement are inputted to RSOM to get intermediate state and the sequence

of intermediate states is evaluated by local models. Prediction of future movement

is made if there is a local model which shows significantly higher probability than

others. We select the outstandingly probable local model. The significance of a

25

Page 35: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

local model is computed as follows:

������������� � � �� ��������

������� ��

� �� �������

� � �(3.13)

The significance of a local model is defined as the difference between the prob-

ability of that the current sequence is generated from one model and the mean

of probability from others. If the significance of a local model which shows the

maximum probability exceeds the predefined threshold, we predict that the user

will move similarly to the corresponding local data set. Using this method we

can predict user�s movement as soon as the probable pattern is found. The lower

threshold we set the earlier we can predict user’s movement. If threshold is set as

high, the prediction is likely made later but the risk of miss prediction is relatively

low.

If the prediction is made, the service which is assigned to corresponding local

model is invoked. Figure 3.8 illustrates the relationship among SOM clusters,

local models, and services. units used for clustering. A SOM cluster is related

to a local model and a local model is related to a service. The relation between

a SOM cluster and a local model is made automatically and static. The relation

between a local model and a service is made manually and dynamic. It can be

changed according to user’s preference.

26

Page 36: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

SVC3

LM1

LM6

LM9

LM3

LM2 LM8LM5

LM10

Local models

SOM Clusters

Assigned ServicesSVC1

SVC2

SVC3 SVC3

SVC4SVC4

SVC5SVC5

SVC4

LM2

LM4

Figure 3.8: Relationship among SOM clusters, local models, and services.

27

Page 37: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

4. APPLICATION

Movement prediction ability can be utilized in much application domains. In [1],

they introduced potential applications for single-user and multi-user environments

based on movement prediction. User assistant may be the most common but use-

ful application. We have implemented a prototype user-assistant which uses the

proposed movement-prediction system. Our application targeted to a university

student and assists the user using predicted future movement. User who carries

palm-top computer with GPS sensor can receive desired services according to

his/her movements in campus.

4.1 Device Platform

A HP iPaq handheld computer based on Microsoft Pocket PC is used. An ad-

ditional GPS sensor is attached to this handheld device to track user’s location.

User can access world-wide web using built-in wireless LAN and web browser

anywhere in campus. Figure 4.1 shows the handheld computer with a GPS sen-

sor used to implement our application.

4.2 User Interface

4.2.1 Finding Current Location

The application starts with the current location screen as shown in Figure 4.2. A

red box located at the center of the screen points the user’s current location on

campus map.

28

Page 38: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Figure 4.1: Handheld computer with a GPS sensor.

Figure 4.2: Current location screen

29

Page 39: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

(a) (b)

Figure 4.3: User interface for assigning services

4.2.2 Assigning Services

Figure 4.3(a) shows the user interface for browsing moving patterns which are

discovered by RSOM. The group of buttons corresponds to the output units of

RSOM. The activated buttons mean meaningful moving pattern. Only buttons

which are associated with output unit used to clustering are activated. User can

see GPS data clustered into an output unit by tapping one of activated buttons.

GPS data is displayed being superimposed on campus map in order to catch how

he/she moved at a glance. After seeing discovered pattern, user can select a service

which is desired to receive when he/she moves like that pattern in next time from

the service list. The moving patterns located at near output unit are likely to

be similar because SOM construct topological map from training data. Thus, user

can browse location data and select services easily and intuitively by assigning the

same service to near buttons. Figure 4.3(b) shows the user interface for display

GPS data and selecting desired service.

30

Page 40: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Figure 4.4: Service delivery screen

4.2.3 Delivering Services

When the movement prediction is made, the pre-assigned service is delivered to

user. A new pop-up window appears on the top of screen with ringing a bell as

shown in 4.4. If user taps ’OK’ button, the corresponding service is executed, and

if taps ’Cancel’ button, the service recommendation is ignored.

We can imagine many useful services with wireless-enabled handheld com-

puter and movement prediction ability because what he/she wants to do is strongly

related to where he/she will go and wireless network enables anywhere access to

desired information. In [35], M. Weiser introduced many possible changes in cam-

pus with ubiquitous computing infrastructure such as wireless networks, personal

e-card and location tracking system. F. Gandon et al. implemented some location

based services on campus [12]. We have implemented some services which can

be related to user’s movement pattern. Figure 4.5 shows the services currently

available on our application.

These services can provide useful assists when they are associated with pre-

31

Page 41: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

ferred movement pattern. For example, user may be reminded of the topics of to-

day’s lecture before he/she arrives at lecture room by assigning the lecture home-

page service to the movement pattern toward certain building. User may see lunch

menu in advance to arrive at restaurant and subway schedule while walking to

subway station to be back to home.

32

Page 42: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

(a) Lecture web page (b) Finding friends

(c) Lunch menu (d) Subway schedule

Figure 4.5: Available services

33

Page 43: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

5. EXPERIMENTS

In this chapter, the performance of the proposed method is evaluated in terms of

clustering, accuracy, and prediction performance. Section 5.1 describes how to

collect data which is used for experiments and the experimental results are given

in Section 5.2.

5.1 Data

To test the proposed method, we collected real GPS data based on actual campus

life for university student. We modeled usual 10 movements. She usually moves

among 9 places for attending a lecture, having lunch, studying and participating

club activity as shown in Table 5.1. Two users walked along these predefined paths

with a GPS-enabled handheld computer. Each movement can be discriminated

using the loss of GPS signal and each movement is labeled according to its start

location and end location. The data set contains 10 classes of movement and each

class has 6 instances. Total 60 movements are included.

Figure 5.1 shows all GPS data superimposed on campus map and location of

buildings. Collected data are not the same as real moving paths due to the errors

of GPS signal.

34

Page 44: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

8 9

7

6

5 4

23

1

1. Main Gate2. Engineering Hall |3. Engineering Hall |||4. Student Union5. Central Library6. Auditorium7. College of Liberal Arts |8. College of Liberal Arts ||9. College of Social Science

Figure 5.1: Collected GPS data superimposed on campus map

35

Page 45: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Table 5.1: User’s movements in GPS data

Number Path Description

1 Main Gate � Engineering Hall I Lecture

2 Engineering Hall I � College of Liberal Arts II Part-time job

3 College of Liberal Arts II � Auditorium Lecture

4 Auditorium � College of Social Science Lecture

5 College of Social Science � Engineering Hall III Lecture

6 Engineering Hall III � Student Center Having lunch

7 Student Center � Engineering Hall III Lecture

8 Engineering Hall III � Central Library Studying

9 Central Library � College of Liberal Arts I Club activity

10 College of Liberal Arts I � Main Gate Return home

5.2 Experimental Results

5.2.1 Clustering

First, we have tested clustering performance of RSOM. After training RSOM,

each output unit is labeled by one of the 10 classes. We evaluate the training data

using the RSOM developed and each movement pattern is associated with its last

best matching unit. Then, each unit is labeled as the dominant moving patterns.

We have used 8 � 8 map size of SOM. The initial learning rate is 0.03 and the

initial neighborhood radius is 4. The training algorithm is repeated 1000 times.

Figure 5.2 illustrates an example of the labeled output units of RSOM.

Each circle represents an output unit and the shaded circle means the output

unit which does not participate in the clustering. As shown in the figure, the

same moving patterns are located at near locations. All the output units labeled

as the same class are adjacent. In addition, we can observe two large groups:

36

Page 46: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

5 5 8 8

7 5

1 6 9

10 6 2

6 2 2

6 2

6 3

3 4

Figure 5.2: Labeled output units of RSOM

left-top side and right-bottom side. In left-top side of map, there are 1, 5, 6, 7,

8, and 10. 2, 3, 4, and 9 are at right-bottom side. The left-top side group ends in

the southern part of campus: engineering hall I/III, main gate, student center, and

central library. On the other hand, the right-bottom group ends in the northern part

of campus: auditorium, college of liberal arts I/II and college of social science.

These are due to the topology preservation property of SOM. This property helps

the user browse clustered moving patterns and assign desired services easily.

5.2.2 Prediction

Figure 5.3 shows the changes of the best matching unit over time. We can see that

the different moving patterns show the different sequences of the best matching

unit and ends at the different output unit. Thus, we can predict user�s movement

by observing how the best matching unit changes at present and comparing it with

that of historical sequences of the best matching unit.

The movement data set contains an ambiguous situation, i.e. there are move-

37

Page 47: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

0

10

20

30

40

50

60

1 2 3 4 5 6 7 8 9 10

Figure 5.3: Changes of the best matching nodes over time

ments from the same location, but to multiple locations. In this situation, the

start location of movement is not enough to predict future movement accurately.

This ambiguity occurs comes out when predicting the movement pattern 6 and 8.

The pattern 6 is from engineering hall III to student union and the pattern 8 from

engineering hall III to central library. Figure 5.4 shows how the probability and

significance of local models changes as the user moves along the path of pattern

6. Local models which show zero probability are omitted from table. Bold-faced

numbers mean the local model of maximum probability at each time step. User

starts to move at engineering hall III. In the early period of movement, the prob-

ability of local model 8(2) is higher than that of others because pattern 8 which

starts at engineering hall III and ends at central library is similar to pattern 6. How-

ever, its significance is small and does not exceed threshold, which is set as 5.5.

At time 11, it becomes more certain that the user does not move toward central

library because the user passed the fork of a road. For this reason, the state transi-

38

Page 48: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

Table 5.2: Result of prediction experiments

1 2 3 4 5 6 Avg.

Miss rate 16.7% 0% 0% 16.7% 16.7% 16.7% 11.13%

Error rate 16.7% 16.7% 0% 16.7% 16.7% 16.7% 13.91%

tion which did not exist in the local data set of 8(2) occurs and the probability of

local model 8(2) is dropped to zero. The next winner is 6(5). At time 12, the sig-

nificance of 6(5) exceeds the threshold and user�s future movement is predicted as

pattern 6 and the service which was map into 6(2) is executed. This result verifies

that the proposed method works flexibly even in an ambiguous situation.

The prediction performance was evaluated with whole data set. Because the

size of data set is not large, we applied 6-fold cross validation. Whole data set

is divided into 6 subsets and each subset contains 10 moving patterns of different

class. RSOM is trained with the five subsets and the one remaining subset is used

for testing. The result of each cross validation is shown in Table 5.2

Miss means that the prediction was not made because of low significance and

error means that future movement was predicted wrongly. Most of misses was

occurred when predicting the pattern 1. There is no time enough to exceed the

threshold because main gate and engineering hall I are near. The time which

elapsed until prediction is also measured. The average moving time is 5 minutes

25 seconds and the average time elapsed until prediction is 1 minute 31 seconds.

We can control the decision making time by adjusting the threshold of local model

significance.

39

Page 49: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

1

Student UnionCentral Library

Eng. Hall III

611

19

Local model (probability � significance)

Time 5(1) 5(2) 6(1) 6(2) 6(3) 6(4) 6(5) 8(1) 8(2)

1 -1.6 1.6 -2.8 2.7 -0.6 0.4 -0.5 0.4 -1.2 1.0 -1.1 1.0 -0.8 0.6 -1.0 0.8 -0.3 0.12 -1.9 1.7 -3.0 2.9 -0.8 0.5 -0.6 0.4 -1.3 1.1 -1.3 1.1 -0.9 0.7 -1.2 1.0 -0.4 0.23 -2.0 1.9 -3.1 3.0 -0.8 0.6 -0.7 0.5 -1.5 1.3 -1.4 1.2 -1.0 0.8 -1.4 1.2 -0.5 0.34 -2.2 2.0 -3.3 3.1 -0.9 0.7 -0.8 0.6 -1.6 1.4 -1.6 1.4 -1.1 0.9 -1.6 1.4 -0.5 0.35 -2.3 2.1 -3.5 3.3 -1.1 0.8 -0.9 0.6 -1.8 1.6 -1.7 1.5 -1.2 1.0 -1.9 1.6 -0.6 0.46 -2.4 2.2 -3.6 3.4 -1.3 0.9 -1.0 0.7 -1.9 1.7 -1.9 1.7 -1.3 1.1 -2.1 1.9 -0.7 0.47 -2.6 2.3 -3.8 3.6 -1.3 1.0 -1.0 0.8 -2.1 1.8 -2.0 1.8 -1.4 1.2 -2.3 2.1 -0.8 0.58 -2.7 2.4 -3.9 3.7 -1.4 1.1 -1.1 0.9 -2.2 2.0 -2.2 1.9 -1.5 1.3 -2.5 2.3 -0.8 0.69 -4.8 4.2 -5.9 5.4 -3.6 3.1 -3.6 3.1 -4.2 3.7 -4.1 3.6 -3.8 3.3 -4.1 3.6 -3.5 3.0

10 -5.9 5.4 -6.9 6.4 -4.3 3.9 0 0 -4.5 4.0 0 0 -4.5 4.0 -4.8 4.3 -4.2 3.711 0 0 0 0 0 0 0 0 -5.8 5.8 0 0 -5.2 5.1 0 0 0 0

12 0 0 0 0 0 0 0 0 -6.5 6.5 0 0 -5.6 5.5 0 0 0 0

13 0 0 0 0 0 0 0 0 0 0 0 0 -6.7 6.7 0 0 0 0

14 0 0 0 0 0 0 0 0 0 0 0 0 -7.4 7.4 0 0 0 0

15 0 0 0 0 0 0 0 0 0 0 0 0 -8.1 8.1 0 0 0 0

16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Figure 5.4: Changes of local model probabilities and significances

40

Page 50: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

6. CONCLUSION

In this thesis, a novel method for learning user’s movement patterns and predicting

future movements is presented. It learns how the user moves using GPS data.

RSOM is used to discover meaningful movement patterns and divide into local

problems by clustering GPS data. Markov model is used to build local models by

learning the discovered patterns. Current movement is evaluated by local models

and the prediction is made when there is a local model which shows remarkably

higher probability than others.

The performance of movement prediction is verified with real GPS data col-

lected based on real university student life. The result is acceptable and it works

flexibly in the ambiguous situation ,even if the data set size is relatively small.

However, for more reliable evaluation, collecting large GPS data captured from

real human life is strongly required.

A possible application that utilizes the proposed method for assisting a uni-

versity student on campus is also presented. User who carries a handheld com-

puter with GPS sensor can be received useful services according to his/her current

movement. The topology preservation property of RSOM helps to implement in-

tuitive and easy-to-use user interface. The proposed movement-prediction based

application is potentially useful, but its usefulness is not systemically evaluated.

It is needed to conduct the experiment for testing the usability of the proposed

application with several university students.

More useful services which are feasible on university campus and other dif-

ferent application of movement prediction can also be developed. For example,

movement prediction can be utilized for saving network cost. Let us consider

41

Page 51: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

the situation of that the user is writing an e-mail message in CDMA network is

only available. Assuming that e-mail agent knows the user is moving to the place

where wireless LAN which is cheaper than CDMA network is available, sending

the message should be held back until wireless LAN becomes available for saving

cost.

In the future work, the following improvements can be done.

� Giving semantics to the movement patterns which is discovered: In current

system, user recognizes the type of movement pattern by seeing movement

path which is superimposed on campus map. and assigns the desired ser-

vice to the cluster of the movement pattern. However, for more intuitive

user interface, it is needed to giving semantic information to the movement

patterns. For instances, the system provides the semantic information of

movement pattern like that this movement pattern is from main gate to cen-

tral library. rather than shows the movement path.

� Assigning services automatically: This may be achieved by utilizing se-

mantic information of the movement patterns. Building the service assign-

ing rules which cover some general cases like if movement toward lecture

room, show lecture web page can be a simple solution. location ontology

Another possible solution is ontology reasoning. Building ontology for rep-

resenting location information and ontology reasoning rules can be a more

systemically solution.

� Utilizing additional information such as time of day and user’s schedule:

Some ambiguous situations may be occurred when using only location in-

formation. For example, if the user is moving from lecture room to main

gate, the purpose of the movement can be various. It can be returning home,

or going to restaurant outside of university. It is hard to handle this situation

42

Page 52: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

using only location information. Thus, supplementary information which

enables richer modeling is required. Time of day and schedule information

can be a good complementary information.

43

Page 53: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

BIBLIOGRAPHY

[1] Ashbrook, D. and Starner, T., “Learning Significant Locations and Predict-

ing User Movement with GPS,” Proceedings of IEEE Sixth International

Symposium on Wearable Computing, Seattle, WA. October 2002.

[2] AT&T, Find Friends,

http://www.attwireless.com/personal/features/organization/findfriends.jhtml,

2004.

[3] Bahl, P. and Padmanabhan, V., “RADAR: An In-Building RF-based User

Location and Tracking System,” Proceedings of IEEE Infocom 2000, pp.

775-784, March 2000.

[4] Caffery, J.J. and Stuber, G.L., “Overview of radiolocation in CDMA cellular

systems,” the IEEE Communications Magazine, vol. 36, no. 4, pp. 38-45,

1998.

[5] Cheok, A.D., Goh, K.H., Liu, W., Farbiz, F., Fong, S.W, Teo, S.L., Li, Y.

and Yang, X., “Human Pacman: a Mobile, Wide-area Entertainment Sys-

tem Based on Physical, Social, and Ubiquitous Computing,” Personal and

Ubiquitous Computing, pp. 71-81, 2004.

[6] Clarkson, B. and Pentland, A., “Extracting Context from Environmental Au-

dio,” 1998.

[7] Clarkson, B., Mase, and K., Petland, A., “Recognizing User Context via

Wearable Sensors,” 2000.

44

Page 54: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

[8] Drane, C., Macnaughtan, M., and Scott, C., “Positioning GSM telephones,”

the IEEE Communications Magazine, vol. 36, no. 4, pp. 46-54, 1998.

[9] Drane, C., and Rizos, C., Positioning Systems for Intelligent Transportation

Systems, Boston: Artech House, 1998.

[10] Enge, P., and Misra, P., “Special Issue on GPS: The Global Positioning Sys-

tem,” Proceedings of IEEE, vol. 87, no. 1, pp. 3-172, 1999.

[11] FCC News, ‘FCC Adopts Rules to Implement Enhanced 911 for Wireless

Services,” CC docket no. 94-102, 1996.

[12] Gandon, F., and Sadeh, N., “A Semantic eWallet to Reconcile Privacy and

Context Awareness,” Proceedings of the Second International Semantic Web

Conference, pp. 385-401, Florida, October 2003.

[13] Haykin, S., Neural Networks: A Comprehensive Foundation, Second Ed,

Prentice Hall, 1999.

[14] Hazas, M., Scott, J., and Krumm, J., “Location-aware Computing Comes of

Age,” IEEE Computer, vol. 37, no. 2, pp. 95-97, 2004.

[15] Hightower J.and Borriello G., “Location Systems for Ubiquitous Comput-

ing,” IEEE Computer, vol. 34, no. 8, pp. 57-66, 2001.

[16] Himberg, J., Korpiaho, K., Mannila, H., and Tikanmaki, J., “Time Series

Segmentation for Context Recognition in Mobile Devices,” 2001.

[17] Laerhoven, K.V. and Cakmarci, O., “What Shall We Teach Our Pants?,”

2000.

45

Page 55: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

[18] Lee, S.-W. and Mase, K., “Incremental Motion-based Location Recogni-

tion,” Proceedings of the 5th International Symposium on Wearable Com-

puting, pp. 123-130, 2001.

[19] Lee, S.-W. and Mase, K., “Activity and Location Recognition Using Wear-

able Sensors,” Pervasive Computing, 2002.

[20] Lockerd, A. and Arroyo, E., “Personal Data for Personal Use: Case Studies

in User Modeling for Context-Aware Computing,” AAAI Fall Symposium on

Etiquette for Human Computer Interaction, 2002.

[21] Kohonen, T., “The Self-organizing Map,” Proceedings of IEEE, vol. 78, no.

9, pp. 1464-1480, September 1990.

[22] Korpipaa, P., Koskinen, M., Peltola, J., Satu-Marja M., and Seppanen, T.,

“Bayesian Approach to Sensor-based Context Awareness,” Personal and

Ubiquitous Computing, vol. 7, pp. 113-124, 2003.

[23] Koskela, T., Varsta, M., Heikkonen, J., and Kaski, K., “Temporal Sequence

Processing using Recurrent SOM,” Proceedings of Second International

Conference on Knowledge-Based Intelligent Engineering Systems, vol. 1,

pp. 290-297, Adelaide, Australia, April 1998.

[24] Krumm, J., Harris, S., Meyers, B., Brumitt, B., Hale, M., and Shafer, S.,

“Multi-Camera Multi Person Tracking for Easy Living,” Proceedings of the

3rd IEEE International Workshop Visual Surveillance, pp. 3-10, July 2000.

[25] Mantyjarvi, J., Himberg, J., and Seppanen, T., “Recognizing Human Motion

with Multiple Acceleration Sensors,” 2001.

[26] Oliver, N., and Pentland, A.P., “Driver Behavior Recognition and Prediction

in a Smart Car,” 2000.

46

Page 56: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

[27] Orr, R.J. and Abowd, G.D., “The Smart Floor: A Mechanism for Natural

User Identification and Tracking,” Proceedings of Conference on Human

Factors in Computing Systems, pp. 275-276, April 2000.

[28] Patterson, D., Liao, L., Fox, D., and Kautz, H., “Inferring High-Level Behav-

ior from Low-Level Sensors,” Proceedings of the Fifth International Confer-

ence on Ubiquitous Computing, pp. 73-89, Seattle, WA, October, 2003.

[29] Patterson, C.A., Muntz, R.R., and Pancake, C.M., “Challenges in Location-

aware Computing,” IEEE Pervasive Computing, vol. 2, no. 2, pp. 80-89,

2003.

[30] Peltonen, V., Tuomi, J., Klapuri, A., Huopaniemi, J., and Sorsa, T., “Com-

putational Auditory Scene Recognition,” Proceedings of International Con-

ference oon Acoustics Speech and Signal Processing, 2002.

[31] PinPoint, PinPoint Real Time Asset Tracking Systems,

http://www.rftechnologies.com/pinpoint.

[32] Pousman, Z., Iachello, G., Fithian, R., Moghazy, J., and Stasko, J., “Design

Iterations for a Location-Aware Event Planner,” Personal and Ubiquitous

Computing, pp. 117-225, 2004.

[33] Sparacino, F., “Sto(ry)chastics: a Bayesian Network Architecture for User

Modeling and Computational Storytelling for Interactive Spaces,” Proceed-

ings of the Fifth International Conference on Ubiquitous Computing, pp.

54-72, Seattle, WA, October 2003.

[34] Stilp, L., “Carrier and End-User Applications for Wireless Location Sys-

tems,” Proceedings of SPIE, vol. 2602, pp. 119-126, 1996.

47

Page 57: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

[35] Weiser, M., “The Future of Ubiquitous Computing on Campus,” Communi-

cations of the ACM, vol. 41, no. 1, pp. 41-42, 1998.

[36] WhereNet, http://www.widata.com.

[37] Winston, W.L., Operations Research: Applications and Algorithms, Bel-

mont, CA: Duxbury, 1994.

48

Page 58: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

�����������

������������������������������������������������� ����

����������������������DZ�� ��� ������������ ������������ ����

� ���� �������������������������������������������������� !�������"�

����� �������� ����#�$%���&������!�.������������������������� �������

'�����(���� �������������������������������)*��+,������� ��Æ-.���

���#��������������$/0���!�.#����$%���������12�������3���4567+,89������

3���� :5DZ����� 3�!� ����������� ��� ���� ������;��� ���<=���#� #�>5����+,

��!�.�������������������������#�� �?@#�67���� �!�"����A�B2�����#�

� ����������C#�$���������%���������+,#����#������������������� �� ���%��

��"����!�.

��������������������������������������12� GPS����������!"�!�."�

��� �?@#�67DE����&�$���� RSOM%�����������89����� GPS?@#�67���'���� �

67������-.��������#�� �F2#��%����� ��������G���$!�.HI���J�K�LMN�OP���

%��������������%(��� ���#�� �F2#��%��� �!�"�����������#�� �F2#���ÆQI��&%��<=

)*$���!�.'+(R2�����#�� �%��<=)*$�� ���#�� �F2#��QI��&��� ��+S����0����-.

���������#�� �F2#��������������ÆA�B2�Æ#�� �%���C#�$���!�.

HI�������������� ���%�����������TU� ���V7 ����� �)�*��$W-.���������

���������������������������,����XW#��-�%��<='+(���!�.'���� �67���� -.

����#�� �F2#��%��"��������+,�������������#�� �F2#��������������� ���� �+

!�����!�. RSOM.��� �!�"?@#�67��� ��%��3�,/���$WYZ���������������012[\���

+, ����� ���������� ���� ��� #�� � F2#���� �+!�� �+ 89 ��!�. ���������� � �!�"��

#�� �F2#�� -.������������#�� � �+YZ������� ��� ������� ������"#%��89��

49

Page 59: Learning and Predicting User’s Movements for Intelligent ...sclab.yonsei.ac.kr/publications/Papers/thesis/sjhan.pdfLearning and Predicting User’s Movements for Intelligent Location-based

!�.#����]9��� _̂���$�̀ GPS89�����0����%"&�� HP iPaqÆ�-a�.�/a�����67���

���������<='+(��!"�!�.

������������#�� ��C#�$����%��0��0�������12�12��TU� �)�*�Æ)�*���%�������

�������� GPS?@#�67���TU� �3'4V7 � �����89�����+,#����#�������������

���� ����Æ'���� �67��,�C#�$������%��0��0���!"�!�.)*��� ��������� ���#���

������ÆA�B2�Æ����#�� ������������01$ �5�$W�C#�$0������+,3��6�������� ������

�bI-.�����$W�C#�$%��89��7� 8%����������!"�!�.

9(���&����)*+:������������ �,� ���� ��������,����<=�����bI,J�K�LMN�QI

��&

50