Patent Description:
Consumer demand for fruit-based drinks can depend on quality and cost. For example, consumers might buy more of a fruit-based drink when the drink composition is sweeter. However, the available quantity of sweet fruit may be limited. Thus, the business unit manager, faced with a limited quantity of sweet fruit, must develop a production plan that balances the available fruit with the perceived consumer demand.

The business unit manager has limited information and must rely primarily on intuition to develop a production plan. An intuitive approach can result in inconsistent results over time as well as across regions. Further, when a business unit manager leaves or moves to a different position, the institutional knowledge and experience of that person is lost. Therefore, improved systems and methods for developing and implementing production plans for fruit-based drinks are needed.

<CIT> discloses a system and method for optimizing a blended composition in accordance with a consumer's preferences. In an embodiment, the processor based system (in the form of a beverage dispenser) receives user's preferences with regard to beverage traits and formulates a blended beverage based on these trait preferences before dispensing a beverage made in accordance with the formulated blended beverage.

The improved system according to the invention is defined by the wording of claim <NUM>, and the corresponding method claim <NUM>.

The foregoing and other features of the present disclosure will become more fully apparent from the following description and appended claims, taken in conjunction with the accompanying drawings. Understanding that these drawings depict only several embodiments in accordance with the disclosure and are, therefore, not to be considered limiting of its scope, the disclosure will be described with additional specificity and detail through use of the accompanying drawings.

Described herein are illustrative systems, methods, computer-readable media, etc. for optimizing drink blends. In the following detailed description, reference is made to the accompanying drawings, which form a part hereof. In the drawings, similar symbols typically identify similar components, unless context dictates otherwise. The illustrative embodiments described in the detailed description, drawings, and claims are not meant to be limiting.

Referring to <FIG>, a block diagram of a drink supply chain <NUM> in accordance with an illustrative embodiment is shown. The drink supply chain <NUM> can be associated with the production and distribution of a drink (i.e., beverage) such as juice not from concentrate, juice from concentrate, carbonated beverages (i.e., soft drinks), whole grain beverages, coffees, teas, energy drinks, health drinks, beauty drinks, nutritional beverages, flavored water, milk, dairy drinks, kvass, bread drinks, non-alcoholic beverages, alcoholic beverages, wine, beer, tequila, vodka, rum, or any other beverages. The drink supply chain <NUM> can include beverage inputs <NUM>, other inputs <NUM>, inventory <NUM>, production resources <NUM>, channels <NUM>, consumers <NUM>, and a blend plan optimization system <NUM>. The blend plan optimization system <NUM> can interact with each of suppliers of the beverage inputs <NUM>, suppliers of the other inputs <NUM>, the inventory <NUM>, the production resources <NUM>, the channels <NUM>, and the consumers <NUM> automatically or manually, i.e., with some amount of human participation. This interaction may include communicating data to and from suppliers of the beverage inputs <NUM>, suppliers of the other inputs <NUM>, computers tracking the inventory <NUM>, computers tracking the production resources <NUM>, computers associated with the channels <NUM>, and computers associated with the consumers <NUM>.

The beverage inputs <NUM> include any agricultural product such as, but not limited to, fruits, vegetables, grains, nuts, etc. In an illustrative embodiment, the beverage inputs <NUM> can include, but are not limited to, acerola concentrate, acerola puree/paste, aloevera crushed, bits, & pieces, apple concentrate, apple not from concentrate, apple puree/paste, apricot concentrate, apricot puree/paste, banana concentrate, banana puree/paste, beet concentrate, blackberry concentrate, blackberry puree/paste, blackcurrant concentrate, blueberry concentrate, blueberry puree/paste, carrot concentrate, carrot not from concentrate, carrot organic not from concentrate, carrot pulp, cashew concentrate, cherry concentrate, cherry puree/paste, chokeberry concentrate, coconut cream, cranberry concentrate, cranberry not from concentrate, gooseberry concentrate, grape concentrate, grape not from concentrate, grapefruit concentrate, grapefruit not from concentrate, grapefruit pulp, grapefruit puree/paste, guava concentrate, guava puree/paste, kiwi concentrate, kumquat puree/paste, lemon concentrate, lemon not from concentrate, lemon pulp, lime concentrate, lime not from concentrate, lime pulp, lychee concentrate, mandarin concentrate, mango concentrate, mango puree/paste, melon concentrate, mulberry concentrate, multifruit blends concentrate, orange concentrate, orange not from concentrate, orange pulp, orange wesos, papaya crushed, bits, and pieces, passion fruit concentrate, passion fruit puree/paste, passion fruit unknown, peach concentrate, peach crushed, bits, and pieces, peach puree/paste, pear concentrate, pear puree/paste, pineapple concentrate, pineapple crushed, bits, and pieces, pineapple not from concentrate, plum concentrate, plum puree/paste, pomegranate concentrate, quincy puree/paste, raspberry concentrate, raspberry puree/paste, redcurrant concentrate, rhubarb concentrate, sourcherry concentrate, sourclierry not from concentrate, strawberry concentrate, strawberry crushed, bits, and pieces, strawberry puree/paste, tamarind puree/paste, tangerine concentrate, tangerine not from concentrate, tomato concentrate, tomato puree/paste, watermelon concentrate, yumberry concentrate, yuzu concentrate, honey, sugars, milk, dairy products, spices, herbs, leaves, seeds, pistils, flour, wheat, barley, oats, lye, corn, quinoa and rice. For every drink or group of drinks, the beverage inputs <NUM> can be different. In one illustrative embodiment, the beverage inputs <NUM> can include fruit. For example, the fruit can include oranges. The oranges can include, for example, Valencia oranges, early/midseason navel oranges, Brazilian oranges, or Costa Rican oranges. The crops for each of the Valencia oranges, early/midseason navel oranges, Brazilian oranges, or Costa Rican oranges can be ready for market at various times, have varying cost, quality and quantity. The beverage inputs <NUM> can be purchased under contract or purchased on the spot market. In another example, the fruit can include apples or mangos. However, any fruit, vegetable, or fruit/vegetable product or byproduct can be used. In another illustrative embodiment, the beverage inputs <NUM> can include stable drink components, for example, high fructose corn syrup, flavors, starch, additives, minerals, vitamins, alcohol, carbon dioxide, phosphoric acid, citric acid, artificial sweeteners, enzymes, starch, salt, gellan gum, carrageenan, cellulose gel, cellulose gum, pectin, modified food starch, agar, guar gum, xanthan gum, propylene glycol alginate, locust bean gum, gum Arabic, etc..

