throbber
Learning to Detect User Activity and
`Availability from a Variety of Sensor Data
`
`Martin Mühlenbrock, Oliver Brdiczka, Dave Snowdon, Jean-Luc Meunier
`Xerox Research Centre Europe, Meylan, France
`Martin.Muehlenbrock@acm.org
`
`Abstract
`
`Using a networked infrastructure of easily available
`sensors and context-processing components, we are
`developing applications for the support of workplace
`interactions. Notions of activity and availability are
`learned from labeled sensor data based on a Bayesian
`approach. The higher-level information on the users is
`then automatically derived from low-level sensor
`information in order to facilitate informal ad hoc
`communications between peer workers in an office
`environment.
`
`1. Opportunistic meetings
`
`In an office environment, unplanned interactions play
`an important role in the exchange of information as
`well as for the social cohesion of a group, their
`importance should not be neglected, as they are often
`instrumental to the organization [10]. In contrast to
`simply spontaneous encounters, opportunistic meetings
`occur where one person has a reason to talk with
`another but has not arranged to meet in advance and
`thus either seeks them out or waits until an encounter
`occurs by chance to raise the issue [9]. However, there
`is always the danger that the encounter might not take
`place (or not in a timely manner), leaving the issue
`unaddressed. In this paper we consider how such
`meetings, referred to here as IFFI’s (for ‘informal face-
`to-face interactions’), might be facilitated. In the first
`place by alleviating
`the burden of finding an
`appropriate time and place to meet while taking into
`account each person’s constraints and activities.
`Facilitating IFFI’s differs from making a rendezvous,
`since it enables a deep interleaving with current
`ongoing activities so as to support the setting-up of an
`interaction
`in near
`real-time. Secondly,
`these
`interactions should be supported in situ and in an ad-
`hoc manner, as they cannot be logistically pre-
`
`arranged. For instance, by discovering surrounding
`devices, such as printers or screens, that may support
`the interaction by providing convenient access to
`relevant documents. Finally, putting in perspective
`series of such interactions helps users to better
`articulate their work, for instance by reminding them
`of previous related interactions with the same persons
`or on the same topic.
`interactions are
`these
`As described above,
`opportunistic in nature, and therefore depend upon the
`ability of the people involved to correctly interpret
`explicit and implicit cues. For instance, a colleague
`might be available to answer a short question if he has
`just finished a phone call and has not yet turned back
`to continue work on his presentation slides. On the
`other hand he might not be available if he has closed
`the door of his room. Hence the seizing of an
`opportunity
`for having an ad hoc
`face-to-face
`interaction is intertwined with the recognition of
`mostly visual attributes that go along with different
`activities in the working day. When workers are co-
`located in an office space, it is easy for them to grasp
`the corresponding signals. In settings where these are
`not perceivable, time may be wasted in seeking out
`opportunities for interaction, or people may indeed
`give up completely on the attempt, depending on the
`importance and the timeliness of the interaction.
`Facilitating such meetings involves concepts of
`interruptibility and availability. Often interruptions are
`a mundane, normal part of work and it is through these
`interruptions that the work gets done [12], [13], [5].
`However, there is also a considerable negative impact
`of interruptions, since interruptions can be difficult and
`disruptive. By developing a sensing infrastructure and
`contextual processing system we are aiming at
`providing helpful clues to people working in an office
`environment, when is a person interruptible, i.e.
`available for an opportunistic meeting.
`
`Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications (PERCOM’04)
`0-7695-2090-1/04 $ 20.00 © 2004 IEEE
`
`e.Digital Corporation
`Exhibit 2018 - Page 1
`
`

