DE112012002346T5 - Monitoring a geofence output - Google Patents

Monitoring a geofence output

Info

Publication number
DE112012002346T5
DE112012002346T5 DE201211002346 DE112012002346T DE112012002346T5 DE 112012002346 T5 DE112012002346 T5 DE 112012002346T5 DE 201211002346 DE201211002346 DE 201211002346 DE 112012002346 T DE112012002346 T DE 112012002346T DE 112012002346 T5 DE112012002346 T5 DE 112012002346T5
Authority
DE
Germany
Prior art keywords
geofence
mobile device
wireless access
output
access points
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE201211002346
Other languages
German (de)
Inventor
Yefim Grosman
Morgan Grainger
Ronald Keryuan Huang
Lukas M. Marti
Robert Mayor
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to USUS-13/152,972 priority Critical
Priority to US13/152,972 priority patent/US8626187B2/en
Application filed by Apple Inc filed Critical Apple Inc
Priority to PCT/US2012/038004 priority patent/WO2012166356A1/en
Publication of DE112012002346T5 publication Critical patent/DE112012002346T5/en
Application status is Withdrawn legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers; Analogous equipment at exchanges
    • H04M1/72Substation extension arrangements; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selecting
    • H04M1/725Cordless telephones
    • H04M1/72519Portable communication terminals with improved user interface to control a main telephone operation mode or to indicate the communication status
    • H04M1/72563Portable communication terminals with improved user interface to control a main telephone operation mode or to indicate the communication status with means for adapting by the user the functionality or the communication capability of the terminal under specific circumstances
    • H04M1/72572Portable communication terminals with improved user interface to control a main telephone operation mode or to indicate the communication status with means for adapting by the user the functionality or the communication capability of the terminal under specific circumstances according to a geographic location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/06Details of telephonic subscriber devices including a wireless LAN interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/10Details of telephonic subscriber devices including a GPS signal receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information

Abstract

Methods, program products, and systems for monitoring geofence outputs using wireless access points are disclosed. In general, in one aspect, a mobile device may detect one or more ingress gateways that are wireless access points that have been selected to monitor a geofence. The mobile device may determine that the mobile device is in the geofence based on the detection. The mobile device may monitor the ingress gateways and one or more outbound gateways, which may be wireless access points that are monitorable by the mobile device when the mobile device is in the geofence. If the mobile device determines after a number of scans using a wireless processor that the ingress gateways and the outbound gateways are not monitorable, the mobile device may use an application processor to determine if the mobile device has left the geofence ,

