This paper can be referred as: M.

Akhlaq, “Context Fusion in Location-Aware Pervasive Applications”, 4th International Workshop on Frontiers of Information Technology (FIT06), Islamabad, Pakistan, December 20-21, 2006.

Context Fusion in Location-Aware Pervasive Applications
Muhammad Akhlaq
Blekinge Institute of Technology, Ronneby, Sweden

Location-awareness is an important aspect of context-aware applications. These applications enhance the functionality of ubiquitous computing services and applications by using numerous location sensing systems with variant precision and confidence levels. There is a need of seamless integration for these systems using a middleware infrastructure. In addition to interoperability of different systems, the proposed middleware manages the spatial location information in spatial database, infers using spatial relationship functions, and predicts the location of an object based on its history. The system facilitates the separation between applications and location technologies to enable dynamic add-on of new technologies without changing the existing applications.


these applications use Global Positioning System (GPS) as location sensing system. In spite of these developments, location systems for ubiquitous computing face many challenges:

2.1 Need for Location-Sensing Techniques
It is important to realize that all the objects (devices, users, sensors) need not be location aware in a pervasive environment. Objects, not capable of sensing their location directly, can use locationsensing techniques based on ‘Triangulation’, ‘Proximity’ or ‘Scene Analysis’, to sense their location with respect to nearby location aware objects [8]. Triangulation uses the geometric properties of objects to compute object’s location, using the process of Lateration if based on distances from reference points, or Angulation if based on intermediate angles. Proximity determines position of an object from a known location. The object’s presence is sensed by physical phenomena with limited range. Scene Analysis uses features of scene observed from a point to draw conclusions about the location of the observer or of the objects in the scene.

Middleware, context-fusion, ubiquitous/pervasive applications, context-awareness, locationawareness,

1. Introduction
Mark Weiser’s vision of Ubiquitous Computing emphasized the need of unifying computers and humans seamlessly in an environment rich with computing [15]. A pervasive system has to be context aware in order to be minimally intrusive [11]. Location-based applications are an important component of context-aware pervasive systems [9]. Weiser’s vision cannot be realized without the contribution made by location-aware applications which include seamless interaction of environment with user, application adaptation according to user preferences & expectations, and efficient utilization of available resources. In other words, locationawareness enables pervasive applications to serve a user based on location, thus minimizing the need of user intrusion to demand appropriate service. The importance of location-awareness can be realized by researchers’ claim that this would be the first realworld example of ubiquitous computing [17].

2.2 Need for Estimation of Location
Irrespective of location sensing techniques employed, usually, it is not possible to sense all possible location-time coordinates due to technological or cost constraints. Therefore, a location-aware system must deal with the techniques of predicting the location of an object in between the location-time pairs reported, which may be minutes or hours apart. It is mandatory to predict the location of an object on finer temporal points, if needed by the application. Prediction leads to uncertainty. Hence managing uncertainty within the tolerable bounds is critical for any decent location-aware pervasive application. Traditional techniques utilize history of moving objects to estimate the current location, using object’s direction, last reported location and speed [6]. But these techniques are heavily criticized and are considered too simplistic to encounter the realtime dynamic requirements. Therefore, it is emphasized to incorporate the object’s goals, personalities and tasks into active consideration along with its history [5]. In other words there is a need to build User Models to get more precise estimation of object’s location.

2. Challenges Faced by Location Systems in Ubiquitous Computing
Many applications have been developed in the last decade based on location-awareness, particularly under the flag of Mobile Computing [4]. Mostly,
4th Int. Workshop on Frontiers of Information Technology, 06

2.3 Need for Integration Location Systems



The most important challenge is the fusion of different location-sensing technologies [18]. Many commercial and experimental location-sensing technologies are in use, having their own precision, confidence levels, and underlying technologies. Their variant features make one system more appropriate for one kind of environment when compared to others. So, existence of various location systems in a pervasive environment is inevitable, so is their seamless integration.

3. Classification of Location Systems
Location systems can be classified based on characteristics such as cost, location information provided (physical or symbolic), frame of reference (absolute or relative), degree of precision and accuracy, scale, recognition (can system recognize the object as well, in addition to locating them?), limitations (GPS can only be used outdoors effectively), and computation entity (object or system) [4]. Below is the discussion on some prominent location systems, evaluating each system’s working principle and classification.

Each ceiling sensor measures the time interval from reset to ultrasonic pulse arrival and computes its distance from the Bat. The local controller then forwards the distance measurements to a central controller which performs the lateration computation. Ceiling sensors consider only ultrasound pulses that traveled along the direct path from the Bat to the sensor and ignore the reflected ones. This system had an accuracy of 9 cm for 95 percent of the measurements as in 1999. The work to improve the accuracy even further is in progress. This system requires a large fixed-sensor infrastructure precisely placed throughout the ceiling. This system is difficult to scale, deploy, and costs high.