`
`PDA location
`
`User feedback
`
`Ambient sound
`
`User 1
`
`PC usage
`
`Phone usage
`(planned)
`
`User 2
`
`Context
`Processing
`
`User n
`
`Figure 1: Sensing infrastructure
`
`2. Sensing infrastructure
`
`(cid:120)(cid:3)
`
`(cid:120)(cid:3)
`
`the burden of
`to reduce
`The application aims
`interruptions
`in
`the workplace, support
`informal
`workplace encounters by providing an indicator of a
`person's availability and support requests to find out
`when a particular person is available.
`In order to do this we use a number of different
`sensing techniques in order to derive a person’s
`activity (see also Figure 1)
`(cid:120)(cid:3)
`PC usage: Detection of users’ keyboard and
`mouse activity on personal computers.
`Phone usage: Detection of phone usage
`(planned).
`PDA location: Determination of the location
`of users’ PDAs.
`PDA ambient sound: Detection of ambient
`sound in the PDAs’ vicinities.
`PDA user feedback: Explicit feedback on
`some context variables provided by the
`users.
`Sensing the user activity on a personal computer is
`an important and easy source of information. Users’
`activity on personal computers is detected by a demon
`that runs on the PCs and notices typing and mouse
`movements. The most recent measurements are
`averaged, resulting in a smoothed increase and decline
`
`(cid:120)(cid:3)
`
`(cid:120)(cid:3)
`
`of the usage value – this is done to prevent the system
`deciding that someone is not using their PC because
`they have paused for a couple of seconds to think. It
`seems obvious that a similar sensor on the PDA that
`detect writing on the screen and button presses would
`be useful. However, for performance reasons, the
`PDA’s operating system (Windows CE) does not
`support hooks, as does the WIN32 API – hooks
`provide a simple means to implement the usage sensor
`and we have not found an equivalent in Windows CE.
`For the phone usage sensor, contact-less switches
`wired to a purpose built I/O card attached to a nearby
`PC’s serial port allow the detection of a phone being
`taken off, and placed back on the hook.
`The PDAs’ locations are determined by using a
`wireless network. Wireless LANs are becoming more
`and more widespread, despite their current security
`weaknesses. A wireless LAN requires installing one or
`more access points, which act as a bridge between the
`wired and the wireless networks. With additional
`redundant access points, a location system can be
`obtained as a by-product of the wireless LAN, by
`triangulating the radio signal [2], [3]. Places are then
`identified by their radio characteristics in a calibration
`phase. Later on, a device can locate itself by measuring
`the current radio characteristics and comparing them
`with calibration data [1]. Both locating and tracking
`
`Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications (PERCOM’04)
`0-7695-2090-1/04 $ 20.00 © 2004 IEEE
`
`e.Digital Corporation
`Exhibit 2018 - Page 2
`
`

`
`used to label situations in order to create a set of
`training data. The user is asked to provide explicit
`feedback on a number of context variables. These
`include his location, the co-location with other people,
`which could be either people identified to the system
`or just the number of people present, activity and
`availability (see Figure 3).
`In addition to the information given by the user, the
`user interface also records the time the user took to fill
`out the form. This piece of information allows for
`relating the information given by the user to the sensor
`data at the point in time just before the user interface
`popped up. This is important for two reasons. One the
`one hand, we assume that the user is likely to give
`information on the situation just before he was
`prompted for information, thus not saying that he is
`working on the PDA since at that point in time he is
`filling out the form. On the other hand, the filling out
`of the form itself produces sensor data such as ambient
`sound that is not related to actual user’s situation, and
`hence it is necessary to be able to refer to the sensor
`data when the writing on the PDA’s screen was not yet
`present.
`
`are possible with this technique, depending if it is the
`device that computes its location or some server part of
`the infrastructure. Figure 2 shows the position of the
`network access points in a floor of our lab, where the
`accuracy is at the room level with a reliability of about
`80%.
`
`Antenna 1
`Antenna 1
`
`Antenna 2
`Antenna 2
`
`Position xy
`Position xy
`
`Antenna 3
`Antenna 3
`
`Figure 2: Wifi-based localization system
`
`Furthermore, the PDAs are used to detect ambient
`sound in their vicinities. Each PDA is equipped with a
`microphone that is used to record sound samples of 10
`seconds lengths. These sound samples are analyzed in
`comparison to a sample of the situation with the lowest
`sound level encountered so far. This sample defines a
`reference point for the no-ambient-sound situation.
`
`Figure 4: User feedback on an encounter
`
`Furthermore, by using the hardware buttons, the
`user can also provide information to the system about
`encounters that take place. Three hardware buttons
`have been associated with functions for indicating the
`suitability or unsuitability of an encounter and end of
`an encounter, the latter allowing for an estimation of
`the encounters duration. Right after the meeting the
`user can input further information on the encounter
`concerning its timing, importance and urgency (see
`Figure 4). All this information is to improve the
`
`Figure 3: PDA interface for user feedback
`
`In addition, a user interface has been developed for
`the PDA that prompts the user for information on his
`context in a regular fashion. This user information is
`
`Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications (PERCOM’04)
`0-7695-2090-1/04 $ 20.00 © 2004 IEEE
`
`e.Digital Corporation
`Exhibit 2018 - Page 3
`
`