Description

  • TECHNICAL AREA
  • The invention relates generally to location-based processing on a mobile device.
  • BACKGROUND
  • A modern mobile device can integrate functions of a computer, a cellular transceiver, and a wireless (eg, WiFiTM) transceiver. For example, the mobile device may support traditional computer functions such as: For example, executing application programs, storing various data, and displaying digital images. These functions may be performed in an application subsystem of the mobile device. The application subsystem may include an application processor, an application operating system, and various input / output devices. Using the cellular transceiver, the mobile device may function as a mobile phone. Using the wireless transceiver, the mobile device may access a communication network through one or more wireless access points (WAPs).
  • Some of the functions performed by a mobile device may be geofence based functions. A geofence can include a virtual boundary of a real geographic area. The mobile device may be programmed to perform a task when the mobile device is within a geofence. The mobile device may determine whether the mobile device is within a geo-fence by comparing a location of the mobile device with the coordinates of the geographic area. A conventional mobile device may determine the current location using the functions of cell tower triangulation or Global Positioning System (GPS). The mobile device application processor may perform the triangulation or the GPS calculations.
  • SUMMARY
  • Methods, program products, and systems for monitoring a geofence using wireless access points are disclosed. In general, in one aspect, a mobile device receives data defining the geofence. The mobile device may select one or more wireless access points from multiple wireless access points to monitor the geofence. The selected wireless access points may be monitored by a wireless processor of the mobile device. The wireless processor may detect a potential input of the geofence when at least one of the selected one or more wireless access points is detected. After detecting the potential input of the geofence by the wireless processor, the mobile device may wake an application processor of the mobile device to determine if the mobile device is within the geofence.
  • In another aspect, a mobile device may detect one or more ingress gateways that are wireless access points selected to monitor a geofence. The mobile device may determine that the mobile device is in the geofence based on the detection. The mobile device may monitor the ingress gateways and one or more outbound gateways, which may be wireless access points that are monitorable by the mobile device when the mobile device is in the geofence. If the mobile device determines after a number of scans using a wireless processor that the ingress and egress gateways are not monitorable, the mobile device may use an application processor to determine if the mobile device has left the geofence.
  • In another aspect, a mobile device may monitor multiple geofences simultaneously. The mobile device may create a temporary geofence based on a current location of the mobile device. The mobile device may determine one or more wireless access points that are monitorable by each of the multiple geofences as shared gateways for monitoring the temporary geofence. If, after a number of scans using a wireless processor, the mobile device determines that the common gateways are not monitorable, the mobile device may wake an application processor to determine whether the mobile device has left each of the multiple geofences.
  • In another aspect, a mobile device may receive data defining a geofence. The mobile device may select one or more wireless access points to monitor the geofence from multiple wireless access points. The selected wireless access points may be monitored by a wireless processor of the mobile device. The wireless processor may detect a potential output of the geofence if none of the selected one or more wireless access points is detected by the wireless processor for a threshold number of consecutive scans. After detecting the potential output of the geofence by the wireless processor, the mobile device may wake an application processor of the mobile device to determine if the mobile device has left the geofence.
  • In another aspect, the mobile device may select one or more wireless access points to monitor a geofence from multiple wireless access points. Selecting the one or more wireless access points may include determining a plurality of geographic regions corresponding to the geofence. The mobile device may select the one or more wireless access points based on a maximum total number of wireless access points to be selected and an access point tolerance for each of the geographic regions. The access point tolerance may indicate a maximum number of wireless access points to be selected for the geographic region. The mobile device may detect a potential entrance or exit of the geofence by monitoring the selected one or more wireless access points using a wireless processor. After detecting the potential input or output of the geofence by the wireless processor, the mobile device may wake an application processor of the mobile device to determine whether the mobile device is inside or outside the geofence.
  • The techniques described in this specification can be implemented to achieve the following advantages. The battery power can be conserved. Geofence monitoring may require constant or frequent site identification. Site identification is typically performed by an application processor. A mobile device implementing the described technology can monitor a geofence using a wireless processor (eg, a WiFi chip), which often consumes less power than the application processor. The application processor may be placed in an inactive mode and woken up when a location of the mobile device has changed with respect to the geofence. Thus, the constant or frequent location identification operations can be performed most of the time by a less energy hungry component.
  • A relative position between a mobile device and a geofence can be detected by monitoring wireless access points using a wireless processor with limited scan capacity without loss of accuracy. A geofence can be associated with more wireless access points than the wireless processor can monitor. A mobile device may select a number of statistically more important wireless access points for scanning using techniques described in this specification. Thus, the mobile device can monitor the geofence or multiple geofences simultaneously while limiting the capacity of the wireless processor.
  • The details of one or more implementations of the subject matter of this specification are set forth in the accompanying drawings and the description below. Other features, aspects and advantages of the subject matter will be apparent from the description, drawings and claims.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • 1A to 1C FIGs. are diagrams illustrating exemplary techniques of monitoring a geofence.
  • 2 FIG. 10 is a block diagram illustrating example components of a system implementing techniques for monitoring a geofence using wireless access points.
  • 3A and 3B FIGs. are diagrams illustrating exemplary error prevention techniques in monitoring a geofence.
  • 4A to 4D FIG. 10 are flowcharts illustrating exemplary operations of monitoring a geofence.
  • 5 FIG. 10 is a diagram illustrating an example user interface of a mobile device using a geofence-based service. FIG.
  • 6 FIG. 10 is a flowchart illustrating an example method for selecting wireless access points to monitor a geofence.
  • 7 Figure 13 is a diagram illustrating example techniques for selecting wireless access points for monitoring using a geographic raster.
  • 8A and 8B FIG. 15 are diagrams illustrating exemplary tolerances of wireless access points used in identifying wireless access point candidates for selection.
  • 9A and 9B FIG. 10 are diagrams illustrating exemplary stages of assigning the tolerances of wireless access points to a geographic grid.
  • 9C FIG. 10 is a flow chart illustrating an example method for identifying wireless access point candidates based on geographic regions. FIG.
  • 9D FIG. 10 is an exemplary histogram illustrating techniques for identifying wireless access point candidates based on channel optimization.
  • 10 FIG. 12 is a diagram illustrating exemplary techniques for evaluating a set of wireless access point candidates.
  • 11 FIG. 10 is a diagram illustrating example techniques for selecting wireless access points to monitor a geofence from sets of wireless access point candidates.
  • 12 FIG. 14 is a diagram illustrating example techniques for selecting wireless access points for multiple geofences from sets of wireless access point candidates.
  • 13A FIG. 10 is a flowchart illustrating example operations for selecting wireless access points to monitor multiple geofences. FIG.
  • 13B shows an exemplary application of the operations of 13A ,
  • 14 FIG. 10 is a block diagram illustrating exemplary components of a system that implements wireless access point selection techniques for monitoring a geofence.
  • 15 FIG. 10 is a flowchart illustrating exemplary wireless access point selection operations.
  • 16 FIG. 4 is a block diagram illustrating an exemplary device architecture of a mobile device that implements the features and operations described with respect to FIG 1 - 15 have been described.
  • 17 FIG. 10 is a block diagram of an example network operating environment for the mobile devices of FIG 1 - 16 ,
  • In the various drawings, like reference numerals indicate like elements.
  • DETAILED DESCRIPTION
  • Exemplary detection of a geofence
  • 1A and 1B Figures 10 are diagrams illustrating exemplary techniques for detecting a geofence. Detecting a geofence may include detecting whether a mobile device is inside or outside a geofence. 1A FIG. 12 is a diagram illustrating exemplary techniques for detecting entry into a geofence by the mobile device 100 illustrated.
  • The mobile device 100 may be an exemplary mobile device implementing the techniques of detecting a geofence. The mobile device 100 can be an application subsystem 102 comprising an application processor, a wireless communication subsystem 104 comprising a wireless processor and a baseband subsystem comprising a baseband processor.
  • The mobile device 100 can be configured to be a potential entrance to a geofence 110 sending a wireless communication subsystem 104 to detect. The geofence 110 may include a fence location (eg, a midpoint of the fence) and a fence dimension (eg, a radius if the fence is a circle). The fence location may include latitude and longitude coordinates. The geofence 110 can be associated with a unit (eg a company, a school or a home).
  • To the potential entrance into the geofence 110 to detect the mobile device 100 select one or more wireless access points for monitoring. The one or more wireless access points may be selected from wireless access points that have been determined to be detectable by a mobile device when a mobile device is in the geofence 110 located. The selected one wireless access point or selected multiple wireless access points are in 1A and other figures shown as black triangles. The selected one wireless access point or the selected multiple wireless access points may have a wireless access point 112 include. Not all wireless access points detectable by a mobile device need to monitor the geofence 110 be selected when a mobile device in a geofence 110 located. For example, a wireless access point 114 be such a wireless access point, not by the mobile device 100 is selected. In 1A and in other figures, the wireless access points that are (a) by the mobile device 100 are detectable when the mobile device 100 in a geofence 110 and (b) not through the mobile device 100 to be selected for monitoring are displayed as white triangles. The selection is made by a virtual geographic grid 116 allows. The virtual geographic grid 116 is a geographic area that is the geofence 110 corresponds to that by the mobile device 100 to determine which wireless access point to select. Further details on selecting wireless access points will be described below with reference to FIGS 6 - 15 described.
  • The mobile device can be an entrance to a geofence 110 by scanning signals from the selected one wireless access point or from the selected plurality of wireless access points using a wireless communication subsystem 104 monitor. The wireless communication subsystem 104 Can be a wireless processor and fence detection instructions 108 include. Running Fence Detection Instructions 108 may cause the wireless processor to scan one or more communication channels to detect signals from wireless access points and device identifiers of the wireless access points. The device identifier of a wireless access point may be e.g. For example, a media access control (MAC) address of the wireless access point. If the scan detects a device identifier and the device identifier corresponds to a device identifier of one of the selected wireless access points, a potential fence input may be detected. The mobile device 100 can scan signals continuously or frequently without draining a battery when the wireless communications subsystem 104 consumes a small amount of energy with each scan.
  • In this example, detected ( 111 ) the wireless communication subsystem 104 the mobile device 100 a signal associated with a device identifier that is the wireless access point 112 equivalent. Accordingly, the wireless communication subsystem detects 104 a potential entrance into the geofence 110 , Upon detecting the potential input, the wireless communication subsystem 104 the application subsystem 102 activate. Activating the application subsystem s 102 For example, waking the application subsystem s 102 from a "sleep" state. An inactive application subsystem 102 is in 1A and shown in other figures as an unshaded block. An activated application subsystem 102 is in 1A and shown in other figures as a shaded block.
  • The application subsystem 102 can be an application processor and geofence instructions 106 include. The application subsystem 102 may be configured after being activated by the wireless communication subsystem 104 Geofence instructions 106 to determine if the mobile device 100 into the geofence 110 occurred. Geofence instructions 106 can be location Determine determination instructions and location comparison instructions. The location determination instructions may execute the application subsystem after execution 102 prompt a current location of the mobile device 100 using various location-determining devices or programs. Determining a current location of the mobile device 100 can perform operations through the wireless communication subsystem 104 include or not. After being run, the site comparison instructions may be the application subsystem 102 induce the current location with the geofence 110 to compare ( 117 ).
  • If the application subsystem 102 determines that the current location within the geofence 110 is (eg at the location 118 ), the application subsystem 102 determine that the mobile device 100 into the geofence 110 occurred, and perform a task with the entrance to the geofence 110 is associated. The task may include, for example, displaying or sounding an alarm, displaying an ad, or activating a security measure.
  • If the application subsystem 102 determines that the current location is not within the geofence 110 is, the application subsystem 102 determine that the mobile device 100 not in the geofence 110 occurred, and that the potential input coming through the wireless communication subsystem 104 was detected, can be a mistake. The application subsystem 102 can error-avoidance operations regarding the wireless access point 112 (for example, recording in blacklists on the wireless access point 112 ). Further details of the error correction operations are discussed below 3A and 3B described.
  • After determining the current location of the mobile device 100 and determining that entry into the geofence 110 occurred or did not occur, the application subsystem 102 stopping the monitoring of the current location and allowing the wireless communication subsystem to scan to determine a potential entry into another geofence or to determine a potential exit from the geofence 110 continue. Thus, the application subsystem 102 disabled (for example, put in the "sleep" mode), while the wireless subsystem monitoring the geofence 110 continues.
  • 1B FIG. 12 is a diagram illustrating exemplary techniques for detecting output from a geofence. FIG. The mobile device 100 may be a device using the in relation to the 1A The techniques described have determined that they are in the geofence 110 located. The application subsystem 102 the mobile device 100 may be in a deactivated mode (eg, a "sleep" mode).
  • After detecting that the mobile device 100 into the geofence 110 has occurred, can fence detection instructions 108 a wireless processor of the wireless communication subsystem 104 to scan wireless access points to detect a potential output. The wireless processor may provide communication channels for signals from (a) that are based on the grid 116 selected wireless access points and (b) wireless access points that are not selected but by the mobile device 100 are detectable when the mobile device 100 in the geofence 110 is (for example, a wireless access point 114 ), to scan. If the wireless processor does not detect a signal from one of the wireless access points of (a) and (b) in N consecutive scans ( 113 ), the wireless communication subsystem 104 determine that a potential output of the geofence 110 occured. The number N may be a scan threshold.
  • After detecting the potential output, the wireless communication subsystem 104 the application subsystem 102 activated. The application subsystem 102 then can a current location of the mobile device 100 (eg location 120 ) and determine the current location with the geofence 110 to compare ( 117 ). If the application subsystem 102 based on the comparison determines that the current location outside the geofence 110 is, the application subsystem 102 determine that the mobile device 100 from the geofence 110 has leaked. The wireless communication subsystem 104 can then use the wireless access points based on the grid 116 have been selected, scan and determine if there is another potential entrance into the geofence 110 gives. In some implementations, the mobile device may 100 Monitor multiple wireless access points to monitor multiple geofences.
  • 1C Figure 12 is a diagram illustrating exemplary techniques for detecting output from a geofence when monitoring multiple geofences. The mobile device 100 can a device that is using the with respect to 1A and 1B The techniques described have determined that they are in geofence 110 located. The application subsystem 102 the mobile device 100 may be in a deactivated mode (eg, a "sleep" mode).
  • In addition to the geofence 110 can the mobile device 100 in geofences 144 and 146 are located. The geofences 144 and 146 can be geofences dealing with the geofence 110 overlap. Each of the geofences 110 . 144 and 146 may correspond to a set of wireless access points for monitoring the particular geofence. The mobile device 100 may move in such a way that the mobile device enters a geofence (e.g., Geofence 110 ) enters or exits, while in the other geofences (eg Geofences 144 and 146 ) remains. For example, the mobile device may 100 from the location 148 (which within each of the geofences 110 . 144 and 146 is) to the location 150 (which within each of the geofences 144 and 146 but outside the geofence 110 is) move.
  • The mobile device 100 can the geofences 110 . 144 and 146 by creating a temporary geofence 152 monitor. The mobile device 100 can the temporary geofence 152 based on a current location of the mobile device 100 generate when the mobile device is in multiple geofences. For example, if an application processor of the mobile device 100 determines that the mobile device 100 in the geofence 110 and in the geofence 144 is, the mobile device can 100 create a first temporary geofence. If the application processor determines that the mobile device 100 while living in Goefences 110 and 144 then into the geofence 146 has occurred, the mobile device 100 a temporary geofence 152 produce. The mobile device 100 can change the current location (eg location 148 ) as a location of the temporary geofence 152 determine. The mobile device 100 can be a specific dimension (for example, 100 meters) as a dimension (such as a radius) of the temporary geofence 152 determine.
  • The mobile device 100 can have one or more output gateways to monitor the temporary geofence 152 determine. The output gateways can be selected from wireless access points located within the temporary geofence 152 or otherwise related to the temporary geofence 152 Respectively. The outbound gateways can be wireless access points provided by Geofences 110 . 142 and 146 are monitorable, in which the mobile device 100 located. The output gateways can be a wireless access point 154 previously included by the mobile device 100 was selected to at least one of the geofences 110 . 142 or 146 to monitor. The output gateways can be a wireless access point 156 but not previously selected to monitor a geofence, but by the mobile device 100 is monitorable when the mobile device 100 at the location 148 located.
  • On creating the temporary geofence 152 and determining the output gateways (e.g., wireless access points 154 and 156 ) can use the fence detection instructions 108 a wireless processor of the wireless communication subsystem 104 cause the output gateways to be scanned to detect a potential output. The wireless processor can scan communication channels for signals from the output gateways ( 158 and 160 ). If the wireless processor does not detect a signal from one of the output gateways in N consecutive scans, the wireless communication subsystem 104 determine that a potential output of the temporary geofence 152 occured. The number N may be a scan threshold.
  • After detecting the potential output from the temporary geofence 152 can the wireless communication subsystem 104 an application subsystem 102 activate. The application subsystem 102 then can a new location 150 the mobile device 100 determine and the new location 150 with each of the geofences 110 . 144 and 146 to compare. If the application subsystem 102 based on the comparison determines that the new location 150 outside the geofence 110 , but still in geofences 144 and 146 is, the application subsystem 102 determine that the mobile device 100 the geofence 110 has left. The mobile device 100 can then create a new temporary geofence and a new set of outbound gateways to monitor the new temporary geofence, and thus to monitor the geofence 144 and 146 associate. The mobile device 100 can monitor wireless access gateways connected to the geofence 110 to re-enter the geofence 110 are associated.
  • Exemplary Fence Detection System
  • 2 FIG. 10 is a block diagram illustrating example components of a system for implementing techniques for monitoring a geofence using wireless access points. FIG. The system can work on the mobile device 100 as above regarding the 1A and 1B described, implemented.
  • The mobile device 100 can be an application subsystem 102 include. The application subsystem 102 may include software and hardware components configured to perform geofence detection operations. The application subsystem 102 can be a geofence definition unit 202 include. The geofence definition unit 202 is a component of the application subsystem s 102 configured to receive geofence defining data. The geofence definition unit 202 The data defining the geofence may be from a user interface (eg, a touch-sensitive screen), from a remote server, or from an application program running on the mobile device 100 is being executed.
  • The through the geofence definition unit 202 received data can be received by the geofence processing unit 204 are processed. The geofence processing unit 204 may be a component of the application subsystem configured to perform operations related to the detection of geofence. The geofence processing unit 204 can geofence instructions 106 and a geofence interface 206 include. The geofence interface 206 can be a component of the geofence processing unit 204 configured to interface between a system component (eg, the geofence definition unit 202 ) and geofence instructions 106 to be.
  • The geofence instructions 106 may contain instructions after running the application processor 208 cause to perform various operations. The operations may include access point selection operations and location determination operations. When the access point selection operations are performed, the application processor may 208 based on the geofence defining data provided by the geofence definition unit 202 received one or more wireless access points from a data store 230 choose. The data store 230 is a component of the application subsystem s 102 configured to store a list of wireless access point identifiers and related information. The data store 230 stored data can be received from a remote server.
  • The geofence processing unit 204 can connect the selected wireless access points to the wireless communication subsystem 104 to monitor. The wireless communication subsystem 104 can be an interface 212 which is configured to send information to an application subsystem 102 to send or receive information from an application subsystem 102 to recieve. The wireless communication subsystem 104 can be a data store 216 include. The data store 216 is a component of the wireless communication subsystem 104 configured to store a list of wireless access points provided by the application subsystem 102 were received. The wireless communication subsystem 104 can a wireless transceiver 220 include. The fence detection instructions 108 can run the wireless transceiver when running 220 cause to scan for wireless signals.
  • In addition to a list of selected wireless access points, the geofence processing unit may 204 Operating mode instructions to the wireless communication subsystem 104 send. The operating modes may include an input detection mode and an output detection mode. If the wireless communication subsystem 104 operating in the input detection mode, the wireless communication subsystem 104 an activation signal to the application subsystem 102 to detect an input when the wireless transceiver 220 detects a signal from a wireless access point that is one of the ones in the data memory 216 stored wireless access points. If the wireless communication subsystem 104 operating in an exit detection mode, the wireless communication subsystem 104 Count a number of consecutive scans in which the wireless transceiver 220 none of the wireless access points detected in the data memory 216 stored wireless access points. The wireless communication subsystem 104 can then send an activation signal to the application subsystem 102 to detect an output.
  • The wireless communication subsystem 104 can simultaneously monitor multiple geofences, including monitoring the wireless access points for each of the geofences. The wireless communication subsystem 104 can work in one input detection mode for one geofence and one output detection mode for another geofence. Some or all components of the wireless communication subsystem 104 can be implemented on a wireless processor (eg, a WiFi chip).
  • Exemplary error prevention
  • 3A and 3B are diagrams that illustrate error prevention when monitoring a geofence. A false positive may occur with respect to a potential geofence input or output. A false positive occurs when a wireless processor detects a potential input from a geofence, but the input does not occur. Error avoidance techniques can be used to avoid a future false positive result based on a known false positive result.
  • 3A illustrates an exemplary geofence 110 and a fault tolerance zone 302 , Some of the potential inputs of the mobile device 100 into the geofence 110 (as above regarding the 1A - 1C and 2 described) can be detected when the mobile device 100 not in the geofence 110 occurred. To reduce the false positive results, the fault tolerance zone 302 be generated.
  • The exemplary geofence 110 is a circular geofence with a center and a radius. The wireless communication subsystem 104 the mobile device 100 can receive a signal from a wireless access point 304 detect that to monitor the geofence 110 is determined. The application subsystem may then determine that the mobile device 100 in one location 314 located. If the location 314 outside the fault tolerance zone 302 is, the mobile device can 100 determine that the wireless access point 304 unreliable to monitor the geofence 110 is. The mobile device 100 can the wireless access point 304 Add to the black list accordingly. In some implementations, recording the wireless access point may be 304 blacklist the exclusion of the wireless access point 304 from future monitoring. In some embodiments, capturing the wireless access point may 304 in the blacklist reducing the probability that the wireless access point 304 to monitor the geofence 110 is selected. The mobile device 100 for example, the wireless access point 304 assign a score that is a weight of the wireless access point 304 reduced in the device selection operations.
  • The fault tolerance zone 302 can be defined using an error tolerance value. The fault tolerance value may be a threshold distance from an edge of the geofence 110 include. If the distance between the location 314 and the center of the geofence 110 is greater than a sum of the radius of the geofence 110 and the threshold distance, the mobile device may 100 thus, determine that the wireless access point 304 to monitor the geofence 110 unreliable.
  • 3B illustrates an exemplary geofence 318 and a fault tolerance zone 320 , A geofence can be of any shape and size. For example, the geofence 318 an ellipse defined using a midpoint and a width and a height, or a polygon defined using vertices of the polygon. The fault tolerance zone 320 can be defined using a threshold distance from each edge of the ellipse or polygon.
  • Exemplary fence detection procedure
  • 4A and 4B FIG. 10 are flowcharts illustrating exemplary operations of monitoring a geofence. 4A FIG. 10 is a flowchart illustrating exemplary operations. FIG 400 to monitor a geofence. The operations can be done by the mobile device 100 as described above with reference to the previous figures.
  • The mobile device 100 can receive data defining geofence ( 402 ). The geofence defining data may include a fence location and a fence dimension. The fence location may include latitude, longitude, and altitude coordinates. The fence location can be Be the center of geofence. The fence dimension can be a radius. The data can be received by a user.
  • The mobile device 100 can identify one or more wireless access points to monitor the geofence ( 404 ). Identifying the one or more wireless access points may include selecting the one or more wireless access points from a plurality of geofences. The selection operations are described in more detail below 6 - 15 to be discribed.
  • The mobile device 100 may be a preliminary location of the mobile device 100 determine in terms of geofence ( 406 ). A location of the mobile device 100 in terms of geofence may include a location within the geofence or a location outside the geofence. The mobile device 100 may use a mobile device wireless processor to determine the tentative location of the mobile device with respect to the geofence. To determine the tentative location, the mobile device may 100 monitor the one or more identified access points. Monitoring the access points may include scanning a signal from the one or more identified wireless access points on one or more channels. Detecting at least one of the one or more identified wireless access points may include receiving a signal associated with a wireless access point address of the media access control (MAC), the MAC address of the wireless access point having MAC address of a list of MAC addresses associated with the one or more identified wireless access points. The wireless processor may include a wireless chip that consumes less power than the application processor.
  • Determining the tentative location of the mobile device with respect to the geofence may include detecting a potential input to the geofence or detecting a potential output from the geofence. In the case of a potential input, determining the transient location of the mobile device with respect to the geofence may include detecting a potential input of the geofence when at least one of the one or more identified wireless access points is detected by the wireless processor. In the case of a potential output, determining the tentative location of the mobile device with respect to the geofence may include detecting a potential output from the geofence if, in a threshold number of consecutive scans, none of the one or more identified wireless access points and none of the one in the geofence Geofence detectable wireless access points is detected.
  • After determining the tentative location of the mobile device with respect to the geofence by the wireless processor, the mobile device may 100 an application processor of the mobile device 100 wake up. The awakening of the application processor of the mobile device 100 may be changing the application processor of the mobile device 100 from an inactive status (eg, a power-saving status) to an active status. The mobile device 100 can use the application processor to determine ( 408 ), whether the mobile device 100 within the geofence is. Determining whether the mobile device 100 Within the geofence, enabling the application processor may include the mobile device to a current location of the mobile device 100 determine and determine if the current location is within the geofence. If the application processor of the mobile device 100 based on the current location determines that an entrance has occurred, the mobile device 100 continue to determine a potential output using the wireless processor.
  • If the application processor of the mobile device 100 determines that the mobile device 100 within the geofence, the application processor can perform a task related to the geofence. The application processor may set the operating mode of the wireless processor to an output detection mode. When the wireless processor has tentatively determined that the mobile device is 100 within the geofence, the mobile device application processor 100 however, it determines that the mobile device 100 Outside the geofence and at least one threshold away from the geofence, the application processor can perform error avoidance operations. After the wireless processor has provisionally determined that the mobile device is 100 located within the geofence, the mobile device can 100 z. B. using the application processor determine that the mobile device 100 located at a distance from the geofence. The application processor may determine that the distance exceeds an error threshold. The mobile device 100 may then determine a detected wireless access point as an unreliable wireless access point, including excluding the wireless Access point from later monitoring or reducing an access point score associated with the wireless access point.
  • After exiting a geofence, the mobile device may place the wireless processor in an input detection mode.
  • 4B FIG. 10 is a flowchart illustrating exemplary operations. FIG 420 to monitor a geofence output. The operations can be done by the mobile device 100 , as described above with reference to the previous figures. The mobile device 100 can using an application processor of the mobile device 100 determine ( 422 ) that the mobile device 100 within a geofence.
  • The mobile device 100 can monitor a combined collection of wireless access points using the wireless processor ( 424 ). The combined collection of wireless access points may include (a) one or more wireless access points operating in the tier 404 as for 4A (b) comprise one or more currently visible wireless access points. Monitoring the combined collection of wireless access points may include scanning for signals from the combined collection of wireless access points using the wireless processor.
  • The mobile device 100 can determine ( 426 ) that for at least a threshold number of scans, none of the wireless access points of the combined collection of wireless access points is monitorable. The mobile device 100 then can the application processor of the mobile device 100 wake up. The mobile device 100 can determine using the application processor ( 428 ), whether the mobile device 100 left the geofence. When the application processor of the mobile device 100 that the mobile device 100 The geofence has left the mobile device 100 perform a task associated with the output from the geofence (eg, displaying or sounding an alarm).
  • 4C FIG. 10 is a flowchart illustrating exemplary operations. FIG 440 to monitor a geofence output. The operations can be done by the mobile device 100 , as described above with reference to the previous figures. The mobile device 100 can using an application processor of the mobile device 100 determine ( 442 ) that the mobile device 100 within a geofence. Determining that the mobile device 100 Within the geofence, monitoring one or more ingress gateways may be done using a wireless device of the mobile device 100 include. The one or more ingress gateways may be one or more wireless access points selected to monitor an entrance to the geofence. Determining that the mobile device 100 within the geofence, may include waking up the application processor and using the application processor to determine that the mobile device has entered the geofence after detecting by the wireless processor of at least one of the one or more ingress gateways. The application processor may be a location of the mobile device 100 using various location-determining devices or programs.
  • The mobile device 100 can determine one or more output gateways ( 444 ). The outbound gateway may include one or more wireless access points that are monitorable when the mobile device 100 located in the geofence. The mobile device 100 can use the output gateways to monitor an output from the geofence.
  • The mobile device 100 may determine an output from the geofence based at least in part on the monitoring of the output gateways ( 446 ). Detecting the output may include monitoring a combined collection of wireless access points that comprise the one or more ingress gateways and the one or more outbound gateways using the wireless processor. The mobile device 100 may determine that for at least a threshold number of scans by the wireless processor, none of the wireless access points of the combined collection of wireless access points is monitorable by the wireless processor. The mobile device 100 then can the application processor of the mobile device 100 to determine if the mobile device has left the geofence.
  • 4D FIG. 10 is a flowchart illustrating exemplary operations. FIG 450 for monitoring a geofence output when a mobile device is in multiple geofences. The operations can be done by the mobile device 100 , as described above with reference to the previous figures.
  • The mobile device 100 can determine that the mobile device 100 located in several geofences, z. In a first geofence and in a second geofence. The first geofence can overlap with the second geofence. After determining that the mobile device 100 Located in both geofences, the mobile device can 100 a temporary geofence around a current location of the mobile device 100 produce ( 452 ). Generating the temporary geofence may include defining the temporary geofence using a fence location and a fence dimension. The fence location may be a current location of the mobile device 100 be. The current fence location may be determined by an application processor of the mobile device 100 be determined. The fence dimension can be a fixed value (eg 100 meters). In some implementations, the fence dimension may be determined based on the sizes of the first geofence and the second geofence.
  • The mobile device 100 can identify one or more common gateways for monitoring the temporary geofence. The shared gateways may include one or more wireless access points provided by the mobile device 100 are monitorable when the mobile device 100 in the first geofence and the second geofence is.
  • The mobile device 100 can monitor an output of the temporary geofence ( 454 ). Monitoring the output of the temporary geofence may include scanning signals from the identified common gateways using a wireless processor.
  • The mobile device 100 can detect after detecting the output from the temporary geofence ( 456 ), whether the mobile device is within the first geofence, and whether the mobile device is within the second geofence. After detecting the output from the temporary geofence, the mobile device may 100 an application processor of the mobile device 100 wake up to determine if the mobile device 100 the first geofence has left, or whether the mobile device 100 left the second geofence. Detecting the output from the temporary geofence may be determining using the wireless processor of the mobile device 100 include that the common gateways are not monitorable in a threshold number of consecutive scans.
  • Exemplary user interface of a geofence detection system
  • 5 FIG. 10 is a diagram illustrating an example user interface of a mobile device using a geofence-based service. FIG. The mobile device 100 can be a mobile device 100 as described above. The mobile device 100 can allow a user a geofence 110 using the user interface. The mobile device 100 can z. A handheld computer, a personal digital assistant, a mobile phone, an electronic tablet, an appliance, a camera, a smartphone, an Enhanced General Packet Radio Service (EGPRS) mobile, a network Base station, a media player, a navigation device, an e-mail device, a game console or a combination of any two or more of these data processing devices or other data processing devices.
  • In some implementations, the mobile device may 100 a touch-sensitive screen 502 include. The mobile device 100 can a card 504 for display on the touch-sensitive screen 502 provide. The mobile device 100 can do a touch input on the card 504 receive. Based on a place of touch input on the map 504 can the mobile device 100 a geofence 110 generate when the mobile device 100 an input (eg, by a tap on a "Create Fence" button) 508 ) receives. The geofence 110 may have a location (for example, a midpoint) that is the location of the touch input on the map 504 equivalent. After generating the geofence, the mobile device may 100 one or more wireless access points from a plurality of wireless access points for monitoring the geofence 110 choose.
  • The mobile device 100 can do a job with the geofence 110 associate. For example, the mobile device 100 received a user input to an application program with the geofence 110 to associate. In the example shown, the geofence 110 a beach area correspond. The application program may be an application that collects information related to the surfing conditions in the beach area.
  • The mobile device 100 can activate the application program when the mobile device 100 the geofence 110 enters. If the mobile device 100 detected at least one of the selected wireless access points, the mobile device 100 use different location determination operations to determine that the mobile device 100 the geofence 110 has entered. After determining that the mobile device 100 the geofence 110 has entered the mobile device 100 to display an interface 510 of the application program. the interface 510 For example, textual information relating to the surfing conditions associated with the geofence and controls may be used 512 and 514 for navigating through the pages of the text information.
  • A search bar 524 and a bookmark list object 526 can be in the header area of the interface 510 are displayed. Below the bottom of the interface 510 One or more display objects can be displayed, for example a search object 528 , a directional object 530 , a map view object 532 and an object 534 the current location.
  • The search bar 524 can be used to find an address or other location on the map. For example, a user may have a residential address in the search bar 524 enter. The bookmark list object 526 can z. For example, you can display a bookmarks list that contains addresses that you frequently visit, such as B. the residential address of the user. The bookmark list can be z. B. also contain special bookmarks, z. B. noted locations of the mobile device 100 ,
  • The search object 528 can be used to search bar 524 and other map search menus. The directional object 530 For example, it may display a menu interface that allows the user to enter a start and finish location. The interface may then display information (eg, directions and travel time for a route from the start site to the final site). The map view object 532 may display a menu that allows the user to select display options for a "crowdware" application program. The object 534 of the current location can allow the user on the map 504 to see a geographic region that indicates where the mobile device is 100 currently located.
  • Exemplary Access Point Selection Techniques
  • 6 is a flowchart illustrating an exemplary method 600 to select wireless access points to monitor a geofence. The procedure 600 can through the mobile device 100 (as described above) are performed.
  • After receiving the geofence 110 (as above in relation to 1 and 5 described), the mobile device 100 determine several geographic regions ( 602 ), the geofence 110 correspond. The mobile device 100 can use wireless access points to monitor the geofence 110 select based on geographic regions. Further details for determining the geographic regions will be described below with reference to 7 described.
  • The mobile device 100 can identify wireless access point candidates for monitoring in each of the geographic regions ( 604 ). Further details for identifying wireless access point candidates for monitoring in each of the geographic regions will be described below with reference to FIG 8A - 8B and 9A - 9B described.
  • The mobile device 100 can iterate through the geographic regions and evaluate a detection probability for each region ( 606 ). The detection probability of a region may indicate a probability that a mobile device 100 if it is in the region, it can detect a wireless access point that is selected for monitoring, and thus a potential entrance into the geofence 110 can detect. The detection probability of a region may be measured using a probing point detection probability. Further details for evaluating the assay point detection likelihood will be referred to below 10 described.
  • Based on the detection probability of the regions, the mobile device 100 calculate a detection probability for the regions as a whole ( 608 ). The detection probability for the regions as a whole, a probability can indicate that the mobile device 100 a potential entrance into the geofence 110 using the set of wireless access point candidates. This probability can be measured using a value denoted as a raster detection probability. Further details of calculating and applying the raster detection probability are described below with reference to 10 ,
  • Based on the raster detection probability, the mobile device may 100 one or more wireless access points to monitor the geofence 110 or other geofences or both ( 610 ).
  • 7 FIG. 12 is a diagram illustrating exemplary techniques for selecting wireless access points for monitoring using a geographic raster. FIG. The mobile device 100 (as described above) may perform the operations of selecting the wireless access points.
  • The mobile device 100 can the geofence 110 received by a user (eg as described with reference to 10 ). After receiving the geofence 100 can the mobile device 100 determine several geographic regions to the geofence 119 correspond to. For example, the mobile device 100 a virtual geographic grid 116 generate which is the geofence 110 equivalent. The mobile device 100 can use wireless access points based on the virtual geographic grid 116 choose.
  • The geographic grid 116 may comprise N × N evenly distributed tiles. Each tile can be a substantially rectangular area. Each tile can be the same size. For example, the geographic grid 116 Cover 25 square tiles. The mobile device 100 can be the total number of tiles (N 2 ) in the grid 116 based on a scanning capacity of a wireless processor of the mobile device 100 determine. In particular, the number of tiles can be determined using the following formula: N 2 = (floor (√ MAX_EL )) 2 , (1) where N 2 is the total number of tiles, MAX_EL is a maximum number of elements that may correspond to the total number of wireless access points that a wireless processor can monitor (e.g., 150).
  • If the geofence 110a Units is wide and α units long, each tile can have a size of (a / N) 2 . The geofence 110 can be serviced by a MAX_AP number of wireless access points. In this example, this is geofence 110 a substantially circular area with a center 702 , The middle-point 702 can be associated with latitude and longitude. The geofence 110 may have a radius a / 2. In various implementations, the geographic regions may have other shapes and varying sizes. The mobile device 100 can use wireless access points to monitor the geofence 110 based on a total number of wireless access points to be scanned and a maximum number of wireless access points to be scanned in each of the geographic regions. This maximum number will be referred to as a wireless access point tolerance, as discussed in more detail below with reference to FIG 8A and 8B described.
  • Per-region restrictions when selecting wireless access points
  • 8A and 8B Figures 10 are diagrams showing example wireless access point tolerances used in selecting wireless access points. A wireless access point tolerance may be a value associated with a tile in the geographic grid 116 is associated. The value may indicate a maximum number of wireless access points located in the tile that can be selected. 8A illustrates a tolerance setting where the wireless access point tolerance is set to "1" for each tile. The tolerances are illustrated as numbers in the tiles. In this setting, at most one wireless access point can be selected in each tile. If z. B. the wireless access points 802 and 804 both in the tile 806 of the geographical grid 116 can have at most one of the wireless access points 802 and 804 to monitor a geofence. A selected wireless access point is displayed using a black triangle; an unselected using a white triangle.
  • 8B illustrates a tolerance setting where different wireless access point tolerances are associated with different tiles. In some implementations, the wireless access point tolerance for the tile becomes 806 set to three. Accordingly, both wireless access points 802 and 804 to be selected. Not all tiles are the same. Some tiles may have a larger wireless access point tolerance than others. For example, tiles that are at or near a midpoint of the geographic grid 116 have higher wireless access point tolerances than tiles located at the edge.
  • 9A and 9B Figures 10 are diagrams showing exemplary stages of assigning wireless access point tolerance to a geographic grid. Selecting wireless access points may include identifying sets of wireless access point candidates in multiple iterations. In each iteration, a set of wireless access point candidates can be identified. In each iteration, one or more wireless access points can be increased. 9A illustrates exemplary wireless access point tolerances assigned in an iteration (eg, an initial iteration). A wireless access point tolerance associated with the center tile 902 may be of a higher value than a wireless access point tolerance associated with the edge tile 904 is associated. 9B illustrates exemplary wireless access point tolerances assigned in a subsequent iteration. The wireless access point tolerances assigned in previous iterations can be increased.
  • 9C is a flowchart illustrating an example process 920 of identifying wireless access point candidates based on geographic regions. The process 920 can be performed by a mobile device, such as a mobile device 100 as described above. The geographic regions may be tiles in a geographic grid corresponding to a geofence. The mobile device 100 may add wireless access points to the geographic regions in multiple iterations and determine the wireless access points added in an iteration and their previous iterations as a set of wireless access point candidates.
  • The mobile device 100 can initialize the geographic regions ( 922 ). Initializing the geographic regions may include assigning a wireless access point tolerance to each of the geographic regions in a setting as described above with reference to FIG 9A described.
  • The mobile device 100 can arrange the unassigned wireless access points by an access point (AP) score associated with each wireless access point ( 924 ). The AP score of a wireless access point is a value that can indicate an importance of the wireless access point. The AP score of the wireless access point may be determined by (a) a number of wireless access point observations, which may be a number of times that various mobile devices in the past have communicated with or detected the wireless access point; or (b) a time of observation where an observation closer to the present time may correspond to a higher score; or (c) a combination of (a) and (b).
  • The mobile device 100 can add the unassigned wireless access points to the geographic regions based on AP scores and the wireless access point tolerance of each geographic region ( 926 ). For example, if (a) a wireless access point with a high AP rating is associated with a region (based on a location of the wireless access point), and (b) a number of selected access points in the region has not reached wireless access point tolerance, then the mobile device can add the wireless access point to the region. In some implementations, adding the wireless access points that have not yet been added to the geographical regions may include selecting the wireless access points to add based on channel optimization in addition to the AP scores. The channel optimization will be detailed with reference to 9D to be discribed.
  • The mobile device 100 can calculate a raster detection probability for the already added wireless access points ( 928 ). Each set of wireless access point candidates may be associated with a raster detection probability. The raster detection probability may indicate the likelihood of detecting the geofence by monitoring the wireless access point candidates in the set (eg, the wireless access points already added). The raster detection probability can be used to balance the accuracy (the more wireless access points are to be monitored, the more likely the detection) and the efficiency (the more wireless access points to monitor, the higher the power consumption) and to weigh whether limited Scanning capacity of a wireless processor (eg 150 access points at a time) should be used to monitor this or another geofence. Further details about calculating the raster detection probability are given below with reference to 10 to be discribed.
  • The mobile device 100 can determine ( 930 ), if all wireless access points that correspond to the grid geographically are added. Determining whether all the wireless access points that correspond geographically to the grid may include performing a search of a wireless access point list using the location of the grid as an index. When all are added, the process can 920 end up.
  • If there are multiple wireless access points, the mobile device may 100 increase the wireless access point tolerance for the geographic regions ( 932 ). For example, the mobile device 100 the wireless access point tolerances according to 9B increase. After the boost operations, the mobile device may 100 the operations by returning to stage 924 iterate.
  • channel optimization
  • 9D is an exemplary histogram 960 which illustrates techniques of identifying wireless access point candidates based on channel optimization. The channel optimization may be performed by a mobile device such as the mobile device 100 , as described above. The mobile device 100 can use a wireless processor to monitor the selected wireless access points for a geofence. The wireless processor may scan multiple channels for signals from the wireless access points. The wireless processor often consumes more power when scanning multiple channels. The mobile device 100 can reduce the number of scanned channels by selecting as many wireless access points as possible which operate in the same channels if other conditions are equal.
  • The mobile device 100 can store a list of wireless access points. Each of the wireless access points may be associated with a channel in which the wireless access point operates. The mobile device 100 can be a histogram 960 on all wireless channels (eg channel 1 to channel 11) using a probability density function. Each channel may be assigned a channel score based on the probability density function for a given geofence or for a given group of geofences. The probability density function may indicate a probability that a wireless access point is operating in a particular channel. In some implementations, the channel rating of a channel may be determined based on a number of wireless access points using that channel.
  • In some embodiments, the mobile device may 100 Use the probability density function to identify the most common access points for a given group of fences. The mobile device 100 can select these access points to monitor the group of geofences. The selection may include a likelihood of watching a wireless access point by the mobile device 100 improve. In some implementations, the mobile device may 100 Identify one or more popular channels. For example, the mobile device 100 select the top X (eg three or four) most popular channels. In some implementations, the mobile device may 100 a threshold of choice 962 specify. The mobile device 100 can designate the wireless channels as the popular channels whose channel scores are the threshold of choice 962 fulfill.
  • The mobile device 100 It may make it more likely that the wireless access points operating in the popular channels are more likely to be selected. In some implementations, the mobile device may 100 increase the AP score of a wireless access point operating in a popular channel. In some implementations, the mobile device may 100 Select the wireless access points from wireless access points that work in the popular channels. Accordingly, when monitoring a geofence, a wireless device may be a mobile device 100 z. B. Scan three or four channels instead of all channels.
  • Evaluate selected wireless access points
  • 10 FIG. 10 is a diagram illustrating example techniques for evaluating a set of wireless access point candidates. The techniques may be on a mobile device, such as the mobile device 100 as described above.
  • The mobile device 100 may evaluate multiple sets of wireless access point candidates and may determine which set of wireless access point candidates will ultimately monitor the geofence 110 is selected. Each set of wireless access point candidates may be a set of wireless access points, which in an iteration (I) and the iteration of previous iterations (1, ..., I-1) of the process 920 as above with reference to 9C described, was added. To evaluate each set of wireless access point candidates, the mobile device may 100 determine a raster detection probability for each set.
  • The mobile device 100 can determine the raster detection probability using multiple inspection points. The mobile device 100 can at least one examination point (eg the examination point 1002 ) for each graphic region. An examination point (PP) is a virtual point from which a probability of detecting at least one of the already added wireless access points can be calculated. The probability is called an examination point detection probability. The mobile device 100 may determine the raster detection probability based on the examination point detection probability of each examination point.
  • To an examination point detection probability for the examination point 1002 to charge, the mobile device can 100 model signal propagation of a wireless access point using path loss accounting as below. P k = -10β log 10 (d) + P 0 + η, (2) where P k is a signal strength at a point that is a distance d from the wireless access point (e.g., the wireless access point) 1004 ), P o is a signal strength at the wireless access point, η is a constant that accounts for system losses, and β is a path loss exponent. The path loss exponent may reflect an environment of signal propagation. For example, outside in free space β may have a value of 2; In shady urban areas β can have a value between 2.7 and 5. In buildings in visual communication β may have a value between 1.6 and 1.8; if obstacles exist, β can have a value between 4 and 6. A potential detection range of a wireless access point may be determined when a signal strength ratio P k / P o is in the range of -30 dB to -113 dB.
  • According to formula (2), the detectability of a wireless access point may depend on variations, such as among other indoor / outdoor propagation, wireless transmission performance. The mobile device 100 For example, the calculation of an inspection point detection probability may be based on a lower bound detection distance, which may be defined using the following calculation:
    Figure DE112012002346T5_0002
    where Z is the lower bound detection distance, θu is a potential user location, θ 0 is an estimated location of the wireless access point (which may be determined by a server using an independent processor) and σ θu is an estimated lower bound signal propagation.
  • The mobile device 100 Then, a probability that the inspection point PP detects a wireless access point can be determined by integrating over the lower bound detection distance using the following calculation:
    Figure DE112012002346T5_0003
    in which
    Figure DE112012002346T5_0004
    a probability is that the inspection point PP is an nth selected wireless access point SAPn (eg wireless access point 1004 ) detected; Z is the lower bound detection distance and t is a distance over which the inspection point detection probability is integrated.
  • The mobile device 100 For example, an inspection point detection probability may be determined based on the probabilities that an inspection point detects or does not detect the wireless access points already added, using the following calculations:
    Figure DE112012002346T5_0005
    where P D (PP k ) is an examination point detection probability for the k th examination point PPk (eg, examination point 1002 ).
  • The mobile device 100 may determine the raster detection probability for a set of wireless access point candidates based on the examination point detection probability for each examination point. The raster detection probability may be an average of the examination point detection probabilities for all examination points, or a minimum examination point detection probability among all examination points.
  • Select access points from candidates
  • 11 FIG. 10 is a diagram showing exemplary techniques of selecting wireless access points for a monitoring geofence from the set of wireless access point candidates. The techniques may be implemented on a mobile device, such as the mobile device 100 as described above. The mobile device 100 can identifiers of a set of wireless access points 1102 Store, which are arranged sufficiently close to a geofence, so that the wireless access points 1102 potentially be used to monitor the geofence.
  • Using the above-described operations (eg, with reference to 8A to 10 ) may be the mobile device 100 Sets of wireless access point candidates 1104 . 1106 and 1108 identify. Each set of wireless access point candidates 1104 . 1106 or 1108 may include one or more wireless access points from the set of wireless access points 1102 include. Each set of wireless access point candidates 1104 . 1106 or 1108 may correspond to a detection probability (eg, a raster detection probability as above with reference to FIG 10 described). For example, the sentence 1104 comprising wireless access points AP1 and AP2 associated with a raster detection probability of 0.1; sentence 1106 comprising wireless access points AP1 to AP4 may be associated with a raster detection probability of 0.3; sentence 1108 , which includes wireless access points AP1 to AP8, may be associated with a raster detection probability of 0.8.
  • In some implementations, the mobile device may 100 select the set of wireless access point candidates to select a geofence based on an improvement in the detection probability via selecting a different set of wireless access points. For example, the mobile device 100 a sentence (eg sentence 1108 ), which provides the most improvement in the detection probability per additional added wireless access point.
  • 12 FIG. 10 is a diagram showing exemplary techniques of selecting wireless access points for multiple geofences from sets of wireless access point candidates. A mobile device, such as the mobile device 100 as described above, can monitor multiple geofences. Monitoring multiple geofences may include scanning for signals from multiple wireless access points intended to monitor each geofence.
  • For example, the mobile device 100 be configured to monitor a first, a second and a third geofence. Using the above-described operations (eg, with reference to 8A to 11 ) may be the mobile device 100 Sets of additional wireless point candidates 1104 . 1106 and 1108 to monitor the first geofence. The mobile device 100 can be sets of wireless access point candidates 1204 . 1206 and 1208 to monitor the second geofence. The mobile device 100 can be sets of wireless access point candidates 1214 . 1216 and 1218 to monitor the third geofence. When selecting wireless access points to be monitored, the mobile device may 100 ensure that the total number of wireless access points used to monitor the first, second, and third geofence meet (eg, do not exceed) an access point threshold. The access point threshold may be based on a configuration of a wireless processor (eg, a maximum scanning capacity of a WiFi chip) of the mobile device 100 certainly become. Further details of selecting wireless access points that meet the access point threshold will be discussed below with reference to FIG 13A to be discribed.
  • 13A Fig. 10 is a flowchart exemplifying operations 1300 to select wireless access points to monitor multiple geofences. The operations may be performed by a mobile device, such as the mobile device 100 as described above. The mobile device 100 can initialize an access point budget and fence scores ( 1302 ). The access point budget may be a value indicating how many more wireless access points can be selected, e.g. Based on a scan capacity of a wireless processor, and how many wireless access points are already selected. Initializing the access point budget may include setting the access point budget to an initial value based on the scan capacity. A fence rating of a geofence may be a detection probability (eg, a grid detection probability) that is determined based on wireless access points already selected for the geofence. Initializing the scan score may include setting the fence score of all geofences being considered to zero.
  • The mobile device 100 can iterate through the geofences ( 1304 ) and select the wireless access points. The iterating through the geofences may include selecting wireless access points to monitor each geofence. During the iteration, the mobile device may 100 determine ( 1306 ) if the access point budget remains greater than zero. When the access point budget reaches zero, the mobile device may 100 stop selecting wireless access points. Otherwise, the mobile device 100 continue the iterations.
  • If the access point budget stays greater than zero. can the mobile device 100 add one or more access points to the geofence ( 1308 ) on which it is currently iterated, and determine a current fence rating.
  • Iterating ( 1304 ) through the geofences may include performing the following operations based on the geofences to be monitored. The mobile device 100 can have one or more wireless access points for the geofence 110 Select which iterates on when the iteration conditions are met. The iteration conditions can be met if:
    • (1) The fence rating of the Geofence 110 Room for improvement has (for example, the fence rating of Geofence 110 is less than a maximum fence rating);
    • (2) a next fence score is significantly better than the current fence rating. The next fence rating is a detection probability of the geofence 110 when the one or more wireless access points being viewed are actually selected. The next fence score is significantly better than a current fence score if the difference between the fence rating and the current fence rating meets a threshold; and
    • (3) the access point budget is greater than zero.
  • When selecting the one or more wireless access points, the mobile device may 100 assign the next fence score calculated above as a new current fence score of the geofence being iterated on, and reduce the access point budget by the number of selected wireless access points.
  • 13B shows an exemplary application of the operations of 13A , By way of illustration, the mobile device selects 100 (as described above) wireless access points for monitoring a first geofence (geofence 1320 ), a second geofence (Geofence 1322 ) and a third geofence (Geofence 1324 ) out. Each of the geofences 1320 . 1322 and 1324 can be associated with multiple sets of wireless access point candidates with corresponding fence scoring. For example, the geofence 1320 is associated with a first set of four access point candidates associating a fence score of 0.1, a second set of six access point candidates with associating a fence score of 0.5, a third set of eight access point candidates with associating a fence score of 0.8.
  • During initialization operations (as indicated by the arrows marked "o"), the fence scores may be any of the geofences 1320 . 1322 and 1324 set to zero. After initialization, the mobile device may 100 through the geofences 1320 . 1322 and 1324 and iterating the sets of wireless access point candidates associated with the geo-fences in the order (1-9), as specified by the arrows, until the iteration conditions are no longer met.
  • Exemplary access point selection system
  • 14 FIG. 10 is a block diagram showing exemplary components of a system implementing techniques of selecting wireless access points to monitor a geofence. The wireless access point selection system 1402 may be a component of a mobile device (eg, mobile device 100 as described above) configured to select one or more wireless access points to monitor a geofence.
  • The wireless access point selection system 1402 can be a data store 230 which can store a list of wireless access points. Each wireless access point may be associated with a location, a channel, and an AP score. The location of a wireless access point may be an estimated location that may or may not correspond to a physical location of the wireless access point. The locations and AP ratings may be through a remote server or through the mobile device 100 be determined. The data store 230 may be implemented in a database (eg, a relational or objective database) or flat file stored on a storage device.
  • The wireless access point selection system 1402 can be a geofence datastore 1404 include. The geofence data store 1404 can store information about one or more geofences, including: B. Locations and dimensions of geofences.
  • The wireless access point selection system 1402 can be a geofence analyzer 1406 include. The geofence analyzer 1406 is a component of the wireless access point selection system 1402 set up to create a geographic grid including one or more geographic regions (eg, tiles). Each wireless access point in the data store 230 can have a location corresponding to one of the geographic regions. The geographic analyzer 1406 can designate one or more points in each geographic region as examination points. The geofence analyzer 1406 may include hardware and software components.
  • The wireless access point selection system 1402 may be a probability score calculator 1408 include. The probability score calculator 1408 is a component of the wireless access point selection system 1402 arranged to calculate the examination point detection probabilities for each examination point, and the raster detection probability for each set of wireless access point candidates based on the examination point detection probabilities. The probability score calculator 1408 may include hardware and software components. The output from the probability score calculator 1408 can be in the geofence analyzer 1406 according to the iterative process, as above with reference to 13A be described, fed.
  • The wireless access point selection system 1402 can be a channel optimizer 1410 include. The channel optimizer 1410 is a component of the wireless access point selection system 1402 configured to perform channel optimization operations based on channel information from the data store 230 , The channel optimizer 1410 may include hardware and software components.
  • The wireless access point selection system 1402 can use a wireless access point selector 1412 include. The wireless access point selector 1412 is a component of the wireless access point selection system 1402 configured to perform selections for one or more geofences based on the probabilities determined by the probability score calculator 1408 and the channel information from the channel optimizer 1410 be calculated. The wireless access point selector 1412 may include hardware and software components.
  • The wireless access point selection system 1402 can store a datastore of selected access points 1414 include. The data store of selected access points 1414 is a component of the wireless access point selection system 1402 configured to store a list of wireless access points provided by the wireless access point selector 1412 were selected. The wireless access point selection system 1402 may select the selected wireless access points to a wireless device of the mobile device 100 to monitor one or more geofences.
  • Exemplary access point selection operations
  • 15 FIG. 10 is a flowchart illustrating exemplary operations. FIG 1500 the wireless access point selection shows. The operations 1500 can through the mobile device 100 as described above.
  • The mobile device 100 can receive a geofence ( 1502 ). The geofence can be defined by a fence location and a fence dimension. The geofence can be received by a user.
  • The mobile device 100 can choose one or more wireless access points to monitor the geofence from multiple wireless access points ( 1504 ). Selecting the one or more wireless access points may include determining a plurality of geographic regions corresponding to the geofence and selecting the one or more wireless access points based on a maximum total number of wireless access points to be selected and an access point allowance for each of the geographic regions include. The access point tolerance may indicate a maximum number of wireless access points to be selected for the geographic region. The mobile device 100 For example, the maximum number of wireless access points to be selected may be determined based at least in part on a monitoring capacity of the wireless processor.
  • Determining the geographic regions corresponding to the geo-fence may include dividing a geographic area associated with the geofence into multiple tiles. Each geographic area can be a tile. Each tile can be a substantially rectangular area.
  • The wireless access points selected to monitor the geofence may be on the mobile device 100 get saved. Each wireless access point may be represented by a wireless access point identifier (eg, a MAC address). Each wireless access point may be associated with an access point location. The access point location may be associated with monitoring (eg, located in) one of the geographic regions for monitoring. Each wireless access point may be associated with an access point score indicating capability of the wireless access point in monitoring the geofence. Each wireless access point may be associated with a channel number. The channel number can indicate on which channel a wireless access point sends and receives signals.
  • Selecting the one or more wireless access points may include iteratively performing scoring operations. The scoring operations may include setting or increasing the access point tolerance for each of the geographic regions. The scoring operations may include ordering wireless access points based on the access point scores that have not yet been added to a geographic region where the access point location associated with the not yet added wireless access point corresponds to the geographic target region. The scoring operations may include determining already added access points as wireless access point candidates and calculating a detection probability based on the wireless access point candidates. Selecting the one or more wireless access points may include selecting the one or more wireless access points from the wireless access point candidates based on the maximum total number of wireless access points and the detection probabilities computed in the iterative scoring operations.
  • The mobile device 100 may continue the one or more wireless access points based on communication channels between the mobile device 100 and select the wireless access points. Selecting the one or more wireless access points may include determining one or more preferred wireless access points for each of the communication channels using a probability density function and selecting the one or more wireless access points from the preferred wireless access points. Determining one or more preferred wireless access points for each of the communication channels may include determining a popularity score for each of the communication channels using a probability density function and a number of wireless access points using the communication channel. Determining the one or more preferred wireless access points for each of the communication channels may include determining the one or more preferred wireless access points based on the popularity scores of the communication channels.
  • The mobile device 100 can calculate the detection probability using the probability calculation operations. The probability calculation operations may include determining at least one point in each of the geographical regions as an examination point. The mobile device 100 may calculate an inspection point detection probability for each inspection point. The probe-point detection probability may indicate a likelihood that a mobile device located at the probe point may detect any selected access point for monitoring the geofence. The mobile device 100 may calculate the detection probability based on the examination point detection probabilities of the examination points, including calculating a probability of not detecting any of the selected access points at any of the examination points using the calculation (5) as above with reference to FIG 10 described.
  • The operations 1500 may include selecting one or more wireless access points to monitor another geofence so that a total number of the selected wireless access points representing the geofence and the selected wireless access points representing the other geofence does not exceed the maximum number of wireless access points; for monitoring by the mobile device 100 is allowed at a time. The mobile device 100 may iteratively determine to select one or more wireless access point candidates for monitoring the geofence in each iteration or select the one or more wireless access point candidates to monitor the other geofence based on an amount of improvement resulting from each selection.
  • The mobile device 100 can determine a tentative location of the mobile device with respect to the geofence ( 1506 ), including monitoring the selected one or more wireless access points using a wireless processor, and e.g. B. tentatively determine if the mobile device 100 within the geofence or outside the geofence. The wireless processor may be a WiFi chip. Monitoring the selected one or more selected wireless access points includes scanning a signal from the selected one or more wireless access points on one or more channels. The mobile device 100 may be an application processor of the mobile device 100 wake up. Using the application processor, the mobile device can 100 determine if the mobile device 100 is inside the geofence.
  • Exemplary Mobile Device Architecture
  • 16 is a block diagram of an example architecture 1600 for the mobile devices of 1 to 8th , A mobile device may be a memory interface 1602 , one or more data processors, image processors and / or processors 1604 as well as an interface 1606 of the peripheral devices. The storage interface 1602 , one or more processors 1604 and / or the interface 1606 The peripheral devices may be separate components or may be integrated into one or more integrated circuits. The processors 1604 may include application processors, baseband processors, and wireless processors. The different components in the mobile device 100 can z. B. be coupled by one or more communication buses or signal lines.
  • Sensors, devices, and subsystems can communicate with the peripheral interface 1606 coupled to allow multiple functionalities. For example, the motion sensor 1610 , a light sensor 1612 and the environmental sensor 1614 with the interface 1606 the peripheral devices to allow orientation, lighting and environmental functions of the mobile device. The location processor 1615 (eg GPS receiver) can be connected to the interface 1606 peripheral devices to provide geo-positioning. An electronic magnetometer 1616 (for example, an integrated circuit chip) can also interface with 1606 the peripheral devices to provide data that can be used to determine the direction of the magnetic north. Thus, the electronic magnetometer 1616 be used as an electronic compass. The motion sensor 1610 may include one or more accelerometers configured to determine the speed change and directional change of movement of the mobile device. A gravimeter 1617 may include one or more devices connected to the interface 1606 the peripheral devices are connected and adapted to measure a local gravitational field of the earth.
  • The camera bug system 1620 and an optical sensor 1622 z. As a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS) optical sensor can be used to enable camera functions, such as recording photos and video clips.
  • The communication functions may be through one or more wireless communication subsystems 1624 which may include high frequency receivers and transmitters and / or optical (eg, infrared) receivers and transmitters. The specific design and implementation of the communication subsystem 1624 may depend on the communication network (s) over which a mobile device is to operate. For example, a mobile device may have communication subsystems 1624 which are intended to be operated via a GSM network, a GPRS network, an EDGE network, a Wi-Fi or Wi-Max network and a Bluetooth network. In particular, the wireless communication subsystems 1624 Hosting protocols so that the mobile device may be configured as a base station for other wireless devices.
  • The audio subsystem 1626 can with a speaker 1628 and a microphone 1630 be coupled to enable voice features such as voice recognition, voice replication, digital recording and telephone functions.
  • The I / O subsystem 1640 may be a touch screen controller 1642 and / or other input control unit (s) 1644 include. The touch screen control unit 1642 can with a touch screen 1646 or pad coupled. The touch screen 1646 and the touch screen control unit 1642 can z. Detecting contact and motion or an interruption thereof using any of a variety of touch-sensitive technologies, including but not limited to capacitive, resistive, infrared and surface acoustic wave technologies, as well as other environmental sensor arrays or other elements for determining one or more touch points with the touch screen 1646 ,
  • Other input control unit (s) 1644 may be coupled with other input / control devices 1648 such as one or more buttons, rocker switch, thumbwheel, infrared port, USB port, and / or a pointing device such as a stylus. The one or more buttons (not shown) may include a volume up / down button for volume control of the speaker 1628 or the microphone 1630 include.
  • In one implementation, pressing the button for a first duration may lock the touch screen 1646 to solve; and pressing the button for a second duration, which is longer than the first duration, the mobile device 100 switch on or off. The user may be able to customize a functionality of one or more of the buttons. The touch screen 1646 can z. B. also be used to implement virtual or soft keys and / or a keyboard.
  • In some implementations, the mobile device may 100 recorded audio and / or video files, such as MP3, AAC and MPEG files. In some implementations, the mobile device may 100 include the functionality of an MP3 player, such as an iPod TM . The mobile device 100 may therefore include a pin connector that is compatible with the iPod. Other input / output and control devices may also be used.
  • The storage interface 1602 can be coupled with the memory 1650 , The memory 1650 may comprise a high speed random access memory and / or nonvolatile memory, such as one or more magnetic disk storage devices, one or more optical storage devices and / or flash memories (e.g., NAND, NOR). The memory 1650 can the operating system 1652 such as Darwin, RTXC, LINUX, UNIX, OSX, WINDOWS or an embedded operating system such as VxWorks. The operating system 1652 may include instructions for handling the base system services and performing hardware-dependent tasks. In some implementations, the operating system may 1652 a kernel (eg UNIX kernel).
  • The memory 1650 can also communication instructions 1654 to facilitate communication with one or more additional devices, one or more computers, and / or one or more servers. The memory 1650 can graphic user interface instructions 1656 to enable graphical user interface processing; Sensor processing instructions 1658 to enable sensor-related processing and functions; phone instructions 1660 , around to enable telephone-related processes and functions; electronic notification instructions 1662 to enable electronic notification-related processes and functions; Web browsing instructions 1664 to enable web browsing-related processes and functions; Media processing instructions 1666 to enable media processing related processes and functions; GPS navigation instructions 1668 to enable GPS and navigation-related processes and instructions; camera instructions 1670 to enable camera-related processes and functions; Magnetometer data 1672 and calibration instructions 1674 to enable magnetometer calibration. The memory 1650 may also store other software instructions (not shown), such as security instructions, web video instructions to enable web video related processes and functions, and / or web shopping instructions to facilitate web shopping related processes and functions. In some implementations, the media processing instructions are 1666 into audio processing instructions and video processing instructions to enable audio processing related processes and functions and / or video processing related processes and functions. An Activation Entry and an International Mobile Equipment Identity (IMEI) or similar hardware identifier may also be stored in memory 1650 get saved. The memory 1650 can geofence instructions 1676 which can be used to receive a geofence defined by a user, identify one or more wireless access points to monitor the geofence, monitor the geofence using the identified wireless access points, and tasks associated with the geofence after determining that the mobile device is inside or outside the geofence.
  • Each of the above-identified instructions and applications may correspond to a set of instructions for performing one or more functions described above. These instructions do not need to be implemented as separate software programs, procedures, or modules. The memory 1650 may include additional instructions or fewer instructions. Furthermore, various functions of the mobile device may be implemented in hardware and / or software, including one or more signal processing and / or application specific integrated circuits.
  • Exemplary operating environment
  • 17 FIG. 10 is a block diagram of an example network operating environment. FIG 1700 for the mobile devices of 1 to 9 , The mobile devices 1702a and 1702b can z. Via one or more wired and / or wireless networks 1710 communicate in data communication. For example, a wireless network 1712 z. B. A cellular network with a wide area network (WAN) 1714 , such as the Internet, by using a gateway 1716 communicate. Similarly, an access device 1718 for example, an 802.11g wireless access point provides communication access to the wide area network 1714 provide.
  • In some implementations, both voice and data communications may be over the wireless network 1712 and the access device 1718 getting produced. For example, the mobile device 1702a Make and receive telephone calls (eg using voice over Internet Protocol (VoIP) protocols), send and receive e-mail messages (eg using Post Office Protocol 3 (POP3)) and electronic documents and / or streams, such as web pages, photos, and videos over the wireless network 1712 , the gateway 1716 and the wide area network 1714 (for example, using Transmission Control Protocol / Internet Protocol (TCP / IP) or User Datagram Protocol (UDP)). Similarly, in some implementations, the mobile device may 1702b Make and receive phone calls, send and receive e-mail messages, and send electronic documents via the access device 1718 and the wide area network 1714 recall. In some implementations, the mobile devices may 1702a or 1702b physically with the access device 1718 be connected using one or more cables and the access device 1718 can be a personal computer. In this configuration, the mobile devices 1702a or 1702b are referred to as a "wired" device.
  • The mobile devices 1702a and 1702b can also create communications by other means. For example, the wireless device may 1702a with other wireless devices, e.g. Other mobile devices, mobile phones, etc. over the wireless network 1712 communicate. Similarly, the mobile devices 1702a and 1702b Peer-to-peer communications 1720 , z. A personal area network, by using one or more communication subsystems, such as the Bluetooth communication devices. Other communication protocols and topologies may also be implemented.
  • The mobile devices 1702a or 1702b can z. With one or more services 1730 and 1740 communicate over the one or more wired and / or wireless networks. For example, one or more access point list services 1730 Determine one or more identifiers of the wireless access points, estimate locations of the wireless access points using location data collected from one or more site aware devices, determine AP ratings for wireless access points, determine a channel for each wireless access point, and pass the information to the mobile devices 1702a or 1702b provide.
  • The geofence service 1740 can z. B. Geofence-based API, allowing users of mobile devices 1702a or 1702b Develop geofence-based application programs. The application programs can be downloaded to the mobile devices 1702a or 1702b to be provided.
  • The mobile devices 1702a or 1702b may also access other data and content over the one or more wired and / or wireless networks. For example, content publishers, such as news sites, Really Simple Syndication (RSS) feeds, web pages, blogs, social networking sites, developer networks, etc., may use the mobile devices 1702a or 1702b be accessed. Such access can be achieved by calling a web browsing function or application (eg, a browser) in response to a user, e.g. B. a web object touched, are provided.
  • A number of implementations of the invention have been described. Nevertheless, it is to be understood that various modifications may be made without departing from the spirit and scope of the invention. For example, geographic regions used in the wireless access point selection are represented as tiles. The collection of geographic regions is represented as a grid. The current shape of the geographic regions may vary.

