Abstract:
Techniques of category-based fence are described. A category-based fence can correspond to a group of signal sources instead of a point location fixed to latitude and longitude coordinates. The group of signal sources can represent a category of entities, e.g., a particular business chain. The signal sources can be distributed to multiple discrete locations. A category-based fence associated with the group, accordingly, can correspond to multiple locations instead of a single point location and a radius. Each signal source in the group can be associated with a category identifier unique to the group and uniform among signal sources in the group. The category identifier can be programmed into each signal source. A mobile device can enter the category-based fence by entering any of the discrete locations when the mobile device detects the signal identifier. The mobile device can then execute an application program associated with the category-based fence.
Abstract:
Surveying techniques for generating location fingerprint data are described. A mobile device can survey a venue by measuring, at multiple locations at the venue, signals from one or more signal sources. At each location, the mobile device can take multiple measurements of signals. The mobile device can take each measurement at a distinct orientation. The measurements can be used to determine expected measurements of the signals at the venue. Differences between the multiple measurements of signals can be used to determine a variance of the expected measurements. The expected measurements and variance can be designated as location fingerprint data for the venue. The location fingerprint data can be used by mobile devices for determining a location at the venue.
Abstract:
Techniques of non-intrusive region notification are described. A mobile device can be programmed to trigger an application program when the mobile device enters or exits a region. The region can be defined by various virtual fencing technologies. If, at the time of entry or exit of a region, the mobile device is in a power-saving operating mode, the mobile device can transition to an active operating mode temporarily, register a fence-crossing event (entry or exit of the region) with the application program, and then transition back to the power-saving operating mode. The mobile device can launch the registered application program in response to the mobile device receiving a user input to enter the active operating mode. The application program can provide a user interface associated with the region on a display surface of the mobile device in place of a home screen or other user interface.
Abstract:
Surveying techniques for generating location fingerprint data are described. A mobile device can survey a venue by measuring, at multiple locations at the venue, signals from one or more signal sources. At each location, the mobile device can take multiple measurements of signals. The mobile device can take each measurement at a distinct orientation. The measurements can be used to determine expected measurements of the signals at the venue. Differences between the multiple measurements of signals can be used to determine a variance of the expected measurements. The expected measurements and variance can be designated as location fingerprint data for the venue. The location fingerprint data can be used by mobile devices for determining a location at the venue.
Abstract:
A proximity fence can be a location-agnostic fence defined by signal sources having no geographic location information. The proximity fence can correspond to a group of signal sources instead of a point location fixed to latitude and longitude coordinates. A signal source can be a radio frequency (RF) transmitter broadcasting a beacon signal. The beacon signal can include a payload that includes an identifier indicating a category to which the signal source belongs, and one or more labels indicating one or more subcategories to which the signal source belongs. The proximity fence defined by the group of signal sources can trigger different functions of application programs associated with the proximity fence on a mobile device, when the mobile device moves within the proximity fence and enters and exits different parts of the proximity fence corresponding to the different subcategories.
Abstract:
Surveying techniques for generating location fingerprint data are described. A mobile device can survey a venue by measuring, at multiple locations at the venue, signals from one or more signal sources. At each location, the mobile device can take multiple measurements of signals. The mobile device can take each measurement at a distinct orientation. The measurements can be used to determine expected measurements of the signals at the venue. Differences between the multiple measurements of signals can be used to determine a variance of the expected measurements. The expected measurements and variance can be designated as location fingerprint data for the venue. The location fingerprint data can be used by mobile devices for determining a location at the venue.
Abstract:
Methods, program products, and systems for reducing a location search space are described. A mobile device, when arriving at a venue, can determine a location of the mobile device using signals from one or more signal sources associated with the venue. The mobile device can use a coarse location estimator to estimate a coarse location of the mobile device at the venue. The mobile device can request, from a server, detailed location data associated with the coarse location. The detailed location data can include location fingerprint data associated with a portion of the venue that includes the coarse location. The mobile device can determine an estimated location that has finer granularity than the coarse location using the location fingerprint data.
Abstract:
A processor-based personal electronic device (such as a smartphone) is programmed to automatically respond to data sent by various sensors from which the user's activity may be inferred. One or more alarms on the device may be temporarily disabled when sensor data indicates that the user is asleep. One or more of the sensors may be worn by the user and remote from the device. A wireless communication link may be used by the device to obtain remote sensor data. Data from on-board sensors in the device—such as motion sensors, location sensors, ambient light sensors, and the like—may also be used to deduce the user's current activity. User data (such as calendar entries) may also be used to determine likely user activity and set alarms accordingly. Biometric data from a second, nearby person may also be used to automatically select certain alarm modes on a first person's device.
Abstract:
A mobile device can be in multiple states of location determination. In each state, the mobile device can use a distinct subsystem to determine a location. A state machine of the mobile device can manage the states, including determining which state the mobile device is in and whether a transition between the states has occurred. A transition can be triggered by a sensor of the mobile device and confirmed by another sensor of the mobile device. When the state machine detects a transition, the mobile device can switch location determination from one subsystem to another subsystem, and change a map user interface to one that is best suited for the new subsystem.
Abstract:
Systems, methods and computer program products are disclosed for machine learning to determine preferential device behavior. In some implementations, a server receives inputs, including attributes from a client device, crowd-sourced data from a number of other devices and a priori knowledge. The server includes a concept engine that applies machine-learning process to the inputs. The output of the machine learning process is transported to the client device. At the client device, a client engine associates attributes observed at the device to the machine learning output to determine a user profile. Applications may access the user profile to determine preferential device behavior, such as provide targeted information to the user or take action on the device that is personalized to the user of the device.