US20100156599A1 - Zone Determination by Combining Signal Strength with Topological Factors - Google Patents

Zone Determination by Combining Signal Strength with Topological Factors Download PDF

Info

Publication number
US20100156599A1
US20100156599A1 US12/338,739 US33873908A US2010156599A1 US 20100156599 A1 US20100156599 A1 US 20100156599A1 US 33873908 A US33873908 A US 33873908A US 2010156599 A1 US2010156599 A1 US 2010156599A1
Authority
US
United States
Prior art keywords
reader
tag
value
zone
readers
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.)
Granted
Application number
US12/338,739
Other versions
US8432253B2 (en
Inventor
Robert Ainsbury
Immad Adawiya
Khalid Omar
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.)
AL-QEMMAH LETECHNOLOGIA AL-MA'LOUMAT Co (SIMTIX)
Original Assignee
TITAN HOLDINGS Ltd
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 TITAN HOLDINGS Ltd filed Critical TITAN HOLDINGS Ltd
Priority to US12/338,739 priority Critical patent/US8432253B2/en
Assigned to TITAN HOLDINGS LIMITED reassignment TITAN HOLDINGS LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ADAWIYA, IMMAD, AINSBURY, ROBERT, OMAR, KHALID
Publication of US20100156599A1 publication Critical patent/US20100156599A1/en
Assigned to AL-QEMMAH LETECHNOLOGIA AL-MA'LOUMAT CO. (SIMTIX) reassignment AL-QEMMAH LETECHNOLOGIA AL-MA'LOUMAT CO. (SIMTIX) ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: TITAN INTERNATIONAL HOLDINGS LIMITED
Application granted granted Critical
Publication of US8432253B2 publication Critical patent/US8432253B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • 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/0278Position-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 involving statistical or probabilistic considerations
    • 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/14Determining absolute distances from a plurality of spaced points of known location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13003Constructional details of switching devices