Claims (24)

  1. A method performed by a mobile device, comprising: Determining that the mobile device is within a geofence; Determining one or more wireless access points that, when the mobile device is in the geofence, are monitorable as outbound gateways for monitoring an output from the geofence; and Detecting an output of the mobile device from the geofence based at least in part on monitoring the output gateways.
  2. The method of claim 1, wherein determining that the mobile device is within the geofence comprises: Monitoring one or more ingress gateways using a wireless processor of the mobile device, wherein the one or more ingress gateways are one or more wireless access points selected to monitor an entrance to the geofence; and After detecting by the wireless processor at least one or more of the input gateways, determining that the mobile device is within the geofence.
  3. The method of claim 2, wherein detecting the output of the mobile device from the geofence comprises: Monitoring a combined collection of wireless access points using the wireless processor including the one or more ingress gateways and the one or more outbound gateways; Determining that for at least a threshold number of scans by the wireless processor, none of the combined collection of wireless access points is monitorable by the wireless processor; and then Determining whether the mobile device has left the geofence using an application processor of the mobile device.
  4. The method of claim 1, wherein the geofence is a first geofence and the method comprises detecting an output of the mobile device from the geofence or an output of the mobile device from a second geofence.
  5. The method of claim 4, wherein the second geofence and the first geofence overlap.
  6. The method of claim 4, comprising: creating a temporary geofence around a current location of the mobile device; Monitoring the temporary geofence; and detecting the output of the mobile device from the first geofence or the output of the mobile device from the second geofence after detecting an output from the temporary geofence.
  7. The method of claim 6, wherein generating the temporary geofence comprises: Defining the temporary geofence using a fence location and a fence dimension, the fence location corresponding to the current location of the mobile device; and Identifying one or more common gateways for monitoring the temporary geofence, wherein the shared gateways include one or more wireless access points that are monitorable by the mobile device when the mobile device is in the first geofence and the second geofence.
  8. The method of claim 7, wherein detecting the output of the mobile device from the first geofence or the output of the mobile device from the second geofence comprises: Detecting an output from the temporary geofence and then determining if the mobile device is within the first geofence and if the mobile device is within the second geofence using an application processor of the mobile device.
  9. A computer program product configured to cause a mobile device to perform operations, comprising: Determining that the mobile device is within a geofence; Determining one or more wireless access points that, when the mobile device is in the geofence, are monitorable as outbound gateways for monitoring an output from the geofence; and Detecting an output of the mobile device from the geofence based at least in part on monitoring the output gateways.
  10. The product of claim 9, wherein determining that the mobile device is within the geofence comprises: Monitoring one or more ingress gateways using a wireless processor of the mobile device, wherein the one or more ingress gateways are one or more wireless access points selected to monitor an entrance to the geofence; and After detecting by the wireless processor at least one or more of the input gateways, determining that the mobile device is within the geofence.
  11. The product of claim 10, wherein detecting the output of the mobile device from the geofence comprises: Monitoring a combined collection of wireless access points using the wireless processor including the one or more ingress gateways and the one or more outbound gateways; Determining that for at least a threshold number of scans by the wireless processor, none of the combined collection of wireless access points is monitorable by the wireless processor; and then Determining whether the mobile device has left the geofence using an application processor of the mobile device.
  12. The product of claim 9, wherein the geofence is a first geofence and the method comprises detecting an output of the mobile device from the geofence or an output of the mobile device from a second geofence.
  13. The product of claim 12, wherein the second geofence and the first geofence overlap.
  14. Product according to claim 12, comprising the operations: Creating a temporary geofence around a current location of the mobile device; Monitoring the temporary geofence; and Detecting the output of the mobile device from the first geofence or the output of the mobile device from the second geofence after detecting an output from the temporary geofence.
  15. The product of claim 14, wherein generating the temporary geofence comprises: defining the temporary geofence using a fence location and a fence dimension, the fence location corresponding to the current location of the mobile device; and identifying one or more common gateways for monitoring the temporary geofence, the shared gateways including one or more wireless access points that are monitorable by the mobile device when the mobile device is in the first geofence and the second geofence.
  16. The product of claim 15, wherein detecting the output of the mobile device from the first geofence or the output of the mobile device from the second geofence comprises: Detecting an output from the temporary geofence and then determining if the mobile device is within the first geofence and if the mobile device is within the second geofence using an application processor of the mobile device.
  17. A system comprising: a mobile device configured to perform operations comprising: Determining that the mobile device is within a geofence; Determining one or more wireless access points that, when the mobile device is in the geofence, are monitorable as outbound gateways for monitoring an output from the geofence; and Detecting an output of the mobile device from the geofence based at least in part on monitoring the output gateways.
  18. The system of claim 17, wherein determining that the mobile device is within the geofence comprises: Monitoring one or more ingress gateways using a wireless processor of the mobile device, wherein the one or more ingress gateways are one or more wireless access points selected to monitor an entrance to the geofence; and After detecting by the wireless processor at least one or more of the input gateways, determining that the mobile device is within the geofence.
  19. The system of claim 18, wherein detecting the output of the mobile device from the geofence comprises: Monitoring a combined collection of wireless access points using the wireless processor including the one or more ingress gateways and the one or more outbound gateways; Determining that for at least a threshold number of scans by the wireless processor, none of the combined collection of wireless access points is monitorable by the wireless processor; and then Determining whether the mobile device has left the geofence using an application processor of the mobile device.
  20. The system of claim 17, wherein the geofence is a first geofence and the method comprises detecting an output of the mobile device from the geofence or an output of the mobile device from a second geofence.
  21. The system of claim 20, wherein the second geofence and the first geofence overlap.
  22. The system of claim 20, wherein the operations include: Creating a temporary geofence around a current location of the mobile device; Monitoring the temporary geofence; and Detecting the output of the mobile device from the first geofence or the output of the mobile device from the second geofence after detecting an output from the temporary geofence.
  23. The system of claim 22, wherein generating the temporary geofence comprises: defining the temporary geofence using a fence location and a fence dimension, the fence location corresponding to the current location of the mobile device; and identifying one or more common gateways for monitoring the temporary geofence, wherein the common gateways comprise one or more wireless access points provided by the mobile Device are monitored when the mobile device is in the first geofence and in the second geofence.
  24. The system of claim 23, wherein detecting the output of the mobile device from the first geofence or the output of the mobile device from the second geofence comprises: Detecting an output from the temporary geofence and then determining if the mobile device is within the first geofence and if the mobile device is within the second geofence using an application processor of the mobile device.
