WO2005088991A1 - System and method for determining a location by using multiple identifiers of wireless access points - Google Patents

System and method for determining a location by using multiple identifiers of wireless access points Download PDF

Info

Publication number
WO2005088991A1
WO2005088991A1 PCT/US2005/007279 US2005007279W WO2005088991A1 WO 2005088991 A1 WO2005088991 A1 WO 2005088991A1 US 2005007279 W US2005007279 W US 2005007279W WO 2005088991 A1 WO2005088991 A1 WO 2005088991A1
Authority
WO
WIPO (PCT)
Prior art keywords
access points
location
information
database
access point
Prior art date
Application number
PCT/US2005/007279
Other languages
French (fr)
Inventor
Ting-Mao Chang
Original Assignee
Ting-Mao Chang
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
Application filed by Ting-Mao Chang filed Critical Ting-Mao Chang
Priority to CA002567555A priority Critical patent/CA2567555A1/en
Publication of WO2005088991A1 publication Critical patent/WO2005088991A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/0295Proximity-based methods, e.g. position inferred from reception of particular signals
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/0294Trajectory determination or predictive filtering, e.g. target tracking or Kalman filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/33Services specially adapted for particular environments, situations or purposes for indoor environments, e.g. buildings

Definitions

  • This invention relates to a system and method for determining a location by using identifiers of multiple wireless access points.
  • Application can further use the location to accessing location- based information, update wireless access point database, and generate traffic database.
  • GPS Global Position System
  • Many location based applications on mobile computer system use Global Position System (GPS) receiver to locate user's position and search for certain information that is related to the position.
  • the geographical related information is stored in a geo-coded database and linked to user's computer by an Internet connection.
  • User describes the search criteria and query said database through the Internet connection.
  • the criteria include user's position, searching area around the position, and other criteria for searching objects. Therefore, only the specifying information at specified location is returned to user.
  • GPS receiver is extra cost to user's mobile device in terms of price and power consumption.
  • a wireless communication device Similar to GPS using triangular method, a wireless communication device detects the identifiers (for example, BSSID in IEEE 802.11 protocol) of nearby WLAN access points and their signal strength. Then, use the identifiers to look for the locations of said access points in a database and use their signal strength to estimate the distance between the wireless communication device and access points.
  • the location of the mobile device is then determined by the locations of the access points and their distances to the access points.
  • this method needs calibration to determining the relation between distance and signal strength. This method is good for indoors because those access points are reliable and seldom moved without notice, most of the area covers by multiple access points, and come from known manufacture (therefore, the relation between distance and signal strength is predictable). However, this method is not practical for outdoors or large open space where access points are sparse and not reliable because they may be moved or shut down without notice. Sparse makes the triangulation does not work and the location of access point will seldom up to date.
  • a wireless phone instead of specifying a precise location, such as GPS coordinates, a wireless phone might use the identifier of a nearby cellular phone base station (hereafter Cell_ID) to specify a proximity location.
  • Cell_ID the location of the base station can be determined by looking up a database. Since most of the base station has a high power antenna and setup at a fixed location. The base station provides very reliable position information. However, a base station covers a large area, for example several miles. Using a Cell_ID cannot precisely determine the location of the wireless phone handset.
  • MAC media access control
  • an IEEE802.1 lb access point with small operation range might be able to identify a smaller area at where the handset is located. However, the smaller operation range wireless access point is easy to setup, move, and shut down. Therefore, smaller operation range wireless access point is less reliable for identify the location of the handset.
  • a system and method for cross verification of multiple wireless access points (hereafter access point) by using the known proximity relationship.
  • the present invention might further query or provide location-based information in proximity to one or more verified access points.
  • the present invention includes a computer and an access point database (hereafter AP database). For each access point, said database stores its identify and its proximity relationship to other access points.
  • the proximity relationship between access points might include operation range overlapping indication, distance, traveling time, and visiting order, etc.
  • Said identify includes the identifier of the access point, and might further include the type of the communication protocol if the database contains access points in different communication protocols.
  • the identifier can be detected from signal on wireless media. To indicate a location, user sends detected information of multiple access points, which may be complied with different protocol, to said computer.
  • the detected information includes the identities of the multiple access points and might also include the detecting timestamp of the access points. Since access point might be setup, moved, or shut down without notice. Since that, the present invention separates the received information into two parts, known and unknown information by said database. From the known information, the present invention determines the representative location. The present invention then uses the unknown information to update the database. If there is a information search criteria provided by either the system default or the user, the present invention search the information that is in proximity to the representative location. If user provides extra information to associate with the representative location, the present invention stores the extra information to a geo-coded database and links it with the representative location.
  • the present invention uses the information in the AP database. If a received identity can index to an access point in the AP database, it is known access point. There are many proximity relationships between known access points. If no detecting timestamp is received, the present invention might consider that the known access points are detected at the same time and check the operation range overlapping relationship between them in AP database. An operation range overlapping relationship is known if it can be indexed in the AP database. If the detecting timestamps are received, the traveling time between detecting two known access points can be determined. If this traveling time is under or close to the traveling time stored in the AP database, the traveling time proximity relationship is known. If the location, for example GPS coordinates, of the known access points are known, the distance between them can be determined.
  • the known access points are considered close to each other. If the distance between two known access points is under certain reasonable limit, the distance proximity relationship between them is known.
  • the reasonable limit for example, can be the distance that a user can travel under safety driving speed within that short period of time.
  • the known access points in above that have known proximity relationship between them can be grouped together.
  • the present invention selects the group that contains largest number of known access points.
  • the average location of the known access point in the selected group is the representative location.
  • the representative location is the location of access point that is the last one according to the receiving order or is last detected according to the detecting timestamp.
  • the selection of representative location may also be affected by certain other factors, for example select the access point that has smaller operation range for accuracy reason or select the access point that is known to be reliable, for example public hot spot access points.
  • the unknown information is useful information for updating the AP database.
  • the present invention stores the information of unknown access point in the AP database, including the identity and the proximity relationships to other known or unknown access points, for example overlapping relationship and/or traveling time, etc.
  • the new information may not be reliable.
  • an embodiment keeps a statistic count for each element of the new information, i.e. the identify and proximity relationships. Said count increases once if the new information is indicated in another information query or upload.
  • the embodiment may not publish said new information, for example used for determine the known information, until said count reaching certain number.
  • the present invention For a local information upload, the present invention stores the user provided information in the geo-coded database and associates it with the representative location or the representative known access point. For a local information query, the present invention searches the information in proximity to the representative location in a geo-code database.
  • the information in the geo- coded database for example, includes a street address, a street map, a merchant, a store, a service, merchandise, a thing, an event, a person, or a road/traffic condition, etc.
  • Each of the information might associate with certain access point in AP database or certain location, such as GPS coordinates.
  • searching the geo-coded database it might base on certain criteria, default or user provided, for example the characteristic of information and the radius to the representative location.
  • the present invention can determine the traffic congestion condition between access points by observing the average traveling time or traveling speed between the access points reported from multiple users. This information can be stored in the geo-coded database.
  • said AP database stores location history of access points.
  • the location history of an access point includes multiple locations of the access point at different times. With the location history, the previous location of an access point can be found.
  • the present invention find their locations at specified detecting time, and use previous described proximity relationship verification method to determine a final location or its street address. The present invention might further search for location-based information in proximity to said final location.
  • the embodiment can also provide an identifier exchange service that receives one or more identifiers detected in previous time at certain location and output one or more identifiers in the same location in current time.
  • FIG. 1 shows a computer system compatible with some embodiments of the present invention.
  • FIG. 2 shows a user use a PDA with an IEEE802.11b wireless network interface to collect identifiers of nearby APs at a fix location.
  • FIG. 3 shows a user use a PDA with an IEEE802.11b wireless network interface to collect identifiers of nearby APs while driving on the road.
  • FIG. 4 shows a user is driving and detects multiple identifiers of access points along the road.
  • FIG. 5 shows the operation flow of present invention.
  • FIG. 6 shows the graph representation of the AP database
  • FIG. 7 shows the updated graph representation of the AP database
  • search object refers to an object for which a user seeks information and which is geographically located in an area specified by the user.
  • a search object typically includes a piece of a thing, a service, an event, a person, a street address, a street map, a merchant, a merchandise, or a road/traffic condition, etc.
  • access point is a communication node that wirelessly communicates with multiple client nodes.
  • Access point might operate in two modes, infrastructure mode and Ad-hoc mode.
  • infrastructure mode an access point bridges the wireless media to wire media, therefore, client node can connect to Internet.
  • client node can connect to Internet.
  • infrastructure mode usually installed at a fixed location.
  • the preferred embodiment of the present invention uses multiple access points in infrastructure mode to indicate the location in proximity.
  • Each access point has an identifier in the data link layer of a network protocol. Said network protocol is defined in ISO OSI network protocol reference model.
  • said data link layer might include a media access control sub layer protocol and said identifier is a media access control (MAC) address, for example BSSID in IEEE802.11 protocol, or a service set identifier (SSID) of said access point in a IEEE802.i l protocol, or Cell_ID of base station in GSM network.
  • Said access point might complied with any proprietary or industrial standard wireless communication protocols, such as IEEE802.11 a/b/g, GSM, GPRS, CDMA, BlueTooth, etc.
  • WCI wireless communication interface
  • a WCI usually implements at least the physical layer and Media Access Control (MAC) sub layer protocol stacks.
  • Said WCI intercepts or scans the message on wireless media and decode one or more identifiers in MAC sub layer or data link layer data frame.
  • User might use a mobile computer, such as notebook computer, personal digital assistant (PDA), or wireless phone, that integrate with multiple WCIs with different communication protocols to detect different type of access points.
  • PDA personal digital assistant
  • FIG. 1 illustrates an example of a programmed computer 0100 (hereafter "System") for storing and retrieving information relating to access points in accordance with some embodiments of the present invention.
  • the System 0100 is generally implemented using any conventional general-purpose computer having conventional computer components, including at least one processor 0101, program memory 0102, a communication device 0103, and a database 0104 for storing the information of access points.
  • the System 0100 further includes at least one geo-coded database 0105 for storing the location-based information relating to the search objects.
  • the System 0100 is programmed with system application program 0106 (the program is illustrated for purposes of simplicity as loaded in program memory 0102) causing the System 0100 to operate as an information server implementing the various processes of the present invention.
  • Said database 0104 stores the information related to access points.
  • the information related to an access point includes the identity of the access point and the proximity relationship to other access point in said database 0104.
  • the identity might include the identifier of the access point in a communication protocol and the type of the protocol.
  • the identifier of an access point might be the communication node identifier in a communication protocols, for example media access control address or Cell_ID. Every access point has an operation range that might be different from others or other type of access point. For example, standard IEEE802.11 b access point is 300 foot and GSM base station operational range is couple miles.
  • the operation ranges of two access points are overlapping if said identification information from two access points can be detect on wireless media at the same location or about the same time.
  • Each access point in said database 0104 can further associate with other information in proximity.
  • the information related to an access point in said database 0104 can be indexed by using the identification information of the access point.
  • User of the present invention detects the multiple identities of access points and send them to system 0100 for indicating a location and further access to the location-based information related to the location.
  • the multiple identities usually identify one or more close related access points and the proximity relationships between them. However, old access point might be shut down or moved and new access point may be installed without notice.
  • the information related to access point in said database 0104 might not be up to date.
  • the present invention uses the received identity to index the known access point in the AP database 0104.
  • the access point that cannot be indexed in said database 0104 by using a received identity is a new access point.
  • the present invention further verifies the proximity relationship, such as operation range overlapping relationship, distance, and traveling time, between said known access points in said database 0104.
  • the proximity relationship between two access points can be indexed in said database 0104 by given identities of said two access points. Since multiple access points seldom moved from one location to another together. If one of the known access point is moved to the user's position recently, the proximity relationship between this access point to other known access point might not be known by said database 0104. Therefore, the more known proximity relationships to other known access points found in said database 0104, the more reliable the known access point is.
  • FIG 2 shows five access points, AP 0201 to 0205, have operation range overlapping at location 0206.
  • AP 0201 is a GSM base station and AP 0202 to 0205 are IEEE 802.1 lb access points.
  • User 0207 has a PDA with both GSM modem and IEEE 802.11b network interface card.
  • the GellJD ID21 of AP 0201 and MAC address ID22 to ID25 of AP 0202 to 0205 are detected at location 0206.
  • the identities of said multiple access points are GSM Cell_ID ID21, IEEE802.11 MAC address ID22, ID23, ID24, and ID25.
  • User sends the identity of multiple APs to a computer 0207 with search criteria for querying 3 nearby post offices. Since AP 0202 is a new access point, MAC address ID22 cannot index to any access point record in AP database 0208.
  • AP 0203 is moved to location 0206 just recently, therefore, no operation range overlapping relation between AP 0203 and any of AP 0201, 0204, and 0205 is found in the database 0208.
  • Three pairs of operation range overlapping relationships, (AP 0201, AP 0204), (AP 0201, AP 0205), and (AP 0204, AP 0205) are found in the database 0208. Therefore, each of AP 0201, 0204, and 0205 has two known operation range overlapping relationships to two other known access points in the database 0208. Since IEEE802.11b has smaller operation range than GSM base station, the embodiment selects AP 0204 and 0205.
  • AP 0204 belongs to reliable hot-spot operator and is chosen as representative AP.
  • AP 0204 locates at certain GPS coordinates.
  • computer 0207 query geo-coded database 0209 with said GPS coordinates and said search criteria.
  • the search criteria might further describes the geographic search area nearby the coordinates.
  • Computer 0207 further annotate found post offices on a map and send the map to the user.
  • location-based information directly associates with access point records in database 0208.
  • computer 0207 might first visit the representative AP 0204, then other APs that are direct or indirectly connected to AP 0204 until the requested amount of information is found.
  • the embodiment might also go directly to a larger operation range AP, for example AP 0201, to collect location-based information. Since said AP database is not always up to date and the received information may suggest or imply the updated information of access point.
  • the present invention can further use the received information to update said database 0104.
  • AP 0202 is new to said database 0208.
  • the preferred embodiment creates a new access point record with identification information IEEE802.i l MAC address ID22 and creates operation range overlapping relationships to each record of AP 0201, 0203, 0204, and 0205.
  • the information of AP 0203 is out of date in database 0104.
  • the preferred embodiment also creates operation range overlapping relationships with each record of AP 0201, 0202, 0204, and 0205. Since the received information is not highly trustable, the present invention might further associate statistic information, for example a reliability score, with the newly created AP record and its operation range overlapping relationship. Said statistic information counts the number of location references that implies such relationship between access points.
  • the new information might not be publish or used as known information until said statistic information satisfies with certain value, for example 50 inquires.
  • the embodiment might decrease said statistic information of the outdated AP, for example AP 0203, and decide to move into unreliable category when said statistic information is lower than certain value.
  • FIG 3 shows three APs, AP 0301, 0302, and 0303, in proximity to Userl .
  • Userl intends to search for nearby restaurants by pressing a special programmed function key on his Personal Digital Assistant (PDA) that includes an IEEE 802.11b wireless interface card. After pressing the key, the wireless interface card scan for BSSID of nearby APs. At user's location, the identifiers, ID31 of AP 0301, ID32 of AP 0302, and ID33 of AP 0303 are detected. The PDA establishes a connection to AP 0301 through said wireless interface card.
  • PDA Personal Digital Assistant
  • AP 0301 is connected to a computer system of the present invention through the Internet.
  • PDA then send the detected identifiers to the computer through AP 0301.
  • Said system receives ID31, ID32, and ID33 and retrieves their locations, Loc31, Loc32, and Loc33 respectively, from the AP database.
  • AP 0303 is moved to user's current location recently from a previous location Loc33 that is currently stored in the AP database. Therefore, Loc31 is closed to Loc32 within 30 meters distance but Loc33 is 2000 meters far away from either Loc31 or Loc33. For the locations that are less than 50 meters apart, put them in a group. These locations, therefore, are divided into two groups, Gl and G2.
  • Gl includes Loc31 and Loc32.
  • G2 includes Loc33.
  • Computer picks the largest group Gl and ignores G2.
  • a location Loc34 between Loc31 and Loc32, is then choosing as the representative location.
  • Computer queries a geo-coded database with search criteria for the restaurant and a search area that is 1 mile from the location Loc34. The query results are then send back to userl .
  • the embodiment creates two the operation range overlapping proximity relationship (AP 0303, AP 0302) and (AP 0303, AP 0301). The reliability score of the location of AP 0303 is therefore reduced.
  • FIG 4 shows multiple IEEE802. l ib APs, 0401 , 0402, 0403, 0404, and 0405, along a road and user2 drives on the road.
  • User2 intends to search for gas stations nearby by speaking a voice command to a GPRS wireless phone that is integrated with an IEEE802.1 lb wireless network interface. After giving the command, the identifiers ID41 of AP 0401, ID42 of AP 0402, ID43 of
  • AP 0403, ID44 of AP 0404, ID45 of AP 0405 are detected along the road by the wireless network interface.
  • the GPRS wireless phone is connect to Internet through GPRS phone network. Therefore, the detected identifiers are transmitted to a computer through GPRS network and the
  • Loc43 for AP0403, and Loc44 for AP 0404, from the AP database Since, AP 0405 is a recently moved from a previous location Loc45 that is currently stored in the AP database.
  • the distance between Loc41 and Loc42 is 20 meters.
  • the distance between Loc43 and Loc44 is 30 meters.
  • the distance between Loc42 and Loc43 is 250 meters.
  • To group locations that are less than 100 meters apart, Loc41 and Loc42 are assigned to group G41.
  • Loc43 and Loc44 are assigned to group G42.
  • Loc45 is assigned to group G43.
  • the groups that are 400 meters apart are put in the same partition.
  • G43 is 2000 meters away from both G41 and G42 and G41 is partitioned into partition P41.
  • the distance between G41 and G42 is about 250 meters and are partitioned into partition P42. Since P42 is largest partition, the location of P42 is the final location. The location of P42 is Loc41 that is the location of the first identifier in the receiving sequence.
  • the computer further queries a geo-coded database for retrieving gas stations in proximity to Loc41. Then, the computer returns the query result back to user2. Computer can further query a map database to retrieve the nearby street map, annotates found gas stations on the map, and returns the map to user2.
  • user also sends the last detecting time stamp T41, T42, T43, T44, and T45 of ID41, ID42, ID43, ID44, ID45 respectively to the computer. Since the traveling time between access points indicates a proximity relationship. If the traveling time between two known access points is less than or close to the average traveling time between the access points in the AP database, the traveling time proximity relationship is known. For example, traveling time proximity relationship from AP 0401 and AP o402 is known if the safety minimum traveling time between AP 0401 and AP o402 in AP database is 20 seconds that is close to (T42 - T41), 25 seconds.
  • the embodiment finds that the traveling time proximity relationships form AP 0402 to AP0403 and from AP 0403 to AP 0404 are known.
  • the safety minimum traveling time from AP 0404 to AP 0405 is 2000 seconds in AP database that is many times larger than (T45 - T44). Therefore, the proximity relationship from AP 0404 to AP 0405 is unknown relationship.
  • the embodiment partitions the known access points connected by known proximity relationships into same group. For example, AP 0401, AP 0402, AP 0403, and AP 0404 are in a group and AP 0405 is in another group.
  • the embodiment selects the AP with latest detecting time as representative AP, for example AP 0404, in the largest group.
  • the embodiment can determine the traveling speed or velocity of the user. For example, user travels from Loc41 at T41 to Loc44 at T44. The average velocity between Loc41 and Loc44 is (Loc44 - Loc41)/(T44 - T41). After more users access location based information, the embodiment can calculate the average traveling time or speed between access points. The traffic congestion situation can also be determined by the ratio of average traveling time to the minimum safety traveling time or the average speed to maximum safety driving speed. Therefore, the system can construct road traffic database.
  • FIG. 5 shows the operation flow of an embodiment of the System 0100, according to some embodiments of the present invention.
  • the process starts from stage 0501.
  • System 0100 receives the first information from a user.
  • the first information includes the multiple identities of access points.
  • the first information might further include timestamps that indicate when the identities are detected.
  • stage 0503 find the proximity relationship between the access points selected in stage 0502 that is known by the AP database 0104. Then, select one or more access points based on the known proximity relationships, for example the largest group of access points that are connected by the known proximity relationships. Determine a representative location from the group of access points.
  • update database 0104 according to received first information, for example store the identity of the access point that is filtered out in stage 0502 and update the proximity relationship that is not known by database 0104.
  • stage 0505 If the information includes detecting timestamp, go to stage 0505. Otherwise, bypass stage 0505.
  • stage 0505 calculate the traveling time between access points from received information and update the average traveling time between access points in database 0104. If the locations of access points are known, the speed or velocity between two access points selected in stage 0503 can be calculated and stored into database 0105 or a traffic database.
  • stage 0506 If user needs location-based information in proximity to the representative location, go to stage 0506. Otherwise, bypass stage 0506.
  • search geo-coded database 0105 In stage 0506, search geo-coded database 0105, according to a default or user provided search criteria, for the information that is in proximity to the representative location or one or more access points selected in stage 0503 and output the search result to user.
  • FIG. 6 shows a computer graph representation of the AP database in an embodiment of the present invention.
  • a node in the graph includes a group of one or more access points and their communication protocol, and the representative location coordinates of the node.
  • a node is detected if certain number of its member access point is detected. Each node might have directional edge to other nodes.
  • the direction of the edge between two nodes represents a user could detect the "from node” of the edge before detecting the "to node” of the edge.
  • the property of each edge includes the safety minimum traveling time, operation range overlapping flag, O (overlap) and N (non-overlap), and the current average traveling time with the number of current reports. It might further contain other property, such as travel distance.
  • the safety minimum traveling time is the distance divided by the maximum speed limit.
  • the current average traveling time is a statistic traveling time within certain period of time, for example 10 minutes from now.
  • FIG 7 shows an updated computer graph representation after receiving the following information.
  • a user send the following information, (ID0601, 15:03:39), (ID0602, 15:06:35), (ID0603, 15:06:39), and (ID0604, 15:06:40) to the system.
  • the graph has a new node ND0604, with identifier ID0604 and default protocol 802.11b.
  • the location of ND0604 is unknown to previous graph.
  • It also has a new edge EG0304 from node ND0603 to node ND0604.
  • the EG0304 is considered operation range overlapped because the traveling time between nodes is very short. Since it is first detected, the edge has current traveling time 1 second.
  • the current average traveling time of EG0203 is changed to 15 seconds and the number of current reports becomes to 12.
  • the ratio of the current average traveling time to the safety minimum traveling time of an edge indicates the traffic congestion condition between two nodes.
  • the AP database further stores the location history of access point.
  • the location history records the location changes of an access point during its lifetime.
  • the location of an access point at a specific time can be retrieved by given the identifier and the detect time of the access point.
  • a representative location can be determined even if the identities of access points are detected before their latest location change. Therefore, user can query for the street address by giving previous detected identities of access points and the detecting time of them. User might also request to receive identities of current access points in proximity to the representative location.
  • user updates its current location by sending multiple identities of access points with/without the detecting timestamps and server of present invention automatically search the information, for example sale information, at nearby and then send to user.
  • server of present invention automatically search the information, for example sale information, at nearby and then send to user.
  • the user's preference can be stored in server in advance.
  • the present invention can be use to track a user's movement.
  • User sends user's identity plus the multiple identities of access points detected along his movement with the detecting timestamps to server.
  • the server determines the representative location from the received information and then updates user's current location with the representative location in a database. Later, user or other person can access to the user's location in the database with certain authorization checking for reason of user's privacy protection.
  • user can further send the detected signal strength of detected access point to the server.
  • the server can further accurate determine the location of user or even the location of a new access point by using triangulation method.
  • the present invention uses identifiers of multiple wireless access points, for example MAC address, to identifying a location.
  • the present invention verifies said multiple access points by using the proximity relation, for example the operation range overlapping relationship, the distance or the average traveling time between access points.
  • the present invention selects one or more representative access point or representative location.
  • the present invention might search for location-based information according to search criteria and in proximity to the representative access point or representative location.
  • AP database might further use information in user's inquiry to update database itself.
  • the present invention might maintain location history of access point and provide exchange service that exchanges a set of old identification information of access points with a set of new identification information at the same location.
  • the system of present invention can be install within a network server that connect remotely with mobile client or directly install in mobile client.

