Patent ID: 12260359

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein may be practiced and to further enable those of skill in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.

In the view of the foregoing, there is a need of a method for determining cognitive attributes from an adjusted forecast to automatically recommend change in the adjusted forecast. The embodiments herein achieve this by proposing a method for (a) receiving at a client device associated with a bias management service, an action recommendation to mitigate or leverage from a parameter forecast, wherein the parameter forecast is a forecast of future values of a parameter associated with a factor group, (b) obtaining an adjusted forecast from the client device, wherein the adjusted forecast is a modification in the parameter forecast based on an adjustment made by the cognitive system in the parameter forecast, (c) classifying the adjusted forecast as a negative forecast bias or a positive forecast bias based on a deviation of the adjusted forecast from an actual value of a parameter associated with forecast to determine at least one bias of the cognitive system in a factor group associated with the forecast, (d) determining a set of factors that are associated with the at least one bias of the cognitive system, wherein said set of factors is a combination of factors of an external factor group and a plurality of internal factor groups, (e) generating a skill score of the cognitive system based on factor group of the bias management service using a machine learning engine, wherein the factor group used to generate the skill score is a combination of an external factor group and a plurality of internal factor groups, (f) generating a recommendation to change a value of the adjusted forecast based on the at least one bias of the cognitive system and skill score of the planner. The combination of the above methods is being referred to “bias management”. Referring now to the drawings, and more particularly toFIGS.1through8, where similar reference characters denote corresponding features in a consistent manner throughout the figures, there are shown preferred embodiments. A “use-case” in this specification is defined as an organization or enterprise that uses a bias management service. A “cognitive system” in this specification refers to a mental system comprising of interrelated items of assumptions, beliefs, ideas, and knowledge that an individual hold about anything concrete including a person, a group, an object, or, abstract thoughts, theory, information. The cognitive system may be of a planner. The planner may make adjustments in a forecast. In some embodiments, the cognitive attributes of the cognitive system may be referred to as “bias”.

FIG.1is a block diagram that illustrates a cloud computing architecture that facilitates a bias management server104as a cloud computing service to one or more client devices116A-N. The block diagram100includes one or more data sources102A-N, a bias management server104, a network114and one or more client devices116A-N. The bias management server104includes of a bias management platform106and a bias management environment108. The bias management environment108includes an external information sourcing module110and an external information database112. The cloud computing service includes bias management resources residing within a bias management environment108and the bias management resources are managed by the bias management platform106to provide bias management as a cloud computing service (hereafter referred to as a bias management service) to the one or more client devices116A-N. In some embodiments, the one or more client devices116A-N and the bias management service are associated with a use-case, a meta-data model of which is specified by a client device116. In one embodiment, the one or more client devices116A-N includes but not limited to a mobile device, a smart phone, a personal digital assistant (PDA), a notebook, a Global Positioning System (GPS) device, or any network enabled device. In an embodiment, the one or more client devices116A-N receive an action recommendation to mitigate or leverage based on a parameter forecast, wherein the parameter forecast is a forecast of future values of a parameter. In an embodiment, the parameter forecast may be at least one of a demand forecast, inventory forecast or production forecast. In some embodiments, the action recommendation may be received at the one or more client devices116A-N from the bias management server104. In an embodiment, the action recommendation may be received at the one or more client devices116A-N from an external forecast system.

In some embodiments, the bias management server104is configured to receive data from one or more data sources102A-N which is processed by the external information sourcing module110and stored in the external information database112. In an embodiment, the external information sourcing module110may process by aggregating the data obtained from one or more data sources102A-N and storing them in the external information database112in a consolidated manner. The external information database112includes information which remains same for a one or more bias management services. The bias management platform106is communicatively connected to the bias management environment108to provide the bias management service to the one or more client devices116A-N through a network114. In some embodiments, the network104is a wired network, a wireless network, or a combination of a wired network a wireless network. In some embodiments, the network104is the Internet.