Definitions

  • the invention relates to protecting sensitive facilities by tracking the movement of objects and persons within such facilities. More particularly, the invention relates to zone determination by combining signal strength with topological factors.
  • RTLS real time location systems
  • Some RFID technologies do not exhibit a smooth reduction in signal strength over distance, making the RTLS computations spurious. It would be advantageous to provide a more reliable way to track objects and persons within critical facilities; that is, more accurately determine the zone of objects and persons in near real-time.
  • Active RFID technologies are used to tag assets and people within buildings or open areas, such as parking lots or military bases.
  • Part of the functionality in this embodiment identifies, preferably within a few meters, the real-time location (RTLS) of the tag, i.e. to create a real-time location system, known as an RTLS.
  • RTLS real-time location
  • a novel and complex algorithm is provided that combines signal strength computations with factors that incorporate physical realities, such as walls and floors, to determine a tag's real-time location more accurately.
  • FIG. 1 is a block schematic diagram that provides an example of a real world zone topology according to an embodiment of the invention.
  • FIG. 2 is a flow diagram showing zone determination by combining signal strength with topological factors according to the invention.
  • This embodiment of the invention comprises a security platform that makes extensive use of RFID technologies to track the current location of tagged objects, e.g. people and assets. Additionally, applications that use the security platform may divide a physical environment into a collection of zones, with each zone having its own permissions and rules, e.g. no visitors are permitted in Zone 3.
  • the security platform uses a variety of inputs to determine in which zone a tagged object resides. These inputs include reads from tag readers, object usage of fixed devices, e.g. a biometric scan, and information pushed from an external application.
  • inputs include reads from tag readers, object usage of fixed devices, e.g. a biometric scan, and information pushed from an external application.
  • a determination of a zone change i.e. that a tag appears to have moved from one zone to another, can trigger important events within an application. If an unauthorized tag, for example, enters a restricted zone, all of the doors in the building may be locked, and sirens sounded. Given there are potentially significant consequences of zone changes, it is essential that the system accurately determine a tag's current zone, and yet also quickly determine when a zone has changed.
  • a facility such as a campus, a building, or an industrial plant, is divided into zones. These zones allow an application to establish rules for each zone, and to report which objects are in each zone. Examples of zones include: Hanger 4, Floor 12, Conference Room 6, Room 1207, Photocopier 6.
  • Each zone represents the smallest area of a facility that share common rules, e.g. who is allowed in the zone, whether one object must be in proximity to another when in the zone, and whether object can be moved within the zone, or removed from the zone.
  • a zone may comprise multiple devices, such as RFID readers, and the zone determination module may compute an objects proximity to a device that is situated within a zone, e.g. reader 2.
  • FIG. 1 is a block schematic diagram that provides an example of a real world zone topology.
  • the topology presents many of the challenges that the zone determination algorithm must accommodate.
  • the transponder has a mesh of signal readers.
  • the transponder is assumed to be closest to the reader that received the strongest signal from the transponder.
  • the system may triangulate a more accurate determination of the tags location, based on the signal strengths captured at multiple readers. The distance from each reader being approximated from the signal strength. By taking three readers across two planes the location of the signal can be estimated.
  • An additional problem is that the nearest reader to a transponder may in fact be in a different location. This may cause mis-location computations, even when there are no fluctuations in signal strength.
  • a multi-story building with readers located above the tiles in ceilings on each floor.
  • a transponder located on the 4 th floor may be physically closer to the reader in the ceiling of the 3 rd floor than the reader directly overhead.
  • a tag may be read by eight or more readers in a highly-zoned, multi-floor facility. Because of the physical layout, the nearest reader may, in fact, be in a different zone.
  • an overall approach comprises an embodiment of the invention that uses an algorithm to identify the nearest reader to the tag, eliminating readers that the tag is unlikely to have been able to traverse to in the time since the last read. If there are several nearest reader contenders, the system evaluates several nearest reader candidates and makes a determination about the nearest reader.
  • the tag is not situated directly at a reader.
  • the tag is typically positioned between two or more readers. It is important to note that the home zone of the nearest reader may not be the zone where the tag is finally determined to reside. Determining the nearest reader, however, provides the necessary anchor point to subsequently determine the actual location of the tag.
  • RSSI reader signal strength indicator
  • the most likely zone is determined.
  • the list of adjacent readers does not include readers that may be physically adjacent, but to which the tag cannot readily travel without significant elapsed time, or without passing one or more other readers, e.g. the reader immediately below the tag on the next floor below, although technically adjacent, is not listed as adjacent. In a way, this is similar to determining the distance between the two readers, but it relies upon RSSI, the reader's softwareRSSI, CloseProximitySoftwareRSSI, and the adjacentReaders.relativeRSSI values.
  • the LocationConfidence which is set to Confidence_High
  • the ZoneConfidence which is set to Confidence_High.
  • the confidence factors may be decremented based on uncertainty generated by the data.
  • FIG. 2 is a flow diagram showing zone determination by combining signal strength with topological factors according to the invention.
  • Stage 1 Evaluate the Tag Read List ( 20 )
  • the algorithm needs to check for a tag-missing scenario. If there are no records in the adjusted tag reads list, i.e. the tag was not read this iteration, the algorithm checks to see if the unadjusted list includes any raw tag reads.
  • the algorithm may call the TrackingManager.SetAlarm and advise that there is a faint read.
  • the algorithm then concludes and returns: the tag-read datetime from the raw readlist, and ZERO for any other factors, indicating that nearest location and zone were indeterminate.
  • the algorithm calls TrackingManager.SetAlarm and indicates that the specified tag is missing. The algorithm then concludes and returns: the datetime that was passed as input by the marshaler, and ZERO for the other four factors, indicating that nearest location and zone were indeterminate.
  • the TrackingManager.SetAlarm may need to evaluate the Zone.DeadSpots property when deciding what event/event data to disseminate.
  • Step Two Check for Spike ( 22 )
  • the TagType class includes a Spike_Check_Threshold property, which is used as follows:
  • TagType.Spike_Check_Threshold is zero, i.e. no spike check is required, the algorithm moves to the next step.
  • ReaderBean.Eliminate_Spikes If the ReaderBean.Eliminate_Spikes is false, no spike check is required, and the algorithm moves to the next step. This might occur on a reader location at an elevator, e.g. reads may suddenly appear as people step out of the elevator.
  • each tag read is evaluated in turn, and the current adjusted RSSI value is compared with the previous adjusted RSSI value for that same reader.
  • the algorithm may need to evaluate more than the previous read, i.e. the last N reads. It is possible to adjust the algorithm, if necessary, after field tests. If the delta is greater than the TagType.Spike Check_Threshold, then the algorithm assumes that it is a spike. The NormalizedRSSI value is then set to the previous adjusted RSSI value. This reduces the probability that this is the nearest reader.
  • Stage 2 Evaluate Nearest Reader Probabilities ( 24 )
  • the reader with the highest RSSI values is not the logical nearest reader, e.g. it might be on the floor below.
  • the list of adjusted reads is sorted by reader guarantee degree factor.
  • the Nearest_Reader list is populated with these readers, the LocationConfidence is set to Confidence_medium, and the algorithm moves to step 3.
  • Step 2 Demote Unlikely Nearest Readers ( 26 )
  • a physically close reader may be in a very different zone.
  • the tag due to the constraints on an objects travel path, it is unlikely that the tag has so quickly moved to the other reader, e.g. they have to go a long way to pass through a doorway, or they need to go through two other zones, such as the stairwell and the next floor's lobby, to get to the reader.
  • this step is only executed when there are no readers with Reader.guaranteeDegree value of 5.
  • This step therefore attempts to eliminate any nearest reader contenders that may, in fact, have been reading the tag from a remote location, to where the tag is unlikely to have been able to travel. Consequently, this step is only merited when the tag frequency is high, i.e. when the tag can only have moved a short distance since the last transmission.
  • the TagType.Eliminate_Remote_Readers is configured to indicate whether such demotion evaluation should be performed.
  • the algorithm evaluates the previous location determination, i.e. the output from the previous instance of the thread.
  • the algorithm iterates down the list of tag reads.
  • the NormalizedRSSI value is not adjusted. This might occur, for example, when reader is on the perimeter of a facility, or when the reader is near an elevator. Else if the readerbean.locid is equal to the previous determination's readerbean.locid then the NormalizedRSSI value is not adjusted. This is because the data show that the tag appears to be in the same place, or at least a similar distance from this reader.
  • the algorithm iterates through the previous determination's readerbean.locid.AdjacentReaderEntry.ReaderBean.LocID. If there is a match to the current readerbean.locid, then it appears that the tag could have moved to this reader since the last read, and the NormalizedRSSI value is not adjusted. If there is no match, the NormalizedRSSI value is factored by the ReaderBean.NonAdjacentNormalizeFactor.
  • the point of making this a configurable property of the ReaderBean is that it allows an individual reader to be configured to solve its unique RSSI issues. In general, however, the system should have a default value of, e.g. 0.8, and a null in the ReaderBean would imply that the system default should be used.
  • Step 3 Identify Contenders ( 27 )
  • the algorithm must determine the nearest reader to the tag, or a list of the candidates for the nearest reader when there is no clear winner.
  • the output of this stage is a list of nearest readers, i.e. the contenders. Note, it is assumed that non-contenders are deleted from the adjusted input list. After this step, the list only contains the contenders.
  • the algorithm computes a ranking value that is a singular integer: the higher the value, the higher the probability that this is the nearest reader. Note that this value may often be negative.
  • the initial value of the Ranking value is set to (ReaderBean.CloseProximitySoftwareRSSI)—(Normalized RSSI value) which may have a positive or negative result.
  • the ranking value is set to (Default_Close_Proximity_software_RSSI)—(Normalized RSSI value).
  • the Ranking value is factored by the Adjusted_Equals_Normalized factor.
  • the algorithm iterates down the set and identifies all the records that have a Normalized RSSI value which is greater than the ReaderBean.SoftwareRSSI, if the count of the matching records is one or greater, delete the non-qualifying records, i.e. the records that are less than the SoftwareRSSI).
  • the set is sorted in descending order by the Ranking value.
  • Any record with a Ranking value less than Contenders_Percentage_To_Leader of the top value is deleted.
  • the data are normalized to have positive values if the percentage computation is to make sense.
  • This process is invoked when the data fail to show that there is a least one candidate reader with a strong adjusted RSSI value. In other words, it is not certain where the tag is located.
  • the LocationConfidence is set to Confidence_mediumlow.
  • the Set is initialized to the adjusted input list and sorted, descending, by Adjusted RSSI value.
  • the Set is iterated and the AdjustedRSSI is compared to the ReaderBean.CloseProximitySoftwareRSSI, if the count of the matching records is one or greater, delete the non-qualifying records, i.e. the records less than the SoftwareRSSI, and proceed to stage three.
  • the Set is iterated and the AdjustedRSSI each records is assigned a Ranking value.
  • the ranking value in this situation is the percentage value representing where the AdjustedRSSI lies in a range from the ReaderBean. SoftwareRSSI to ReaderBean.CloseProximitySoftwareRSSI or the system defaults.
  • the set is sorted, descending, by Ranking value. If there are more than Alternative_Max_Weak_Candidates in the set, delete the records after the Alternative_Max_Weak_Candidates one, and move to Stage 3.
  • Stage 3 Select the Closest Reader ( 28 )
  • the algorithm has reduced the list of readers to those readers that are assumed to be in reasonable proximity to where the tag was recently, and within that set to the readers with the strongest RSSI values.
  • the reduced set of readers should contain one record for each closest reader candidate.
  • Each record in the set is appended with two values: the ReaderBean.locID, and ReaderBean.zoneID.
  • the list of final contenders contains a list of readers that are all in proximity to each other
  • This step involves comparing each readers list of adjacent readers.
  • Each record in the set has a ReferenceCount field.
  • the algorithm iterates the list and compares each record's ReaderBean.adjacentReaders list and if there is a matching on any other records ReaderBean.readerUID, the matching records ReferenceCount field is incremented.
  • the ReferenceCount field may have a value between zero and (Set Record Count—1). Any records with less then the highest value are deleted.
  • Step 3 is repeated until all ReferenceCounts are the same, i.e. none are deleted.
  • the Set is iterated and the AdjustedRSSI each records is assigned a Ranking Value.
  • the Ranking Value is like a volume indicator and is the percentage value representing where the AdjustedRSSI lies in a range from the ReaderBean. SoftwareRSSI to ReaderBean.CloseProximitySoftwareRSSI, or the system defaults.
  • the closest location is the closest reader's ReaderBean.locID.
  • the tag is not situated directly at a reader.
  • the tag is positioned between two or more readers.
  • This stage uses the signal strength values of the last set of reads, and compares them with the signal strengths at adjacent readers to estimate the zone.
  • This evaluation is preferably performed multiple times, once for each nearest candidate.
  • a probability is calculated for the selected zone through each iteration. However, it may not be necessary because the results from algorithm may suffice.
  • a final determination of whether to perform this test on multiple candidate nearest readers is made, when an in the field performance testing is conducted. For the present embodiment of the invention, it is assumed that one Zone calculation is sufficient.
  • the input list of Adjusted RSSI data are iterated. Assume that there is an additional field ZoneCandidate.
  • the algorithm compares the Closest Readers Adjusted RSSI value with the each other readers Adjusted RSSI 1 value, and determines which zone is likely based on the adjacentReaders.relativeRSSI value.
  • the winning zone is stored in the ZoneCandidate.
  • Zone_Confidence is set to Confidence_Medium, and the algorithm computes the confidence of each remaining ZoneCandidate. This is achieved by iterating down the list of remaining readers as follows:
  • the winning zone is this ReaderBean.ZoneID.
  • the Zone_Confidence is set to the LocationConfidence. In other words, if we are not confident about the location we cannot really be confident about the zone either.
  • a computer comprises a processor, main memory, storage media, input devices, and peripherals, all coupled together by a system bus.
  • the computer may exist in a network or any one or more of its individual elements may be distributed across a network.
  • the storage media comprises a mass storage and zero or more other drives.
  • the mass storage comprises an operating system and one or more regular applications, such as a Web browser. For the sake of simplicity, only these components are discussed. If so desired, computer system may comprise additional components.
  • the processor is the component responsible for executing instructions to provide the overall functionality of the computer system.
  • the processor may be any type of processor that is capable of executing any type of computer instructions.
  • only one processor is herein.
  • the computer system may comprise additional processors, if so desired.
  • the main memory provides the memory needed by the processor to execute programs. More specifically, the processor uses the main memory to store program instructions while those instructions are being executed. In addition, the processor uses the main memory to store data and other information generated during the execution of instructions. Furthermore, the main memory may be used to store the computer system state information. The use and management of the main memory is discussed in greater detail below.
  • Various output components may include, for example, a video card, a video display, an audio card, and a set of speakers. These components enable the computer system to provide information to a user.
  • the input devices enable the user to provide information to the computer system.
  • the input devices may include, for example, a keyboard, an infrared receiver for receiving infrared signals, such as signals from a remote control, and a cursor control device such as a mouse, a trackball, a remote-controlled pointing device, etc. Basically, anything that enables the computer system to interface with a user can be included as user interface components.
  • the storage media provides non-volatile storage for the computer system.
  • the storage media may comprise a mass storage magnetic hard drive, and zero or more other drives.
  • the other drives may include, for example, a floppy drive, a CD-ROM drive, a DVD drive, a CD-RW drive, etc.
  • the drives enable the computer system to read from and write to storage media other than hard drive. All of the storage media may be accessed via a common controller interface, such as an IDE interface. While the storage media are described herein as drives, it should be noted that storage media need not be drives but, rather, may take on other forms, for example, disk-on-chip modules, flash memory, etc. All possible forms are within the scope of the invention.
  • the mass storage comprises a plurality of programs, including an operating system and one or more applications.
  • the operating system is the general-purpose operating system that is loaded and executed during a regular boot-up process to provide an overall operating environment for the computer system.
  • the applications such as a Web browser, run within the environment provided by the operating system.
  • the operating system may be any operating system, including but not limited to Windows XP®.
  • the inventive algorithm herein described is implemented in an application program.
  • the computer system may further comprise other peripherals, such as printers, scanners, network cards, RFID readers, etc. These peripherals may interface with the computer system via various ports and interfaces, such as parallel ports, serial ports, USB ports, SCSI interfaces, etc. Generally, any device that is capable of interfacing with the computer system can be included as one of the peripherals.

