Product distribution system and method
Product distribution including receiving external conditions data indicative of environmental conditions concerning distribution of products from a point of sale (POS), determining a POS product distribution model for the POS, including first and second product distribution models operable to determine distribution of the first and second products to the POS based on external conditions data, determining, based on application of the external conditions data to the POS product distribution model, a product distribution to the POS, including application of the external conditions data to the first and second product distribution model to determine distributions of the first and second products to the POS, and providing supply instructions for the POS, including first and second product supply instructions to cause the product supply network to provide the distribution of the first and second product to the POS.
1 . A product distribution system comprising:
a distribution database storing distribution data comprising:
a first product distribution model configured to determine a distribution of a first product to a point of sale based on external conditions data; and
a second product distribution model configured to determine a distribution of a second product to a point of sale based on external conditions data; and
non-transitory computer readable storage medium comprising program instructions stored thereon that are executable by a processor to perform the following operations for product distribution:
determining, by a distribution engine, historical external conditions data indicative of environmental conditions impacting product distribution;
determining, by the distribution engine, first historical external conditions data comprising a first subset of the historical external conditions data that is indicative of one or more environmental conditions affecting distribution of the first product to one or more points of sale;
determining, by the distribution engine, second historical external conditions data comprising a second subset of the historical external conditions data that is indicative of one or more environmental conditions affecting distribution of the second product to one or more points of sale;
determining, by the distribution engine, distribution performance data indicative of distribution of products to one or more points of sale and disposition of the first and second products by the one or more points of sale;
training, by the distribution engine based on the first historical external conditions data and the distribution performance data, the first product distribution model, the first product distribution model associated with a first set of external condition data types identified as relevant to distribution of the first product during training;
training, by the distribution engine based on the second historical external conditions data and the distribution performance data, the second product distribution model, the second product distribution model associated with a second set of external condition data types identified as relevant to distribution of the second product during training;
receiving, by the distribution engine, external conditions data indicative of one or more environmental conditions affecting distribution of products to a first point of sale;
determining, by the distribution engine, a first point of sale (POS) product distribution model for the first point of sale, the first POS product distribution model comprising:
the first product distribution model configured to determine a distribution of the first product to the first point of sale based on external conditions data; and
the second product distribution model configured to determine a distribution of the second product to the first point of sale based on external conditions data,
the determining of the first POS product distribution model comprising:
determining characteristics of the first point of sale;
determining characteristics of the first product distribution model;
determining that the characteristics of the first product distribution model match characteristics of the first point of sale;
including, based on determining that the characteristics of the first product distribution model match characteristics of the first point of sale, the first product distribution model in the first POS product distribution model;
determining characteristics of the second product distribution model;
determining that the characteristics of the second product distribution model match characteristics of the first point of sale; and
including, based on determining that the characteristics of the second product distribution model match characteristics of the first point of sale, the second product distribution model in the first POS product distribution model;
extracting, by the distribution engine based on the first and second sets of external condition data types, POS-product external conditions comprising:
a first subset of the external conditions data that corresponds to the first point of sale and the first product; and
a second subset of the external conditions data that corresponds to the first point of sale and the second product;
determining, by the distribution engine based on application of the POS-product external conditions data to the first POS product distribution model, a product distribution to the first point of sale, comprising:
determining, by the distribution engine based on application of the first subset of the external conditions data to the first product distribution model, a distribution of the first product to the first point of sale; and
determining, by the distribution engine based on application of the second subset of the external conditions data to the second product distribution model, a distribution of the second product to the first point of sale,
the product distribution to the first point of sale comprising the distribution of the first product to the first point of sale and the distribution of the second product to the first point of sale; and
providing, by the distribution engine to a product supply network, supply instructions for the first point of sale, the supply instructions for the first point of sale comprising:
first product supply instructions configured to cause the product supply network to provide the distribution of the first product to the first point of sale; and
second product supply instructions configured to cause the product supply network to provide the distribution of the second product to the first point of sale,
the product supply network configured to:
distribute, responsive to the first product supply instructions, the first product to the first point of sale; and
distribute, responsive to the second product supply instructions, the second product to the first point of sale;
obtaining, by the distribution engine, updated distribution performance data indicative of disposition of the first and second products by the first point of sale, the updated distribution performance data comprising:
first updated distribution performance data indicative of distribution and disposition of the first product by the first point of sale following the first product supply instructions; and
second updated distribution performance data indicative of distribution and disposition of the second product by the first point of sale following the second product supply instructions;
retraining, by the distribution engine based on the updated distribution performance data, the first product distribution model to generate an updated first product distribution model configured to determine a distribution of the first product to a point of sale based on external conditions data;
retraining, by the distribution engine based on the updated distribution performance data, the second product distribution model to generate an updated second product distribution model configured to determine a distribution of the second product to a point of sale based on external conditions data; and
determining, by the distribution engine, updated product supply instructions for distributing the first product and second product to the first point of sale,
the product supply network configured to distribute, responsive to the updated product supply instructions, the first product and the second product to the first point of sale.
2 . The system of claim 1 , the operations further comprising:
receiving, by the distribution engine, second external conditions data indicative of one or more environmental conditions affecting distribution of products to a second point of sale;
determining, by the distribution engine, a second POS product distribution model for the second point of sale, the second POS product distribution model comprising:
a third product distribution model configured to determine a distribution of the first product to the second point of sale based on external conditions data; and
a fourth product distribution model configured to determine a distribution of the second product to the second point of sale based on external conditions data;
determining, by the distribution engine based on application of the second external conditions data to the second POS product distribution model, a product distribution to the second point of sale, comprising:
determining, by the distribution engine based on application of the second external conditions data to the third product distribution model, a distribution of the first product to the second point of sale,
determining, by the distribution engine based on application of the second external conditions data to the fourth product distribution model, a distribution of the second product to the second point of sale,
the product distribution to the second point of sale comprising the distribution of the first product to the second point of sale and the distribution of the second product to the second point of sale; and
providing, by the distribution engine to the product supply network, supply instructions for the second point of sale, the supply instructions for the second point of sale comprising:
third product supply instructions configured to cause the product supply network to provide the distribution of the first product to the second point of sale; and
fourth product supply instructions configured to cause the product supply network to provide the distribution of the second product to the second point of sale.
3 . The system of claim 1 , the operations further comprising:
determining, by the distribution engine, updated historical external conditions data comprising:
first updated conditions affecting the distribution of the first product to the first point of sale responsive to the first product supply instructions; and
second updated conditions affecting the distribution of the second product to the first point of sale responsive to the second product supply instructions,
the retraining of the first product distribution model to generate the updated first product distribution model being further based on the updated historical external conditions data, and
the retraining of the second product distribution model to generate the updated second product distribution model being further based on the updated historical external conditions data.
4 . The system of claim 3 , the operations further comprising dynamically adjusting distribution instructions based on external condition updates comprising:
receiving, by the distribution engine, updated external conditions data indicative of one or more environmental conditions affecting distribution of products to the first point of sale;
determining, by the distribution engine, an updated POS product distribution model for the first point of sale, the updated POS product distribution model comprising:
the updated first product distribution model; and
the updated second product distribution model;
determining, by the distribution engine based on application of the updated external conditions data to the updated POS product distribution model, an updated product distribution to the first point of sale, comprising:
determining, by the distribution engine based on application of the updated external conditions data to the updated first product distribution model, an updated distribution of the first product to the first point of sale,
determining, by the distribution engine based on application of the updated external conditions data to the updated second product distribution model, an updated distribution of the second product to the first point of sale,
the updated product distribution to the first point of sale comprising the updated distribution of the first product to the first point of sale and the updated distribution of the second product to the first point of sale; and
providing, by the distribution engine to the product supply network, updated supply instructions for the first point of sale, the updated supply instructions for the first point of sale comprising:
third product supply instructions configured to cause the product supply network to provide the updated distribution of the first product to the first point of sale; and
fourth product supply instructions configured to cause the product supply network to provide the updated distribution of the second product to the first point of sale.
5 . A method of product distribution, the method comprising:
determining, by a distribution engine, historical external conditions data indicative of environmental conditions impacting product distribution;
determining, by the distribution engine, first historical external conditions data comprising a first subset of the historical external conditions data that is indicative of one or more environmental conditions affecting distribution of the first product to one or more points of sale;
determining, by the distribution engine, second historical external conditions data comprising a second subset of the historical external conditions data that is indicative of one or more environmental conditions affecting distribution of the second product to one or more points of sale;
determining, by the distribution engine, distribution performance data indicative of distribution of products to one or more points of sale and disposition of the first and second products by the one or more points of sale;
training, by the distribution engine based on the first historical external conditions data and the distribution performance data, a first product distribution model, the first product distribution model associated with a first set of external condition data types identified as relevant to distribution of the first product during training;
training, by the distribution engine based on the second historical external conditions data and the distribution performance data, a second product distribution model, the second product distribution model associated with a second set of external condition data types identified as relevant to distribution of the second product during training;
receiving, by the distribution engine, external conditions data indicative of one or more environmental conditions affecting distribution of products to a first point of sale;
determining, by the distribution engine, a first point of sale (POS) product distribution model for the first point of sale, the first POS product distribution model comprising:
the first product distribution model configured to determine a distribution of the first product to the first point of sale based on external conditions data; and
the second product distribution model configured to determine a distribution of the second product to the first point of sale based on external conditions data,
the determining of the first POS product distribution model comprising:
determining characteristics of the first point of sale;
determining characteristics of the first product distribution model;
determining that the characteristics of the first product distribution model match characteristics of the first point of sale;
including, based on determining that the characteristics of the first product distribution model match characteristics of the first point of sale, the first product distribution model in the first POS product distribution model;
determining characteristics of the second product distribution model;
determining that the characteristics of the second product distribution model match characteristics of the first point of sale; and
including, based on determining that the characteristics of the second product distribution model match characteristics of the first point of sale, the second product distribution model in the first POS product distribution model;
extracting, by the distribution engine based on the first and second sets of external condition data types, POS-product external conditions comprising:
a first subset of the external conditions data that corresponds to the first point of sale and the first product; and
a second subset of the external conditions data that corresponds to the first point of sale and the second product;
determining, by the distribution engine based on application of the POS-product external conditions data to the first POS product distribution model, a product distribution to the first point of sale, comprising:
determining, by the distribution engine based on application of the first subset of the external conditions data to the first product distribution model, a distribution of the first product to the first point of sale; and
determining, by the distribution engine based on application of the second subset of the external conditions data to the second product distribution model, a distribution of the second product to the first point of sale,
the product distribution to the first point of sale comprising the distribution of the first product to the first point of sale and the distribution of the second product to the first point of sale; and
providing, by the distribution engine to a product supply network, supply instructions for the first point of sale, the supply instructions for the first point of sale comprising:
first product supply instructions configured to cause the product supply network to provide the distribution of the first product to the first point of sale; and
second product supply instructions configured to cause the product supply network to provide the distribution of the second product to the first point of sale,
the product supply network configured to:
distribute, responsive to the first product supply instructions, the first product to the first point of sale; and
distribute, responsive to the second product supply instructions, the second product to the first point of sale;
obtaining, by the distribution engine, updated distribution performance data indicative of disposition of the first and second products by the first point of sale, the updated distribution performance data comprising:
first updated distribution performance data indicative of distribution and disposition of the first product by the first point of sale following the first product supply instructions; and
second updated distribution performance data indicative of distribution and disposition of the second product by the first point of sale following the second product supply instructions;
retraining, by the distribution engine based on the updated distribution performance data, the first product distribution model to generate an updated first product distribution model configured to determine a distribution of the first product to a point of sale based on external conditions data;
retraining, by the distribution engine based on the updated distribution performance data, the second product distribution model to generate an updated second product distribution model configured to determine a distribution of the second product to a point of sale based on external conditions data; and
determining, by the distribution engine, updated product supply instructions for distributing the first product and second product to the first point of sale,
the product supply network configured to distribute, responsive to the updated product supply instructions, the first product and the second product to the first point of sale.
6 . The method of claim 5 , further comprising:
distributing, by the product supply network responsive to the first product supply instructions, the first product to the first point of sale;
distributing, by the product supply network responsive to the second product supply instructions, the second product to the first point of sale; and
distributing, by the product supply network responsive to the updated product supply instructions, the first product and the second product to the first point of sale.
7 . The method of claim 5 , further comprising:
receiving, by the distribution engine, second external conditions data indicative of one or more environmental conditions affecting distribution of products to a second point of sale;
determining, by the distribution engine, a second POS product distribution model for the second point of sale, the second POS product distribution model comprising:
a third product distribution model configured to determine a distribution of the first product to the second point of sale based on external conditions data; and
a fourth product distribution model configured to determine a distribution of the second product to the second point of sale based on external conditions data;
determining, by the distribution engine based on application of the second external conditions data to the second POS product distribution model, a product distribution to the second point of sale, comprising:
determining, by the distribution engine based on application of the second external conditions data to the third product distribution model, a distribution of the first product to the second point of sale,
determining, by the distribution engine based on application of the second external conditions data to the fourth product distribution model, a distribution of the second product to the second point of sale,
the product distribution to the second point of sale comprising the distribution of the first product to the second point of sale and the distribution of the second product to the second point of sale; and
providing, by the distribution engine to the product supply network, supply instructions for the second point of sale, the supply instructions for the second point of sale comprising:
third product supply instructions configured to cause the product supply network to provide the distribution of the first product to the second point of sale; and
fourth product supply instructions configured to cause the product supply network to provide the distribution of the second product to the second point of sale.
8 . The method of claim 5 , further comprising:
determining, by the distribution engine, updated historical external conditions data comprising:
first updated conditions affecting the distribution of the first product to the first point of sale responsive to the first product supply instructions; and
second updated conditions affecting the distribution of the second product to the first point of sale responsive to the second product supply instructions,
the retraining of the first product distribution model to generate the updated first product distribution model being further based on the updated historical external conditions data, and
the retraining of the second product distribution model to generate the updated second product distribution model being further based on the updated historical external conditions data.
9 . The method of claim 8 , further comprising dynamically adjusting distribution instructions based on external condition updates comprising:
receiving, by the distribution engine, updated external conditions data indicative of one or more environmental conditions affecting distribution of products to the first point of sale;
determining, by the distribution engine, an updated POS product distribution model for the first point of sale, the updated POS product distribution model comprising:
the updated first product distribution model; and
the updated second product distribution model;
determining, by the distribution engine based on application of the second external conditions data to the updated POS product distribution model, an updated product distribution to the first point of sale, comprising:
determining, by the distribution engine based on application of the updated external conditions data to the updated first product distribution model, an updated distribution of the first product to the first point of sale,
determining, by the distribution engine based on application of the updated external conditions data to the updated second product distribution model, an updated distribution of the second product to the first point of sale,
the updated product distribution to the first point of sale comprising the updated distribution of the first product to the first point of sale and the updated distribution of the second product to the first point of sale; and
providing, by the distribution engine to the product supply network, updated supply instructions for the first point of sale, the updated supply instructions for the first point of sale comprising:
third product supply instructions configured to cause the product supply network to provide the updated distribution of the first product to the first point of sale; and
fourth product supply instructions configured to cause the product supply network to provide the updated distribution of the second product to the first point of sale.
10 . A non-transitory computer readable storage medium comprising program instructions stored thereon that are executable by a processor to perform the following operations for product distribution:
determining, by a distribution engine, historical external conditions data indicative of environmental conditions impacting product distribution;
determining, by the distribution engine, first historical external conditions data comprising a first subset of the historical external conditions data that is indicative of one or more environmental conditions affecting distribution of the first product to one or more points of sale;
determining, by the distribution engine, second historical external conditions data comprising a second subset of the historical external conditions data that is indicative of one or more environmental conditions affecting distribution of the second product to one or more points of sale;
determining, by the distribution engine, distribution performance data indicative of distribution of products to one or more points of sale and disposition of the first and second products by the one or more points of sale;
training, by the distribution engine based on the first historical external conditions data and the distribution performance data, a first product distribution model, the first product distribution model associated with a first set of external condition data types identified as relevant to distribution of the first product during training;
training, by the distribution engine based on the second historical external conditions data and the distribution performance data, a second product distribution model, the second product distribution model associated with a second set of external condition data types identified as relevant to distribution of the second product during training;
receiving, by the distribution engine, external conditions data indicative of one or more environmental conditions affecting distribution of products to a first point of sale;
determining, by the distribution engine, a first point of sale (POS) product distribution model for the first point of sale, the first POS product distribution model comprising:
the first product distribution model configured to determine a distribution of the first product to the first point of sale based on external conditions data; and
the second product distribution model configured to determine a distribution of the second product to the first point of sale based on external conditions data,
the determining of the first POS product distribution model comprising:
determining characteristics of the first point of sale;
determining characteristics of the first product distribution model;
determining that the characteristics of the first product distribution model match characteristics of the first point of sale;
including, based on determining that the characteristics of the first product distribution model match characteristics of the first point of sale, the first product distribution model in the first POS product distribution model;
determining characteristics of the second product distribution model;
determining that the characteristics of the second product distribution model match characteristics of the first point of sale; and
including, based on determining that the characteristics of the second product distribution model match characteristics of the first point of sale, the second product distribution model in the first POS product distribution model;
extracting, by the distribution engine based on the first and second sets of external condition data types, POS-product external conditions comprising:
a first subset of the external conditions data that corresponds to the first point of sale and the first product; and
a second subset of the external conditions data that corresponds to the first point of sale and the second product;
determining, by the distribution engine based on application of the POS-product external conditions data to the first POS product distribution model, a product distribution to the first point of sale, comprising:
determining, by the distribution engine based on application of the first subset of the external conditions data to the first product distribution model, a distribution of the first product to the first point of sale,
determining, by the distribution engine based on application of the second subset of the external conditions data to the second product distribution model, a distribution of the second product to the first point of sale,
the product distribution to the first point of sale comprising the distribution of the first product to the first point of sale and the distribution of the second product to the first point of sale; and
providing, by the distribution engine to a product supply network, supply instructions for the first point of sale, the supply instructions for the first point of sale comprising:
first product supply instructions configured to cause the product supply network to provide the distribution of the first product to the first point of sale; and
second product supply instructions configured to cause the product supply network to provide the distribution of the second product to the first point of sale,
the product supply network configured to:
distribute, responsive to the first product supply instructions, the first product to the first point of sale; and
distribute, responsive to the second product supply instructions, the second product to the first point of sale;
obtaining, by the distribution engine, updated distribution performance data indicative of disposition of the first and second products by the first point of sale, the updated distribution performance data comprising:
first updated distribution performance data indicative of distribution and disposition of the first product by the first point of sale following the first product supply instructions; and
second updated distribution performance data indicative of distribution and disposition of the second product by the first point of sale following the second product supply instructions;
retraining, by the distribution engine based on the updated distribution performance data, the first product distribution model to generate an updated first product distribution model configured to determine a distribution of the first product to a point of sale based on external conditions data;
retraining, by the distribution engine based on the updated distribution performance data, the second product distribution model to generate an updated second product distribution model configured to determine a distribution of the second product to a point of sale based on external conditions data; and
determining, by the distribution engine, updated product supply instructions for distributing the first product and second product to the first point of sale,
the product supply network configured to distribute, responsive to the updated product supply instructions, the first product and the second product to the first point of sale.
11 . The medium of claim 10 , the operations further comprising:
distributing, by the product supply network responsive to the first product supply instructions, the first product to the first point of sale;
distributing, by the product supply network responsive to the second product supply instructions, the second product to the first point of sale; and
distributing, by the product supply network responsive to the updated product supply instructions, the first product and the second product to the first point of sale.
12 . The medium of claim 10 , the operations further comprising:
receiving, by the distribution engine, second external conditions data indicative of one or more environmental conditions affecting distribution of products to a second point of sale;
determining, by the distribution engine, a second POS product distribution model for the second point of sale, the second POS product distribution model comprising:
a third product distribution model configured to determine a distribution of the first product to the second point of sale based on external conditions data; and
a fourth product distribution model configured to determine a distribution of the second product to the second point of sale based on external conditions data;
determining, by the distribution engine based on application of the second external conditions data to the second POS product distribution model, a product distribution to the second point of sale, comprising:
determining, by the distribution engine based on application of the second external conditions data to the third product distribution model, a distribution of the first product to the second point of sale,
determining, by the distribution engine based on application of the second external conditions data to the fourth product distribution model, a distribution of the second product to the second point of sale,
the product distribution to the second point of sale comprising the distribution of the first product to the second point of sale and the distribution of the second product to the second point of sale; and
providing, by the distribution engine to the product supply network, supply instructions for the second point of sale, the supply instructions for the second point of sale comprising:
third product supply instructions configured to cause the product supply network to provide the distribution of the first product to the second point of sale; and
fourth product supply instructions configured to cause the product supply network to provide the distribution of the second product to the second point of sale.
13 . The medium of claim 10 , the operations further comprising:
determining, by the distribution engine, updated historical external conditions data comprising:
first updated conditions affecting the distribution of the first product to the first point of sale responsive to the first product supply instructions; and
second updated conditions affecting the distribution of the second product to the first point of sale responsive to the second product supply instructions,
the retraining of the first product distribution model to generate the updated first product distribution model being further based on the updated historical external conditions data, and
the retraining of the second product distribution model to generate the updated second product distribution model being further based on the updated historical external conditions data.
14 . The medium of claim 13 , the operations further comprising dynamically adjusting distribution instructions based on external condition updates comprising:
receiving, by the distribution engine, updated external conditions data indicative of one or more environmental conditions affecting distribution of products to the first point of sale;
determining, by the distribution engine, an updated POS product distribution model for the first point of sale, the updated POS product distribution model comprising:
the updated first product distribution model; and
the updated second product distribution model;
determining, by the distribution engine based on application of the updated external conditions data to the updated POS product distribution model, an updated product distribution to the first point of sale, comprising:
determining, by the distribution engine based on application of the updated external conditions data to the updated first product distribution model, an updated distribution of the first product to the first point of sale,
determining, by the distribution engine based on application of the updated external conditions data to the updated second product distribution model, an updated distribution of the second product to the first point of sale,
the updated product distribution to the first point of sale comprising the updated distribution of the first product to the first point of sale and the updated distribution of the second product to the first point of sale; and
providing, by the distribution engine to the product supply network, updated supply instructions for the first point of sale, the updated supply instructions for the first point of sale comprising:
third product supply instructions configured to cause the product supply network to provide the updated distribution of the first product to the first point of sale; and
fourth product supply instructions configured to cause the product supply network to provide the updated distribution of the second product to the first point of sale.