The other inputs <NUM> can include any non-food resources used to produce a drink product. For example, the other inputs <NUM> can include containers, bottles, labels, water, cleaners, energy, etc. Each item in the other inputs <NUM> can have different cost, availability, quantity, quality, etc.; however, items identified as the other inputs <NUM> can typically be more predicable than those associated with the beverage inputs <NUM>. The products associated with other inputs <NUM> can be purchased under contract or purchased on the spot market.

The intake of beverage inputs <NUM> and the other inputs <NUM> can be managed with the inventory <NUM>. The inventory <NUM> can include on-site and off-site facilities. For example, inventory <NUM> can include in-house tank capacity and supplier tank capacity. The inventory <NUM> can include tanks, tank farms, warehousing, etc. The inventory <NUM> can have a capacity and a current stock of input materials, as discussed above. The inventory <NUM> can be associated with a computer.

The inventory <NUM> can be used to provide input materials to the production resources <NUM> for the production of drinks. The production resources <NUM> can include mixing machinery such as blending vats, bottling equipment, pasteurization equipment, packaging equipment, labor, etc. The production resources <NUM> can have a production capacity, operation cost, and limiting factors. Limiting factors can include constraints on the manufacturing process, for example, a constraint could be that once a tank is opened the entirety should be used. Another example of a constraint could be that when a production line is changed over, the production line should be sanitized. The production resources <NUM> can be used to produce finished units of drink product. Multiple drink products can be produced using the same production resources <NUM>. Each drink product has a profile based on a number of attributes, discussed further below. The finished units of drink product can be in the form of various store keeping units (SKUs).

The channels <NUM> can be used to distribute the finished units of drink product to the consumers <NUM>. The channels <NUM> can include transportation resources, warehousing, wholesale distributors, and retail outlets. The consumers <NUM> can purchase the finished units of drink product through the channels <NUM>. A consumer liking for each drink product can be predicted based on the respective profile of each drink product compared to customer surveys and actual purchase data. The liking of each drink product can be used to predict a demand for each drink product. The consumers <NUM> can also provide data to the blend plan optimization system <NUM> via computer enabled surveys or manually-entered survey data.

The blend plan optimization system <NUM> can receive and send data from computers associated with suppliers of the beverage inputs <NUM>, computers associated with suppliers of other inputs <NUM>, computers associated with the inventory <NUM>, computers associated with the production resources <NUM>, computers associated with the channels <NUM>, and computers associated with the consumers <NUM>. The blend plan optimization system <NUM> can use data describing the beverage inputs <NUM>, the other inputs <NUM>, the inventory <NUM>, the production resources <NUM>, the channels <NUM>, and the consumers <NUM> to determine, for example, possible blend plans. The blend plan optimization system <NUM> can optimize the blend plan to maximize or minimize multiple attributes of the blend plans, as discussed further below. In one illustrative embodiment, the blend plan optimization system <NUM> can predict demand of the consumers <NUM>, obtain orders from channels <NUM>, order the beverage inputs <NUM> and the other inputs <NUM>, manage the inventory <NUM>, and control the production resources <NUM>. In other illustrative embodiments, the blend plan optimization system <NUM> can provide planning and operating information for users such as business unit managers. Advantageously, the blend plan optimization system <NUM> can provide cost and quality data and a common communication platform to enable cross-functional coordination to enhance blending decisions. Advantageously, the blend plan optimization system <NUM> can efficiently analyze multiple scenarios, vary demand, raw material attributes, and costs at a granular level to evaluate trade-offs and execute strategy.

Referring to <FIG>, a schematic of a blend plan system <NUM> in accordance with an illustrative embodiment is shown. The blend plan system <NUM> can include a computing device <NUM>, an input material database <NUM>, an inventory database <NUM>, a production database <NUM>, a channel database <NUM>, a consumer database <NUM>, and a network <NUM>. The computing device <NUM> can communicate with the input material database <NUM>, the inventory database <NUM>, the production database <NUM>, the channel database <NUM>, the consumer database <NUM>, and the network <NUM>. The computing device <NUM> can use the network <NUM> to communicate with other databases, suppliers, plants, storage facilities, machinery, distributors, and consumers.

Computing device <NUM> can include a desktop computer, a laptop computer, a cloud computing client, a hand-held computing device, or other type of computing device known to those of skill in the art. Computing device <NUM> can include a processor <NUM>, a memory <NUM>, a user interface <NUM>, a display <NUM>, blending model software <NUM>, and transceiver <NUM>. In alternative embodiments, computing device <NUM> may include fewer, additional, and/or different components. Memory <NUM>, which can include any type of permanent or removable computer memory known to those of skill in the art, can be a computer-readable storage medium. Memory <NUM> can be configured to store blending model software <NUM> and an application configured to run the blending model software <NUM>, captured data, and/or other information and applications as known to those of skill in the art. Transceiver <NUM> of computing device <NUM> can be used to receive and/or transmit information through a wired or wireless network as known to those of skill in the art. Transceiver <NUM>, which can include a receiver and/or a transmitter, can be a modem or other communication component known to those of skill in the art.

The blending model software <NUM> can be configured to analyze data from the input material database <NUM>, the inventory database <NUM>, the production database <NUM>, the channel database <NUM>, the consumer database <NUM>, and the network <NUM> to form at least one blend plan. The data can be received by computing device <NUM> through a wired connection such as a USB cable and/or through a wireless connection, depending on the embodiment. The blending model software <NUM>, which can be implemented as computer-readable instructions configured to be stored on memory <NUM>, can optimize the at least one blend plan for all attributes simultaneously or a particular attribute.