Abstract

Active RFID technologies are used to tag assets and people within buildings or open areas, such as parking lots or military bases; and to identify, preferably within a few meters, the real-time location (RTL) of the tag, i.e. to create a real-time location system, known as an RTLS. A novel and complex algorithm is provided that combines signal strength computations with factors that incorporate physical realities, such as walls and floors, to determine a tag's real-time location more accurately.

Description

    BACKGROUND OF THE INVENTION
  • 1. Technical Field
  • The invention relates to protecting sensitive facilities by tracking the movement of objects and persons within such facilities. More particularly, the invention relates to zone determination by combining signal strength with topological factors.
  • 2. Description of the Prior Art
  • Advanced security within facilities was, until recently, was restricted to highly sensitive establishments such as embassies, banks and intelligence groups. The vast majority of facilities simply had perimeter control, with security staff controlling who could enter a building, but once inside people could (with a little tenacity) access almost any area.
  • Over the past 20 years, with an increased awareness of intellectual and asset theft, many facilities introduced access control badges to restrict access within a facility. But these basic security technologies are easily by-passed. An intruder, for example, can use a stolen (or borrowed) employee badge; contractors (such as janitorial staff) often have facility wide clearance, and intruders frequently simply ask an employee to let them into a restricted area.
  • With growing incidents of terrorism, pervasive intelligence and company secrets theft, and fear of VIP abduction, forward thinking companies have begun to introduce internal biometrics and other technologies to manage and control access to areas or zones within a facility. But these technologies quickly begin to affect productivity and morale.
  • Once again the security organization faces the tradeoff between securing a facility, while allowing operations to proceed virtually unhindered.
  • In view of the continuing risk to property and human life attendant with today's industrial espionage, terrorism and theft, it would be advantageous to provide techniques for minimizing threats and risks within at-risk facilities while allowing normal operations to proceed with minimal disruption. One way to do this is to track the movement of objects and persons within such facilities. For example, active RFID technologies are often used to tag assets and people within buildings or open areas, such as parking lots or military bases. Most real time location systems (RTLS) use a mesh of multiple readers, typically a minimum of three readers, to triangulate the location of the tracked object, e.g. an object bearing an RFID tag. These systems rely on the fact that the tag signal strength diminishes with distance. The signal strength of the tag transmission is then determined from multiple locations. The location of the tag is computed by estimating the distance from multiple readers and, thereafter, estimating the probable location of the object.
  • Some RFID technologies, however, do not exhibit a smooth reduction in signal strength over distance, making the RTLS computations spurious. It would be advantageous to provide a more reliable way to track objects and persons within critical facilities; that is, more accurately determine the zone of objects and persons in near real-time.
  • SUMMARY OF THE INVENTION
  • Active RFID technologies are used to tag assets and people within buildings or open areas, such as parking lots or military bases. Part of the functionality in this embodiment identifies, preferably within a few meters, the real-time location (RTLS) of the tag, i.e. to create a real-time location system, known as an RTLS. In an embodiment, a novel and complex algorithm is provided that combines signal strength computations with factors that incorporate physical realities, such as walls and floors, to determine a tag's real-time location more accurately.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block schematic diagram that provides an example of a real world zone topology according to an embodiment of the invention; and
  • FIG. 2 is a flow diagram showing zone determination by combining signal strength with topological factors according to the invention.
  • DETAILED DESCRIPTION OF THE INVENTION
  • This embodiment of the invention comprises a security platform that makes extensive use of RFID technologies to track the current location of tagged objects, e.g. people and assets. Additionally, applications that use the security platform may divide a physical environment into a collection of zones, with each zone having its own permissions and rules, e.g. no visitors are permitted in Zone 3.
  • The security platform uses a variety of inputs to determine in which zone a tagged object resides. These inputs include reads from tag readers, object usage of fixed devices, e.g. a biometric scan, and information pushed from an external application.
  • In some cases, a determination of a zone change, i.e. that a tag appears to have moved from one zone to another, can trigger important events within an application. If an unauthorized tag, for example, enters a restricted zone, all of the doors in the building may be locked, and sirens sounded. Given there are potentially significant consequences of zone changes, it is essential that the system accurately determine a tag's current zone, and yet also quickly determine when a zone has changed.
  • A facility, such as a campus, a building, or an industrial plant, is divided into zones. These zones allow an application to establish rules for each zone, and to report which objects are in each zone. Examples of zones include: Hanger 4, Floor 12, Conference Room 6, Room 1207, Photocopier 6. Each zone represents the smallest area of a facility that share common rules, e.g. who is allowed in the zone, whether one object must be in proximity to another when in the zone, and whether object can be moved within the zone, or removed from the zone. In reality, however, a zone may comprise multiple devices, such as RFID readers, and the zone determination module may compute an objects proximity to a device that is situated within a zone, e.g. reader 2.
  • Example Topology
  • FIG. 1 is a block schematic diagram that provides an example of a real world zone topology. In the example of FIG. 1, the topology presents many of the challenges that the zone determination algorithm must accommodate.
  • Some of the important characteristics evident in this floor plan include:
      • Zone 1 (11) is not an open zone, i.e. it can only be accessed by going through one door, but people can leave from two doors.
      • Zone 2 (12) and Zone 3 (13) are not separated by any physical barriers, and users are free to walk between the zones unimpeded.
      • Zone 3 is a non-rectangular shape.
      • Someone in Zone 2 is highly unlikely to jump to either Zone 4 (14) or Zone 5 (15) without going through Zone 3, but it is not impossible to do so.
      • Parts of Zone 5 are dead, where the tags in Zone 5 are not read by Zone 5, but may be read by Zone 4.
  • The Challenge
  • Most RFID systems use one or both of two basic approaches to determine the location of a tag:
  • 1. They have a mesh of signal readers. The transponder is assumed to be closest to the reader that received the strongest signal from the transponder.
  • 2. In a more sophisticated environment, the system may triangulate a more accurate determination of the tags location, based on the signal strengths captured at multiple readers. The distance from each reader being approximated from the signal strength. By taking three readers across two planes the location of the signal can be estimated.
  • The flaw of both approaches is that they solely rely on signal strength to compute location, and the signal strength in reality (specifically, in multi-story buildings) is subject to significant variations in signal strength. A static reader and a static transponder can often give varying signal strength readings over time. Even though neither is moving, the system erroneously computes varying locations based on the signal strength fluctuations.
  • An additional problem is that the nearest reader to a transponder may in fact be in a different location. This may cause mis-location computations, even when there are no fluctuations in signal strength. Imagine, for example, a multi-story building with readers located above the tiles in ceilings on each floor. A transponder located on the 4th floor may be physically closer to the reader in the ceiling of the 3rd floor than the reader directly overhead.
  • One way to mitigate these spurious signal strength variations is to average signal strength over time. But this approach introduces significant latency, and is unacceptable in situations where rapid changes in location need to be identified in near real time.
  • A Presently Preferred Embodiment
  • The herein disclosed proprietary algorithms use a combination of statistical and topographical data to significantly diminish the errant effect of spurious signal strength readings. The following discussion presents an embodiment of the invention.
  • Conceivably a tag may be read by eight or more readers in a highly-zoned, multi-floor facility. Because of the physical layout, the nearest reader may, in fact, be in a different zone. Thus, an overall approach comprises an embodiment of the invention that uses an algorithm to identify the nearest reader to the tag, eliminating readers that the tag is unlikely to have been able to traverse to in the time since the last read. If there are several nearest reader contenders, the system evaluates several nearest reader candidates and makes a determination about the nearest reader.
  • In most situations the tag is not situated directly at a reader. The tag is typically positioned between two or more readers. It is important to note that the home zone of the nearest reader may not be the zone where the tag is finally determined to reside. Determining the nearest reader, however, provides the necessary anchor point to subsequently determine the actual location of the tag.
  • Once the nearest reader has been found, reader signal strength indicator (RSSI) comparisons are made between it and the list of readers that the nearest reader has in its adjacent readers list, i.e. readers in proximity.
  • By comparing the RSSI values, after any necessary compensation, of the nearest readers and the adjacent readers, the most likely zone is determined. Note that the list of adjacent readers does not include readers that may be physically adjacent, but to which the tag cannot readily travel without significant elapsed time, or without passing one or more other readers, e.g. the reader immediately below the tag on the next floor below, although technically adjacent, is not listed as adjacent. In a way, this is similar to determining the distance between the two readers, but it relies upon RSSI, the reader's softwareRSSI, CloseProximitySoftwareRSSI, and the adjacentReaders.relativeRSSI values.
  • The overall flow of the algorithm is summarized as follows:
      • Evaluate the tag read List
      • Evaluate nearest reader probabilities
      • Select the closest reader
      • Identify the zone.
  • When the algorithm begins, two global variables are initialized. The LocationConfidence, which is set to Confidence_High; and the ZoneConfidence, which is set to Confidence_High. As the algorithm progresses, the confidence factors may be decremented based on uncertainty generated by the data.
  • FIG. 2 is a flow diagram showing zone determination by combining signal strength with topological factors according to the invention.
  • Stage 1: Evaluate the Tag Read List (20)
  • This determines if there are any reads, handles any tag missing scenarios, and adjusts for any spurious spikes in the RSSI value.
  • Step One—Check for No Reads (21)
  • Before too many cycles have passed, the algorithm needs to check for a tag-missing scenario. If there are no records in the adjusted tag reads list, i.e. the tag was not read this iteration, the algorithm checks to see if the unadjusted list includes any raw tag reads.
  • If it does, then the algorithm may call the TrackingManager.SetAlarm and advise that there is a faint read. The algorithm then concludes and returns: the tag-read datetime from the raw readlist, and ZERO for any other factors, indicating that nearest location and zone were indeterminate.
  • Else, the algorithm calls TrackingManager.SetAlarm and indicates that the specified tag is missing. The algorithm then concludes and returns: the datetime that was passed as input by the marshaler, and ZERO for the other four factors, indicating that nearest location and zone were indeterminate.
  • The TrackingManager.SetAlarm may need to evaluate the Zone.DeadSpots property when deciding what event/event data to disseminate.
  • Step Two—Check for Spike (22)
  • On occasion, during normal operation, a spurious high RSSI read occurs. This spike effect is compensated for in this step. However, a spike test can only reliably be performed when the tag frequency is high. If the tag, for example, only transmits every 30 seconds, it is quite conceivable that the current RSSI value could be 40 units higher than the previous read because the tag could have easily moved 30 meters. The TagType class includes a Spike_Check_Threshold property, which is used as follows:
  • If the TagType.Spike_Check_Threshold is zero, i.e. no spike check is required, the algorithm moves to the next step.
  • If the ReaderBean.Eliminate_Spikes is false, no spike check is required, and the algorithm moves to the next step. This might occur on a reader location at an elevator, e.g. reads may suddenly appear as people step out of the elevator.
  • Otherwise, each tag read is evaluated in turn, and the current adjusted RSSI value is compared with the previous adjusted RSSI value for that same reader. The algorithm may need to evaluate more than the previous read, i.e. the last N reads. It is possible to adjust the algorithm, if necessary, after field tests. If the delta is greater than the TagType.Spike Check_Threshold, then the algorithm assumes that it is a spike. The NormalizedRSSI value is then set to the previous adjusted RSSI value. This reduces the probability that this is the nearest reader.
  • Stage 2: Evaluate Nearest Reader Probabilities (24)
  • In many situations the reader with the highest RSSI values is not the logical nearest reader, e.g. it might be on the floor below.
  • Step One—Evaluate Confidence factors (25)
  • The list of adjusted reads is sorted by reader guarantee degree factor.
  • If there is one reader with a Reader.guaranteeDegree value of 5, then evaluation is complete and the algorithm concludes and returns: the tag-read datetime for that reader, the ReaderBean.LocID, Confidence_High, Readerbean.ZoneID, Confidence High.
  • If there is more than one reader with a Reader.guaranteeDegree value of 5, then the Nearest_Reader list is populated with these readers, the LocationConfidence is set to Confidence_medium, and the algorithm moves to step 3.
  • Step 2—Demote Unlikely Nearest Readers (26)
  • In some situations, especially multi-floored installations and highly walled facilities with limited doorways between areas, a physically close reader may be in a very different zone. In other words, due to the constraints on an objects travel path, it is unlikely that the tag has so quickly moved to the other reader, e.g. they have to go a long way to pass through a doorway, or they need to go through two other zones, such as the stairwell and the next floor's lobby, to get to the reader. Thus, this step is only executed when there are no readers with Reader.guaranteeDegree value of 5.
  • This step therefore attempts to eliminate any nearest reader contenders that may, in fact, have been reading the tag from a remote location, to where the tag is unlikely to have been able to travel. Consequently, this step is only merited when the tag frequency is high, i.e. when the tag can only have moved a short distance since the last transmission. The TagType.Eliminate_Remote_Readers is configured to indicate whether such demotion evaluation should be performed.
  • The algorithm checks the TagType.Eliminate_Remote_Readers, if it is False, then the algorithm jumps to Step 3. Otherwise:
  • Demote RSSI Values
  • The algorithm evaluates the previous location determination, i.e. the output from the previous instance of the thread. The algorithm iterates down the list of tag reads.
  • If the Readerbean. Eliminate_Remote_Readers is false, then the NormalizedRSSI value is not adjusted. This might occur, for example, when reader is on the perimeter of a facility, or when the reader is near an elevator. Else if the readerbean.locid is equal to the previous determination's readerbean.locid then the NormalizedRSSI value is not adjusted. This is because the data show that the tag appears to be in the same place, or at least a similar distance from this reader.
  • Else, if the last Location determination has a confidence of Confidence_Medium or higher, the algorithm iterates through the previous determination's readerbean.locid.AdjacentReaderEntry.ReaderBean.LocID. If there is a match to the current readerbean.locid, then it appears that the tag could have moved to this reader since the last read, and the NormalizedRSSI value is not adjusted. If there is no match, the NormalizedRSSI value is factored by the ReaderBean.NonAdjacentNormalizeFactor. The point of making this a configurable property of the ReaderBean is that it allows an individual reader to be configured to solve its unique RSSI issues. In general, however, the system should have a default value of, e.g. 0.8, and a null in the ReaderBean would imply that the system default should be used.
  • Else, if the last Zone determination has a confidence of Confidence_Medium or higher, the same process as the immediately preceding step is conducted, where the algorithm iterates through the list of readers in the zone, looking to see any of those readers might be in the proximity of the reader being evaluated. The same comparison and adjustments are made if no match is found.
  • Else, there is now a situation where there was little confidence in the prior reader determination, or the prior Zone determination, and there is no credible way to check that the recent read was consistent with the prior location. In this case, the system does not demote anything and it moves on, i.e. NOOP.
  • Step 3—Identify Contenders (27)
  • The algorithm must determine the nearest reader to the tag, or a list of the candidates for the nearest reader when there is no clear winner. The output of this stage is a list of nearest readers, i.e. the contenders. Note, it is assumed that non-contenders are deleted from the adjusted input list. After this step, the list only contains the contenders.
  • If there is only one reader in the list, then the job is done, move to next step.
  • If there is more than one reader in the list, two essential steps remain to be conducted:
      • The list must be sorted with the highest probability read first; and
      • A cutoff must be determined so that reads falling below a certain threshold are eliminated.
  • Determining the Probability
  • There are several data which influence the probability: the similarity between the Adjusted RSSI and the Normalized RSSI, the comparison of the Normalized RSSI with the ReaderBean.CloseProximitySoftwareRSSI, and the magnitude of the RSSI. To accommodate these data, the algorithm computes a ranking value that is a singular integer: the higher the value, the higher the probability that this is the nearest reader. Note that this value may often be negative.
  • Note that this portion of the algorithm is preferably written as a distinctly separate function. It is possible to adjust and amend the core of this ranking based upon evaluation of real world scenarios.
  • For each record in the list of reads:
  • If the ReaderBean.CloseProximitySoftwareRSSI is non null (or non zero), the initial value of the Ranking value is set to (ReaderBean.CloseProximitySoftwareRSSI)—(Normalized RSSI value) which may have a positive or negative result.
  • Else, the ranking value is set to (Default_Close_Proximity_software_RSSI)—(Normalized RSSI value).
  • If the Normalized RSSI value is the same as the Adjusted RSSI value, e.g. it is a reader in proximity to the last read, then the Ranking value is factored by the Adjusted_Equals_Normalized factor.
  • Determining the Cut Off
  • To reduce the permutations that are run in Stage 3 (below), the unlikely candidates must be eliminated.
  • If the list has one entry, exit this step and move to Stage 3
  • The algorithm iterates down the set and identifies all the records that have a Normalized RSSI value which is greater than the ReaderBean.SoftwareRSSI, if the count of the matching records is one or greater, delete the non-qualifying records, i.e. the records that are less than the SoftwareRSSI).
  • If the set has one entry, exit this step and move to Stage 3.
  • The set is sorted in descending order by the Ranking value.
  • If the highest Raking value is less than the Alternative_Computation_Ranking_Trigger, then the algorithm discards its set, and processing switches to the Alternative Location Determination (discussed next)
  • Any record with a Ranking value less than Contenders_Percentage_To_Leader of the top value is deleted. In some embodiments, the data are normalized to have positive values if the percentage computation is to make sense.
  • The set now contains the list of contenders; exit this step and move to Stage 3.
  • Alternative Location Determination
  • This process is invoked when the data fail to show that there is a least one candidate reader with a strong adjusted RSSI value. In other words, it is not certain where the tag is located. The LocationConfidence is set to Confidence_mediumlow.
  • The Set is initialized to the adjusted input list and sorted, descending, by Adjusted RSSI value.
  • The Set is iterated and the AdjustedRSSI is compared to the ReaderBean.CloseProximitySoftwareRSSI, if the count of the matching records is one or greater, delete the non-qualifying records, i.e. the records less than the SoftwareRSSI, and proceed to stage three.
  • The Set is iterated and the AdjustedRSSI each records is assigned a Ranking value. The ranking value in this situation is the percentage value representing where the AdjustedRSSI lies in a range from the ReaderBean. SoftwareRSSI to ReaderBean.CloseProximitySoftwareRSSI or the system defaults.
  • If there are one or more records that have a Ranking value in excess of the system value Alternative_Percentage_to_Proximity, then delete the records that fall below this threshold and move to Stage 3.
  • The set is sorted, descending, by Ranking value. If there are more than Alternative_Max_Weak_Candidates in the set, delete the records after the Alternative_Max_Weak_Candidates one, and move to Stage 3.
  • Stage 3: Select the Closest Reader (28)
  • At this point, the algorithm has reduced the list of readers to those readers that are assumed to be in reasonable proximity to where the tag was recently, and within that set to the readers with the strongest RSSI values. The reduced set of readers should contain one record for each closest reader candidate.
  • Each record in the set is appended with two values: the ReaderBean.locID, and ReaderBean.zoneID.
  • If the list contains one entry for locID, the stage is complete and the algorithm advances to Stage 4.
  • If the algorithm has achieved its objective, and the tag is somewhere between a collection of readers, at this stage the list of final contenders contains a list of readers that are all in proximity to each other
  • This step involves comparing each readers list of adjacent readers. Each record in the set has a ReferenceCount field. The algorithm iterates the list and compares each record's ReaderBean.adjacentReaders list and if there is a matching on any other records ReaderBean.readerUID, the matching records ReferenceCount field is incremented. After of all the records in the set have been processed, the ReferenceCount field may have a value between zero and (Set Record Count—1). Any records with less then the highest value are deleted.
  • Step 3 is repeated until all ReferenceCounts are the same, i.e. none are deleted.
  • The list now contains the readers that surround the tag or, in rare situations, a list of readers which are completely isolated from each other.
  • If the list contains one entry, the stage is complete and the algorithm advances to Stage 4.
  • The Set is iterated and the AdjustedRSSI each records is assigned a Ranking Value. The Ranking Value is like a volume indicator and is the percentage value representing where the AdjustedRSSI lies in a range from the ReaderBean. SoftwareRSSI to ReaderBean.CloseProximitySoftwareRSSI, or the system defaults.
  • The reader with the highest Ranking Value is selected and the others are deleted, the stage is complete and the algorithm advances to Stage 4.
  • By definition the closest location is the closest reader's ReaderBean.locID.
  • Stage 4: Identify the Zone (29)
  • In most situations the tag is not situated directly at a reader. The tag is positioned between two or more readers. This stage uses the signal strength values of the last set of reads, and compares them with the signal strengths at adjacent readers to estimate the zone. This evaluation is preferably performed multiple times, once for each nearest candidate. A probability is calculated for the selected zone through each iteration. However, it may not be necessary because the results from algorithm may suffice. A final determination of whether to perform this test on multiple candidate nearest readers is made, when an in the field performance testing is conducted. For the present embodiment of the invention, it is assumed that one Zone calculation is sufficient.
  • The input list of Adjusted RSSI data are iterated. Assume that there is an additional field ZoneCandidate.
  • Any records that are not in the Closest Readers ReaderBean.adjacentReaders list are eliminated. We are now left with the closest reader and the adjacent readers that got a read greater than their ReaderBean.softwareRSSI value.
  • If all the remaining readers have the same ReaderBean.ZoneID, the Zone has been identified and the stage is complete
  • Else, the algorithm compares the Closest Readers Adjusted RSSI value with the each other readers Adjusted RSSI1 value, and determines which zone is likely based on the adjacentReaders.relativeRSSI value. The winning zone is stored in the ZoneCandidate.
  • Any record, other than the closest readers, with a ZoneCandidate value the same as the Closest Readers ReaderBean.ZoneID is deleted.
  • If there is only the closest reader's record remaining, the zone is Closest Readers ReaderBean.ZoneID and the algorithm is complete,
  • Else, the Zone_Confidence is set to Confidence_Medium, and the algorithm computes the confidence of each remaining ZoneCandidate. This is achieved by iterating down the list of remaining readers as follows:
      • The difference in adjusted RSSI between the Closest Reader and the current reader's RSSI is computed (although a post-Spike adjusted value may be used);
      • The result of the immediately preceding step then has the Closestreader.relativeRSSI value subtracted;
      • The record in the set with the largest value from the immediately preceding step is selected;
      • If the any non selected ZoneCandidiates values from the second step above is less than Tough_Zone_Choice lower than the largest value, the Zone_Confidence is set to Confidence_MediumLow.
  • The winning zone is this ReaderBean.ZoneID.
  • If the LocationConfidence is Confidence_MediumLow or lower then the Zone_Confidence is set to the LocationConfidence. In other words, if we are not confident about the location we cannot really be confident about the zone either.
  • The computation is complete and the selected values are returned, just in time to begin the process all over again.
  • Computer System Overview
  • Those skilled in the art will appreciate that the invention herein is implemented in a computer. For purposes of example, and not by way limitation a computer comprises a processor, main memory, storage media, input devices, and peripherals, all coupled together by a system bus. The computer may exist in a network or any one or more of its individual elements may be distributed across a network. The storage media comprises a mass storage and zero or more other drives. The mass storage comprises an operating system and one or more regular applications, such as a Web browser. For the sake of simplicity, only these components are discussed. If so desired, computer system may comprise additional components.
  • Processor
  • The processor is the component responsible for executing instructions to provide the overall functionality of the computer system. For purposes of the invention, the processor may be any type of processor that is capable of executing any type of computer instructions. For the sake of simplicity, only one processor is herein. However, it should be noted that the computer system may comprise additional processors, if so desired.
  • Main Memory
  • The main memory provides the memory needed by the processor to execute programs. More specifically, the processor uses the main memory to store program instructions while those instructions are being executed. In addition, the processor uses the main memory to store data and other information generated during the execution of instructions. Furthermore, the main memory may be used to store the computer system state information. The use and management of the main memory is discussed in greater detail below.
  • User Interface
  • Various output components may include, for example, a video card, a video display, an audio card, and a set of speakers. These components enable the computer system to provide information to a user. The input devices enable the user to provide information to the computer system. The input devices may include, for example, a keyboard, an infrared receiver for receiving infrared signals, such as signals from a remote control, and a cursor control device such as a mouse, a trackball, a remote-controlled pointing device, etc. Basically, anything that enables the computer system to interface with a user can be included as user interface components.
  • Storage Media
  • The storage media provides non-volatile storage for the computer system. The storage media may comprise a mass storage magnetic hard drive, and zero or more other drives. The other drives may include, for example, a floppy drive, a CD-ROM drive, a DVD drive, a CD-RW drive, etc. The drives enable the computer system to read from and write to storage media other than hard drive. All of the storage media may be accessed via a common controller interface, such as an IDE interface. While the storage media are described herein as drives, it should be noted that storage media need not be drives but, rather, may take on other forms, for example, disk-on-chip modules, flash memory, etc. All possible forms are within the scope of the invention.
  • The mass storage comprises a plurality of programs, including an operating system and one or more applications. The operating system is the general-purpose operating system that is loaded and executed during a regular boot-up process to provide an overall operating environment for the computer system. The applications, such as a Web browser, run within the environment provided by the operating system. For purposes of the invention, the operating system may be any operating system, including but not limited to Windows XP®. The inventive algorithm herein described is implemented in an application program.
  • Peripherals
  • In addition to the components already described, the computer system may further comprise other peripherals, such as printers, scanners, network cards, RFID readers, etc. These peripherals may interface with the computer system via various ports and interfaces, such as parallel ports, serial ports, USB ports, SCSI interfaces, etc. Generally, any device that is capable of interfacing with the computer system can be included as one of the peripherals.
  • Although the invention is described herein with reference to the preferred embodiment, one skilled in the art will readily appreciate that other applications may be substituted for those set forth herein without departing from the spirit and scope of the present invention. Accordingly, the invention should only be limited by the Claims included below.