3.3 Cricket
Cricket Location Support System [1] infrastructure uses ultrasound emitters while embeds receivers in the object being located. This system complements the Active Bat system and forces the objects to perform all their own triangulation computations. This system does not require a grid of ceiling sensors with fixed locations because its mobile receivers perform the timing and computation functions. Cricket uses the radio frequency signal not only for synchronization, but also to define the time region during which the receiver should consider the sounds it receives. The system can identify any ultrasound it hears after the end of the radio frequency packet as a reflection and ignore it. Cricket implements both the lateration and proximity techniques. Cricket, in its currently implemented form, is much less precise than Active Bat while future implementations may compete with each other on accuracy. Active Bat is accurate to 9 cm while Cricket can accurately delineate 4 × 4 square-foot regions within a room. Cricket’s advantages include privacy and decentralized scalability, while its disadvantages include a lack of centralized monitoring and the computational burden on the mobile receivers.

3.1 Active Badge
The Active Badge location system, which was developed at Olivetti Research Laboratory (now AT&T Cambridge) [8], is the first and typical indoor badge sensing system. It consists of a cellular proximity system that uses diffuse infrared technology. The system can locate any person who wears a small infrared badge. This badge emits a globally unique identifier every 10 seconds or on demand. It provides absolute symbolic location information, representing the room or other place in which the badge is located, for example. A central server collects this data from fixed infrared sensors around the building, aggregates it, and provides an application programming interface for using the data. Diffuse infrared has an effective range of quite a few meters. In large rooms, the system can use multiple infrared beacons. Active Badges have difficulty in locations with fluorescent lighting or direct sunlight because of the spurious infrared emissions these light sources generate.

3.4 Smart Floor
Smart Floor is a proximity location system designed by Georgia Tech [12]. In this system, a grid of pressure sensors is embedded into floor which can capture footfalls. This does not require people to carry a device or wear a tag. However, the system has the disadvantages of poor scalability and high incremental cost because the floor of each building in which Smart Floor is to be deployed must be physically altered.

3.2 Active Bat
AT&T researchers have developed the Active Bat location system which provides more accurate physical positioning than Active Badges [2]. It uses an ultrasound time-of-flight lateration technique. Users and objects carry Active Bat tags. The controller sends a request via short-range radio. At the same time, it also sends a synchronized reset signal to the ceiling sensors using a wired serial network. A Bat, in response, emits an ultrasonic pulse to a grid of receivers mounted in the ceiling.
4th Int. Workshop on Frontiers of Information Technology, 06

3.5 E911
Many companies have started work on developing a variety of location systems to determine a cellular phone’s location that makes a 911 emergency call. E911 location systems [16] will also support new consumer services such as finding the nearest gas

station, post office, movie-theater, bus, or automated teller machine. To comply with E911, vendors are exploring several RF techniques, including antenna proximity, angulation using phased antenna arrays, lateration via signal attenuation and time of flight, as well as GPS-enabled handsets that transmit their computed location to the cellular system. The positioning is less accurate and ranges from 150 meters to 300 meters depending on the technique used.

Deducing spatial relationships between mobile objects and their physical environment. Associating a probability value of accuracy with location information & spatial relationships. To address these issues, middleware must posses the following features: Interoperability: Middleware should fuse information gathered from variety of systems and represent it in a way such that conflicting data is handled appropriately. Managing Data Confidence: Managing the confidence level of location data is very important to ensure its freshness. The quality of data degrades with the passage of time. Therefore, its confidence level must be reduced when it becomes older. Conversion between Location Models: The middleware should support both types of location models i.e. coordinate based, and symbolic. A coordinate based model shows location data in the form of (x, y, z) coordinates whereas a symbolic model assigns names to different locations (such as buildings, floors or rooms). A middleware should also support conversion between the two types. Supporting Push & Pull Modes: Location-aware applications can interact with the upper most layer of middleware using either push or pull mode. They can query about the current location of objects or can receive notification whenever a particular location-based condition turns out to be true. Handling Location References: Location information can be of two types: Object-based information is in the form “Where is X located?”, and region-based information is in the form “Who else is present where X is present?” Deducing Spatial Relationships: Middleware should know how to infer spatial relationships between mobile objects and their physical environment. Predicting Future Location: Due to technological and cost constraints, the location-time pairs provided by a location system may be minutes or hours apart. It is, therefore, necessary to predict the location of an object based on previous information. Sections 5 to 9 deal with the main components of middleware (see Figure 1) whereas section 10 shows how these components are integrated.