In one embodiment, the blending model software <NUM> can include a computer program and/or an application configured to execute the program such as Cplex optimizing software available from International Business Machines, Inc. , Armonk, NY. Alternatively, other programming languages and/or applications known to those of skill in the art can be used. In one embodiment, the blending model software <NUM> can be a dedicated standalone application. Processor <NUM>, which can be in electrical communication with each of the components of computing device <NUM>, can be used to run the application and to execute the instructions of the blending model software <NUM>. Any type of computer processor(s) known to those of skill in the art may be used.

The input material database <NUM> can include data on beverage inputs, such as agricultural inputs, and other inputs for drink blending and packaging. Data on agricultural inputs can include attribute data for expected shipments of agricultural inputs. For example, attribute data can include information about amount, cost, timing, brix, citric acid, brix acid ratio, vitamin c (ascorbic acid), color score, viscosity, limonin, flavor, fruit variety (such as early/inid navel oranges or Valencia oranges), and a pulp profile of an expected or contracted shipment. Data on other inputs can include information about packaging materials available or expected to be available, sweeteners available, water quality, etc..

The inventory database <NUM> can include data on currently held beverage inputs, such as agricultural inputs, and other inputs. The data can include internal information and information about suppliers. When a shipment of an agricultural input arrives at a storage facility or plant, the agricultural input can be tested to determine attribute data. For example, tested attribute data can include information about amount, brix, citric acid, brix acid ratio, vitamin c (ascorbic acid), color score, viscosity, limonin, flavor, fruit variety, and pulp profile of a received shipment. In one illustrative embodiment, the data includes the amount of juice stored in a tank. The collected data can be stored in the inventory database <NUM>. The data can also include information about the cost of inventory and timing of deliveries and planned use. The inventory database <NUM> can also include quantity, cost, and type information for other inputs such as packaging.

The production database <NUM> can include data on current production resources that are available for use. Production resources can include, for example, plants, storage facilities, and machinery. The data can include information about location, shipping costs, machine capacities, machine capability and machine schedules. The data can also include information about how resources are linked or related. For example, tanks 'A' and 'B' might only be piped to machine 'W. ' Illustrative machinery can include blending tanks, pasteurizing equipment, and bottling machines.

The channel database <NUM> can include data on channels used to distribute finished product. For example, data on channels can include historical data for demand through a particular channel. Data can include information about finished inventory on hand in a particular channel. Data can also include information about the timing and requirements of contract shipments to, for example, restaurants and food service companies.

The consumer database <NUM> can include data on consumer demand. For example, consumer demand data can include consumer survey results and sales results. The consumer survey results and sales results can be used to build customer liking and demand models.

Referring to <FIG>, a diagram of a blending model architecture <NUM> in accordance with an illustrative embodiment is shown. The blending model architecture <NUM> can include a blending model <NUM>. Inputs to the blending model <NUM> can include forecasts <NUM>, inventory information <NUM>, production information <NUM>, channel information <NUM>, and desired attributes <NUM>. The blending model <NUM> generates a blending plan <NUM> and an optimal solution <NUM> based on the inputs <NUM>-<NUM>. A liking profiler <NUM> provides a liking profile <NUM> for the blending plan <NUM>. The blending plan <NUM> and its optimal solution <NUM> and the liking profile <NUM> can then be stored in a database <NUM> for further analysis. Although a blending model for juice is described, the blending model can be applied to any agriculture-based product. The blending model can be applied to juice not from concentrate, juice from concentrate, carbonated beverages (i.e., soft drinks), whole grain beverages, coffees, teas, energy drinks, health drinks, nutritional beverages, beauty drinks, flavored water, milk, dairy drinks, kvass, bread drinks, non-alcoholic beverages, alcoholic beverages, wine, beer, tequila, vodka, rum, or any other beverages.

The forecasts <NUM> can include a juice forecast, a demand forecast, an inventory forecast, a production availability forecast, a fruit forecast, a vegetable forecast, a nut forecast, a grain forecast, a commodity forecast, or any other forecast. For example, the juice forecast can include an estimate of when, where, and how much fruit juice will be available for blending. The forecasts <NUM> can include material information such as data about beverage inputs, such as agricultural inputs, and other inputs. Forecasted attributes can include quantity, brix, citric acid, brix acid ratio, centrifuge pulp profile, vitamin c (ascorbic acid), percent recovered oil, color score, defects score, limonin, flavor, and varietal percentages (Brazilian, Early Mid, and Valencia). The pulp profile consists of information about the distribution of pulp lengths in the expected juice. The forecasts <NUM> can be provided manually or generated based on known and historical information stored in an input material database.

The inventory information <NUM> includes data on materials currently available for blending. For example, the inventory information <NUM> can include where and how much fruit juice is currently available for blending, inventory attributes can include quantity, age of juice, brix, citric acid, brix acid ratio, centrifuge pulp profile, vitamin c (ascorbic acid), percent recovered oil, color score, defects score, limonin, flavor; and varietal percentages (Brazilian, Early Mid, and Valencia). The inventory information <NUM> can be obtained from an inventory database.

The production information <NUM> includes data on the available production resources. For example, production information <NUM> can include data about available resources such as storage capacity, storage costs, production capacity, and production costs. The production information <NUM> can be obtained from a production database.

The channel information <NUM> includes data about the wholesalers and retailers such as finished inventory on hand in a particular channel. Data can also include information about the timing and requirements of contract shipments to, for example, restaurants and food service companies. The channel information <NUM> can be obtained from a channel database.

The desired attributes <NUM> can include a series of constraints. Referring to <FIG>, a diagram of a constraint architecture <NUM> in accordance with an illustrative embodiment is shown. The constraint architecture <NUM> can be categorized into primary constraints <NUM>, business restrictions <NUM>, and miscellaneous constraints <NUM>. The constraints and restrictions can define, for example, bounds, limits, conditions, and undesired configurations for blend plans. More or fewer constraints and restrictions can be implemented.