Claims (13)

1. A computer implemented method for combining RFID tag signal strength computations with factors that incorporate physical realities to determine a tag's real-time location, comprising the steps of:
evaluating a tag read list comprised of reader reception of signals emitted by said tag, said evaluating step including the steps of checking for locations in which no read is made and for locations in which there are spikes in tag signal strength;
evaluating nearest tag reader probabilities, including the steps of evaluating confidence factors, demoting unlikely nearest readers, and identifying contenders;
selecting a closest reader; and
identifying a zone within which said tag is located.
2. The method of claim 1, the step of checking for locations in which no read is made further comprising the steps of:
if a tag is not read on a current iteration such that there are no records in an adjusted tag reads list, then determining if an unadjusted tag reads I ist includes any raw tag reads;
if said unadjusted tag reads list includes any raw tag reads, then advising that there is a faint read and returning a tag-read datetime from a raw readlist, and zero for any other factors, indicating that nearest location and zone are indeterminate;
otherwise, indicating that a specified tag is missing and returning a datetime that was passed as input and zero for any other factors, indicating that nearest location and zone are indeterminate.
3. The method of claim 1, the step of checking for locations in which there are spikes in tag signal strength further comprising the steps of:
providing a spike check threshold property, wherein:
if said spike check threshold is zero, no spike check is required;
if an eliminate spikes property is false, no spike check is required;
otherwise, evaluating each tag read in turn and comparing a current adjusted reader signal strength indicator (RSSI) value a previous adjusted RSSI value for that same reader;
wherein if a difference resulting from said comparison is greater than said spike check threshold, then identifying a spike and setting a normalized RSSI value to said previous adjusted RSSI value.
4. The method of claim 1, said step of evaluating confidence factors further comprising the steps of:
sorting a list of adjusted reads by a reader guarantee degree factor;
if there is one reader within a predetermined reader guarantee degree factor threshold, then evaluation is complete and a tag-read datetime for that reader is returned indicating a high confidence level for a reader location ID and a reader zone ID; and
if there is more than one reader within said predetermined reader guarantee degree factor threshold, then populating a nearest reader list with said readers and setting confidence level for reader location IDs and reader zone IDs to medium.
5. The method of claim 4, said step of demoting unlikely nearest readers, further comprising the steps of:
if there are no readers within said predetermined reader guarantee degree factor threshold, then eliminating any nearest reader contenders that may be reading a tag from a remote location where the tag is unlikely to have been able to travel by configuring an eliminate remote readers threshold to indicate whether such demotion evaluation should be performed; and
checking if said eliminate remote readers threshold is false, wherein said step is complete; else:
evaluating a previous location determination by iterating down a list of tag reads, wherein:
if said eliminate remote readers threshold is false, then a normalized RSSI value is not adjusted;
else if a reader local ID is equal to a previous determination's reader local ID then said normalized RSSI value is not adjusted;
else, if a last location determination has a confidence level of medium or higher, then iterating through a previous determination's reader local ID and an adjacent reader entry location ID and:
if there is a match to a current reader location ID, then said normalized RSSI value is not adjusted; and
if there is no match to said current reader location ID, then said normalized RSSI value is factored by a non-adjacent normalize factor;
else, if a last zone determination has a confidence level of medium or higher, the same process as the immediately preceding step is conducted, iterating through a list of readers in a zone to identify any of the readers on said list that are proximate to a reader being evaluated, wherein if there is no match to said current reader location ID, then said normalized RSSI value is factored by a non-adjacent normalize factor;
else, where there is little confidence in a prior reader determination or a prior zone determination, performing no operation at this step.
6. The method of claim 5, said step of identifying contenders further comprising the steps of:
determining a nearest reader to a tag, or a list of candidates for a nearest reader when there is no clear winner;
outputting a list of nearest readers comprising contenders, where non-contenders are deleted from an adjusted input list, wherein:
if there is only one reader in said list, then moving to a next step; and
if there is more than one reader in said list, then:
sorting the list with a highest probability read first; and
determining a cutoff to eliminate reads falling below a predetermined threshold.
7. The method of claim 6, said step of evaluating nearest tag reader probabilities further comprising the steps of:
computing a ranking value, wherein the higher the value, the higher the probability that a reader is a nearest reader to a tag, wherein for each record in a list of reads:
if a close proximity RSSI value is non null (or non zero), an initial value of said ranking value is set to said close proximity RSSI value minus a normalized RSSI value;
else, said ranking value is set to a default close proximity RSSI value minus said normalized RSSI value;
if said normalized RSSI value is the same as an adjusted RSSI value, then said ranking value is factored by an adjusted equals normalized factor.
8. The method of claim 7, said step of evaluating nearest tag reader probabilities further comprising the steps of:
iterating down a reader set and identifying all records that have a normalized RSSI value which is greater than an RSSI threshold value wherein, if a count of matching records is one or greater, deleting those records that are less than said RSSI threshold value;
wherein if said reader set has one entry, exiting;
else sorting said reader set in descending order by a ranking value;
wherein if a highest raking value is less than an alternative computation ranking trigger, then discarding said reader set and switching to an alternative location determination procedure;
deleting any record with a ranking value less than a contenders percentage to leader value.
9. The method of claim 8, said step of evaluating nearest tag reader probabilities further comprising the steps of:
executing an alternative location determination procedure when there is not a least one candidate reader with a strong adjusted RSSI value by:
setting a location confidence factor medium low;
initializing a reader set to an adjusted input set and sorting said set in descending order by an adjusted RSSI value;
iterating said reader set;
comparing said adjusted RSSI value to a close proximity RSSI value and, if the count of the matching records is one or greater, deleting records having a value less than said RSSI value and proceeding to a next step in said method;
else iterating said reader set and assigning an adjusted RSSI for each record as a ranking value representing where said adjusted RSSI lies in a range from said RSSI value to said close proximity RSSI value;
if one or more records have a ranking value in excess of an alternative percentage to proximity value, then deleting records that fall below said threshold and proceeding to a next step in said method;
else sorting said reader set in descending order by ranking value, where if there are more candidates than an alternative maximum weak candidates value in said reader set, then deleting records below said alternative maximum weak candidates value and proceeding to a next step in said method.
10. The method of claim 1, said step of selecting a closest reader further comprising the steps of:
appending each record in a reader list with a reader location ID value and a reader zone ID value;
if said reader list contains one entry for location ID, then proceeding to a next step in said method, wherein a list of final contenders contains a list of readers that are all in proximity to each other;
comparing each readers list of adjacent readers, wherein each record in said reader list has a reference count field;
iterating said reader list and comparing each record's adjacent readers list, wherein if there is a match on any other records in a reader UID, then incrementing a matching records reference count field, wherein any records with less then a highest value are deleted;
repeating the preceding step until all reference counts are the same, wherein said reader list now contains readers that surround a tag or a list of readers which are completely isolated from each other;
if said reader list contains one entry, proceeding to a next step in said method;
else iterating said reader set and assigning an adjusted RSSI for each record as a ranking value;
selecting a reader with a highest ranking value is selected and deleting the other readers; and
proceeding to a next step in said method.
11. The method of claim 1, said step of identifying a zone within which said tag is located further comprising the steps of:
obtaining signal strength values of a last set of reads;
comparing said signal strength values for each reader with the signal strengths at adjacent readers to estimate a zone;
making a determination of whether to perform the comparing step on multiple candidate nearest readers and, if so, performing the comparing step for multiple iterations, once for each nearest candidate;
if multiple iterations are performed, calculating a probability for a selected zone through each said iteration;
iterating an input list of adjusted RSSI data are iterated, assume that there is an additional field zone candidate;
eliminating any records that are not in a closest readers adjacent readers list, wherein a closest reader and adjacent readers having a read value greater than their RSSI value remain in said list;
if all remaining readers have a same zone ID, said zone has been identified;
else comparing a closest readers adjusted RSSI value for a reader with each other reader's adjusted RSSI value, and determining which zone is likely based on an adjacent readers relative RSSI value;
storing a winning zone is stored as a zone candidate.
deleting any record, other than the closest readers, with a zone candidate value that is the same as a closest readers zone ID;
if there is only a closest reader's record remaining, the zone is closest readers zone ID;
else, zone confidence is set to medium, and the confidence of each remaining zone candidate is calculated by iterating down a list of remaining readers as follows:
computing a difference in adjusted RSSI between a closest reader and a current reader's RSSI;
subtracting a closest reader relative RSSI value from the result of the immediately preceding step;
selecting a record in said reader set from the immediately preceding step with a largest value;
setting zone confidence to medium low if any non selected zone candidate values from the second step immediately above are less than a tough zone choice value and lower than a largest value;
wherein the winning zone is the zone ID; if location confidence is medium low or lower, then zone confidence is set to location confidence.
12. A computer implemented method for combining RFID tag signal strength computations with factors that incorporate physical realities to determine a tag's real-time location, comprising the steps of:
evaluating a tag read list;
evaluating nearest reader probabilities;
selecting a closest reader; and
identifying a zone.
13. An apparatus for combining RFID tag signal strength computations with factors that incorporate physical realities to determine a tag's real-time location, comprising:
a processor configured for evaluating a tag read list comprised of reader reception of signals emitted by said tag, said processor comprising modules for checking for locations in which no read is made and for locations in which there are spikes in tag signal strength;
said processor configured for evaluating nearest tag reader probabilities, said processor comprising modules for evaluating confidence factors, demoting unlikely nearest readers, and identifying contenders;
said processor configured for selecting a closest reader; and
said processor configured for identifying a zone within which said tag is located.
US12/338,739 2008-12-18 2008-12-18 Zone determination by combining signal strength with topological factors Expired - Fee Related US8432253B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/338,739 US8432253B2 (en) 2008-12-18 2008-12-18 Zone determination by combining signal strength with topological factors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/338,739 US8432253B2 (en) 2008-12-18 2008-12-18 Zone determination by combining signal strength with topological factors