Abstract

A system and method receives multiple identities of wireless access points, for example MAC address, and detecting timestamps of them to identifying a location. The present invention verifies the proximity relationship of multiple access points by using the proximity relationship in an access point database, for example the operation range overlapping relationship, the distance, or the safety minimum traveling time between access points. After verification, the present invention selects one or more representative access point. Then, the present invention might search a geo-coded database for location-based information in proximity to the representative access point or its nearby location according to certain search criteria and return to user. The present invention might associate user provided information to the representative access point or its nearby location in the geo-coded database. The present invention further uses the received information to update access point database, including store new identifier, updating the proximity relationship between access points, and calculating the traveling speed between access points for constructing and updating a road traffic database. The present invention might further maintain location history of access points and provide exchange service that exchanges a set of old identification information of access points with a set of new identification information at the same location. The system of present invention can be install within a network server that connect remotely with mobile client or directly install in mobile client.

Description

SYSTEM AND METHOD FOR DETERMINING A LOCATION BY USING MULTIPLE IDENTIFIERS OF WIRELESS ACCESS POINTS
Background-Field of Invention
This invention relates to a system and method for determining a location by using identifiers of multiple wireless access points. Application can further use the location to accessing location- based information, update wireless access point database, and generate traffic database.
Background—Description of Prior Art
Many location based applications on mobile computer system use Global Position System (GPS) receiver to locate user's position and search for certain information that is related to the position. The geographical related information is stored in a geo-coded database and linked to user's computer by an Internet connection. User describes the search criteria and query said database through the Internet connection. The criteria include user's position, searching area around the position, and other criteria for searching objects. Therefore, only the specifying information at specified location is returned to user. However, GPS receiver is extra cost to user's mobile device in terms of price and power consumption.
Similar to GPS using triangular method, a wireless communication device detects the identifiers (for example, BSSID in IEEE 802.11 protocol) of nearby WLAN access points and their signal strength. Then, use the identifiers to look for the locations of said access points in a database and use their signal strength to estimate the distance between the wireless communication device and access points. Using triangular method, the location of the mobile device is then determined by the locations of the access points and their distances to the access points. However, this method needs calibration to determining the relation between distance and signal strength. This method is good for indoors because those access points are reliable and seldom moved without notice, most of the area covers by multiple access points, and come from known manufacture (therefore, the relation between distance and signal strength is predictable). However, this method is not practical for outdoors or large open space where access points are sparse and not reliable because they may be moved or shut down without notice. Sparse makes the triangulation does not work and the location of access point will seldom up to date.
Instead of specifying a precise location, such as GPS coordinates, a wireless phone might use the identifier of a nearby cellular phone base station (hereafter Cell_ID) to specify a proximity location. Using the Cell_ID, the location of the base station can be determined by looking up a database. Since most of the base station has a high power antenna and setup at a fixed location. The base station provides very reliable position information. However, a base station covers a large area, for example several miles. Using a Cell_ID cannot precisely determine the location of the wireless phone handset. Using the media access control (MAC) address of an IEEE802.1 lb access point with small operation range might be able to identify a smaller area at where the handset is located. However, the smaller operation range wireless access point is easy to setup, move, and shut down. Therefore, smaller operation range wireless access point is less reliable for identify the location of the handset.
Summary of the Invention
A system and method is provided for cross verification of multiple wireless access points (hereafter access point) by using the known proximity relationship. The present invention might further query or provide location-based information in proximity to one or more verified access points. The present invention includes a computer and an access point database (hereafter AP database). For each access point, said database stores its identify and its proximity relationship to other access points. The proximity relationship between access points might include operation range overlapping indication, distance, traveling time, and visiting order, etc. Said identify includes the identifier of the access point, and might further include the type of the communication protocol if the database contains access points in different communication protocols. The identifier can be detected from signal on wireless media. To indicate a location, user sends detected information of multiple access points, which may be complied with different protocol, to said computer. The detected information includes the identities of the multiple access points and might also include the detecting timestamp of the access points. Since access point might be setup, moved, or shut down without notice. Since that, the present invention separates the received information into two parts, known and unknown information by said database. From the known information, the present invention determines the representative location. The present invention then uses the unknown information to update the database. If there is a information search criteria provided by either the system default or the user, the present invention search the information that is in proximity to the representative location. If user provides extra information to associate with the representative location, the present invention stores the extra information to a geo-coded database and links it with the representative location.
To separate know and unknown information, the present invention use the information in the AP database. If a received identity can index to an access point in the AP database, it is known access point. There are many proximity relationships between known access points. If no detecting timestamp is received, the present invention might consider that the known access points are detected at the same time and check the operation range overlapping relationship between them in AP database. An operation range overlapping relationship is known if it can be indexed in the AP database. If the detecting timestamps are received, the traveling time between detecting two known access points can be determined. If this traveling time is under or close to the traveling time stored in the AP database, the traveling time proximity relationship is known. If the location, for example GPS coordinates, of the known access points are known, the distance between them can be determined. If the identities of multiple access points are detected in certain sequence within a short period of time, the known access points are considered close to each other. If the distance between two known access points is under certain reasonable limit, the distance proximity relationship between them is known. The reasonable limit, for example, can be the distance that a user can travel under safety driving speed within that short period of time.
The known access points in above that have known proximity relationship between them can be grouped together. The present invention selects the group that contains largest number of known access points. In one embodiment of the present invention, the average location of the known access point in the selected group is the representative location. In another embodiment, the representative location is the location of access point that is the last one according to the receiving order or is last detected according to the detecting timestamp. The selection of representative location may also be affected by certain other factors, for example select the access point that has smaller operation range for accuracy reason or select the access point that is known to be reliable, for example public hot spot access points.
The unknown information is useful information for updating the AP database. The present invention stores the information of unknown access point in the AP database, including the identity and the proximity relationships to other known or unknown access points, for example overlapping relationship and/or traveling time, etc. However, the new information may not be reliable. In order to keep the impact of unreliable information as low as possible, an embodiment keeps a statistic count for each element of the new information, i.e. the identify and proximity relationships. Said count increases once if the new information is indicated in another information query or upload. The embodiment may not publish said new information, for example used for determine the known information, until said count reaching certain number.
For a local information upload, the present invention stores the user provided information in the geo-coded database and associates it with the representative location or the representative known access point. For a local information query, the present invention searches the information in proximity to the representative location in a geo-code database. The information in the geo- coded database, for example, includes a street address, a street map, a merchant, a store, a service, merchandise, a thing, an event, a person, or a road/traffic condition, etc. Each of the information might associate with certain access point in AP database or certain location, such as GPS coordinates. When searching the geo-coded database, it might base on certain criteria, default or user provided, for example the characteristic of information and the radius to the representative location. In another embodiment, without using geographic coordinates, it might search the information associated with the representative access point and/or the other access points that has proximity relationship direct or indirect connected with the representative access point. The present invention can determine the traffic congestion condition between access points by observing the average traveling time or traveling speed between the access points reported from multiple users. This information can be stored in the geo-coded database.
In another embodiment, said AP database stores location history of access points. The location history of an access point includes multiple locations of the access point at different times. With the location history, the previous location of an access point can be found. When receiving one or more identifiers of access points and the detecting times of them, the present invention find their locations at specified detecting time, and use previous described proximity relationship verification method to determine a final location or its street address. The present invention might further search for location-based information in proximity to said final location. The embodiment can also provide an identifier exchange service that receives one or more identifiers detected in previous time at certain location and output one or more identifiers in the same location in current time.
Drawing Figures
A system and method for accessing geographical related object by using multiple identifiers of access points is provided. In the following description, for purpose of explanation, numerous of specific details are set forth in order to provide a thorough understanding of the present invention.
FIG. 1 shows a computer system compatible with some embodiments of the present invention.
FIG. 2 shows a user use a PDA with an IEEE802.11b wireless network interface to collect identifiers of nearby APs at a fix location. FIG. 3 shows a user use a PDA with an IEEE802.11b wireless network interface to collect identifiers of nearby APs while driving on the road.
FIG. 4 shows a user is driving and detects multiple identifiers of access points along the road.
FIG. 5 shows the operation flow of present invention.
FIG. 6 shows the graph representation of the AP database
FIG. 7 shows the updated graph representation of the AP database
Description
As used herein, a "search object" refers to an object for which a user seeks information and which is geographically located in an area specified by the user. A search object typically includes a piece of a thing, a service, an event, a person, a street address, a street map, a merchant, a merchandise, or a road/traffic condition, etc.
In general, access point is a communication node that wirelessly communicates with multiple client nodes. Access point might operate in two modes, infrastructure mode and Ad-hoc mode. In infrastructure mode, an access point bridges the wireless media to wire media, therefore, client node can connect to Internet. Since connecting to wire media, an access point in infrastructure mode usually installed at a fixed location. The preferred embodiment of the present invention uses multiple access points in infrastructure mode to indicate the location in proximity. Each access point has an identifier in the data link layer of a network protocol. Said network protocol is defined in ISO OSI network protocol reference model. For example, said data link layer might include a media access control sub layer protocol and said identifier is a media access control (MAC) address, for example BSSID in IEEE802.11 protocol, or a service set identifier (SSID) of said access point in a IEEE802.i l protocol, or Cell_ID of base station in GSM network. Said access point might complied with any proprietary or industrial standard wireless communication protocols, such as IEEE802.11 a/b/g, GSM, GPRS, CDMA, BlueTooth, etc. User uses a wireless communication interface (WCI) to detect access points in nearby. A WCI usually implements at least the physical layer and Media Access Control (MAC) sub layer protocol stacks. Said WCI intercepts or scans the message on wireless media and decode one or more identifiers in MAC sub layer or data link layer data frame. User might use a mobile computer, such as notebook computer, personal digital assistant (PDA), or wireless phone, that integrate with multiple WCIs with different communication protocols to detect different type of access points.
FIG. 1 illustrates an example of a programmed computer 0100 (hereafter "System") for storing and retrieving information relating to access points in accordance with some embodiments of the present invention. The System 0100 is generally implemented using any conventional general-purpose computer having conventional computer components, including at least one processor 0101, program memory 0102, a communication device 0103, and a database 0104 for storing the information of access points. In one embodiment, the System 0100 further includes at least one geo-coded database 0105 for storing the location-based information relating to the search objects. In some embodiments, the System 0100 is programmed with system application program 0106 (the program is illustrated for purposes of simplicity as loaded in program memory 0102) causing the System 0100 to operate as an information server implementing the various processes of the present invention.
Said database 0104 stores the information related to access points. The information related to an access point includes the identity of the access point and the proximity relationship to other access point in said database 0104. The identity might include the identifier of the access point in a communication protocol and the type of the protocol. The identifier of an access point might be the communication node identifier in a communication protocols, for example media access control address or Cell_ID. Every access point has an operation range that might be different from others or other type of access point. For example, standard IEEE802.11 b access point is 300 foot and GSM base station operational range is couple miles. The operation ranges of two access points are overlapping if said identification information from two access points can be detect on wireless media at the same location or about the same time. Each access point in said database 0104 can further associate with other information in proximity. The information related to an access point in said database 0104 can be indexed by using the identification information of the access point. User of the present invention detects the multiple identities of access points and send them to system 0100 for indicating a location and further access to the location-based information related to the location. The multiple identities usually identify one or more close related access points and the proximity relationships between them. However, old access point might be shut down or moved and new access point may be installed without notice. The information related to access point in said database 0104 might not be up to date. The present invention uses the received identity to index the known access point in the AP database 0104. The access point that cannot be indexed in said database 0104 by using a received identity is a new access point. The present invention further verifies the proximity relationship, such as operation range overlapping relationship, distance, and traveling time, between said known access points in said database 0104. The proximity relationship between two access points can be indexed in said database 0104 by given identities of said two access points. Since multiple access points seldom moved from one location to another together. If one of the known access point is moved to the user's position recently, the proximity relationship between this access point to other known access point might not be known by said database 0104. Therefore, the more known proximity relationships to other known access points found in said database 0104, the more reliable the known access point is. FIG 2 shows five access points, AP 0201 to 0205, have operation range overlapping at location 0206. AP 0201 is a GSM base station and AP 0202 to 0205 are IEEE 802.1 lb access points. User 0207 has a PDA with both GSM modem and IEEE 802.11b network interface card. The GellJD ID21 of AP 0201 and MAC address ID22 to ID25 of AP 0202 to 0205 are detected at location 0206. The identities of said multiple access points are GSM Cell_ID ID21, IEEE802.11 MAC address ID22, ID23, ID24, and ID25. User sends the identity of multiple APs to a computer 0207 with search criteria for querying 3 nearby post offices. Since AP 0202 is a new access point, MAC address ID22 cannot index to any access point record in AP database 0208. AP 0203 is moved to location 0206 just recently, therefore, no operation range overlapping relation between AP 0203 and any of AP 0201, 0204, and 0205 is found in the database 0208. Three pairs of operation range overlapping relationships, (AP 0201, AP 0204), (AP 0201, AP 0205), and (AP 0204, AP 0205) are found in the database 0208. Therefore, each of AP 0201, 0204, and 0205 has two known operation range overlapping relationships to two other known access points in the database 0208. Since IEEE802.11b has smaller operation range than GSM base station, the embodiment selects AP 0204 and 0205. AP 0204 belongs to reliable hot-spot operator and is chosen as representative AP. AP 0204 locates at certain GPS coordinates. Therefore, computer 0207 query geo-coded database 0209 with said GPS coordinates and said search criteria. The search criteria might further describes the geographic search area nearby the coordinates. Computer 0207 further annotate found post offices on a map and send the map to the user. In another embodiment, location-based information directly associates with access point records in database 0208. To collect location-based information, computer 0207 might first visit the representative AP 0204, then other APs that are direct or indirectly connected to AP 0204 until the requested amount of information is found. The embodiment might also go directly to a larger operation range AP, for example AP 0201, to collect location-based information. Since said AP database is not always up to date and the received information may suggest or imply the updated information of access point. The present invention can further use the received information to update said database 0104. For example, AP 0202 is new to said database 0208. The preferred embodiment creates a new access point record with identification information IEEE802.i l MAC address ID22 and creates operation range overlapping relationships to each record of AP 0201, 0203, 0204, and 0205. The information of AP 0203 is out of date in database 0104. The preferred embodiment also creates operation range overlapping relationships with each record of AP 0201, 0202, 0204, and 0205. Since the received information is not highly trustable, the present invention might further associate statistic information, for example a reliability score, with the newly created AP record and its operation range overlapping relationship. Said statistic information counts the number of location references that implies such relationship between access points. The new information might not be publish or used as known information until said statistic information satisfies with certain value, for example 50 inquires. Similarly, the embodiment might decrease said statistic information of the outdated AP, for example AP 0203, and decide to move into unreliable category when said statistic information is lower than certain value.
Instead of using operation range overlapping relationship to verify access point, some embodiments of the present invention might use the distance between access points to verify access points. FIG 3 shows three APs, AP 0301, 0302, and 0303, in proximity to Userl . Userl intends to search for nearby restaurants by pressing a special programmed function key on his Personal Digital Assistant (PDA) that includes an IEEE 802.11b wireless interface card. After pressing the key, the wireless interface card scan for BSSID of nearby APs. At user's location, the identifiers, ID31 of AP 0301, ID32 of AP 0302, and ID33 of AP 0303 are detected. The PDA establishes a connection to AP 0301 through said wireless interface card. AP 0301 is connected to a computer system of the present invention through the Internet. PDA then send the detected identifiers to the computer through AP 0301. Said system receives ID31, ID32, and ID33 and retrieves their locations, Loc31, Loc32, and Loc33 respectively, from the AP database. AP 0303 is moved to user's current location recently from a previous location Loc33 that is currently stored in the AP database. Therefore, Loc31 is closed to Loc32 within 30 meters distance but Loc33 is 2000 meters far away from either Loc31 or Loc33. For the locations that are less than 50 meters apart, put them in a group. These locations, therefore, are divided into two groups, Gl and G2. Gl includes Loc31 and Loc32. G2 includes Loc33. Computer then picks the largest group Gl and ignores G2. A location Loc34, between Loc31 and Loc32, is then choosing as the representative location. Computer then queries a geo-coded database with search criteria for the restaurant and a search area that is 1 mile from the location Loc34. The query results are then send back to userl . To update the AP database, the embodiment creates two the operation range overlapping proximity relationship (AP 0303, AP 0302) and (AP 0303, AP 0301). The reliability score of the location of AP 0303 is therefore reduced.
FIG 4 shows multiple IEEE802. l ib APs, 0401 , 0402, 0403, 0404, and 0405, along a road and user2 drives on the road. User2 intends to search for gas stations nearby by speaking a voice command to a GPRS wireless phone that is integrated with an IEEE802.1 lb wireless network interface. After giving the command, the identifiers ID41 of AP 0401, ID42 of AP 0402, ID43 of
AP 0403, ID44 of AP 0404, ID45 of AP 0405 are detected along the road by the wireless network interface. The GPRS wireless phone is connect to Internet through GPRS phone network. Therefore, the detected identifiers are transmitted to a computer through GPRS network and the
Internet in the sequence of ID41, ID42, ID43, ID44, and then ID45. The computer then finds all access points are known and retrieves their locations, Loc41 for AP 0401, Loc42 for AP 0402,
Loc43 for AP0403, and Loc44 for AP 0404, from the AP database. Since, AP 0405 is a recently moved from a previous location Loc45 that is currently stored in the AP database. The distance between Loc41 and Loc42 is 20 meters. The distance between Loc43 and Loc44 is 30 meters. The distance between Loc42 and Loc43 is 250 meters. To group locations that are less than 100 meters apart, Loc41 and Loc42 are assigned to group G41. Loc43 and Loc44 are assigned to group G42. Loc45 is assigned to group G43. To further partition groups, the groups that are 400 meters apart are put in the same partition. G43 is 2000 meters away from both G41 and G42 and G41 is partitioned into partition P41. The distance between G41 and G42 is about 250 meters and are partitioned into partition P42. Since P42 is largest partition, the location of P42 is the final location. The location of P42 is Loc41 that is the location of the first identifier in the receiving sequence. The computer further queries a geo-coded database for retrieving gas stations in proximity to Loc41. Then, the computer returns the query result back to user2. Computer can further query a map database to retrieve the nearby street map, annotates found gas stations on the map, and returns the map to user2.
In another embodiment, user also sends the last detecting time stamp T41, T42, T43, T44, and T45 of ID41, ID42, ID43, ID44, ID45 respectively to the computer. Since the traveling time between access points indicates a proximity relationship. If the traveling time between two known access points is less than or close to the average traveling time between the access points in the AP database, the traveling time proximity relationship is known. For example, traveling time proximity relationship from AP 0401 and AP o402 is known if the safety minimum traveling time between AP 0401 and AP o402 in AP database is 20 seconds that is close to (T42 - T41), 25 seconds. Similar, the embodiment finds that the traveling time proximity relationships form AP 0402 to AP0403 and from AP 0403 to AP 0404 are known. However, the safety minimum traveling time from AP 0404 to AP 0405 is 2000 seconds in AP database that is many times larger than (T45 - T44). Therefore, the proximity relationship from AP 0404 to AP 0405 is unknown relationship. The embodiment partitions the known access points connected by known proximity relationships into same group. For example, AP 0401, AP 0402, AP 0403, and AP 0404 are in a group and AP 0405 is in another group. The embodiment selects the AP with latest detecting time as representative AP, for example AP 0404, in the largest group. Since traveling time proximity relationship from AP 0404 to AP 0405 is unknown, the embodiment reduces the reliability score of the AP 0405 and score of the proximity relationship from AP 0404 to AP 0405. With the traveling time, the embodiment can determine the traveling speed or velocity of the user. For example, user travels from Loc41 at T41 to Loc44 at T44. The average velocity between Loc41 and Loc44 is (Loc44 - Loc41)/(T44 - T41). After more users access location based information, the embodiment can calculate the average traveling time or speed between access points. The traffic congestion situation can also be determined by the ratio of average traveling time to the minimum safety traveling time or the average speed to maximum safety driving speed. Therefore, the system can construct road traffic database. In another application of the present invention, user might sent multiple identities of access points with the detecting timestamps plus a destination description to a server. The server identifies user's traveling speed and updates its traffic database, find a new route to avoid nearby traffic jam, and then send the new route back to user. FIG. 5 shows the operation flow of an embodiment of the System 0100, according to some embodiments of the present invention. The process starts from stage 0501. In stage 0501, System 0100 receives the first information from a user. The first information includes the multiple identities of access points. The first information might further include timestamps that indicate when the identities are detected. In stage 0502, filter out the access point that cannot be indexed in AP database 0104 by using the identities.
In stage 0503, find the proximity relationship between the access points selected in stage 0502 that is known by the AP database 0104. Then, select one or more access points based on the known proximity relationships, for example the largest group of access points that are connected by the known proximity relationships. Determine a representative location from the group of access points.
In stage 0504, update database 0104 according to received first information, for example store the identity of the access point that is filtered out in stage 0502 and update the proximity relationship that is not known by database 0104.
If the information includes detecting timestamp, go to stage 0505. Otherwise, bypass stage 0505.
In stage 0505, calculate the traveling time between access points from received information and update the average traveling time between access points in database 0104. If the locations of access points are known, the speed or velocity between two access points selected in stage 0503 can be calculated and stored into database 0105 or a traffic database.
If user needs location-based information in proximity to the representative location, go to stage 0506. Otherwise, bypass stage 0506.
In stage 0506, search geo-coded database 0105, according to a default or user provided search criteria, for the information that is in proximity to the representative location or one or more access points selected in stage 0503 and output the search result to user.
If the user provides the second information for associate it with the representative location or the one or more access points selected in stage 0503, go to stage 0507. Otherwise, go to stage 0501. In stage 0507, store the second information in database 0105 and associate it to the representative location or the one or more access points selected in stage 0503. Go to stage 0501. FIG. 6 shows a computer graph representation of the AP database in an embodiment of the present invention. A node in the graph includes a group of one or more access points and their communication protocol, and the representative location coordinates of the node. A node is detected if certain number of its member access point is detected. Each node might have directional edge to other nodes. The direction of the edge between two nodes represents a user could detect the "from node" of the edge before detecting the "to node" of the edge. The property of each edge includes the safety minimum traveling time, operation range overlapping flag, O (overlap) and N (non-overlap), and the current average traveling time with the number of current reports. It might further contain other property, such as travel distance. The safety minimum traveling time is the distance divided by the maximum speed limit. The current average traveling time is a statistic traveling time within certain period of time, for example 10 minutes from now. FIG 7 shows an updated computer graph representation after receiving the following information. A user send the following information, (ID0601, 15:03:39), (ID0602, 15:06:35), (ID0603, 15:06:39), and (ID0604, 15:06:40) to the system. The graph has a new node ND0604, with identifier ID0604 and default protocol 802.11b. The location of ND0604 is unknown to previous graph. It also has a new edge EG0304 from node ND0603 to node ND0604. The EG0304 is considered operation range overlapped because the traveling time between nodes is very short. Since it is first detected, the edge has current traveling time 1 second. The current average traveling time of EG0203 is changed to 15 seconds and the number of current reports becomes to 12. The ratio of the current average traveling time to the safety minimum traveling time of an edge indicates the traffic congestion condition between two nodes.
In another embodiment of the present invention, the AP database further stores the location history of access point. The location history records the location changes of an access point during its lifetime. The location of an access point at a specific time can be retrieved by given the identifier and the detect time of the access point. A representative location can be determined even if the identities of access points are detected before their latest location change. Therefore, user can query for the street address by giving previous detected identities of access points and the detecting time of them. User might also request to receive identities of current access points in proximity to the representative location. To access information on Internet, there are two type of techniques, push and pull. The previous described query example shows the pull technique that user describes what information is needed and server search for it and returns to user. In push technique, user updates its current location by sending multiple identities of access points with/without the detecting timestamps and server of present invention automatically search the information, for example sale information, at nearby and then send to user. In push technique; the user's preference can be stored in server in advance.
The present invention can be use to track a user's movement. User sends user's identity plus the multiple identities of access points detected along his movement with the detecting timestamps to server. The server determines the representative location from the received information and then updates user's current location with the representative location in a database. Later, user or other person can access to the user's location in the database with certain authorization checking for reason of user's privacy protection.
In another embodiment, user can further send the detected signal strength of detected access point to the server. By receiving the identifier of access point and its signal strength, the server can further accurate determine the location of user or even the location of a new access point by using triangulation method. Conclusion, Ramifications, and Scope
The present invention uses identifiers of multiple wireless access points, for example MAC address, to identifying a location. The present invention verifies said multiple access points by using the proximity relation, for example the operation range overlapping relationship, the distance or the average traveling time between access points. After verification, the present invention selects one or more representative access point or representative location. Then, the present invention might search for location-based information according to search criteria and in proximity to the representative access point or representative location. AP database might further use information in user's inquiry to update database itself. The present invention might maintain location history of access point and provide exchange service that exchanges a set of old identification information of access points with a set of new identification information at the same location. The system of present invention can be install within a network server that connect remotely with mobile client or directly install in mobile client. Although the description above contains many specific details, these should not be construed as limiting the scope of the invention but as merely providing illustrations of some the possible embodiments of the invention.
Thus, the scope of the invention should be determined by the appended claims and their legal equivalents, rather than by the examples given.