The primary constraints <NUM> can include flow balance, sourcing bounds, quality bounds <NUM>, demand, tank capacity, pasteurization capacity, varietal, load-out capacity, fresh vs. stored, juice age, and minimum supply requirement. Flow balance can constrain the model to ensure that flow into the system equals flow out of the system plus inventory. Sourcing bounds can define minimum and maximum purchases from suppliers. For example, a supplier may have a maximum capacity.

Quality bounds <NUM> can define the attributes of multiple finished products. Quality bounds <NUM> can include brix, citric acid, brix acid ratio, centrifuge pulp profile, vitamin c (ascorbic acid), percent recovered oil, color score, defects score, limonin, and flavor score. The quality bounds <NUM> can set minimum levels, maximum levels, or minimum and maximum ranges for an attribute. Each product or SKU can have a separate set of quality bounds <NUM>.

Demand can set bounds for amount of finished product to be produced. Tank farm capacity can define the maximum amount of tank capacity available for a particular time period, for example, a week, a month, etc. Pasteurization capacity can define the maximum amount of juice that can be pasteurized at a plant. Varietal can define the bounds for the ratio of early/midseason fruit to Valencia fruit to foreign fruits used in a product. Load-out capacity can define the maximum ability of a location to ship out product. Fresh vs. stored can define the bounds for the ratio of the amount fresh juice in a product to the amount stored juice in the product. Juice age can define that maximum amount of time juice can sit in a tank before the juice should be used. Minimum supply requirements can define the minimum amount supply purchases that must be made because of, for example, a contract.

Business restrictions <NUM> can include, for example, minimum own sourcing requirements, tank available period restriction, minimum carry-over requirement, in-season new stored restriction, prohibited flows, consumption requirements, and minimum ending inventory requirement. Minimum own sourcing requirements can define the minimum amount of fruit or juice that should be sourced internally, i.e., from farms owned by the company. The tank available period restriction can define time periods for which particular tanks are available, i.e., not scheduled for use. The minimum carry-over requirement can define how much input inventory should be maintained at the end of a production plan period. The in-season new stored restriction can define how much new fruit juice can be stored in tanks. Prohibited flows define restrictions on process flows such as moving stored juice from a first plant to a second plant. Consumption requirements can define how soon particular inputs should be used after being received. For example, a consumption requirement can be that all foreign-sourced fruit should be consumed within a certain time period, for example, within a week of reception. The minimum ending inventory requirement can define how much stock on hand that should be maintained for a product.

Miscellaneous constraints <NUM> can include situational or test constraints. For example, miscellaneous constraints <NUM> can include that flow of new stored juice from tank to plant is blocked. Any other constraint can also be included.

Referring again to <FIG>, the blending model <NUM> includes objective functions <NUM> and constraint functions <NUM>. The objective functions <NUM> and the constraint functions <NUM> can be a system of linear equations. The blending model <NUM> can be a constraint program with a mix of continuous and integer variables with some logical constraints. The blending model <NUM> can iteratively find solutions for objective functions <NUM> and the constraint functions <NUM> using various techniques such as interior point methods. For example, the system of linear equations can be solved using Cplex optimizing software available from International Business Machines, Inc. , Armonk, NY. A range of possible solutions can be produced. The possible solutions for objective functions <NUM> and the constraint functions <NUM> are valid blending plans <NUM>. The blending plans <NUM> are plans that define the inputs to use, resources to use, and products to be made.

The objective functions <NUM> define the objectives of the analysis. In one illustrative embodiment, the objective can be to minimize cost. However, any objective is possible including maximizing quality, or minimizing carbon footprint. The objective functions <NUM> can also include secondary and tertiary objectives, etc. The solution for the objective functions <NUM> can be the optimal solution <NUM>. The optimal solution <NUM> can be the set of variable values, decisions, and associated objective function value that maximizes and/or minimizes the objective function, subject to the constraints. For example, the optimal solution <NUM> can be the minimized cost calculated for a particular blending plan <NUM>.

In one illustrative embodiment, the objective functions <NUM> include expressions that represent the various costs involved in producing juice. For example, objective functions <NUM> can include a process cost expression, a storage cost expression, and a transportation cost expression. For example, for a particular supplier, plant, and transport, the expression can be: cost = supply cost per gallon * gallons + production cost per gallon * gallons + transportation cost per gallon * gallons. The sum of these expressions can equal the total cost of producing and delivering finished juice products. In one illustrative embodiment, the total cost of producing and delivering finished juice products is the optimal solution <NUM>. The objective functions <NUM> can also include preference terms and penalties. For example, penalties can include a fresh juice penalty, an overproduction penalty, and a flow penalty. In one example, the preference terms are counted as reduced costs and penalties are counted as increased costs.

The possible solutions for the objective functions <NUM> are limited by valid combinations defined by the constraint functions <NUM>. An illustrative constraint function for brix of the finished product, can be: <NUM> < brix< <NUM>. Thus, only blending plans <NUM> where the finished product has a brix greater than <NUM> but less than <NUM> are valid blending plans <NUM>. Another illustrative constraint function for pulp profile can be: <NUM> grams/deciliter < fine pulp (<<NUM>) < <NUM> grams/deciliter; <NUM> grams/deciliter < medium pulp (<NUM>-<NUM>) < <NUM> grams/deciliter; <NUM> grams/deciliter < large pulp (><NUM>) < <NUM> grams/deciliter. Thus, only blending plans <NUM> where the finished product has a pulp profile that fits within these pulp profile constraints are valid blending plans <NUM>.

The blending model <NUM> can be executed using a branch and bound method and/or an interior point method. In an illustrative embodiment, the objective functions <NUM> and constraint functions <NUM> can be combined to form a math program. The math program can optimize the objective functions <NUM> subject to the constraint functions <NUM>. After an optimal blending plan <NUM> is determined in view of the constraint functions <NUM>, inputs to the model can be changed to evaluate different scenarios. The optimal solution <NUM> for the objective functions <NUM>, as well as the respective blending plan <NUM>, can be stored for further analysis. After the objective functions <NUM> have been solved for a number of valid blending plans <NUM> (resulting in a respective number of optimal solutions <NUM>), the best optimal solution <NUM> (e.g., minimum cost solution) can be selected. The granularity of the blending plans <NUM> can be changed to increase the execution speed of increase the precision of the blending model <NUM>. Alternatively, the blending model <NUM> can be executed using a Monte Carlo-type methodology.

