Abstract: [00111] The invention relates to a method and system for validating contents of a shipment bag. The system includes a tunnel, a conveyor belt to transport one or more shipment bags from a loading area to an unloading area, wherein the shipment bag passes through the tunnel, and a RFID reader placed within the tunnel to record a signal strength of RFID signals received from a plurality of tags comprising a set of valid tags physically associated with a set of items present within the shipment bag and a set of stray tags. The system further includes a validation module to determine the shipment bag as valid or invalid by identifying the set of valid tags from the plurality of tags and by comparing the set of valid tags with a preloaded list of RFID tags associated with the shipment bag.
Description:
FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003
COMPLETE SPECIFICATION
(Section 10, rule 13)
“TAG VALIDATION SYSTEM AND METHOD ”
Myntra Designs Private Limited
3rd Floor, AKR Tech Park, Krishna Reddy Industrial Area, Muneshwara Nagar, Bangalore 560068
The following specification particularly describes the invention and the manner in which it is to be performed
BACKGROUND
[0001] The invention generally relates to the field of warehouse management systems and more particularly to a tag validation system and method.
[0002] In a typical warehouse system, shipment bags containing one or more items ordered by a customer are tagged with barcodes. Shipment bags having a similar destination address or vendor location are usually packed into a master bag. Multiple such master bags are subsequently placed in containers or crates and moved between various nodes within a warehouse (such as such as a dispatch node, a transit node, and the like) before being shipped to delivery centers outside the warehouse.
[0003] While the master bags are generally traceable within the warehouse, traceability is difficult once the master bags leave the warehouse for transit to the delivery center. As a result, it is difficult to attribute and account for a loss of item(s) from the master bags during the transit. Further, the loss of items is difficult to identify as primary points of pilferage of items(s) from the shipment bags are usually not known. Difficulty in traceability can also be attributed to the negligible visibility of item(s) present inside the master bag.
[0004] Hence to achieve highly efficient warehouse operations, it is desirable to improve the traceability, visibility, and accuracy in tracking the movements of the master bags during the transit from the warehouse to the delivery center. Accordingly, there is a need for a method and system to validate the master bags during the transit. The method and system should also facilitate item level processing of the master bag without opening the master bag and at a fast rate to reduce pilferage and ensure compliance.
SUMMARY
[0005] The following summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, example embodiments, and features described, further aspects, example embodiments, and features described, further aspects, example embodiments, and features will become apparent by reference to the drawings and the following detailed description. Example embodiments provide system and method for validating a shipment bag in transit.
[0006] Briefly, according to an example embodiment, a system for validating contents of a shipment bag during transit from a warehouse to a delivery center is provided. The system includes a tunnel, a conveyor belt to transport one or more shipment bags from a loading area to an unloading area, wherein the shipment bag passes through the tunnel, and a radio frequency identification (RFID) reader placed within the tunnel to record a signal strength of RFID signals received from a plurality of tags comprising a set of valid tags physically associated with a set of items present within the shipment bag and a set of stray tags. The system further includes a validation module to determine the shipment bag as valid or invalid, where the validation module includes a tag identification module operatively coupled with the RFID reader to determine a validity of the shipment bag by identifying the set of valid tags from the plurality of tags and by comparing the set of valid tags with a preloaded list of RFID tags physically associated with a list of items packed into the shipment bag at the warehouse.
[0007] The tag identification module is configured to compute a tag score compute a tag score for each pair of tags selected from the plurality of tags. The tag score comprises a dynamic time warping (DTW) score, and a difference between a number of recordings of RFID signals of both tags in the each pair of tags. The tag score for a pair of tags is more than a threshold value when at least one tag in the pair is a stray tag and the tag score, and wherein the tag score is lower than the threshold value when both the tags in the pair valid tags.
[0008] The tag identification module further creates at least two clusters comprising mutually exclusive sets of pairs of tags based on the tag score. Among the at least two clusters, one cluster includes a set of pairs, each pair comprising at least one stray tag; and another cluster has a set of pairs of valid tags. Further, the tag identification module creates at least two groups, wherein each group comprises unique tags associated with a respective cluster; and identifies common tags between the at least two groups as the set of valid tags. The tag identification module is further configured to identify uncommon tags between the at least two groups as the set of stray tags, wherein a stray tag exists outside the shipment bag and within a predetermined distance from the RFID reader. The validation module further includes a classification module that indicates the shipment bag as valid or invalid when the common tags match or do not match with the list of RFID tags respectively.
[0009] The system further includes a rejection arm provided at one end of the tunnel; a controller operatively coupled to the rejection arm and configured to direct the rejection arm to deviate an invalid shipment bag away from the unloading area; and direct the rejection arm to facilitate movement of a valid shipment bag towards the unloading area Further, the signal strength is a received signal strength indicator (RSSI) and ranges from -20dBm to -80 dBm.
[0010] In a further embodiment, a method for validating contents of a shipment bag in a tunnel is disclosed. The method includes transporting, by a conveyor belt, one or more shipment bags from a loading area to an unloading area, wherein the shipment bag passes through the tunnel; recording, by a radio frequency identification (RFID) reader placed within the tunnel, a signal strength of RFID signals transmitted by a plurality of tags; wherein the plurality of tags comprise a set of stray tags and a set of valid tags, wherein the set of valid tags is physically associated with a set of items present within the shipment bag; determining, by a validation module, the shipment bag as valid or invalid based on an identification, by a tag identification module, of the set of valid tags from the plurality of tags and by comparing the set of valid tags with a preloaded list of RFID tags physically associated with a list of items packed into the shipment bag at the warehouse.
[0011] The step of determining the shipment bag as valid or invalid further comprises computing a tag score for each pair of tags selected from the plurality of tags, where the tag score comprises comprises a dynamic time warping (DTW) score, and a difference between a number of recordings of RFID signals of both tags in the each pair of tags. The method further includes, creating, by the tag identification module, at least two clusters comprising mutually exclusive sets of pairs of tags based on the tag score; where one cluster has a set of pairs, each pair comprising at least one stray tag; and where another cluster has a set of pairs of valid tags. Further, the method includes creating, by the tag identification module, at least two groups, wherein a group consists of unique tags associated with a respective cluster; and identifying common tags between the at least two groups as the set of valid tags.
[0012] The method further includes, directing, by a controller, a rejection arm, to deviate an invalid shipment bag away from the unloading area; and directing, by the controller, the rejection arm to facilitate movement of a valid shipment bag towards the unloading area, wherein the rejection arm is provided at one end of the tunnel and is operatively coupled to a controller. By following discloses method, an invalid shipment bag is identified and separately collected and only valid shipment bags get collected in the unloading area.
BRIEF DESCRIPTION OF DRAWINGS
[0013] There and other features, aspects, and advantages of the example embodiments will become better understood when the following detailed description is read with reference to the accompanying drawings in which like characters represent like parts throughout the drawings, wherein:
[0014] FIG. 1 is a block diagram illustrating components of a system for validating contents of a shipment bag, according to some aspects of the present description,
[0015] FIG. 2 is a block diagram illustrating operation of a rejection arm of the system of FIG. 1, according to some aspects of the present description,
[0016] FIG. 3 is a block diagram illustrating operation of a rejection arm of the system of FIG. 1, according to some aspects of the present description,
[0017] FIG. 4 is a line graph illustrating RSSI values of a plurality of RFID tags recorded by the system of FIG. 1 over a predefined time period, according to some aspects of the present description,
[0018] FIG. 5 is a graphical representation of Dynamic Time Warping (DTW) score values arranged over an absolute difference between a number of occurrences of RSSI values for a plurality of RFID tags, according to some aspects of the present description,
[0019] FIG. 6 is a flowchart of a method of validating contents of a shipment bag, according to some aspects of the present description, and
[0020] FIG. 7 is a flowchart of a method of validating contents of a shipment bag, according to some aspects of the present description.
[0021]
[0022] DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS
[0023] The drawings are to be regarded as being schematic representations and elements illustrated in the drawings are not necessarily shown to scale. Rather, the various elements are represented such t hat their function and general purpose become apparent to a person skilled in the art. Any connection or coupling between functional blocks, devices, components, or other physical or functional units shown in the drawings or described herein may also be implemented by an indirect connection or coupling. A coupling between components may also be established over a wireless connection. Functional blocks may be implemented in hardware firmware, software or a combination thereof.
[0024] Various example embodiments will now be described more fully with reference to the accompanying drawings in which only some example embodiments are shown. Specific structural and functional details disclosed herein are merely representative for purposes of describing example embodiments. Example embodiments, however, may be embodied in many alternate forms and should not be construed as limited to only the example embodiments set forth herein.
[0025] Accordingly, while example embodiments are capable of various modifications and alternative forms, example embodiments are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that there is no intent to limit example embodiments to the particular forms disclosed. On the contrary, example embodiments are to cover all modifications, equivalents, and alternatives thereof. Like numbers refer to like elements throughout the description of the figures.
[0026] Before discussing example embodiments in more detail, it is noted that some example embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts describe the operations as sequential processes, many of the operations may be performed in parallel, concurrently or simultaneously. In addition, the order of operations may be re-arranged. The processes may be terminated when their operations are completed but may also have additional steps not included in the figure. The processes may correspond to methods, functions, procedures, subroutines, subprograms, etc.
[0027] Specific structural and functional details disclosed herein are merely representative for purposes of describing example embodiments. Inventive concepts may, however, be embodied in many alternate forms and should not be construed as limited to only the example embodiments set forth herein.
[0028] It will be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element, without departing from the scope of example embodiments. As used herein, the term “and/or,” includes any and all combinations of one or more of the associated listed items. The phrase “at least one of” has the same meaning as “and/or”.
[0029] Further, although the terms first, second, etc. may be used herein to describe various elements, components, regions, layers and/or sections, it should be understood that these elements, components, regions, layers and/or sections should not be limited by these terms. These terms are used only to distinguish one element, component, region, layer, or section from another region, layer, or section. Thus, a first element, component, region, layer, or section discussed below could be termed a second element, component, region, layer, or section without departing from the scope of inventive concepts.
[0030] Spatial and functional relationships between elements (for example, between modules) are described using various terms, including “connected,” “engaged,” “interfaced,” and “coupled”. Unless explicitly described as being “direct,” when a relationship between first and second elements is described in the above disclosure, that relationship encompasses a direct relationship where no other intervening elements are present between the first and second elements, and also an indirect relationship where one or more intervening elements are present (either spatially or functionally) between the first and second elements. In contrast, when an element is referred to as being “directly” connected, engaged, interfaced, or coupled to another element, there are no intervening elements present. Other words used to describe the relationship between elements should be interpreted in a like fashion (e.g., “between,” versus “directly between,” “adjacent,” versus “directly adjacent,” etc.).
[0031] The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting. As used herein, the singular forms “a,” “an,” and “the,” are intended to include the plural forms as well, unless the context clearly indicates otherwise. As used herein, the terms “and/or” and “at least one of” include any and all combinations of one or more of the associated listed items. It will be further understood that the terms “comprises,” “comprising,” “includes,” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
[0032] It should also be noted that in some alternative implementations, the functions/acts noted may occur out of the order noted in the figures. For example, two figures shown in succession may in fact be executed substantially concurrently or may sometimes be executed in the reverse order, depending upon the functionality/acts involved.
[0033] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which example embodiments belong. It will be further understood that terms, e.g., those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
[0034] Portions of the example embodiments and corresponding detailed description may be presented in terms of software, or algorithms and symbolic representations of operation on data bits within a computer memory. These descriptions and representations are the ones by which those of ordinary skill in the art effectively convey the substance of their work to others of ordinary skill in the art. An algorithm, as the term is used here, and as it is used generally, is conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of optical, electrical, or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
[0035] The systems described herein, may be realized by hardware elements, software elements and/or combinations thereof. For example, the devices and components illustrated in the example embodiments of inventive concepts may be implemented in one or more general-use computers or special-purpose computers, such as a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), a programmable logic unit (PLU), a microprocessor or any device which may execute instructions and respond. A central processing unit may implement an operating system (OS) or one or software applications running on the OS. Further, the processing unit may access, store, manipulate, process and generate data in response to execution of software. It will be understood by those skilled in the art that although a single processing unit may be illustrated for convenience of understanding, the processing unit may include a plurality of processing elements and/or a plurality of types of processing elements. For example, the central processing unit may include a plurality of processors or one processor and one controller. Also, the processing unit may have a different processing configuration, such as a parallel processor.
[0036] Software may include computer programs, codes, instructions or one or more combinations thereof and may configure a processing unit to operate in a desired manner or may independently or collectively control the processing unit. Software and/or data may be permanently or temporarily embodied in any type of machine, components, physical equipment, virtual equipment, computer storage media or units or transmitted signal waves so as to be interpreted by the processing unit or to provide instructions or data to the processing unit. Software may be dispersed throughout computer systems connected via networks and may be stored or executed in a dispersion manner. Software and data may be recorded in one or more computer-readable storage media.
[0037] At least one example embodiment is generally directed to a system for reading RFID tags and more particularly to a system and method for validating shipment bags containing set of RFID tagged items. It should be noted that the techniques described herein may be applicable to a wide variety of environments, for example, the shipment bags can be validated at a checkpoint such as an en-route hub, between a warehouse and a delivery center.
[0038] FIG. 1 is a block diagram illustrating a system 100 for validating contents of a shipment bag 12. The system 100 includes a sensor 36, a conveyor belt 16, radio frequency identification (RFID) reader 20, a tunnel 18, a validation module 22, and a rejection arm 30. The validation module 22 further comprises a tag identification module 24, a classification module 26 and a controller 28. Each component is described in further detail below.
[0039] The conveyor belt 16 has the sensor 34 that senses presence of one or more shipment bags placed on the conveyor belt. The sensor 34 is configured to throw an alarm or provide an alert when shipment bags (hereinafter “bags”) placed one after another on the conveyor belt do not have a sufficient gap in between. The conveyor belt is set to motion to take a shipment bag (e.g. shipment bag 12) from a loading area 40 to an unloading area 34 via the tunnel 18 in which the RFID reader 20 is placed along with antennas.
[0040] Generally, the shipment bag 12 is packed with a list of items, where each item is associated with a RFID tag before being packed into the shipment bag 112 at the warehouse. The shipment bag 12 is tagged with a master RFID tag which is further associated with the list of RFID tags and said association is stored in a memory accessible by the tag identification module 24. In an ideal case scenario, the shipment bag 12 should carry the list of items from the warehouse to the delivery center. However, due to pilferage or transit loss, one or more items could get lost from the shipment bag 12 during transit from the warehouse to the delivery center. Incase such a loss of items is detected by the system, the shipment bag 12 can be opened at corresponding checkpoint, to determine accurately the loss which may help in further processing. As shown in FIG. 1, the shipment bags contains a set of valid tags 14a-n physically associated with a set of items at the checkpoint where the conveyor belt 16 is provided. The shipment bag is determined as valid, in case the set of valid tags 14a-n map with the list of items.
[0041] The RFID reader 20 along with the antennas (for example, Impinj R420 4 port reader and Kathrein smartshelf antenna (X2)) records a signal strength of RFID signals received from a plurality of tags (14a-n and 38a-d); wherein the plurality of tags comprise a set of stray tags (38a-d) and a set of valid tags (14a-n). A typical signal strength (for example received signal strength (rssi)) ranges from -20dBm to -80 dBm. The set of stray tags (38a-d) are tags that are outside the shipment bag 12, and are within a predetermined distance from the RFID reader 20. For example, a stray tag can be present inside the tunnel, or outside the tunnel inside another shipment bag, and is read by the RFID reader 20 due to its proximity with the antenna. A tag is termed as a stray tag by virtue of not being a part of the shipment bag 12. A set of valid tags 14a-n are physically associated with a set of items present within the shipment bag 12.
[0042] The validation module 22 comprises the tag identification module 24 that is operatively coupled with the RFID reader 20 and configured to determine a validity of the shipment bag 12 by identifying the set of valid tags 14a-n from the plurality of tags (14a-n, 38a-d) and by comparing the set of valid tags 14a-n with a preloaded list of RFID tags physically associated with a list of items packed into the shipment bag 12 at the warehouse.
[0043] The tag identification module 24 is further configured to compute a tag score for each pair of tags selected from the plurality of tags. The tag score is based on a dynamic time warping (DTW) score, and a difference between a number of recordings of RFID signals of both tags in the each pair of tags. The tag identification module 24 further creates at least two clusters comprising mutually exclusive sets of pairs of tags based on the tag score. Typically, one cluster has a set of pairs where each pair includes least one stray tag; and another cluster has a set of pairs including only valid tags. Further, the tag identification module 24 creates at least two groups, wherein each group comprises unique tags associated with a respective cluster; and identify common tags between the at least two groups as the set of valid tags. Accordingly, the tag identification module 24 identifies uncommon tags between the at least two groups as the set of stray tags 38a-d. .
[0044] The validation module 22 further includes a classification module 26 that is configured to indicate the shipment bag 12 as invalid when the common tags do not match with the list of RFID tags associated with the shipment bag 12 at the warehouse, and the shipment bag 12 as valid when the common tags match with the list of RFID tag the list of tags. The validation module 22 further includes a controller 28 that receives an input or decision from the classification module 26 regarding the validity of the shipment bag 12. The controller 28 is operatively coupled to the rejection arm 30, and directs the rejection arm 30 to control a movement of the shipment bag 12 based on the validity of the shipment bag 12 as received from the classification module 26. Operation of the rejection arm is further discussed with reference to FIGs. 2 and 3.
[0045] FIG. 2 is a block diagram 200 illustrating operation of the rejection arm 30 of the system 10. As shown the rejection arm 30 moves the shipment bag 12 that is determined to be invalid by the controller 28, into the container 32. The container 32 can be a storage space or a separate area where invalid shipment bags are isolated and scrutinized. Due to the movement into the container 32, an invalid shipment bag (e.g. 12) is isolated from a valid shipment bag. Further, as shown in FIG. 3, a shipment bag determined to be valid, is allowed to pass through the tunnel to the unloading area 34. The controller 28 directs the rejection arm 30 into an upright position that facilitates movement of a valid shipment bag 12 along the conveyor belt 16 as shown by arrow marks 40, towards the unloading area 34. A container of valid shipment bags is placed in the unloading area to carry the valid shipment bags towards the delivery center.
[0046] When one or more shipment bags are placed on the conveyor belt, it is essential that the one or more shipment bags are placed one after the other at an appropriate distance so that the validation module 22 may process one shipment bag within a predefined time period. Placement of the shipment bags on the conveyor belt 16 is sensed by the sensor 36. The sensor 36 provides an alert when more than one shipment bag enters the tunnel 18, in order to ensure that only one shipment bag is present within the tunnel during the predefined time period.
[0047] Accordingly, the controller 28 modulates movement of the shipment bag 12 on the conveyor belt 16 such that before reading a next shipment bag. processing of a previous shipment bag is completed and a decision of the rejection arm 30 for the previous shipment bag is ready. Further, the sensor 34 is configured to alert or alarm the use, when two or more shipment bags are placed at the same time simultaneously on the conveyor belt 16. In an example, a green or red light or a buzzer can be connected to the sensor 34 (e.g. a retro reflective sensor) to provide the alert or alarm.
[0048] In an embodiment, a shipment bag 12 can be moved on the conveyor belt 16 only when a green light is displayed by the sensor 34, in case a shipment bag is placed when a red light is displayed by the sensor 34, then a movement of the conveyor belt 16 is ceased, and an alarm can be provided. The alarm indicates that a prior shipment bag is present in the tunnel 18, and another shipment bag cannot be placed on the conveyor belt 16 until processing of the prior shipment bag is complete. Further, the controller 28 can be programmed to facilitate movement of the conveyor belt 16 only when a shipment bag passes a sensor placed in the middle part of the conveyor. Further, the rejection arm 110 is placed a time from an end of the tunnel and a decision regarding the shipment bag should be made in a predefined time period. In case the decision is not made in the predefined time period, an alarm is sent indicating that processing of the shipment bag 12 is not complete and then the shipment bag is rejected.
[0049] In the processing of a shipment bag (e.g. 12), the RFID reader 20 may read the stray tags also, as being part of the shipment bag thereby causing an error in determining validity of the shipment bag 12. In order to avoid the problem of detecting stray tags the processor performs the following operations on the RSSI values of the RFID communication signals received from the set of valid tags 14a-n present within the shipment bag 12 and the set of stray tags 38a-d.
[0050] Generally, pattern of RSSI of the set of valid tags (e.g. Tag 14a and Tag 14b) inside the shipment bag 12 would be similar and would be completely different from the pattern that the set of stray tags (e.g. Tag 38a) make. The table below illustrates this concept:
Tag ID t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10
Tag 14a (actual tag) -65.4 -61.2 -55.7 -49.6 -45.4 -50.3 -52.9 -58.3 -65.4 -65.1
Tag 14b (actual tag) -62.3 -63.1 -59.6 -53.2 -47.4 -45.9 -51.1 -52.8 -60.8 -62.3
Tag 38a (stray tag) -61.1 -61.2 -60.1 -60.2 -60.0 -60.3 -61.1 -62.3 -61.1 -62.4
[0051] As evident from the table above, tag 38a exhibits a totally different pattern than tag 14a and 14b. The lines 402 and 404 corresponding to Tag 14a and 14b respectively, increase almost constantly up until a certain point and decrease similarly. The line graph in FIG. 4 illustrates the difference between the patterns very clearly. The lines 402 and 404 correspond to valid tags and line 406 corresponds to the stray tag 38a.
[0052] The tag identification module 26 computes a dynamic time warping (DTW) score by using a DTW algorithm to determine a similarity between any two time series. The similarity between any two time series of a pair of items (or tags) is computed as follows:
a. Every index from a first sequence corresponding to a first tag is matched with one or more indices from a second sequence corresponding to a second tag, and vice versa.
b. The first index from the first sequence is matched with the first index from the other sequence
c. The last index from the first sequence is matched with the last index from the other sequence
d. The mapping of the indices from the first sequence to indices from the other sequence must be monotonically increasing, and vice versa. For example, for j>i, indices from the first sequence, there cannot be two indices l>k in the other sequence, such that index I is matched with index l and index j is matched with index k, and vice versa.
[0053] However, a problem with determining only the DTW score to identify a stray tag is that, sometimes, stray tags though are detected only a few times with low RSSI , may have similar DTW score as some valid tags. For example, observe the below time series:
Valid Tag 14a: -66.0, -59.0, -65.5, -61.0, -64.0, -59.0, -56.5, -53.5, -54.5, -57.5, -60.0, -53.5, -55.0, -47.5, -47.5, -58.5, -58.5, -45.0, -44.0, -63.5, -56.5, -53.0, -57.5, -56.0, -64.5, -62.0, -56.5, -53.0, -58.0
Valid Tag 14b: -77.5, -72.0, -75.0, -66.5, -61.6, -62.0, -65.5, -62.0, -60.5, -71.5, -55.0, -65.0, -76.5, -50.5, -52.0, -44.5, -47.0, -52.5, -47.5, -46.0, -46.5, -45.4, -44.5, -60.0, -45.0, -44.0, -55.0
Stray Tag 38a: -61.5, -67.5, -66.0
The DTW score for the above pairs of tags is as follows:
Valid Tag 14a, Valid Tag 14b : 159.0
Valid Tag 14a, Stray Tag 38a: 185. 5
[0054] It may be noted that, the DTW score from the above series is more or less very similar. This usually happens when the stray tag only has a small number of occurrences but has similar occurrences to that of the actual tag thereby resulting in lesser distance on the time series graph. As most stray tags would not exhibit above mentioned behavior, as their RSSI values are low much like the second actual tag and does not have much variation in the RSSI over time. When we try to separate these, it is possible that these types of stray tags come under the actual tag group.
[0055] Hence, the processor computes another dimension which is an absolute difference between a number of recordings of RFID communication signals of both tags in each pair of RFID tags to separate the actual tags from the stray tags. The number of occurrences a tag has over a period of time is recorded. Since we group based on the pair of tags, we can take absolute value of difference between the number of occurrences of both the tags. The difference is large if there are only a few occurrences in one of the tags and many occurrences in the other tag. The difference is small if both the tags have many occurrences. Hence a combination of the DTW score and the differences between the number of occurrences help in clearly separating the stray tags from the actual tags.
[0056] FIG. 5 is a graphical representation of Dynamic Time Warping (DTW) score values arranged over an absolute difference between a number of occurrences of RSSI values for a plurality of RFID tags. As shown DTW scores for a pair of valid tags 14a and 14b have a lower difference between occurrences and a lower DTW score in comparison to the stray tags 38a and 38d.
[0057] The processor then performs clustering on the pair of tags using K-means algorithm (with K-2). In other words, the processor creates two clusters comprising mutually exclusive set of pairs of RFID tags based on the DTW score and the difference between the number of recordings of RFID communication signals. The DTW score and the absolute difference between the number of recordings of RFID communication signals of the both tags in the each pair of RFID tags is large when one tag of the each pair is an actual tag and another tag is a stray tag. On the other hand, the dynamic time warping (DTW) score and the absolute difference between the number of recordings of RFID communication signals of the both tags in the each pair of RFID tags facilitates creating a cluster having a set of pairs of a stray tag with an actual tag and another cluster having a set of pairs of actual tags. By using the aforementioned dimensions, a set of pair of tags having a low DTW score and a low difference of occurrence are clustered together, and another set of pair of tags where even one of the dimensions viz. DTW score and low difference of occurrence is high, it would be placed in a different cluster.
[0058] Now in these clusters, one of them is associated with stray tags and one of them with actual tags. For differentiating between them, the average DTW score of each cluster is calculated and the cluster with higher DTW score is the cluster associated with stray tags. In order to identify the stray tags from the clusters, the processor performs a stray detection algorithm as explained below.
[0059] Generally the cluster having a significantly higher DTW score would be the cluster having stray tags (say Cluster A). Accordingly, the other cluster (say Cluster B) has only actual tags. Further, the processor forms a group (say group A) of unique tag identifiers occurring in the cluster A and another group (say group B) of unique tag identifiers occurring in the other cluster B. Accordingly, the processor creates at least two groups (group A and B), wherein a group consists of unique RFID tags associated with a respective cluster. The processor further identifies a set of RFID tags common between the at least two groups (group A and B) as the set of actual RFID tags. A set of tags uncommon between the at least two groups include one or more stray tags that exist outside the shipment bag 12 and within the predetermined distance from the RFID reader 104. In this manner, the set of stray tags and the set of actual tags are separately identified from the plurality of tags recorded.
[0060] The processor then determines if the shipment bag 12 is valid if the set of actual tags map with the list of actual tags associated with the shipment bag 12, and as invalid if the set of actual tags do not match with the list of actual tags. The below example, is provided to explain the process of clustering and identification of stray tags from the plurality of RFID tags.
[0061] As an example, consider set of valid tags T1 = (A, B, C, D, E) and the set of stray tags as T2 =(S, T, U). The processor creates the following two clusters:
Cluster 1 =C1= (AS, AT, AU, BS, BT, BU, CS, CT, CU, DS, DT, DU, ES, ET, EU, ST, SU, TU)
Cluster 2 = C2 = (AB, AC, AD, AE, BC, BD, BE, CD, CE, DE)
[0062] As cluster 1 is associated with stray tags, the DTW score would be higher. The processor would identify the unique tags from each cluster to form the following two groups:
Unique tags from C1 = S1= (A, B, C, D, E, S, T, U)
Unique tags from C2=S2= (A, B, C, D, E)
[0063] Subtraction of the two groups gives S=S1-S2 = (S, T, U) which are stray tags. A method for validating contents of a shipment bag during transit from the warehouse to the delivery center is explained further with reference to FIG. 6.
[0064] FIG. 6 is a flowchart 600 illustrating a method for validating contents of a shipment bag, according to some aspects of the present description. At block 602, a shipment bag is transported by a conveyor belt from a loading area to an unloading area through a tunnel. The conveyor belt and the tunnel are provided at a checkpoint between a warehouse where the shipment bag is packed and a delivery center where the shipment bag is destined to reach. A validity of the shipment bag is determined at the checkpoint. Typically, the shipment bag is packed with a list of items tagged with RFID tags, at the warehouse. There is a possibility that during transit from the warehouse one or more items may go missing from the shipment bag due to pilferage. In such a case, the shipment bag may have a subset of the list of items hereinafter referred to as set of valid items. However, in case no item is lost from the shipment bag during the transit from the warehouse to the checkpoint, then the set of valid items would be same as the list of items.
[0065] The tunnel is provided with a radio frequency identification (RFID) reader that reads a plurality of tags present within a predetermined distance. The plurality of tags include a set of valid tags physically associated with the set of valid items present within the shipment bag, and a set of stray tags present outside the shipment bag and in and around the tunnel.
[0066] At block 604, signal strength of RFID signals received from the plurality of tags is recorded by the RFID reader placed within the tunnel.
[0067] At block 606, a tag score for each pair of tags selected from the plurality of tags is computed by the tag identification module, wherein the tag score comprises a dynamic time warping (DTW) score, and a difference between a number of recordings of RFID signals of both tags in the each pair of tags, Generally a plurality of combination of pairs of tags can be construed from the plurality of tags.
[0068] At block 608, at least two clusters comprising mutually exclusive sets of pairs of tags based on the tag score are created. One cluster has a set of pairs of tags, where each pair comprising at least one stray tag; and wherein another cluster has a set of pairs of valid tags.
[0069] At block 610, at least two groups are created by the tag identification module, where a group consists of unique tags associated with a respective cluster.
[0070] At block 612, common tags between the at least two groups are identified as the set of valid tags physically associated with the set of items present within the shipment bag.
[0071] At block 614, the shipment bag is determined as valid or invalid by a validation module, based on an identification, by the tag identification module, of the set of valid tags from the plurality of tags and by comparing the set of valid tags with a preloaded list of RFID tags physically associated with a list of items packed into the shipment bag at the warehouse.
[0072] At block 616, the shipment bag is indicated as invalid by a classification module, in case the common tags do not match with the preloaded list of RFID tags.
[0073] At block 618, the shipment bag is indicated as valid by a classification module, in case the common tags match with the preloaded list of RFID tags.
[0074] At 620, an invalid shipment bag is deviated by a rejection arm away from the unloading area. The rejection arm is operatively controlled by a controller, that receives input of a validity of the shipment bag from the classification module.
[0075] At 622, a valid shipment bag is facilitated to move towards the unloading area. Typically, the controller maneuvers the rejection arm into an upright position to enable the shipment bag to proceed in a forward direction unobstructed on the conveyor belt, when the controller receives input from the classification module of the validity of the shipment bag.
[0076] FIG. 7 is a flowchart 700 of a method for validating contents of a shipment bag, according to some aspects of the present description.
[0077] At block 702, a conveyor system having a conveyor belt on which one or more shipment bags can be placed is set to motion.
[0078] At block 704, a shipment bag whose validity is to be determined, is placed on the moving conveyor belt.
[0079] At block 706, sensors within a tunnel alert a validation module via a wireless or wired communication link, to initiate a session for processing the shipment bag, where a set of valid tags present in the shipment bag are scanned. During this process, a set of stray tags present within and outside the tunnel are also scanned. In total a plurality of tags comprising the set of valid tags and the set of stray tags are scanned.
[0080] At block 708, sensors on the tunnel alert the software to end the session.
[0081] At block 710, the conveyor system including the validation module receives a preloaded list of tags associated with the shipment bag. The preloaded list of tags are physically associated with the items packed into the shipment bag at the warehouse.
[0082] At block 712, the plurality of tags scanned are received with respective RSSI time series.
[0083] At block 714, a dynamic time warping (DTW) distance or score between each pair of tags selected from the plurality of tags is computed.
[0084] At block 716, a difference between time series and a length for each pair is computed.
[0085] At block 718, the pairs of tags are clustered keeping time series and a length for each pair, as dimensions.
[0086] At block 720, unique tags in each cluster are found and grouped into separate sets based on the cluster.
[0087] At block 722, a set difference is performed between the two set of unique tags to get the set of stray tags. The actual tags can also be separated once the set of stray tags are identified.
[0088] At block 724, the controller checks if the set of valid tags recorded matches with the preloaded list of tags associated with the shipment bag. Incase the set of valid tags match with the preloaded list of tags, then the shipment bag is determined as valid, and incase there is a mismatch the shipment bag is determined as invalid.
[0089] At block 726, the shipment bag is moved by a rejection arm into a separate area such as a container of invalid bags incase the shipment bag is determined as invalid.
[0090] At block 728, the shipment bag is allowed to pass along the conveyor belt towards the unloading area for further transport towards the delivery center, in case the shipment bag is determined as valid.
[0091] Advantage of the disclosed system and methods are that the shipment bags can be validated without opening the bag and scanning the RFID tagged items manually. As a result, invalid bags that have been tampered with, can be returned back to the warehouse or can be segregated and checked manually. This saves time in processing the valid bags further into the supply chain.
[0092] It will be understood by those within the art that, in general, terms used herein, are generally intended as “open” terms (e.g., the term “including” should be interpreted as “including but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes but is not limited to,” etc.). It will be further understood by those within the art that if a specific number of an introduced claim recitation is intended, such an intent will be explicitly recited in the claim, and in the absence of such recitation no such intent is present.
[0093] For example, as an aid to understanding, the following appended claims may contain usage of the introductory phrases “at least one” and “one or more” to introduce claim recitations. However, the use of such phrases should not be construed to imply that the introduction of a claim recitation by the indefinite articles “a” or “an” limits any particular claim containing such introduced claim recitation to embodiments containing only one such recitation, even when the same claim includes the introductory phrases “one or more” or “at least one” and indefinite articles such as “a” or “an” (e.g., “a” and/or “an” should be interpreted to mean “at least one” or “one or more”); the same holds true for the use of definite articles used to introduce claim recitations. In addition, even if a specific number of an introduced claim recitation is explicitly recited, those skilled in the art will recognize that such recitation should be interpreted to mean at least the recited number (e.g., the bare recitation of “two recitations,” without other modifiers, means at least two recitations, or two or more recitations).
[0094] While only certain features of several embodiments have been illustrated, and described herein, many modifications and changes will occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of inventive concepts.
[0095] The aforementioned description is merely illustrative in nature and is in no way intended to limit the disclosure, its application, or uses. The broad teachings of the disclosure may be implemented in a variety of forms. Therefore, while this disclosure includes particular examples, the true scope of the disclosure should not be so limited since other modifications will become apparent upon a study of the drawings, the specification. It should be understood that one or more steps within a method may be executed in different order (or concurrently) without altering the principles of the present disclosure. Further, although each of the example embodiments is described above as having certain features, any one or more of those features described with respect to any example embodiment of the disclosure may be implemented in and/or combined with features of any of the other embodiments, even if that combination is not explicitly described. In other words, the described example embodiments are not mutually exclusive, and permutations of one or more example embodiments with one another remain within the scope of this disclosure.
[0096] The example embodiment or each example embodiment should not be understood as a limiting/restrictive of inventive concepts. Rather, numerous variations and modifications are possible in the context of the present disclosure, in particular those variants and combinations which may be inferred by the person skilled in the art with regard to achieving the object for example by combination or modification of individual features or elements or method steps that are described in connection with the general or specific part of the description and/or the drawings, and, by way of combinable features, lead to a new subject matter or to new method steps or sequences of method steps, including insofar as they concern production, testing and operating methods. Further, elements and/or features of different example embodiments may be combined with each other and/or substituted for each other within the scope of this disclosure.
[0097] Still further, any one of the above-described and other example features of example embodiments may be embodied in the form of an apparatus, method, system, computer program, tangible computer readable medium and tangible computer program product. For example, of the aforementioned methods may be embodied in the form of a system or device, including, but not limited to, any of the structure for performing the methodology illustrated in the drawings.
[0098] In this application, including the definitions below, the term ‘module’ or the term ‘controller’ may be replaced with the term ‘circuit.’ The term ‘module’ may refer to, be part of, or include processor hardware (shared, dedicated, or group) that executes code and memory hardware (shared, dedicated, or group) that stores code executed by the processor hardware.
[0099] The module may include one or more interface circuits. In some examples, the interface circuits may include wired or wireless interfaces that are connected to a local area network (LAN), the Internet, a wide area network (WAN), or combinations thereof. The functionality of any given module of the present disclosure may be distributed among multiple modules that are connected via interface circuits. For example, multiple modules may allow load balancing. In a further example, a server (also known as remote, or cloud) module may accomplish some functionality on behalf of a client module.
[00100] Further, at least one example embodiment relates to a non-transitory computer-readable storage medium comprising electronically readable control information (e.g., computer-readable instructions) stored thereon, configured such that when the storage medium is used in a controller of a magnetic resonance device, at least one example embodiment of the method is carried out.
[00101] Even further, any of the aforementioned methods may be embodied in the form of a program. The program may be stored on a non-transitory computer readable medium, such that when run on a computer device (e.g., a processor), cause the computer-device to perform any one of the aforementioned methods. Thus, the non-transitory, tangible computer readable medium is adapted to store information and is adapted to interact with a data processing facility or computer device to execute the program of any of the above mentioned embodiments and/or to perform the method of any of the above mentioned embodiments.
[00102] The computer readable medium or storage medium may be a built-in medium installed inside a computer device main body or a removable medium arranged so that it may be separated from the computer device main body. The term computer-readable medium, as used herein, does not encompass transitory electrical or electromagnetic signals propagating through a medium (such as on a carrier wave), the term computer-readable medium is therefore considered tangible and non-transitory. Non-limiting examples of the non-transitory computer-readable medium include, but are not limited to, rewriteable non-volatile memory devices (including, for example flash memory devices, erasable programmable read-only memory devices, or a mask read-only memory devices), volatile memory devices (including, for example static random access memory devices or a dynamic random access memory devices), magnetic storage media (including, for example an analog or digital magnetic tape or a hard disk drive), and optical storage media (including, for example a CD, a DVD, or a Blue-ray Disc). Examples of the media with a built-in rewriteable non-volatile memory, include but are not limited to memory cards, and media with a built-in ROM, including but not limited to ROM cassettes, etc. Furthermore, various information regarding stored images, for example, property information, may be stored in any other form, or it may be provided in other ways.
[00103] The term code, as used above, may include software, firmware, and/or microcode, and may refer to programs, routines, functions, classes, data structures, and/or objects. Shared processor hardware encompasses a single microprocessor that executes some or all code from multiple modules. Group processor hardware encompasses a microprocessor that, in combination with additional microprocessors, executes some or all code from one or more modules. References to multiple microprocessors encompass multiple microprocessors on discrete dies, multiple microprocessors on a single die, multiple cores of a single microprocessor, multiple threads of a single microprocessor, or a combination of the above.
[00104] Shared memory hardware encompasses a single memory device that stores some or all code from multiple modules. Group memory hardware encompasses a memory device that, in combination with other memory devices, stores some or all code from one or more modules.
[00105] The term memory hardware is a subset of the term computer-readable medium. The term computer-readable medium, as used herein, does not encompass transitory electrical or electromagnetic signals propagating through a medium (such as on a carrier wave), the term computer-readable medium is therefore considered tangible and non-transitory. Non-limiting examples of the non-transitory computer-readable medium include, but are not limited to, rewriteable non-volatile memory devices (including, for example flash memory devices, erasable programmable read-only memory devices, or a mask read-only memory devices), volatile memory devices (including, for example static random access memory devices or a dynamic random access memory devices), magnetic storage media (including, for example an analog or digital magnetic tape or a hard disk drive), and optical storage media (including, for example a CD, a DVD, or a Blu-ray Disc). Examples of the media with a built-in rewriteable non-volatile memory, include but are not limited to memory cards, and media with a built-in ROM, including but not limited to ROM cassettes, etc. Furthermore, various information regarding stored images, for example, property information, may be stored in any other form, or it may be provided in other ways.
[00106] The apparatuses and methods described in this application may be partially or fully implemented by a special purpose computer created by configuring a general purpose computer to execute one or more particular functions embodied in computer programs. The functional blocks and flowchart elements described above serve as software specifications, which may be translated into the computer programs by the routine work of a skilled technician or programmer.
[00107] The computer programs include processor-executable instructions that are stored on at least one non-transitory computer-readable medium. The computer programs may also include or rely on stored data. The computer programs may encompass a basic input/output system (BIOS) that interacts with hardware of the special purpose computer, device drivers that interact with particular devices of the special purpose computer, one or more operating systems, user applications, background services, background applications, etc.
[00108] The computer programs may include: (i) descriptive text to be parsed, such as HTML (hypertext markup language) or XML (extensible markup language), (ii) assembly code, (iii) object code generated from source code by a compiler, (iv) source code for execution by an interpreter, (v) source code for compilation and execution by a just-in-time compiler, etc. As examples only, source code may be written using syntax from languages including C, C++, C#, Objective-C, Haskell, Go, SQL, R, Lisp, Java®, Fortran, Perl, Pascal, Curl, OCaml, Javascript®, HTML5, Ada, ASP (active server pages), PHP, Scala, Eiffel, Smalltalk, Erlang, Ruby, Flash®, Visual Basic®, Lua, and Python®.
[00109] While only certain features of several embodiments have been illustrated and described herein, many modifications and changes will occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the scope of the invention and the appended claims.
, Claims:CLAIMS
1. A system for validating contents of a shipment bag, the system comprising:
a tunnel;
a conveyor belt configured to transport one or more shipment bags from a loading area to an unloading area, wherein the shipment bag passes through the tunnel;
a radio frequency identification (RFID) reader placed within the tunnel configured to record a signal strength of RFID signals received from a plurality of tags; wherein the plurality of tags comprise a set of stray tags and a set of valid tags, wherein the set of valid tags is physically associated with a set of items present within the shipment bag; and
a validation module configured to determine the shipment bag as valid or invalid, the validation module comprising:
a tag identification module operatively coupled with the RFID reader and configured to determine a validity of the shipment bag by identifying the set of valid tags from the plurality of tags and by comparing the set of valid tags with a preloaded list of RFID tags physically associated with a list of items packed into the shipment bag at the warehouse.
2. The system of claim 1, wherein the tag identification module is configured to:
compute a tag score for each pair of tags selected from the plurality of tags, wherein the tag score comprises a dynamic time warping (DTW) score, and a difference between a number of recordings of RFID signals of both tags in the each pair of tags,
create at least two clusters comprising mutually exclusive sets of pairs of tags based on the tag score,
wherein one cluster has a set of pairs, each pair comprising at least one stray tag; and
wherein another cluster has a set of pairs of valid tags;
create at least two groups, wherein each group comprises unique tags associated with a respective cluster; and
identify common tags between the at least two groups as the set of valid tags.
3. The system of claim 1, wherein a classification module is further configured to:
indicate the shipment bag as invalid when the common tags do not match with the list of RFID tags; and
indicate the shipment bag as valid when the common tags match with the list of RFID tags.
4. The system of claim 1, wherein the system further comprises:
a rejection arm provided at one end of the tunnel;
a controller operatively coupled to the rejection arm and configured to:
direct the rejection arm to deviate an invalid shipment bag away from the unloading area; and
direct the rejection arm to facilitate movement of a valid shipment bag towards the unloading area.
6. The system of claim 1, wherein the signal strength is a received signal strength indicator (RSSI) and ranges from -20dBm to -80 dBm.
7. The system of claim 2, wherein the tag identification module is further configured to:
identify uncommon tags between the at least two groups as the set of stray tags, wherein a stray tag exists outside the shipment bag and within a predetermined distance from the RFID reader.
8. The system of claim 2, wherein the tag score for a pair of tags is more than a threshold value when at least one tag in the pair is a stray tag and the tag score, and wherein the tag score is lower than the threshold value when both the tags in the pair valid tags.
8. A method of validating contents of a shipment bag in a tunnel, the method comprising:
transporting, by a conveyor belt, one or more shipment bags from a loading area to an unloading area, wherein the shipment bag passes through the tunnel;
recording, by a radio frequency identification (RFID) reader placed within the tunnel, a signal strength of RFID signals received from a plurality of tags; wherein the plurality of tags comprise a set of stray tags and a set of valid tags, wherein the set of valid tags is physically associated with a set of items present within the shipment bag;
determining, by a validation module, the shipment bag as valid or invalid based on an identification, by a tag identification module, of the set of valid tags from the plurality of tags and by comparing the set of valid tags with a preloaded list of RFID tags physically associated with a list of items packed into the shipment bag at the warehouse.
9. The method of claim 8, the method further comprising:
computing, by the tag identification module, a tag score for each pair of tags selected from the plurality of tags, wherein the tag score comprises a dynamic time warping (DTW) score, and a difference between a number of recordings of RFID signals of both tags in the each pair of tags,
creating, by the tag identification module, at least two clusters comprising mutually exclusive sets of pairs of tags based on the tag score;
wherein one cluster has a set of pairs, each pair comprising at least one stray tag; and
wherein another cluster has a set of pairs of valid tags;
creating, by the tag identification module, at least two groups, wherein a group consists of unique tags associated with a respective cluster; and
identifying, by the tag identification module, common tags between the at least two groups as the set of valid tags.
11. The method of claim 8, wherein determining the validity of the shipment bag further comprises:
indicating, by a classification module, the shipment bag as invalid when the common tags do not match with the preloaded list of RFID tags; and
indicating, by the classification module, the shipment bag as valid when the common tags match with the preloaded list of RFID tags.
12. The method of claim 8, the method further comprising:
directing, by a controller, a rejection arm, to deviate an invalid shipment bag away from the unloading area; and
directing, by the controller, the rejection arm to facilitate movement of a valid shipment bag towards the unloading area, wherein the rejection arm is provided at one end of the tunnel and is operatively coupled to a controller.
13. The method of claim 8, wherein the signal strength is a received signal strength indicator (RSSI) and ranges from -20dBm to -80 dBm.
14. The method of claim 9, further comprising:
identifying, by the tag identification module, uncommon tags between the at least two groups as the set of stray tags, wherein a stray tag exists outside the shipment bag and within a predetermined distance from the RFID reader.
15. The method of claim 9, wherein the tag score for a pair of tags is more than a threshold value when at least one tag in the pair is a stray tag and the tag score, and wherein the tag score is lower than the threshold value when both the tags in the pair valid tags.
| # | Name | Date |
|---|---|---|
| 1 | 202241067183-STATEMENT OF UNDERTAKING (FORM 3) [23-11-2022(online)].pdf | 2022-11-23 |
| 2 | 202241067183-REQUEST FOR EXAMINATION (FORM-18) [23-11-2022(online)].pdf | 2022-11-23 |
| 3 | 202241067183-FORM 18 [23-11-2022(online)].pdf | 2022-11-23 |
| 4 | 202241067183-FORM 1 [23-11-2022(online)].pdf | 2022-11-23 |
| 5 | 202241067183-DRAWINGS [23-11-2022(online)].pdf | 2022-11-23 |
| 6 | 202241067183-DECLARATION OF INVENTORSHIP (FORM 5) [23-11-2022(online)].pdf | 2022-11-23 |
| 7 | 202241067183-COMPLETE SPECIFICATION [23-11-2022(online)].pdf | 2022-11-23 |
| 8 | 202241067183-FER.pdf | 2025-07-09 |
| 1 | 202241067183_SearchStrategyNew_E_Search_Strategy_MatrixE_18-02-2025.pdf |