Claims

CLAIMSI claim:
1. A method for accessing location-based information by using multiple identities of access points comprising: Receiving first information that includes said multiple identities of access points, Identifying the access point that is known by an access point database, Recognize one or more proximity relationships between the known access points from the first information, Identifying the proximity relationship that is known by said access point database, Selecting a group access points based on the known proximity relationships, and Determining a representative location from the group of access points.
2. The method of claim 1 , further comprise updating said access point database to include unknown access point and/or unknown proximity relationship in said first information.
3. The method of claim 1, wherein said proximity relationship is one or more selected from the following group: a operation range overlapping condition, a traveling time, a distance, a distance, and a visiting order.
4. The method of claim 1, further comprise returning said representative location.
5. The method of claim 1, further comprising search geo-coded database for information that is in proximity to said location and returning the search result.
6. The method of claim 1, further comprising: receiving the second information, associating the second information with the representative location, and storing the association in a database
7. The method of claim 1, wherein said first information further includes the detecting timestamps of said multiple identities.
8. The method of claim 7, further comprise calculating the traveling time between detecting two said identities and updating the average traveling time.
9. The method of claim 1, further comprising: receiving the second information, associating the second information with the representative location, and storing the association in a database
PCT/US2005/007279 2004-03-06 2005-03-07 System and method for determining a location by using multiple identifiers of wireless access points WO2005088991A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA002567555A CA2567555A1 (en) 2004-03-06 2005-03-07 System and method for determining a location by using multiple identifiers of wireless access points

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US55096804P 2004-03-06 2004-03-06
US60/550,968 2004-03-06

