WO2014093895A1 - Blend plan optimization for consumable products - Google Patents
Blend plan optimization for consumable products Download PDFInfo
- Publication number
- WO2014093895A1 WO2014093895A1 PCT/US2013/075138 US2013075138W WO2014093895A1 WO 2014093895 A1 WO2014093895 A1 WO 2014093895A1 US 2013075138 W US2013075138 W US 2013075138W WO 2014093895 A1 WO2014093895 A1 WO 2014093895A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- consumable product
- blending
- constraints
- inputs
- concentrated
- Prior art date
Links
- 239000000203 mixture Substances 0.000 title description 24
- 238000005457 optimization Methods 0.000 title description 11
- 238000002156 mixing Methods 0.000 claims abstract description 232
- 238000004519 manufacturing process Methods 0.000 claims abstract description 80
- 239000012141 concentrate Substances 0.000 claims abstract description 29
- 235000021056 liquid food Nutrition 0.000 claims abstract description 12
- 239000000047 product Substances 0.000 claims description 279
- 239000002994 raw material Substances 0.000 claims description 73
- 238000003860 storage Methods 0.000 claims description 70
- 235000015203 fruit juice Nutrition 0.000 claims description 41
- 230000006870 function Effects 0.000 claims description 39
- 238000000034 method Methods 0.000 claims description 39
- 239000013067 intermediate product Substances 0.000 claims description 30
- 239000007788 liquid Substances 0.000 claims description 8
- 235000013365 dairy product Nutrition 0.000 claims description 7
- 230000003442 weekly effect Effects 0.000 claims description 6
- 238000005096 rolling process Methods 0.000 claims description 5
- 238000012261 overproduction Methods 0.000 claims description 4
- 230000001932 seasonal effect Effects 0.000 claims description 3
- 238000000547 structure data Methods 0.000 claims description 3
- 235000021557 concentrated beverage Nutrition 0.000 claims 2
- 235000013361 beverage Nutrition 0.000 abstract description 13
- 235000011389 fruit/vegetable juice Nutrition 0.000 description 44
- 238000010586 diagram Methods 0.000 description 22
- 238000012545 processing Methods 0.000 description 19
- 235000015205 orange juice Nutrition 0.000 description 16
- 238000009472 formulation Methods 0.000 description 15
- 239000000243 solution Substances 0.000 description 13
- CIWBSHSKHKDKBQ-JLAZNSOCSA-N Ascorbic acid Chemical compound OC[C@H](O)[C@H]1OC(=O)C(O)=C1O CIWBSHSKHKDKBQ-JLAZNSOCSA-N 0.000 description 10
- 238000004891 communication Methods 0.000 description 10
- 235000013399 edible fruits Nutrition 0.000 description 9
- KRKNYBCHXYNGOX-UHFFFAOYSA-N citric acid Chemical compound OC(=O)CC(O)(C(O)=O)CC(O)=O KRKNYBCHXYNGOX-UHFFFAOYSA-N 0.000 description 6
- 239000000796 flavoring agent Substances 0.000 description 6
- 235000019634 flavors Nutrition 0.000 description 6
- 235000013305 food Nutrition 0.000 description 6
- ZZZCUOFIHGPKAK-UHFFFAOYSA-N D-erythro-ascorbic acid Natural products OCC1OC(=O)C(O)=C1O ZZZCUOFIHGPKAK-UHFFFAOYSA-N 0.000 description 5
- VHLJDTBGULNCGF-UHFFFAOYSA-N Limonin Natural products CC1(C)OC2CC(=O)OCC23C4CCC5(C)C(CC(=O)C6OC56C4(C)C(=O)CC13)c7cocc7 VHLJDTBGULNCGF-UHFFFAOYSA-N 0.000 description 5
- 229930003268 Vitamin C Natural products 0.000 description 5
- 235000021022 fresh fruits Nutrition 0.000 description 5
- KBDSLGBFQAGHBE-MSGMIQHVSA-N limonin Chemical compound C=1([C@H]2[C@]3(C)CC[C@H]4[C@@]([C@@]53O[C@@H]5C(=O)O2)(C)C(=O)C[C@@H]2[C@]34COC(=O)C[C@@H]3OC2(C)C)C=COC=1 KBDSLGBFQAGHBE-MSGMIQHVSA-N 0.000 description 5
- 235000019154 vitamin C Nutrition 0.000 description 5
- 239000011718 vitamin C Substances 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 235000021581 juice product Nutrition 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 239000002904 solvent Substances 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 239000002253 acid Substances 0.000 description 3
- 235000015197 apple juice Nutrition 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000013178 mathematical model Methods 0.000 description 3
- 235000013336 milk Nutrition 0.000 description 3
- 239000008267 milk Substances 0.000 description 3
- 210000004080 milk Anatomy 0.000 description 3
- 235000014347 soups Nutrition 0.000 description 3
- 238000012358 sourcing Methods 0.000 description 3
- 235000013618 yogurt Nutrition 0.000 description 3
- 239000007864 aqueous solution Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000003306 harvesting Methods 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 239000000725 suspension Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000007723 transport mechanism Effects 0.000 description 2
- 235000021443 coca cola Nutrition 0.000 description 1
- 238000009928 pasteurization Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000011343 solid material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
Definitions
- a concentrate is a form of substance which has had the majority of its intermediate product (which in the case of a liquid is a solvent) removed.
- a concentrate is produced by the removal of water from a solution or suspension, such as the removal of water from fruit juice.
- One benefit of producing a concentrate is that of a reduction in weight and volume for transportation as the concentrate can be re-constituted at the time of usage by the addition of the solvent.
- the input material for fruit-based beverages i.e., fruit
- the available quantity, cost, and quality of fruit can depend on hurricane activity or if an early freeze occurs.
- the supply of available fruit for beverages can be highly variable across multiple geographic regions.
- Consumer demand and price sensitivity are also important aspects to consider in concentrated food and beverage production.
- the volume of a food or beverage produced should be sufficient to meet consumer demand at a price consumers will bear.
- meeting consumer demand includes the blending optimization of various components so as to deliver consistent taste, texture and/or other properties.
- a concentrated orange juice beverage may be blended from a variety of different types of juices with the blend or composition determining the overall taste, texture and other properties of the resulting drink.
- Previous blending techniques do not necessarily allow the manufacturing process to be optimized in terms of utilizing raw materials to their fullest extent or in terms of maintaining a product having consistent component attribute profiles (e.g., taste, texture, shelf life and costs) despite variances in the supply of the components of the product. It is with respect to these considerations and others that the various embodiments of the present invention have been made.
- NFC not-from-concentrate
- Previous blending techniques do not necessarily allow the manufacturing process to be optimized in terms of utilizing components (i.e., raw materials) needed for blending to their fullest extent or in terms of maintaining a product having consistent component attribute profiles (e.g., taste, texture, shelf life and costs) despite variances in the supply and costs of the product components. It is with respect to these considerations and others that the various embodiments of the present invention have been made.
- a computer-implemented method of optimizing a blending plan for consumable products receives, by a computer, one or more inputs associated with a blending plan for the production of a consumable product over a predetermined interval of time.
- the method applies, by the computer, one or more constraints to each of the one or more inputs.
- the one or more constraints are applied by the computer to generate an optimized blending plan that minimizes costs and complexity associated with the production of the consumable product while maximizing quality.
- Embodiments are provided for optimizing a blending plan for concentrated consumable products.
- One or more inputs associated with a blending plan for the production of a concentrated consumable product over a predetermined interval of time may be received by a computer.
- the computer may then be utilized to apply one or more constraints to each of the one or more inputs to optimize the blending plan for the concentrated consumable product over the predetermined interval of time.
- the one or more constraints may be utilized for minimizing costs and complexity associated with the production of a concentrated consumable product while maximizing quality.
- a computer system for optimizing a blending plan for concentrated consumable products may include a memory for storing executable program code and a processor, functionally coupled to the memory.
- the processor may be responsive to computer-executable instructions contained in the program code.
- the processor may be operative to receive one or more inputs associated with the blending plan for the concentrated consumable product over a rolling monthly time interval and apply, by the computer, one or more constraints to each of the one or more inputs to optimize the blending plan for the concentrated consumable product.
- the one or more constraints are utilized to enforce one or more of a plurality of bounds for minimizing costs and complexity associated with the production of a concentrated consumable product while maximizing quality.
- Embodiments are provided for optimizing a blending plan for not-from- concentrate consumable products.
- One or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval may be received by a computer.
- the computer may then be utilized to apply one or more constraints to each of the one or more inputs.
- the computer may then be utilized to assess one or more penalties in a function which includes the inputs and the constraints.
- the function may be utilized to generate an optimized blending plan which minimizes costs and complexity associated with the production of the consumable product while maximizing quality.
- a computer system for optimizing a blending plan for not-from-concentrate (NFC) consumable products may include a memory for storing executable program code and a processor, functionally coupled to the memory.
- the processor may be responsive to computer-executable instructions contained in the program code.
- the processor may also be operative to receiving one or more inputs associated with a blending plan for the production of an NFC consumable product over one or more weekly time intervals and applying one or more constraints to each of the one or more inputs.
- the processor may assess one or more penalties in an objective function comprising the one or more inputs and the one or more constraints.
- the objective function may use the one or more constraints and the one or more penalties to generate an optimized blending plan which minimizes costs and complexity associated with the production of the NFC consumable product while maximizing quality.
- FIGURE 1 is a block diagram illustrating a network architecture for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments
- FIGURE 2 is a block diagram illustrating various blending plan inputs utilized in optimizing a blending plan for concentrated consumable products, in accordance with various embodiments;
- FIGURE 3 is a block diagram illustrating constraint data utilized in optimizing a blending plan for concentrated consumable products, in accordance with various embodiments;
- FIGURE 4 is a block diagram illustrating a computing environment which may be utilized for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments;
- FIGURE 5 is a flow diagram illustrating a routine for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments.
- FIGURE 6 is a graphical representation of an objective function and constraints utilized by a model formulation to optimize a blending plan for concentrated consumable products, in accordance with an embodiment.
- FIGURE 7 is a block diagram illustrating a network architecture for optimizing a blending plan for NFC consumable products, in accordance with various embodiments
- FIGURE 8 is a block diagram illustrating various blending plan inputs utilized in optimizing a blending plan for NFC consumable products, in accordance with various embodiments
- FIGURE 9 is a block diagram illustrating constraint data utilized in optimizing a blending plan for NFC consumable products, in accordance with various embodiments.
- FIGURE 10 is a block diagram illustrating a computing environment which may be utilized for optimizing a blending plan for NFC consumable products, in accordance with various embodiments;
- FIGURE 11 is a flow diagram illustrating a routine for optimizing a blending plan for NFC consumable products, in accordance with various embodiments.
- FIGURE 12 is a graphical representation of an objective function and constraints utilized by a model formulation to optimize a blending plan for NFC consumable products, in accordance with an embodiment.
- Embodiments are provided for optimizing a blending plan for concentrated consumable products.
- One or more inputs associated with a blending plan for the production of a concentrated consumable product over a predetermined interval of time may be received by a computer.
- the computer may then be utilized to apply one or more constraints to each of the one or more inputs to optimize the blending plan for the concentrated consumable product over the predetermined interval of time.
- the one or more constraints may be utilized for minimizing costs and complexity associated with the production of a concentrated consumable product while maximizing quality.
- FIGURE 1 is a block diagram illustrating a network architecture for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments.
- the network architecture includes a user 2 in communication with an application server 30 and database servers 40 and 60, through firewall 85 and network switch 90.
- the user 2 may comprise a user of a networked client computing device for executing optimizer application 35 which is hosted by the application server 30.
- the optimizer application 35 may be utilized for generating an optimized blending plan 37 for concentrated consumable products over a user- configurable interval of time (i.e., a blending plan period).
- the optimizer application 35 may utilize blending plan inputs 50 (which may be stored on the database server 40) and apply constraint data 70 (which may be stored on the database server 60) to generate the optimized blending plan 37.
- a concentrated consumable product includes a liquid food or beverage which is made from a concentrate.
- a concentrate is a form of substance which has had the majority of an intermediate product (e.g., a base component such as a solvent) removed. Typically this will be the removal of water from a solution or suspension such as the removal of water from fruit juice.
- a base component such as a solvent
- One benefit of producing a concentrate is that of a reduction in weight and volume for transportation as the concentrate can be re-constituted at the time of usage by the addition of the solvent.
- concentrated consumable products may include, but are not limited to, fruit juices (e.g., orange juice, apple juice, etc.), liquid dairy products (e.g., milk) and liquid food products (e.g., yogurt, soup, etc.). It should be understood that the optimizer application 35 may also be utilized to optimize blending plans for other types of concentrated consumable products without departing from the spirit and scope of the embodiments described herein.
- fruit juices e.g., orange juice, apple juice, etc.
- liquid dairy products e.g., milk
- liquid food products e.g., yogurt, soup, etc.
- FIGURE 2 is a block diagram illustrating various inputs in the blending plan inputs 50 which may be utilized in optimizing a blending plan for concentrated consumable products, in accordance with various embodiments.
- the blending plan inputs 50 may include time interval data 51, component raw material attributes 52, component supply data 54, finished product ID data 56 and intermediate product data 58.
- the time interval data 51 may include a blending plan time interval for a concentrated consumable product.
- the blending plan time interval may comprise a rolling monthly blend plan associated with the blending of various components utilized in the production of a concentrated consumable product such as a fruit juice. It should be understood however, that the blending plan time interval in the time interval data 51 is user-configurable and thus not limited to solely monthly blend plans. Thus, it may be envisioned that other time intervals (e.g., weekly, annually, etc.) may also be selected in accordance with the various embodiments described herein.
- the component raw material attributes 52 may include various attribute specifications for a concentrated consumable product.
- the attribute specifications for a concentrated juice product may include, without limitation, Brix (i.e., the sugar content of an aqueous solution), citric acid, Brix acid ratio, Vitamin C, color score, viscosity, limonin, flavor and varietal (e.g., the varieties of a fruit making up a finished concentrated juice product).
- Brix i.e., the sugar content of an aqueous solution
- citric acid i.e., Brix acid ratio
- Vitamin C i.e., the color score
- viscosity limonin
- flavor and varietal e.g., the varieties of a fruit making up a finished concentrated juice product
- the component supply data 54 may include one or more suppliers which are contracted to supply the various components utilized in blending a concentrated consumable product over the blending plan time interval.
- the components e.g., fruit
- a concentrated fruit e.g., orange
- the component supply data 54 may include one or more suppliers which are contracted to supply the various components utilized in blending a concentrated consumable product over the blending plan time interval.
- the components e.g., fruit
- a concentrated fruit e.g., orange
- the component supply data 54 may include one or more suppliers which are contracted to supply the various components utilized in blending a concentrated consumable product over the blending plan time interval.
- the components e.g., fruit
- a concentrated fruit e.g., orange
- the finished product ID data 56 may include the identification of one or more concentrated consumable products generated from the blending of various components.
- finished product ID data for a blended concentrated fruit juice may include a frozen concentrate orange juice product, a chilled orange juice product, or a restaurant-branded orange juice product (among others).
- the intermediate product data 58 may include a listing of various intermediate products (e.g., a pre-blended concentrate) which may be blended with other components in the production of a concentrated consumable product.
- an intermediate product e.g., a base
- a fruit juice may consist of chilled orange juice.
- blending plan inputs 50 may be utilized in a number of production scenarios in the blending of a concentrated consumable product.
- a concentrated consumable product may be made from various combinations (and various amounts) of intermediate products and other components to achieve a desired product.
- a concentrated fruit juice product may be made from one intermediate product, one or more blended juice components and one or more (pure) juice components.
- FIGURE 3 is a block diagram illustrating the constraint data 70 utilized in optimizing a blending plan for concentrated consumable products, in accordance with various embodiments.
- the constraint data 70 may include a quality constraint 72, a component constraint 74, a raw material constraint 75, a supply constraint 76, a demand constraint 78, a balance constraint 80, a capacity constraint 82 and a business rules constraint 84.
- the quality constraint 72 may include upper and lower quality bounds (i.e., a quality range) for a concentrated consumable product in order to enforce finished product and component quality over a blending plan time interval.
- the quality bounds may be applied to various input component raw material attributes (including intermediate product raw material attributes) for a concentrated consumable product.
- quality bounds may be enforced for the following raw material attributes for a concentrated fruit juice and/or concentrated fruit juice base component: acid- Brix ratio (upper and lower bounds), color (upper and lower bounds), Vitamin C (lower bound), flavor (lower bound), limonin (upper and lower bounds) and viscosity (upper and lower bounds).
- the component constraint 74 may include upper and lower component bounds (i.e., a range) for a concentrated consumable product in order to enforce the quantity of various components (including intermediate products) utilized in blending over a blending plan time interval.
- upper and lower component bounds may be enforced for various fruit juices and fruit juice bases (i.e., pre-blended concentrates) utilized in the blending of a concentrated fruit juice.
- the raw material constraint 75 may include minimum and maximum requirements associated with one or more categories of raw materials utilized in blending a concentrated consumable product.
- the supply constraint 76 may include minimum and maximum end supply requirements (for each of one or more suppliers) for the storage components which are utilized in the production of a concentrated consumable product.
- the supply constraint 76 may also include minimum supply requirements (for each of one or more suppliers) for each component utilized in the blending of a concentrated consumable product.
- the supply constraint 76 may define minimum supply requirements for each of a number of different types of orange juice utilized in the production of a concentrated orange juice.
- the demand constraint 78 may include various component requirements (for each of one or more concentrated consumable products) including a requirement that the demand for components (including an intermediate product) used in a concentrated consumable product be greater than or equal to the demand for the product itself.
- the balance constraint 80 may include a requirement for enforcing component conservation for components utilized in the production of a concentrated consumable product for each of one or more suppliers over a blending plan time interval.
- a component conservation requirement may provide that the components used in a concentrated consumable product plus the components sent to storage must equal a current component supply plus a stored component supply for the last blending plan time interval.
- the capacity constraint 82 may include a requirement for enforcing capacity limitations on various components utilized in the blending of a concentrated consumable product.
- Example capacity limitations may include making sure that a component used for a blended concentrated consumable product is less than or equal to a blender capacity, blender component bounds (e.g., the number of different components used in the blending of a concentrated consumable product is less than or equal to a blender component bound), a product component bound (e.g., the number of intermediate products, blended components and unblended components used for a concentrated consumable product is less than or equal to a product component bound), an intermediate product bound and a supplier limitation (e.g., a component sent from a supplier to a storage tank multiplied by a load-out factor is less than or equal to a load-out capacity).
- blender component bounds e.g., the number of different components used in the blending of a concentrated consumable product is less than or equal to a blender component bound
- a product component bound e.g
- the business rules constraint 84 may include various requirements including, but not limited to: limiting an amount of low quality components utilized in the blending of concentrated consumable products, utilizing only specified components (e.g., specific types of orange juices) in the blending of a concentrated consumable product, defining whether or not blended components may be utilized for a concentrated consumable product, blending ratios for components utilized in a concentrated consumable product and grade requirements.
- Exemplary Operating Environment Referring now to FIGURE 4, the following discussion is intended to provide a brief, general description of a suitable computing environment in which various illustrative embodiments may be implemented. While various embodiments will be described in the general context of program modules that execute in conjunction with program modules that run on an operating system on a computing device, those skilled in the art will recognize that the various embodiments may also be implemented in combination with other types of computer systems and program modules.
- program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types.
- program modules may be located in both local and remote memory storage devices.
- FIGURE 4 shows the server 30 which may comprise a computing device 3 which includes at least one central processing unit 8 ("CPU"), a system memory 12 (including a random access memory 18 (“RAM”) and a read-only memory (“ROM”) 20) and a system bus 10 that couples the memory to the CPU 8.
- CPU central processing unit
- RAM random access memory
- ROM read-only memory
- the server 30 further includes a mass storage device 14 for storing an operating system 32, the optimizer application 35 and an optimized blending plan 37, which is generated by the optimizer application 35.
- the operating system 32 may be suitable for controlling the operation of a networked computer.
- the mass storage device 14 is connected to the CPU 8 through a mass storage controller (not shown) connected to the bus 10.
- the mass storage device 14 and its associated computer-readable media provide nonvolatile storage for the computing device 3.
- the term computer-readable media as used herein may include computer storage media.
- Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.
- Computer storage media may include, but is not limited to, RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store information and which can be accessed by the computing device 3. Any such computer storage media may be part of the computing device 3.
- Computer-readable media may also include communication media.
- Communication media may be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media.
- modulated data signal may describe a signal that has one or more characteristics set or changed in such a manner as to encode information in the signal.
- communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.
- RF radio frequency
- the server 30 may operate in a networked environment using logical connections to remote computers through a network 4 which may include a local network or a wide area network (e.g., the Internet).
- the server 30 may connect to the network 4 through a network interface unit 16 connected to the bus 10. It should be appreciated that the network interface unit 16 may also be utilized to connect to other types of networks and remote computing systems.
- the server 30 may also include the input/output controller 22 for receiving and processing input from a number of input types, including, but not limited to, a keyboard, mouse, pen, stylus, finger, and/or other means (not shown).
- FIGURE 5 is a flow diagram illustrating a routine 500 for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments.
- routine 500 for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments.
- the logical operations of various embodiments of the present invention are implemented (1) as a sequence of computer implemented acts or program modules running on a computing system and/or (2) as interconnected machine logical circuits or circuit modules within the computing system. The implementation is a matter of choice dependent on the performance requirements of the computing system implementing the invention.
- the routine 500 begins at operation 505, where the optimizer application 35, executing on the application server 30, receives component raw material attributes utilized in producing a concentrated consumable product over a predetermined interval of time (e.g., a rolling monthly time interval).
- the optimizer application 35 may retrieve the component raw material attributes 52 from the blending plan inputs 50 stored on the database server 40.
- routine 500 continues to operation 510, where the optimizer application 35 executing on the application server 30 may receive component supply data (which may include quantities of various components provided by one or more suppliers) which are utilized in the blending of the concentrated consumable product.
- the optimizer application 35 may retrieve the component supply data 54 from the blending plan inputs 50 stored on the database server 40.
- the routine 500 continues to operation 515, where the optimizer application 35 executing on the application server 30 may receive finished product ID data which identifies the concentrated consumable product produced from the blending of various components.
- the optimizer application 35 may retrieve the finished product ID data 56 from the blending plan inputs 50 stored on the database server 40.
- routine 500 continues to operation 520, where the optimizer application 35 executing on the application server 30 may receive intermediate product data which may be utilized in combination with one or more blended components in the blending of the concentrated consumable product.
- the optimizer application 35 may retrieve the intermediate product data 58 from the blending plan inputs 50 stored on the database server 40.
- the routine 500 continues to operation 525, where the optimizer application 35 executing on the application server 30 may enforce a quality bound associated with product quality for the blended concentrated consumable product.
- the optimizer application 35 may apply the quality constraint 72 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the quality bound.
- the routine 500 continues to operation 530, where the optimizer application 35 executing on the application server 30 may enforce a component bound associated with the blending of various components comprising the concentrated consumable product.
- the optimizer application 35 may apply the component constraint 74 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the component bound.
- the routine 500 continues to operation 533, where the optimizer application 35 executing on the application server 30 may enforce a raw material bound which is associated with one or more categories of raw materials utilized in blending the concentrated consumable product.
- the optimizer application 35 may apply the raw material constraint 75 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the raw material bound.
- the routine 500 continues to operation 535, where the optimizer application 35 executing on the application server 30 may enforce supply requirements for components utilized in blending the concentrated consumable product.
- the optimizer application 35 may apply the supply constraint 76 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the supply requirements.
- the routine 500 continues to operation 540, where the optimizer application 35 executing on the application server 30 may enforce demand requirements for components utilized in blending the concentrated consumable product.
- the optimizer application 35 may apply the demand constraint 78 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the component demand requirement.
- the routine 500 continues to operation 545, where the optimizer application 35 executing on the application server 30 may enforce product and component conservation requirements.
- the product and component conservation requirements may be utilized to balance produced and stored quantities of the concentrated consumable product with a supply of components (utilized in blending the concentrated consumable product) stored over at least a present and a previous interval of time.
- the optimizer application 35 may apply the balance constraint 80 stored on the database server 60 to the blending plan inputs 50 to enforce the product and component conservation requirements.
- the routine 500 continues to operation 550, where the optimizer application 35 executing on the application server 30 may enforce a capacity bound associated with capacity limitations of blenders and suppliers with respect to various components utilized in blending the concentrated consumable product.
- the optimizer application 35 may apply the capacity constraint 82 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the capacity bound.
- the routine 500 continues to operation 555, where the optimizer application 35 executing on the application server 30 may enforce one or more business rules associated with blending requirements for producing the concentrated consumable product.
- the optimizer application 35 may apply the business rules constraint 84 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the business rules.
- the routine 500 continues to operation 560, where the optimizer application 35 executing on the application server 30 may call an objective function for receiving the blending plan inputs 50 (discussed above with respect to operations 505-520) and the constraint data 70 (discussed above with respect to operations 525-555).
- routine 500 continues to operation 565, where the optimizer application 35 executing on the application server 30 may optimize the objective function to minimize costs associated with the production of the concentrated consumable product or alternatively, to minimize deviations from a target quality associated with the production of the concentrated consumable product. From operation 565, the routine 500 then ends.
- the optimizer application 35 may utilize an objective function (i.e., a mathematical model formulation) to generate an optimized blending plan which minimizes costs and violation of business rules or, alternatively, minimizes deviation quality targets and violation of business rules, associated with the production of a concentrated consumable product.
- an objective function i.e., a mathematical model formulation
- objection function may be utilized to minimize the following costs: solid material costs (i.e., per unit costs for raw materials from a supplier at a time interval), processing fees (i.e., per unit processing fees for raw materials from a supplier at a time interval), blending costs (i.e., per unit blending costs at a blender from another supplier), own blending costs (i.e., per unit blending costs at a blender from the blender's own supplier), base costs (i.e., per unit intermediate product manufacturing costs at a blender from another supplier), own base costs (i.e., per unit intermediate product manufacturing costs at a blender from the blender's own supplier) and transportation costs (i.e., per unit transportation costs from a supplier to a blender).
- solid material costs i.e., per unit costs for raw materials from a supplier at a time interval
- processing fees i.e., per unit processing fees for raw materials from a supplier at a time interval
- blending costs i.e., per unit blending costs at a blender from
- an infeasibility penalty may be also be applied to the objective function to insure the feasibility of achieving the objectives associated with an optimized blending plan.
- a "penalty" is a mathematical device (which may encompass any number of variables) for optimizing a blending plan.
- a feasible blending plan is one in which one or more possible solutions to the objection function obeys the applied constraints.
- the objective function may be utilized to optimize concentrated consumable product quality by minimizing deviations from target attributes (e.g., flavor) for a concentrated consumable product over a time interval. It should be understood that the objective function may minimize primary and secondary positive and negative deviations for an attribute.
- FIGURE 6 is a graphical representation of an objective function and constraints utilized by a model formulation to optimize a blending plan 600 for concentrated consumable products, in accordance with an embodiment.
- lines 602, 604 and 606 comprise constraints (e.g. requirements) and circles 608, 610, 612, 614, 616, 618, 620, 622, 624, 626 and 628 comprise possible solutions to the objective function in the above-described model formulation.
- the objective function is maximized by finding a solution (i.e., a circle) that is inside of all of the constraints 602, 604 and 606 (i.e., a solution which obeys each of the constraints).
- Circles that are within the constraints 602, 604 and 606 are feasible solutions while circles outside of the constraints 602, 604 and 606 are infeasible.
- the circle (i.e., solution) 614 is optimal since it lies within each of the constraints 602, 604 and 606 and is the point that maximizes the objective function.
- the use of the penalties, discussed, is also referred to as multi-criteria optimization. It should further be appreciated that aforementioned penalties may be user-configurable values which may be determined via experimentation by a decision-maker involved in creating a concentrated consumable product blending plan.
- FJ set of raw materials associated with business rules
- RJ set of raw materials associated with business rules
- PV set of possible product and raw material category combinations
- VQ set of possible raw material category and attribute combinations
- DBP set of possible blender and intermediate product links
- NM number of time intervals (periods)
- TransportationCost sd [ ⁇ s,d> G SDJ: Per unit transportation cost from supplier s to blender d
- Carried inventory flow amount of carried raw material j at supplier s from time interval m- 1 to m
- ⁇ Xsp + ⁇ Xsdbp + ⁇ Xsdp + Xs m Supply s v q sn m c + Xs ⁇ , Vs, v,j, q, sn, m, c p d,b,p d,p
- ⁇ Xsp + ⁇ Xsdbp + ⁇ Xsdp + Xs m Supply s v q sn m c + Xs ⁇ , Vs, v,j, q, sn, m, c p d,b,p d,p
- Embodiments are provided for optimizing a blending plan for not-from- concentrate ("NFC") consumable products.
- One or more inputs associated with a blending plan for the production of an NFC consumable product over a predetermined time interval may be received by a computer.
- the computer may then be utilized to apply one or more constraints to each of the one or more inputs.
- the computer may then be utilized to assess one or more penalties in a function which includes the inputs and the constraints.
- the function may be utilized to generate an optimized blending plan which minimizes costs and complexity associated with the production of the NFC consumable product while maximizing quality.
- FIGURE 7 is a block diagram illustrating a network architecture for optimizing a blending plan for NFC consumable products, in accordance with various embodiments.
- the network architecture includes a user 702 in communication with an application server 730 and database servers 740 and 761, through firewall 796 and network switch 798.
- the user 702 may comprise a user of a networked client computing device for executing optimizer application 735 which is hosted by the application server 730.
- the optimizer application 735 may be utilized for generating an optimized blending plan 737 for NFC consumable products over a user- configurable time interval (i.e., a blending plan period).
- NFC liquid food and beverage products consistent with the various embodiments described herein may include, without limitation, fruit juices (e.g., orange juice, apple juice, etc.) such as the SIMPLY brand of NFC fruit juices which are marketed by THE COCA-COLA COMPANY of Atlanta, Georgia, liquid dairy products (e.g., milk) and liquid food products (e.g., yogurt, soup, etc.). It should be understood that the optimizer application 735 may also be utilized to optimize blending plans for other types of consumable products without departing from the spirit and scope of the embodiments described herein.
- the optimizer application 735 may utilize blending plan inputs 750 (which may be stored on the database server 740) and apply constraint data 780 (which may be stored on the database server 761) to generate the optimized blending plan 737.
- blending plan inputs may also be referred to as blending plan input data.
- the optimizer application 735 may utilize a mathematical model formulation comprising an objective function which may assess various "penalties" to ensure that various requirements needed to ensure optimization are met.
- a "penalty” is a mathematical device (which may encompass any number of variables) for optimizing a blending plan for an NFC consumable product.
- a penalty may be assessed for using a stored fruit juice during a harvesting season (i.e., "in-season") when fresh fruit juice is readily available, a penalty may be assessed for overproduction (thereby violating demand requirements for various component juices utilized in blending), and a penalty may be assessed based on the flow of a juice component (i.e., a fruit juice mixed with other fruit juices to produce a blended NFC fruit juice) from either a tank storage or a supplier to a blending plant during a blending time interval. It should be understood that similar penalties may be assessed for NFC consumable products other than fruit juices without departing from the spirit and scope of the various embodiments described herein.
- a juice component i.e., a fruit juice mixed with other fruit juices to produce a blended NFC fruit juice
- FIGURE 8 is a block diagram illustrating various inputs in the blending plan inputs 750 which may be utilized in optimizing a blending plan for NFC consumable products, in accordance with various embodiments.
- the blending plan inputs 750 may include time interval data 751, component raw material attributes 752, component supply data 754, inventory data 756, component age data 758, quality targets data 760, component targets data 762, blended component targets 764, cost structure data 766, storage capacity data 768, node indicator data 770, plant ID data 772, load-out capacity data 774, transportation network data 776 and supplier component usage data 778.
- the time interval data 751 may include a blending plan time interval for an NFC consumable product.
- the blending plan time interval may comprise various units of time with the smallest interval consisting of one week.
- each blending plan time interval may be a weekly time interval.
- the optimized blending plan may consist of a rolling sixty-five week blend plan. It should be understood that in accordance with the embodiments described herein, annual, six week and weekly blend plans may be produced. It should further be understood that the results of the blending plan optimization discussed herein may be aggregated into weekly, monthly and quarterly totals to support research and development, procurement and supply chain activities.
- the component raw material attributes 752 may include various attribute specifications for an NFC consumable product.
- the attribute specifications for an NFC juice product may include, without limitation, Brix (i.e., the sugar content of an aqueous solution), citric acid, Brix acid ratio, centrifuge pulp, Vitamin C, percent recovered oil, color score, defects score, limonin, flavor and varietal percentages (e.g., the percentages of various fruit juice varieties making up a finished NFC juice product).
- Brix i.e., the sugar content of an aqueous solution
- citric acid i.e., the sugar content of an aqueous solution
- Brix acid ratio i.e., the sugar content of an aqueous solution
- centrifuge pulp e.g., the percentage recovered oil
- color score e.g., percent recovered oil
- defects score e.g., limonin
- flavor and varietal percentages e.g., the percentages of various fruit juice varieties making up a finished N
- the component supply data 754 may include one or more suppliers which are contracted to supply the various components utilized in blending an NFC consumable product over the blending plan time interval.
- the components (e.g., fruit) utilized in blending an NFC fruit (e.g., orange) juice may consist of a projected number of gallons per month for each of multiple fruit juices provided by various suppliers located in different geographical locations.
- the inventory data 756 may include an initial inventory of storage components (e.g., gallons of a stored liquid) utilized in blending an NFC consumable product per storage tank.
- an initial inventory of storage components e.g., gallons of a stored liquid
- the component age data 758 may include a stored age of one or more components utilized in blending an NFC consumable product. It should be understood, in accordance with generating an optimized blending plan in accordance with the embodiments described herein, that the storage of a component utilized in an NFC consumable product may not exceed a maximum storage time (e.g., sixty-five weeks).
- the quality targets data 760 may include finished goods quality targets for NFC consumable products.
- finished goods quality targets may include Brix targets, Brix acid ratio targets, centrifuge pulp percent targets, Vitamin C targets, percent recovered oil targets, a color score targets, a defects score minimum, flavor targets and limonin targets.
- other finished goods quality targets corresponding to the production of different types of NFC consumable products (e.g., liquid food and dairy products) may also be utilized without departing from the spirit and scope of the various embodiments described herein.
- the component targets data 762 may include finished goods component targets for NFC consumable products.
- finished goods component targets may include target percentages for different varieties of orange juice utilized in blending an NFC orange juice product.
- the finished goods and component targets may also include percentages of fresh juice with respect to each of one or more varieties of orange juice utilized in blending the NFC orange juice product.
- other finished goods component targets corresponding to the production of different types of NFC consumable products (e.g., liquid food and dairy products) may also be utilized without departing from the spirit and scope of the various embodiments described herein
- the blended component targets 764 may include data identifying a maximum number of blended components at a blending facility utilized for blending an NFC consumable product.
- the data may include data for various stored components in various tank farms as well as fresh and stored components from various suppliers.
- the cost structure data 766 may include various costs associated with the production of a blended NFC consumable product from various components.
- the costs may include solid costs (e.g., dollars per gallon) associated with obtaining each of a number of different components (e.g., dollars per gallon) from suppliers, processing costs (e.g., dollars per gallon) associated with processing each of a number of different components from suppliers, storage costs (e.g., dollars per gallon) associated with storing components at various tank farms, transportation costs (e.g., dollars per gallon) associated with transporting components from a source (e.g., a supplier) to a plant for blending and production costs associated with blending the NFC consumable product at each of one or more plants utilized for blending.
- solid costs e.g., dollars per gallon
- processing costs e.g., dollars per gallon
- storage costs e.g., dollars per gallon
- transportation costs e.g., dollars per gallon
- the storage capacity data 768 may include data associated with contracted and to be purchases storage capacity at one or more tank farms utilized to store various components which are utilized in the production of a blended NFC consumable product.
- storage capacity data may include various tank farm IDs as well as the names and locations of the tank farms.
- the node indicator data 770 may include data for determining the application of business rules such as when a refill of available storage capacity is needed for contracted and/or to be purchased components which are utilized in the production of a blended NFC consumable product.
- the plant ID data 772 may include plant IDs for the names of various blending plants utilized in producing a blended NFC consumable product.
- the load-out capacity data 774 may include various capacities associated with the loading of components utilized in the production of a blended NFC consumable product, between one or more of a tank farm and a plant, a processor and a plant, a port and a tank farm, and a port and a plant.
- the load-out capacity for a stored or fresh component e.g., fresh fruit juice
- gallons/weeks truck loads.
- the transportation network data 776 may include routing information for transporting various components utilized in the production of a blended NFC consumable product, between a port and one or more tank farms, a processor and one or more tank farms, and one more tank farms and blending plants. For example, there may be two transportation routes between a port and tank farms, four routes between a processor and tank farms and twenty- five routes between tank farms and blending plants.
- the supplier component usage data 778 may include a total quantity of one or more components (e.g., juice) utilized in the production of a blended NFC consumable product, used from a supplier. It should be understood that there may be a minimum component usage requirement (i.e., in gallons) associated with each supplier.
- components e.g., juice
- a minimum component usage requirement i.e., in gallons
- the blending plan inputs 750 may be utilized in a number of production scenarios in the blending of an NFC consumable product.
- an NFC consumable product may be made from various combinations (and various amounts) of components to achieve a desired product.
- FIGURE 9 is a block diagram illustrating the constraint data 780 utilized in optimizing a blending plan for NFC consumable products, in accordance with various embodiments.
- the constraint data 780 may include quality/component constraints 782, supply/demand constraints 784, balance constraints 786, capacity constraints 788, varietal bounds such as varietal constraints 790, age/seasonal restrictions such as age/seasional constraints 792, and business rules constraints 794.
- the quality/component constraints 782 may include quality targets (i.e., a quality range) component targets for an NFC consumable product in order to enforce finished product and component quality over a blending plan time interval.
- quality targets may be enforced for the following raw material attributes for an NFC fruit juice (i.e., the finished product): Brix, acid-Brix ratio, color, Vitamin C, pulp and limonin.
- targets may be enforced for various stored and fresh fruit juices utilized in the blending of an NFC fruit juice (i.e., the finished product).
- the supply/demand constraints 784 may include minimum and maximum requirements (for each of one or more suppliers) for various components which are utilized in the production of an NFC consumable product.
- a sourcing requirement for a fruit juice may consist of the sum of fresh juice in production and fresh juice sent to storage is less than or equal to a total juice supply.
- a minimum supply requirement for a fruit juice may consist of the sum of fresh juice in production and fresh juice sent to storage being greater than or equal to a minimum juice supply.
- a minimum usage requirement for a fruit juice may consist of fresh juice in production being greater than or equal to a minimum usage of a fruit juice.
- a minimum requirement for a fruit juice for a supplier may consist of fresh juice in production being greater than or equal to a minimum fruit juice requirement.
- a demand requirement for a fruit juice may consist of the sum of fresh fruit in production and stored juice in production being greater than or equal to a fruit juice demand.
- a minimum carryover requirement (i.e., for each tank farm) for a fruit juice may consist of a fruit juice variety in the carry over juice being greater than a minimum inventory requirement.
- the balance constraints 786 may include a requirement for enforcing component conservation for components utilized in the production of an NFC consumable product.
- a component conservation requirement for a tank balance for a fruit juice may consist of a sum of juice carried over from a previous time period and newly stored juice in the tank being equal to a sum of juice carried over into the next time period and juice sent from a processing plant to the tank.
- Another example of a component conservation requirement for a tank balance for a fruit juice may consist of stored juice in a refillable tank (at each of one or more time periods) being equal to a sum of stored juice in the tank at a next time period and juice sent to a processing plan from the tank during the next time period.
- An example of a component conservation requirement for a tank farm balance for a fruit juice may consist of a sum of fresh juice carried over from a previous time period into a tank farm and newly stored juice in a tank farm being equal to a sum of juice carried over into a next time period from the tank farm and juice sent to a processing plant from the tank farm.
- the capacity constraints 788 may include a requirement for enforcing capacity limitations on a flow of various components utilized in the blending of an NFC consumable product.
- Example capacity limitations may include making sure that a newly stored component and/or any carried over components (i.e., carried over from a previous time interval) is less than or equal to a tank capacity for a predetermined time period, a newly stored component in a tank farm and a component carried over from a previous time interval is less than or equal to a tank farm capacity, a newly stored juice in a tank farm is less than or equal to a pasteurization capacity in the time interval, and juice from each of a supplier/plant and tank farm/plant combination over a time interval being less than or equal to a load out capacity.
- the varietal constraints 790 may include a requirement for enforcing varietal percentages for components in a blended NFC consumable product.
- Example varietal constraints may include percentages of a component in an NFC blended product going to a processing plant being greater than equal to a minimum requirement and less than or equal to a maximum requirement.
- the age/seasonal constraints 792 may include a requirement for enforcing varietal percentages for components in a blended NFC consumable product using fresh (instead of stored) components.
- the requirement may include a maximum age allowance for a fresh juice (i.e., juice stored in a storage tank may not exceed the maximum age allowance), a restriction against the use of stored juice from a tank when fresh juice is in-season, and a restriction against storing fresh juice in a tank.
- the business rules constraints 794 may include various requirements such as restricting the flow of components from predetermined tank farms or suppliers to predetermined blending plants.
- FIGURE 10 the following discussion is intended to provide a brief, general description of a suitable computing environment in which various illustrative embodiments may be implemented. While various embodiments will be described in the general context of program modules that execute in conjunction with program modules that run on an operating system on a computing device, those skilled in the art will recognize that the various embodiments may also be implemented in combination with other types of computer systems and program modules.
- program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types.
- program modules may be located in both local and remote memory storage devices.
- FIGURE 10 shows the server 730 which may comprise a computing device 703 which includes at least one central processing unit 708 ("CPU"), a system memory 712 (including a random access memory 718 (“RAM”) and a read-only memory (“ROM”) 720) and a system bus 710 that couples the memory to the CPU 708.
- CPU central processing unit
- ROM read-only memory
- the server 730 further includes a mass storage device 714 for storing an operating system 732, the optimizer application 735 and an optimized blending plan 737, which is generated by the optimizer application 735.
- the operating system 732 may be suitable for controlling the operation of a networked computer.
- the mass storage device 714 is connected to the CPU 708 through a mass storage controller (not shown) connected to the bus 710.
- the mass storage device 714 and its associated computer-readable media provide non- volatile storage for the computing device 703.
- the term computer-readable media as used herein may include computer storage media.
- Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.
- Computer storage media may include, but is not limited to, RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store information and which can be accessed by the computing device 703. Any such computer storage media may be part of the computing device 703.
- the term computer-readable media as used herein may also include communication media. Communication media may be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media.
- modulated data signal may describe a signal that has one or more characteristics set or changed in such a manner as to encode information in the signal.
- communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.
- RF radio frequency
- the server 730 may operate in a networked environment using logical connections to remote computers through a network 704 which may include a local network or a wide area network (e.g., the Internet).
- the server 730 may connect to the network 704 through a network interface unit 716 connected to the bus 710. It should be appreciated that the network interface unit 716 may also be utilized to connect to other types of networks and remote computing systems.
- the server 730 may also include the input/output controller 722 for receiving and processing input from a number of input types, including, but not limited to, a keyboard, mouse, pen, stylus, finger, and/or other means (not shown). Similarly, an input/output controller 722 may provide output to a display device 728 as well as a printer, or other type of output device (not shown).
- FIGURE 11 is a flow diagram illustrating a routine 800 for optimizing a blending plan for NFC consumable products, in accordance with various embodiments.
- routine 800 for optimizing a blending plan for NFC consumable products, in accordance with various embodiments.
- the logical operations of various embodiments of the present invention are implemented (1) as a sequence of computer implemented acts or program modules running on a computing system and/or (2) as interconnected machine logical circuits or circuit modules within the computing system.
- the implementation is a matter of choice dependent on the performance requirements of the computing system implementing the invention. Accordingly, the logical operations illustrated in FIGURE 11 and making up the various embodiments described herein are referred to variously as operations, structural devices, acts or modules.
- the routine 800 begins at operation 805, where the optimizer application 735, executing on the application server 730, receives the blending plan inputs 750 for an NFC consumable product.
- the blending plan inputs 750 may comprise various inputs associated with a blending plan for the production of a consumable product over a predetermined time interval.
- the routine 800 continues to operation 810, where the optimizer application 735 executing on the application server 730, may apply the constraint data 780 to the received blending plan inputs 750.
- the optimizer application 735 may utilize a mathematical model (i.e., a model formulation) to generate an optimized blending plan which minimizes costs and complexity associated with the production of an NFC consumable product while maximizing quality.
- the model formulation may comprise an objective function against which is applied several constraints.
- the optimizer application 735 may also utilize the aforementioned objective function to generate an optimized blending plan which minimizes deviation quality targets and the violation of business rules, associated with the production of an NFC consumable product.
- the objection function may be utilized to minimize processing costs (i.e., per unit processing fees for raw materials from a supplier at a time interval), solid costs (i.e., per unit costs for raw materials from a supplier at a time interval), transportation costs (i.e., per unit transportation costs from a supplier to a blender) and storage costs associated with the production of a blended NFC consumable product.
- the routine 800 continues to operation 815, where the optimizer application 735 executing on the application server 730, may assess penalties in an objective function (discussed above) which includes the blending plan inputs 750 and the constraint data 780, to generate an optimized blending plan for an NFC consumable product.
- the optimizer application 735 may utilize the aforementioned model formulation to assess various penalties to ensure that various requirements needed to ensure optimization objectives are met for producing blended NFC consumable products.
- a penalty may be assessed for using a stored component during a harvesting season (i.e., "in-season") when a fresh component (e.g., fresh fruit juice) is readily available, a penalty may be assessed for overproduction (thereby violating demand requirements for various component juices utilized in blending), a penalty may be assessed based on the flow of a component (i.e., a liquid mixed with other liquids to produce a blended NFC consumable product) from either a tank storage or a supplier to a blending plant during a blending time interval, and a penalty may be assessed for violating end supply and demand requirements associated with an optimized blended NFC consumable product.
- a component i.e., a liquid mixed with other liquids to produce a blended NFC consumable product
- the optimizer application 735 may also be utilized to optimize NFC consumable product quality by minimizing deviations from target attributes (e.g., flavor) for a concentrated consumable product over a time interval. It should be understood that the objective function may optimize positive and negative deviations for an attribute from a target quality objective at a plant over a period of time.
- target attributes e.g., flavor
- the objective function may optimize positive and negative deviations for an attribute from a target quality objective at a plant over a period of time.
- FIGURE 12 is a graphical representation of an objective function and constraints utilized by a model formulation to optimize a blending plan 900 for NFC consumable products, in accordance with an embodiment.
- lines 902, 904 and 906 comprise constraints (e.g. requirements) and circles 908, 910, 912, 914, 916, 918, 920, 922, 924, 926 and 928 comprise possible solutions to the objective function in the above-described model formulation.
- the objective function is maximized by finding a solution (i.e., a circle) that is inside of all of the constraints 902, 904 and 906 (i.e., a solution which obeys each of the constraints).
- Circles that are within the constraints 902, 904 and 906 are feasible solutions while circles outside of the constraints 902, 904 and 906 are infeasible.
- the circle (i.e., solution) 914 is optimal since it lies within each of the constraints 902, 904 and 906 and is the point that maximizes the objective function.
- the penalties discussed, is also referred to as multi-criteria optimization. It should further be appreciated that the aforementioned penalties may be user-configurable values which may be determined via experimentation by a decision-maker involved in creating an NFC consumable product blending plan.
- NFC consumable products The notation and equations for an illustrative optimization model formulation which optimizes a blending plan for NFC consumable products is shown below. It should be understood that the foregoing notation and equations may be applied to any number of NFC consumable products including, but not limited, of fruit juices (e.g., orange juice, apple juice, etc.), liquid dairy products (e.g., milk, etc.) and liquid food products (e.g., yogurt, soup, etc.).
- fruit juices e.g., orange juice, apple juice, etc.
- liquid dairy products e.g., milk, etc.
- liquid food products e.g., yogurt, soup, etc.
- sy supplier type; sy £ ⁇ Pi, P 2; P 3 ⁇ where Pi, P 2; P 3 are different supplier types
- j raw material ID (a batch of raw material with specific attributes and category composition)
- jy raw material types
- V set of raw material categories
- SW start time intervals set for stored raw material WW: first N periods set (where N can be any number)
- SPW set of possible load-outs from source s to plant p in time interval w
- FPVW set of possible load-outs of raw material category v from farm f to plant p in time interval w
- ZPW set of possible load-outs from port z to plant p in time interval w
- SYVJwCYW set of possible supply-raw material links ( S-SType-V-J-SW-C-JType-W)
- SYFVJwCYT supply-raw material-tank links within farm ( S-SType-V-J-SW-C-JType-T)
- SYFVJwCYTW set of possible supplier-material-tank links ( S-SType-F-V-J-SW-C-JType-T-W)
- VJwCYT set of possible stored varietal-juice-tank links (V-J-SW-C-JType-T)
- NW W number of periods in a time interval
- NWCatw number of periods in a time interval for a specific raw material category
- TankOpenPenalty tank open penalty
- ProcessingCostsjw [ ⁇ s, sy, v,j, sw, cjy, w> G Per gallon processing cost for raw material j SYVJwCYWj: from supplier s at time interval w
- Quality Objective Maximizing quality by minimizing the deviation from quality targets Min ⁇ ⁇ DevP qpw + DevN qpw ) * W q
- Prohibited Supply Chain Link [00111] Various embodiments are described above with reference to block diagrams and/or operational illustrations of methods, systems, and computer program products. The operations/acts noted in the blocks may be skipped or occur out of the order as shown in any flow diagram. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Factory Administration (AREA)
Abstract
A blending plan for concentrate and not-from-concentrate consumable products, such as liquid food and beverage products, may be optimized by utilizing a computing device executing a software algorithm. The computing device may receive inputs associated with a blending plan for the production of a consumable product over a predetermined time interval. The computing device may further apply constraints to each of the one or more inputs. An optimized blending plan may be generated using the applied constraints and the penalties, which minimizes costs and complexity associated with the production of the consumable product while maximizing quality.
Description
BLEND PLAN OPTIMIZATION FOR CONSUMABLE PRODUCTS
COPYRIGHT NOTICE
[0001] A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND
From Concentrate
[0002] Many food and beverage products are produced from a concentrate. A concentrate is a form of substance which has had the majority of its intermediate product (which in the case of a liquid is a solvent) removed. Typically, a concentrate is produced by the removal of water from a solution or suspension, such as the removal of water from fruit juice. One benefit of producing a concentrate is that of a reduction in weight and volume for transportation as the concentrate can be re-constituted at the time of usage by the addition of the solvent.
[0003] Developing a production plan for food and beverage products made from a concentrate presents unique challenges for a business unit manager. For example, the input material for fruit-based beverages (i.e., fruit) can be highly variable in available quantity, cost, and quality. As a further example, the available quantity, cost, and quality of fruit can depend on hurricane activity or if an early freeze occurs. Thus, the supply of available fruit for beverages can be highly variable across multiple geographic regions. Consumer demand and price sensitivity are also important aspects to consider in concentrated food and beverage production. In particular, the volume of a food or beverage produced should be sufficient to meet consumer demand at a price consumers will bear. In the production of concentrated food and beverage products, meeting consumer demand includes the blending optimization of various components so as to deliver consistent taste, texture and/or other properties. For example, a concentrated orange juice beverage may be blended from a variety of different types of juices with the blend or composition determining the overall taste, texture and other
properties of the resulting drink. Previous blending techniques do not necessarily allow the manufacturing process to be optimized in terms of utilizing raw materials to their fullest extent or in terms of maintaining a product having consistent component attribute profiles (e.g., taste, texture, shelf life and costs) despite variances in the supply of the components of the product. It is with respect to these considerations and others that the various embodiments of the present invention have been made.
Not-From-Concentrate
[0004] Developing a production plan which optimizes taste and cost for food and beverage products presents unique challenges for a business unit manager. For example, the production of not-from-concentrate ("NFC") blended liquid food and beverage products may require a business unit manager to address procurement, allocation and blending activities in view of available inventory and infrastructure limitations. Previous blending techniques do not necessarily allow the manufacturing process to be optimized in terms of utilizing components (i.e., raw materials) needed for blending to their fullest extent or in terms of maintaining a product having consistent component attribute profiles (e.g., taste, texture, shelf life and costs) despite variances in the supply and costs of the product components. It is with respect to these considerations and others that the various embodiments of the present invention have been made.
[0005] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended as an aid in determining the scope of the claimed subject matter.
SUMMARY
[0006] In an illustrative embodiment, a computer-implemented method of optimizing a blending plan for consumable products is described. The method receives, by a computer, one or more inputs associated with a blending plan for the production of a consumable product over a predetermined interval of time. The method applies, by the computer, one or more constraints to each of the one or more inputs. The one or more constraints are applied
by the computer to generate an optimized blending plan that minimizes costs and complexity associated with the production of the consumable product while maximizing quality.
From Concentrate
[0007] Embodiments are provided for optimizing a blending plan for concentrated consumable products. One or more inputs associated with a blending plan for the production of a concentrated consumable product over a predetermined interval of time may be received by a computer. The computer may then be utilized to apply one or more constraints to each of the one or more inputs to optimize the blending plan for the concentrated consumable product over the predetermined interval of time. The one or more constraints may be utilized for minimizing costs and complexity associated with the production of a concentrated consumable product while maximizing quality.
[0008] In another illustrative embodiment, a computer system for optimizing a blending plan for concentrated consumable products is described. The system may include a memory for storing executable program code and a processor, functionally coupled to the memory. The processor may be responsive to computer-executable instructions contained in the program code. The processor may be operative to receive one or more inputs associated with the blending plan for the concentrated consumable product over a rolling monthly time interval and apply, by the computer, one or more constraints to each of the one or more inputs to optimize the blending plan for the concentrated consumable product. The one or more constraints are utilized to enforce one or more of a plurality of bounds for minimizing costs and complexity associated with the production of a concentrated consumable product while maximizing quality.
Not-From-Concentrate
[0009] Embodiments are provided for optimizing a blending plan for not-from- concentrate consumable products. One or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval may be received by a computer. The computer may then be utilized to apply one or more constraints to each of the one or more inputs. The computer may then be utilized to assess one or more penalties in a
function which includes the inputs and the constraints. The function may be utilized to generate an optimized blending plan which minimizes costs and complexity associated with the production of the consumable product while maximizing quality.
[0010] In yet another illustrative embodiment, a computer system for optimizing a blending plan for not-from-concentrate (NFC) consumable products is described. The system may include a memory for storing executable program code and a processor, functionally coupled to the memory. The processor may be responsive to computer-executable instructions contained in the program code. The processor may also be operative to receiving one or more inputs associated with a blending plan for the production of an NFC consumable product over one or more weekly time intervals and applying one or more constraints to each of the one or more inputs. The processor may assess one or more penalties in an objective function comprising the one or more inputs and the one or more constraints. The objective function may use the one or more constraints and the one or more penalties to generate an optimized blending plan which minimizes costs and complexity associated with the production of the NFC consumable product while maximizing quality.
[0011] These and other features and advantages will be apparent from a reading of the following detailed description and a review of the associated drawings. It is to be understood that both the foregoing general description and the following detailed description are illustrative only and are not restrictive of the invention as claimed.
BRIEF DESCRIPTION OF THE DRAWINGS
From Concentrate
[0012] FIGURE 1 is a block diagram illustrating a network architecture for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments;
[0013] FIGURE 2 is a block diagram illustrating various blending plan inputs utilized in optimizing a blending plan for concentrated consumable products, in accordance with various embodiments;
[0014] FIGURE 3 is a block diagram illustrating constraint data utilized in optimizing a blending plan for concentrated consumable products, in accordance with various embodiments;
[0015] FIGURE 4 is a block diagram illustrating a computing environment which may be utilized for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments;
[0016] FIGURE 5 is a flow diagram illustrating a routine for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments; and
[0017] FIGURE 6 is a graphical representation of an objective function and constraints utilized by a model formulation to optimize a blending plan for concentrated consumable products, in accordance with an embodiment.
Not-From-Concentrate
[0018] FIGURE 7 is a block diagram illustrating a network architecture for optimizing a blending plan for NFC consumable products, in accordance with various embodiments;
[0019] FIGURE 8 is a block diagram illustrating various blending plan inputs utilized in optimizing a blending plan for NFC consumable products, in accordance with various embodiments;
[0020] FIGURE 9 is a block diagram illustrating constraint data utilized in optimizing a blending plan for NFC consumable products, in accordance with various embodiments;
[0021] FIGURE 10 is a block diagram illustrating a computing environment which may be utilized for optimizing a blending plan for NFC consumable products, in accordance with various embodiments;
[0022] FIGURE 11 is a flow diagram illustrating a routine for optimizing a blending plan for NFC consumable products, in accordance with various embodiments; and
[0023] FIGURE 12 is a graphical representation of an objective function and constraints utilized by a model formulation to optimize a blending plan for NFC consumable products, in accordance with an embodiment.
DETAILED DESCRIPTION
From Concentrate
[0024] Embodiments are provided for optimizing a blending plan for concentrated consumable products. One or more inputs associated with a blending plan for the production of a concentrated consumable product over a predetermined interval of time may be received by a computer. The computer may then be utilized to apply one or more constraints to each of the one or more inputs to optimize the blending plan for the concentrated consumable product over the predetermined interval of time. The one or more constraints may be utilized for minimizing costs and complexity associated with the production of a concentrated consumable product while maximizing quality.
[0025] In the following detailed description, references are made to the accompanying drawings that form a part hereof, and in which are shown by way of illustrations specific embodiments or examples. These embodiments may be combined, other embodiments may be utilized, and structural changes may be made without departing from the scope of the present invention. The following detailed description is therefore not to be taken in a limiting sense, and the scope of the present invention is defined by the appended claims and their equivalents.
[0026] Referring now to the drawings, in which like numerals represent like elements through the several figures, various aspects of the present invention will be described. FIGURE 1 is a block diagram illustrating a network architecture for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments. The network architecture includes a user 2 in communication with an application server 30 and database servers 40 and 60, through firewall 85 and network switch 90. In accordance with an embodiment, the user 2 may comprise a user of a networked client computing device for executing optimizer application 35 which is hosted by the application server 30. As will be described in greater detail herein, the optimizer application 35 may be utilized for generating an optimized blending plan 37 for concentrated consumable products over a user- configurable interval of time (i.e., a blending plan period). In accordance with an embodiment, the optimizer application 35 may utilize blending plan inputs 50 (which may be
stored on the database server 40) and apply constraint data 70 (which may be stored on the database server 60) to generate the optimized blending plan 37.
[0027] As defined herein, a concentrated consumable product includes a liquid food or beverage which is made from a concentrate. As is known to those skilled in the art, a concentrate is a form of substance which has had the majority of an intermediate product (e.g., a base component such as a solvent) removed. Typically this will be the removal of water from a solution or suspension such as the removal of water from fruit juice. One benefit of producing a concentrate is that of a reduction in weight and volume for transportation as the concentrate can be re-constituted at the time of usage by the addition of the solvent. Examples of concentrated consumable products consistent with the various embodiments described herein may include, but are not limited to, fruit juices (e.g., orange juice, apple juice, etc.), liquid dairy products (e.g., milk) and liquid food products (e.g., yogurt, soup, etc.). It should be understood that the optimizer application 35 may also be utilized to optimize blending plans for other types of concentrated consumable products without departing from the spirit and scope of the embodiments described herein.
[0028] FIGURE 2 is a block diagram illustrating various inputs in the blending plan inputs 50 which may be utilized in optimizing a blending plan for concentrated consumable products, in accordance with various embodiments. The blending plan inputs 50 may include time interval data 51, component raw material attributes 52, component supply data 54, finished product ID data 56 and intermediate product data 58.
[0029] The time interval data 51 may include a blending plan time interval for a concentrated consumable product. In accordance with an embodiment, the blending plan time interval may comprise a rolling monthly blend plan associated with the blending of various components utilized in the production of a concentrated consumable product such as a fruit juice. It should be understood however, that the blending plan time interval in the time interval data 51 is user-configurable and thus not limited to solely monthly blend plans. Thus, it may be envisioned that other time intervals (e.g., weekly, annually, etc.) may also be selected in accordance with the various embodiments described herein.
[0030] The component raw material attributes 52 may include various attribute specifications for a concentrated consumable product. For example, the attribute
specifications for a concentrated juice product may include, without limitation, Brix (i.e., the sugar content of an aqueous solution), citric acid, Brix acid ratio, Vitamin C, color score, viscosity, limonin, flavor and varietal (e.g., the varieties of a fruit making up a finished concentrated juice product). It should be appreciated by those skilled in the art that other attribute specifications corresponding to the production of different types of concentrated consumable products (e.g., liquid food products) may also be utilized without departing from the spirit and scope of the various embodiments described herein.
[0031] The component supply data 54 may include one or more suppliers which are contracted to supply the various components utilized in blending a concentrated consumable product over the blending plan time interval. For example, the components (e.g., fruit) utilized in blending a concentrated fruit (e.g., orange) juice may consist of a projected number of gallons per month for each of multiple fruit juices provided by various suppliers located in different geographical locations.
[0032] The finished product ID data 56 may include the identification of one or more concentrated consumable products generated from the blending of various components. For example, finished product ID data for a blended concentrated fruit juice may include a frozen concentrate orange juice product, a chilled orange juice product, or a restaurant-branded orange juice product (among others).
[0033] The intermediate product data 58 may include a listing of various intermediate products (e.g., a pre-blended concentrate) which may be blended with other components in the production of a concentrated consumable product. For example, an intermediate product (e.g., a base) for a fruit juice may consist of chilled orange juice.
[0034] It should be understood that the blending plan inputs 50 may be utilized in a number of production scenarios in the blending of a concentrated consumable product. In particular, a concentrated consumable product may be made from various combinations (and various amounts) of intermediate products and other components to achieve a desired product. For example, in accordance with an illustrative production scenario, a concentrated fruit juice product may be made from one intermediate product, one or more blended juice components and one or more (pure) juice components.
[0035] FIGURE 3 is a block diagram illustrating the constraint data 70 utilized in optimizing a blending plan for concentrated consumable products, in accordance with various embodiments. The constraint data 70 may include a quality constraint 72, a component constraint 74, a raw material constraint 75, a supply constraint 76, a demand constraint 78, a balance constraint 80, a capacity constraint 82 and a business rules constraint 84.
[0036] The quality constraint 72 may include upper and lower quality bounds (i.e., a quality range) for a concentrated consumable product in order to enforce finished product and component quality over a blending plan time interval. In accordance with an embodiment, the quality bounds may be applied to various input component raw material attributes (including intermediate product raw material attributes) for a concentrated consumable product. For example, quality bounds may be enforced for the following raw material attributes for a concentrated fruit juice and/or concentrated fruit juice base component: acid- Brix ratio (upper and lower bounds), color (upper and lower bounds), Vitamin C (lower bound), flavor (lower bound), limonin (upper and lower bounds) and viscosity (upper and lower bounds).
[0037] The component constraint 74 may include upper and lower component bounds (i.e., a range) for a concentrated consumable product in order to enforce the quantity of various components (including intermediate products) utilized in blending over a blending plan time interval. For example, upper and lower component bounds may be enforced for various fruit juices and fruit juice bases (i.e., pre-blended concentrates) utilized in the blending of a concentrated fruit juice.
[0038] The raw material constraint 75 may include minimum and maximum requirements associated with one or more categories of raw materials utilized in blending a concentrated consumable product.
[0039] The supply constraint 76 may include minimum and maximum end supply requirements (for each of one or more suppliers) for the storage components which are utilized in the production of a concentrated consumable product. The supply constraint 76 may also include minimum supply requirements (for each of one or more suppliers) for each component utilized in the blending of a concentrated consumable product. For example, the
supply constraint 76 may define minimum supply requirements for each of a number of different types of orange juice utilized in the production of a concentrated orange juice.
[0040] The demand constraint 78 may include various component requirements (for each of one or more concentrated consumable products) including a requirement that the demand for components (including an intermediate product) used in a concentrated consumable product be greater than or equal to the demand for the product itself.
[0041] The balance constraint 80 may include a requirement for enforcing component conservation for components utilized in the production of a concentrated consumable product for each of one or more suppliers over a blending plan time interval. For example, a component conservation requirement may provide that the components used in a concentrated consumable product plus the components sent to storage must equal a current component supply plus a stored component supply for the last blending plan time interval.
[0042] The capacity constraint 82 may include a requirement for enforcing capacity limitations on various components utilized in the blending of a concentrated consumable product. Example capacity limitations may include making sure that a component used for a blended concentrated consumable product is less than or equal to a blender capacity, blender component bounds (e.g., the number of different components used in the blending of a concentrated consumable product is less than or equal to a blender component bound), a product component bound (e.g., the number of intermediate products, blended components and unblended components used for a concentrated consumable product is less than or equal to a product component bound), an intermediate product bound and a supplier limitation (e.g., a component sent from a supplier to a storage tank multiplied by a load-out factor is less than or equal to a load-out capacity).
[0043] The business rules constraint 84 may include various requirements including, but not limited to: limiting an amount of low quality components utilized in the blending of concentrated consumable products, utilizing only specified components (e.g., specific types of orange juices) in the blending of a concentrated consumable product, defining whether or not blended components may be utilized for a concentrated consumable product, blending ratios for components utilized in a concentrated consumable product and grade requirements. Exemplary Operating Environment
[0044] Referring now to FIGURE 4, the following discussion is intended to provide a brief, general description of a suitable computing environment in which various illustrative embodiments may be implemented. While various embodiments will be described in the general context of program modules that execute in conjunction with program modules that run on an operating system on a computing device, those skilled in the art will recognize that the various embodiments may also be implemented in combination with other types of computer systems and program modules.
[0045] Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the various embodiments may be practiced with a number of computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. The various embodiments may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
[0046] FIGURE 4 shows the server 30 which may comprise a computing device 3 which includes at least one central processing unit 8 ("CPU"), a system memory 12 (including a random access memory 18 ("RAM") and a read-only memory ("ROM") 20) and a system bus 10 that couples the memory to the CPU 8. A basic input/output system containing the basic routines that help to transfer information between elements within the computer, such as during startup, is stored in the ROM 20. The server 30 further includes a mass storage device 14 for storing an operating system 32, the optimizer application 35 and an optimized blending plan 37, which is generated by the optimizer application 35.
[0047] In accordance with various embodiments, the operating system 32 may be suitable for controlling the operation of a networked computer. The mass storage device 14 is connected to the CPU 8 through a mass storage controller (not shown) connected to the bus 10. The mass storage device 14 and its associated computer-readable media provide nonvolatile storage for the computing device 3. The term computer-readable media as used
herein may include computer storage media. Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. Computer storage media may include, but is not limited to, RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store information and which can be accessed by the computing device 3. Any such computer storage media may be part of the computing device 3.
[0048] The term computer-readable media as used herein may also include communication media. Communication media may be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. The term "modulated data signal" may describe a signal that has one or more characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.
[0049] According to various embodiments, the server 30 may operate in a networked environment using logical connections to remote computers through a network 4 which may include a local network or a wide area network (e.g., the Internet). The server 30 may connect to the network 4 through a network interface unit 16 connected to the bus 10. It should be appreciated that the network interface unit 16 may also be utilized to connect to other types of networks and remote computing systems. The server 30 may also include the input/output controller 22 for receiving and processing input from a number of input types, including, but not limited to, a keyboard, mouse, pen, stylus, finger, and/or other means (not shown). Similarly, an input/output controller 22 may provide output to a display device 28 as well as a printer, or other type of output device (not shown).
[0050] FIGURE 5 is a flow diagram illustrating a routine 500 for optimizing a blending plan for concentrated consumable products, in accordance with various embodiments. When reading the discussion of the routines presented herein, it should be appreciated that the logical operations of various embodiments of the present invention are implemented (1) as a sequence of computer implemented acts or program modules running on a computing system and/or (2) as interconnected machine logical circuits or circuit modules within the computing system. The implementation is a matter of choice dependent on the performance requirements of the computing system implementing the invention. Accordingly, the logical operations illustrated in FIGURE 5 and making up the various embodiments described herein are referred to variously as operations, structural devices, acts or modules. It will be recognized by one skilled in the art that these operations, structural devices, acts and modules may be implemented in software, in firmware, in special purpose digital logical, and any combination thereof without deviating from the spirit and scope of the present invention as recited within the claims set forth herein.
[0051] The routine 500 begins at operation 505, where the optimizer application 35, executing on the application server 30, receives component raw material attributes utilized in producing a concentrated consumable product over a predetermined interval of time (e.g., a rolling monthly time interval). In particular, the optimizer application 35 may retrieve the component raw material attributes 52 from the blending plan inputs 50 stored on the database server 40.
[0052] From operation 505, the routine 500 continues to operation 510, where the optimizer application 35 executing on the application server 30 may receive component supply data (which may include quantities of various components provided by one or more suppliers) which are utilized in the blending of the concentrated consumable product. In particular, the optimizer application 35 may retrieve the component supply data 54 from the blending plan inputs 50 stored on the database server 40.
[0053] From operation 510, the routine 500 continues to operation 515, where the optimizer application 35 executing on the application server 30 may receive finished product ID data which identifies the concentrated consumable product produced from the blending of
various components. In particular, the optimizer application 35 may retrieve the finished product ID data 56 from the blending plan inputs 50 stored on the database server 40.
[0054] From operation 515, the routine 500 continues to operation 520, where the optimizer application 35 executing on the application server 30 may receive intermediate product data which may be utilized in combination with one or more blended components in the blending of the concentrated consumable product. In particular, the optimizer application 35 may retrieve the intermediate product data 58 from the blending plan inputs 50 stored on the database server 40.
[0055] From operation 520, the routine 500 continues to operation 525, where the optimizer application 35 executing on the application server 30 may enforce a quality bound associated with product quality for the blended concentrated consumable product. In particular, the optimizer application 35 may apply the quality constraint 72 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the quality bound.
[0056] From operation 525, the routine 500 continues to operation 530, where the optimizer application 35 executing on the application server 30 may enforce a component bound associated with the blending of various components comprising the concentrated consumable product. In particular, the optimizer application 35 may apply the component constraint 74 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the component bound.
[0057] From operation 530, the routine 500 continues to operation 533, where the optimizer application 35 executing on the application server 30 may enforce a raw material bound which is associated with one or more categories of raw materials utilized in blending the concentrated consumable product. In particular, the optimizer application 35 may apply the raw material constraint 75 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the raw material bound.
[0058] From operation 533, the routine 500 continues to operation 535, where the optimizer application 35 executing on the application server 30 may enforce supply requirements for components utilized in blending the concentrated consumable product. In particular, the optimizer application 35 may apply the supply constraint 76 from the
constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the supply requirements.
[0059] From operation 535, the routine 500 continues to operation 540, where the optimizer application 35 executing on the application server 30 may enforce demand requirements for components utilized in blending the concentrated consumable product. In particular, the optimizer application 35 may apply the demand constraint 78 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the component demand requirement.
[0060] From operation 540, the routine 500 continues to operation 545, where the optimizer application 35 executing on the application server 30 may enforce product and component conservation requirements. In particular, the product and component conservation requirements may be utilized to balance produced and stored quantities of the concentrated consumable product with a supply of components (utilized in blending the concentrated consumable product) stored over at least a present and a previous interval of time. The optimizer application 35 may apply the balance constraint 80 stored on the database server 60 to the blending plan inputs 50 to enforce the product and component conservation requirements.
[0061] From operation 545, the routine 500 continues to operation 550, where the optimizer application 35 executing on the application server 30 may enforce a capacity bound associated with capacity limitations of blenders and suppliers with respect to various components utilized in blending the concentrated consumable product. In particular, the optimizer application 35 may apply the capacity constraint 82 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the capacity bound.
[0062] From operation 550, the routine 500 continues to operation 555, where the optimizer application 35 executing on the application server 30 may enforce one or more business rules associated with blending requirements for producing the concentrated consumable product. In particular, the optimizer application 35 may apply the business rules constraint 84 from the constraint data 70 stored on the database server 60 to the blending plan inputs 50 to enforce the business rules.
[0063] From operation 555, the routine 500 continues to operation 560, where the optimizer application 35 executing on the application server 30 may call an objective function for receiving the blending plan inputs 50 (discussed above with respect to operations 505-520) and the constraint data 70 (discussed above with respect to operations 525-555).
[0064] From operation 560, the routine 500 continues to operation 565, where the optimizer application 35 executing on the application server 30 may optimize the objective function to minimize costs associated with the production of the concentrated consumable product or alternatively, to minimize deviations from a target quality associated with the production of the concentrated consumable product. From operation 565, the routine 500 then ends.
[0065] As briefly discussed above, the optimizer application 35 may utilize an objective function (i.e., a mathematical model formulation) to generate an optimized blending plan which minimizes costs and violation of business rules or, alternatively, minimizes deviation quality targets and violation of business rules, associated with the production of a concentrated consumable product. For example, in accordance with an embodiment, objection function may be utilized to minimize the following costs: solid material costs (i.e., per unit costs for raw materials from a supplier at a time interval), processing fees (i.e., per unit processing fees for raw materials from a supplier at a time interval), blending costs (i.e., per unit blending costs at a blender from another supplier), own blending costs (i.e., per unit blending costs at a blender from the blender's own supplier), base costs (i.e., per unit intermediate product manufacturing costs at a blender from another supplier), own base costs (i.e., per unit intermediate product manufacturing costs at a blender from the blender's own supplier) and transportation costs (i.e., per unit transportation costs from a supplier to a blender). It should be understood that an infeasibility penalty may be also be applied to the objective function to insure the feasibility of achieving the objectives associated with an optimized blending plan. As defined herein, a "penalty" is a mathematical device (which may encompass any number of variables) for optimizing a blending plan. In accordance with an embodiment, a feasible blending plan is one in which one or more possible solutions to the objection function obeys the applied constraints. As another example, the objective function may be utilized to optimize concentrated consumable product quality by minimizing
deviations from target attributes (e.g., flavor) for a concentrated consumable product over a time interval. It should be understood that the objective function may minimize primary and secondary positive and negative deviations for an attribute.
[0066] FIGURE 6 is a graphical representation of an objective function and constraints utilized by a model formulation to optimize a blending plan 600 for concentrated consumable products, in accordance with an embodiment. In the graphical representation of the blending plan 600, lines 602, 604 and 606 comprise constraints (e.g. requirements) and circles 608, 610, 612, 614, 616, 618, 620, 622, 624, 626 and 628 comprise possible solutions to the objective function in the above-described model formulation. In the model formulation, the objective function is maximized by finding a solution (i.e., a circle) that is inside of all of the constraints 602, 604 and 606 (i.e., a solution which obeys each of the constraints). Circles that are within the constraints 602, 604 and 606 are feasible solutions while circles outside of the constraints 602, 604 and 606 are infeasible. Thus, it may be seen with respect to the blending plan 600 that the circle (i.e., solution) 614 is optimal since it lies within each of the constraints 602, 604 and 606 and is the point that maximizes the objective function. Those skilled in the art should appreciate that the use of the penalties, discussed, is also referred to as multi-criteria optimization. It should further be appreciated that aforementioned penalties may be user-configurable values which may be determined via experimentation by a decision-maker involved in creating a concentrated consumable product blending plan.
[0067] The notation and equations for an illustrative optimization model formulation which optimizes a blending plan for a concentrated consumable product is shown below.
Notation:
Indices
M: set of periods
S: inventory nodes
D: blender nodes
F: facility nodes
B: set of intermediate products
P: set of products
FJ: set of raw materials associated with business rules
RJ: set of raw materials associated with business rules
PV: set of possible product and raw material category combinations
VQ: set of possible raw material category and attribute combinations
SVJQs: set of possible suppliers and raw material combinations
SVJQsmC: set of possible supplier and contracts
SD: set of possible supplier and blender links
DBP: set of possible blender and intermediate product links
DP: set of possible blender and product links
Parameters
NM: number of time intervals (periods)
Raw Material Attributes, Product Quality and Product Component Boun
OwnBaseCostdfd G D]: Per unit intermediate product manufacturing cost at blender d from own supplier
TransportationCostsd[<s,d> G SDJ: Per unit transportation cost from supplier s to blender d
Supply Chain Capacity and Business Rules
Decision Variables
Xsp[<s,v,j,q,sn,m,c> G SVJQsmC, p G P ]: Supplier to product flow = amount of raw
material j from supplier s to product p in time interval m
Xsdbp[<s,v,j,q,sn,m,c>£ SVJQsmC, <d,b,p>£ Supplier to facility-intermediate product- DBPJ: product flow = amount of raw material j from supplier s to facility d to intermediate product b then to product p in time interval m
Xsdp[<s,v,j,q,sn,m,c> G SVJQsmC, <d,p> Supplier to facility-product flow = amount of G DP]: raw material j from supplier s to intermediate product b then to product p in time interval m
Xs[ <s, v,j, q, sn, m,c>£ SVJQsm C] : Carried inventory flow = amount of carried raw material j at supplier s from time interval m- 1 to m
QDevPPrimary[q Q,p P, m MJ : Primary positive deviation from target for attribute q, for product p, in period m
QDevNPrimary[q Q,p P, m MJ : Primary negative deviation from target for attribute q, for product p, in period m
QDevPSecondary[q Q,p P,m MJ: Secondary positive deviation from target for attribute q, for product p, in period m
QDevNSecondary[q Q,p P, m MJ : Secondary negative deviation from target for attribute q, for product p, in period m
Objective Function Minimize Cost
Min ^ Xsp * (ProcessingFeeSjCm + SolidCostSjCm)
s,v,j ,q,sn,m,c,p
+ ^ Xsdbp * (ProcessingFeeSjCm + SolidCostSjCm)
s,v,j ,q,sn,m,c,d,b,p
+ ^ Xsdp * (ProcessingFeeSjCm + SolidCostSjCm)
s,v,j ,q,sn,m,c,d,p
+ ^ Xsdbp + Xsdp) * TransportationCostsd
s,v,j ,q,sn,m,c,d
+ ^ Xsdp * OwnB lending Costd + ^ Xsdp * BlendingCosta s,v,j ,q,sn,m,c,d,p s,v,j ,q,sn,m,c,d,p
S.d=D.d S.d≠D.d
+ ^ Xsdbp + OwnBaseCostd + ^ Xsdbp + BaseCostd s,v,j ,q,sn,m,c,d,p s,v,j,q,sn,m,c,d,p
S.b=D.b S.b≠D.b
Xsp + ^ Xsdbp + ^ Xsdp
,v,] ,q,sn,m,c :,,pp s,v,j,q,sn,m,c,d,b,p ss,,vv,,j_ ,q,sn,m,c,d,p * ProdPenalty
+
Minimize Deviation from Targets
Min ^ (QDevPPrimaryqpm + QDevPSecondaryqpm + QDevNPrimaryqpm q,p,m
+ QDevN Secondaryqpm) /QTargetqpm
Constraints
Quality and Constraints
Product Quality Bounds Constraints
Vp, m, q
Xsp * Quality qjsvjqsn + ^ Xsdbp * Quality qjsvjqsn
Target Quality Constraints (for quality optimization only)
(∑sXsp * Quality qjsvjqsn +∑s>d>b Xsdbp * Quality qjsvjqsn +∑s Xsdp * Quality qjsvjqsn)
Demandpm
+ QDevPPrimaryqpm - QDevN Primary qpm + QDevP Secondary qpm
— QDevNSecondaryqpm = QTargetqpm; ; /p,m,q
QDevPPrimaryqpm - QDevN Primary qpm < Primary Boundqpm
Intermediate product Quality Bounds Constraints
^ Xsdbp * Quality qjsvjqsn≥ QMinb * ^ Xsdbp ; Vb, m, q
s,d,p s,d,p
^ Xsdbp * Quality qjsvjqsn≤ QMaxb * ^ Xsdbp ; Vb, m, q
s,d,p s,d,p
Raw Material Category Bounds Constraints for Products Xsdp
Vp, m, veV
Component Bounds Constraints for Intermediate products
∑ V
∑ V
Supply-Demand Constraints
End Supply Requirements Constraints
^ Xs≥ EndSupplyMinReqs v q sn; V s, v,j, q, sn) E SVJQs
m=NM,c=C
^ Xs≤ EndSupplyMaxReqs v q sn; V(s, v,j, q, sn) E SVJQs
m=NM,c=C
Minimum Supply Requirement Constraints
Xsp + ^ Xsdbp + ^ Xsdp≥ MinReqs; Vs
) v,j ,q,sn,m,c,d,b,p v,j ,q,sn,m,c,d,p
Xsp + ^ Xsdbp + ^ Xsdp≥ MinReqs; v,j,q,sn,m,c,p v,j,q,sn,m,c,d,b,p v,j,q,sn,m,c,d,p
Demand Constraints
Xsp + ^ Xsdbp + ^ Xsdp≥ Demandpm; Vp, m
s,v,j,q,sn,c,d,b s,v,j,q,sn,c,d
Xsdbp = B as e Demand bm; Vb≠ Blt
s,v,j,q,sn,m,c,p
Balance Constraints
Sourcing Constraints
^ Xsp + ^ Xsdbp + ^ Xsdp + Xsm = Supplys v q sn m c + Xs^^, Vs, v,j, q, sn, m, c p d,b,p d,p
^ Xsp + ^ Xsdbp + ^ Xsdp + Xsm = Supplys v q sn m c + Xs^^, Vs, v,j, q, sn, m, c p d,b,p d,p
Capacity Constraints
Blender Capacity Constraints
^ Xsdbp + ^ Xsdp≤ Blender -Cap d; Vd, m
s,v,j,q,sn,c,b,p s,v,j,q,sn,c,p
Blender Component Constraints BlendC ompd; Vd, m
Product Component Constraints
Xsdbp≥ 0.001 < BaseCompb
Load-Out Capacity Constraints (Supplier to Facility)
^ Xsp * LoadOutp + ^ Xsdbp * LoadOutp s=v,j,q,sn,c,p s= f ,s≠d,v,j ,q,sn,c,d,b,p
+ ^ Xsdp * LoadOutp≤ FLoadOutfm; Vf, m s= f,s≠d,v,j,q,sn,c,p
Business Rule Constraints
Storage Blender Flow Limitation Constraints (for Specific Raw Materials) ≤ 0
No Blending at Certain Blenders Constraints ^ Xsdp≤ 0
s ,v ,j ,q,sn,m,c ,d£{D1,D2}.P
Certain Products only from Certain Suppliers Constraints ^ Xsp+ ^ Xsdp≤ 0
s≠S1,v,j,q,sn,m,c,p=P1 s≠S1,v,j,q,sn,m,c,d,p=P1
Exclude Certain Quality Raw Materials from Certain Products
^ Xsp+ ^ Xsdp≤ 0 s,v,j(JUFJ,q1≤q≤q2,sn,m,c,p=P1 s,v,j(JUFJ,q1≤q≤q2,sn,m,c,d,p=P1
No Blending in Certain Products Constraints ^ Xsdp≤ 0
s,v,j,q,sn,m,c,d,p=P1
Bulk Usage for Certain Quality Raw Materials Constraints
^ Xsp + ^ Xsdp + ^ Xsdbp s,v,j,q=q1,sn,m,c,p s,v,j,q=q1,sn,m,c,d,p s,v,j,q=q1,sn,m,c,d,b,p
Certain Raw Material Categories not Together Constraints
^ Xsp + ^ Xsdp + ^ Xsdbp≥ 0.001 ,v=V,j,q,sn,m,c,p ss,,vv==VV1,:)j,,qq,,ssnn,,mm,,cc,,dd,,pp ss,,vv==VV1,:)j,,qq,,ssnn,,mm,,cc,,ad,b·,ρ
+ ^ Xsp + ^ Xsdp
,v=V2,j],,qq,,ssnn,,mm,,cc,,pp ss,,vv==VV22,,j],,qq,,ssnn,,mm,,cc,,dd,,pp
+ < 1
s,v=V2,j,
Grade Constraints
^ Xsp + ^ Xsdp + ^ Xsdbp
7],q,sn,m,c,p s,v,jeF],q,sn,m,c,d,p s,v,jeF],q,sn,m,c,d,b,p
< 0.4 * ^ Xsp + ^ Xsdp + ^ Xsdbp
\s,v,j,q,sn,m,c,p s,v,j,q,sn,m,c,d,p s,v,j,q,sn,m,c,d,b,p /
^ Xsp + ^ Xsdp + ^ Xsdbp
s,v,jeRJ,q,sn,m,c,p s,v,jeR],q,sn,m,c,d,p s,v,jeR],q,sn,m,c,d,b,p
< 0.1
^ Xsp + ^ Xsdp + ^ Xsdbp ; Vp ,v,j,q,sn,m,c,p s,v,j,q,sn,m,c,d,p s,v,j,q,sn,m,c,d,b,p J
≠ px,ra
^ Xsp + ^ Xsdp + ^ Xsdbp
s,v,j,q=q1,sn,m,c,p s,v,j,q=q1,sn,m,c,d,p s,v,j,q=q1,sn,m,c,d,b,p
≤ 0.1
^ Xsp + ^ sd + ^ sd&p ; Vp ,v,j,q,sn,m,c,p s,v,j,q,sn,m,c,d,p s,v,j,q,sn,m,c,d,b,p J g {p1,p2},m
^ Xsp + ^ Xsdp + ^ Xsdbp
s,v,j,q=q1,sn,m,c,p s,v,j,q=q1,sn,m,c,d,p s,v,j,q=q1,sn,m,c,d,b,p
≤ 0.25
* Σ XSP + Σ Xsdp + Σ Xsdbp ; Vp
\s,v,j ,q,sn,m,c,p s,v,j,q,sn,m,c,d,p s,v,j ,q,sn,m,c,d,b,p J
= plt m
[0068] Various embodiments are described above with reference to block diagrams and/or operational illustrations of methods, systems, and computer program products. The operations/acts noted in the blocks may be skipped or occur out of the order as shown in any flow diagram. For example, two or more blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved.
[0069] While certain embodiments have been described, other embodiments may exist. Furthermore, although various embodiments have been described as being associated with data stored in memory and other storage mediums, data can also be stored on or read from other types of computer-readable media, such as secondary storage devices (i.e., hard disks, floppy disks, or a CD-ROM), a carrier wave from the Internet, or other forms of RAM or ROM. Further, the disclosed routine's operations may be modified in any manner, including by reordering operations and/or inserting or operations, without departing from the embodiments described herein.
[0070] Although the invention has been described in connection with various illustrative embodiments, those of ordinary skill in the art will understand that many modifications can be made thereto within the scope of the claims that follow. Accordingly, it is not intended that the scope of the invention in any way be limited by the above description, but instead be determined entirely by reference to the claims that follow.
Not-From-Concentrate
[0071] Embodiments are provided for optimizing a blending plan for not-from- concentrate ("NFC") consumable products. One or more inputs associated with a blending plan for the production of an NFC consumable product over a predetermined time interval
may be received by a computer. The computer may then be utilized to apply one or more constraints to each of the one or more inputs. The computer may then be utilized to assess one or more penalties in a function which includes the inputs and the constraints. The function may be utilized to generate an optimized blending plan which minimizes costs and complexity associated with the production of the NFC consumable product while maximizing quality.
[0072] Referring now to the drawings, in which like numerals represent like elements through the several figures, various aspects of the present invention will be described. FIGURE 7 is a block diagram illustrating a network architecture for optimizing a blending plan for NFC consumable products, in accordance with various embodiments. The network architecture includes a user 702 in communication with an application server 730 and database servers 740 and 761, through firewall 796 and network switch 798. In accordance with an embodiment, the user 702 may comprise a user of a networked client computing device for executing optimizer application 735 which is hosted by the application server 730. As will be described in greater detail herein, the optimizer application 735 may be utilized for generating an optimized blending plan 737 for NFC consumable products over a user- configurable time interval (i.e., a blending plan period). Examples of NFC liquid food and beverage products consistent with the various embodiments described herein may include, without limitation, fruit juices (e.g., orange juice, apple juice, etc.) such as the SIMPLY brand of NFC fruit juices which are marketed by THE COCA-COLA COMPANY of Atlanta, Georgia, liquid dairy products (e.g., milk) and liquid food products (e.g., yogurt, soup, etc.). It should be understood that the optimizer application 735 may also be utilized to optimize blending plans for other types of consumable products without departing from the spirit and scope of the embodiments described herein.
[0073] In accordance with an embodiment, the optimizer application 735 may utilize blending plan inputs 750 (which may be stored on the database server 740) and apply constraint data 780 (which may be stored on the database server 761) to generate the optimized blending plan 737. In some embodiments, blending plan inputs may also be referred to as blending plan input data. It should be understood that in generating the
optimized blending plan 737, the optimizer application 735 may utilize a mathematical model formulation comprising an objective function which may assess various "penalties" to ensure that various requirements needed to ensure optimization are met. As defined herein, a "penalty" is a mathematical device (which may encompass any number of variables) for optimizing a blending plan for an NFC consumable product. For example, a penalty may be assessed for using a stored fruit juice during a harvesting season (i.e., "in-season") when fresh fruit juice is readily available, a penalty may be assessed for overproduction (thereby violating demand requirements for various component juices utilized in blending), and a penalty may be assessed based on the flow of a juice component (i.e., a fruit juice mixed with other fruit juices to produce a blended NFC fruit juice) from either a tank storage or a supplier to a blending plant during a blending time interval. It should be understood that similar penalties may be assessed for NFC consumable products other than fruit juices without departing from the spirit and scope of the various embodiments described herein.
[0074] FIGURE 8 is a block diagram illustrating various inputs in the blending plan inputs 750 which may be utilized in optimizing a blending plan for NFC consumable products, in accordance with various embodiments. The blending plan inputs 750 may include time interval data 751, component raw material attributes 752, component supply data 754, inventory data 756, component age data 758, quality targets data 760, component targets data 762, blended component targets 764, cost structure data 766, storage capacity data 768, node indicator data 770, plant ID data 772, load-out capacity data 774, transportation network data 776 and supplier component usage data 778.
[0075] The time interval data 751 may include a blending plan time interval for an NFC consumable product. The blending plan time interval may comprise various units of time with the smallest interval consisting of one week. Thus, each blending plan time interval may be a weekly time interval. In accordance with an embodiment, the optimized blending plan may consist of a rolling sixty-five week blend plan. It should be understood that in accordance with the embodiments described herein, annual, six week and weekly blend plans may be produced. It should further be understood that the results of the blending plan
optimization discussed herein may be aggregated into weekly, monthly and quarterly totals to support research and development, procurement and supply chain activities.
[0076] The component raw material attributes 752 may include various attribute specifications for an NFC consumable product. For example, the attribute specifications for an NFC juice product may include, without limitation, Brix (i.e., the sugar content of an aqueous solution), citric acid, Brix acid ratio, centrifuge pulp, Vitamin C, percent recovered oil, color score, defects score, limonin, flavor and varietal percentages (e.g., the percentages of various fruit juice varieties making up a finished NFC juice product). It should be appreciated by those skilled in the art that other attribute specifications corresponding to the production of different types of NFC consumable products (e.g., liquid food and dairy products) may also be utilized without departing from the spirit and scope of the various embodiments described herein.
[0077] The component supply data 754 may include one or more suppliers which are contracted to supply the various components utilized in blending an NFC consumable product over the blending plan time interval. For example, the components (e.g., fruit) utilized in blending an NFC fruit (e.g., orange) juice may consist of a projected number of gallons per month for each of multiple fruit juices provided by various suppliers located in different geographical locations.
[0078] The inventory data 756 may include an initial inventory of storage components (e.g., gallons of a stored liquid) utilized in blending an NFC consumable product per storage tank.
[0079] The component age data 758 may include a stored age of one or more components utilized in blending an NFC consumable product. It should be understood, in accordance with generating an optimized blending plan in accordance with the embodiments described herein, that the storage of a component utilized in an NFC consumable product may not exceed a maximum storage time (e.g., sixty-five weeks).
[0080] The quality targets data 760 may include finished goods quality targets for NFC consumable products. For example, with respect to a fruit juice, finished goods quality
targets may include Brix targets, Brix acid ratio targets, centrifuge pulp percent targets, Vitamin C targets, percent recovered oil targets, a color score targets, a defects score minimum, flavor targets and limonin targets. It should be appreciated by those skilled in the art that other finished goods quality targets corresponding to the production of different types of NFC consumable products (e.g., liquid food and dairy products) may also be utilized without departing from the spirit and scope of the various embodiments described herein.
[0081] The component targets data 762 may include finished goods component targets for NFC consumable products. For example, with respect to an orange juice, finished goods component targets may include target percentages for different varieties of orange juice utilized in blending an NFC orange juice product. Continuing with the aforementioned example, the finished goods and component targets may also include percentages of fresh juice with respect to each of one or more varieties of orange juice utilized in blending the NFC orange juice product. It should be appreciated by those skilled in the art that other finished goods component targets corresponding to the production of different types of NFC consumable products (e.g., liquid food and dairy products) may also be utilized without departing from the spirit and scope of the various embodiments described herein
[0082] The blended component targets 764 may include data identifying a maximum number of blended components at a blending facility utilized for blending an NFC consumable product. For example, the data may include data for various stored components in various tank farms as well as fresh and stored components from various suppliers.
[0083] The cost structure data 766 may include various costs associated with the production of a blended NFC consumable product from various components. For example, the costs may include solid costs (e.g., dollars per gallon) associated with obtaining each of a number of different components (e.g., dollars per gallon) from suppliers, processing costs (e.g., dollars per gallon) associated with processing each of a number of different components from suppliers, storage costs (e.g., dollars per gallon) associated with storing components at various tank farms, transportation costs (e.g., dollars per gallon) associated with transporting components from a source (e.g., a supplier) to a plant for blending and production costs
associated with blending the NFC consumable product at each of one or more plants utilized for blending.
[0084] The storage capacity data 768 may include data associated with contracted and to be purchases storage capacity at one or more tank farms utilized to store various components which are utilized in the production of a blended NFC consumable product. For example, storage capacity data may include various tank farm IDs as well as the names and locations of the tank farms.
[0085] The node indicator data 770 may include data for determining the application of business rules such as when a refill of available storage capacity is needed for contracted and/or to be purchased components which are utilized in the production of a blended NFC consumable product.
[0086] The plant ID data 772 may include plant IDs for the names of various blending plants utilized in producing a blended NFC consumable product.
[0087] The load-out capacity data 774 may include various capacities associated with the loading of components utilized in the production of a blended NFC consumable product, between one or more of a tank farm and a plant, a processor and a plant, a port and a tank farm, and a port and a plant. For example, the load-out capacity for a stored or fresh component (e.g., fresh fruit juice) may be determined by the expression: gallons/weeks = truck loads.
[0088] The transportation network data 776 may include routing information for transporting various components utilized in the production of a blended NFC consumable product, between a port and one or more tank farms, a processor and one or more tank farms, and one more tank farms and blending plants. For example, there may be two transportation routes between a port and tank farms, four routes between a processor and tank farms and twenty- five routes between tank farms and blending plants.
[0089] The supplier component usage data 778 may include a total quantity of one or more components (e.g., juice) utilized in the production of a blended NFC consumable
product, used from a supplier. It should be understood that there may be a minimum component usage requirement (i.e., in gallons) associated with each supplier.
[0090] It should be understood that the blending plan inputs 750 may be utilized in a number of production scenarios in the blending of an NFC consumable product. In particular, an NFC consumable product may be made from various combinations (and various amounts) of components to achieve a desired product.
[0091] FIGURE 9 is a block diagram illustrating the constraint data 780 utilized in optimizing a blending plan for NFC consumable products, in accordance with various embodiments. The constraint data 780 may include quality/component constraints 782, supply/demand constraints 784, balance constraints 786, capacity constraints 788, varietal bounds such as varietal constraints 790, age/seasonal restrictions such as age/seasional constraints 792, and business rules constraints 794.
[0092] The quality/component constraints 782 may include quality targets (i.e., a quality range) component targets for an NFC consumable product in order to enforce finished product and component quality over a blending plan time interval. For example, quality targets may be enforced for the following raw material attributes for an NFC fruit juice (i.e., the finished product): Brix, acid-Brix ratio, color, Vitamin C, pulp and limonin. As a further example, targets may be enforced for various stored and fresh fruit juices utilized in the blending of an NFC fruit juice (i.e., the finished product).
[0093] The supply/demand constraints 784 may include minimum and maximum requirements (for each of one or more suppliers) for various components which are utilized in the production of an NFC consumable product. For example, a sourcing requirement for a fruit juice may consist of the sum of fresh juice in production and fresh juice sent to storage is less than or equal to a total juice supply. A minimum supply requirement for a fruit juice may consist of the sum of fresh juice in production and fresh juice sent to storage being greater than or equal to a minimum juice supply. A minimum usage requirement for a fruit juice may consist of fresh juice in production being greater than or equal to a minimum usage of a fruit juice. A minimum requirement for a fruit juice for a supplier (e.g., supplier
produced juice and tank farm stored juice from purchases) may consist of fresh juice in production being greater than or equal to a minimum fruit juice requirement. A demand requirement for a fruit juice may consist of the sum of fresh fruit in production and stored juice in production being greater than or equal to a fruit juice demand. A minimum carryover requirement (i.e., for each tank farm) for a fruit juice may consist of a fruit juice variety in the carry over juice being greater than a minimum inventory requirement.
[0094] The balance constraints 786 may include a requirement for enforcing component conservation for components utilized in the production of an NFC consumable product. For example, a component conservation requirement for a tank balance for a fruit juice may consist of a sum of juice carried over from a previous time period and newly stored juice in the tank being equal to a sum of juice carried over into the next time period and juice sent from a processing plant to the tank. Another example of a component conservation requirement for a tank balance for a fruit juice may consist of stored juice in a refillable tank (at each of one or more time periods) being equal to a sum of stored juice in the tank at a next time period and juice sent to a processing plan from the tank during the next time period. An example of a component conservation requirement for a tank farm balance for a fruit juice may consist of a sum of fresh juice carried over from a previous time period into a tank farm and newly stored juice in a tank farm being equal to a sum of juice carried over into a next time period from the tank farm and juice sent to a processing plant from the tank farm.
[0095] The capacity constraints 788 may include a requirement for enforcing capacity limitations on a flow of various components utilized in the blending of an NFC consumable product. Example capacity limitations may include making sure that a newly stored component and/or any carried over components (i.e., carried over from a previous time interval) is less than or equal to a tank capacity for a predetermined time period, a newly stored component in a tank farm and a component carried over from a previous time interval is less than or equal to a tank farm capacity, a newly stored juice in a tank farm is less than or equal to a pasteurization capacity in the time interval, and juice from each of a supplier/plant and tank farm/plant combination over a time interval being less than or equal to a load out capacity.
[0096] The varietal constraints 790 may include a requirement for enforcing varietal percentages for components in a blended NFC consumable product. Example varietal constraints may include percentages of a component in an NFC blended product going to a processing plant being greater than equal to a minimum requirement and less than or equal to a maximum requirement.
[0097] The age/seasonal constraints 792 may include a requirement for enforcing varietal percentages for components in a blended NFC consumable product using fresh (instead of stored) components. For example, for a fruit juice, the requirement may include a maximum age allowance for a fresh juice (i.e., juice stored in a storage tank may not exceed the maximum age allowance), a restriction against the use of stored juice from a tank when fresh juice is in-season, and a restriction against storing fresh juice in a tank.
[0098] The business rules constraints 794 may include various requirements such as restricting the flow of components from predetermined tank farms or suppliers to predetermined blending plants.
Exemplary Operating Environment
[0099] Referring now to FIGURE 10, the following discussion is intended to provide a brief, general description of a suitable computing environment in which various illustrative embodiments may be implemented. While various embodiments will be described in the general context of program modules that execute in conjunction with program modules that run on an operating system on a computing device, those skilled in the art will recognize that the various embodiments may also be implemented in combination with other types of computer systems and program modules.
[00100] Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the various embodiments may be practiced with a number of computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. The various
embodiments may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
[00101] FIGURE 10 shows the server 730 which may comprise a computing device 703 which includes at least one central processing unit 708 ("CPU"), a system memory 712 (including a random access memory 718 ("RAM") and a read-only memory ("ROM") 720) and a system bus 710 that couples the memory to the CPU 708. A basic input/output system containing the basic routines that help to transfer information between elements within the computer, such as during startup, is stored in the ROM 720. The server 730 further includes a mass storage device 714 for storing an operating system 732, the optimizer application 735 and an optimized blending plan 737, which is generated by the optimizer application 735.
[00102] In accordance with various embodiments, the operating system 732 may be suitable for controlling the operation of a networked computer. The mass storage device 714 is connected to the CPU 708 through a mass storage controller (not shown) connected to the bus 710. The mass storage device 714 and its associated computer-readable media provide non- volatile storage for the computing device 703. The term computer-readable media as used herein may include computer storage media. Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. Computer storage media may include, but is not limited to, RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store information and which can be accessed by the computing device 703. Any such computer storage media may be part of the computing device 703.
[00103] The term computer-readable media as used herein may also include communication media. Communication media may be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. The term "modulated data signal" may describe a signal that has one or more characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.
[00104] According to various embodiments, the server 730 may operate in a networked environment using logical connections to remote computers through a network 704 which may include a local network or a wide area network (e.g., the Internet). The server 730 may connect to the network 704 through a network interface unit 716 connected to the bus 710. It should be appreciated that the network interface unit 716 may also be utilized to connect to other types of networks and remote computing systems. The server 730 may also include the input/output controller 722 for receiving and processing input from a number of input types, including, but not limited to, a keyboard, mouse, pen, stylus, finger, and/or other means (not shown). Similarly, an input/output controller 722 may provide output to a display device 728 as well as a printer, or other type of output device (not shown).
[00105] FIGURE 11 is a flow diagram illustrating a routine 800 for optimizing a blending plan for NFC consumable products, in accordance with various embodiments. When reading the discussion of the routines presented herein, it should be appreciated that the logical operations of various embodiments of the present invention are implemented (1) as a sequence of computer implemented acts or program modules running on a computing system and/or (2) as interconnected machine logical circuits or circuit modules within the computing system. The implementation is a matter of choice dependent on the performance requirements of the computing system implementing the invention. Accordingly, the logical operations illustrated in FIGURE 11 and making up the various embodiments described herein are referred to variously as operations, structural devices, acts or modules. It will be
recognized by one skilled in the art that these operations, structural devices, acts and modules may be implemented in software, in firmware, in special purpose digital logical, and any combination thereof without deviating from the spirit and scope of the present invention as recited within the claims set forth herein.
[00106] The routine 800 begins at operation 805, where the optimizer application 735, executing on the application server 730, receives the blending plan inputs 750 for an NFC consumable product. As discussed above with respect to FIGURE 8, the blending plan inputs 750 may comprise various inputs associated with a blending plan for the production of a consumable product over a predetermined time interval.
[00107] From operation 805, the routine 800 continues to operation 810, where the optimizer application 735 executing on the application server 730, may apply the constraint data 780 to the received blending plan inputs 750. In particular, in applying the various constraints in the constraint data 780, the optimizer application 735 may utilize a mathematical model (i.e., a model formulation) to generate an optimized blending plan which minimizes costs and complexity associated with the production of an NFC consumable product while maximizing quality. In accordance with an embodiment, the model formulation may comprise an objective function against which is applied several constraints. It should be understood that the optimizer application 735 may also utilize the aforementioned objective function to generate an optimized blending plan which minimizes deviation quality targets and the violation of business rules, associated with the production of an NFC consumable product. For example, in accordance with an embodiment, the objection function may be utilized to minimize processing costs (i.e., per unit processing fees for raw materials from a supplier at a time interval), solid costs (i.e., per unit costs for raw materials from a supplier at a time interval), transportation costs (i.e., per unit transportation costs from a supplier to a blender) and storage costs associated with the production of a blended NFC consumable product.
[00108] From operation 810, the routine 800 continues to operation 815, where the optimizer application 735 executing on the application server 730, may assess penalties in an
objective function (discussed above) which includes the blending plan inputs 750 and the constraint data 780, to generate an optimized blending plan for an NFC consumable product. In particular, and as discussed above with respect to FIGURE 7, it should be understood that in generating the optimized blending plan 737, the optimizer application 735 may utilize the aforementioned model formulation to assess various penalties to ensure that various requirements needed to ensure optimization objectives are met for producing blended NFC consumable products. For example, a penalty may be assessed for using a stored component during a harvesting season (i.e., "in-season") when a fresh component (e.g., fresh fruit juice) is readily available, a penalty may be assessed for overproduction (thereby violating demand requirements for various component juices utilized in blending), a penalty may be assessed based on the flow of a component (i.e., a liquid mixed with other liquids to produce a blended NFC consumable product) from either a tank storage or a supplier to a blending plant during a blending time interval, and a penalty may be assessed for violating end supply and demand requirements associated with an optimized blended NFC consumable product. It should be further understood that the optimizer application 735 may also be utilized to optimize NFC consumable product quality by minimizing deviations from target attributes (e.g., flavor) for a concentrated consumable product over a time interval. It should be understood that the objective function may optimize positive and negative deviations for an attribute from a target quality objective at a plant over a period of time.
[00109] FIGURE 12 is a graphical representation of an objective function and constraints utilized by a model formulation to optimize a blending plan 900 for NFC consumable products, in accordance with an embodiment. In the graphical representation of the blending plan 900, lines 902, 904 and 906 comprise constraints (e.g. requirements) and circles 908, 910, 912, 914, 916, 918, 920, 922, 924, 926 and 928 comprise possible solutions to the objective function in the above-described model formulation. In the model formulation, the objective function is maximized by finding a solution (i.e., a circle) that is inside of all of the constraints 902, 904 and 906 (i.e., a solution which obeys each of the constraints). Circles that are within the constraints 902, 904 and 906 are feasible solutions while circles outside of the constraints 902, 904 and 906 are infeasible. Thus, it may be seen with respect to the
blending plan 900 that the circle (i.e., solution) 914 is optimal since it lies within each of the constraints 902, 904 and 906 and is the point that maximizes the objective function. Those skilled in the art should appreciate that the use of the penalties, discussed, is also referred to as multi-criteria optimization. It should further be appreciated that the aforementioned penalties may be user-configurable values which may be determined via experimentation by a decision-maker involved in creating an NFC consumable product blending plan.
[00110] The notation and equations for an illustrative optimization model formulation which optimizes a blending plan for NFC consumable products is shown below. It should be understood that the foregoing notation and equations may be applied to any number of NFC consumable products including, but not limited, of fruit juices (e.g., orange juice, apple juice, etc.), liquid dairy products (e.g., milk, etc.) and liquid food products (e.g., yogurt, soup, etc.).
Notation: Indices
w : time interval
sw : supply time interval for stored raw material
wwi. arried inventory time interval wwl=w-l
s : supplier ID
sy : supplier type; sy £ {Pi, P2; P3} where Pi, P2; P3 are different supplier types
j: raw material ID (a batch of raw material with specific attributes and category composition) jy: raw material types;
v: raw material category ID;
c: raw material contract type ;
t: facility ID
· storage unit ID
Sets / Tuples
W: time intervals set
S: set of suppliers
F: set of facilities
T: set of storage units
V: set of raw material categories
J: set of raw materials
C: set of raw material contract types
SY: set of possible supplier-raw material types
SW: start time intervals set for stored raw material
WW: first N periods set (where N can be any number)
WM: periods set
SPW : set of possible load-outs from source s to plant p in time interval w
FPVW : set of possible load-outs of raw material category v from farm f to plant p in time interval w
ZPW : set of possible load-outs from port z to plant p in time interval w
SYVJwCYW: set of possible supply-raw material links ( S-SType-V-J-SW-C-JType-W)
SYFVJwCYT: supply-raw material-tank links within farm ( S-SType-V-J-SW-C-JType-T)
SYFVJwCYTW: set of possible supplier-material-tank links ( S-SType-F-V-J-SW-C-JType-T-W) VJwCYT: set of possible stored varietal-juice-tank links (V-J-SW-C-JType-T)
Parameters
NW: number of time intervals
NWW: number of periods in a time interval
NWCatw: number of periods in a time interval for a specific raw material category
LQq, UQQ-' lower and upper bounds for attribute q
MaxJAge: Upper bound on the stored raw material age
UttleS: Penalty for using stored raw material in season
UttleM: penalty for violating the End Supply and Demand Constraints
ProdPenalty: penalty for over production
FlowPenalty: penalty for flows
TankPenalty: orphan tank penalty
TankOpenPenalty: tank open penalty
Seasonality and Component Targets
SolidCostsjwf <s, sy, v,j, sw, c y, w>£ SYVJwCYW] : Per gallon solid cost for raw material j of from supplier s at time interval w
ProcessingCostsjw [<s, sy, v,j, sw, cjy, w> G Per gallon processing cost for raw material j
SYVJwCYWj: from supplier s at time interval w
St_SolidCostsj[ <v,j, sw, cjy, t> G VJwCYT] : Per gallon solid cost for stored raw material j of storage unit t
St_ProcessingCostsj [ <v,j, sw, cjy, t>£ VJwCYT] : Per gallon processing cost for stored raw material j of storage unit t
StorageCosttft G T] : Per gallon storage cost at storage unit t
TransportationCostspw[<s,p,w> G SPW]: Per gallon transportation cost from supplier s at plant p at time interval w
TransportationCostjpw[<f,p,w> G FPW]: Per gallon transportation cost from farm f at plant p at time interval w
Capacity
Decision Variables
Xsfjtw[ <s, syf.vj, sw, cjy, t, w> ZSYFVJwCYTW] : Supplier to storage unit flow = amount of raw material j from supplier s to storage unit t of facility /in time interval w
Xftjwwi[ <s, syjivj, sw, cjy, t> ESYFVJwCYT, wwl Storage unit carried inventory = amount of
0..NWJ: carried raw material j in storage t at facility / from time interval w
Xsjjtw[ <s, syj.vj, sw, cjy, t, w> G SYFVJwCYTW] : Supplier to storage unit flow = amount of raw material j from supplier s to storage unit t of facility /in time interval w
Xftjwwi[ <s, sy,f,vj, sw, cjy, t> ESYFVJwCYT, wwl Storage unit carried inventory = amount of 0..NWJ: carried raw material j in storage unit t at facility
/ from time interval w
± DsPc-V v±P qpW Positive Deviation from Target for quality q at plant p in period w
DevNqpw Negative Deviation from Target for quality q at plant p in period w
Objective Function Cost Objective
Quality Objective: Maximizing quality by minimizing the deviation from quality targets Min ^ {DevPqpw + DevNqpw) * Wq
q,p,w
Constraints
Attribute Constraints
LQq * (
Maximize quality only
^ ' Qq Xtjpw ^ ' Qq Xsjpw DevPq p w
f,t,j,p,w s,j,p,w
-DevNq>p>w = Targetq>p>w Vq, p, w Varietal Components Targets
MinAttn ¾'pw + ^ ¾pw j≤ ^ PctvjXtjpw + ^ PctVjXSjpw ;Vp, w f,t,j,p,w s,j,p,w J f,t,j,p,w s,j,p,w
MaxAttr, ¾'pw + ^ ¾pw j≥ ^ PctvjXtjpw + ^ PctVjXSjpw ;Vp, w f,t,j,p,w s,j,p,w J f,t,j,p,w s,j,p,w
Fresh Components Constraints
Raw Material Age Constraints ^ ^/tjwwi < 0; ISvjswt≥ O AgeOj + ^ NWW - 1 > Maxjage
f,t,j,wwl w
Supply-Demand Constraints
Sourcing Constraints xsjpw + ^ XSfjtw≤Supplysw; Vs, w
s,j,p,w s,f,j,t,w
Minimum Requirement Constraints ^ Xsjpw + ^ Xsfjtw ≥ MinSs; Vs
s,j,p,w s,f,j,t,w
Minimum Usage Constraints ^ XSjpw ≥ MinUsages; Vs
s,j,p,w
Facility Stored Raw Material from Purchase Minimum Requirements Constraints ^ Xtjpw ≥ MinReqV ; Vf, v E (EM, VAL)
t,jy=S,c=A,v,p,w
Demand Constraints
^ Xsjpw + ^ Xsfjtw ≥ Demandpw Vp, w
Balance Constraints
Storage Unit Balance Constraints Xtjpw > V[< sy> f> V > w> C,jy, t >] ,w
Storage Unit Capacity Constraints (out months) ^ Xftjwwi≤ TkCapt; Vw £ WM, t
t,j,wwl
Facility Capacity Constraints (out months) ∑ Xftjwwi + XSfjtw≤ FCapf *NWw;Vw E WM,f,ISRefillt = l
f,t,j,wwl s,f,j,t,w
Load-Out Capacity Constraints (Supplier to Plant)
Xsjpw— USpW,'Vs
s,J,p,w
Load-Out Capacity Constraints (Supplier to Plant)
Xsjpw— USpW,'Vs
s,J,p,w
Load-out Capacity Constraints (Farm to Plant)
^ Xtjpw ≤ Ufpw; Vf, p, w
f,t,j,p,w
Load-Out Capacity Constraints (Port to Farm)
^ Xtjpw≤ Usfw; Vs = Z, f, w
f,t,j,p,w
Processing Capacity Constraints Xsfjtw ≤ NWW * PCapfw; Vf, w, ISRefillt = 1 s,f,j ,,tt,,ww
Xsfjtw ≤ NWVALW * PCapfw; Vf, w, ISRefillt s,f,j,t,w,v=V
Xsfjtw ≤ NWEMW * PCapfw; V/, w, ISRefillt s,f,j,t,w,v=E
Business Rule Constraints
Fresh Raw Material In-Season Xtjpw≤ 0; Vw: CatSeason[w] > 0, v E { i, V2} t,j,p,w
Prohibited Supply Chain Link
[00111] Various embodiments are described above with reference to block diagrams and/or operational illustrations of methods, systems, and computer program products. The operations/acts noted in the blocks may be skipped or occur out of the order as shown in any flow diagram. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved.
[00112] While certain embodiments have been described, other embodiments may exist. Furthermore, although various embodiments have been described as being associated with data stored in memory and other storage mediums, data can also be stored on or read from other types of computer-readable media, such as secondary storage devices (i.e., hard disks, floppy disks, or a CD-ROM), a carrier wave from the Internet, or other forms of RAM or ROM. Further, the disclosed routine's operations may be modified in any manner, including by reordering operations and/or inserting or operations, without departing from the embodiments described herein.
[00113] Although the invention has been described in connection with various illustrative embodiments, those of ordinary skill in the art will understand that many modifications can be made thereto within the scope of the claims that follow. Accordingly, it is not intended that the scope of the invention in any way be limited by the above description, but instead be determined entirely by reference to the claims that follow.
Claims
1. A computer-implemented method of optimizing a blending plan for consumable products, comprising:
receiving, by a computer, one or more inputs associated with a blending plan for the production of a consumable product over a predetermined interval of time; and applying, by the computer, one or more constraints to each of the one or more inputs, the one or more constraints being applied by the computer generating an optimized blending plan that minimizes costs and complexity associated with the production of the consumable product while maximizing quality.
2. The method of claim 1, wherein applying the one or more constraints to each of the one or more inputs comprises applying, by the computer, the one or more constraints to each of the one or more inputs over the predetermined interval of time to generate the optimized blending plan for a concentrated consumable product.
3. The method of claim 1, wherein the method further comprises assessing, by the computer, one or more penalties in a function comprising the one or more inputs and the one or more constraints, the function utilizing the one or more constraints and the one or more penalties to generate the optimized blending plan for a not-from- concentrate consumable product.
4. The method of any of claims 1, 2, or 3, further comprising optimizing, by the computer, an objective function comprising the one or more inputs and the one or more constraints to minimize deviations from a target quality associated with the production of the consumable product.
5. The method of any of claims 1, 2 or 3, wherein receiving one or more inputs associated with the blending of a consumable product over a predetermined interval of time comprises receiving data identifying the consumable product produced from blending various components.
6. The method of any of claims 1, 2, or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving one or more raw material attributes for components utilized in producing the consumable product.
7. The method of any of claims 1, 2, or 3, wherein applying, by the computer, one or more constraints to each of the one or more inputs over the predetermined interval of time comprises enforcing a quality bound associated with product quality for a blended consumable product.
8. The method of any of claims 1, 2, or 3, wherein applying, by the computer, one or more constraints to each of the one or more inputs comprises enforcing a raw material bound associated with one or more categories of raw materials utilized in blending the consumable product.
9. The method of any of claims 1, 2, or 3, wherein applying, by the computer, one or more constraints to each of the one or more inputs comprises enforcing supply requirements for components utilized in blending the consumable product.
10. The method of any of claims 1, 2, or 3, wherein applying, by the computer, one or more constraints to each of the one or more inputs comprises enforcing a component demand requirement for components utilized in blending the consumable product.
11. The method of any of claims 1 or 2, wherein applying, by the computer, one or more constraints to each of the one or more inputs comprises enforcing a component conservation requirement by balancing produced and stored quantities of the consumable product with a supply of components, stored over at least a present and a previous interval of time, the supply of components being utilized in blending the consumable product.
12. The method of any of claims 1, 2, or 3, wherein applying, by the computer, one or more constraints to each of the one or more inputs comprises enforcing quality and component targets associated with product quality and the blending of various components for the consumable product.
13. The method of any of claims 1, 2, or 3, wherein applying, by the computer, one or more constraints to each of the one or more inputs comprises enforcing a capacity bound associated with capacity limitations of blenders and/or suppliers with respect to various components utilized in blending the consumable product.
14. The method of any of claims 1, 2, or 3, wherein applying, by the computer, one or more constraints to each of the one or more inputs comprises enforcing a varietal bounds associated with various component varieties utilized in blending the consumable product.
15. The method of any of claims 1, 2, or 3, wherein applying, by the computer, the one or more constraints to each of the one or more inputs comprises enforcing one or more business rules associated with blending requirements for producing the consumable product.
16. The method of any of claims 1 or 2, wherein receiving one or more inputs associated with the blending of a consumable product over a predetermined interval of time comprises receiving data for an intermediate product, the intermediate product being utilized in combination with one or more blended components in the blending of the consumable product.
17. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving data associated with an age of at least one stored component utilized in the blending of the consumable product.
18. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving quality targets data associated with each of one or more raw material attributes for components utilized in producing the consumable product.
19. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving component targets data for various components contained within in a blended consumable product.
20. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving a maximum number of blended components at a blending facility for blending the consumable product.
21. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving storage capacity data associated with storage facilities which store various components utilized in blending the consumable product.
22. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving node indicator data for available storage capacity at one or more storage facilities which store various components utilized in blending the consumable product.
23. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving plant identification data which identifies one or more plants utilized for blending various components to produce the consumable product.
24. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving load-out capacity data which specifies a load-out capacity from one or more of a farm, a processor and a port utilized in providing various components which are blended to produce the consumable product.
25. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving transportation network data which specifies one or more routes for transporting various components, utilized in blending the consumable product, to a destination.
26. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving supplier component usage data from one or more suppliers of components utilized in blending the consumable product.
27. The method of any of claims 1 or 3, wherein receiving one or more inputs associated with a blending plan for the production of a consumable product over a predetermined time interval comprises receiving cost structure data which specifies various costs associated with producing the consumable product.
28. The method of any of claims 1 or 3, wherein applying, by the computer, one or more constraints to each of the one or more inputs comprises enforcing component age and seasonal restrictions associated with the utilization of various components for blending the consumable product.
29. A computer system for optimizing a blending plan for concentrated consumable products, comprising:
a memory for storing executable program code; and
a processor, functionally coupled to the memory, the processor being responsive to computer-executable instructions contained in the program code and operative to:
receive one or more inputs associated with the blending plan for the concentrated consumable product over a rolling monthly time interval; and
apply, by the computer, one or more constraints to each of the one or more inputs to optimize the blending plan for the concentrated consumable product, the one or more constraints being utilized to enforce one or more of a plurality of bounds for minimizing costs and complexity associated with the production of a concentrated consumable product while maximizing quality.
30. The system of claim 29, wherein the one or more inputs comprise one or more of the following: one or more raw material attributes for components utilized in producing the concentrated consumable product, quantities of the components provided by one or more suppliers, data identifying the concentrated consumable product produced from blending the components and data identifying an intermediate product within the components utilized in producing the concentrated consumable product, wherein the intermediate product is utilized in combination with one or more other components in the blending of the concentrated consumable product.
31. The system of claim 29, wherein the concentrated consumable product comprises a concentrated beverage product, the concentrated beverage product comprising one or more of a concentrated fruit juice and a concentrated liquid dairy product.
32. The system of claim 29, wherein the concentrated consumable product comprises a concentrated liquid food product.
33. The system of claim 29, wherein the one or more constraints comprise one or more of the following: a quality bound associated with enforcing quality for the concentrated consumable product, a raw material bound associated with one or more categories of raw materials utilized in blending the concentrated consumable product, a component bound associated with the blending of components comprising the concentrated consumable product, supply requirements for the components utilized in blending the concentrated consumable product, a component demand requirement for the components utilized in blending the concentrated consumable product, a component conservation requirement utilized in blending the concentrated consumable product, a capacity bound associated with capacity limitations of blenders and suppliers with respect to the components utilized in blending the concentrated consumable product and one or more business rules associated with blending requirements for producing the concentrated consumable product, wherein the component conservation requirement comprises balancing produced and stored quantities of the concentrated consumable product with a supply of the components, the components being stored over at least a present and a previous interval of time.
34. The system of claim 29, wherein the processor is further operative to optimize an objective function comprising the one or more inputs and the one or more constraints to minimize the costs associated with the production of the concentrated consumable product.
35. The system of claim 29, wherein the processor is further operative to optimize an objective function comprising the one or more inputs and the one or more constraints to minimize deviations from a target quality associated with the production of the concentrated consumable product.
36. A computer system for optimizing a blending plan for not-from-concentrate (NFC) consumable products, comprising:
a memory for storing executable program code; and
a processor, functionally coupled to the memory, the processor being responsive to computer-executable instructions contained in the program code and operative to:
receiving one or more inputs associated with a blending plan for the production of an
NFC consumable product over one or more weekly time intervals; applying one or more constraints to each of the one or more inputs; and
assessing one or more penalties in an objective function comprising the one or more inputs and the one or more constraints, the objective function utilizing the one or more constraints and the one or more penalties to generate an optimized blending plan which minimizes costs and complexity associated with the production of the NFC consumable product while maximizing quality.
37. The system of claim 36 wherein the one or more penalties comprise one or more of the following: a penalty for using a stored component in-season, a penalty for over production and a flow penalty.
38. The system of claim 36, wherein the one or more penalties comprise a penalty for violating supply and demand constraints.
39. The systems, methods, and apparatuses substantially as described herein.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201380070877.1A CN104919463B (en) | 2012-12-14 | 2013-12-13 | Blending plan optimization method and system for consumable products |
MX2015007621A MX361438B (en) | 2012-12-14 | 2013-12-13 | Blend plan optimization for consumable products. |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/714,605 | 2012-12-14 | ||
US13/714,569 US10026043B2 (en) | 2012-12-14 | 2012-12-14 | Blend plan optimization for concentrated consumable products |
US13/714,605 US20140172142A1 (en) | 2012-12-14 | 2012-12-14 | Blend Plan Optimization for Not-From-Concentrate Consumable Products |
US13/714,569 | 2012-12-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014093895A1 true WO2014093895A1 (en) | 2014-06-19 |
Family
ID=50935010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2013/075138 WO2014093895A1 (en) | 2012-12-14 | 2013-12-13 | Blend plan optimization for consumable products |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN104919463B (en) |
MX (1) | MX361438B (en) |
WO (1) | WO2014093895A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120116841A1 (en) * | 2010-11-05 | 2012-05-10 | The Coca-Cola Company | System for modeling drink supply and demand |
US20120116565A1 (en) * | 2010-11-05 | 2012-05-10 | The Coca-Cola Company | Total quality management system for optimizing drink process flow |
US20120116563A1 (en) * | 2010-11-05 | 2012-05-10 | The Coca-Cola Company | System for optimizing drink blends |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7668622B2 (en) * | 2004-03-30 | 2010-02-23 | Honeywell International Inc. | Efficient blending based on blending component availablity for a partial blend duration |
NZ532906A (en) * | 2004-05-13 | 2006-10-27 | Fonterra Co Operative Group | Customised nutritional food and beverage dispensing system for dispensing a customised nutritional serving |
US8447423B2 (en) * | 2009-11-30 | 2013-05-21 | Exxonmobil Research And Engineering Company | Method and apparatus for optimizing a performance index of a bulk product blending and packaging plant |
-
2013
- 2013-12-13 MX MX2015007621A patent/MX361438B/en active IP Right Grant
- 2013-12-13 WO PCT/US2013/075138 patent/WO2014093895A1/en active Application Filing
- 2013-12-13 CN CN201380070877.1A patent/CN104919463B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120116841A1 (en) * | 2010-11-05 | 2012-05-10 | The Coca-Cola Company | System for modeling drink supply and demand |
US20120116565A1 (en) * | 2010-11-05 | 2012-05-10 | The Coca-Cola Company | Total quality management system for optimizing drink process flow |
US20120116563A1 (en) * | 2010-11-05 | 2012-05-10 | The Coca-Cola Company | System for optimizing drink blends |
Also Published As
Publication number | Publication date |
---|---|
MX361438B (en) | 2018-12-06 |
CN104919463A (en) | 2015-09-16 |
CN104919463B (en) | 2021-03-23 |
MX2015007621A (en) | 2015-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Alkaabneh et al. | A unified framework for efficient, effective, and fair resource allocation by food banks using an approximate dynamic programming approach | |
Reardon et al. | “Pivoting” by food industry firms to cope with COVID‐19 in developing regions: E‐commerce and “copivoting” delivery intermediaries | |
Ortiz‐Barrios et al. | A case of food supply chain management with AHP, DEMATEL, and TOPSIS | |
Jacoby | Guide to supply chain management | |
Shibin et al. | Enablers and barriers of flexible green supply chain management: a total interpretive structural modeling approach | |
Matson et al. | The role of food hubs in food supply chains | |
Herzberg et al. | Market power and food loss at the producer-retailer interface of fruit and vegetable supply chains in Germany | |
Magatão et al. | Planning and sequencing product distribution in a real-world pipeline network: an MILP decomposition approach | |
Kyomugisha et al. | Potential determinants of profits and market efficiency of potato market chains in Uganda | |
Boulaksil et al. | Small traditional retailers in emerging markets | |
Martin et al. | An objective method to prioritize socio‐environmental water management tradeoffs using multi‐criteria decision analysis | |
Gera et al. | Operations research in food delivery | |
Ghahremani-Nahr et al. | A combined transportation model for the fruit and vegetable supply chain network | |
Mukucha et al. | Supply chain resilience: The role of supplier development in the form of contract farming in fast-food outlets in Zimbabwe | |
Rasulov | Optimization of direct supply chains in the restaurant industry: Addressing key challenges through technological innovation | |
US10026043B2 (en) | Blend plan optimization for concentrated consumable products | |
US20140172142A1 (en) | Blend Plan Optimization for Not-From-Concentrate Consumable Products | |
WO2014093895A1 (en) | Blend plan optimization for consumable products | |
CN108022060A (en) | Load parameter optimization method and device of logistics network | |
Fernando et al. | Cooperatives’ level of vertical integration and farm financial performance amongst smallholder farmer‐members in Sri Lanka | |
Patel et al. | An Adaptive Sequential Decision-Making Approach for Perishable Food Procurement, Storage and Distribution Using Hyperconnected Logistics | |
Chen et al. | Balancing Inventory and Stockout Risk in Retail Supply Chains Using Fast‐Ship | |
Mosquera et al. | Design of insurance contracts using stochastic programming in forestry planning | |
Eiselt et al. | Linear Programming | |
Esteso et al. | Integrating freshness and profitability in horticultural supply chain design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13862885 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: MX/A/2015/007621 Country of ref document: MX |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 13862885 Country of ref document: EP Kind code of ref document: A1 |