DE201211002346 2011-06-03 2012-05-15 Monitoring a geofence output Withdrawn DE112012002346T5 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
USUS-13/152,972 2011-06-03
US13/152,972 US8626187B2 (en) 2011-06-03 2011-06-03 Monitoring geofence exit
PCT/US2012/038004 WO2012166356A1 (en) 2011-06-03 2012-05-15 Monitoring geofence exit

Publications (1)

Publication Number Publication Date
DE112012002346T5 true DE112012002346T5 (en) 2014-02-20

Family

ID=46149738

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201211002346 Withdrawn DE112012002346T5 (en) 2011-06-03 2012-05-15 Monitoring a geofence output

Country Status (10)

Country Link
US (1) US8626187B2 (en)
EP (2) EP3197184A1 (en)
JP (1) JP5770933B2 (en)
KR (1) KR101609256B1 (en)
CN (1) CN103563406B (en)
AU (1) AU2012262822B2 (en)
BR (1) BR112013030585A2 (en)
DE (1) DE112012002346T5 (en)
GB (1) GB2514866A (en)
WO (1) WO2012166356A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9747380B2 (en) 2015-11-12 2017-08-29 International Business Machines Corporation Grid-based geofence data indexing

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8594921B2 (en) 2011-11-30 2013-11-26 At&T Mobility Ii Llc Comparison of multi-dimensional datasets
US9301098B2 (en) * 2012-07-26 2016-03-29 Aruba Networks, Inc. Location detection in wireless communication networks
CN103096465B (en) * 2013-01-11 2015-06-24 南京师范大学 Environment self-adaption multi-target direct locating method
US20140258201A1 (en) * 2013-03-05 2014-09-11 Qualcomm Incorporated Generating a geofence via an analysis of a gps fix utilization distribution
US9341479B2 (en) 2013-03-05 2016-05-17 Google Inc. Configurable point of interest alerts
KR101997771B1 (en) * 2013-04-08 2019-07-08 삼성전자주식회사 Apparatas and method for offered a geofence service of low electric power in an electronic device
US9432807B2 (en) * 2013-05-23 2016-08-30 Honeywell International Inc. System and method with automatic radius crossing notification for global positioning system (GPS) tracker
US9191832B2 (en) 2013-06-06 2015-11-17 Apple Inc. Category-based fence
US8755824B1 (en) 2013-06-28 2014-06-17 Google Inc. Clustering geofence-based alerts for mobile devices
CN103391503A (en) * 2013-07-16 2013-11-13 上海即加信息科技有限公司北京分公司 Method for determining virtual geographical range
US9386415B2 (en) * 2013-07-17 2016-07-05 Qualcomm Incorporated Geofences based on RF fingerprints
US9247408B2 (en) 2013-10-22 2016-01-26 Patrocinium Systems LLC Interactive emergency information and identification
US9572002B2 (en) 2013-10-22 2017-02-14 Patrocinium Systems LLC Interactive emergency information and identification systems and methods
US20150134470A1 (en) * 2013-11-08 2015-05-14 Hand Held Products, Inc. Self-checkout shopping system
US9258677B2 (en) 2013-11-21 2016-02-09 Microsoft Technology Licensing, Llc Improving scalability and reliability of hardware geo-fencing with failover support
US20150141045A1 (en) * 2013-11-21 2015-05-21 Telecommunication Systems, Inc. Geofence
US9119034B2 (en) * 2013-11-21 2015-08-25 At&T Mobility Ii Llc Method and apparatus for determining a probability for a geo-fence
US9547079B2 (en) * 2014-02-06 2017-01-17 Fedex Corporate Services, Inc. Object tracking method and system
US9986375B2 (en) 2014-02-12 2018-05-29 Google Llc Energy-efficient location determination
US9313320B2 (en) * 2014-02-19 2016-04-12 Qualcomm Incorporated Automatic switching of modes and mode control capabilities on a wireless communication device
WO2015131097A2 (en) * 2014-02-28 2015-09-03 Costar Realty Information, Inc. Systems and methods for tracking, marketing, and/or attributing interest in one or more real estate properties
CN103916818A (en) * 2014-04-09 2014-07-09 北京百度网讯科技有限公司 Positioning method based on geofence technology and mobile terminal
US9313619B2 (en) * 2014-04-24 2016-04-12 At&T Mobility Ii Llc Facilitating estimation of mobile device presence inside a defined region
US9774995B2 (en) * 2014-05-09 2017-09-26 Microsoft Technology Licensing, Llc Location tracking based on overlapping geo-fences
CN105744473A (en) * 2014-12-08 2016-07-06 阿里巴巴集团控股有限公司 Geo-fencing-based positioning method and device
CN104507047B (en) * 2014-12-15 2018-05-01 福建星网锐捷网络有限公司 A kind of POI area obtaining methods and device
KR20160084112A (en) * 2015-01-05 2016-07-13 에스케이플래닛 주식회사 Apparatus and method for activating wireless communication function automatically for geo-fence, system and computer readable medium having computer program recorded including the same
US9916742B2 (en) 2015-03-17 2018-03-13 Carrier Corporation Automatic notification of a conclusion of real property showing based on user device detection
EP3132619A4 (en) * 2015-03-31 2017-08-02 SZ DJI Technology Co., Ltd. Systems and methods for displaying geo-fencing device information
CN104780219A (en) * 2015-04-27 2015-07-15 北京智凯特网络技术有限公司 Intelligent management system of ZhiKaiTe hotel
KR20170001038A (en) * 2015-06-25 2017-01-04 삼성에스디에스 주식회사 System and method for grid-based geofencing service
KR20170019806A (en) 2015-08-12 2017-02-22 삼성전자주식회사 Method and apparatus for providing location information
CN106470394A (en) * 2015-08-14 2017-03-01 江贻芳 A kind of enclosure wall structure based on indoor and outdoor integration and application process
KR101838967B1 (en) * 2015-10-08 2018-03-15 엘지전자 주식회사 Convenience Apparatus for Vehicle and Vehicle
KR101780283B1 (en) 2015-10-19 2017-10-10 현대자동차주식회사 Method and navigation device for providing geo-fence services, and computer-readable medium storing program for executing the same
US9674660B1 (en) 2015-11-09 2017-06-06 Radiumone, Inc. Using geolocation information in a social graph with sharing activity of users of the open web
US9980137B2 (en) 2015-12-11 2018-05-22 Patrocinium Systems LLC Secure beacon-based location systems and methods
WO2017115448A1 (en) * 2015-12-29 2017-07-06 楽天株式会社 Unmanned aircraft avoidance system, unmanned aircraft avoidance method, and program
WO2017126841A1 (en) * 2016-01-18 2017-07-27 (주)도일시스템즈 Designated area automatic guidance system on basis of various shapes of geofences having inner and outer buffer zones
KR101678618B1 (en) * 2016-01-18 2016-11-22 (주)도일시스템즈 System to set up a geofence on the digital map
US9788156B1 (en) * 2016-03-30 2017-10-10 International Business Machines Corporation Geofence determination
WO2017189451A1 (en) 2016-04-25 2017-11-02 Patrocinium Systems, Llc Interactive emergency visualization methods
WO2018049464A1 (en) * 2016-09-13 2018-03-22 Bluedot Innovation Pty Ltd Reliability determination of location updates in multipath environments
US9674187B1 (en) 2016-09-28 2017-06-06 Network Performance Research Group Llc Systems, methods and computer-readable storage media facilitating mobile device guest network access
WO2018148565A1 (en) * 2017-02-09 2018-08-16 Wove, Inc. Method for managing data, imaging, and information computing in smart devices
US10231167B2 (en) 2017-06-30 2019-03-12 Otis Elevator Company Building access zone specification for mobile applications
CN107749097A (en) * 2017-09-28 2018-03-02 上海若禅信息科技有限公司 A kind of blue-tooth intelligence door lock awakening method and method for unlocking
US10182312B1 (en) * 2018-01-03 2019-01-15 Beemray Oy Method and system for providing information based on location of user-device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7783299B2 (en) * 1999-01-08 2010-08-24 Trueposition, Inc. Advanced triggers for location-based service applications in a wireless location system
US7738884B2 (en) * 2005-06-28 2010-06-15 Microsoft Corporation Positioning service utilizing existing radio base stations
KR100716403B1 (en) * 2005-10-01 2007-05-11 주식회사 케이티프리텔 Alert service method for specific location informaion of mobile terminal and managing apparatus and mobile terminal for the same
US20080188226A1 (en) * 2007-02-02 2008-08-07 Tzu-Jane Tsai Telecommunication system and operating method
WO2008115715A1 (en) * 2007-03-16 2008-09-25 Jon Robert Buchwald Configurable zone-based location detection
US8463297B2 (en) 2007-12-27 2013-06-11 Trueposition, Inc. Subscriber selective, area-based service control
US8164444B2 (en) 2009-04-29 2012-04-24 Healthsense, Inc. Position detection
US10304069B2 (en) 2009-07-29 2019-05-28 Shopkick, Inc. Method and system for presentment and redemption of personalized discounts
US8340628B2 (en) 2009-09-10 2012-12-25 Qualcomm Incorporated Systems and methods for localized wireless notification
US8875176B2 (en) 2009-09-10 2014-10-28 At&T Intellectual Property I, L.P. Method and apparatus using location-based communication
EP2576316A2 (en) * 2010-05-31 2013-04-10 Central Signal, LLC Train detection

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9747380B2 (en) 2015-11-12 2017-08-29 International Business Machines Corporation Grid-based geofence data indexing
US10242116B2 (en) 2015-11-12 2019-03-26 International Business Machines Corporation Grid-based geofence data indexing

