Patent ID: 12198152

DETAILED DESCRIPTION

Various embodiments will be described in detail with reference to the drawings, wherein like reference numerals represent like parts and assemblies throughout the several views. Reference to various embodiments does not limit the scope of the claims attached hereto. Additionally, any examples set forth in this specification are not intended to be limiting and merely set forth some of the many possible embodiments for the appended claims.

In general, the present disclosure describes providing on-premises positioning determination and analytics by determining a detailed set of position points, and optionally a detailed route of travel, and generating various metrics and metric visualizations based on the route of travel that can be further analyzed to achieve various physical objectives at the retail location. These can include adjusting product and object positioning to improve customer flow through a store, reducing high-traffic points to avoid congestion, rearranging promotions or other products to encourage different traffic flows, or other objectives.

FIG.1is a diagram illustrating an example networked computing operating environment100where a system may be implemented for providing on-premises positioning determination and analytics, herein referred to as an on-premises positioning analytics (OPPA) system102. In some examples, the OPPA system102may be associated with an enterprise, such as a retail enterprise that offers goods and/or services, also referred to herein as items, directly to consumers. According to an aspect, the enterprise may be a retail operation that may include at least one premises or retail location104, such as a physical store where items are sold. In some examples, the enterprise may further include an online sales channel through which items are sold. Moreover, the enterprise may be further comprised of other enterprise divisions, such as a headquarters and one or more operation centers (e.g., inventory receive centers, flow centers). Although examples are presented primarily regarding the retail industry, these are presented as non-limiting examples, as enterprises in other goods, services, healthcare, educational, professional, and other industries may also make use of the present disclosure.

Aspects of the present disclosure describe technology that can provide positioning determination and analytics by tracking a route that a shopper takes while shopping at a retail location104using location data collected at the retail location104and overlaying the location with additional data for generating various metrics and metric visualizations. In the depicted example, the OPPA system102includes one or more computing devices that communicate with one or more endpoint devices106(e.g., over a wireless and/or wired communication network) to provide on-premises shopper positioning metrics and visualizations. The OPPA system102may receive data from various data sources, execute software that processes the received data, and provide information based on the processed data to the one or more endpoint devices106.

In some examples, the OPPA system102may be operative or configured to receive asset telemetry from an asset telemetry server108. The asset telemetry server108may be illustrative of an asset tracking computing system that may collect location data associated with a route122taken by a shopper while shopping at the retail location104. According to an example implementation, the asset telemetry server108may be configured to collect location data by leveraging a beacon and sensory network and wireless communication technology. The asset telemetry server108may be located in a cloud computing network, an edge computing network, or other location.

In some examples, the beacon and sensory network comprises a plurality of beacons113and one or more associated sensors114distributed throughout a retail location104. One or more locatable devices115may be affixed to a plurality of assets, such as container units (e.g., shopping carts118or shopping baskets), moveable fixtures, and/or other assets; or a mobile computing device110can operate as a locatable device115. In some examples, the locatable device115is an asset tag. An asset tag116may be an electronic device that can be attached to an asset and configured to receive and respond to interrogation wireless signals (sometimes referred to herein as “beacon signals”). For example, an asset tag116may use Bluetooth® Low Energy (BLE) technology, wireless ethernet (WIFI) technology, Radio Frequency Identification (RFID) technology, Visual Light Communication (VLC), Long Range (LoRa) technology, or another wireless communication technology to receive interrogation signals (e.g., from one or more beacons113) and to emit a wireless signal that can carry information that may be read by a sensor114, for example an RFID reader or other wireless sensing device, which is proximate to the asset tag116in the retail location104.

In other examples, an asset tag116may act as a beacon itself, for example by acting directly as a transmitter. In such instances, beacons113may not be required to be located at the retail location104, instead using the locatable devices115for transmission of identification signal and sensors114able to detect location of those devices.

In some examples, the distance at which beacon signals may be transmitted from the locatable device115to one or more sensors114may be based on the particular type of asset tag116and/or the technology used to transmit the wireless signal.

In some examples, beacon signals may be received and/or transmitted by a mobile computing device110. For example, the mobile computing device110may include a mobile phone, tablet, wearable device, personal digital assistant (PDA), or other mobile computing device that may be carried by a shopper (mobile computing device110a) or an employee of the retail location104(mobile computing device110b). A location of the mobile computing device110may be determined based on various positioning technologies. In some examples, a location of a mobile computing device110may be determined based on processing one or a combination of: beacon signals, Global Positioning System (GPS) data, WI-FI data, cellular data, and user-entered data, or via another suitable location process, and can be provided after receiving appropriate permission from a device user. In other examples, the mobile computing device110may be operative or configured to execute an application124that can be used to instruct the mobile computing device110to receive and/or transmit beacon signals, and can relay information that may be read by various sensors114positioned throughout the retail location104. For example, the application124may include a web browser application or a client web application. In some examples, the application124may be configured to communicate with a web server associated with the enterprise. In some examples, beacon signals may be received and relayed after receiving appropriate permission from the device user. The mobile computing device110may be configured to broadcast beacon signals using BLE, WI-FI, RFID, or another wireless communication technology that may be received by the various sensors114.

The sensors114may be positioned at predetermined positions at the retail location104and may be configured to detect a locatable device115within a range. In some examples, the sensors114may listen for beacon signals received from a locatable device115. For example, an asset tag116affixed to a shopping cart118, a mobile device110acarried by a shopper, or another type of locatable device115may respond to (or directly transmit) periodic beacon signals, with the relayed signal being received by various sensors114throughout the retail location104as the shopper shops. In some examples, beacon signals may be broadcast at relatively high frequency. In some examples, the sensors114(and optionally beacons113) may be integrated in light fixtures, a ceiling, or on poles within the retail location104. For example, such sensors114may be configured to obtain refined location coordinate information of locatable devices115. In some implementations, signal strength data corresponding to the locatable device115can be collected at each of the sensors114and used to estimate a general location of the responsive device115in the retail location104. In some examples and as described in U.S. Provisional Application No. 63/053,214 having the title of “DETERMINING LOCATION OF MOBILE DEVICE” and the filing date of Jul. 17, 2020, which is hereby incorporated by reference in its entirety, the general location can be refined, using particle filter localization techniques and map data corresponding to the retail location104, for example, and a more precise estimate of the locatable device115in the retail location104can be determined. In some examples, the refined location data can be stored as either discrete time-location data points that include an identifier of the locatable device115, or may be gathered into time-series location data along with an identifier of the locatable device115, and a point in time at which the transmitter was at the estimated location. For example, a dataset of location coordinates can be used to determine a shopper's route122through the retail location104. The dataset may include refined location coordinates collected at a relatively high frequency, and can be used for determining a detailed route122of travel. As will be described below, a detailed route122of travel can enable various metrics and metric visualizations to be generated that can be further analyzed to achieve various objectives.

In some examples, when a locatable device115is detected by a sensor114, the sensor114may be configured to obtain information carried by the beacon signal. For example, the sensor114may be configured to obtain a unique device identifier (ID) included in the beacon signal. The sensor114may be further configured to transmit the information (e.g., device ID) in a beacon-related communication to an asset telemetry controller120. For example, the device ID may uniquely identify the locatable device115from which the beacon signal was transmitted.

In some examples, the sensor114may be further configured to transmit a sensor ID in a beacon-related communication to the asset telemetry controller120, wherein the sensor ID may uniquely identify the sensor114that received the beacon signal transmitted by the locatable device115.

In some implementations, the sensors114may be cameras operative or configured to obtain images within a range. For example, the images may include shoppers within the range such that location information about the shoppers may be obtained for determining a shopping trip and a route122of travel. As should be appreciated, in some implementations, location data may be anonymized and aggregated. In some implementations, the OPPA system102can optionally include a privacy component that enables the shopper to opt in or opt out of exposing personal information. For example, the privacy component may enable compliance with privacy laws/regulations and an authorized and secure handling of shopper information, such as tracking information, as well as personal information that may have been obtained, is maintained, and/or is accessible. In some examples, the shopper may be provided with notice of the collection of portions of the personal information and an opportunity to opt-in or opt-out of the collection process. Consent can take several forms. Opt-in consent can impose on the shopper to take an affirmative action before the data is collected. Alternatively, opt-out consent can impose on the shopper to take an affirmative action to prevent the collection of data before that data is collected.

According to an aspect, the controller120may be operative or configured to receive beacon-related communications from the sensors114and serve asset tracking data associated with the beacon-related communications to the asset telemetry server108. In some examples, the controller120may be configured to attach additional information to a beacon-related communication, such as a timestamp of the beacon signal and a retail location ID. In some examples, other asset tracking data and/or additional beacon-related information may be included and provided to the asset telemetry server108.

According to an aspect, the asset telemetry server108may be configured to receive asset tracking data from a plurality of controllers120associated with a plurality of retail locations104. The asset telemetry server108may store the asset tracking data received from the controllers120in one or more databases, file systems, and/or cached data stores. The asset telemetry server108may be further operative or configured to process the asset tracking data for determining various asset telemetry data about the beacon signals as part of providing asset tracking services.

In some examples, the asset telemetry server108may be configured to determine location coordinates (e.g., XY coordinates) associated with a location where the asset (e.g., asset tag116or mobile device110) pinged the sensor114. For example, the asset may be identified by the device ID, and the location coordinates may be based on location coordinates (e.g., X and Y coordinates) of the sensor114that received the beacon signal. In some examples, the asset telemetry server108may include or be in communication with a sensor data source138. For example, the sensor data source138may store a listing of sensors114at a retail location104, wherein the sensors114may be associated with a sensor ID and location coordinates. In some examples, the location coordinates may be further based on signal strength data corresponding to the transmitter device115. In some examples, the asset telemetry server108may be further configured to determine a type of locatable device115that transmitted/relayed a beacon signal (e.g., an asset tag116or mobile device110).

In some examples, based on received asset-tracking data, the asset telemetry server108may be configured to locate locatable device115, analyze movement of the transmitter, and generate various asset telemetry information. In some examples, the asset telemetry server108may be configured to provide an application programming interface (API126) that may be used to share asset telemetry information with other computing systems, such as the OPPA system102.

In some examples, the OPPA system102may be configured to call the API126exposed by the asset telemetry server108to request and obtain a dataset comprising asset telemetry information. In some examples, the OPPA system102may request asset telemetry information for a particular retail location104. In some examples, the asset telemetry dataset may include the unique device ID, a timestamp of the beacon, location coordinates (e.g., X and Y coordinates) locatable device115pinged the sensor114, and a source ID that may identify a type of device (e.g., asset tag116or mobile device110) that transmitted the beacon. In some examples, other asset tracking data and/or additional beacon-related information may be included and provided to the asset telemetry server108.

In some examples, the OPPA system102may be further operative or configured to obtain map information from a map information data source128, business context information from a business context information data source130, and point-of-sale (POS) transaction information from a POS transaction information data source132. The data sources128,130,132, for example, can include one or more databases, file systems, and/or cached data sources.

The map information data source128, for example, may include a plurality of maps and map information that may plot positions and boundaries of various structures and areas (e.g., zones) within a space. In general, each of the maps may be associated with a different retail location104; however, in some examples, two or more retail locations104may share a similar map. For example, an enterprise may operate a chain of retail stores that may maintain a different (or similar) retail store map for each different location at which the enterprise has a retail store. In some examples, the OPPA system102may be configured to retrieve map information from the map information data source128for a particular retail location104.

Referring now toFIG.2, an example map200of a retail location104is shown. In the illustrated example, the map200includes various zones202and includes various fixed and/or mobile fixtures (e.g., aisles, sections, shelves, racks, bins, and other fixtures) within the zones. In some examples, a zone202may include a department (e.g., a grocery department, a home décor department, a children's clothing department), a checkout area (e.g., which may include belted checkout stations and/or self-checkout stations), an entrance, guest services, an order pickup area, etc. In some implementations, a map200may be associated with a coordinate system (e.g., an XY coordinate system), and each zone202within the mapped space may be plotted on a map based on coordinates corresponding to the locations. For example, the map200may be associated with a coordinate system that facilitates rendering of the zones202, the various aisles, sections, and fixtures within the zones, and indications of one or more asset locations throughout the mapped space.

Referring again toFIG.1, in some examples, the business context information data source130may include adjacency information. For example, adjacency information may include a listing of zones202(e.g., areas or departments) in a retail location104and the zones202that are adjacent to each. A zone202may be identified by a name or other identifier, and may include an indication about whether the zone202is an adjacency (i.e., adjacent to another zone202), an indication about a zone202type (e.g., an adjacency, an entrance, a checkout zone, guest services, order pickup), and location coordinates of a shape representing the zone202. In some examples, the OPPA system102may be configured to retrieve adjacency information from the business context information data source130for a particular retail location104.

In some examples, the business context information data source130may include item location information. For example, item location information may include, for each of a plurality of items (e.g., unique or common items, such as store products, inventory stock, or other items), an item identifier, item location coordinates (e.g., XY coordinates), and item planogram information that indicates assigned locations of the item within a retail location map200. In some examples, item location information may further include item taxonomy information (e.g., information relevant to a classification of the item within a classification hierarchy). In some implementations, item taxonomy information may include an item classification hierarchy that includes a general classification level, one or more intermediate classification levels under the general classification level, and a discrete classification level for an item. For example, item taxonomy information for a particular item supplied by a particular chain of stores may include a department level, a class level, and an item level. In one example, an item may be a particular type of shirt, and the item taxonomy information for the shirt may indicate that the shirt is classified as being from a kidswear department/zone (e.g., a general item classification level), as a t-shirt within the kidswear department/zone (e.g., an intermediate item classification level), and as an Albert Einstein kid's t-shirt (e.g., a discrete item classification level). In some examples, the OPPA system102may be configured to retrieve item location information from the business context information data source130for an item at a particular retail location104.

In some examples, the business context information data source130may include promotional item information. For example, promotional item information may include information about items included in one or more item promotion campaigns. An example of an item promotion campaign is a printed or electronic promotion (sometimes referred to as a “circular”) of certain items that may be directed to all or a selected group of shoppers. In some examples, an item promotion campaign may be associated with a certain time period. For example, a circular may be distributed by the enterprise on a periodic basis (e.g., daily, weekly, monthly) and the items included in the circular may be promoted for a time period associated with the periodic basis (e.g., for a day, a week, a month). In some examples, the OPPA system102may be configured to retrieve a listing of items included in an item promotion campaign from the business context information data source130for a particular retail location104and for a particular time period.

In some examples, the business context information data source130may include out-of-stock item information. For example, item out-of-stock item information may include a listing of items that may have been out-of-stock at a retail location104and a time period associated with when the items were out-of-stock. In some examples, the OPPA system102may be configured to retrieve a listing of out-of-stock items from the business context information data source130for a particular retail location104and for a particular time period.

The POS transaction information data source132, for example, may include POS transaction information that may include information about items purchased at a retail location104in associated with a particular POS. For example, the retail location104may comprise a plurality of checkout lanes at which a combination of belted and self-checkout POS units may be provided for performing various functions of a retail checkout process. The plurality of checkout POS units may be in communication with a backend system that may be configured to store and provide POS transaction information collected from the plurality of checkout POS units to the OPPA system102. In some examples, POS transaction information may include, for each of a plurality of POS transactions, one or more transaction IDs, a date of the POS, a start and end time of the POS, and a unique item ID, zone ID, class ID, and description of each item included in the POS transaction. In some examples, a checkout POS unit ID may be included in the POS transaction information. In other examples, a checkout POS unit may be identified based on a transaction ID. In some examples, the OPPA system102may be configured to retrieve POS transaction information from the POS transaction information data source132for a particular retail location104and for a particular time period or date.

As will be described in further detail below, the OPPA system102may be operative or configured to perform one or more processes for providing on-premises positioning determination and analytics. In some examples, the OPPA system102may be configured to gather and analyze asset telemetry information for determining a shopper trip and overlay asset telemetry information on a map200for determining various retail location-level and zone-level metrics. For example, a shopper trip route and/or various asset telemetry information may be overlaid on a map200for generating a traffic heatmap that may reveal shoppers' traffic flow patterns around the retail location104, dwell hot spots associated with points in a shopper trip where the shopper may pause at a particular location, and effects of various store design A/B tests. Non-limiting examples of various metrics that may be determined by the OPPA system102may include metrics associated with a number of retail location visits and/or shoppers, trip length, zones202visited, dwell hot spots and visits, entrance and exit behaviors, shopper engagement with items and/or displays, and congestion events.

In some examples, the OPPA system102may be further operative or configured to link a shopper trip to a POS transaction and overlay POS transaction information on a map200for generating additional metrics and metric visualizations. Such metrics and metric visualizations can be further analyzed to determine various shopper engagement behaviors and/or POS conversion effects for achieving various retail objectives.

For example, a location at which a shopper opts to pause for more than, for example, 5 seconds, may be identified as a location of interest to that shopper. This information may be overlaid on a map200including information regarding top sales zones, locations of items included in an item promotion campaign, and/or out-of-stock items. Based on this information, a variety of assessments may be performed. In one example, a route122that reflects a pause near an out-of-stock item location may represent a lost sale.

With reference still toFIG.1, in some examples, an endpoint device106may execute an application134that may be operative or configured to request various metrics and metric visualizations from the OPPA system102. In some examples, the endpoint device106may be configured to display the metrics and metric visualizations on a display screen. For example, the application134may include a user interface (UI)136with which a user of the endpoint device106may interact to request and view a set of metrics and/or metric visualizations. In some implementations, the UI136may include one or more controls for indicating a retail location104, a time period, date, and/or other parameters that may be associated with one or more datasets of information that may be retrieved for generating metrics and metric visualizations.

The OPPA system102and other components in the operating environment100may be implemented using various types of computing devices that include at least one processor and a memory coupled to the at least one processor, the memory including instructions that when executed by the at least one processor operate to perform one or more operations associated with implementing on-premises positioning determination and analytics. Non-limiting examples of computing devices include servers, workstations, checkout POS units, desktop computers, laptop computers, mobile phones110, tablets, smart devices, gaming devices, wearable devices, databases, etc. Further details of the computing devices and variations thereof can be found inFIG.18. In the example operating environment100, one or more computing systems may communicate over a network or a combination of networks. Non-limiting examples of networks can include the Internet, an intranet, an extranet, a local-area network, a wide-area network, an edge network, wired networks, wireless networks, and combinations thereof.

Further details of processes performed by components of the OPPA system102and in the operating environment100in accordance with one or more aspects of the present disclosure are described with reference toFIG.3. InFIG.3, a flow chart is shown depicting general stages of an example process or method300for providing on-premises positioning determination and analytics according to an embodiment. At OPERATION302, a request for metrics and/or metric visualizations in association with shopping trips at a retail location104may be received. In some examples, a user of an endpoint device106may employ an application134executing on the endpoint device106to request the metrics and/or metric visualizations. In some examples, the request may include an indication of one or more parameters that may be utilized to define the datasets of information that the OPPA system102may obtain and use for generating the metrics and/or metric visualizations. For example, the one or more parameters may define one or more retail locations104. The one or more parameters may further define a date and/or time range.

At OPERATION304, asset telemetry information in association with the request may be retrieved. For example, a request for asset telemetry information associated with the one or more parameters may be communicated to the asset telemetry server108. In some implementations, the request may be provided to the asset telemetry server108using an API126. In response to receipt of a request for asset telemetry information, for example, the asset telemetry server108can provide asset telemetry server108to the OPPA system102based on the parameters. In some implementations, the response may be provided to the OPPA system102using the API126.

At OPERATION305, map information, business context information, and/or other datasets of information in association with the request may be obtained or determined. For example, the map information, business context information, and/or other datasets of information may be associated with the one or more parameters and may be utilized by the OPPA system102for analyzing the asset telemetry information and/or generating the metrics and/or metric visualizations.

At OPERATION306, the asset telemetry information may be analyzed, and one or more unique customer shopping trips may be identified based on the asset telemetry information. In some examples, a trip may include a shopper's journey from when the shopper enters a retail location104to when the shopper leaves the checkout zone. In an example implementation, a trip may include a trip start that may begin when a shopping cart118with an asset tag116is detected at an entrance zone202of a retail location104and a trip end that may end when the cart118exits the checkout zone202, wherein one or more beacon signals may be received in other zones202in the retail location104between the trip start and the trip end. For example, a shopping trip may be defined based on a set of criteria and the asset telemetry information may be analyzed in view of the set of criteria for determining whether a set of asset telemetry information may be part of a unique shopping trip. In some examples, a trip may be defined based on a minimum time threshold that an asset is detected in a checkout zone202and a detection of the asset in the retail location104outside of the checkout zone202prior to being detected in the checkout zone202. For example, the trip criteria may be assessed by determining: whether a time interval between consecutive timestamps of beacon signals received from an asset by one or more sensors114in the checkout zone202meet the minimum time threshold; and whether another beacon signal is received from the same asset in another zone with a timestamp prior to the consecutive timestamps of beacon signals received in the checkout zone202. In other examples, a trip may be defined based on a minimum time threshold that an asset is detected in a checkout zone202, as determined by a number of consecutive beacon signals received from an asset in the checkout zone202, and based on a detection of a beacon signal from the asset in a zone202between the checkout zone202and an entrance zone202and a determination that a distance travelled by the asset through the checkout zone202is at least the distance calculated from a first and last point in the checkout zone202. As should be appreciated, in other examples, other trip criteria may be defined, which may be evaluated for determining whether a set of asset telemetry information may be part of a unique shopping trip.

In some implementations, various operations included in method300may be performed in parallel. As an example and as shown inFIG.3, OPERATIONS308-318may be performed concurrently with OPERATION320. For example, OPERATIONS308-318may be directed to linking asset telemetry information to specific POS transactions and for performing subsequent analyses on those POS transactions, and OPERATION320may be directed to performing analyses on unique shopping trips that have not been linked to POS transaction information.

At OPERATION308, asset telemetry information associated with a unique shopping trip may be matched with POS transaction information. For example, upon categorizing a set of asset telemetry information into a unique shopping trip, the trip may be linked to the POS transaction made at the end of the shopping trip. In some examples, a dataset of POS transaction information may be obtained for a date and time period associated with the unique shopping trip. For example, the OPPA system102may be configured to request, from the POS transaction information data source132, POS transaction information for POS transactions with timestamps between a first timestamp and a last timestamp of detected beacon signals in the checkout zone202for the unique shopping trip. In response, the OPPA system102may be configured to receive a dataset including a listing of candidate POS transactions that may be further evaluated for determining a POS transaction that may be matched with the shopping trip.

At OPERATION310, the listing of candidate POS transactions may be further evaluated. In some examples, further evaluation of the listing of candidate POS transactions may include analyzing the items purchased in each candidate POS transaction. For example, for each item in a candidate POS transaction, a comparison string may be created. In some examples, the comparison string may include a combination of each item's group, sub-group, division, department/zone, class and sub-class. For example, based on item location and adjacency information for the retail location104obtained at OPERATION305, the OPPA system102may determine whether the comparison string matches adjacency information.

In some examples, a trip and a candidate POS transaction (trip-transaction) pair may be scored based on matches between the comparison strings associated with the items purchased in the POS transaction and the adjacency information. For example, a match and a mismatch score for each trip-transaction pair may be determined, wherein the match score may indicate the number of items in the POS transaction that match to an adjacency travelled to, and the mismatch score may indicate the number of items that do not match in the item-adjacency comparison. As an example, if the items included in a POS transaction include: milk, a doll, and a pack of pens, but based on location information associated with detected beacon signals, the shopper has only travelled to a dairy zone and a toys zone, the match score for the trip-transaction pair is 2, and the mismatch score is 1. In some examples, the trip-transaction pairs may be sorted in ascending order, and a top number or percentage of top-scoring trip-transaction pairs may be selected.

At OPERATION312, for each trip-transaction pair, the locations of the items purchased in the POS transaction may be plotted on a map200of the retail location104, which may be compared against beacon signals received by sensors114proximate to the item locations. For example, for each of the top number or percentage of top-scoring trip-transaction pairs from OPERATION310, the locations of each item may be plotted based on the item's location coordinates, and a pre-determined sized perimeter may be plotted around each item's location.

At OPERATION314, the locations of the beacon signals associated with a set of asset telemetry information may be plotted on the map200. For example, the location coordinates (e.g., XY coordinates) associated with locations where the asset (e.g., asset tag116or mobile device110) pinged sensors114during the shopping trip may be used to plot the locations of the beacon signals.

At OPERATION316, an analysis may be performed on the plotted information for determining a number of matches between POS transaction item locations and the beacon locations. For example, an item-beacon match score for each POS transaction may be determined, wherein the item-beacon match score may indicate whether a beacon signal is located inside the perimeter of an item location. For example, a higher match score may indicate a larger number of matches between POS transaction item locations and received beacon signals. The item-beacon match scores may be applied to each trip-transaction pair, and a total score may be determined for each trip-transaction pair. In some examples, based on the total score, a determination may be made as to whether a candidate POS transaction may be linked with a shopping trip. For example, a trip-transaction pair with a top-ranking total score or a total score that meets a pre-determined threshold may be determined as a link, and at OPERATION318, the POS transaction information may be linked with the asset telemetry information for the trip.

In some examples, additional matching and/or scoring operations may be performed to determine a link between a trip and a POS transaction. One example operation includes a POS unit match. For example, asset telemetry information may be evaluated to identify a location in the checkout zone202where a shopper paused for a time period. One or more checkout units located near the location may be identified, and POS transaction information associated with the one or more checkout units may be analyzed for matching against asset telemetry information.

at OPERATION318, the asset telemetry information associated with one and/or a plurality of shopping trips may be further analyzed. For example, the OPPA system102may determine and generate various metrics and metric visualizations based on the linked POS transaction information. As an example, POS transaction information linked with asset telemetry information, maps information, and business context information can be evaluated for determining effects of item promotional campaigns, store layout and redesign configurations, directional signage implementations, congestion events, etc., on POS conversions).

In some examples, OPERATION320may be directed to performing various analyses on non-linked asset telemetry information and may be performed in parallel with OPERATIONS308-318. In some examples, since each reading from a transmitter device115includes a timestamp, traffic flow routes122and dwell hot spots may be mapped and various store design A/B tests may be performed to achieve various objectives, such as lower congestion, or routing past particular areas of interest.

At OPERATION322, the OPPA system102may provide the metrics and metric visualizations to the endpoint device106. Some non-limiting examples of various metrics and metric visualizations are illustrated inFIGS.4-17. In some examples and with reference toFIG.4, a metric visualization400that may be generated by the OPPA system102may include retail location-level metrics, such as metrics associated with a number of shopper trips at a retail location104. As illustrated, a number of identified trips402at a retail location104may be determined based on collected asset telemetry data and plotted in a graph along a timeline404. In some examples, the timeline404may be based on a request received from an endpoint device106. In the shown example, the graph shows the number of retail location trips402per day for a 30-day time period. The metric visualization400may further include a total number406of identified trips402for a period of time. In the shown example, the graph includes a total number406aof identified trips402in a first time period compared against a total number406bof identified trips402in a second time period. For example, a metric408associated with a difference between the total number406of trips in the two time periods may be generated and displayed in the graph.

In some examples, and with reference toFIG.5, an example of zone-level metrics and a metric visualization500that may be generated by the OPPA system102may include metrics associated with popularity of various zones202at the retail location104. For example, popularity may be determined based on a number of beacon signals received in a zone202in a time period. For example, the time period may be based on a request received from an endpoint device106. In the shown example, the graph shows the number of beacon signal transmissions502received in a plurality of zones202. In some examples, the number of beacon signal transmissions502received in the zones202in a first time period may be compared against the number of beacon signal transmissions502received in the zones202in a second time period. For example, in for the time period shown, an RTW (Ready-To-Wear clothing) zone202ais shown as more popular than a frozen foods zone202bat the retail location104. In some examples, the OPPA system102may generate metrics associated with popularity of a location within a zone202. In other examples, the OPPA system102may generate metrics associated with popularity of a collection of zones202. For example, a first collection of zones202may represent a front of the retail location104, a second collection of zones202may represent a middle of the retail location104, and a third collection of zones202may represent a back of the retail location104.

In some examples, and with reference toFIG.6, an example metric visualization600is shown as a route122of a shopping trip plotted on a map200of the retail location104. For example, the plotted route122may be a recreated graphical representation of the shopper's route122based on locations of received beacon signals throughout the retail location104as a shopper shops.

In some examples, times at which a shopper pauses at a particular location in a shopping trip may be identified. The location at which the shopper opts to pause for more than a predefined time period may be identified as a dwell hot spot or as a location of interest to that user. In some examples, and with reference toFIG.7, an example metric visualization700is shown including metrics associated with average shopper dwell time. For example, the metric visualization700may include a table in which average shopper dwell times706for a plurality of retail locations104a-emay be categorized by division702a,band can be further categorized by zone202a-fand202g-k. In some examples, the zones202across the retail locations104a-emay be ranked by average shopper dwell times706. As shown, a visual indication, such as color, may be used to indicate the ranking of the average shopper dwell times706across the retail locations104a-e. In some examples, the table may further include a total number of trips704determined for each retail location104a-e, wherein the asset telemetry information in association with the trip may be analyzed for determining the dwell times706.

In some examples, and with reference toFIG.8, an example metric visualization800may be shown as a heat map overlaid on a map200of the retail location104. For example, a heat map may be a graphical representation of asset telemetry information, where telemetry values may be depicted by color or shade. In the illustrated example, the telemetry values may be associated with popularity of areas in the retail location104. For example: a color/shade key808is shown indicating that more popular areas (e.g., based on a number of detected beacon signals in the area or based on dwell times in the area) may be represented by a first color/shade802; less popular areas may be represented by a second color/shade806; and areas of popularity between the more popular and the less popular areas may be represented by a third color/shade804. For example, a transition between the color/shades802,804,806may include one or more gradients. As shown, the heat map can provide an intuitive visualization of complex data that a user may be enabled to understand at a glance.

Another example analysis may include congestion event tracking. For example, a congestion event may occur when two transmitter devices115may ping a sensor114within a predetermined distance from each other within a predetermined time period. In one example implementation, the distance may be approximately 2 meters and the predetermined time period may be a 5 second rolling window of time. Congestion events may then be aggregated and determined at particular times of day, or particular days of the week, as well as at specific locations within a retail location104. In some implementations, congestion events may be tracked for optimizing safety best practices. For example, in times when social distancing may be recommended to prevent transmissions of infectious conditions (e.g., COVID-19, influenza, or other communicable diseases), minimizing contacts between shoppers and congestion events at a retail location104may be desirable. Accordingly, using a visualization such as metric visualization800allows a user to identify and adjust particular store parameters (e.g., number of checkout lanes open at particular days/times, locations of promotional products, store display layouts, etc.) to reduce any undesirable congestion.

In some examples and as illustrated inFIGS.9-12, various congestion event visualizations900,1000,1100,1200may be generated. As shown inFIGS.9and10, a number of trips902,1002and a number of congestion events904,1004may be determined based on collected asset telemetry data and plotted in a graph along a timeline906,1006. In some examples, the timeline906,1006can be based on a request received from an endpoint device106. The timeline906inFIG.9is shown as 1 week, and the timeline inFIG.10is shown as 1 day (e.g., 24 hours). For example, the first congestion event visualization900shows a correlation between the total number of trips902and the number of congestion events904based on the day of the week, and the second congestion event visualization1000shows a correlation between the total number of trips1002and the number of congestion events904based on the hour of the day.

As shown inFIGS.11and12, in some implementations, heat maps may be generated showing congestion events1104as well as an elapsed time1202the congestion event may occur. Additionally, in some examples, a risk metric1102for various zones202or other areas in a retail location104may be determined (e.g., based on the number of congestion events904and/or dwell time/elapsed time1202associated with the congestion events) and included in the metric visualization1100,1200. In some implementations, various comparisons may be made between numbers or percentages of congestion events904,1004and trips9002,1002.

As shown inFIGS.13,14,15, and16, various other example metrics and metric visualizations1300,1400,1500,1600that may be generated by the OPPA system102and that may be provided to an endpoint device106for display are shown. For example, the example metric visualizations1300,1400,1500,1600may represent a distribution of shopper trips based on collected asset telemetry information. A first example trip distribution metric visualization1300shows a distribution of shopper trip durations; a second example trip distribution metric visualization1400shows an example average gap (e.g., inter-arrival time) that may be determined between shopper trips; a third example trip distribution metric visualization1400shows a distribution of shopper trip starts based on the time of day; and a fourth example trip distribution metric visualization1500shows a distribution of POS transaction process times. In some examples, in response to a detection of congestions events904,1004and/or other events based on an evaluation of collected asset telemetry information, the enterprise may be enabled to elect to adjust a planogram or adjust routing of shoppers through the retail location104(e.g., via adjusting layout configurations and/or via directional signage) to reduce such congestion events904,1004. This may lead to, for example, proactive checkout lane staffing to avoid queueing.

In some examples, and with reference toFIG.17, location of interest information may be overlaid on the retail location104map200, and additional business context information1702may be overlaid for specific analyses. One example analysis may include comparing the locations of interest against item promotion information for determining engagement metrics and/or correlations between paused shopper movements detected in a shopper route122and an item promotion campaign. In some examples, item locations associated with items included in the item promotion campaign may be plotted on the map200based on the item's location coordinates. Additionally, a pre-determined sized perimeter may be plotted around each item's location. An analysis may be performed on the plotted information for determining a number of matches between promoted item locations and the locations of interest. For example, an item-ad match score for each promoted item may be determined, wherein the item-ad match score may indicate whether a shopper may have dwelled inside the perimeter of a promoted item location.

Another example analysis may include comparing POS transaction information against various map information and business context information for determining various POS conversion metrics. For example, the impacts or effects of traffic, a promotion campaign, item placements, item visibility, store designs, signage, dwell time, etc., on a POS conversion may be determined. As an example, POS transaction information may be compared against item promotion information for determining promotion conversion metrics and/or correlations between an item promotion campaign and purchases of promoted items. For example, a promo-POS match score for each promoted item may be determined, wherein the promo-POS match score may indicate whether a promoted item is included in the POS transaction information. Various visualizations may be generated for graphically representing the POS conversion metrics and/or other shopper engagement correlation information.

Another example analysis may include comparing the locations of interest against out-of-stock item information for determining engagement metrics and/or correlations between paused shopper movements and lost sales. In some examples, item locations associated with out-of-stock items may be plotted on the map200based on the item's location coordinates, and a pre-determined sized perimeter may be plotted around each item's location. An analysis may be performed on the plotted information for determining a number of matches between out-of-stock item locations and the locations of interest. For example, an item-OOS match score for each promoted item may be determined, wherein the item-OOS match score may indicate whether a shopper may have dwelled inside the perimeter of an out-of-stock item. As should be appreciated, the above example metrics and metrics visualizations are for illustrative purposes and are not limiting of various other metrics and metrics visualizations that may be generated by the OPPA system102for providing on-premises positioning analytics.

FIG.18illustrates an example computing system1800with which aspects of the present disclosure may be implemented. In an example, one or more components of the OPPA system102can be implemented as one or more systems1800or one or more systems having one or more components of systems1800. In an example, the system1800can include a computing environment1810. The computing environment1810can be a physical computing environment, a virtualized computing environment, or a combination thereof. The computing environment1810can include memory1820, a communication medium1838, one or more processing units1840, a network interface1850, and an external component interface1860.

The memory1820can include a computer readable storage medium. The computer storage medium can be a device or article of manufacture that stores data and/or computer-executable instructions. The memory1820can include volatile and nonvolatile, transitory and non-transitory, removable and non-removable devices or articles of manufacture implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. By way of example, and not limitation, computer storage media may include dynamic random access memory (DRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), reduced latency DRAM, DDR2 SDRAM, DDR3 SDRAM, solid state memory, read-only memory (ROM), electrically-erasable programmable ROM, optical discs (e.g., CD-ROMs, DVDs, etc.), magnetic disks (e.g., hard disks, floppy disks, etc.), magnetic tapes, and other types of devices and/or articles of manufacture that store data.

The memory1820can store various types of data and software. For example, as illustrated, the memory1820includes instructions1822for implementing one or more on-premises positioning analytics processes described herein (e.g., as described in relation toFIGS.1-17), data sources128,130,132,138, as well as other data. In some examples (e.g., where the computing environment1810is the OPPA system102), the memory1820can include instructions for: receiving asset telemetry information and other information associated with a shopping trip at a retail location104, analyzing the information, and in response to receiving a request on behalf of an endpoint device106for metrics information, generating and providing metrics and associated metric visualizations to the endpoint device106.

The communication medium1838can facilitate communication among the components of the computing environment1810. In an example, the communication medium1838can facilitate communication among the memory1820, the one or more processing units1840, the network interface1850, and the external component interface1860. The communication medium1838can be implemented in a variety of ways, including but not limited to a PCI bus, a PCI express bus accelerated graphics port (AGP) bus, a serial Advanced Technology Attachment (ATA) interconnect, a parallel ATA interconnect, a Fiber Channel interconnect, a USB bus, a Small Computing system interface (SCSI) interface, or another type of communication medium.

The one or more processing units1840can include physical or virtual units that selectively execute software instructions. In an example, the one or more processing units1840can be physical products comprising one or more integrated circuits. The one or more processing units1840can be implemented as one or more processing cores. In another example, one or more processing units1840are implemented as one or more separate microprocessors. In yet another example embodiment, the one or more processing units1840can include an application-specific integrated circuit (ASIC) that provides specific functionality. In yet another example, the one or more processing units1840provide specific functionality by using an ASIC and by executing computer-executable instructions.

The network interface1850enables the computing environment1810to send and receive data from a communication network. The network interface1850can be implemented as an Ethernet interface, a token-ring network interface, a fiber optic network interface, a wireless network interface (e.g., WI-FI), or another type of network interface.

The external component interface1860enables the computing environment1810to communicate with external devices. For example, the external component interface1860can be a USB interface, Thunderbolt interface, a Lightning interface, a serial port interface, a parallel port interface, a PS/2 interface, and/or another type of interface that enables the computing environment1810to communicate with external devices. In various embodiments, the external component interface1860enables the computing environment1810to communicate with various external components, such as external storage devices, input devices, speakers, modems, media player docks, other computing devices, scanners, digital cameras, and fingerprint readers.

Although illustrated as being components of a single computing environment1810, the components of the computing environment1810can be spread across multiple computing environments1810. For example, one or more of instructions or data stored on the memory1820may be stored partially or entirely in a separate computing environment1810that is accessed over a network.

This disclosure described some aspects of the present technology with reference to the accompanying drawings, in which only some of the possible aspects were shown. Other aspects can, however, be embodied in many different forms and should not be construed as limited to the aspects set forth herein. Rather, these aspects were provided so that this disclosure was thorough and complete and fully conveyed the scope of the possible aspects to those skilled in the art.

As should be appreciated, the various aspects (e.g., portions, components, etc.) described with respect to the figures herein are not intended to limit the systems and methods to the particular aspects described. Accordingly, additional configurations can be used to practice the methods and systems herein and/or some aspects described can be excluded without departing from the methods and systems disclosed herein.

Similarly, where steps of a process are disclosed, those steps are described for purposes of illustrating the present methods and systems and are not intended to limit the disclosure to a particular sequence of steps. For example, the steps can be performed in differing order, two or more steps can be performed concurrently, additional steps can be performed, and disclosed steps can be excluded without departing from the present disclosure.

Although specific aspects were described herein, the scope of the technology is not limited to those specific aspects. One skilled in the art will recognize other aspects or improvements that are within the scope of the present technology. Therefore, the specific structure, acts, or media are disclosed only as illustrative aspects. The scope of the technology is defined by the following claims and any equivalents therein.