UbiDSS: a proactive intelligent decision support system as an expert ...

14 downloads 57970 Views 721KB Size Report
Keywords: Decision support system; Expert system; User context; Proactive computing; Context-aware ... information systems (HISs) to provide the best decision.
Expert Systems with Applications 28 (2005) 149–161 www.elsevier.com/locate/eswa

UbiDSS: a proactive intelligent decision support system as an expert system deploying ubiquitous computing technologies Ohbyung Kwonb, Keedong Yooa,*, Euiho Suha a

Department of Industrial Engineering, Pohang University of Science and Technology, 4-205 san31, Hyojadong Namgu kyung, 790784 Pohang, South Korea b School of International Management, Kyunghee University, Seuol, South Korea

Abstract Many industries have deployed expert systems (ESs) to provide support for solving complicated and specialized problems since 1980. Because ESs are originally designed for generating feasible alternatives in an automated manner, users, especially decision makers, expect ESs to make decisions proactively and intelligently by automatically detecting users’ contextual data. In other words, decision makers require decision support systems (DSSs) to be reinforced with proactive and intelligent ESs that can utilize contextual data. Meanwhile, ubiquitous technology-based applications currently only provide limited personalization services that use the user’s context and preferences; in other words, these systems do not fully make use of sophisticated decision making capabilities. Hence, this paper describes how decision making and context-aware computing are jointly used to establish ubiquitous computing technology-based applications. To do so, we propose an amended DSS paradigm, Context-Knowledge-Dialogue-Data-Model (CKDDM). This model describes what may be considered for future DSSs when we regard ubiquitous computing technology as an inevitable effect that changes how decision making decisions are described. Under the CKDDM paradigm, a framework of ubiquitous decision support systems (ubiDSS) is addressed with the description of the subsystems within. To show the feasibility of ubiDSS, a prototype system, Context-Aware Multi Agent System-My Optimization (CAMAmyOpt) has been implemented as an illustrative example system. q 2004 Elsevier Ltd. All rights reserved. Keywords: Decision support system; Expert system; User context; Proactive computing; Context-aware computing; Ubiquitous computing

1. Introduction As the variety of customers’ needs and the segments of information technologies increase to address those needs, the capability for generating more accurate and agile decisions to address all of those changes has also become necessary. In this same vein, decision makers, the main users of decision support systems (DSSs), require more functionality than what traditional DSSs have: providing accurate and feasible decisions in an automated manner, with the least intentional interference of decision makers, as expert systems (ESs) do (Workman, 2004). To meet this end, DSSs should gather decision makers’ contextual data so these decision makers do not have to specify required

* Corresponding author. Tel.: C82 542 795 920; fax: C82 542 792 870. E-mail addresses: [email protected] (O. Kwon), [email protected] (K. Yoo), [email protected] (E. Suh). 0957-4174/$ - see front matter q 2004 Elsevier Ltd. All rights reserved. doi:10.1016/j.eswa.2004.08.007

information in advance (Gregor & Benbasat, 1999; Workman, 2004). On the contrary, conventional ES-based DSSs initiate functions from the point when users complete all required information using dialogue-based sub-modules. This phenomenon is caused by the trade-off between development efforts and service levels of automation. Increasing the degree of automation requires increasingly more development effort. As the problem depth and complexity increase, a high degree of automation may become infeasible (Nurminen, Karonen, & Hatonen, 2003). However, this viewpoint assumes that users’ knowledge level parallels the experts’ levels. Of course many ES-based DSSs users are domain experts who have the ability to separate and specify required information without any assistance; however, there are a significant number of other users who are not very knowledgeable in the problem domain. For every type of user, DSSs should prepare enough level of automation by detecting and processing the users’ context.

150

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

Meanwhile, the ubiquitous computing environment is now emerging as a primary driver to change the decision makers’ task environment, and to reshape the new era on how we do business. This trend certainly has the potential to improve the decision making framework in gathering and processing decision makers’ contextual data in an automated way, which intelligently extracts proactive decisions. Hence, this paper aims to identify key considerations for future DSSs to enable ubiquitous computing technologies as tools for resolving conventional DSSs’ limits. A framework of ubiquitous computing technology-based decision support systems (ubiDSS) is addressed, including descriptions of the internal subsystems. The rest of this paper is organized as follows. Section 2 reviews recent DSSs and how ubiquitous computing technology is related to decision making capabilities. In Section 3, enabling technologies to realize conjoining ubiquitous computing technology and current DSS are addressed. In Sections 4 and 5, a framework of ubiquitous DSS and its development methodology are proposed. Concluding remarks are discussed in Section 6.

2. Related research 2.1. ES for making decisions To provide proactive services, several DSSs were designed to automatically generate decisions based on users’ context. Rasmy, Lee, Abd El-Wahed, Ragab, and El-Sherbiny (2002) introduced an interactive approach for solving multi-objective decision making (MODM) problems based on decision makers’ linguistic preferences, and the architecture for a fuzzy ES. To do so, Rasmy’s team converted the MODM problem into its equivalent goal programming problem by appropriately setting the priority and aspiration level for each objective. Although this research’s conversion approach for MODM was meaningful for an expert-driven decision making procedure, however, no consideration on detecting and using decision makers’ contextual data was exhibited. Of course decision makers’ linguistic preferences might form a part of users’ contextual data; however, notions for identifying and segmenting contextual preferences automatically should be also verified. Muller et al. (2001) also tried to develop hospital information systems (HISs) to provide the best decision support possible within the context of available patient data. For two kinds of HISs, Muller’s team defined data entry forms and developed individual and reusable mechanisms for data exchange with external software modules. They also designed an additional knowledge support front-end module to control data exchange between the HIS and the knowledge modules. This research successfully explained how external knowledge support can be integrated almost seamlessly into a separate, commercial HIS.

