Personal Router Client Side Research
Automatic Selection of Dynamic Network Services
As the world of wireless networking grows increasingly diverse and complex, it becomes correspondingly more difficult and confusing for users to select appropriate network services. A mobile user seeking wireless network access may have to choose among service providers offering different levels of quality of service (QoS) and different pricing plans. Furthermore, the set of available services may change rapidly with time and the user's location, requiring the user to choose new services frequently. Adding to the challenge, the optimal service choice depends not only on the features of the service, but also on the context in which the service is used, including such dynamic variables as the applications the user is running and the user's mental state. For instance, a user may prefer to use a high data rate, high latency service for file transfer, but switch to a low latency service for videoconferencing. To help the user deal with such complexity, we developed an agent to automatically and dynamically select network services for the user.
The PR is a hardware device that acts as an IP (Internet Protocol) router, interfacing with a variety of network services and a user's personal devices. The key challenge in the PR is accurate service selection. Given a set of available services and (possibly incomplete) descriptions of each service, it attempts to select the one preferred by the user. The user can express satisfaction or dissatisfaction with the current service in use; based on this feedback, the PR agent updates its model of user preferences for future selections.
Previous research efforts in service selection have proposed simple policy and prioritization based mechanisms, but such static policies cannot capture users' individual preferences. Manual selection of wireless services from a menu of options is equally infeasible since users are cognitively unequipped to choose among a baffling array of low-level options, particularly in rapidly changing and complicated wireless service environments.
These considerations motivate a machine learning AI approach. In our problem, the set of available services may change and some service features are inaccessible to the agent. Therefore we choose a combined RL and NN approach, using RL to learn the value of observed services and NN to model user utility and predict the value of unobserved services. The combination of these two approaches allows the PR to quickly learn user preferences, even when new service profiles are encountered and when service descriptions are incomplete. In this paper we describe the design and implementation of the PR and present results demonstrating its effectiveness under a variety of realistic and complex environments.
Intuitive User Interfaces for Controlling Network Service Selection
The key assumption of our work is that the selection agent makes service choices based on high-level user guidance and the specifics of what services are offered and what applications are running. We assume that most users, unless they are unusually sophisticated, will want only a high-level control over this process. Therefore the user interface required most be minimally intrusive and highly intuitive; providing the user with easy control over the overall behavior of the system and a way to monitor any current rate of charging.
We are exploring a simple user interface that attempts to map user control onto a single dimension of service quality, which we call the better-cheaper spectrum. In this model, the user interface consists of two buttons ( better and cheaper ), a meter that shows the money consumption since last reset (the taxi meter ) and a meter that shows the derivative of this meter (the money speedometer ). If the user is running an application and is not satisfied with the current performance, he clicks the better button, and his agent selects a new service from among the service options provided by the various providers. Similarly the cheaper button finds a less expensive service option if one is available.
It is interesting to note that key to making this interface intuitive is that each push of the button cause a noticeable, and roughly similar, change in the relevant metric. For example, each push of the Better button might roughly double application performance, while each push of the Cheaper button might cut the cost in half. An implication of this is that the scale going up is not the same as the scale going down. In one case the quality doubles, in the other the price halves, but there is not necessarily a one-to-one correspondence between the two.
Learning User and Application Contexts for Network Service Selection Decisions
The optimal service choice depends not only on the features of the services available but also on the context in which the service is used. For instance, a user may prefer to use a high data rate, high latency service for file transfer, but switch to a low latency service for videoconferencing. A user may prefer higher cost services while conducting business activities on the network but prefer lower cost services for personal network usage. In the airport immediately before departure a user may prefer one type of service, but have a different set of preferences while sitting in the lounge of a coffee shop.
This research examines how to identify the context in which a service selection decision will be made. The context for a selection decision includes both technical and cognitive factors. The technical context includes such factors as the application set currently being used, the activities being done in the application, the application with the users focus, the location (as determined by any number of technical means), and the time of day. The cognitive state of the user can be inferred from their interaction with the user interface and a learned user model.
Lowering Barriers to Entry for Devices to Access Wide Area Wireless Services
Currently the Personal Router Device and the applications that use it are part of the same technological platform, namely laptop computers. In the near future the PR device will manage the wide-area connectivity for a network of personal devices. The PR device will handle the authentication, payment negotiation, service selection, and mobility for the local devices. Devices therefore will be able to made much cheaper since they only have to implement their primary funcationality. Each personal device will also save considerably on power as it only has to communicate with the PR device which provides the wide area connectivity in a power efficient manner for all local devices.
The research questions addressed in this area are how to design a technological framework that allows this vision to operate efficiently and provide the needed services to the local personal devices. What should the PR interface for the local devices actually look like? What information does the PR device require from the devices to operate efficiently? What information does the PR device need to provide to the devices?