In some embodiments, the external information database112includes data obtained from the one or more external sources102A-N that includes weather data, temperature, humidity, a competition data, an industry data, one or more consumer indices or macro-economic indices like Gross Domestic Product (GDP), an inflation metric or employment rate, etc. In some embodiments, the external information database112may include demographics data that includes income data of residents, population, etc. In an embodiment, data stored in the external information database112is used to train one or more machine learning models utilized later in the specification.

In an embodiment, the bias management server104may include a plurality of weather sensors that provide weather information for determining a deviation of the parameter from the actual value of the parameter.

FIG.2is a block diagram200of the bias management platform106ofFIG.1, according to some embodiments herein. The bias management platform106includes a use-case configurer module202, a service builder module204, a service consumption module206, a service manager module208and a repository210. In some embodiments, the service consumption module206is connected to the network114in order to facilitate the usage of the bias management service to the one or more client devices116A-N.

The use-case configurer module202captures a specification information of a use-case for which the bias management service to be performed. In some embodiments, the specification information includes internal data of the use-case and the meta-data model of metrics which are applicable for the use-case. In some embodiments, the use-case configurer module202enables the one or more client devices116A-N to select metrics of interest and models other bias management services available in the bias management server104to determine the infrastructure of the bias management environment108which may be required or preferred. The use-case configurer module202captures one or more possible actions from the one or more client devices116A-N and operational constraints of the use-case.

The service builder module204is configured to receive the specification information of the use-case from the use-case configure module202. The builder module204may assemble, validate and publish the bias management service to the service consumption module206for consumption of the bias management service by the one or more client devices116A-N associated with the service.

The service consumption module206is configured to allow the one or more client devices116A-N to use the bias management service. The bias management service may be utilized by a one or more cognitive systems associated with the use-case. In some embodiments, the service consumption module206may allow a user to request an update in the specification information of the use-case. The service manager module208manages the bias management service by communicating with the bias management environment108.

FIG.3is a block diagram300of the bias management environment108ofFIG.1according to some embodiments herein. The block diagram300is an exploded view of the bias management environment108. The bias management environment108includes a bias discovery and modelling module302, a bias quantification module304, a forecast skill scoring module306, a forecast adjustment recommendation module308and a bias prediction module310.

The bias discovery and modelling module302classifies the adjusted forecast as a negative forecast bias or a positive forecast bias based on a deviation of the adjusted forecast from an actual value of the parameter associated with forecast. In an embodiment, the parameter can include, but not limiting to demand, inventory, production, materials, price, sales, revenue. There are consistent differences between actual parameters and previously generated forecasts of those parameters. The positive forecast bias happens when forecast accuracy of the adjusted forecast is increased from the parameter forecast and the negative forecast bias happens when the forecast accuracy of the adjusted forecast is decreased from the parameter forecast. In some embodiments, the parameter forecast may be received from an external forecasting system. In an embodiment, the bias discovery and modelling module302may include a machine learning engine. The machine learning engine may utilize data from the repository210which may include historical data of forecasts, actual value of the parameter, cognitive system adjustments and internal and external factors. In some embodiments, the machine learning engine may include the one or more machine learning models. In an embodiment, the one or more machine learning models are interconnected with each other. The models are connected with each other in such a manner that the output of a first machine learning model becomes a feature for a second machine learning model. In an embodiment, the one or more machine learning models may include, but not limited to, advanced algorithms including but not limited to SVR, XGBoost, Random Forests, Prophet, DeepAR, LSTM/RNNs, Generative Adversarial Networks, Convolutional Neural Networks, Quantile Regressions, Bayesian Regressions, Factorization Machines, Bayesian Structural Time Series Models, Hidden Markov Models and Monte Carlo Markov Chains.

The bias quantification module304automatically determines a cognitive attribute of the cognitive system by generating a systematic pattern of the deviation of the adjusted forecast from an actual value of the parameter associated with the parameter forecast and determines a set of factors that are associated with the negative forecast bias or the positive forecast bias, wherein said set of factors is a combination of factors of an external factor group and a plurality of internal factor groups. In an embodiment, determining the one or more bias of the cognitive system includes a tracking signal, where the tracking signal detects trends in the forecast adjustment of the cognitive system. In an embodiment, determining the one or more bias of the cognitive system includes identifying at least one human attribute of the cognitive system, wherein the at least one attribute includes age, gender or a location of the cognitive system. In an embodiment, the determined cognitive attributes may include cognitive biases. In some embodiments, cognitive biases may include but not limiting to anchoring bias, availability bias, over optimism bias, over-reaction to extreme events bias.

The bias discovery and modelling module302and the bias quantification module304may be implemented as a standalone predictive model that interfaces with a digital platform or other systems. It should also be noted that in this embodiment, the bias management server104implements the bias discovery and modelling module302and the bias quantification module304, but one or more of applications may also implement either the bias discovery and modelling module302and the bias quantification module304that may work in connection with, or independently from the functionality of the bias management environment108as depicted on the bias management server104.

The forecast skill scoring module306generates a skill score of the cognitive system that corresponds to a skill factor group using a machine learning engine, wherein the skill factor group is a combination of an external factor group and a plurality of internal factor groups. In some embodiments, the internal factor groups may include a first factor group that comprises at least one of a location of consumer, a retail store, a product, a price-pack of product, a placement of product, a range, a visibility, a coverage, a frequency, a distribution reach, a channel, an event type or an inventive, a second factor group that comprises at least one of a promotion channel, a location of a promotion activity, a product for promotion, a time period (calendar) for a promotion activity, a promotion type, a price for a promotion activity, a discount for a promotion activity or a creative for a promotion activity and a third factor group that comprises at least one of a location of inventory, a store of inventory, a type of inventory, a source location of inventory, a transfer of inventory, a new quantity for the inventory, a safety stock of inventory for a product, on hand levels of inventory or a reorder quantity of inventory, an allocation quantity of inventory.

In some embodiments, forecast skill scoring module306may utilize the machine learning engine. The machine learning engine may comprise one or more machine learning models or a machine learning model based on a tracking signal. The tracking signal detects trends in the forecast adjustment of the planner. In an embodiment, the machine learning engine may utilize data from the repository210for training one or more machine learning models. In some embodiments, the machine learning engine may include the one or more machine learning models. In an embodiment, the one or more machine learning models are interconnected with each other. The models are connected with each other in such a manner that the output of a first machine learning model becomes a feature for a second machine learning model. In an embodiment, the one or more machine learning models may include advanced algorithms including but not limited to SVR, XGBoost, Random Forests, Prophet, DeepAR, LSTM/RNNs, Generative Adversarial Networks, Convolutional Neural Networks, Quantile Regressions, Bayesian Regressions, Factorization Machines, Bayesian Structural Time Series Models, Hidden Markov Models and Monte Carlo Markov Chains.

In some embodiments, one or more human cognitive systems may have different skills that impact the forecast adjustment made by the one or more cognitive systems. Some cognitive systems will be better than other cognitive systems in terms of accuracy of the adjusted forecast with respect to actual value of the parameter. In an embodiment, the skill score is predicted for one or more human cognitive systems in terms of a frequency of negative forecast bias and positive forecast bias using the machine learning engine. In an embodiment, the one or more cognitive systems may be segregated based on a combination of at least one of the skill score of the cognitive system and the at least one bias of the cognitive system.

The forecast adjustment recommendation module308generates a recommendation of improved adjusted forecast based on the cognitive attribute of the cognitive system and skill score of the cognitive system, wherein the improved adjusted forecast comprises an updated value of the adjusted forecast.

The bias prediction module310predicts a future adjusted forecast based on the skill score and the bias of the cognitive system in the factor group. In an embodiment, the bias prediction module310predicts a forecast adjustment that a cognitive system will do to a parameter forecast under different conditions and also as a function of the individual characteristics of the cognitive system.

In an embodiment, the bias management environment108may include a machine learning based forecasting engine that continuously learns from forecast error scenarios by automatically addressed the required changes to the machine learning based forecasting engine.

FIG.4is a block diagram of the repository210ofFIG.2according to some embodiments herein. The repository210includes an internal information database402and a forecast adjustment database404. The internal information database402includes the data which is internal to the use-case that has been specified earlier. In some embodiments, the internal information database402may include operation data of the use-case. The operation data of the use-case may include sales operations, customer and product data, channels data, distribution and location, orders, inventory operations, production operations, POS or sales, promotions and marketing events which is specific to the use-case.

In some embodiments, the internal information database402includes planning data of the user case. The planning data of the use-case may include sales plans and forecasts, financial plans and forecasts, price plans, marketing plans, promotion plans, demand plans, inventory plans, production plans.

The forecast adjustment database404stores forecast adjustments which are made by a cognitive system on the parameter forecast. In an embodiment, the forecast adjustment database404may include human organization decisions and forecast corrections that are collected from various sources within the organization. In an embodiment, the repository210may include a one or more forecast metrics associated for a parameter. The one or more forecast metrics may include, but not limiting to, a percentage by which the adjusted forecast includes an error, whether the adjusted forecast has been consistently in error over several consecutive periods, and whether a magnitude of the adjusted forecast error is seen over time and is sufficient to warrant immediate attention for the product with which the adjusted forecast is associated. They are actionable in that they allow the bias quantification module304to detect the possible causes of forecast error.

In some embodiments, the internal information database402may include operation data of the use-case. The operation data of the use-case may include sales operations, customer and product data, channels data, distribution and location, orders, inventory operations, production operations, POS or sales, promotions and marketing events which is specific to the use-case. In some embodiment, the internal information database402may include customer and sales transactions, supplier data, sales history and plan, financial history and plan, order history and plan, inventory history and plan, shipments history and plan, product data, customer data, channel data, transportation data.

FIG.5is a block diagram that illustrates a distributed computing architecture that collectively provides bias management service to one or more client devices, according to some embodiments herein. In some embodiments, the bias management platform106and the bias management environment may run on separate systems to facilitate the bias management service to one or more client devices. This bias management environment108may include an adjustment tracking module502that tracks an adjustment made by a cognitive system in the parameter forecast in the use-case from the client device116A-N. The adjustment may be captured from the client device116N through the network114. The forecast adjustment database404stores the adjustment made by the cognitive system in the use-case. In some embodiments, recorded adjustment in the use-case which is stored in the forecast adjustment database404is transmitted to the bias management environment108for enabling reinforcement learning of the advanced machine learning models in the bias management environment108. The action tracking module may employ the advanced machine learning models for providing accurate predictions on the deviation of the metric of interest.

In some embodiments, the recommendation engine316transmits accurate predictions to the service consumption module206. The service consumption module206communicates improved recommendations to the client device116(A-N) through the network114.

FIG.6is an illustration that depicts a recommendation of improved adjusted forecast based on a cognitive attribute of a cognitive system. In an exemplary embodiment, the graph herein illustrates an actual value of a production trend of the use-case through a solid line. A dotted line in the illustration depicts an adjusted forecast, where the adjusted forecast is an adjustment in the parameter forecast made using the cognitive system. A dashed line in the illustration depicts an improved adjusted forecast, where the improved adjusted forecast is an improved adjusted forecast based on the cognitive attribute of the cognitive system and skill score of the cognitive system, wherein the improved adjusted forecast comprises an updated value of the adjusted forecast.

In some embodiments, the illustration ofFIG.6is transmitted and displayed on the client device116N for a user to improve the forecast adjustment of the user. A user using the client device116A-N interprets this information. In an embodiment, the user takes an action in the use-case on the interpretation of this information and the adjustment tracking module318tracks the adjustment in the use-case from the client device116A-N. The adjustment may be captured from the client device116N through the network114.

FIGS.7A-7Bare flow diagrams that describe a method for determining cognitive attributes from an adjusted forecast to automatically recommend changes to the adjusted forecast, according to some embodiments herein. At step702, generating an action recommendation that recommends mitigating or leveraging from a parameter forecast to a client device (116) associated with a bias management service, wherein the parameter forecast is a forecast of future values of a parameter associated with a factor group of the bias management service. At step704, obtaining an adjusted forecast from the client device (116), wherein the adjusted forecast is a modification in the parameter forecast based on an adjustment made by a cognitive system in the parameter forecast. At step706, classifying the adjusted forecast as a negative forecast bias or a positive forecast bias based on a deviation of the adjusted forecast from an actual value of the parameter associated with forecast, characterized in that. At step708, automatically determining a cognitive attribute of the cognitive system by generating a systematic pattern of the deviation of the adjusted forecast from an actual value of the parameter associated with the parameter forecast. At step710, determining a set of factors that are associated with the negative forecast bias or the positive forecast bias, wherein said set of factors is a combination of factors of an external factor group and a plurality of internal factor groups. Characterized in that, at step712, generating a skill score of the cognitive system that corresponds to a skill factor group using a machine learning engine, wherein the skill factor group is a combination of an external factor group and a plurality of internal factor groups. At step714, generating a recommendation of improved adjusted forecast based on the cognitive attribute of the cognitive system and skill score of the cognitive system, wherein the improved adjusted forecast comprises an updated value of the adjusted forecast.

The embodiments herein may include a computer program product configured to include a pre-configured set of instructions, which when performed, can result in actions as stated in conjunction with the methods described above. In an example, the pre-configured set of instructions can be stored on a tangible non-transitory computer readable medium or a program storage device. In an example, the tangible non-transitory computer readable medium can be configured to include the set of instructions, which when performed by a device, can cause the device to perform acts similar to the ones described here. Embodiments herein may also include tangible and/or non-transitory computer-readable storage media for carrying or having computer executable instructions or data structures stored thereon.

Generally, program modules utilized herein include routines, programs, components, data structures, objects, and the functions inherent in the design of special-purpose processors, etc. that perform particular tasks or implement particular abstract data types. Computer executable instructions, associated data structures, and program modules represent examples of the program code means for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps.

The embodiments herein can include both hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc.

A data processing system suitable for storing and/or executing program code will include at least one processor coupled directly or indirectly to memory elements through a system bus. The memory elements can include local memory employed during actual execution of the program code, bulk storage, and cache memories which provide temporary storage of at least some program code in order to reduce the number of times code must be retrieved from bulk storage during execution.

Input/output (I/O) devices (including but not limited to keyboards, displays, pointing devices, etc.) can be coupled to the system either directly or through intervening I/O controllers. Network adapters may also be coupled to the system to enable the data processing system to become coupled to other data processing systems or remote printers or storage devices through intervening private or public networks. Modems, cable modem and Ethernet cards are just a few of the currently available types of network adapters.

A representative hardware environment for practicing the embodiments herein is depicted inFIG.8, with reference toFIGS.1through7B. This schematic drawing illustrates a hardware configuration of a server/computer system/user device in accordance with the embodiments herein. The user device includes at least one processing device10and a cryptographic processor11. The special-purpose CPU10and the cryptographic processor (CP)11may be interconnected via system bus14to various devices such as a random access memory (RAM)15, read-only memory (ROM)16, and an input/output (I/O) adapter17. The I/O adapter17can connect to peripheral devices, such as disk units12and tape drives13, or other program storage devices that are readable by the system. The user device can read the inventive instructions on the program storage devices and follow these instructions to execute the methodology of the embodiments herein. The user device further includes a user interface adapter20that connects a keyboard18, mouse19, speaker25, microphone23, and/or other user interface devices such as a touch screen device (not shown) to the bus14to gather user input. Additionally, a communication adapter21connects the bus14to a data processing network26, and a display adapter22connects the bus14to a display device24, which provides a graphical user interface (GUI)30of the output data in accordance with the embodiments herein, or which may be embodied as an output device such as a monitor, printer, or transmitter, for example. Further, a transceiver27, a signal comparator28, and a signal converter29may be connected with the bus14for processing, transmission, receipt, comparison, and conversion of electric or electronic signals.

The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments herein have been described in terms of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the appended claims.