However, the team focused only on how to share and use clinical knowledge stored in a distributed knowledge-base without emphasizing how to detect patient’s current status data. This patient data play the role of contextual data for prescriptions. To expect the quick and agile decisions for patient care, using an HIS for decision making should encompass the capability of utilizing contextual data. 2.2. Decision making and ubiquitous services Virtual Tour Guide uses ‘stick-e notes’, which use location as a trigger for the retrieval of information. Sticke notes are related to a physical location via GPS coordinates. When a user enters the area delimited by the GPS coordinates, a short note is displayed on the user’s device (Brown, Bovey, & Chen, 1997). Hewlett–Packard’s CoolTown project extends the idea of context based on physical location, by marking up the physical space with a mobile WWW infrastructure. URLs are associated with physical locations or objects, such as museum exhibits. As a user with an enabled device moves through the physical space, the device displays Web pages that are associated to the physical locations or objects, such as exhibit descriptions (Kindberg et al., 2000). 2.3. Ongoing ubiquitous computing research projects Ongoing ubiquitous computing-related research is categorized into four areas of focus: U-device, U-environment, U-media, and U-people, as listed in Table 1. 2.3.1. U-device Ubiquitous computing-based services tend to begin with tracking users’ current location and any other acquirable context that comes from wireless devices that transmit and receive RF/IR signals. Since the emergence of ubiquitous computing, therefore, most projects have focused on developing electro-mechanical devices, such as smart tags, beacons, and active badges. These devices are light and portable enough to sense and deliver user’s context invisibly with low power consumption. The devices are embedded and attached to ordinary objects, and any other inexpensive devices. 2.3.2. U-environment Ubiquitous computing technology aspires to improve living and working environments including home, office, building, and city, by developing advanced devices, network infrastructures, and operating systems. Researchers, therefore, concentrate on developing so-called ‘smart environments’, ubiquitous computing technology-enabled environments. Since constructing smart environments is very expensive, research in this area has been dominated by corporations such as Microsoft, Hewlett–Packard, Siemens, etc.

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

151

Table 1 Classification of ongoing research in ubiquitous computing Overview

Research

U-device

Devices for identifying users’ context

U-environment

Smart environments enabled by devices, network infrastructure, and operating systems

U-media U-people

I/O medias for user’s context-aware Ubiquity-based services for minorities

Active Badge (Want et al., 1992), e-Gadgets (Hagras, Callaghan, & Colley, 2001), Smartits (Holmquist et al., 2001), PARCTAB (Schilit, Adams, Gold, Tso, & Want, 1993), Smart dust (Kahn, Katz, & Pister, 1999) Accord (Crabtree, Rodden, Hemmings, & Benford, 2003; Humble et al., 2003), Ambient Agoras (Streitz, Ro¨cker, Prante, Stenzel, & Alphen, 2003), PaperCC(Decurtins, Norrie, & Signer, 2003), AURA (Garlan, Siewiorek, Smailagic, & Steenkiste, 2002), CoolTown (Barton & Kindberg, 2001), EasyLiving (Brumitt et al., 1998), TRON (Takahashi & Namiki, 2003), WorkSPACE (Grønbæk, Kristensen, Ørbæk, & Agger Eriksen, 2003) SOB (Rocchesso, Bresin, & Fernstro¨m, 2003) Inter-living (Westerlund, Lindqvist, Mackay, & Sundblad, 2003), ASTRID (Woolham & Frisby, 2002)

2.3.3. U-media The media traditionally needed to get users’ commands and return results to them have been obtrusive since they almost always require users’ direct manual operation. To realize the real advantages, then, that ubiquitous computing offers, research must introduce new input and output media that senses or uses sound, motion, temperature, and colors, etc. Different from other projects, the thrust of u-media has not progressed as far because of users’ often conservative attitudes toward new media, as well as the technical complexity in fitting the new types of media to users. 2.3.4. U-people Most current user interface devices and procedures are designed for the mainstream and are not suitable to an older population or to users with disabilities. In light of this disparity, practitioners from medical science, biomechanics, and ubiquitous computing are developing new concepts and methodologies of interface patterns that are designed for users with special accessibility needs. However, area of research is still in its beginning stages due to several factors, including its added technical complexity. In summary, despite its infancy, ubiquitous computing technology has rich potential to provide innovative computer-based information systems, such as DSS, that enable personalized and agile services. Concepts and artifacts of ubiquitous computing leverage traditional computer-based information systems in several key areas. In particular, as information systems increase their intelligence, it will become more important for these systems to acquire knowledge and expertise in agile ways in order to provide employees and decision makers with relevant information. Therefore ubiquitous computing technologies for identifying user’s context, and to mine recommendations from that context, are well suited to current intelligent information systems. However, this research area has not progressed as anticipated because many information systems practitioners have focused exclusively on systems with the highest return. In other words, although conventional information systems have clear areas where there is room for improvement, practitioners usually develop new of

information systems to replace the old ones, because in the past substitution has been viewed as the best way to earn a larger profit. However, deploying ubiquitous computing technology and enhancing the information systems’ functions not only guarantees a larger profit through higher efficiency, but it also better supports business environment with higher effectiveness.

3. Enabling technology Today’s enabling technologies have greatly matured, including: the power density of energy sources, sensors and actuators, wireless and ad hoc networking, distributed and embedded systems, software architectures and middleware, storage device capacities, localization and positioning technology, microelectronics, nanotechnology, microelectro-mechanical systems (MEMS), human-centered application design, multi-modal user interfaces, and many more. These technologies are discussed below. 3.1. Ad hoc networks Intrinsic characteristics of ad hoc networks, such as selfconfigurability (Heemstra, Niemegeers, Bueno, & Visser, 2001) and neighbor discovery, imply that these networks will be a key element for enhancing the inter-operability among different wireless technologies. This improved interoperability is considered to be the fundamental underlying idea of future wireless networks (Remondo & Niemegeers, 2003). A wide range of applications can potentially be supported by these ad hoc networks, including the following examples: – – – –

disaster-relief networks networks at construction sites inter-vehicle networks interaction with an organizations’ intranet and extranet in the office – PANs and BANs

152

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

– – – –

interaction of PANs or BANs with a vehicle area network home environment networks supporting doctors and nurses in hospitals networks of visitors at airports, conference centers, trade fairs, sport centers and shopping malls – providing Internet, intranet or extranet connections via cellular networks and WLANs Wireless personal area networks (PANs) and local area network (LANs) are expected to fulfill the ubiquitous services’ requirement ‘anywhere, anytime’. Users will form ad hoc PANs to enable personal devices to autonomously inter-communicate. Wireless LANs will enable communication with colleagues at work, at conferences, at hot spots, at home, or on the move (Zahariadis, 2004). Wireless LAN and PAN technologies have already captured a large market segment as they provide a simple, efficient, and user-friendly, alternative private networking system. Due to their market success and wide adoption, these technologies have also moved into the public sector, focusing on hot spots (e.g. airport, train station, conference centers, coffee shops, hotels) that have large concentrations of mobile enabled users who want instant access to the Internet.

code, or ‘composite’; a context such as building name or address that comes from one or more primitive contexts. So far, user location is the context that is most widely accepted as key for context-aware services. Originating from Olivetti Research Lab’s ‘Active Badge’ (Want, Hopper, Falcao, & Gibbons, 1992), several locationawareness appliances have been developed. GPS, RFID, and access points are generally used to acquire location data, which are then used in proactive personalized services such as tour guide systems. To extend context-aware applications into more cognitive domains, however, such as information retrieval, decision making, situation monitoring, product design, the context-aware applications also need to capture more of the users’ internal dimensions, such as their goals, tasks, work context, business processes, personal events, communication, and even emotional and physical states. Context can be indexed by the unique pattern of activities performed by the agent. Depending on the activity and the environment in which it is implemented, this may be as detailed as the low level collection of key strokes and mouse movements, to higher level actions such as sending e-mail, or browsing specific WWW pages (Prekop & Burnett, 2003).

3.2. WiFi WiFi is a broadband technology that operates in the unlicensed spectrum (i.e. there is no charge for the spectrum). This technology currently offers bandwidths in excess of 50 Mbps over hundreds of meters. With newer technologies such as improved antenna designs, WiFi will offer even greater bandwidth over longer distances. WiFi has become enormously popular; it is rapidly being deployed and is gaining widespread use. It qualifies as a true grass roots technology. Many homes have personal WiFi networks. We are already seeing many thousands of public hotspots that offer WiFi service. The appeal of wireless LANs is that WiFi has no license fees, the equipment and deployment costs are dropping, the installation is easy, it provides high-speed connectivity, it is a widely supported global standard, there is considerable inter-operability among WiFi equipment, it supports many operating systems across many platforms, and it has a large and enthusiastic customer base (Kleinrock, 2003). 3.3. Context-aware computing Context-aware computing allows applications to build a richer understanding of the user’s actions within the computing environment (Coen, 1998; Kidd et al., 1999). Areas of context gathered might include personal, such as the user’s current activity; technical, such as the kind of device that is being used; and environmental, such as temperature, climate, location, and time. Context can be also ‘primitive’, such as the user’s physical location or zip

4. ubiDSS 4.1. The notion of ubiDSS Like an agent-based DSS, active DSS, and web DSS, we believe that the ubiDSS research is one of the nextgeneration DSS. ubiDSS supports mobile decision makers by providing global access to the smart space and/or service zone. To do so, ubiquity in ubiDSS can be realized in addition to the capabilities as shown in Fig. 1: (1) Embeddedness: small intelligent devices are embedded in the physical world and connected to the fixed and/or wireless network. (2) Mobility: client devices must be operated under the mobile and flexible network infrastructure. (3) Nomadicity: the system provides a rich set of computing and communication capabilities and services to nomads as they move from place to place in a way that is transparent, integrated, convenient, and adaptive.

Fig. 1. Capabilities enabled by the ubiquity in ubiDSS.

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

153

Fig. 3. Context-aware decision making process. Fig. 2. Locus of ubiDSS.