Publications (2)

Publication Number Publication Date
US20100156599A1 true US20100156599A1 (en) 2010-06-24
US8432253B2 US8432253B2 (en) 2013-04-30

Family

ID=42265161

Family Applications (1)

Application Number Title Priority Date Filing Date
US12/338,739 Expired - Fee Related US8432253B2 (en) 2008-12-18 2008-12-18 Zone determination by combining signal strength with topological factors

Country Status (1)

Country Link
US (1) US8432253B2 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090116700A1 (en) * 2007-11-06 2009-05-07 Mitsubishi Electric Corporation Entering and leaving management system
US20100214116A1 (en) * 2009-02-23 2010-08-26 HUANG Shu-ying Rfid location method and system thereof
US20100303056A1 (en) * 2009-05-26 2010-12-02 Industrial Technology Research Institute Probability time division multiplexing polling method and wireless identifier reader controller thereof
WO2013033243A2 (en) * 2011-08-30 2013-03-07 Proventix Systems, Incorporated System and method for detecting and identifying device utilization
US20130193207A1 (en) * 2010-03-18 2013-08-01 Graham Alexander Munro Murdoch Lateral discrimination method and device
US20140111338A1 (en) * 2012-10-18 2014-04-24 Tyco Fire & Security Gmbh Method for backfield reduction in electronic article surveillance (eas) systems
US20140122170A1 (en) * 2012-10-26 2014-05-01 Disney Enterprises, Inc. Detection of guest position
US9147334B2 (en) 2008-11-19 2015-09-29 Proventix Systems, Inc. System and method for monitoring hospital workflow compliance with a hand hygiene network
US9171448B1 (en) * 2014-06-11 2015-10-27 Target Brands, Inc. RFID tags for locating products
US20150309156A1 (en) * 2014-04-25 2015-10-29 Palo Alto Research Center Incorporated Computer-Implemented System And Method For Tracking Objects Via Identifier-Tracker Pairings
WO2016036853A1 (en) * 2014-09-07 2016-03-10 University Of Florida Research Foundation Inc. Dynamic user-defined check-in points
US9841501B1 (en) * 2012-10-29 2017-12-12 The Boeing Company Use of blink counts to locate movable tagged assets
WO2018185700A1 (en) * 2017-04-07 2018-10-11 Sita Information Networking Computing Usa, Inc. Article tracking system and method
CN110544510A (en) * 2019-05-31 2019-12-06 中南大学 contig integration method based on adjacent algebraic model and quality grade evaluation

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9285470B2 (en) * 2013-05-23 2016-03-15 Trimble Navigation Limited RFID tag distance measurer

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6674403B2 (en) * 2001-09-05 2004-01-06 Newbury Networks, Inc. Position detection and location tracking in a wireless network
US20060187029A1 (en) * 2005-02-24 2006-08-24 Alfred Thomas Security zones for casino gaming
US7180420B2 (en) * 2004-05-25 2007-02-20 Mgm Computer Systems, Inc. System and method using triangulation with RF/LF and infrared devices for tracking objects
US20070236337A1 (en) * 2006-04-04 2007-10-11 Braun John F Performance enhancement algorithm for Radio Frequency Identification (RFID) systems
US20070247315A1 (en) * 2004-07-29 2007-10-25 Mitsubishi Electric Corporation Place-Status Management System, Radio Tag Reader, and Managing Apparatus
US20080165058A1 (en) * 2007-01-04 2008-07-10 International Business Machines Corporation Spatially locating radio tags for on demand systems
US7538715B2 (en) * 2004-10-04 2009-05-26 Q-Track Corporation Electromagnetic location and display system and method
US20090216438A1 (en) * 2008-02-21 2009-08-27 Microsoft Corporation Facility map framework
US20090243800A1 (en) * 2008-03-29 2009-10-01 International Business Machines Corporation Media passport system

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6674403B2 (en) * 2001-09-05 2004-01-06 Newbury Networks, Inc. Position detection and location tracking in a wireless network
US7180420B2 (en) * 2004-05-25 2007-02-20 Mgm Computer Systems, Inc. System and method using triangulation with RF/LF and infrared devices for tracking objects
US20070247315A1 (en) * 2004-07-29 2007-10-25 Mitsubishi Electric Corporation Place-Status Management System, Radio Tag Reader, and Managing Apparatus
US7538715B2 (en) * 2004-10-04 2009-05-26 Q-Track Corporation Electromagnetic location and display system and method
US20060187029A1 (en) * 2005-02-24 2006-08-24 Alfred Thomas Security zones for casino gaming
US20070236337A1 (en) * 2006-04-04 2007-10-11 Braun John F Performance enhancement algorithm for Radio Frequency Identification (RFID) systems
US20080165058A1 (en) * 2007-01-04 2008-07-10 International Business Machines Corporation Spatially locating radio tags for on demand systems
US20090216438A1 (en) * 2008-02-21 2009-08-27 Microsoft Corporation Facility map framework
US20090243800A1 (en) * 2008-03-29 2009-10-01 International Business Machines Corporation Media passport system

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8209264B2 (en) * 2007-11-06 2012-06-26 Mitsubishi Electric Corporation Entering and leaving management system
US20090116700A1 (en) * 2007-11-06 2009-05-07 Mitsubishi Electric Corporation Entering and leaving management system
US9147334B2 (en) 2008-11-19 2015-09-29 Proventix Systems, Inc. System and method for monitoring hospital workflow compliance with a hand hygiene network
US20100214116A1 (en) * 2009-02-23 2010-08-26 HUANG Shu-ying Rfid location method and system thereof
US20100303056A1 (en) * 2009-05-26 2010-12-02 Industrial Technology Research Institute Probability time division multiplexing polling method and wireless identifier reader controller thereof
US8233468B2 (en) * 2009-05-26 2012-07-31 Industrial Technology Research Institute Probability time division multiplexing polling method and wireless identifier reader controller thereof
US8991703B2 (en) * 2010-03-18 2015-03-31 Sato Vicinity Pty Ltd Lateral discrimination method and device
US20130193207A1 (en) * 2010-03-18 2013-08-01 Graham Alexander Munro Murdoch Lateral discrimination method and device
WO2013033243A2 (en) * 2011-08-30 2013-03-07 Proventix Systems, Incorporated System and method for detecting and identifying device utilization
WO2013033243A3 (en) * 2011-08-30 2013-04-25 Proventix Systems, Incorporated System and method for detecting and identifying device utilization
US20140111338A1 (en) * 2012-10-18 2014-04-24 Tyco Fire & Security Gmbh Method for backfield reduction in electronic article surveillance (eas) systems
US9087443B2 (en) * 2012-10-18 2015-07-21 Tyco Fire & Security Gmbh Method for backfield reduction in electronic article surveillance (EAS) systems
CN104854633A (en) * 2012-10-18 2015-08-19 泰科消防及安全有限公司 Method for backfield reduction in electronic article surveillance (eas) systems
US20140122170A1 (en) * 2012-10-26 2014-05-01 Disney Enterprises, Inc. Detection of guest position
US9841501B1 (en) * 2012-10-29 2017-12-12 The Boeing Company Use of blink counts to locate movable tagged assets
US10634760B2 (en) 2014-04-25 2020-04-28 Palo Alto Research Center Incorporated Computer-implemented system and method for object tracking via identifier-tracker pairings
US20150309156A1 (en) * 2014-04-25 2015-10-29 Palo Alto Research Center Incorporated Computer-Implemented System And Method For Tracking Objects Via Identifier-Tracker Pairings
US11867825B2 (en) 2014-04-25 2024-01-09 Xerox Corporation Computer-implemented system and method for object tracking via identifier-tracker pairings
US9638787B2 (en) * 2014-04-25 2017-05-02 Palo Alto Research Center Incorporated Computer-implemented system and method for tracking objects via identifier-tracker pairings
US10955520B2 (en) 2014-04-25 2021-03-23 Palo Alto Research Center Incorporated Computer-implemented system and method for object tracking via identifier-tracker pairings
US9171448B1 (en) * 2014-06-11 2015-10-27 Target Brands, Inc. RFID tags for locating products
US10080100B2 (en) 2014-09-07 2018-09-18 University Of Florida Research Foundation, Incorporated Dynamic user-defined check-in points
WO2016036853A1 (en) * 2014-09-07 2016-03-10 University Of Florida Research Foundation Inc. Dynamic user-defined check-in points
CN110914700A (en) * 2017-04-07 2020-03-24 Sita信息网络处理美国有限公司 Item tracking system and method
WO2018185700A1 (en) * 2017-04-07 2018-10-11 Sita Information Networking Computing Usa, Inc. Article tracking system and method
US11189155B2 (en) 2017-04-07 2021-11-30 Sita Information Networking Computing Usa, Inc. Article tracking system and method
EP4050913A1 (en) * 2017-04-07 2022-08-31 Sita Information Networking Computing USA, Inc. Article tracking system and method
AU2018248740B2 (en) * 2017-04-07 2022-11-24 Sita Information Networking Computing Usa, Inc. Article tracking system and method
CN110544510A (en) * 2019-05-31 2019-12-06 中南大学 contig integration method based on adjacent algebraic model and quality grade evaluation

Also Published As

Publication number Publication date
US8432253B2 (en) 2013-04-30

Similar Documents

Publication Publication Date Title
US8432253B2 (en) Zone determination by combining signal strength with topological factors
JP4627743B2 (en) Entrance / exit management system and entrance / exit management device
CN101965598B (en) Electronic article surveillance system neural network minimizing false alarms and failures to deactivate
JP4198602B2 (en) Operating method and system using video
US20090027165A1 (en) Systems and methods for object localization and path identification based on rfid sensing
US20080120200A1 (en) Method and system for automatic inventory variance identification
US9030316B2 (en) System and method of anomaly detection with categorical attributes
US10896561B2 (en) Building access control system with spatial modeling
US20110148633A1 (en) Using trajectory for authentication
JPWO2007138811A1 (en) Suspicious behavior detection apparatus and method, program, and recording medium
JP2001052054A (en) Article taking-out management system
US20120169458A1 (en) Method and System for Monitoring Physical Security and Notifying if Anomalies
KR102212678B1 (en) Automation system of opening and closing door and operation method of the same
US7061376B2 (en) System of non-intrusive access control and method thereof
KR102343980B1 (en) Smart system for managing access
US20200135008A1 (en) Building alarm system with bayesian event classification
CN111462374A (en) Access control system including occupancy estimation
US20190325178A1 (en) Monitoring apparatus and method for casino chip management
US10229388B2 (en) Dynamic asset monitoring using automatic updating of rules
CN113311405B (en) Regional population counting method and device, computer equipment and storage medium
US20190236920A1 (en) Office building security system using fiber sensing
US8600840B2 (en) Dynamic asset monitoring using electronic markers
KR20200126496A (en) System and method for identifying intruder
CN116449330B (en) Indoor people number estimation method and device, computer equipment and storage medium
WO2021219922A1 (en) Control of access

Legal Events

Date Code Title Description
AS Assignment

Owner name: TITAN HOLDINGS LIMITED,UNITED ARAB EMIRATES

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:AINSBURY, ROBERT;ADAWIYA, IMMAD;OMAR, KHALID;REEL/FRAME:022010/0720

Effective date: 20081218

Owner name: TITAN HOLDINGS LIMITED, UNITED ARAB EMIRATES

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:AINSBURY, ROBERT;ADAWIYA, IMMAD;OMAR, KHALID;REEL/FRAME:022010/0720

Effective date: 20081218

AS Assignment

Owner name: AL-QEMMAH LETECHNOLOGIA AL-MA'LOUMAT CO. (SIMTIX),

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TITAN INTERNATIONAL HOLDINGS LIMITED;REEL/FRAME:030059/0828

Effective date: 20130301

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20170430