Referring to <FIG>, a flowchart of operations performed in a branch and bound method <NUM> in accordance with an illustrative embodiment is shown. Additional, fewer or different operations may be performed. In an operation <NUM>, a continuous relaxed problem (X(i) = a) can be defined.

The integer requirements of the continuous relaxed problem are relaxed and the continuous relaxed problem can be solved as a continuous variable problem. This relaxed problem call be solved using an interior point algorithm, or a gradient descent algorithm. A variable (X(i)) can selected to 'branch* on based on the partial derivative of the objective function, projected on to the constraint surface, with respect to the variable. In an operation <NUM>, along one branch the branching variable is constrained to be less than or equal to the next lowest integer value, e.g., sub problem X(i) <= b. In an operation <NUM>, along the other branch the branching variable is constrained to be greater than or equal to the next highest value, e.g., sub problem X(i) >= c. The resulting sub-problems are solved until an optimal solution is found that obeys all constraints and integrality requirements. A branch and cut algorithm can also be used, and branch and bound and branch and cut can be used in combination.

Referring to <FIG>, a diagram of an interior point approach <NUM> in accordance with an illustrative embodiment is shown. In an illustrative embodiment, the interior point approach <NUM> is a two dimensional linear integer program. In the interior point approach <NUM>, constraint functions <NUM> are projected onto integer points <NUM>. In an illustrative embodiment, all integer points <NUM> located above constraint functions <NUM> are not valid solutions. An objective function <NUM> can be optimized (i.e., re-plotted in the direction of the arrow) until only one of the integer points <NUM> below the constraint functions <NUM> remains above the objective function <NUM>. In <FIG>, an optimal solution <NUM> is the last integer point below the constraint functions <NUM> that remains above the objective function <NUM>. Thus, the optimal solution <NUM> maximizes the objective function <NUM> while remaining within the bounds of the constraint functions <NUM>. In other embodiments, multiple dimensions and multiple objective functions can be used.

Referring again to <FIG>, each valid blending plan <NUM> can be processed by the liking profiler <NUM>. The liking profiler <NUM> can be a model of consumer liking based on the attributes of a product. In one illustrative embodiment, the liking profiles <NUM> can be a multi-dimensional mathematical model that associates a liking score with the brix, citric acid, brix acid ratio, centrifuge pulp profile, vitamin c (ascorbic acid), percent recovered oil, color score, defects score, limonin, and flavor score of a product. More or fewer attributes can be included. The attributes can be weighted. The liking score can be a relative value. The liking score can be a scalar, vector, or random variable. The multi-dimensional mathematical model can be populated with data from consumer surveys and consumer purchase information. The data from consumer surveys and data from consumer purchase information can be stored in a consumer database. For example, in a consumer survey, a consumer is given a product to try where the product has known attributes. The consumer can complete a consumer survey rating various feelings toward the product. For example, the consumer can rate the mouth feel of the product on a scale of one to ten. A statistical model can be constructed using the responses of multiple consumers. Similarly, a statistical model can be constructed using product purchasing information matched with product attributes. The multi-dimensional mathematical model is a compilation of these data describing consumers. For a given brix, citric acid, brix acid ratio, centrifuge pulp profile, vitamin c (ascorbic acid), percent recovered oil, color score, defects score, limonin, and flavor score of a product, the multi-dimensional mathematical model can produce a liking score. The liking profiler <NUM> will score each product in the blending plan <NUM>. The liking profiler <NUM> returns the liking profile <NUM> which can consist of the liking score for each product in the blending plan <NUM>. Alternatively, the liking profiler <NUM> can return a liking score for each SKU.

The blending plan <NUM> and its optimal solution <NUM> and liking profile <NUM> can be stored in a database <NUM> for display or further analysis. The results of the analysis can be interactively displayed. For example, a graph of blending plans <NUM> showing cost (i.e., optimal solution <NUM>) versus liking (i.e. liking profile <NUM>) can be presented to a user such as a business unit manager. The user can also change the various attributes, constraints, cost structures and resources available to simulate how changes will effect the drink production system. Sensitivity analyses can include automatically generating scenarios where attributes, constraints, cost structures and resources are changed by a percentage, for example, ten percent.

In addition, the variability of the attributes, constraints, cost structures and resources can be tracked over time and/or simulated and displayed for analysis. Since the inputs to the drink production process can have a large variance, it can be difficult for managers to identify sections of the drink production process that are poorly controlled. In an illustrative embodiment, the constraint functions <NUM> can include production limits that establish operating tolerances of the production resources. In another illustrative embodiment, the objective functions <NUM> can include minimizing variance in one or more of the forecasts <NUM>, the inventory information <NUM>, the production information <NUM>, the channel information <NUM>, and the desired attributes <NUM>. By simulating various production scenarios, managers can identify high variability sections of the drink production process. Further, the drink production system can determine and track the variability in a section of the drink production process based on the variability of the inputs to the particular section of the drink production process. Thus, a manager can differentiate a section of the drink production process that is necessarily variable from a section of the drink production process that is out of control and needs improvement. Further, the manager can simulate how the process would change if variability is reduced in a particular process section. For example, the manager could determine that <NUM>% improvement in the variance of machine changeover could result in a <NUM>% increase in process throughput. Thus, the manager could focus on improving changeover performance.

Advantageously, the blending model architecture can provide cost and quality data and a common communication platform to enable cross-functional coordination to enhance blending decisions. Advantageously, the blending model architecture can efficiently analyze multiple scenarios, vary demand, raw material attributes, and costs at a granular level to evaluate tradeoffs and execute strategy. Advantageously, users can interact with various blending plans <NUM> to better understand possible blending plans <NUM> that meet business objectives.

Referring to <FIG>, a flowchart of operations performed by a blending plan system <NUM> in accordance with an illustrative embodiment is shown. Additional, fewer or different operations may be performed. In an operation <NUM>, input material data can be aggregated by the blending plan system. The blending plan system can query an input material database for data on beverage inputs, such as agricultural inputs, and other inputs for drink blending and packaging. Data on agricultural inputs can include attribute data for expected shipments of agricultural inputs. For example, attribute data can include information about amount, cost, timing, brix, citric acid, brix acid ratio, vitamin c (ascorbic acid), color score, viscosity, limonin, flavor, fruit variety (such as early/mid navel oranges or Valencia oranges), and pulp profile of an expected or contracted shipment. Data on other inputs can include information about packaging materials available or expected to be available, sweeteners available, water quality, etc. The input material data can include a forecast.

In an operation <NUM>, inventory data can be aggregated by the blending plan system. The blending plan system can query an inventory database for data on currently held beverage inputs, such as agricultural inputs, and other inputs. The data can include internal information and information about suppliers. For example, attribute data can include information about amount, cost, timing, brix, citric acid, brix acid ratio, vitamin c (ascorbic acid), color score, viscosity, limonin, flavor, fruit variety, and pulp profile of a received shipment. In one illustrative embodiment, the data includes the amount of juice stored in a tank. The data can also include quantity, cost, and type information for other inputs such as packaging.

In an operation <NUM>, production data can be aggregated by the blending plan system. The blending plan system can query a production database for data on current production resources that are available for use. Production resources can include, for example, plants, storage facilities, and machinery. The data can include information about location, shipping costs, machine capacities, machine capability and machine schedules. The data can also include information about how resources are linked and related. Illustrative machinery can include blending tanks, pasteurizing equipment, and bottling machines.

In an operation <NUM>, channel data can be aggregated by the blending plan system. The blending plan system can query a channel database for data on channels used to distribute finished product. For example, data on channels can include historical data for demand through a particular channel. Data can include information about finished inventory on hand in a particular channel. Data can also include information about the timing and requirements of contract shipments to, for example, restaurants and food service companies.

In an operation <NUM>, the blending plan system can generate constraint functions based on the aggregated input data, the aggregated inventory data, the aggregated production data, and the aggregated channel data, as described above. The constraint functions limit valid blending plans to the available and potential inputs, inventory, production resources, and channel resources. The constraint functions also limit valid blending plans to desired product attributes and operational constraints.

In an operation <NUM>, the blending plan system can generate objective functions based on a desired objective, as described above. For example, a desired objective can be minimizing cost. Objective functions can also include secondary and tertiary objectives, for example, maximizing quality.

In an operation <NUM>, the blending plan system can execute a blending model to produce blending plans and optimal solutions based on the constraint functions and objective functions, as described above. The objective functions and the constraint functions can be a system of linear equations. The blending model can be a constraint program with a mix of continuous and integer variables with some logical constraints. The blending model can iteratively find solutions for the objective functions and the constraint functions using various techniques such as interior point methods. For example, the system of linear equations can be solved using Cplex optimizing software available from International Business Machines, Inc. , Armonk, NY. A range of possible solutions can be produced. The possible solutions for objective functions and the constraint functions are blending plans. The blending plans are plans that define the inputs to use, resources to use, and products to be made.

In an operation <NUM>, the blending plan system can generate a liking profile for each blending plan, as described above. The liking profile can be determined using a model of consumer liking based on the attributes of a product. In one illustrative embodiment, a multi-dimensional mathematical model that associates a liking score with the brix, citric acid, brix acid ratio, centrifuge pulp profile, vitamin c (ascorbic acid), percent recovered oil, color score, defects score, limonin, and flavor score of a product can be used to generate a liking profile. More or fewer attributes can be included. The liking profile can consist of the liking score for each product in the blending plan. Alternatively, the liking profile can consist of the liking score for each SKU in the blending plan.

In an operation <NUM>, the blending plan system can store the blending plan and its optimal solution and liking profile in a database for implementation, display or further analysis. In an operation <NUM>, the blending plan results and related analysis can be interactively displayed. For example, a graph of blending plans showing cost (i.e., optimal solution) versus liking (i.e. liking profile) can be presented to a user such as a business unit manager. The user can also change the various attributes, constraints, cost structures and resources available to simulate how changes will effect the drink production system. Sensitivity analyses can include automatically generating scenarios where attributes, constraints, cost structures and resources are changed by a percentage, for example, ten percent.

In addition, the variability of the attributes, constraints, cost structures and resources can be tracked over time and/or simulated and displayed fur analysis. Since the inputs to the drink production process can have a large variance, it can be difficult for managers to identify sections of the drink production process that are poorly controlled. By simulating various production scenarios, managers can identify high variability sections of the drink production process. Further, the drink production system can determine and track the variability in a section of the drink production process based on the variability of the inputs to the particular section of the drink production process. Thus, a manager can differentiate a section of the drink production process that is necessarily variable from a section of the drink production process that is out of control and needs improvement. Alternatively, the blend plan system can use the blending plans order material inputs, manage inventory, and control the production resources such as mixing machinery.

Advantageously, the blending model system can provide cost and quality data and a common communication platform to enable cross-functional coordination to enhance blending decisions. Advantageously, the blending model system can efficiently analyze multiple scenarios, vary demand, raw material attributes, and costs at a granular level to evaluate tradeoffs and execute strategy. Advantageously, users can interact with various blending plans to better understand possible blending plans that meet business objectives.

Referring to <FIG>, a diagram of a blending model architecture <NUM> in accordance with an illustrative embodiment is shown. The blending model architecture <NUM> can include a blending model <NUM>, as discussed above. Inputs to the blending model <NUM> can include a forecast, inventory information, production information, channel information, and desired attributes, as described above. The blending model <NUM> generates a blending plan <NUM> and an optimal solution <NUM> based on the inputs. A liking profiler <NUM> provides a liking profile <NUM> for the blending plan <NUM>. The blending plan <NUM> and its optimal solution <NUM> and liking profile <NUM> can then be provided to a demand module <NUM>. The demand module <NUM> can generate a demand profile <NUM> for the blending plan <NUM>. The blending plan <NUM> and its optimal solution <NUM>, liking profile <NUM>, and demand profile <NUM> can then be stored in a database <NUM> for further analysis. Although a blending model for juice is described, the blending model can be applied to any agriculture-based product. The blending model can be applied to from concentrate juice or not from concentrate juice.