(4) Proactive: the system needs to be self-triggered to capture a priori what its users want to increase the service quality. (5) Invisibility: to be as unobtrusive as possible, enable the user to put as little data as possible. (6) Portability: since legacy DSS supports on-site decision making, the ubiDSS provides services with hands-free or at least one-handed light devices. The ubiDSS is characterized by its ability to identify decision makers even when they are mobile, and to allow them to acquire solutions through any portable device on any workplace. As the capabilities of mobility and portability are included into DSSs, the notion of providing management-critical information or decision support anytime, anywhere can be realized (Daume & Robertson, 2000). Fig. 2 shows the locus of ubiDSS compared to other legacy DSSs. Before discussing ubiquitous decision support activities, we clarify the concept of context: context underpins every process for making decision. The context mentioned in a ubiquitous computing environment is conceptualized as any information that can be used to characterize the situation of an entity (Prekop & Burnett, 2003). The information indicates any place and action, or even any event caused by them. Due to the fact that the information possesses users’ external and internal intention, by identifying and analyzing the context, we can forecast the following events that will be confronted by users, namely decision makers. A context-aware decision making process has similar concepts as what is shown in Fig. 3, which originated from the typical decision making process that Simon described in 1960 (Fig. 4). A context-aware decision making process is somewhat different from a non-context-aware process because this ‘ordinary’ process mostly resides in the human brain; it can be identified by observing and inferring users’ cognitive process. On the other hand, since decisions are usually made based on decision makers’ intelligence on environments, most of the kinds of context involved with decision making are related to the decision maker’s problem

situation. Similar motivation has led to emerge the concept of ‘sentient computing’, which uses sensors and resource status data to maintain a model of the world which is shared between users and applications (Addlesee et al., 2001; Ipiqa & Lo, 2001). ubiDSSs, consequently, support the basic phases of decision making in two ways: by automatically recognizing decision makers’ context, which belongs to the intelligence phase, and by providing alternatives for making decisions through inferring prior data, which belongs to the design phase. A core capability of ubiquitous computing is contextawareness: automatically and transparently sensing time, identity, location, and entity, so that the DSS is unobtrusive to the decision maker. Some examples to illustrate the context-aware decision making are described in Table 2. Ubiquitous decision support activities can be seen as ubiquitous computing services within a certain decision service zone. In terms of service levels, there could be three levels of services: personalization, passive context-aware, and active context-aware services (Barkhuus & Dey, 2003). In the personalization service level, users manually provide profile, preference and contextual data. For example, when users want to find nearby restaurants that fit their particular preferences, users can select their cuisine preferences and their location at that time into the device; the device then

Fig. 4. Decision making process (Simon, 1960).

154

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

Table 2 Examples of context-aware decision making Decision phase

Examples

Context-aware intelligence Context-aware design

Context-aware selection of decision points (e.g. Joe wants to find nearby restaurants when it is rainy) Context-aware selection of optimization model (e.g. when Susan is far from the office she needs the shortest path to reach the office) Context-aware model instantiation (e.g. Joe wants to get current EOQ considering current actual inventory levels) Context-aware selection of decision models (e.g. when Susan is off campus and wants to eat lunch, she may want a recommendation for a good local restaurant) Context-aware output report generation (e.g. Joe is now using a PDA, the DSS output should fit to the PDA’s screen; Susan is very busy now, the display must be summarized)

Context-aware choice

wirelessly accesses the restaurant recommendation service. This provides better recommendations than recommendations with no context because the system has the location data. However, users may find this conventional approach obtrusive. The passive context-aware service automatically captures the user’s context from the federated sensors. The service, however, is activated by events triggered by the user. For example, when a user clicks a menu in the interface, the service displays some recommendations about the restaurants. The service then captures the user’s contextual data, either from the context server or directly from sensors. The user’s profile and/or preference data from an information repository is provided to the service. Because the system is in some ways transparent, it may feel less obtrusive to the user; however, the service is passive in that the services merely work only after some event issuing actions from the user. This mode only incompletely fulfills the service that Weiser envisioned about a ubiquitous computing environment. An active context-aware service not only describes applications that autonomously change their own content, but it can also trigger itself for proactive service. In this scenario, the user does not need to initiate any actions to start the service, nor is there a need to manually input personal or contextual data. Browns and Jones (2001) call the active context-aware service ‘proactive’. The ‘push’ approach described by Chevist, Mitchell, and Davis (2001) also uses the same proactive concept, while passive contextaware and personalization services are described as the ‘pull’ approach. Proactive ubiDSSs that are based on an active contextaware service in turn can be classified as pull-based, pushbased, and push-based automated modes. Fig. 5 describes how these terms are differentiated. Table 3 then summarizes the range of DSSs.

Fig. 5. Level of ubiDSS.

4.2. ubiDSS framework The current framework of computer-based information systems, despite its diversity, can be simplified as a combination of several components: data, model, knowledge, and dialogue, with the help of a network as shown in Fig. 6. When considering a ubiDSS, however, one of the most obvious differences is that the ubiDSS acquires contextual data, as well as data from a conventional database. Hence, in

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

155

Table 3 Range of DSS Functionality

Components

Passive DSS

Legacy DSS Personalized decision support with built-in knowledge No context, static user preference

Data Warehouse, OLAP, rule based

Active DSS

Legacy DSSCintelligence Personalized decision support with learning capability No context, static user preference

Agent, machine learning

Legacy DSSCintelligenceCpassive context-awareness Passive but context-aware decision support Passively dynamic context, static user preference Legacy DSSCintelligenceCactive context-awareness

Context-aware computing; sensing technology

Proactive ubiDSS

Pull-based proactive ubiDSS Push-based proactive ubiDSS

Push-based Automated ubiDSS

Self-triggering decision support by sensing contextual data Actively dynamic context, static user preference Legacy DSSCintelligenceCactive context-awareness

Context-aware computing; automatic sensing technology

Context-aware computing; needs crawling, data mining

Self-triggering decision support by sensing contextual data and inferring user preference Actively dynamic context, Actively dynamic user preference

the ubiDSS, one of the key differences is an added context subsystem to complement conventional DSS components (knowledge-based, model management, database management, and dialogue subsystems). The overall framework is shown as Fig. 7. In a ubiDSS, any algorithms and solutions that are in the model base, data base, or knowledge base subsystems are identified as services. These services may be integrated according to what the user needs under a specific context. For example, the optimal solution to a transportation problem may be a sequence of queries to a data set, generating transportation model instances, and executing a model instance with a sophisticated algorithm. 4.2.1. Context subsystem The context subsystem consists of events acquisition, context inference, and action request modules. An event

acquisition module reads contextual data from a variety of context trackers such as RFID readers, weather data acquisition sensors, etc. The collected contextual data are stored within a context base, which can be individually developed to resolve privacy concerns. Since the stored contextual data, however, may be too primitive to be used directly, the context inference module converts primitive contextual data into an inferred context. For example, a sequence of user location data at noon may designate that the user is now ready for lunch. The action request module passes the contextual data to the data, model, or knowledge-based subsystems in a standard machine readable format. Moreover, the contextual data may contain the data plus the data’s semantics. These requirements naturally lend themselves to a semantic ontology format such as DAMLCOIL or OWL, rather than XML, HTML, or plain text format.

Fig. 6. Current framework of MIS.

156

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

Fig. 7. Overall framework of UbiDSS.

Within most complex domains, it is often possible to identify generic types or classes of activities (Kethers & Schoop, 2000; Prekop & Kingston, 2001) that capture specific activities that would be performed within the domain. A context subsystem is important for a proactive DSS since this subsystem can capture a user’s current activity, including the type of decision making that the decision maker is likely to perform. The context will be generated by two means. The first way of identifying user’s decision making point is to rely on pre-defined decision flows. For example, a manager may approve an employee’s document according to a standard, pre-defined operating procedure. Alternatively, the system may autonomously capture the decision activity and point of decision by learning users’ past activities. 4.2.2. Model management subsystem A model management subsystem selects, formulates, and executes models that are stored in a model base according to the problem given by the decision maker through a dialogue subsystem. In a ubiDSS, however, these basic functionalities may be affected by the user’s context. Therefore, aside from conventional functionalities that a model management subsystem would typically have, the ubiDSS requires an additional context-aware selection, formulation, and execution of a model. Even though there are many kinds of models, we present here only optimization models to simplify the ideas behind our research. Models that assist in rational decision making have better usability when they include a context-awareness component. First, contextual data may inform the model base subsystem if a specific model should be executed at a time.

For example, a network model to find the shortest path may be needed when the user wants to go from home to the grocery store. If the ubiDSS can track the user’s current location and receives what the user is going to do at that time, then the model base subsystem will autonomously select and execute the network model. Second, the current values of the model’s coefficients and/or parameters might be acquired from context data, not the model base or database. In this case, the model base subsystem may benefit from the context subsystem to instantiate the models. For example, a traveling salesman problem model is instantiated with the unit transportation costs; these costs depend on the current location, which is continually changing. So far, since these kinds of data are by no means acquired externally, the conventional model base subsystem should provide a sort of user interface and let the end user or administrator input the values manually. Using the context subsystem, this could be completed automatically and seamlessly. Next, models can be formulated under some context by extracting objective functions and constraints that are mined from either the database and/or the contextual data repository. Kwon and Lee (2002) have suggested a notion of ‘model mining’ with corresponding methodology. Model mining is based on an idea that information that is useful for formulating models is already embedded in the database. The model base subsystem may already include functionality for this model formulation support. 4.2.3. Database subsystem In general, techniques used for data management in the distributed or open DSS assume that neither the location of hosts changes in the distributed system, nor the connections

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

among the hosts. In the ubiDSS such assumptions are no longer valid, since distributed data management is fundamentally changed due to mobility. However, in managing data for mobile systems, there still exists a sort of class of issues such as handling disconnections and data maintenance, which should be carefully addressed (Pierre, 2002). 4.2.4. Knowledge base subsystem Knowledge acquisition is dynamic. Hence, context observed at the time of knowledge acquisition could be collected. In addition, selecting rules during the reasoning with a knowledge-based system can be context-dependent. In this case, the current context is stored within the factbase. For example, when a distance condition is defined in a subscription file, a distance fact is asserted in the fact-base that registers the two objects, between which the distance can be measured. A location fact is generated for each user or event notification in the fact-base that matches a distance parameter. 4.2.5. Dialogue subsystem In the ubiquitous decision making environment, a decision is supported by a variety of interfaces that are distributed wirelessly or in a fixed location. This requires that the display be flexible based on the context, such as devices that a user sees, or user activity at the time of display (e.g. the user will not see any private information in regular meeting). Using the dialogue subsystem, the decision maker may pick any of the services, including the decision making services. Since one of the system’s goals is to unobtrusively assist decision making, the dialogue subsystem must be flexible and intelligent so that the system allows the user to

157

control the service mode: pull or push. Moreover, the user may want to customize the appearance of the visual look or theme. Frequently, context-aware information will be directly presented to users via a dialogue subsystem for informational and management purposes. There are different representation schemes at various level of abstraction. The choice may be depend on the requirements and the available resources such as bandwidth, performance, and storage capacity (Leonhardt, Magee, & Dias, 1996).

5. Prototype: CAMA-myOpt Ontology, web service (weather forecast, distance payroll service, and more), mobile optimizing user agent (UA), mobile optimizing task specific agent (TSA), and contextaware multi-agent system (MAS) are included as a primary framework elements as shown in Fig. 8. A user can connect to a server by using a mobile device that has an embedded client module. In this framework, we are represented as a ‘thin’ client: the client has only minimal software such as a web browser and a wireless connection module. A thin client approach greatly assists scalability, assuming that the number of web services and agents will be increasing. User information from the user ontology is acquired by the UA, which sends the user-specified request to the TSA. Then similar to a model base management system (MBMS), the TSA calls the model base for appropriate optimization models to provide corresponding services. These optimization models are located in the model base, and are created by a context-model matching rule base along with model base. The context-aware optimization service can largely be divided into three layers of servers: web

Fig. 8. Framework of CAMA-myOpt system.

158

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

server, application server in which MAS is embedded, and multiple Apache soap servers for semantic web services. Our system is based on a semantic web service architecture. User ontology, product ontology, and service ontology are implemented with DAMLCOIL, based on XML. The ontology is accessed and interpreted with Jena API. Agents are implemented with JATLite running on JDK version 1.4.1. Communication between the UA and the client is expressed with Java Servlet Pages (JSP). Through KQML, the agent communication language (ACL), CAMAmy-Opt implements the negotiator’s communication with both seller agents and the coordinator. The TSA’s active environment is implemented through an Apache SOAP server, a web service communication that exists outside of the server and agent community. Information repositories such as a model base and database are implemented with Microsoft Accessw 2000. 5.1. Agent community for comparative shopping To get better ads during comparative shopping, the web server connects with an agent community that involves negotiators, coordinators, federating coordinating seller agents, and other seller agents. ‘Stuff’ ontology is used to understand which product the user now wants to compare exactly, and especially what are the product comparison criteria. If the UA in web server retrieves the user preferences, the decision making engine sends the information to a negotiator on behalf of the UA that is located in the agent community. Then the negotiator will send information back to either the seller agents or to the coordinator. And again, the coordinator sends the information back to the federating seller agents that control the process. The seller agents declare an intention to sell,

and reveal this intention to either the negotiator or the coordinator. The coordinator mediates control between the various federating seller agents, and recommends the most competitive ads to a negotiator. In this system, the final coordination goal is to reach a win–win situation for both the UA and the CSA. In other words, while the user is using the service, the UA will have just-in-time knowledge about more competitive products than those located in nearby offline store. Therefore, through a handheld device, many different products can be introduced to a user. Meanwhile, the CSA can increase seller’s total sales. The seller will get the CSA service through satisfying the requirement of buyers. This coordination is basically based on case-based reasoning that utilizes a case base about bidding history. Finally, a negotiator recommends the ads of selected seller agent that received the highest score. 5.2. Context-aware optimization services In this paper, to realize a context-aware comparative shopping service, we present two kinds of intermediate mobile services that can benefit from context-aware optimization: context-aware model selection and formulation. The context-aware optimization services may involve a variety of context, which consist of primitive and composite context. The composite contextual data are acquired with at least one kind of primitive context, which can be sensed by web services. To do so, these web services may have their own sensors with adapting and diverse sensing technologies such as ID- and/or RF-based sensing. The three-layered architecture is shown in Fig. 9. Some example screens are shown in Fig. 10.

Fig. 9. Web services, context and services.

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

159

Fig. 10. Screenshot of CAMA-myOpt service.

5.3. Context-aware service recommendation

5.5. Context-aware optimization modeling

If a user connects to a server through the UA that resides in the user’s PDA, the UA automatically visits personal profile, user preferences, and current context to figure out which services could be useful to the user. On the user’s PDA screen, the results are shown as Fig. 10(a). The UA retrieves a user-assigned profile, preference, and context information; this data is then delivered to the TSA so that it can recommend the most appropriate information when user connects to the user preferred service.

Modeling is a procedure for making models that can efficiently solve and find a solution based on several mathematical programming methodologies. Therefore context-aware modeling is modeling under various constraints based on distinctiveness of user context. First, constraints could be partly or wholly chosen according to the user context in which the optimization model is to be executed. For example, “Keiko wants to organize the optimum schedule for her day. For this, she inputs a to-do list into her PDA. The agent system considers weather, location and other context to create a schedule to maximize Keiko’s satisfaction”. At this moment, the agent system tests constraints that need to be considered based on contextual data. An example of an optimization model that is appropriate for this scenario mentioned above is following example shown below and also in Fig. 10(a)–(c).

5.4. Context-aware selection of optimization service A selection and execution of optimization services under the user’s current context is to provide optimization models with a corresponding solver that is most appropriate for user’s preference and context. For example, “Andreas has just finished his class at 12:00 p.m. somewhere in the first Engineering Building, and wants to go out for lunch with his friend. At this moment, Andreas wants to be supported by mobile service in making a decision what is the fastest path to get there”. The agent system, in this case, recalls from Andreas’ current activity, and recognizes that he has just finished his lecture and now it is a migration time for him. Therefore the agent recommends through his PDA that Andreas may want to use the shortest path network model. In able to implement such scenario, context-model rules and schedule data of each user are stored in the system as shown in Fig. 10(f).

Maximize user’s payoffs in terms of preferences subject to: constraint only if weather.climateZ“sunny” constraint only if weather.climateZ“windy” or “snowy” constraint only if calendar.activityZ“free” and location.currentZ“on campus” On the other hand, context factors may be used for instantiating coefficient values and parameters within objective functions and/or constraints of optimization models. For example, “Normally Keiko eats lunch in H

160

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161

cafe´ that is located away from her building. However, it is windy and snowing outside. The agent system now retrieves weather information, considers the weather outside, and compares with other alternatives to recommend whether to go to a restaurant or not. It suggests the most satisfactory solution to a user. At this moment, a functional equation on weather considers the acknowledged distance that exists as a coefficient of a functional equation”. To do so, the system calculates perceived distance based on physical distance and weather context. Perceived distanceZW1!W2!W3!Physical distance where W1, W2, and W3 are climate factor, temperature factor and schedule factor, respectively. The contextual data is acquired from a corresponding web service. 5.6. Context-aware recommendation In this scenario, a user may stop by a neighborhood store that is offline, and eventually decide to buy items in the category ‘clothes-women’. The user clicks ‘Request Ads’ on the PDA, and the user interface program on behalf of the user visits the relating URI to get ontology information on clothes-women. Then the system dynamically displays the item vector: it is not hard-coded but generated according to the property data in the ontology (Fig. 10(d)). When the user types values of the product that she is looking at and clicks on the ‘get recommendation’ button, the interface program calls the negotiator to address the user’s request (Fig. 10(e)). Finally, the negotiator returns a winner’s ads to the UA so that the ads could be displayed on the user’s PDA.

6. Concluding remarks Since business workers are usually surrounded by context when performing tasks to achieve their goals, business decision making is an application area that can be benefit from ubiquitous computing technology. Contingency theory has successfully proved that the person’s fitness, the task, and the context are main determinants for increasing individual and/or group performance in a turmoil task environment. Based on that, decision makers can get help from ubiquitous computing services such as ubiDSS. One of ubiDSS’s kernels is its ability to provide contextaware personalized decision making unobtrusively. ubiDSS reveals the feasibility of a ubiDSS implementation that minimizes the user’s obligation by using multi-agent and web service technologies. These technologies both automatically acknowledge the user’s context, and autonomously make decisions on the user’s behalf. In this paper, we have shown how ubiquitous computing technologies can be used in personalized and proactive DSSs with the help of agent technologies and web services.

While several critical factors affect a system’s ability to construct a good decision any time, anywhere, and with any device, using ubiDSS, addresses both foundational and quality areas such as privacy issues and inferring good context from the sensors. These ways of extending traditional DSSs by fully making use of context subsystems dramatically increases the usability and hence decision quality of the DSS.

References Addlesee, M., Curwen, R., Hodges, S., Newman, J., Steggles, P., Ward, A., & Hopper, A. (2001). Implementing a sentient computing system. IEEE Computer, 34(8), 50–56. Barkhuus, L., & Dey, A. (2003). Is context-aware computing taking control away from the user? Three levels of interactivity examined. Proceeding of the 5th international conference on ubiquitous computing, Seattle, USA (pp. 149–156). Barton, J. J., & Kindberg, T. (2001). The cooltown user experience. Proceedings of CHI2001, Seattle, USA (pp. 149–156). Brown, P. J., Bovey, J. D., & Chen, X. (1997). Context-aware applications: From the laboratory to the marketplace. IEEE Personal Communications, 4(5), 58–64. Browns, P. J., & Jones, G. J. F. (2001). Context-aware retrieval: Exploring a new environment for information retrieval and information filtering. Personal and Ubiquitous Computing, 5(4), 253–263. Brumitt, B., Meyers, B., Robbins, D., Krumm, J., Czerwinski, M., & Shafer, S. (1998). The new easyliving project at microsoft research. Proceedings of the 1998 DARPA/NIST smart spaces workshop (pp. 127–130). Chevist, K., Mitchell, K., & Davis, N. (2001). Investigating context-aware information push vs. information pull to tourists. Proceedings of mobile HCI2001. Coen, M. H. (1998). Design principles for intelligent environments. Proceedings fifteenth national conference on artificial intelligence (AAAI-98) 10th conference on innovative applications of artificial intelligence, Menlo, USA. Crabtree, A., Rodden, T., Hemmings, T., & Benford, S. (2003). Finding a place for UbiComp in the home. Proceedings of the 5th international conference on ubiquitous computing, Seattle, USA. Daume, S., & Robertson, D. (2000). An architecture for the deployment of mobile decision support systems. Expert Systems with Applications, 19, 305–318. Decurtins, C., Norrie, M. C., & Signer, B. (2003). Digital annotation of printed documents. Proceedings of 12th international conference on information and knowledge management, New Orleans, USA. Garlan, D., Siewiorek, D., Smailagic, A., & Steenkiste, P. (2002). Project aura: Toward distraction-free pervasive computing. IEEE Pervasive Computing, April–June, 22–31. Gregor, S., & Benbasat, I. (1999). Explanations from intelligent systems: Theoretical foundations and implications for practice. MIS Quarterly, 23, 497–527. Grønbæk, K., Kristensen, J. F., Ørbæk, P., & Agger Eriksen, M. (2003). Physical hypermedia: Organizing collections of mixed physical and digital material. Proceedings of ACM hypertext 2003, Nottingham, UK. Hagras, H., Callaghan, V., & Colley, M. (2001). Prototyping design and learning in outdoor mobile robots operating in unstructured outdoor environments. IEEE Magazine on Robotics and Automation, 8(3), 53–69. Heemstra, S. M., Niemegeers, I. G. M. M., Bueno, D. R., & Visser, R. (2001). Self-organizing networks. Proceedings of the second WWRF meeting, Helsinki, Finland (pp. 10–11).

O. Kwon et al. / Expert Systems with Applications 28 (2005) 149–161 Holmquist, L. E., Mattern, F., Schiele, B., Alahuhta, P., Beigl, M., & Gellersen, H. W. (2001). Smart–its friends: A technique for users to easily establish connections between smart artefacts. Proceedings of UBICOMP 2001, Atlanta USA. ˚ kesson, K. -P., Koleva, B., Humble, J., Crabtree, A., Hemmings, T., A Rodden, T., & Hansson, P. (2003). Playing with the bits-userconfiguration of ubiquitous domestic environments. Proceedings of the 5th annual conference on ubiquitous computing, Seattle, USA. Ipiqa, D. L. D., & Lo, S. (2001). Sentient computing for everyone. Proceedings of the third IFIP WG 6.1 international working conference on distributed applications and interoperable systems (DAIS’2001) Krakow, Poland (pp. 17–19). Kahn, J. M., Katz, R. H., & Pister, K. S. J. (1999). Mobile networking for smart dust. Proceedings of ACM/IEEE international conference on mobile computing and networking (MobiCom 99), Seattle, USA (pp. 17–19). Kethers, S., & Schoop, M. (2000). Reassessment of the action workflow approach: Empirical results. 5th international workshop on the language-action perspective on communication modeling LAP, Aachen, Germany. Kidd, C. D., Orr, R., Abowd, G. D., Atkeson, C. G., Essa, I. A., MacIntyre, B., Mynatt, E., Starner, T. E., & Newstetter, W. (1999). The aware home: A living laboratory for ubiquitous computing research. The second international workshop on cooperative buildings (coBuild’99). Kindberg, T., Barton, J., Morgan, J., Becker, G., Caswell, D., Debaty, P., Gopall, G., Frid, M., & Krishnan, V. (2000). People, places, things: Web presence for the real world. Third IEEE workshop on mobile computing systems and applications, Monterey, USA. Kleinrock, L. (2003). An Internet vision: The invisible global infrastructure. Ad Hoc Networks, 1, 3–11. Kwon, O. B., & Lee, K. C. (2002). Mining linear programming models from databases using means ends analysis and artificial neural network. Expert Systems with Applications, 22, 39–50. Leonhardt, U., Magee, J., & Dias, P. (1996). Location service in mobile computing environments. Computers and Graphics, 20(5), 627–632. Muller, M. L., Ganslandt, T., Eich, H. P., Lang, K., Ohmann, C., & Prokosch, H. (2001). Towards integration of clinical decision support in commercial hospital information systems using distributed, reusable software and knowledge components. International Journal of Medical Informatics, 64, 369–377. Nurminen, J. K., Karonen, O., & Hatonen, K. (2003). What makes expert systems survive over 10 years—empirical evaluation of several engineering applications. Expert Systems with Applications, 24, 199–211.

161

Pierre, S. (2002). Mobile computing and ubiquitous networking: Concepts, technologies and challenges. Telematics and Informatics, 18(2), 109–131. Prekop, P., & Burnett, M. (2003). Activities, context and ubiquitous computing. Computer Communications, 26, 1168–1176. Prekop, P., & Kingston, G. (2001). Implementing C4ISR architecture framework—an Australian case study Sixth international command and control research and technology symposium (6th ICCRTS’), Annapolis, USA. Rasmy, M. H., Lee, S. M., Abd El-Wahed, W. F., Ragab, A. M., & ElSherbiny, M. M. (2002). An expert system for multiobjective decision making: Application of fuzzy linguistic preferences and goal programming. Fuzzy Sets and Systems, 127, 209–220. Remondo, D., & Niemegeers, I. G. (2003). Ad hoc networking in future wireless communications. Computer Communications, 26, 36–40. Rocchesso, D., Bresin, R., & Fernstro¨m, M. (2003). Sounding objects. IEEE Multimedia, 10(2), 42–52. Schilit, B. N., Adams, N., Gold, R., Tso, M., & Want, R. (1993). The PARCTAB mobile computing system. Proceedings of the fourth workshop on workstation operating systems (WWOS-IV), Napa, USA, October (pp. 34–39). Simon, H. A. (1960). The new science of management decision. New York: Harper. Streitz, N. A., Ro¨cker, C., Prante, Th., Stenzel, R., & Alphen, D. V. (2003). Situated interaction with ambient information: Facilitating awareness and communication in ubiquitous work environments. In D. Harris, V. Duffy, M. Smith, & C. Stephanidis (Eds.), Human-centered computing: Cognitive, social, and ergonomic aspects, Mahwah, June. Takahashi, T., & Namiki, F. (2003). Three attempts at de-Wintelization: Japan’s TRON project, the US government’s suits against Wintel, and the entry of Java and Linux. Research Policy, 32(9), 1589–1606. Want, R., Hopper, A., Falcao, V., & Gibbons, J. (1992). The active badge location system. ACM Transactions on Information Systems, 10(1), 91–102. Westerlund, B., Lindqvist, S., Mackay, W., & Sundblad, Y. (2003). Codesigning methods for designing with and for families. Proceedings for 5th European academy of design conference, Barcelona, April. Woolham, J., & Frisby, B. (2002). How technology can help people feel safe at home. Journal of Dementia Care, 10(2), 27–29. Workman, M. (2004). Expert decision support system use, disuse, and misuse: A study using the theory of planned behavior. Computers in Homan Behavior (in press). Zahariadis, T. (2004). Evolution of the wireless PAN and LAN standards. Computer Standards and Interfaces, 26(3), 175–185.