Publications (1)

Publication Number Publication Date
WO2005088991A1 true WO2005088991A1 (en) 2005-09-22

Family

ID=34975982

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2005/007279 WO2005088991A1 (en) 2004-03-06 2005-03-07 System and method for determining a location by using multiple identifiers of wireless access points

Country Status (2)

Country Link
CA (1) CA2567555A1 (en)
WO (1) WO2005088991A1 (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007051701A1 (en) * 2005-11-03 2007-05-10 International Business Machines Corporation Tracking a location of a wireless device user in a private network environment
GB2445273A (en) * 2006-12-21 2008-07-02 Symbian Software Ltd Mobile device and method of network access control
WO2008079804A1 (en) * 2006-12-20 2008-07-03 Airvana, Inc. Communication group configuration in a network
ES2325899A1 (en) * 2007-07-10 2009-09-23 Universitat Pompeu Fabra Co-location among wireless terminals from the radio parameters of signaling network. (Machine-translation by Google Translate, not legally binding)
WO2011143673A1 (en) * 2010-05-14 2011-11-17 Qualcomm Incorporated Method and apparatus for updating femtocell proximity information
US8447326B2 (en) 2010-04-07 2013-05-21 Apple Inc. Selective location determination
US20130281062A1 (en) * 2011-10-21 2013-10-24 Point Inside, Inc. Identify a radio frequency device by mac address system and method
US8838096B2 (en) 2009-05-29 2014-09-16 Qualcomm Incorporated Non-macro cell search integrated with macro-cellular RF carrier monitoring
US8909245B2 (en) 2006-11-07 2014-12-09 Skyhook Wireless, Inc. System and method for estimating positioning error within a WLAN-based positioning system
US9013350B2 (en) 2009-07-16 2015-04-21 Skyhook Wireless, Inc. Systems and methods for using a satellite positioning system to detect moved WLAN access points
CN101502134B (en) * 2006-08-15 2015-05-13 思科技术公司 Wifi geolocation from carrier-managed system geolocation of a dual mode device
WO2014074672A3 (en) * 2012-11-07 2015-07-16 Wifiname, Inc. System and method for storing and retrieving information associated with a network location
WO2015111783A1 (en) * 2014-01-27 2015-07-30 (주)유알아이테크놀러지스 Positioning system for determining position of mobile terminal by using ap position information and method for automatically updating ap position information
US9103900B2 (en) 2006-07-07 2015-08-11 Skyhook Wireless, Inc. System and method of gathering WLAN packet samples to improve position estimates of WLAN positioning device
US9137745B2 (en) 2007-10-12 2015-09-15 Qualcomm Incorporated System and method to locate femto cells with passive assistance from a macro cellular wireless network
US9148866B2 (en) 2005-08-10 2015-09-29 Qualcomm Incorporated Method and apparatus for creating a fingerprint for a wireless network
US9253653B2 (en) 2007-11-09 2016-02-02 Qualcomm Incorporated Access point configuration based on received access point signals
US9369845B2 (en) 2012-03-23 2016-06-14 Skyhook Wireless, Inc. Methods and systems of assigning estimated positions and attributes to wireless access points in a positioning system
US9392406B2 (en) 2005-02-03 2016-07-12 Trueposition, Inc. Method and system for location-based monitoring of a mobile device
US9659314B2 (en) 2007-03-10 2017-05-23 Bridge And Post, Inc. Method and apparatus for tagging network traffic using extensible fields in message headers
WO2020013587A1 (en) * 2018-07-13 2020-01-16 삼성전자 주식회사 Method and electronic device for tracking position of access point

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020160766A1 (en) * 2001-04-27 2002-10-31 Portman Eric A. Location-based services
US6836667B1 (en) * 2000-09-19 2004-12-28 Lucent Technologies Inc. Method and apparatus for a wireless telecommunication system that provides location-based messages

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6836667B1 (en) * 2000-09-19 2004-12-28 Lucent Technologies Inc. Method and apparatus for a wireless telecommunication system that provides location-based messages
US20020160766A1 (en) * 2001-04-27 2002-10-31 Portman Eric A. Location-based services

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11388549B2 (en) 2005-02-03 2022-07-12 Skyhook Holding, Inc. Techniques for wireless position determination utilizing a collaborative database
US10798525B2 (en) 2005-02-03 2020-10-06 Skyhook Holding, Inc. Techniques for wireless position determination utilizing a collaborative database
US10390178B2 (en) 2005-02-03 2019-08-20 Skyhook Holding, Inc. Techniques for wireless position determination utilizing a collaborative database
US10129697B2 (en) 2005-02-03 2018-11-13 Trueposition, Inc. Techniques for wireless position determination utilizing a collaborative database
US9402154B2 (en) 2005-02-03 2016-07-26 Trueposition, Inc. Methods for providing location of wireless devices using Wi-Fi
US9392406B2 (en) 2005-02-03 2016-07-12 Trueposition, Inc. Method and system for location-based monitoring of a mobile device
US9148866B2 (en) 2005-08-10 2015-09-29 Qualcomm Incorporated Method and apparatus for creating a fingerprint for a wireless network
WO2007051701A1 (en) * 2005-11-03 2007-05-10 International Business Machines Corporation Tracking a location of a wireless device user in a private network environment
US8254395B2 (en) 2005-11-03 2012-08-28 International Business Machines Corporation Computer-implemented method, system, and program product for tracking a location of a user of a wireless device in a private network environment
US9279877B2 (en) 2006-07-07 2016-03-08 Skyhook Wireless, Inc. Technique for using cached information with a WLAN positioning system to obtain an estimate of a position of a mobile device
US9103900B2 (en) 2006-07-07 2015-08-11 Skyhook Wireless, Inc. System and method of gathering WLAN packet samples to improve position estimates of WLAN positioning device
CN101502134B (en) * 2006-08-15 2015-05-13 思科技术公司 Wifi geolocation from carrier-managed system geolocation of a dual mode device
US9426613B2 (en) 2006-11-07 2016-08-23 Skyhook Wireless, Inc. System and method for estimating positioning error within a WLAN-based positioning system
US10284997B2 (en) 2006-11-07 2019-05-07 Skyhook Wireless, Inc. System and method for estimating positioning error within a WLAN-based positioning system
US8909245B2 (en) 2006-11-07 2014-12-09 Skyhook Wireless, Inc. System and method for estimating positioning error within a WLAN-based positioning system
US8457084B2 (en) 2006-12-20 2013-06-04 Airvana Llc Communication group configuration in a network
JP2010515296A (en) * 2006-12-20 2010-05-06 エアヴァナ,インコーポレーテッド Communication group configuration in the network
GB2457413B (en) * 2006-12-20 2011-05-11 Airvana Inc Communication group configuration in a network
GB2457413A (en) * 2006-12-20 2009-08-19 Airvana Inc Communication group configuration in a network
CN101611642B (en) * 2006-12-20 2016-01-20 爱尔瓦纳有限合伙公司 Communication set configuration in network
WO2008079804A1 (en) * 2006-12-20 2008-07-03 Airvana, Inc. Communication group configuration in a network
GB2445273A (en) * 2006-12-21 2008-07-02 Symbian Software Ltd Mobile device and method of network access control
US9659314B2 (en) 2007-03-10 2017-05-23 Bridge And Post, Inc. Method and apparatus for tagging network traffic using extensible fields in message headers
ES2325899A1 (en) * 2007-07-10 2009-09-23 Universitat Pompeu Fabra Co-location among wireless terminals from the radio parameters of signaling network. (Machine-translation by Google Translate, not legally binding)
US9137745B2 (en) 2007-10-12 2015-09-15 Qualcomm Incorporated System and method to locate femto cells with passive assistance from a macro cellular wireless network
US9253653B2 (en) 2007-11-09 2016-02-02 Qualcomm Incorporated Access point configuration based on received access point signals
US8838096B2 (en) 2009-05-29 2014-09-16 Qualcomm Incorporated Non-macro cell search integrated with macro-cellular RF carrier monitoring
US10031237B2 (en) 2009-07-16 2018-07-24 Skyhook Wireless, Inc. Techniques for selecting SPS measurements to use in determining a final location estimate based on a WLAN-based location estimate
US9013350B2 (en) 2009-07-16 2015-04-21 Skyhook Wireless, Inc. Systems and methods for using a satellite positioning system to detect moved WLAN access points
US8447326B2 (en) 2010-04-07 2013-05-21 Apple Inc. Selective location determination
US9078230B2 (en) 2010-04-07 2015-07-07 Apple Inc. Selective location determination
WO2011143673A1 (en) * 2010-05-14 2011-11-17 Qualcomm Incorporated Method and apparatus for updating femtocell proximity information
US8923892B2 (en) 2010-05-14 2014-12-30 Qualcomm Incorporated Method and apparatus for updating femtocell proximity information
US20130281062A1 (en) * 2011-10-21 2013-10-24 Point Inside, Inc. Identify a radio frequency device by mac address system and method
US10034265B2 (en) 2012-03-23 2018-07-24 Skyhook Wireless, Inc. Methods and systems of assigning estimated positions and attributes to wireless access points in a positioning system
US9369845B2 (en) 2012-03-23 2016-06-14 Skyhook Wireless, Inc. Methods and systems of assigning estimated positions and attributes to wireless access points in a positioning system
WO2014074672A3 (en) * 2012-11-07 2015-07-16 Wifiname, Inc. System and method for storing and retrieving information associated with a network location
KR101608523B1 (en) 2014-01-27 2016-04-04 (주)유알아이테크놀러지스 Positioning system of mobile terminal using ap position information and method for autometically updating the ap position information
WO2015111783A1 (en) * 2014-01-27 2015-07-30 (주)유알아이테크놀러지스 Positioning system for determining position of mobile terminal by using ap position information and method for automatically updating ap position information
WO2020013587A1 (en) * 2018-07-13 2020-01-16 삼성전자 주식회사 Method and electronic device for tracking position of access point
KR20200007601A (en) * 2018-07-13 2020-01-22 삼성전자주식회사 Method for tracking position of access point and electronic device thereof
US11528680B2 (en) 2018-07-13 2022-12-13 Samsung Electronics Co., Ltd. Method and electronic device for tracking position of access point
KR102531062B1 (en) * 2018-07-13 2023-05-11 삼성전자주식회사 Method for tracking position of access point and electronic device thereof

Also Published As

Publication number Publication date
CA2567555A1 (en) 2005-09-22

Similar Documents

Publication Publication Date Title
WO2005088991A1 (en) System and method for determining a location by using multiple identifiers of wireless access points
US8804551B2 (en) Location estimation by observing wireless signals
US20210029666A1 (en) Local area network assisted positioning
US9752890B2 (en) Identifying a result responsive to a current location of a client device
US20100145987A1 (en) System for and method of location-based process execution
US20170150474A1 (en) Locating a mobile station and applications therefor
US9100782B2 (en) Location and state information providing/inquiring system using WLAN/WPAN communication, log information providing/inquiring system and method, service server and customer terminal, location and state providing/inquiring method
US8494767B2 (en) Method and apparatus for automatically determining practicality of a trip
US10390173B2 (en) Techniques for establishing and using associations between location profiles and beacon profiles
US20040077359A1 (en) Method and apparatus for providing position profiles in mobile value-added services
CN101529866A (en) Presence-based communication between local wireless network access points and mobile devices
KR101246589B1 (en) Method And Apparatus Providing Customized Moving Path
JP2004214875A (en) Communication terminal and radio wave state management apparatus utilizing communication terminal
KR100726567B1 (en) Method for providing information service based on location and geographic information
US20050130676A1 (en) Methods, systems, and media for acquiring ratings for points of interest
KR101687793B1 (en) Method And Apparatus for Providing Position Information by Using Error Range
JP2008517372A (en) Apparatus and method for location database
KR100766595B1 (en) Method and Device for providing traffic information according to accident information on traveling course and Record Medium saved the method
EP2278276B1 (en) Method and apparatus for automatically determining practicality of a trip
KR20060136226A (en) Method and Device for providing traffic information according to accident information on traveling course and Record Medium saved the method
KR101913573B1 (en) Navigation information collecting apparatus and method by a crowd-sourcing

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 2567555

Country of ref document: CA

122 Ep: pct application non-entry in european phase