As discussed above, the each valid blending plan <NUM> can be processed by the liking profiler <NUM>. The liking profiler <NUM> can be a model of consumer liking based on the attributes of a product. In one illustrative embodiment, the liking profiler <NUM> cat1 be a multi-dimensional mathematical model that associates a liking score with the brix, citric acid, brix acid ratio, centrifuge pulp profile, vitamin c (ascorbic acid), percent recovered oil, color score, defects score, limonin, and flavor score of a product. More or fewer attributes can be included. The attributes can be weighted. The liking score can be a relative value. The liking score can be a scalar, vector, or random variable. The multi-dimensional mathematical model can be populated with data from consumer surveys and consumer purchase information. The multi-dimensional mathematical model is a compilation of these data describing consumers. For a given brix, citric acid, brix acid ratio, centrifuge pulp profile, vitamin c (ascorbic acid), percent recovered oil, color score, defects score, limonin, and flavor score of a product, the multi-dimensional mathematical model can produce a liking score. The liking profiler <NUM> will score each product in the blending plan <NUM>. The liking profiler <NUM> returns the liking profile <NUM> which can consist of the liking score for each product in the blending plan <NUM>. Alternatively, the liking profiler <NUM> can return a king score for each SKU.

The demand module <NUM> can generate the demand profile <NUM> for the blending plan <NUM> based on the liking profile <NUM>. The demand module <NUM> can include a demand model of likely demand based on consumer liking of the attributes of products to be released into a market and the total volume and form of the products to be released into the market. The demand model can be a multi-dimensional mathematical model or statistical model that associates a liking score with historical purchase data. A demand curve can he generated for each product or SKU of the blending plan <NUM>. The demand model can account for cannibalism amongst the products or SKUs based on the volume or units produced according to the blending plan <NUM>. The volume or units produced for each product or SKU according to the blending plan <NUM> can be used to calculate a proposed price for a product on the demand curve. The demand profile <NUM> can include the demand curve for each product and a proposed price for each product.

The demand module <NUM> can then calculate the profit of the blending plan <NUM> at various price points wing the demand profile <NUM> and the cost structure information of the optimal solution <NUM> for the blending plan <NUM>. Using a system of equations for each product or SKU, such as objective functions and constraint functions described above, the demand module <NUM> can maximize the profit by testing various price scenarios against the demand profile <NUM>.

In addition, after many runs of the blending model <NUM>, the demand module <NUM> can use the volume or units produced according to a plurality of blending plans <NUM> along with the cost structure information of the optimal solutions <NUM> of the plurality of blending plans <NUM> to generate a supply curve for a company. In other words, the blending model <NUM> can build a supply curve based on the (minimized) cost, or price, of providing a particular volume of product. Each of the blending plans <NUM> can provide a data point for generating the supply curve. Alternatively, the supply carve can be constructed using prior blending plans <NUM> stored in the database <NUM>.

The blending plan <NUM> and its optimal solution <NUM>, liking profile <NUM>, and demand profile <NUM> can be stored in a database <NUM> for display or further analysis. The results of the analysis can be interactively displayed. For example, a graph showing the demand curves for each product or SKU of the demand profile <NUM> can be presented to a user such as a business unit manager. A graph showing the supply curve each product or SKU can also be presented. The user can change the various attributes, constraints, cost structures and resources available to simulate how changes will effect the supply and demand of products of the drink production system. In addition, a user can choose various price points to manipulate to see how different prices will affect profitability. Sensitivity analyses can include automatically generating scenarios where attributes, constraints, cost structures and resources are changed by a percentage, for example, ten percent.

Advantageously, the blending model architecture can provide supply and demand data and a common communication platform to enable cross-functional coordination to enhance blending decisions. Advantageously, the blending model architecture can efficiently analyze multiple scenarios, vary demand, raw material attributes, and costs at a granular level to evaluate trade-offs and execute strategy. Advantageously, users can interact with various blending plans <NUM> to better understand possible supply and demand scenarios.

Referring to <FIG>, a diagram of a blending model architecture <NUM> in accordance with an illustrative embodiment is shown. The blending model architecture <NUM> can include a blending model <NUM>, as discussed above. Inputs to the blending model <NUM> can include a forecast, inventory information, production information, channel information, and desired attributes, as described above. The blending model <NUM> generates a blending plan <NUM> and an optimal solution <NUM> based on the inputs. A liking profiler <NUM> provides a liking profile <NUM> for the blending plan <NUM>. The blending plan <NUM> and its optimal solution <NUM> and liking profile <NUM> can then be provided to a demand module <NUM>. The demand module <NUM> can generate a demand profile <NUM> for the blending plan <NUM>. The blending plan <NUM> and its optimal solution <NUM>, liking profile <NUM> and demand profile <NUM> can then be provided to a promotion module <NUM> along with a promotion query <NUM>. The promotion module <NUM> can generate a promotion plan <NUM> for the blending plan <NUM>. The blending plan <NUM> and its optimal solution <NUM>, liking profile <NUM>, demand profile <NUM>, promotion plan <NUM> can then be stored in a database <NUM> for further analysis. Although a blending model for juice is described, the blending model can be applied to any agriculture-based product. The blending model can be applied to from concentrate juice or not from concentrate juice.