`
`PlaceImage
`
`EntityImage
`
`EntityPlace
`
`Printer
`
`Connected
`Places
`
`Place
`
`Entity
`
`Device
`
`DeviceUser
`
`Person
`
`“Static” profile data
`
`Dynamic event data
`
`AEUserActivity
`
`AEAvailability
`
`AEUserLocation
`
`AEUserCoLocation
`
`Event
`
`EventEntity
`
`SEUsage
`
`SEAmbientSound
`
`UEIFFI
`
`SEPhone
`
`UEFeedback
`
`SELocation
`
`Figure 5: Database schema
`
`IS A relation
`
`1 arity 0,n
`
`the user’s
`
`to correctly estimate
`systems ability
`availability for further encounters.
`The various sensors send their information to a
`database residing on a server that can be accessed from
`both the wired and the wireless networks. The database
`contains “static” profile data as well as the dynamic
`event data (see Figure 5). The “static” profile data may
`vary over time (e.g. if someone is allocated a new PC
`or changes office) but comparatively slowly compared
`to the event data. The profile data names the entities
`(people and devices) and places that are referred to by
`the dynamic event data. Furthermore the profile
`establishes links between devices and places and
`people. For example
`the profile
`indicates
`that
`particular computers, PDAs and phones are associated
`with a particular user and that that user has his office
`in a particular place. It also indicates the normal
`function of places so that our software can find out if a
`
`user is in a place that is someone’s office or in a public
`space such as a meeting room or coffee area.
`The tables associated with the dynamic event data
`store information about events generated by the
`sensors and events generated by higher-level
`components predicting activity and availability.
`Relations such as “EventEntity” link events to the
`entities (devices & people) related to those events. For
`both events and profile data we use a sort of
`inheritance scheme – for example the table Entity
`stores generic information about all entities and the
`table Person (a person is an entity) stores information
`specific to people that is not contained in Entity.
`Events are described by a unique id, the entity
`responsible for generating the event, a timestamp and a
`type. Each subtype of Event stores additional
`information such as a probability distribution of
`possible user locations, or the sound level measured by
`a PDA.
`
`Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications (PERCOM’04)
`0-7695-2090-1/04 $ 20.00 © 2004 IEEE
`
`e.Digital Corporation
`Exhibit 2018 - Page 4
`
`

