The invention relates generally to mapping buildings, and specifically to a system for mapping a retail store.
Within a retail store, time and effort is expended to determine the relative location of products, store fixtures, and other items, and how to most efficiently travel from one location to another to accomplish high priority work. Stores often have locations that are assigned and numbered, but the distance between many items in stores is often not well known. Having employees spend time to measure and map distances takes time, and keeps the employees from doing other work. It is desirable to have a system and method of automatically collecting location, time, and direction of travel data as employees, customers and other individuals travel throughout different locations in a retail store while either shopping or doing their jobs, and a system and method of using this data to map locations in a retail store.
Disclosed is a method of mapping product locations that includes collecting a plurality of time stamps from a plurality of mobile computing devices located at any one of a plurality of product locations in a retail store, where each one of the plurality of mobile computing devices is carried by a corresponding one of a plurality of individuals as the plurality of individuals travel between the plurality of product locations. The method also includes using the plurality of time stamps to calculate a plurality of distances, where each one of the plurality of distances represents a distance between two of the plurality of product locations, and forming a product location map comprising the plurality of product locations and the plurality of distances.
Disclosed is a system for mapping a retail store that includes a communication module, a distance module, a location module, and a mapping module. The communication module receives a first and a second time stamp, and a first and a second product data capture from a mobile computing device. The mobile computing device can be carried by any individual in or around a building to be mapped, such as a retail store. The location module associates the first time stamp to a first location in the retail store, and the location module associates the second time stamp to a second location in the retail store. The distance module uses the first and the second time stamps to compute a distance between the first and the second location. The mapping module maps the first and the second location and the distance on a map.
In another aspect, disclosed is a store mapping system that includes a means for collecting a first time stamp associated with a first location in the store, and a second time stamp associated with a second location in the store. The store mapping system also includes a distance module that uses the first and the second time stamps to compute a distance between the first and the second location, and a mapping module that maps the distance and the first and the second locations.
In another aspect, provided is a method of mapping product locations. The method includes collecting a first time stamp and a first product scan from a mobile computing device at a first product location, and collecting a second time stamp and a second product scan from the mobile computing device at a second product location. The method of mapping product locations also includes using the first and the second time stamps to calculate a distance between the first product location and the second product location. The method includes creating a product location map comprising the first product location, the second product location, and the distance.
The above and further advantages of this invention may be better understood by referring to the following description in conjunction with the accompanying drawings, in which like numerals indicate like structural elements and features in various figures. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention.
Disclosed herein is a system and method for mapping a building such as a retail store. The system collects data captures such as barcode scans, and associated time stamps, from mobile computing devices at various locations in a retail store, as individuals carrying the mobile computing devices travel about the store. The disclosed system uses the time stamps to compute distances between locations associated with the data captures, such as product location or physical locations. The distances between the locations are used to map the retail store. The disclosed system may also collect accelerometer, pedometer, or compass data from the mobile computing devices, to the extent this data is available, and adds this data to the map of the building or retail store. Because many employees and customers travel throughout a retail store on a daily basis, a large amount of data can be obtained and used to refine distances, locations, and directional paths on the retail store map. Geometric calculations are used to fill in missing data where necessary.
Locations within retail stores and the distances between the locations are often not well identified or mapped. It is desirable to know the relative location and distance between locations and items in a store for any number of reason, including so that employees can be directed to perform tasks using the most efficient path, customers can be directed to products and locations, or an employee closest to a location can be directed to attend to urgent matters, for example. It is also desirable to know the locations of products in the retail store and the relative distances between product locations.
Mobile computing devices such as tablets, cell phones, and portable scanners are often used by both customers and employees as they move about a store. Customers are often provided with mobile computing devices to use while they are in a store for the purpose of scanning products for information or remote check-out, for example. Retail stores also provide applications to reside on the personal mobile computing devices of customers, for use in remote check out, obtaining coupons, or tracking products. Store employees are equipped with portable scanners and other mobile computing devices, and are constantly moving about the store scanning product or location barcodes as they do their jobs. These mobile computing devices are capable of, or already are, providing wireless data pertaining to when the mobile computing device is located at a particular location or barcode. Thus, employees and customers already interact wirelessly with one or more store servers using their portable scanners or tablets. Organizing the means to collect scanned barcode and time stamp data from customers and employees as they move about the store, and adding methods of processing this data to obtain distances between barcode scans in a store, results in obtaining location and distance information that can be used to map a store, and/or to augment existing store maps, either digital or paper. In addition, many of the mobile computing devices carried by individuals such as employees or customers are equipped to provide pedometer data or compass data as the individual travels about the store. Collecting this data as individuals move between product or location barcode scans in the store increases the depth and accuracy of mapping data that can be used for mapping purposes. The disclosed system and method of mapping a retail store captures time stamps, data captures such as product and location barcode scan data, pedometer data, accelerometer data, and other related data from the mobile computing devices of individuals as they travel around a building. This data is used to map distances and locations on a product location map or a retail store map, either building a map from scratch, adding to existing store maps, or both.
Server 102 in the embodiment shown in
Server 102 receives communication 126 from a plurality of mobile computing devices 107, which are carried by a plurality of individuals 105 as plurality of individuals 105 travel about the retail store. In this embodiment plurality of individuals includes individuals 104, 138, 139, and 140. In this embodiment plurality of mobile computing devices includes mobile computing devices 106, 135, 136, and 137. Plurality of mobile computing devices 107 are used by plurality of individuals 105 to scan a plurality of barcodes 185. In this embodiment plurality of barcodes includes barcode 184, 186, 187, and 188. Each one of plurality of barcodes 185 can be a product barcode, a QR codes, a location barcode, or any other barcode or scannable identifier located in a building or store.
Each one of plurality of mobile computing devices 107 transmits a portion of communication 126 to system 110 of server 102 as plurality of mobile computing devices 107 are used by plurality of individuals 105 to scan plurality of barcodes 184 in the store. Communication 126 includes one or more of: a plurality of time stamps 122, a plurality of data captures 124, a plurality of pedometer data 172, and a plurality of directional data 174, as shown in
Each time one of plurality of barcodes 185 is scanned with one of plurality of mobile computing devices 107, the particular mobile computing device that did the scanning transmits a time stamp and a barcode scan to system 110 of server 102. The time stamp represents the time that the barcode was scanned. When any of plurality of mobile computing devices 107 is equipped with a pedometer, the pedometer transmits pedometer data 172 to system 110 of server 102 as the particular mobile computing device is carried between locations in the store. Pedometer data 172 is used to determine the number of steps taken between locations in the store. Many cellular telephones, mobile pedometer devices, and other mobile computing devices have the ability to collect and transmit pedometer data 172. Pedometer data 172 can be obtained from an accelerometer or other type of sensor in any one of plurality of mobile computing devices 107.
When any of plurality of mobile computing devices 107 is equipped with a directional device such as a compass, a GPS, or an accelerometer, the directional device transmits directional data 174 to system 110 of server 102 as the particular mobile computing device is carried between locations in the store. A directional device is any device capable of providing directional data 174, where directional data 174 indicates the direction of movement of the associated mobile computing device. Directional data 174 can be supplied by an accelerometer sensor in a mobile computing device, a compass in a mobile computing device, a global positioning sensor (GPS) in a mobile computing device, or any other type of sensor or electronic apparatus capable of providing directional data 174.
Communication 126 in the embodiment shown in
Plurality of mobile computing devices 107 can be one of many different types of devices suited for plurality of individuals 107 to communicate with server 102 and computer system 110. In this embodiment, each one of plurality of mobile computing devices 107 is a portable scanner 106. Mobile computing device 106 can be a mobile phone, a tablet, a handheld computer, or any other mobile computing device with the ability to scan a barcode 184 and communicate with server 102.
Plurality of mobile computing devices 107 are carried by plurality of individuals 105 while shopping or working in or around the retail store. Plurality of mobile computing devices 107 are used by plurality of individuals 105 to scan plurality of barcodes 185 as shown in
In some embodiments, individual 104 is an employee. Individual 104 that is an employee will be scanning barcode 184 while they do their jobs. Individual 104 may be scanning a product barcode 184 while they are conducting inventory checks. Individual 104 may be scanning a location barcode 184 when they perform a task at the location. An individual 104 that is an employee may be scanning barcodes 184 for many different reasons.
Plurality of individuals 105 travel from location to location within the retail store or other building, scanning plurality of barcodes 185 with plurality of mobile computing devices 107, and transmitting plurality of data captures 124, plurality of time stamps 122, pedometer data 172 and directional data 174 as plurality of individuals 107 travel among locations in the retail store. System for mapping a retail store 110 resident on server 102 receives communication 126, comprising time stamps 122, data captures 124, pedometer data 172 (when available) and directional data 174 (when available) from plurality of mobile computing devices 107. System 110 uses communication 126 to create a map of the retail store as explained herein.
Communication module 114 accepts as input communication 126 from plurality of mobile computing device 107. Communication 126 includes plurality of time stamps 122, plurality of data captures 124, pedometer data 172, and directional data 174 from plurality of mobile computing devices 107. Communication module 114 directs plurality of time stamps 122 and plurality of data captures 124 to location module 112. Communication module 114 directs pedometer data 172 to distance module 116, and communication module 114 sends directional data 174 to mapping module 118.
Location module 112 associates each one of plurality of time stamps 122 and plurality of data captures 124 to a location in the retail store. The location may be a product location, a physical location, or the location where a specific one of plurality of time stamps 122 and plurality of data captures 124 was collected. For example, if one of plurality of data captures 124 is a product barcode scan, location module 112 will associate the time stamp and the barcode scan to the location of the product identified by the product barcode scan. When data capture 124 is a product barcode scan, location module 112 assigns a product associated with the product barcode scan to a location. Thus the locations are often product locations. Location module 112 receives plurality of time stamps 122 and plurality of data captures 124, and outputs a plurality of locations 158, where each one of plurality of locations 158 is associated with a specific pair of plurality of times stamps 122 and plurality of data captures 124.
Distance module 116 uses pairs of plurality of time stamps 122 to compute a plurality of distances 169, where each specific one of plurality of distances 169 is the distance between two of plurality of locations 158 associated with a pair of plurality of time stamps 122 and plurality of data captures 124. The distance can be computed in many ways, such as by estimating a walking speed, differencing the time stamps, and multiplying the differenced time stamps by the walking speed to compute a distance between the two locations where the two time stamps were collected. If distance module 116 also receives pedometer data 172 that corresponds to the plurality of time stamps 122 and plurality of locations 158, distance module 116 will compute a second distance calculation using pedometer data 172, and compare it to the first distance calculation using the time stamps. Distance module 116 will use any amount of distance data that is received or computed to generate a distance between two of plurality of locations associated with two of plurality of time stamps 122 and plurality of data captures 124.
Mapping module 118 maps plurality of locations 158 and plurality of distances 169 on a map of the retail store. If mapping module 118 receives directional data 174, mapping module 118 also maps directional paths between plurality of locations 158 on the map of the retail store. The map can be a product location map, a physical location map, a combination of these, or a map of any other type of locations in or around a building or retail store. In some embodiments, mapping module 118 maps products to one or more of the plurality of locations 158.
Referring to
Referring to
Communication module 114 delivers plurality of time stamps 122, and plurality of product data captures 124, to location module 112. Location module 112 does not know specifically where individual 104 was when first and second time stamps 191 and 192, and first and second product barcode scans 195 and 196 were received. But location module 112 knows first product barcode scan 195 was generated by product barcode 184, which it knows is on a first product type at first product location A 150. Location module 112 associates first time stamp 191 and first product barcode scan 195 with product location 150. If another product barcode scan is received from product barcode 184, location module 112 will either associate that time stamp and barcode scan data with location A 150, or determine from other data received that the first product type has another location in the store. Similarly, location module 112 associates second time stamp 192 and second product barcode scan 196 with second product location B 152.
Location module 112 delivers first and second time stamps 191 and 192 (part of plurality of time stamps 122), first and second product barcode scans 195 and 196 (part of plurality of data captures 124, and associated first and second product location 150 and 152 (part of plurality of locations 158) to distance module 116.
Distance module 116 uses first and second time stamp 191 and 192 to compute a distance between first product location 150 and second product location 152. Distance module 116 can compute this distance in many different ways, for example by using an estimated walking speed and the time difference between first time stamp 191 and second time stamp 192. Distance module 116 computes a first distance 160 (
Distance module 116 delivers first and second time stamps 191 and 192 (part of plurality of time stamps 122), first and second product barcode scans 195 and 196 (part of plurality of data captures 124, first and second product locations 150 and 152 (part of plurality of locations 158), and first distance 160 (part of plurality of distances 169) to mapping module 118.
Mapping module 118 maps first and second locations 150 and 152, and first distance 160 on a map 120, as shown in
In some embodiments, mobile computing device 106 transmits pedometer data 172 to communication module 114 as individual 104 moves from first product location 150 to second product location 152, as shown in
Similarly, and as shown in
Mapping module 118 in this example does not know the spatial relationship between third product location 154 and second product location 152, but it is known that second product location 152 is positioned somewhere on circle 132 centered at third product location 154 with a radius equal to distance 162. Map 120 as shown in
It is to be understood that distance 162 can be computed using data from a mobile computing device other than first mobile computing device 106. Any of plurality of time stamps 122 and plurality of product data captures 124 from any one of plurality of mobile computing devices 107, as the particular one of plurality of mobile computing devices 107 is carried from third product location 154 to second product location 152, or vice versa, can be used to compute second distance 162. And similarly, as more data is received from plurality of mobile computing devices 107 carried by plurality of individuals 105 traveling between second product location 152 and third product location 154 is obtained, distance 162 can be refined and approach a stable distance between the two product locations.
In the embodiment of map 120 shown in
Once locations 150, 152, and 154 the distances 160, 162, and 164 between them are mapped, additional locations and distances are added to map 120 as shown in
In the embodiment of system for mapping a store 110 shown in
Directional data 174 is received from any one or more than one of plurality of mobile computing devices 107 that have the capability of generating and transmitting directional data 174. Directional data 174 can be compass data, GPS data, or any other type of data that indicates the direction that one of plurality of mobile computing devices 107 is moving as the one of plurality of mobile computing devices 107 moves between two of plurality of locations 158. Directional data is received by mapping module 118 from communication module 114. Mapping module 118 uses directional data 174 to map directional path 170 on map 220 as shown in
Using directional data 174 and directional paths 170 to create map 220 allows map 220 to show not only the distance between locations, but the direction one of plurality of individuals 107 travels to get between any two of plurality of locations 158.
Method 300 can include many other elements. In some embodiments, the distance is a first distance, and method 300 also includes collecting pedometer data from the mobile computing device as an individual carrying the mobile computing device moves from the first product location to the second product location. In some embodiments, method 300 includes using the pedometer data to generate a second distance between the first product location and the second product location. In some embodiments, method 300 includes using the second distance to update the first distance. In some embodiments, method 300 includes collecting directional data from the mobile computing device as an individual carrying the mobile computing device moves from the first product location to the second product location. In some embodiments, method 300 includes using the directional data to generate a directional path between the first product location and the second product location. In some embodiments, method 300 includes mapping the directional path on the product location map.
In some embodiments, method 300 includes adding building features to the product location map. In some embodiments, method 300 includes providing directions to a location using the product location map. In some embodiments, method 300 includes identifying an employee closest to an incident using the product location map.
In some embodiments, method 300 includes collecting a third time stamp from the mobile computing device at a third product location, using the second time stamp and the third time stamp to calculate a second distance between the second product location and the third product location, and mapping the third product location and the second distance on the product location map. In some embodiments, method 300 includes using geometric calculations and the first and the second distances to quantify a third distance between the first product location and the third product location. In some embodiments, method 300 includes mapping the third distance on the product location map.
In some embodiments, method 300 includes collecting a fourth time stamp from the mobile computing device at the first product location, using the fourth time stamp and the third time stamp to calculate a third distance between the third product location and the first product location, and mapping the third distance on the product location map.
In some embodiments, method 300 includes collecting additional time stamps from a plurality of additional mobile computing devices carried by any one of a plurality of individuals traveling between the first product location and the second product location, and using the additional time stamps to recalculate the distance between the first product location and the second product location. In some embodiments, method 300 includes collecting a plurality of directional data from the plurality of additional mobile computing devices traveling between the first product location and the second product location, using the plurality of directional data to compute a plurality of directional paths between the first product location and the second product location, and mapping the plurality of directional paths between the first product location and the second product location on the product location map.
In some embodiments, the mobile computing device is a first mobile computing device, the distance is a first distance, and method 300 also includes collecting a third time stamp and a third product scan from a second mobile computing device at a third product location, collecting a fourth time stamp from the second mobile computing device at the second product location, using the third and the fourth time stamps to calculate a second distance between the second product location and the third product location, and mapping the second distance and the third product location on the product location map.
As will be appreciated by one skilled in the art, aspects of the disclosed system and method for mapping locations in a retail store may be embodied as a system, method, or computer program product. Accordingly, aspects may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wire-line, optical fiber cable, radio frequencies, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language or conventional procedural programming languages, or other similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions.
While the invention has been shown and described with reference to specific preferred embodiments, it should be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention as defined by the following claims.
This application claims priority to U.S. Provisional Patent Application Ser. No. 62/156,603 to Wal-Mart Stores Inc., filed May 4, 2015 and entitled “System and Method For Mapping Product Locations”, which is hereby incorporated entirely herein by reference.
Number | Date | Country | |
---|---|---|---|
62156603 | May 2015 | US |