3.6 Global Positioning System
Global Positioning System [10] is the most common location finding system that covers the entire earth surface. GPS uses a collection of low-orbit satellites. These satellites send radio signals to the earth. Any GPS enabled device can receive these signals and find its location using these signals. There are some limitations of GPS systems. The radio signals sent by GPS satellites are too weak to penetrate buildings etc. GPS functionality is lost in cities because buildings absorb GPS signals or scatter them in multi-path reflections. Consequently, GPS works well outdoors but poorly indoors where people spend most of their time. GPS has been the prevailing location system in way finding applications and navigations, but has little use in other application domains.

3.7 Other Systems
RADAR [13] is a building-wide tracking system based on the IEEE 802.11 WaveLAN wireless networking technology developed by Microsoft Research group. MotionStar [7] is a tracking system which can sense precise physical positions relative to the magnetic transmitting antenna. Microsoft Research’s “Easy Living” uses computer vision technology to find the location of objects [14].

4. The Middleware
As discussed in the previous section, there are numerous location sensing systems with variant precision and confidence levels. There is a need of integrating these systems using a middleware infrastructure. The middleware can also provide an abstraction layer to location-aware applications, separating them from location detection and sensing technologies. The main issues addressed by a middleware are [3]: Integrating various location technologies to give a unified view of the location of mobile objects. Handling conflicting information from various sensors in the system. Maintaining an updated model of the physical arrangement of the environment.

4th Int. Workshop on Frontiers of Information Technology, 06

5. The Location Service Provider
The Location Service Provider layer provides location information to all the location-aware applications. It supports both symbolic as well as coordinate location information and uses hierarchical structure for information management at both levels. There may be three kinds of locations: points, lines and polygons. An example of hierarchical representations of coordinate and symbolic locations is <B1/2/4/lightswitch3>, which represents a symbolic point location of lightswitch3 which is in room 4 on floor 2 of building B1. Its coordinate form will be <B1/2/4/(3,6,12)>. In the same way, <B1/2/4/Door1> or <B1/2/4/(2,2)(4,9)> represents a 2D door, whereas a room can be represented as <B1/2/Room1> or <B1/2/(0,0)(80,0)(80,40)(0,40)>. Note that the coordinates of room, floor or building etc are stored in other data structures. The main tasks performed by the Location Service Provider layer are described below.

Location Service Provider Location Prediction Engine Spatial Database Reasoning Engine


Provider Interface Adapter Layer Physical Layer ( GPS, Desktop, RFID etc)

Figure 1: The middleware architecture

5.1 Multi-Sensor Fusion
A multi-sensor system may produce location data in different formats (coordinate or symbolic), resolution, confidence and freshness. Multi-sensor fusion utilizes this data to estimate the location of an object and associates a probability value of accuracy with this location information. For example, the probability that the user is in room 7 is 0.8 (or 80%). As a first step, sensor data is transformed into a common format. In the same way, all locations are expressed as minimum bounding rectangles (MBRs) and these sensor rectangles are then joined to find more accurate location information. It is important to note that different sensors strengthen one another if their MBRs intersect, but are in conflict if disjoint.

6. Spatial Database
The Spatial Database maintains an updated model of the physical arrangement of the environment and stores location data from different sensors. It also allows operations on geometric data types such as intersection, union, disjoint and so on. Objects are represented by points, lines or polygons whereas regions are represented by minimum bounding rectangles (MBRs). Even though MBRs provide approximate boundaries, they allow quick processing of location queries. Once a certain condition is met by an MBR, more accurate processing of the operation is carried out by taking actual region boundaries.

7. Reasoning Engine 5.2 Push Mode Queries
Location Service Provider deals with two types of queries in push mode: object-based queries are in the form “Where is X located??” and region-based queries are in the form “Who else is present where X is present?” Location Service Provider gives the most appropriate location of an object using multisensor fusion as described above. The Reasoning Engine infers spatial relationships between mobile objects and regions. It estimates location of an object using information in spatial database. Location notifications are generated whenever some spatial condition becomes true such as a mobile object entering a certain region etc.

8. Location Prediction Engine
The Location Prediction Engine is based on user models and Bayesian learning for neural networks. This engine helps in estimating the location-time coordinate pairs of moving objects in between the locations reported by the underlying sensors.

5.3 Pull Mode Notifications
The applications are notified when the probability that an object is within a region of interest exceeds a certain threshold.