`
`User
`feedback
`
`for a quick question, for
`a discussion, soon, not
`
`Availability
`
`PC, PDA, phone,
`desk, discussing,
`walking, meeting
`
`User location
`
`Activity
`
`Rooms
`
`Time of day
`
`morning, lunchtime,
`afternoon, evening,
`
`User co-Location
`
`no/2/3/many
`
`iPAQ location
`
`PC usage
`
`about 20 locations
`
`0..1 mapped to 4 values:
`no/little/mediocre/high
`
`Phone
`usage
`
`0 / 1
`
`Ambient
`sound
`
`iPAQ co-
`location
`
`0..1 mapped to 3
`values:
`
`anonymous iPAQ co-
`location variable
`(no/2/3/many)
`
`Figure 6: Learning dependencies (with planned parts grayed out)
`
`3. Context processing and learning
`
`The context processing consists of combining
`information from different sources and deriving an
`estimation of the users’ situation. Of particular interest
`for the application are the activities and availabilities
`of the users. The set of relevant activities is comprised
`of
`
`(cid:120)(cid:3)
`
`(cid:120)(cid:3)
`
`Single-person activities like using a PC,
`using a PDA, and working on the desk,
`(cid:120)(cid:3) Multi-person activities such as phoning,
`discussing, or being in a meeting, and
`Intermediate activities like walking from
`one place to another, which result in a drastic
`change of context.
`These activities are assumed to have a major
`influence on the level of a person’s availability.
`Relevant classes of availabilities that are considered to
`be useful are being available for a quick question,
`being available for a longer discussion, being available
`soon, or not being available at all.
`By using machine-learning methods the system is to
`find a connection between sensed information and
`situations as perceived by users,
`including also
`information on people’s habits. This is in line with a
`growing
`interest
`in ubiquitous and contextual
`
`computing in deriving higher-level information from
`lower lever sensor data for the provision of some
`automatic services to the user in an unobtrusive way.
`We are focusing particularly on Bayesian methods,
`because they are well adapted to deal with the
`probability distribution in the localization data and
`have proven useful in many application domains.
`However, also the application of other methods such as
`decision trees or neural networks has been envisaged.
`For our application the learning of classifications
`for activity and availability is of particular interest (see
`Figure 6). The user feedback on context variables in
`different situations provides higher-level information
`that allows for the labeling of lower level sensor
`information
`in order
`to use machine-learning
`techniques. The learned characterizations are then
`matched with new raw data to automatically detect
`types of activities and availability in situations. If the
`user does not agree on a certain characterization of his
`current situation, he can correct the description,
`thereby implicitly providing new training information
`for the machine-learning component.
`
`3.1. Learning of activities
`
`Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications (PERCOM’04)
`0-7695-2090-1/04 $ 20.00 © 2004 IEEE
`
`e.Digital Corporation
`Exhibit 2018 - Page 5
`
`

