H.-A. Jacobsen (Ed.): Middleware 2004, LNCS 3231, pp. 397–416, 2004.
© IFIP International Federation for Information Processing 2004
MiddleWhere: A Middleware for Location Awareness
in Ubiquitous Computing Applications
Anand Ranganathan, Jalal Al-Muhtadi, Shiva Chetan,
Roy Campbell, and M. Dennis Mickunas
Department of Computer Science, University of Illinois at Urbana Champaign,
1304 W. Springfield Ave., Urbana, IL 61801
{ranganat,almuhtad,chetan,rhc,mickunas}@cs.uiuc.edu
Abstract. Location awareness significantly enhances the functionality of ubiq-
uitous computing services and applications, and enriches the way they interact
with users and resources in the environment. Many different alternative or
complementary location sensing technologies are available. However, these
technologies give location information in different formats and with different
resolution and confidence. In this paper we introduce “MiddleWhere” a distrib-
uted middleware infrastructure for location that separates applications from lo-
cation detection technologies. MiddleWhere enables the fusion of different lo-
cation sensing technologies and facilitates the incorporation of additional
location technologies on the fly as they become available. MiddleWhere utilizes
probabilistic reasoning techniques to resolve conflicts and deduce the location
of people given different sensor data. Besides, it allows applications to deter-
mine various kinds of spatial relationships between mobile objects and their en-
vironment, which is key in enabling a strong coupling between the physical and
virtual world, as emphasized by ubiquitous computing. We have integrated
MiddleWhere with our ubiquitous computing infrastructure, and have verified
its flexibility and usefulness by incorporating various location sensing tech-
nologies and building a number of location-sensitive applications on top of it.
1 Introduction
Ubiquitous computing has inspired the construction of active, information-rich physi-
cal spaces that encompass large numbers of interconnected computer devices and
embedded processors. This dust of computing machinery will be providing new func-
tionality, offering personalized services, and supporting omnipresent applications.
Location awareness enables significant functionality to ubiquitous computing applica-
tions, users, resources and the ways they interact. It allows ubiquitous computing
environments to tailor themselves according to users’ preferences and expectations,
and reconfigure the available resources in the most efficient way to meet users’ de-
mands and provide seamless interaction. For example, applications and data can
follow users as they roam around, content can be customized based on users’ location,
and physical surroundings can be customized according to their inhabitants.
A plethora of different alternative or complementary location technologies and
sensors are available. The different technologies have different capabilities and as-
sumptions and provide assorted levels of location accuracy. No single location sens-
ing technology has emerged as a clear winner in all kinds of environments. For exam-