As discussed above, the each valid blending plan <NUM> can be processed by the liking profiler <NUM>. The liking profiler <NUM> can be a model of consumer liking based on the attributes of a product. In one illustrative embodiment, the liking profiler <NUM> can be a multi-dimensional mathematical model that associates a liking score with various attributes of a product. The multi-dimensional mathematical model can be populated with data from consumer surveys and consumer purchase information. The multi-dimensional mathematical model is a compilation of these data describing consumers. For a given attribute mix of a product, the multi-dimensional mathematical model can produce a liking score. The liking profiler <NUM> will score each product in the blending plan <NUM>. The liking profiler <NUM> returns the liking profile <NUM> which can consist of the liking score for each product in the blending plan <NUM>. Alternatively, the liking profiler <NUM> can return a liking score for each SKU.

The demand module <NUM> can generate the demand profile <NUM> for the blending plan <NUM> based on the liking profile <NUM>. The demand module <NUM> can include a demand model of likely demand based on consumer liking of the attributes of products to be released into a market and the total volume and form of the products to be released into the market. The demand model can be a multi-dimensional mathematical model or statistical model that associates a liking score with historical purchase data. A demand curve can be generated for each product or SKU of the blending plan <NUM>. The demand model can account for cannibalism amongst the products or SKUs based on the volume or units produced according to the blending plan <NUM>. The volume or units produced for each product or SKU according to the blending plan <NUM> can be used to calculate a proposed price for a product on the demand curve. The demand profile <NUM> can include the demand curve for each product and a proposed price for each product.

In addition, after many runs of the blending model <NUM>, the demand module <NUM> can use the volume or units produced according to a plurality of blending plans <NUM> along with the cost structure information of the optimal solutions <NUM> of the plurality of blending plans <NUM> to generate a supply curve for a company. Each of the blending plans <NUM> can provide a data point for generating the supply curve.

The promotion module <NUM> can test promotion scenarios by manipulating constraints of the blending model <NUM> or by mining blending plans <NUM> previously stored in the database <NUM>. The promotion module <NUM> can receive the promotion query <NUM>. The promotion query <NUM> provides constraints or restrictions related to how to deploy a promotion. The promotion query <NUM> can be a lump sum of promotion money or a targeted sum of promotion money. Likewise, other promotions, for example, coupons, toys, free samples, etc., can be simulated as promotion money. For example, the promotion query <NUM> can be directed to finding the most profitable way to spend two hundred thousand dollars of promotion money. In another example, the promotion query <NUM> can be directed to determining the effect of spending two hundred thousand dollars on the promotion of a specific product.

In an illustrative embodiment, the effect of the promotion can be modeled as reducing the cost structure of the inputs of a product. The promotion module <NUM> can manipulate current constraints and introduce new constraints to the blending model <NUM>. The promotion plan <NUM> can include the set of new constraints and changes to the current constraints. For example, promotion module <NUM> can direct the blending nod el <NUM> to seduce the input costs of product 'X' by ten cents/gallon and create another constraint that states that the number of gallons of product 'X' times ten cents cannot exceed two hundred thousand dollars. The blending model <NUM> can be iterated until valid blending plans <NUM> are found that satisfy the new promotion constraints. Various constraints can be employed to simulate target promotions. When a valid blending model <NUM> is found, the promotion plan <NUM> can be stored as a valid promotion plan <NUM>. The valid promotion plan <NUM> can then be used by a business manager for implementing a promotion campaign.

Alternatively, the promotion module <NUM> can instruct the demand module <NUM> to use a specific price for a target product during analysis. The demand module <NUM> can determine the maximum profit without the promotion and with the promotion. The promotion module <NUM> can force the blending model to generate valid blending plans <NUM> until a maximum profit is determined in the situation with the promotion, but where the difference in the maximum profit without the promotion and with the promotion is equal to the promotion amount. In one illustrative embodiment, random blend plans can be injected into the liking profiler to promote discovery of valid blending plans <NUM>. The promotion plan <NUM> can be derived based on the differences between the specific price for the target product and the proposed price for the target product calculated by the demand module <NUM>.

The blending plan <NUM> and its optimal solution <NUM>, liking profile <NUM>, demand profile <NUM>, promotion query <NUM>, and promotion plan <NUM> can be stored in a database <NUM> for display or further analysis. The results of the analysis can be interactively displayed. For example, a graph or table showing possible promotion query <NUM> and promotion plan <NUM> sets can be presented to a user such as a business unit manager. The user can change the various attributes, constraints, cost structures and resources available to simulate how changes will effect the promotion. Sensitivity analyses can include automatically generating scenarios where attributes, constraints, cost structures and resources are changed by a percentage, for example, ten percent.

Advantageously, the blending model architecture can provide promotion data and a common communication platform to enable cross-functional coordination to enhance blending decisions. Advantageously, the blending model architecture can efficiently analyze multiple promotion scenarios, vary demand, raw material attributes, and costs at a granular level to evaluate trade-offs and execute strategy. Advantageously, users can interact with various blending plans <NUM> to better understand possible promotion scenarios.

One or more flow diagrams may have been used herein. The use of flow diagrams is not meant to be limiting with respect to the order of operations performed. The herein described subject matter sometimes illustrates different components contained within, or connected with, different other components. It is to lie understood that such depicted architectures are merely exemplary, and that in fact many other architectures can be implemented which achieve the same functionality. Specific examples of operably couplable include but are not limited to physically mateable and/or physically interacting components and/or wirelessly interactable and/or wirelessly interactable and/or wirelessly interacting components and/or logically interacting and/or logically interactable components.

Claim 1:
A system (<NUM>) for optimizing blending comprising:
a processor (<NUM>) configured to:
aggregate material information (<NUM>), wherein the material information is associated with a product input of at least one product, the product input comprising an agricultural commodity selected from the group consisting of a fruit, a vegetable, a grain, and a nut;
aggregate production information (<NUM>), wherein the production information is associated with production resources of the at least one product;
calculate a blending plan (<NUM>) for the at least one product by executing a blending model, the blending model including objective functions and constraint functions, wherein the objective functions are limited by the constraint functions, and wherein executing the blending model comprises inputting the aggregated material information and/or production information into the blending model;
generate a consumer liking profile by mathematically modeling consumer liking of the at least one product; and
provide blending plan information (<NUM>), including the blending plan and the consumer liking profile, for controlling the production resources.