5.4 Spatial Relationships
Spatial relationships can be deduced between two regions, between two objects, or between an object and a region. The Location Service Provider layer computes different kinds of commonly used spatial relationships between objects and regions.
4th Int. Workshop on Frontiers of Information Technology, 06

9. Adapter Layer
The Adapter Layer serves as client wrapper for different location technologies. It serves as a device driver that allows location sensors to work with middleware seamlessly.

10. The Architecture
The middleware consists of Provider Interface, Spatial Database, Reasoning Engine, Location Prediction Engine and Location Service Provider. This is shown in Figure 1. The Adapter layer connects physical layer to the middleware and molds sensor information into a common representation to be stored in spatial database. Spatial Database serves as a repository of all information about physical locations and sensors. The Reasoning Engine combines data from different sensors and estimates location of an object. The Location Prediction Engine helps in estimating the location-time coordinate pairs of moving objects in between the locations reported by the underlying sensors. The Location Service Provider layer provides an interface between the middleware and all locationsensitive applications which need location information.

Moving Objects Databases”, Lecture Notes in Computer Science; Vol. 2287, 2002. [7]. J. Hightower, G. Borriello, “Location Sensing Techniques”, IEEE Computer., Aug 2001. [8]. J. Hightower, G. Borriello, “Location Systems for Ubiquitous Computing”, IEEE Computer., Aug 2001. [9]. J. Krumm et al., “Multi-Camera Multi-Person Tracking for Easy Living,” Proc. 3rd IEEE Int’l Workshop Visual Surveillance, IEEE Press, Piscataway, N.J., 2000, pp. 3-10. [10]. M. Hazas, J. Scott, J. Krumm “LocationAware Computing Comes of Age”, IEEE Computer, February 2004. [11]. M. Satyanarayanan, “Pervasive Computing: Vision and Challenges”, IEEE Personal Communications, 2001. [12]. M. Weiser, “The Computer for the 21st Century,” Sci. Amer., Sept., 1991. [13]. N.B. Priyantha et al, “The Cricket LocationSupport System,” Proc. 6th Ann. Int’l Conf. Mobile Computing and Networking (Mobicom 00), ACM Press, New York, 2000, pp. 32-43. [14]. P. Bahl & V. Padmanabhan, “RADAR: An In-Building 0RF-Based User Location and Tracking System,” Proc. IEEE Infocom 2000, IEEE CS Press, Los Alamitos, CA, pp. 775-784. [15]. R. Want et al., “The Active Badge Location System,” ACM Trans. Information Systems, Jan. 1992, pp. 91-102. [16]. R.J. Orr and G.D. Abowd, “The Smart Floor: A Mechanism for Natural User Identification and Tracking,” Proc. 2000 Conf. Human Factors in Computing Systems (CHI 2000), ACM Press, New York, 2000. [17]. W. Abdelsalam, Y. Ebrahim, “Managing Uncertainty: Modeling Users in LocationTracking Applications”, IEEE Transactions on Pervasive Computing, Jul–Sep 2004. [18]. Zagami, J.M. et al., “Providing universal location services using a wireless E911 location network”, Communications Magazine, IEEE, Apr 1998, pp. 66-71.

11. Conclusions
Location sensing systems, with variant precision and confidence levels, need seamless integration using a middleware infrastructure. A middleware facilitates separation between applications and location technologies. It also facilitates dynamic add-on of new technologies without changing existing applications. Such middleware makes location aware applications more flexible & interoperable while incorporating extended functionality in the middleware.

[1]. A. E. Rabbany, “Introduction to GPS the Global Positioning System”, 2002, Artech House Publisher, ISBN 1-58053-183-0. [2]. A. Harter et al., “The Anatomy of a ContextAware Application,” Proc. 5th Ann. Int’l Conf. Mobile Computing and Networking (Mobicom 99), ACM Press, New York, 1999, pp. 59-68. [3]. A. Ranganathan et al, “MiddleWhere: a middleware for location awareness in ubiquitous computing applications”, Proc of the 5th ACM / IFIP / USENIX intl. conf. on Middleware, 2004. [4]. F. Raab et al., “Magnetic Position and Orientation Tracking System,” IEEE Trans. Aerospace and Electronic Systems, Sept. 1979, pp. 709-717. [5]. G. Borriello, M. Chalmers, A. LaMarca, P. Nixon “Delivering Real-World Ubiquitous Location Systems”, ACM Comm., March 2005. [6]. G. Trajcevski1, O. Wolfson1, F. Zhang, S. Chamberlain, “The Geometry of Uncertainty in

4th Int. Workshop on Frontiers of Information Technology, 06

Sign up to vote on this title
UsefulNot useful