`
`so, we consider again the formula of the Naïve
` is
`( |P S
`
`
`)a
`
`
`, }TDAC
`AS
`,
`
`PH
`
`,
`
`Bayesian classifier. As the term (cid:150)
`
`(cid:143)
`S
`{
`
`
`
`,PC
`
`maximal element of the sum (cid:166)
`
`constant for each activity, we can easily look for the
`LOC P
`
`aP(
`i LOC
`)
`(
`)
`(cid:143)Rooms
`LOC
`once we have determined the argmax. This will give us
`the location that is the most probable for this activity
`with
`respect
`to
`the given
`location probability
`distribution.
`
`|
`
`3.2. Learning of availabilities
`
`On the basis of labeled sensor data, we seek to learn
`probabilistic classifiers for relevant user activities, i.e.
`(cid:120)(cid:3) Activity a (cid:143) ACT = {PC, PDA, phone,
`desk, discussing, walking, meeting}
`We have as input for the machine learning sensor
`data and other basic information with the following
`ranges:
`PC usage: PC (cid:143) {no, low, mediocre, high}
`(cid:120)(cid:3)
`Phone usage: PH (cid:143) {yes, no}
`(cid:120)(cid:3)
`(cid:120)(cid:3) Ambient sound: AS (cid:143) {no, low, high}
`(cid:120)(cid:3) Anonymous iPAQ co-location: AC (cid:143) {no, 2,
`3, many}
`Time of the day: TD (cid:143) {morning, lunchtime,
`afternoon, evening, night}
`(cid:120)(cid:3) User’s iPAQ location, given in form of a
`with LOC
`probability distribution
`(LOC
`Pi
`)
`(cid:143) {room1, room2, …, roomn}
`A Bayesian approach is used to determine the
`activity MAPa
`probability. As the location is given as a probability
`distribution, we have to sum over all rooms:
`
` with the maximum a posteriori (MAP)
`
`(cid:120)(cid:3)
`
`,
`
`LOC
`
`|
`
`PC
`
`,
`
`PH
`
`,
`
`AS
`
`,
`
`AC
`
`,
`
`TD
`
`)
`
`(cid:166)(cid:143)
`
` aP (
`
`
`Rooms
`
`a
`
`MAP
`
`(cid:32)
`
`arg
`(cid:143)
`a
`
`max
`ACT
`
`LOC
`
`By applying the Bayesian theorem (the constant
`denominator can be eliminated because of the argmax),
`we have:
`
`a
`
`PC
`
`,
`
`PH
`
`,
`
`AS
`
`,
`
`AC
`
`,
`
`TD
`
`|
`
`a
`
`,
`
`LOC
`
`)
`
`
`
`aP(
`
`|
`
`LOC
`
`)
`
`(
`
`LOC
`
`)
`
`(cid:120)(cid:3)
`
`On the basis of the sensor data as well as derived data,
`we also seek to learn probabilistic classifiers for users’
`availabilities, i.e.
`(cid:120)(cid:3) Availability av (cid:143) AVA = {for a quick
`question, for a discussion, soon, not at all}
`We have as input for the machine learning higher-
`level information and other basic information with the
`following ranges:
`(cid:120)(cid:3) User’s
`form of a
`in
`location given
`(LOC
`P
`)
`probability distribution
` with
`LOC (cid:143) { room1, room2, …, roomn}
`(cid:120)(cid:3) User’s activity given in form of a probability
` with A (cid:143) ACT = {PC,
`
` )( AP
`distribution
`PDA, phone, desk, discussing, walking,
`meeting}
`the day: TD (cid:143) {morning,
`Time of
`lunchtime, afternoon, evening, night}
`(cid:120)(cid:3) User’s anonymous co-location value AUC
`(cid:143) {no, 2, 3, many}
`A user’s location and a user’s anonymous co-
`location aren’t basic sensor information, but are
`notions derived from sensor data. A user’s location is
`inferred by relating the user’s location habits (both
`sensed and from the user feedback) to iPAQ location
`and PC activity. A user’s anonymous co-location
`combines ambient sound and anonymous iPAQ co-
`location.
`A Bayesian reasoning determines the availability
`av
`MAP
`probability. As user location and activity are given as
`probability distributions, we have to sum over all
`activities and rooms:
`
`the maximum a posteriori (MAP)
`
` with
`
`av
`
`MAP
`
`(cid:32)
`
`arg
`av
`
`max
`(cid:143)
`AVA
`
`(cid:166) (cid:166)
`
`LOC A
`
`avP
`(
`
`,
`
`LOC
`
`,
`
`A
`
`|
`
`AUC
`
`,
`
`TD
`
`)
`
`By applying the Bayesian theorem, we have:
`
`P
`i
`
`(cid:166)(cid:143)
`
`P
`(
`Rooms
`
`LOC
`
`(cid:32)
`
`MAP
`
`arg
`(cid:143)
`a
`
`max
`ACT
`
`If we make the simplifying assumption that all sensor
`values are conditionally independent (Naïve Bayesian
`classifier), we have:
`
`a
`
`MAP
`
`(cid:32)
`
`arg
`(cid:143)
`a
`
`max
`ACT
`
`S
`
`(cid:143)
`{
`
`PC
`
`,
`
`(cid:150)
`
`PH
`
`,
`
`AS
`
`P
`(
`AC
`,
`
`S
`|
`TD
`,
`
`a
`}
`
`)
`
`LOC
`
`(cid:166)
`
`(cid:143)
`
`aP (
`
`Rooms
`
`|
`
`LOC
`
`)
`
`P
`i
`
`(
`
`LOC
`
`)
`
`In order to estimate prior probabilities for the
`Bayesian learning we count the number of occurrences
`of each activity in the user feedback with and without
`the respective sensor value detected and the sum of
`probabilities of room LOC in user feedback where
`activity was chosen. In order to get more reliable
`probability values, especially in the case of (nearly)
`empty user feedback, we used a simple LaPlace
`smoothing.
`The user activity depends largely on the location
`where it takes place. We take that into account in
`weighting the a posteriori naïve Bayes probability with
`the probability distribution of the location. As we are
`working on all possible location values, we do not
`determine a discrete location for the activity yet. To do
`
`Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications (PERCOM’04)
`0-7695-2090-1/04 $ 20.00 © 2004 IEEE
`
`e.Digital Corporation
`Exhibit 2018 - Page 6
`
`

`
`av
`
`MAP
`
`(cid:32)
`
`arg
`av
`
`max
`AVA
`
`(cid:143)
`
`(cid:166) (cid:166)
`
`LOC A
`
`P
`
`(
`
`AUC
`
`,
`
`TD
`
`|
`
`av
`
`,
`
`LOC
`
`,
`
`A
`
`)
`
`avP
`(
`
`|
`
`LOC
`
`,
`
`A
`
`)
`
`P
`
`(
`
`LOC
`
`|
`
`
`
`
`
` APA ()
`
`)
`
`If we make the simplifying assumption that all
`sensor values are conditionally independent (Naïve
`Bayesian classifier) and we estimate that the calculated
`user location is independent from the calculated
`activity [P(LOC|A)=P(LOC)], we have:
`
`the afternoon.
`in
`for a discussion
`available
`Furthermore, the users directly linked the activity
`“PC”, which is very well detected, to the availability
`“soon”.
`
`Table 2: Confusion matrix for availability
`
`
`
`For a quick question
`
`For a quick
`question
`0.50
`
`For a dis-
`cussion
`0.50
`
`Soon
`
`0.00
`
`Not at
`all
`0.00
`
`(
`
`TD(
`
`)
`
`|
`
`)
`
`|
`
`)
`
`(
`
`)
`
`For a discussion
`
`av
`
`MAP
`
`(cid:32)
`
`max
`arg
`(cid:143)
`av
`AVA
`
`P
`
`AUC
`
`|
`
`Pav
`)
`
`
`
`|
`
`av
`
`(cid:166)(cid:166)
`
`LOC A
`
`avP
`(
`
`LOC
`
`avP
`(
`
`A
`
`P
`
`LOC
`
`P
`
`(
`
`A
`
`)
`
`As for the Bayesian learning of the activity, we
`estimate the prior probabilities by counting the number
`of availability in user feedback with and without the
`respective value of AUC, TD and the sum of
`probabilities of room LOC as well as the sum of
`probabilities of activity A in user feedback where
`availability was chosen. Again we smooth the values
`with simple LaPlace.
`
`4. Results
`
`In order to get some first results of the feasibility of the
`approach, we conducted several one-day experiments
`with different sets of users. We tested typical user
`situations like PC work, meeting, phoning etc. After
`having collected characteristic data during one day, we
`tried
`to classify new user-labeled situations
`the
`following day. Table 1 and Table 2 show the results of
`the activity and the availability detection in form of a
`confusion matrix. The training and test sets are
`comprised of 62 situations (day 1) and 27 situations
`(day 2), respectively. All situations included the
`activities “PC”, “desk” or “discussing”.
`
`Table 1: Confusion matrix for activities
`
`PC
`
`Desk
`
`Discussing
`
`PC
`
`Desk
`
`Discussing
`
`0.74
`0.33
`0.00
`
`0.05
`0.67
`0.00
`
`0.16
`0.00
`1.00
`
`The results of the detection of the activities “PC”
`and “discussing” are very good, because they rely
`directly on sensor information (PC activity, ambient
`sound). As the PC activity sensor smoothes its values,
`it does not immediately return to zero when the user
`stops working on PC and begins working on desk.
`That is why there is a quite high detection rate of the
`activity “PC”, even though the user labeled it “desk”.
`The results of the detection of the availabilities “for
`a discussion” and “not at all” are excellent due to the
`fact that the users linked these availabilities especially
`to the time of day during the experiment. They didn’t
`want to be contacted in the morning and they were
`
`Soon
`
`Not at all
`
`0.00
`
`0.00
`
`0.00
`
`1.00
`
`0.09
`
`0.00
`
`0.00
`
`0.91
`
`0.00
`
`0.00
`
`0.00
`
`1.00
`
`In general, we found that a user’s location is a
`strong indicator for his activity. This seems reasonable
`since in his room a user typically would be doing PC
`and desk work, whereas in his colleagues’ rooms and
`meeting rooms he would usually be discussing or
`meeting, respectively. Nevertheless, we found that the
`current localization system is not sufficiently reliable.
`We have available an extended wireless localization
`system that, in addition to information from wifi
`connections, is using information from Bluetooth
`connections and infrared beacons, providing also a
`reliability measure
`that
`is based on
`the user’s
`movement as detected by motion sensors attached to
`the PDA. The extended wireless localization system
`has not yet been used for the activity and availability
`learning, since it requires a considerable amount of
`training itself.
`For the same reason, i.e. the requirement of larger
`amounts of training data, we did not cover mixed
`activities, i.e. situations in which the user performs two
`or more activities literally at the same time or in short
`alternations. However, these situations exist, e.g. a
`mixture of desk and PC activities, resulting in an
`arbitrary labeling when the user is prompted for
`specifying his activity in this moment of all situations.
`In some cases also
`the
`labeling of
`the users’
`availabilities may not be reliable, since it appears to be
`biased towards “available for a quick question”, this
`may be due to the fact that at the moment providing
`availability information has no direct consequences for
`the users. This could change when the complete
`application is running as the effect of displaying this
`information to other users could result in a higher
`number of interruptions for quick questions, whereas
`the indication of “not available at all” would guarantee
`some degree of tranquility.
`The smoothing of the PC usage information, i.e. the
`averaging of the most recent measurements, has shown
`to be problematic for the learning since it makes it
`difficult to relate the information to other sensors.
`
`Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications (PERCOM’04)
`0-7695-2090-1/04 $ 20.00 © 2004 IEEE
`
`e.Digital Corporation
`Exhibit 2018 - Page 7
`
`

`
`wireless
`connection
`
`Event
`database
`
`Ambient
`Sound
`
`Location
`
`User
`Feedback
`
`User
`Info
`
`PDAs
`
`PC
`Usage
`
`Phone
`Usage
`
`Learning
`
`learning
`results
`
`Detection
`
`PCs
`
`Event bus
`
`Figure 7: System architecture including flow of information back to the users
`
`However, some smoothing seems to be beneficial as
`soon as derived information is shown to the user in
`order to prevent a “flickering” display of the situation
`description. Some further tuning of the system is
`required in order to find the optimum period of time to
`smooth mouse & keyboard detection over.
`
`5. Providing
`information
`
`the user with context
`
`The results of the learning of activity and availability
`notions are automatically included in a detection
`component, which is constantly monitoring the most
`recent events in the event database (see Figure 7). For
`each user the detection component derives an up-to-
`date context description based on the most reasonable
`situation estimation. The results of the automatic
`detection of situation features can be shown to the user
`in a prominent place on the PDA, e.g. as information
`item on an iPAQ’s “Today” screen (Figure 8). The
`user may click on the information item to input further
`information whenever he finds that his context has
`been incorrectly guessed and a revision is relevant and
`necessary. In this way, the user is providing the system
`with new, labeled data, which can be used in a further
`learning round
`to further
`improve
`the situation
`detection.
`
`Figure 8: User context information on
`iPAQ’s Today screen (see last item)
`
`On the basis of the information generated by the
`context processing, the envisaged application then is to
`facilitate IFFIs. A user will create a request for an
`IFFI, or schedule its creation. The IFFI request may
`include the specification of one or more people and/or
`
`Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications (PERCOM’04)
`0-7695-2090-1/04 $ 20.00 © 2004 IEEE
`
`e.Digital Corporation
`Exhibit 2018 - Page 8
`
`

`
`of a topic, and possibly a deadline. The application
`will inform the user about what information is
`disclosed to other users, about the system guesses for
`location, activity, and availability, and about the IFFIs
`that are pending on the user. He also will be provided
`with peripheral awareness of the dynamics of the
`system such as the “birth/life/death" of opportunities
`and IFFIs. Furthermore, the system will provide a do-
`not-disturb mode. The agreement phase is optional,
`taking into account the cost and effort associated with
`an IFFI. Otherwise, also buddies’ lists could be used.
`The system will suggest appropriate places by using
`profile information, and signal an immediate warning
`when a scheduled IFFI is rendered impossible.
`
`6. Comparison to other work on contextual
`computing
`
`Currently, there is a considerable interest in instant
`messaging systems, since they allow for quick and
`informal communications e.g. in the workplace; or
`elsewhere, if they are running on a mobile and
`connected devices. If
`these applications
`include
`context-sensitive features, they could be compared to
`the application we are developing, but in a distant
`communication scenario. ICQ is a well-known instant
`messaging system, which has a simple context sensor
`that automatically toggles the user status depending to
`his activity on the PC. This is in a way comparable to
`the PC activity sensor we are using
`in our
`infrastructure. Hubbub [8] is another system that
`provides an instant messaging system augmented with
`instant sound messages for mobile, networked devices.
`However, facilitation of face-to-face interactions has
`not been studied. In contrast, Proxy Lady [4] allows
`for the user to declare from the desktop PC the need to
`discuss an email with someone else. The PDA will
`then monitor the proximity of the other person and
`alert its user if they are close. However, this system
`only takes location into account, and does not include a
`richer model that is based on a variety of sensor
`information. In contrast to these systems that facilitate
`interactions, awareness systems simply provide visual
`information to their users and let them decide about
`using this information. Recently, applications for
`mobile users have been developed, e.g. Awarenex
`[13].
`None of the systems mentioned so far, however, use
`machine-learning techniques to adapt the systems to
`different settings and users. However, the Microsoft
`Coordinate project [7] learns probabilistic models of
`peoples’ meeting attendance and behavior based on
`information from PC use, organizational relationships,
`
`time of day, and meeting attendance. It uses these
`models to decide whether messages are urgent and the
`best way to route them to the user; and how long it will
`be before the user returns to their office if he/she is
`away. However, this work relies on the provision of a
`labeled set of training data for a user. In addition the
`user is largely invisible to the system except when they
`are at their PC working. In our approach we are
`interested in covering a user’s activity including
`situations in which people are out of their office,
`developing a more comprehensive
`tracking and
`analysis system. The Coordinate project focuses on
`predicting a user’s presence at his work place (but not
`his
`availability),
`and
`at predicting
`a user’s
`interruptibility when being in a meeting. In contrast to
`prediction, we are focusing on using a variety of easily
`available sensors
`for providing a
`rich context
`description of a user’s current situation, including his
`activities and availability in all places. In addition, our
`approach is combining sensor information from several
`user, e.g. by using individual location information to
`derive co-location data.
`In addition to Bayesian learning, other probabilistic
`methods have been used to learn and detect human
`activity. As a prominent example, an approach based
`on hierarchical hidden Markov models has been
`developed
`to
`learn
`the hierarchical structure of
`sequences of human actions [11]. The overall goal of
`this project is the extension of the functional capability
`of the elderly.
`A group at Carnegie Mellon University is working
`on a technology [6] that uses cameras and microphones
`to detect when a person is busy. This currently relies
`on users being monitored over a period of time and
`manually indicating when they are busy so that the
`system can learn the important signs indicating that
`someone is busy. Although this is an important part of
`using ubiquitous computing to facilitate interaction it
`does not go far enough – we aim to detect both
`activities and whether the user is currently busy or not.
`
`7. Summary and further work
`
`We have presented an infrastructure for capturing
`contextual informatio

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket