# US 10,373,105 B2 · System and method for item-level demand forecasts using linear mixed-effects models

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,373,105 B2
- Document ID: US10373105B2
- Status: Granted
- Kind: B2
- Application number: 14/622,252
- Filed: 2015-02-13
- Published: 2016-08-18
- Granted: 2019-08-06
- Earliest claimed: 2015-02-13
- Assignees: Walmart Apollo, LLC
- Applicants: Wal-Mart Stores, Inc.
- Inventors: Huijun Feng; Shubhankar Ray; Abhay Jha
- Web page: https://patentgrep.com/patent/US10373105B2

## CPC

- G06Q 10/087: Inventory or stock management, e.g. order filling, procurement or balancing against orders
- G06Q 10/06315: {Needs-based resource requirements planning or analysis}
- G06Q 10/08726: {for replenishment processing, procedures, or recommendations using forecasting or optimisation}
- G06Q 30/0201: Market modelling; Market analysis; Collecting market data
- G06Q 30/0202: Market predictions or forecasting for commercial activities
- Y04S 10/50: Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- Y04S: SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS

## Abstract

A system and method for forecasting sales is presented. A method might begin by receiving a request to produce a demand forecast for a stock keeping unit (SKU). Then, the SKU is placed in one or more clusters. A cluster seasonality profile is calculated for each of the one or more clusters. An item seasonality profile is calculated for the SKU. Then the demand forecast for the SKU is generated. The demand forecast is adjusted using the cluster seasonality profile for each of the one or more clusters and the item seasonality profile for the SKU. Then inventory can be ordered based on the adjusted demand forecast. Other embodiments are also disclosed herein.

## Claims

### Claim 1

A method comprising:
receiving, at a processing module from a computer network adapter via a computer system BUS, a request to produce a demand forecast for a stock keeping unit (SKU) from multiple sources;
clustering, using the processing module, the SKU with one or more additional SKUs in one or more clusters of SKUs based on (1) item categories associated with the SKU and the one or more additional SKUs and (2) semantic text information in a description for the SKU and the one or more additional SKUs;
for each cluster of SKUs of the one or more clusters of SKUs, calculating, in real time using the processing module and a first set of rules, a cluster seasonality profile for each cluster, wherein the first set of rules comprise computing instructions stored on one or more non-transitory storage modules;
storing the cluster seasonality profile for the cluster in the one or more non-transitory storage modules via the computer system BUS;
accessing the one or more non-transitory storage modules to calculate, in real time using the processing module and a second set of rules, an item seasonality profile for the SKU, wherein the second set of rules comprise computing instructions stored on the one or more non-transitory storage modules;
generating, in real time using the processing module and a third set of rules, the demand forecast for the SKU, wherein the third set of rules comprise computing instructions stored on the one or more non-transitory storage modules;
adjusting, in real time using the processing module, the demand forecast for the SKU using (1) the cluster seasonality profile for each cluster of SKUs of the one or more clusters of SKUs and (2) the item seasonality profile for the SKU;
ordering inventory for the SKU based on the demand forecast for the SKU, as adjusted, by transmitting the demand forecast from the processing module over the computer system BUS to the computer network adapter and over a computer network to an inventory system; and
in response to ordering the inventory, receiving the inventory at a warehouse or a brick and mortar store.

### Claim 2 (depends on 1)

The method of claim 1, wherein:
the first set of rules comprises:
a mixed effect model, the mixed-effect model using an equation Y=Xβ+Zμ+ε, where Y is a known vector of historical sales data of the SKU and the one or more additional SKUs in a cluster of SKUs of the one or more clusters of SKUs, X is a known design matrix relating β to Y, Z is a known design matrix relating Y to μ, β is a coefficient representing a seasonality of the cluster of SKUs of the one or more clusters of SKUs, μ is a coefficient representing a seasonality of the SKU, and ε is an error term.

### Claim 3 (depends on 2)

The method of claim 2, wherein:
the β coefficient represents a weighting for sales data for the cluster over a one week period of time; and
the μ coefficient represents a weighting for the historical sales data for the SKU over the one week period of time.

### Claim 4 (depends on 2)

The method of claim 2, wherein:
the X matrix is a matrix of two different clustering methods; and
the β coefficient represents a seasonality of two or more clusters, calculated using an equation β=(β1β2)T, where β1 is a seasonality of a first cluster and β2 is a seasonality of a second cluster.

### Claim 5 (depends on 1)

The method of claim 1, wherein:
generating, in real time using the processing module and the third set of rules, the demand forecast for the SKU comprises using a moving average technique to estimate the demand forecast for the SKU.

### Claim 6 (depends on 1)

The method of claim 1, wherein:
calculating, in real time using the processing module and the second set of rules, the item seasonality profile for the SKU comprises:
using a mixed-effect model to calculate the item seasonality profile for the SKU.

### Claim 7 (depends on 1)

The method of claim 1, wherein:
the first set of rules comprises:
a mixed effect model, the mixed-effect model using an equation Y=Xβ+Zμ+ε, where Y is a known vector of historical sales data of the SKU and the one or more additional SKUs in a cluster of SKUs of the one or more clusters of SKUs, X is a known design matrix relating β to Y, Z is a known design matrix relating Y to μ, β is a coefficient representing a seasonality of the cluster of SKUs of the one or more clusters of SKUs, μ is a coefficient representing a seasonality of the SKU, and ε is an error term;
the X matrix is a matrix of two different clustering methods;
the β coefficient represents a seasonality of two or more clusters, calculated using an equation β=(β1β2)T, where β1 is a seasonality of a first cluster and β2 is a seasonality of a second cluster;
generating, in real time using the processing module and the third set of rules, the demand forecast for the SKU comprises using a moving average technique to estimate the demand forecast for the SKU; and
calculating, in real time using the processing module and the second set of rules, the item seasonality profile for the SKU comprises using a mixed-effect model to calculate the item seasonality profile for the SKU.

### Claim 8

A system comprising:
a user input device;
a display device;
one or more processing modules; and
one or more non-transitory storage modules storing computing instructions configured to run on the one or more processing modules and perform acts of:
receiving, from a computer network adapter via a computer system BUS, a request to produce a demand forecast for a stock keeping unit (SKU) from multiple sources;
clustering the SKU with one or more additional SKUs in one or more clusters of SKUs based on (1) item categories associated with the SKU and the one or more additional SKUs and (2) semantic text information in a description for the SKU and the one or more additional SKUs;
for each cluster of SKUs of the one or more clusters of SKUs, calculating, in real time using a first set of rules, a cluster seasonality profile for each cluster, wherein the first set of rules comprise computer implemented instructions stored on the one or more non-transitory storage modules;
storing the cluster seasonality profile for the cluster in the one or more non-transitory storage modules via the computer system BUS;
accessing the one or more non-transitory storage modules to calculate, in real time using a second set of rules, an item seasonality profile for the SKU, wherein the second set of rules comprise computer implemented instructions stored on the one or more non-transitory storage modules;
generating, in real time using a third set of rules, the demand forecast for the SKU, wherein the third set of rules comprise computer implemented instructions stored on the one or more non-transitory storage modules;
adjusting, in real time, the demand forecast for the SKU using (1) the cluster seasonality profile for each cluster of SKUs of the one or more clusters of SKUs and (2) the item seasonality profile for the SKU;
ordering inventory based on the demand forecast for the SKU, as adjusted, by transmitting the demand forecast from the one or more processing modules over the computer system BUS to the computer network adapter and over a computer network to an inventory system; and
in response to ordering the inventory, receiving the inventory at a warehouse or a brick and mortar store.

### Claim 9 (depends on 8)

The system of claim 8, wherein:
the first set of rules comprises:
a mixed effect model, the mixed-effect model using an equation Y=Xβ+Zμ+ε, where Y is a known vector of historical sales data of the SKU and the one or more additional SKUs in a cluster of SKUs of the one or more clusters of SKUs, X is a known design matrix relating β to Y, Z is a known design matrix relating Y to μ, β is a coefficient representing a seasonality of the cluster of SKUs of the one or more clusters of SKUs, μ is a coefficient representing a seasonality of the SKU, and ε is an error term.

### Claim 10 (depends on 9)

The system of claim 9, wherein:
the β coefficient represents a weighting for sales data for the cluster over a one week period of time; and
the μ coefficient represents a weighting for the historical sales data for the SKU over the one week period of time.

### Claim 11 (depends on 9)

The system of claim 9, wherein:
the X matrix is a matrix of two different clustering methods; and
the β coefficient represents a seasonality of two or more clusters, calculated using an equation β=(β1β2)T, where β1 is a seasonality of a first cluster and β2 is a seasonality of a second cluster.

### Claim 12 (depends on 8)

The system of claim 8, wherein:
generating, in real time using the third set of rules, the demand forecast for the SKU comprises using a moving average technique to estimate the demand forecast for the SKU.

### Claim 13 (depends on 8)

The system of claim 8, wherein:
calculating, in real time using the second set of rules, the item seasonality profile for the SKU comprises:
using a mixed-effect model to calculate the item seasonality profile for the SKU.

### Claim 14 (depends on 8)

The system of claim 8, wherein:
the first set of rules comprises:
a mixed effect model, the mixed-effect model using an equation Y=Xβ+Zμ+ε, where Y is a known vector of historical sales data of the SKU and the one or more additional SKUs in a cluster of SKUs of the one or more clusters of SKUs, X is a known design matrix relating β to Y, Z is a known design matrix relating Y to μ, β is a coefficient representing a seasonality of the cluster of SKUs of the one or more clusters of SKUs, μ is a coefficient representing a seasonality of the SKU, and ε is an error term;
the X matrix is a matrix of two different clustering methods;
the β coefficient represents a seasonality of two or more clusters, calculated using an equation β=(β1β2)T, where β1 is a seasonality of a first cluster and β2 is a seasonality of a second cluster;
generating, in real time using the third set of rules, the demand forecast for the SKU comprises using a moving average technique to estimate the demand forecast for the SKU; and
calculating, in real time using the second set of rules, the item seasonality profile for the SKU comprises using a mixed-effect model to calculate the item seasonality profile for the SKU.

### Claim 15

At least one non-transitory memory storage module having computer instructions stored thereon executable by one or more processing modules to:
receive, from a computer network adapter via a computer system BUS a request to produce a demand forecast for a stock keeping unit (SKU) from multiple sources;
cluster the SKU with one or more additional SKUs in one or more clusters of SKUs based on (1) item categories associated with the SKU and the one or more additional SKUs and (2) semantic text information in a description for the SKU and the one or more additional SKUs;
for each cluster of SKUs of the one or more clusters of SKUs, calculate, in real time using a first set of rules, a cluster seasonality profile for each cluster, wherein the first set of rules comprise computing instructions stored on the at least one non-transitory memory storage module;
store the cluster seasonality profile for the cluster in the at least one non-transitory memory storage module via the computer system BUS;
access the at least one non-transitory memory storage module to calculate, in real time using a second set of rules, an item seasonality profile for the SKU, wherein the second set of rules comprise computing instructions stored on the at least one non-transitory memory storage module;
generate, in real time using a third set of rules, the demand forecast for the SKU, wherein the third set of rules comprise computing instructions stored on the at least one non-transitory memory storage module;
adjust, in real time, the demand forecast for the SKU using (1) the cluster seasonality profile for each cluster of SKUs of the one or more clusters of SKUs and (2) the item seasonality profile for the SKU;
order inventory based on the demand forecast for the SKU, as adjusted, by transmitting the demand forecast from the one or more processing modules over the computer system BUS to a computer network adapter and over the computer network to an inventory system; and
in response to ordering the inventory, receive the inventory at a warehouse or a brick and mortar store.

### Claim 16 (depends on 15)

The at least one non-transitory memory storage module of claim 15, wherein:
the first set of rules comprises:
a mixed effect model, the mixed-effect model using an equation Y=Xβ+Zμ+ε, where Y is a known vector of historical sales data of the SKU and the one or more additional SKUs in a cluster of SKUs of the one or more clusters of SKUs, X is a known design matrix relating β to Y, Z is a known design matrix relating Y to μ, β is a coefficient representing a seasonality of the cluster of SKUs of the one or more clusters of SKUs, μ is a coefficient representing a seasonality of the SKU, and ε is an error term.

### Claim 17 (depends on 16)

The at least one non-transitory memory storage module of claim 16, wherein:
the β coefficient represents a weighting for sales data for the cluster over a one week period of time; and
the μ coefficient represents a weighting for the historical sales data for the SKU over the one week period of time.

### Claim 18 (depends on 16)

The at least one non-transitory memory storage module of claim 16, wherein:
the X matrix is a matrix of two different clustering methods; and
the β coefficient represents a seasonality of two or more clusters, calculated using an equation β=(β1β2)T, where β1 is a seasonality of a first cluster and β2 is a seasonality of a second cluster.

### Claim 19 (depends on 15)

The at least one non-transitory memory storage module of claim 15, wherein:
generate, in real time using the third set of rules, the demand forecast for the SKU comprises use a moving average technique to estimate the demand forecast for the SKU.

### Claim 20 (depends on 15)

The at least one non-transitory memory storage module of claim 15, wherein:
calculate, in real time using the second set of rules, the item seasonality profile for the SKU comprises:
use a mixed-effect model to calculate the item seasonality profile for the SKU.

### Claim 21 (depends on 15)

The at least one non-transitory memory storage module of claim 15, wherein:
the first set of rules comprises:
a mixed effect model, the mixed-effect model using an equation Y=Xβ+Zμ+ε, where Y is a known vector of historical sales data of the SKU and the one or more additional SKUs in a cluster of SKUs of the one or more clusters of SKUs, X is a known design matrix relating β to Y, Z is a known design matrix relating Y to μ, β is a coefficient representing a seasonality of the cluster of SKUs of the one or more clusters of SKUs, μ is a coefficient representing a seasonality of the SKU, and ε is an error term;
the X matrix is a matrix of two different clustering methods;
the β coefficient represents a seasonality of two or more clusters, calculated using an equation β=(β1β2)T, where β1 is a seasonality of a first cluster and β2 is a seasonality of a second cluster;
generate, in real time using the third set of rules, the demand forecast for the SKU comprises use a moving average technique to estimate the demand forecast for the SKU; and
calculate, in real time using the second set of rules, the item seasonality profile for the SKU comprises use a mixed-effect model to calculate the item seasonality profile for the SKU.
