CROSS-REFERENCE TO RELATED APPLICATIONThis application claims the benefit of the following U.S. Provisional Application No. 62/471,455 filed Mar. 15, 2017, which is incorporated herein by reference in its entirety.
TECHNICAL FIELDThis invention relates generally to the management of perpetual inventory values, and more particularly, to the management of perpetual inventory values by analyzing customer purchases.
BACKGROUNDStores utilize various measures to keep track of and manage products. One such measure is the perpetual inventory (PI) value associated with a product. In aspects, the PI value represents the quantity of product in the store. The PI value typically changes over time so as to accurately reflect the number of actual products in the store. For instance, products are purchased by customers and removed from the store affecting the PI value. Shipments arrive at the store and include additional products also affecting the PI value.
Stores also utilize other measures that relate to the value and availability of products for accounting and other purposes. For example, a book value of a product may be the value of all of the product present in the retail store.
Sometimes the PI value does not accurately reflect the correct number of products in the store. This can happen for a variety of reasons including mis-scanning products as the products leave or depart the store, or other forms of human error. If the PI value is incorrect, then various problems can develop. For instance, shipments can be ordered at the wrong times and for the wrong quantity of products.
BRIEF DESCRIPTION OF THE DRAWINGSDisclosed herein are embodiments of systems, apparatuses and methods pertaining to managing perpetual inventory values based upon customer purchases. This description includes drawings, wherein:
FIG. 1 is a block diagram showing one example of a system that adjusts the PI of a product using customer sales data in accordance with some embodiments;
FIG. 2 is a flowchart showing one example of an approach for adjusting the PI of a selected product using customer sales data in accordance with some embodiments;
FIG. 3 is a block diagram of a data structure used in a system that adjusts the PI of a product using customer sales data in accordance with some embodiments;
FIG. 4 is a flowchart of one approach for determining the confidence level of adjusting the PI value in accordance with some embodiments.
Elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions and/or relative positioning of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments of the present invention. Also, common but well-understood elements that are useful or necessary in a commercially feasible embodiment are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present invention. Certain actions and/or steps may be described or depicted in a particular order of occurrence while those skilled in the art will understand that such specificity with respect to sequence is not actually required. The terms and expressions used herein have the ordinary technical meaning as is accorded to such terms and expressions by persons skilled in the technical field as set forth above except where different specific meanings have otherwise been set forth herein.
DETAILED DESCRIPTIONGenerally speaking, systems, apparatuses and methods are provided that adjust perpetual inventory values based upon customer purchases. Two different products are typically purchased together by a customer, but on one occasion the customer only purchases one product and not the other. However, the PI value of the non-purchased product still shows the non-purchased product as being available in the retail store. In the present approaches, the PI value of the non-purchased product is adjusted with a degree of confidence as to the accuracy of the adjustment. In aspects, the degree of confidence is determined based upon taking actions such as verifying that the item is not on the shelf. The degree of confidence is also influenced by other information, e.g., demographic information about the customer, or whether there was a weather event that may have influenced shipments to the store, to mention two examples.
In many of these embodiments, a system that is configured to adjust perpetual inventory (PI) values of products includes a transceiver circuit, a network, an interface, a database, and a control circuit.
The transceiver circuit is disposed at a retail store, and is configured to transmit sales data related to a first product purchased by a customer at the retail store. The network is coupled to the transmitter circuit. The interface is coupled to the network, and is configured to receive the sales data from the transceiver circuit via the network. The interface is disposed at a central processing center.
The database includes a data structure. The data structure programmatically links the first product to a second product. The second product is historically purchased by the customer whenever the customer has also purchased the first product. The database is disposed at the central processing center.
The control circuit is coupled to the interface and the database. The control circuit is disposed at the central processing center and configured to determine whether the customer purchased the second product together with the first product based upon analyzing the sales data. The control circuit is configured to, when the customer has failed to purchase the second product with the first product, transmit instructions to the transceiver circuit via the interface and network to perform a verification at the retail store that the second product is out-of-stock. The control circuit is additionally configured to receive an outcome of the verification from the transceiver circuit at the retail store via the network and the interface. The control circuit is further configured to determine a level of certainty that the second product is actually out-of-stock based upon an analysis of the sales data and the outcome of the verification. The control circuit is configured to, when the level of certainty exceeds a predetermined threshold, adjust the PI value to zero. The control circuit is configured to transmit the adjusted PI value to the transceiver circuit at the retail store via the interface and the network.
In aspects, the system also includes an automated vehicle at the retail store. The instructions cause the automated vehicle at the retail store to verify that that the second product is not present at the retail store. In other aspects, the automated vehicle maneuvers to a shelf where the second product is shelved. In examples, the automated vehicle is an aerial drone or a ground vehicle.
In other examples, the instructions are a message to an employee at the retail store to verify that that the second product is not present at the retail store. The network may be any type of network such as the cloud network.
The sales data can be a wide variety of data. For example, the sales data may include point-of-sale data indicating that a customer purchased the first product but not the second product, a scan of a shelf where the second product is disposed, demographic information of the customer, information related to a weather event, information concerning how the customer paid for the first product, or information concerning the path of the customer through the store. Other examples are possible.
In other embodiments, sales data related to a first product purchased by a customer in a retail store is transmitted from the retail store to a central processing center. The sales data is received at the central processing center. A data structure at a database at the central processing center is stored. The data structure programmatically links the first product to a second product. The second product is historically purchased by the customer whenever the customer has also purchased the first product. At the central processing center, a determination is made as to whether the customer purchased the second product together with the first product based upon the sales data.
When the customer has failed to purchase the second product with the first product, instructions are transmitted to the retail store over the network to perform a verification that the second product is out-of-stock. An outcome of the verification from the retail store is received via the network. At the central processing center, a determination is made as to a level of certainty that the second product is actually out-of-stock based upon an analysis of the sales data and the outcome of the verification. When the level of certainty exceeds a predetermined threshold, the PI value is adjusted to zero.
In still others of these embodiments, a system is configured to adjust perpetual inventory (PI) values of products. The system includes an automated vehicle, a sales entry device or sensor, a transceiver circuit, a network, an interface, a database, and a control circuit.
The automated vehicle is disposed at a retail store. The sales entry device or sensor is disposed at the retail store. The sales entry device or sensor is configured to collect sales data related to a first product purchased by a customer at the retail store.
The transceiver circuit is disposed at the retail store and coupled to the sales entry device or sensor. The transceiver circuit is configured to transmit the sales data related to the first product purchased by a customer at the retail store. The network is coupled to the transceiver circuit.
The interface is coupled to the network and is configured to receive the sales data from the transceiver circuit via the network. The interface is disposed at a central processing center.
The database includes a data structure. The data structure programmatically links the first product to a second product. The second product is historically purchased by the customer whenever the customer has also purchased the first product. The database is disposed at the central processing center.
The control circuit is coupled to the interface and the database. The control circuit is disposed at the central processing center and is configured to determine whether the customer purchased the second product together with the first product based upon an analysis of the sales data. The control circuit is further configured to, when the customer has failed to purchase the second product with the first product, transmit instructions to the automated vehicle via the transceiver circuit, the interface and the network. The instructions are effective to cause the automated vehicle to perform a verification at the retail store that the second product is out-of-stock.
The control circuit is also configured to receive an outcome of the verification from the automated vehicle. The outcome is transmitted from the transceiver circuit at the retail store to the network and to the interface.
The control circuit is further configured to determine a level of certainty that the second product is actually out-of-stock based upon an analysis of the sales data, the outcome of the verification, and results of verifications at other retail stores. The control circuit is configured to, when the level of certainty exceeds a predetermined threshold, adjust the PI value to zero. The control circuit is still further configured to transmit the adjusted PI value to the transceiver circuit at the retail store via the interface and the network.
Referring now toFIG. 1, one example of a system100 for adjusting the PI value of a selected product in aretail store102 is described. Theretail store102 may be any type of retail store, for example, a discount center, a grocery store, a department store, or a hardware store to mention a few examples.
Theretail store102 includes adatabase152 that stores for each product aPI value122. ThePI value122 for the selected product indicates the amount of a selected product in the retail store.
Thedatabase152 may also includesales data124. Thesales data124 can be a wide variety of information. For example, thesales data124 may include point-of-sale data indicating that a customer purchased the first product but not the second product, a scan of a shelf where the second product is disposed, demographic information of the customer, information related to a weather event, information concerning how the customer paid for the first product, or information concerning the path of the customer through the store. Thesales data124 may be obtained by sales entry devices or sensors158 (e.g., cameras, other sensing devices (RFID sensors), or cash registers) or may be manually entered into thedatabase152.
Acommunication device154 allows theretail store102 to communicate with devices and entities that are external to the store. Thecommunication device154 may include any combination of hardware or software that allows communications to be received at theretail store102, and makes transmissions from theretail store102. In one example, thecommunication device154 may be a transceiver circuit. Thecommunication device154 may be deployed within or at another device (e.g., a modem, a smart phone, or a personal computer, to mention a few examples). Thecommunication device154 may transmit thePI value122 and thesales data124 from theretail store102.
Cloud network104 is coupled to the communication device154 (e.g., a transceiver) at theretail store102. Thecloud network104 may be any type of computer or communication network and may include routers, gateways, and servers to mention a few examples of devices that can form or be utilized in thenetwork104. Thecloud network104 may also be combinations of various types of networks.
Theapparatus106 includes aninterface130, acontrol circuit132, and adatabase134. Theinterface130 is configured to receive from theretail store102 the perpetual inventory (PI)value122 associated with the selected product and thesales data124. Thedatabase134 stores thePI value122 and thesales data124. Theapparatus106 may be deployed at a central processing center such as the home office of the retail store.
In aspects, theapparatus106 may be disposed at a central processing center or location such as a business headquarters. In other examples, theapparatus106 is disposed at one or more remote locations (e.g., retail stores). Advantageously, disposing the apparatus at a central processing center reduces data storage cost, since all data can be stored at a single location instead of at multiple locations.
Thecontrol circuit132 is coupled to theinterface130 and thedatabase134. Thecontrol circuit132 is configured to obtain thePI value122 and thesales data124 from thedatabase134. It will be appreciated that as used herein the term “control circuit” refers broadly to any microcontroller, computer, or processor-based device with processor, memory, and programmable input/output peripherals, which is generally designed to govern the operation of other components and devices. It is further understood to include common accompanying accessory devices, including memory, transceivers for communication with other components and devices, etc. These architectural options are well known and understood in the art and require no further description here. Thecontrol circuit132 may be configured (for example, by using corresponding programming stored in a memory as will be well understood by those skilled in the art) to carry out one or more of the steps, actions, and/or functions described herein.
Thecontrol circuit132 is configured to, when the customer has failed to purchase the second product with the first product, transmit instructions to the communication device (e.g., transceiver circuit)154 via theinterface130 andnetwork104 to perform a verification at the retail store that the second product is out-of-stock. The verification may be accomplished using the automatedvehicle156, which is in communication with thecommunication device154. Thecontrol circuit132 is additionally configured to receive an outcome of the verification from thetransceiver circuit154 at theretail store102 via thenetwork104 and theinterface130. Thecontrol circuit132 is configured to determine a level of certainty that the second product is actually out-of-stock based upon an analysis of thesales data124 and the outcome of the verification. Additionally, the results of verifications (or certainty level calculations) performed or made at other retail stores can be considered (e.g., whether the product was ever located). These may be stored in thedatabase134. Thus, the experience and knowledge gained from decisions made with respect to other stores can be applied to obtain better decisions with respect to levels of certainty for the current store being evaluated.
Thecontrol circuit132 is configured to, when the level of certainty exceeds a predetermined threshold, adjust thePI value122 to zero. Thecontrol circuit132 is configured to transmit the adjustedPI value122 to thetransceiver circuit154 at the retail store via the interface and the network.
In aspects, the system also includes anautomated vehicle156 deployed at theretail store102. The instructions formed by thecontrol circuit132 cause theautomated vehicle156 at theretail store102 to verify that that the second product is not present at the retail store. In other aspects, theautomated vehicle156 maneuvers to a shelf where the second product is shelved. In examples, the automated vehicle is an aerial drone or a ground vehicle.
In other examples, the instructions are a message to an employee at theretail store102 to verify that that the second product is not present at theretail store102.
Referring now toFIG. 2, one example of an approach for managing the PI value of a selected product based upon sales information is described. Atstep202, sales data related to a first product purchased by a customer in a retail store is transmitted from the retail store to a central processing center. The sales data may be structured according to any type of data format.
Atstep204, the sales data is received at the central processing center. A data structure is created and stored at a database at the central processing center. The data structure programmatically links the first product to a second product. The second product is historically purchased by the customer whenever the customer has also purchased the first product. For example, the customer may always purchase apples and bananas together.
Atstep206, at the central processing center, a determination is made as to whether the customer purchased the second product together with the first product based upon the sales data. In these regards, the sales data may include information about each customer trip to the retail store and the purchases made during that trip. An analysis of this information locates the first product within the data for a particular customer trip and determines whether the customer purchases the second product during the same customer trip.
Atstep208, when the customer has failed to purchase the second product with the first product, instructions are transmitted from the central processing center to the retail store over the network to perform a verification that the second product is out-of-stock. The instructions may be in any type of format and may cause an automated vehicle to search the entire store (or portions of the store such as the shelves or other areas where the product is placed for retail sales) to verify that the product is missing. Alternatively, instructions can be sent to the retail store (or an employee of the retails store) to have the employee search for the product.
Atstep210, an outcome of the verification from the retail store is received at the central processing center via the network. The verification can be received, in aspects, from an automated vehicle or an employee and indicates whether the product was located.
Atstep212 and at the central processing center, a determination is made as to a level of certainty that the second product is actually out-of-stock based upon an analysis of the sales data and the outcome of the verification. As discussed elsewhere herein, various approaches can be used to determine whether the level of certainty is high or low. Different inputs (e.g., visual images from the store, the customer's path through the store, the customer's purchase history, to mention a few examples of information) can be used to determine the level of certainty. Additionally, the results of verifications (or certainty level calculations) performed or made at other retail stores can be considered (e.g., whether the product was ever located). Thus, the experience and knowledge gained from decisions made with respect to other stores can be applied to obtain better decisions with respect to levels of certainty for the current store being evaluated. Each of these inputs can be weighted. The level of certainty may be calculated as a number by summing the weighted contribution of each input.
Atstep214 when the level of certainty exceeds a predetermined threshold, the PI value is adjusted to zero. In this case, a high degree of confidence exists that the item is missing from the store such that the PI value can be set to 0 (or in some cases, some other appropriate number). When the level of certainty does not exceed the threshold, no change to the PI is made. In this later case, there is not a high enough degree of certainty that the product is missing from the store.
Referring now toFIG. 3, one example of adata structure300 that may be used in the approaches ofFIG. 1 andFIG. 2 is described. In aspects, thedata structure300 may be stored at a database at the central processing center.
Thedata structure300 programmatically links afirst product302 to asecond product304. Thesecond product304 is historically purchased by the customer whenever the customer has also purchased thefirst product302.
Thedata structure300 programmatically links athird product306 to afourth product308, and afifth product310. Thefourth product308 and thefifth product310 are historically purchased by the customer whenever the customer has also purchased thethird product306.
It will be appreciated that thedata structure300 may be implemented in any programming language with any type of data elements. For example, thedata structure300 may be implemented as a look-up table or with pointers.
Referring now toFIG. 4, one example of an approach for determining the level of certainty is described. It will be appreciated that the approach ofFIG. 4 is one example and considers only some factors. The particular factors selected and the weight attached to these factors can vary according to the needs of the system or the user. It will be appreciated that the approach ofFIG. 4 may be performed at a central processing center.
Atstep402, inputs are received. The inputs include sales data from the store. This may be obtained from point-of-sale devices such as cash registers. Information concerning the path a customer the customer takes through the store can also be obtained. Customer movement information may be obtained by sensors (e.g., cameras recording the movement of the customer, or sensing RFID tags of products in the shopping cart of a customer and tracking these as the customer moves through the store). Information concerning weather events may also be received. In some aspects, this information may be manually entered into the system by an employee. Other information concerning whether the item is in the store may also be received. In aspects, this information may include visible images obtained by various cameras in various locations in the store. These images may confirm that the product is not present, for example, on the shelves or in a back room (that is not accessible to the public).
The analysis of these inputs to determine a confidence level occurs atsteps404,406,408, and410. If a test at each of these steps confirms that the factor is true, then the weighted value of the factor is included in a summation. The summation represents the confidence level that the product is truly out of stock. For instance, assuming that each step has a weighting factor of 0.25, if all steps were true, then the confidence level is 1 indicating a very high confidence the product is missing from the store. If only two out of four were true, the confidence level would be 0.25 plus 0.25 to equal 0.5, representing a 50 percent chance the product is missing.
Now considering these steps in greater detail, atstep404, it is determined whether the customer followed their usual path through the store. For example, information received at step402 (showing the customer's path through the store), may be compared to the path usually followed through the store. If the current path deviates beyond a predetermined amount or distance from the usual path, then factor404 may be set to false. Otherwise, the result ofstep404 is set to be true (indicating the customer intended not to purchase the second product).
Atstep406, images from the store may be analyzed to determine if the product is in the store. When the images do not contain the product, this factor may be set to true. Otherwise, the result ofstep406 is set to false.
Atstep408, the sales data from the store is analyzed. For example, no recent purchases of the item from the store may indicate the product is not available and this factor may be set to true. Otherwise, the result ofstep408 is set to false.
Atstep410, analysis may be made to determine if a special weather event occurred. For example, occurrence of a severe weather event may cause this factor to be set to true (e.g., indicating a shipment has been missed due to the weather and that the product is missing from the store). The non-occurrence of a weather event may cause this factor to be set to false.
Atstep412, results at each of thesteps404,406,408, and410 are weighted and summed together. The weights in one aspect should sum to be 1.00. Assuming that each step has a weighting factor of 0.25, if all steps were true, then the confidence level is 1 indicating a very high confidence the product is missing from the store. If only two out of four were true, the confidence level would be 0.25 plus 0.25 or 0.5 representing a 50 percent chance the product is missing.
Once the confidence level is determined, it can be utilized to determine whether the PI is to be changed. In one example, if the confidence level exceeds a predetermined level (e.g., 90%), then the PI value can be changed to 0.
Those skilled in the art will recognize that a wide variety of other modifications, alterations, and combinations can also be made with respect to the above described embodiments without departing from the scope of the invention, and that such modifications, alterations, and combinations are to be viewed as being within the ambit of the inventive concept.