Also Published As

Publication number Publication date
GB2514866A (en) 2014-12-10
US8626187B2 (en) 2014-01-07
WO2012166356A1 (en) 2012-12-06
GB201319750D0 (en) 2013-12-25
AU2012262822A1 (en) 2013-12-12
CN103563406A (en) 2014-02-05
KR20140015527A (en) 2014-02-06
KR101609256B1 (en) 2016-04-05
EP2716079B1 (en) 2017-03-29
BR112013030585A2 (en) 2016-09-27
JP2014522599A (en) 2014-09-04
CN103563406B (en) 2017-02-15
AU2012262822B2 (en) 2015-05-14
JP5770933B2 (en) 2015-08-26
EP2716079A1 (en) 2014-04-09
EP3197184A1 (en) 2017-07-26
US20120309409A1 (en) 2012-12-06

Similar Documents

Publication Publication Date Title
JP5640163B2 (en) Display method of related information and mobile communication terminal
CN102066969B (en) Method and device for location determination
US9078230B2 (en) Selective location determination
US8700065B2 (en) Location determination for calls within a femtocell
US8655960B2 (en) Location-aware instant messaging
JP5819529B2 (en) Peer device assisted location information service provider check-in
JP2014524167A (en) Indoor floor and location estimation using a three-step process
JP6297094B2 (en) Position estimation by proximity fingerprint
KR20090066103A (en) Mobile terminal and its method for displaying radio device
US20100035637A1 (en) Displaying image data and geographic element data
CN102006550B (en) Power saving system and method for mobile computing device
JP5260768B2 (en) Mobile device location estimation
DE102009017490B4 (en) Position determination of a mobile device
JP2014517943A (en) Improved device location detection
US20130225196A1 (en) Geo-Fence Generation and Updating Based on Device Movement Patterns
KR20120068042A (en) Binning venues into categories based on propagation characteristics
US9182472B2 (en) Method and apparatus for on-device positioning using compressed fingerprint archives
US20130072226A1 (en) Systems and Methods for Tracking Mobile Devices
US8483711B1 (en) Automatic place detection
KR101504846B1 (en) Pre-fetching information based on gesture and/or location
CN105191360B (en) Based on the method, system and mobile device close to fence
US8320939B1 (en) Crowd-sourced information for interior localization and navigation
JP2009534898A (en) Apparatus, method and computer program for providing a contact list enhanced by location information
US8868104B2 (en) Multi-tier geofence detection
US9525771B2 (en) Category-based fence

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee