Method for capturing, analyzing, and dispensing beverage orders - Patents.com
The system addresses inconsistencies in beverage dispensing by automating ingredient adjustments based on customer modifications, ensuring uniformity and quality through a recipe catalog and generation policy, enhancing customer experience and inventory management.
Patent Information
- Application Number
- JP2024539584
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-12-30
- Filing Date
- 2022-12-23
- Publication Date
- 2025-01-17
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Existing beverage dispensing systems in coffee shops face inconsistencies due to manual ingredient dispensing, which leads to variations in beverage composition and customer dissatisfaction, especially when customers request modifications, as conventional systems cannot accurately adjust ingredient volumes or ratios.
A system for maintaining a recipe catalog and controlling a dispensing system to automatically dispense ingredients according to recipes, including a recipe generation policy that adjusts ingredient proportions dynamically to maintain flavor profiles and consistency, even with customer modifications.
The system ensures beverage uniformity and quality by automating ingredient dispensing, reducing labor and training burdens, minimizing waste, and improving inventory management through precise ingredient control and real-time recipe generation.
Smart Images

Figure 2025501248000001_ABST
Abstract
Description
[Technical field]
[0001] Related Applications U.S. patent application Ser. No. 17 / 646,637, filed December 30, 2021, entitled “METHOD FOR CAPTURING, ANALYZING, AND DISPENSING BEVERAGE ORDERS,” is hereby incorporated by reference in its entirety.
[0002] Field The present disclosure generally relates to maintaining a beverage recipe collection, dynamically generating new recipes based on customer orders, or controlling an automated beverage dispensing platform to automatically dispense customized beverages according to a recipe. [Background technology]
[0003] Beverages in coffee shops are often associated with a standard recipe, and customers may request modifications to the standard recipe, such as the addition or removal of certain flavors. Traditionally, when a beverage order is received, a barista recalls a memorized recipe and creates the beverage by manually pumping ingredients from their respective containers. [Brief description of the drawings]
[0004] [Figure 1] FIG. 1 illustrates an embodiment of a beverage management dispensing environment. [Diagram 2] FIG. 1 illustrates an exemplary automated dispensing system. [Diagram 3] FIG. 1 is a data flow diagram illustrating an embodiment of data flow and communication between various components of a beverage management dispensing environment to dynamically generate a recipe for a beverage according to recipe generation policies. [Figure 4] FIG. 13 is a flow diagram illustrating an embodiment of a routine executed by a recipe manager to dynamically generate a recipe for a beverage according to recipe generation policies. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0005] Various embodiments are depicted in the accompanying drawings for purposes of illustration and should in no way be construed as limiting the scope of the embodiments. Moreover, various features of the various disclosed embodiments can be combined to form additional embodiments that are part of this disclosure.
[0006] Beverages in coffee shops are often associated with a standard (or default) recipe. Typically, each standard recipe is a predefined recipe with specific ingredients and ingredient ratios, designed to provide a specific taste or calorie count, to comply with specific dietary restrictions, etc. Traditionally, upon receiving a beverage order, a barista recalls a memorized recipe and creates the beverage by manually pumping ingredients from their respective containers. However, despite often following the same recipe instructions, creating beverages manually often results in inconsistent beverage compositions, since at least one "pump" of ingredients is not of precise volume.
[0007] Additionally, customers often request modifications to standard recipes. For example, a customer may want half the sugar or double the amount of vanilla flavor compared to the standard recipe for a particular beverage. Conventional pump systems allow for fewer pumps manually, but do not allow for partial pumping of ingredients (e.g., syrup, sauce, or flavors) per pump. This is inherently problematic for the customer's experience, as customers desire more customization with precise control. Additionally, ingredient changes often complicate beverage ordering, further complicating inconsistencies between beverages of the same recipe. For example, a customer who orders the same beverage multiple times may end up receiving a beverage with a significantly different beverage composition, negatively impacting the customer's experience. Additionally, ingredient changes may unnecessarily compromise the original intent and / or flavor profile of the beverage, as the ingredient ratios inevitably change due to the change.
[0008] To address these and other problems, the present specification discloses a system for maintaining a recipe catalog and controlling a dispensing system to automatically dispense ingredients according to the recipe. By maintaining the recipe catalog locally and / or on a remote system accessible to the dispensing systems over a network, the system can advantageously improve beverage uniformity across the dispensing systems. Furthermore, by automating the dispensing of ingredients, the system advantageously improves beverage quality and consistency.
[0009] Further disclosed is a system for dynamically generating beverage recipes according to recipe generation policies. The recipe generation policies can indicate how to adjust the recipe to compensate for ingredient changes. Consider a scenario where a customer requests an additional shot of espresso for a beverage. In such a scenario, simply adding an additional shot of espresso to a standard recipe without changing other ingredients of the recipe may result in a slightly bitter tasting beverage compared to the standard recipe. In such a scenario, the recipe generation policies can indicate a specific set of rules to compensate for the increased bitterness brought about by the additional shot of espresso. For example, the recipe generation policies can indicate compensating for the espresso shot by adding chocolate sauce (e.g., in proportion to the volume of espresso added) to counteract the bitterness of the espresso and removing steamed milk (e.g., in proportion to the volume of espresso and chocolate sauce added) to compensate for the increased fluid volume. By dynamically generating beverage recipes based on ingredient changes, the system can advantageously preserve a particular flavor profile or quality of the beverage despite the ingredient changes.
[0010] Given the description herein, it will be appreciated that the embodiments disclosed herein substantially improve beverage quality and consistency across a fleet of dispensing systems by automating the derivation of ingredients for any of thousands or millions of possible ingredient permutations / combinations. Specifically, the embodiments disclosed herein enable a system to receive an order, derive a recipe (e.g., including ingredients, exact ingredient quantities, and sequence instructions), and facilitate accurate automated dispensing of the beverage according to the derived recipe. The ability to derive a recipe (e.g., in real-time or near real-time) and facilitate automated dispensing of the beverage improves beverage quality and consistency by accurately dispensing beverage ingredients according to the derived recipe, reduces the time it takes a barista to make a beverage by reducing the time it takes to measure and / or manually pump ingredients, and reduces complexity, memorization effort, and training burden by reducing the required recipe memorization and intelligently performed recipe modifications. Additionally, the automated dispensing system advantageously includes fewer plastic containers or pump assemblies, which advantageously reduces waste in the form of smaller packaging of ingredients and reduces cleaning time for pumps and assemblies. Additionally, by automating distribution and improving accuracy, the system may improve the ability to determine and track detailed performance regarding raw material consumption, advantageously reducing manual inventory counts and estimations, thereby improving the accuracy of inventory tracking and replenishment planning.
[0011] I. Environmental Overview 1 illustrates an embodiment of a beverage management and dispensing environment 100, including a network 102, an order management system 110, a product data system 120, and an automated dispensing system 130. For ease of illustration and not to limit the disclosure, only one order management system 110, one product data system 120, and one automated dispensing system 130 are shown in FIG. 1, although multiple may be used.
[0012] Any of the aforementioned components or systems of the environment 100 can communicate via a network 102. Although only one network 102 is shown, there may be multiple separate and / or distributed networks 102. The network 102 may include any type of communication network. For example, the network 102 may include one or more of a wide area network (WAN), a local area network (LAN), a cellular network (e.g., LTE, HSPA, 3G, and other cellular technologies), an ad-hoc network, a satellite network, a wired network, a wireless network, and the like. In some embodiments, the network 102 may include the Internet.
[0013] Any of the aforementioned components or systems of environment 100, such as any one or any combination of order management system 110, product data system 120, or automated distribution system 130, may be implemented using individual computing devices, processors, distributed processing systems, servers, isolated execution environments (e.g., virtual machines, containers, etc.), shared computing resources, etc. Additionally, any of the aforementioned components or systems of environment 100 may be combined and / or include software, firmware, hardware, or any combination of software, firmware, hardware suitable for the purposes described. For example, in some cases, product data system 120 or portions thereof (e.g., recipe manager 122 and / or recipe catalog 124) may be integrated into automated distribution system 130.
[0014] A. Order Management System The order management system 110 may receive customer orders (which may also be referred to as beverage orders or orders) and communicate the order information to the automated dispensing system 130 and / or the product data system 120. Orders may be received by the order management system 110 from any of a variety of sources, such as, for example, from a barista entering a customer order locally at the coffee shop in response to verbal instructions from a customer ordering at an in-store counter or via a drive-thru ordering system, from a customer entering a customer order locally via an in-store self-service kiosk, from a customer using a mobile ordering and payment software application, from a customer using an online ordering method, and / or from other sources.
[0015] The order management system 110 may include or interface with a web browser, a mobile application or "app," a background process that performs various operations with or without direct user interaction, or a "plug-in" or "extension" of another application, such as a web browser plug-in or extension. In some cases, the order management system 110 may be hosted or executed by one or more host devices (not shown), which may broadly include any number of computing devices and / or virtual machine instances. Examples of the order management system 110 may include, but are not limited to, a smartphone, a point-of-sale system, a kiosk, a tablet computer, a handheld computer, a wearable device, a laptop computer, a desktop computer, a server, etc.
[0016] An order may include any of a variety of order information, including, but not limited to, a date, a time, a customer name, a food identifier, a beverage identifier, or an ingredient modifier. A beverage identifier may indicate a particular beverage that a customer orders. For example, a beverage identifier may be any identifier that identifies a particular beverage or a standard recipe associated with the beverage. A beverage identifier may include, but is not limited to, a beverage name, an alphanumeric code associated with the beverage (e.g., SKU), or a recipe for the beverage. Similarly, a food identifier may indicate a particular food item that a customer orders.
[0017] As described herein, in some cases, a customer orders a particular beverage and selects modifications to the standard recipe for that beverage. The order management system 110 may capture and / or analyze the order to identify such modifications, generally referred to herein as ingredient modifiers. An ingredient modifier may indicate a modification to the standard recipe (or modified recipe) associated with the particular beverage the customer orders. An ingredient modifier may provide instructions for an additional ingredient (e.g., an additional shot of espresso), a modification to an existing ingredient (e.g., almond milk instead of 2% milk), the absence of an existing ingredient (e.g., no ice, no whipped cream, no sweetener, etc.), etc. Thus, in some cases, a customer's beverage order may be represented by a beverage identifier and / or one or more ingredient modifiers.
[0018] B. Automatic distribution system The automated dispensing system 130 may include a base ingredient machine 132, a number of ingredient dispensers 134, a controller 136, and a data store 138. As described herein, the automated dispensing system 130 may be configured to automatically dispense precise amounts of ingredients according to a particular recipe. For example, the controller 136 may obtain recipe information and communicate instructions to the base ingredient machine 132 and / or ingredient dispensers 134 that cause the base ingredient machine 132 and / or ingredient dispensers 134 to dispense ingredients according to the recipe information. For example, the base ingredient machine 132 and / or ingredient dispensers 134 may include electronic pumps to facilitate precise dispensing of ingredients. The data store 138 (sometimes referred to as memory 138) may include or be implemented as Amazon Simple Storage Service (S3), Elastic Block Storage (EBS), or cloud storage such as CloudWatch, Google Cloud Storage, Microsoft Azure Storage, InfluxDB, etc. The data store 138 may consist of one or more data stores that store data similar to or the same as that of the recipe catalog 124 described herein.
[0019] C. Product Data System The product data system 120 can include a recipe manager 122, a recipe catalog 124, and an inventory management system 126. As described herein, the product data system 120 can be implemented using individual computing devices, processors, distributed processing systems, servers, isolated execution environments (e.g., virtual machines, containers, etc.), shared computing resources, and the like.
[0020] D. Recipe Manager Recipe manager 122 may be used to manage, create, develop, or update recipes in beverage management dispensing environment 100. For example, recipe manager 122 may maintain recipe catalog 124 with recipe information. Recipe manager 122 may populate recipe catalog 124 with recipe information it receives and / or generates and / or update the recipe catalog over time. As recipe information changes, recipe manager 122 may update recipe catalog 124. In this manner, recipe catalog 124 may maintain an up-to-date database of recipe information.
[0021] In some cases, the order management system 110 and / or the automated distribution system 130 may include a local data store 138 for storing recipe information. For example, the local data store 138 may include recipe information that has been recently created, developed, or updated and corresponds to orders associated with the order management system 110 and / or the automated distribution system 130. In some cases, the recipe manager 122 may maintain the recipe catalog 124 by pinging the order management system 110 and / or the automated distribution system 130 for recipe information or by passively receiving it based on the order management system 110 and / or the automated distribution system 130's own reporting of the recipe information. For example, the recipe manager 122 may ping or receive information from the order management system 110 and / or the automated distribution system 130 at a predetermined time interval, such as every X hours, every X days, etc. Additionally or alternatively, the order management system 110 and / or the automated distribution system 130 may be configured to automatically send its recipe information to the recipe manager 122 and / or the recipe manager 122. In some cases, the recipe catalog 124 may be updated manually, such as by updates to recipes performed by a beverage creator or by the introduction of new recipes.
[0022] Additionally, the recipe manager 122 can send recipe information via data packets to the order management system 110 and / or the automated dispensing system 130, such as as part of updates to some or all of the order management system 110 and / or the automated dispensing system 130. For example, the recipe manager 122 can communicate recipe updates to the automated dispensing system 130 at predetermined time intervals, such as daily, weekly, or monthly. In some cases, the recipe manager 122 provides recipe information when a recipe or an update thereto becomes available to the recipe manager 122. In some cases, the recipe manager 122 provides recipe information when a beverage creator further develops a recipe or creates a tasting recipe. As another example, the automated dispensing system 130 can query the recipe manager 122 for recipe information or can download recipe information from the recipe catalog 124.
[0023] E. Recipe Catalog The recipe catalog 124 can store recipe information. In some embodiments, the recipe information can include beverage identifiers, ingredient identifiers, ingredient modifiers, ingredient sequence instructions, and the like. The recipe catalog 124 can be maintained (e.g., entered, updated, etc.) by the recipe manager 122. As previously mentioned, in some embodiments, the recipe manager 122 and the recipe catalog 124 can be separate or independent from the order management system 110 and / or the automated dispensing system 130. Alternatively, in some embodiments, the recipe manager 122 and / or the recipe catalog 124 are part of the order management system 110 and / or the automated dispensing system 130. Further, in some cases, the recipe catalog 124 can be separate from the recipe manager 122 or included in or be part of the recipe manager.
[0024] As described herein, the beverage identifier can be associated with a recipe for the beverage. The recipe can include ingredient groups and / or specific amounts of each ingredient. The ingredients can include, but are not limited to, milk options (e.g., 2%, nonfat, full fat, breve, heavy cream, almond, coconut, oatmeal, or soy), flavors (e.g., apple brown sugar syrup, brown sugar syrup, caramel syrup, cinnamon dolce syrup, funnel cake syrup, hazelnut syrup, peppermint syrup, raspberry syrup, toffee nut syrup, vanilla syrup, or unsweetened vanilla syrup), sauces (e.g., mocha sauce, dark caramel sauce, pumpkin sauce, or white chocolate mocha sauce), additives (e.g., chocolate malt powder or vanilla bean powder), sweeteners (e.g., sugar, cane sugar, synthetic sugar substitutes, natural sugar substitutes (e.g., honey), classic syrup, or honey blend), and the like.
[0025] Furthermore, the recipe may include a sequence of ingredients. For example, a recipe for a creamy coffee drink may dispense hot espresso coffee extract into a cup, followed by two pumped dispenses of vanilla syrup, followed by one pumped dispense of white chocolate mocha sauce, followed by a quantity of steamed almond milk, and finally two pumped dispenses of toffee nut flavor. A recipe for a non-creamy drink may dispense the same ingredients and amounts, but in a different order (e.g., one pumped dispense of white chocolate mocha sauce, followed by two pumped dispenses of vanilla syrup, followed by one pumped dispense of steamed almond milk, followed by two pumped dispenses of toffee nut flavor, and finally a hot espresso coffee extract on top). Thus, different drinks are made by not only varying the type or amount of ingredients and modifiers (e.g., sauce, syrup, flavor), but also by varying the order in which they are added to the drink.
[0026] The recipe catalog 124 may store one or more beverage identifiers. In some embodiments, the beverage identifiers may be implemented as alphanumeric or other identifiers that can be used to uniquely identify one beverage identifier from other beverage identifiers stored in the recipe catalog 124.
[0027] In some cases, each beverage identifier may identify a particular beverage. By way of example, specific beverages associated with a beverage identifier may include, but are not limited to, cafe mocha, cafe latte, cafe americano, pumpkin cream cold brew, iced brown sugar oat milk shake 'n' espresso, iced peach green tea lemonade, honey citrus mint tea, nitro cold brew, etc.
[0028] Additionally, each beverage identifier may be associated with one or more of the following information regarding beverage characteristics (e.g., beverage size, base beverage (tea, coffee, etc.)), a recipe, a recipe ingredient group, one or more ingredient modifiers, ingredient sequencing instructions, and / or recipe generation policies.
[0029] The recipe catalog 124 can include or be implemented as cloud storage, such as Amazon Simple Storage Service (S3), Elastic Block Storage (EBS) or CloudWatch, Google Cloud Storage, Microsoft Azure Storage, InfluxDB, etc. The recipe catalog 124 can be configured with one or more data stores that store data received from one or more of the order management system 110, the automated distribution system 130, or the recipe manager 122, or data received directly into the recipe catalog 124. The recipe catalog 124 can be configured to provide high availability, high resilience, low loss data storage. The recipe catalog 124 can include Amazon CloudWatch metrics. In some cases, to provide high availability, high resilience, low loss data storage, the recipe catalog 124 can store multiple copies of data in the same and different geographic locations and across different types of data stores (e.g., solid state, hard drive, tape, etc.). Additionally, once data is received in the recipe catalog 124, it can be automatically replicated multiple times across the same and / or different geographic locations to different data stores according to a replication factor.
[0030] A non-limiting example of a data structure for storing recipe information is shown in Table 1.
[0031] [Table 1]
[0032] Referring to the example of Table 1, beverage identifier 65 is associated with a beverage name "Cafe Mocha" and a beverage size "Grande." Additionally, beverage identifier 65 is associated with multiple ingredient identifiers (hot espresso, mocha sauce, steamed 2% milk) and multiple corresponding ingredient amounts (2 fluid ounces, 4 fluid ounces, 8 fluid ounces). In this example, the associated ingredients and ingredient amounts correspond to a recipe for the beverage. Additionally, in this example, beverage identifier 65 is not associated with an ingredient modifier. Sometimes beverages that are not associated with ingredient modifiers are referred to as "standard" or default beverages. Thus, in this example, beverage identifier 65 may correspond to a standard beverage recipe, Grande Cafe Mocha.
[0033] Table 1 also includes a row for beverage identifier 66. Like beverage identifier 65, beverage identifier 66 is also associated with the beverage name "Cafe Mocha" and the beverage size "Grande." However, beverage identifier 66 is additionally associated with several ingredient modifiers, namely, "+1 ounce" of espresso and the substitution of "2%" milk for "Almond" milk. Looking at both of these examples in Table 1, note that even though beverage identifier 66 is associated with an additional ounce of espresso, the total volume of all ingredients is 14 ounces. This is because the recipe reduces the volume of milk in proportion to the increased volume of espresso.
[0034] It will be appreciated that the beverage identifier input can be configured in a variety of ways. It will be appreciated that the beverage identifier data structure can include less information or additional information. For example, sequence instructions for a recipe can be included, or beverage size can be omitted, etc.
[0035] F. Inventory Management System The inventory management system 126 can be used to manage, track, or order inventory at one or more stores. For example, as previously described, the automated distribution system 130 can be configured to dispense precise amounts of ingredients. The precision allows for the determination and / or tracking of the exact amount of ingredients left over. When additional ingredients are used, the inventory management system 126 can be updated to reflect the change. In this manner, the inventory management system 126 can improve the ability to determine and track detailed performance regarding ingredient consumption, advantageously reducing manual inventory counts and estimates, thereby improving the accuracy of inventory tracking and inventory replenishment planning. In some cases, the inventory management system 126 is implemented as part of the automated distribution system 130.
[0036] II. Exemplary Automated Dispensing System 2 illustrates an exemplary automated dispensing system 230 for automatically dispensing beverage ingredients according to a recipe. The automated dispensing system 230 includes base ingredient machines 202A, 202B, a number of dispensers 234A, 234B, 234C, 234D, 234E, 234F, 234G (individually or collectively referred to as dispensers 234 or dispensers 234), a dispenser spout 205, a display screen 242, and / or a controller (such as controller 136 of FIG. 1). The automated dispensing system 230 may be the automated dispensing system 130 of the embodiment of FIG. 1.
[0037] The base ingredient machines 202A, 202B can be configured to brew or dispense base ingredients such as espresso, coffee, tea, etc. For example, the base ingredient machines 202A, 202B can include, but are not limited to, coffee espresso machines or tea machines. It will be understood that the base ingredient machines 202A, 202B in FIG. 2 are merely examples, and thus FIG. 2 should not be construed as limiting.
[0038] The dispenser spout 205 is configured to dispense a liquid, such as hot or cold water, an ingredient or combination of ingredients, or a prepared beverage. In some cases, the dispenser spout 205 may facilitate manual dispensing, for example by a barista. In some cases, the dispenser spout 205 facilitates automated dispensing, as described herein. The dispenser spout 205 may be a centralized dispenser spout configured to dispense some or all of a set of ingredients through the dispenser spout 205. Additionally or alternatively, the dispenser spout 205 may be configured to dispense a single ingredient. For example, the automated dispensing system 230 may include multiple dispenser spouts 205, such as one for each ingredient.
[0039] In addition to displaying graphical, animated, or alphanumeric text information to the barista, the display screen 242 may include a touch screen display configured to receive user input based on pressing graphical buttons or icons on a graphical user interface of the display screen 242. Additionally or alternatively, the display 242 may display information or instructions to the barista or other user, such as errors, warning or alert indications, recipe instructions, or other beverage information.
[0040] The dispensers 234 can be controlled from or by one or more controllers. For example, the individual dispensers 234 can be controlled by or with a single centralized controller that provides power and control signals (which may include data or other information, such as recipe information) to each of the dispensers 234. In other configurations, each dispenser 234 can be controlled by a dedicated local controller, or subgroups of dispensers can be controlled by a controller. Each dispenser 234 can be modified or adapted to dispense any ingredient by altering certain pump characteristics or dispensing parameters (e.g., pumping speed, timing, volumetric dispensing, and dispensing algorithms).
[0041] In some cases, the dispensers 234 are modular. For example, dispensers 234 can be quickly and easily added to or removed from the automated dispensing system 230 in different configurations without adversely affecting the operation of the other dispensers 234 or the automated dispensing system 230.
[0042] Dispense instructions (e.g., dispense amounts) can be entered by an individual barista through a user input device (e.g., display 242) of the dispenser or at a location remote from the dispenser, for example, if the dispense instructions deviate from a standard recipe for the beverage. Alternatively, dispense instructions can be automatically received by the automated dispensing system 230 from the order management system 110 or product data system 120. Even when dispense instructions are received from the order management system 110 or product data system 120, a user (e.g., barista) can manually modify the dispense instructions (e.g., if a customer changes their mind after the initial transaction).
[0043] It will be understood that the automated dispensing system 230 may include fewer or more components, as desired. For example, the automated dispensing system 230 may be an automated dispensing system of embodiments more fully described in U.S. Patent Application Publication No. 2021 / 0221667, entitled "AUTOMATED DISPENSING SYSTEM FOR CUSTOMIZED BEVERAGES," filed January 14, 2021, which is incorporated herein by reference in its entirety and is intended to include concepts that are compatible with and may be used in combination with any combination of embodiments and / or features described herein.
[0044] III. Generating a recipe for a modified version of the beverage 3 is a data flow diagram illustrating an embodiment of data flow and communication between various components of the beverage management dispensing environment 100 for dynamically generating a recipe for a beverage according to a recipe generation policy. The data flow diagram of FIG. 3 illustrates an example of data flow and communication between the order management system 110, the product data system 120 (e.g., the inventory management system 126, the recipe manager 122, and / or the recipe catalog 124), and the automated dispensing system 130. It will be understood that in some embodiments, one or more of the functions described herein with respect to FIG. 3 may be omitted, may be performed simultaneously or in a different order, and / or may be performed by different components of the beverage management dispensing environment 100. Thus, the illustrated embodiments and descriptions should not be construed as limiting.
[0045] At (1), the product data system 120 receives new recipes and / or updates or modifications to existing recipes. As described herein, the product data system 120 may include a recipe catalog 124 that stores recipe information such as a recipe identifier (e.g., beverage name or SKU) and associated ingredients, ingredient quantities, sequence instructions, etc. In some cases, a beverage creator may interact with the product data system 120 to communicate new recipes and / or updates or modifications to existing recipes. For example, a beverage creator may introduce or activate seasonal recipes, trial or sample recipes, modifications to recipes, etc. The recipe manager 122 may update the recipe catalog 124 with this information. Additionally, in some cases, some or all of the contents of the recipe catalog 124 may be communicated to one, some or all of the automated dispensing systems 130.
[0046] At (2), the order management system 110 receives a beverage order for a first beverage. The beverage order may be received by the order management system 110 from any of a variety of sources, such as, for example, from a barista entering a beverage order locally at the coffee shop in response to verbal instructions from a customer ordering at an in-store counter or via a drive-thru ordering system, from a customer entering a beverage order locally via an in-store self-service kiosk, from a customer using a mobile ordering and payment software application, from a customer using an online ordering method, and / or from other sources.
[0047] At (3), the order management system 110 communicates an indication of the beverage order to the automated dispensing system 130. Optionally, the order management system 110 receives the order and forwards the order information to the automated dispensing system 130 to communicate the order to the automated dispensing system 130.
[0048] At (4), the automated dispensing system 130 determines whether a recipe associated with the order information is available in local storage (e.g., data store 138) and / or remote storage (e.g., recipe catalog 124). For example, as described herein, the automated dispensing system 130 can include and / or maintain a local data store 138 that includes a group of recipes, such as a copy of recent information stored in recipe catalog 124. Using the order information, the automated dispensing system 130 can consult its local data store 138 to determine whether an associated recipe is available. For example, the automated dispensing system 130 can compare at least a portion of the order data to data stored in the local data store 138 to determine whether an associated order is available. In some cases, if a recipe is available in the local data store 138, the automated dispensing system 130 can identify the recipe and proceed to interaction (9) where the automated dispensing system 130 dispenses the beverage.
[0049] In some cases, if the recipe is not available in the local data store 138, the automated dispensing system 130 can check the recipe catalog 124 for the recipe. For example, at (5), the automated dispensing system 130 communicates a request or inquiry for a recipe to the recipe manager 122, e.g., via a data packet. In some cases, as part of the request, the automated dispensing system 130 communicates at least a portion of the order information, such as a beverage identifier and ingredient modifiers. In some cases, as part of the request, the automated dispensing system 130 communicates all of the order information. In some cases, communication of the order information (or a portion thereof) may itself serve as a request, so that there is no need to send a separate request. In some cases, the automated dispensing system 130 consults the recipe catalog 124 before or instead of consulting its local data store 138.
[0050] At (6), the automated distribution system determines that the recipe associated with the order information is unavailable.
[0051] At (7), the automated dispensing system 130 generates a recipe based on the order information and a recipe generation policy. For example, as described above, the information may include data such as a beverage identifier and one or more ingredient modifiers. As part of generating the recipe, the automated dispensing system 130 may use the beverage identifier to retrieve a standard recipe from the data store 138. Additionally, the automated dispensing system 130 may retrieve a recipe generation policy, which may also be stored in the data store 138. As described herein, to generate the recipe, the automated dispensing system 130 may make modifications to the standard recipe (or another recipe) based on the ingredient modifiers and / or the recipe generation policy.
[0052] A recipe generation policy can indicate how to adjust or create a recipe in response to an ingredient change. For example, a recipe generation policy can include a set of specific rules or instructions on how to change ingredients, ingredient quantities, ingredient order, etc. so that an ingredient change is implemented and / or other criteria (e.g., flavor profile, calorie count, dietary restrictions, volume thresholds, etc.) are met.
[0053] In some cases, the recipe generation policy indicates that the total volume of the ingredients should meet the volume threshold. For example, if the ingredient modifier indicates the presence of an additional ingredient or an increase in an existing ingredient compared to the standard recipe, the recipe generation policy may indicate that at least one existing ingredient is to be decreased so that the total volume of the new recipe does not exceed the volume threshold. As another example, if the ingredient modifier indicates the absence of an existing ingredient or a decrease in an existing ingredient compared to the standard recipe, the recipe generation policy may indicate that at least one existing ingredient is to be increased so that the total volume of the new recipe does not exceed the volume threshold. The particular ingredient to be increased or decreased may be determined using multiple techniques. For example, in some cases, the particular ingredient may be a main ingredient, such as an ingredient that makes the largest volume according to the standard recipe. As another example, in some cases, the particular ingredient may be an ingredient that complements the modified ingredient. For example, if a relatively bitter ingredient (e.g., espresso) is added, a similarly bitter ingredient may be removed and / or a sweet ingredient (e.g., mocha sauce) may be added to compensate for the possible change in taste.
[0054] The volume threshold can vary depending on the embodiment. For example, the volume threshold can be based on the size of the cup (e.g., small, medium, large), the presence or absence of a particular ingredient (e.g., whipped cream), user preferences, etc. For example, a small size cup may hold approximately 12 ounces of liquid. In some examples, the volume threshold can be approximately 12 ounces. Alternatively, the volume threshold can be offset somewhat from 12 ounces (e.g., 0.25, 0.5, or 1 ounce) to prevent the cup from overflowing or spilling. As another example, if the modified recipe includes whipped cream, the volume threshold can be reduced, such as to leave enough room to add the whipped cream after the beverage is prepared.
[0055] In some cases, the recipe generation policy indicates how to compensate for a particular ingredient, such that the beverage substantially retains its flavor profile, as compared to a standard recipe. Consider a scenario in which a customer requests an additional shot of espresso for a beverage. In such a scenario, simply adding an additional shot of espresso to the standard recipe, without changing other ingredients of the recipe, may result in a more bitter tasting beverage, as compared to the standard recipe. Thus, the recipe generation policy may indicate a particular set of rules to compensate for the increased bitterness brought about by the additional shot of espresso. For example, the recipe generation policy may indicate to compensate for the espresso shot by adding chocolate sauce (or other flavors of the standard recipe) and / or removing steamed milk (e.g., in proportion to the volume of espresso and chocolate sauce added). By dynamically generating a beverage recipe based on ingredient changes, the system can advantageously maintain the flavor profile or quality of the beverage despite the ingredient changes.
[0056] In some implementations, the recipe generation policy indicates proportional changes to all ingredients in response to the presence of additional ingredients or the absence of existing ingredients. Consider a scenario in which a standard beverage includes 3.5 ounces of steamed milk, 2 ounces of chocolate sauce, and 2 ounces of espresso. Further, assume that an ingredient modifier indicates an additional shot of espresso. In such a scenario, the recipe generation policy may instruct to proportionally reduce the amounts of steamed milk and chocolate sauce to account for the additional 1.5 ounces of espresso, such that the generated recipe contains approximately 2.54 ounces of steamed milk, 1.45 ounces of chocolate sauce, and 3.5 ounces of espresso. The recipe generation policy may indicate a similar proportional adjustment when an ingredient is removed from the standard recipe.
[0057] In some cases, the recipe generation policy may indicate that adjustments to the recipe should be made according to the ingredient modifier, but that no other adjustments should be made to the ingredients. For example, returning to the example above where a standard beverage includes 3.5 ounces of steamed milk, 2 ounces of chocolate sauce, and 2 ounces of espresso, if the ingredient modifier indicates an extra shot of espresso, the recipe generation policy may indicate that all original ingredients should be retained and the generated recipe should include approximately 3.5 ounces of steamed milk, 2 ounces of chocolate sauce, and 3.5 ounces of espresso. In some examples, this may require the system to utilize a larger cup (e.g., the next larger size) when dispensing the beverage.
[0058] At (8), the automated dispensing system 130 stores the generated recipe instructions in the data store 138 and / or the recipe catalog 124. As described herein, the automated dispensing system 130 can maintain the data store 138 with the latest recipe information. Similarly, the recipe manager 122 can maintain the recipe catalog 124 with the latest recipe information. Thus, in some cases, whenever the automated dispensing system 130 generates a new recipe, the automated dispensing system 130 can enter the generated recipe into the data store 138 and / or the recipe catalog 124. In some cases, as part of entering the generated recipe, the automated dispensing system 130 can generate a beverage identifier associated with the generated recipe. Additionally, as described herein, the data store 138 and / or the recipe catalog 124 can store an association between the beverage identifier, the recipe, ingredient modifiers, etc. Storing the generated recipe allows the automated dispensing system 130 to retrieve the recipe information if the order is placed again, rather than regenerating the recipe. Additionally, storing the generated recipe fills in any "gaps" in the recipe.
[0059] At (9), the automated dispensing system 130 automatically dispenses ingredients according to the generated recipe. As described herein, the automated dispensing system 130 can include a controller 136, one or more ingredient dispensers 134, and / or a base ingredient machine 132. Each ingredient dispenser 134 can be configured to store one or more ingredients and can be controlled by the controller 136 to dispense a precise amount of each ingredient. The controller 136 retrieves the recipe and communicates instructions to each ingredient dispenser 134 (e.g., a dispenser pump) based on the recipe. The pump of the ingredient dispenser 134 then dispenses a precise volume of the ingredient into a container through a dispensing spout.
[0060] At (10), the automated distribution system 130 tracks consumption of ingredients based at least in part on distributing ingredients according to the generated recipe. As previously discussed, improving the accuracy of the distribution system 130 allows for accurate ingredient usage to be determined and tracked. In this manner, the automated distribution system 130 may improve its ability to determine and track detailed ingredient consumption, advantageously reducing manual inventory counts and estimations, thereby improving the accuracy of inventory tracking and inventory replenishment planning. In some cases, the product data system 120 (e.g., inventory management system 126) may track inventory and / or manage automated ordering of additional supplies based on inventory tracking.
[0061] It will be appreciated that the various interactions described with respect to Figure 3 can be performed in various orders and / or can be performed simultaneously or in modified orders as desired. For example, in some cases, the automated dispensing system 130 can simultaneously store recipe information in the data store 138 and the recipe catalog 124. In some cases, the data flow of Figure 3 occurs in real-time or near real-time. In this manner, recipes can be generated and / or beverages can be dispensed without causing significant delays to the customer.
[0062] Further, it will be understood that fewer, more, or different blocks may be used as part of the data flow of Figure 3. For example, in some cases, the data in the recipe catalog 124 is available for download by the automated dispensing system 130, or the data in the recipe catalog 124 may be part of a software update that the recipe manager 122 periodically distributes to the automated dispensing system 130. In this manner, in some cases, the data stored locally on the automated dispensing system 130 is the same as the data stored in the recipe catalog, and thus interaction (4) may be omitted.
[0063] As another example, in some cases, the automated dispensing system 130 may not need to perform one or more of interactions (4), (5), or (6). For example, the automated dispensing system 130 may store recipe creation policies and thus can create recipes itself without interacting with recipe manager 122. In some examples, the automated dispensing system 130 can communicate instructions for the created recipes to recipe manager 122 so that recipe manager 122 can update the recipe catalog 124.
[0064] IV. Recipe Catalog Management 4 is a flow diagram illustrating an embodiment of a routine 400 executed by recipe manager 122 to dynamically generate recipes for beverages according to recipe generation policies. Although described as being executed by recipe manager 122, it will be understood that the elements outlined for routine 400 may be executed by one or more computing devices or components associated with beverage management dispensing environment 100, such as, without limitation, product data system 120, recipe catalog 124, order management system 110, or automated dispensing system 130. Thus, the following illustrated embodiment should not be construed as limiting.
[0065] At block 402, the recipe manager 122 maintains the recipe catalog 124. In some cases, the recipe manager 122 maintains the recipe catalog 124 by communicating with some or all of the automated distribution system 130 or the order management system 110. For example, in some cases, the automated distribution system 130 and / or the order management system 110 can obtain or manage recipe information, such as available ingredient indications, customer created recipes, and / or recipe modifications. The recipe manager 122 can receive the recipe information and use it to update and / or maintain the recipe catalog 124. In certain embodiments, the recipe manager 122 can communicate with the automated distribution system 130 and / or the order management system 110 to receive recipe information from which it can determine additional recipes or recipe modifications and use that information to maintain the recipe catalog 124.
[0066] In some cases, recipe manager 122 communicates with the automated distribution system 130 and / or the order management system 110 by pinging them and receiving responses. For example, recipe manager 122 may ping the automated distribution system 130 at predetermined time intervals, such as every 60 seconds, every 30 or 60 minutes, or every 4, 8 or 12 hours. In certain embodiments, the automated distribution system 130 may be configured to automatically send recipe data to recipe manager 122.
[0067] The recipe catalog 124 may include, among other things, a beverage recipe collection for multiple beverages. For example, for each beverage, the recipe catalog 124 may include a standard recipe associated with a collection of ingredients and a corresponding amount of each ingredient. In some cases, the recipe catalog 124 includes multiple standard recipes for a particular beverage, such as different standard recipes for each available size of the beverage. In some cases, for a particular beverage, the ingredients and / or ingredient ratios are the same across beverage sizes. Alternatively, the ingredients and / or ingredient ratios may differ across beverage sizes. Ingredients may include, but are not limited to, sauces, syrups, sweeteners, colors, flavors, ice, water, dairy or non-dairy products, espresso, whipped cream, and the like.
[0068] In some cases, the recipe information includes one or more modified recipes. The modified recipes can be modified versions of the standard recipes, such as versions with additions or deductions compared to the respective standard recipes. In some cases, the modified recipes are associated with ingredient modifiers. For example, as described herein, ingredient modifiers can indicate the addition or removal of ingredients compared to the standard recipes.
[0069] At block 404, the recipe manager 122 receives a first beverage identifier that identifies a first beverage of a plurality of beverages in the recipe catalog 124. As described herein, the first beverage may correspond to a beverage associated with a standard or default recipe. For example, the recipe manager 122 may search the recipe catalog 124 for the first beverage identifier to determine various information associated with the beverage, such as recipe information, ingredients, beverage name, etc.
[0070] At block 406, the recipe manager 122 receives an ingredient modifier. As described herein, an ingredient modifier can indicate a modification to a standard beverage. For example, an ingredient modifier can indicate the addition of a new ingredient (and the amount of the new ingredient) to a recipe. As another example, an ingredient modifier can indicate the addition of an existing ingredient (and the amount of the new ingredient) to a recipe. As another example, an ingredient modifier can indicate the reduction or removal of an existing ingredient (and the amount of the new ingredient) from a recipe. As another example, an ingredient modifier can indicate the substitution of an existing ingredient for another ingredient. Although described as a single ingredient modifier, it will be appreciated that any number of ingredient modifiers can be received based, for example, on the beverage order.
[0071] At block 408, the recipe manager 122 generates a modified recipe for the first beverage. As described herein, the recipe manager 122 generates the modified recipe based at least in part on the first beverage identifier, the ingredient modifiers, and the recipe generation policies. The recipe generation policies may include a set of specific rules or instructions for modifying ingredients to perform the ingredient modifications. As described herein, the recipe generation policies may vary between embodiments. For example, in some cases, the recipe generation policies indicate that the total volume of the standard ingredients should be equal to the total volume of the modified ingredients. As another example, in some cases, the recipe generation policies indicate to retain a specific ingredient ratio from the standard recipe when generating the modified recipe.
[0072] At block 410, the recipe manager 122 communicates the modified recipe to the automated dispensing system 130. The automated dispensing system 130 can automatically dispense ingredients according to the modified recipe. As described herein, the automated dispensing system 130 can include a controller 136, one or more ingredient dispensers 134, and / or a base ingredient machine 132. Each dispenser 134 can be configured to store one or more ingredients and can be controlled by the controller 136 to dispense a precise amount of each ingredient. The controller 136 retrieves the recipe and communicates instructions to each dispenser 234 (e.g., a dispenser pump) based on the recipe. The pump of the dispenser 234 then dispenses a precise volume of the ingredient into a container through a dispensing spout.
[0073] V. term Although certain embodiments have been described herein with respect to flavors, sauces, or syrups for coffee or tea beverages, the systems described herein can be used with any type of ingredient or food product. For example, in some embodiments, the systems herein can be used to deliver liquid or solid ingredients such as ketchup, mustard, barbecue sauce, cheese sauce, condiments, onions, etc. In some embodiments, the systems herein can be used to produce other types of beverages such as sodas, juices, smoothies, milkshakes, etc.
[0074] Conditional language used herein, particularly "can," "can be," "may," "for example," and the like, is generally intended to convey that certain features, elements, and / or conditions are included in some embodiments but not in other embodiments, unless specifically stated otherwise or understood otherwise within the context in which it is used. Thus, such conditional language is generally not intended to imply that the features, elements, blocks, and / or conditions are in any way required to one or more embodiments, or that one or more embodiments necessarily include logic for determining whether or not those features, elements, and / or conditions are included or performed in any particular embodiment, with or without further input or prompting.
[0075] In some embodiments, certain acts, events, or functions of any of the processes or algorithms described herein may be performed in a different sequence, may be added, may be combined, or may be omitted entirely (e.g., not all acts or events described are required to practice an algorithm). Further, in certain embodiments, acts or events may be performed simultaneously.
[0076] The various exemplary logic blocks, modular dispensers, routines, and algorithm steps described in connection with the embodiments disclosed herein can be implemented as electronic hardware, computer software, or a combination thereof. To clearly illustrate this interchangeability between hardware and software, the various exemplary components, blocks, modular dispensers, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the particular application and design constraints imposed on the overall system. The described functionality can be implemented in various ways for each particular application, and such implementation decisions should not be interpreted as a departure from the scope of the present disclosure.
[0077] Additionally, the various exemplary logic blocks and modular dispensers described in connection with the embodiments disclosed herein may be realized or executed by a machine such as a general purpose processor unit, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. The general purpose processor unit may be a microprocessor, but may alternatively be a controller, a microcontroller, or a state machine, combinations thereof, and the like. The processor unit may include electrical circuitry configured to process computer executable instructions. In another embodiment, the processor unit includes an FPGA, or other programmable device that performs logical operations without processing computer executable instructions. The processor unit may also be implemented as a combination of computing devices, such as, for example, a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in combination with a DSP core, or any other such configuration. Although described herein primarily with respect to digital technology, the processor unit may include primarily analog components. For example, some or all of the signal processing algorithms described herein may be implemented with analog circuitry or with mixed analog and digital circuitry. The computing environment may include any type of computer system, including but not limited to a computer system based on a computational engine within a microprocessor, mainframe computer, digital signal processor, portable computing device, device controller, or appliance.
[0078] Elements of the methods, processes, routines or algorithms described in connection with the embodiments disclosed herein may be embodied directly in hardware, in software modules executed by a processor unit, or in a combination thereof. The software modules may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, a hard disk, a removable disk, a CD-ROM, or any other form of non-transitory computer-readable storage medium. An exemplary storage medium may be coupled to the processor unit such that the processor unit can read information from the storage medium and write information to the storage medium. Alternatively, the storage medium may be integral to the processor unit. The processor unit and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. Alternatively, the processor unit and the storage medium may reside as discrete components in a user terminal.
[0079] Although the above detailed description shows, describes and points out novel features that are applicable to various embodiments, it should be understood that various omissions, substitutions and changes in the form and details of the illustrated apparatus or algorithms can be made without departing from the spirit of the present disclosure. For example, although different numbers are used for similar components or features in different figures (e.g., different numbers are used for dispenser modules, displays, controllers, etc.), structural and functional features described in connection with one figure, embodiment or numbered element can be incorporated into a different numbered component or feature, and vice versa. As can be recognized, certain embodiments described herein can be embodied in a form that does not provide all of the features and advantages set forth herein, since some features can be used or practiced separately from other features. The scope of certain embodiments disclosed herein is indicated by the appended claims, rather than by the foregoing description. All changes that come within the meaning and range of equivalents of the claims are intended to be embraced within their scope.
Claims
1. 1. A method comprising: maintaining a recipe catalog identifying a beverage recipe collection for a plurality of beverages, the beverage recipe collection including a standard recipe for a first beverage of the plurality of beverages, the standard recipe including a first group of ingredients and quantities associated with each ingredient in the first group of ingredients; receiving a first beverage identifier identifying the first beverage; receiving an ingredient modifier indicating a change to at least one of the first ingredient group or respective quantities of specific ingredients of the first ingredient group; generating a modified recipe for the first beverage based at least in part on the standard recipe, the ingredient modifiers, and recipe generation policies, the modified recipe including a second ingredient group and quantities associated with each ingredient in the second ingredient group; communicating instructions of the modified recipe to an automated dispensing system having a plurality of dispensers, a controller of the automated dispensing system causing a plurality of modular dispensers to dispense the second group of ingredients in accordance with the modified recipe; The method includes:
2. the ingredient modifier indicates the presence of an additional ingredient, the first ingredient group does not include the additional ingredient, and the second ingredient group includes the additional ingredient. The method of claim 1.
3. the ingredient modifier indicating a change in a first quantity of a first ingredient of the first ingredient group; The method of claim 1.
4. the second group of ingredients is the same as the first group of ingredients; a first quantity of a first ingredient of the first ingredient group is different from a second quantity of the first ingredient of the second ingredient group; The method of claim 1.
5. the recipe creation policy indicates that a total volume of the first ingredient group should be equal to a total volume of the second ingredient group; The method of claim 1.
6. the standard recipe indicates specific ratios for the first group of ingredients; the recipe creation policy indicates maintaining the specific ratio for the second ingredient group; The method of claim 1.
7. the ingredient modifier indicates the presence of a particular amount of an additional ingredient; generating the modified recipe includes proportionally modifying quantities of the first ingredient group such that a total volume of the first ingredient group according to the standard recipe is equal to a total volume of the second ingredient group according to the modified recipe; The method of claim 1.
8. The method further includes storing the modified recipe for the first beverage in the recipe catalog for later retrieval. The method of claim 1.
9. receiving the first beverage identifier and the first ingredient modifier in response to a beverage order; the beverage order includes a change to the first beverage; The method of claim 1.
10. the automated dispensing system is one of a plurality of automated dispensing systems; and communicating instructions for a modified recipe for the first beverage to each of the plurality of automated dispensing systems. The method of claim 1.
11. The method further includes receiving a request for the modified recipe from the automated dispensing system; the step of communicating the modified recipe instruction occurs in response to receiving the request. The method of claim 1.
12. The method comprises: maintaining an inventory database indicating remaining quantities of the raw material set; updating the inventory database to reduce inventory associated with the second ingredient group based on an amount dispensed, in response to the automated dispensing system dispensing the second ingredient group according to the modified recipe; Further comprising: The method of claim 1.
13. 1. A computing system comprising a memory and one or more processors coupled to the memory, the memory stores a recipe catalog identifying a beverage recipe collection for a plurality of beverages, the beverage recipe collection including a standard recipe for a first beverage of the plurality of beverages, the standard recipe including a first group of ingredients and quantities associated with each ingredient of the first group of ingredients; The one or more processors: receiving a first beverage identifier identifying the first beverage; receiving an ingredient modifier indicating a change to at least one of the first ingredient group or a quantity of a particular ingredient of the first ingredient group; generating a modified recipe for the first beverage based at least in part on the standard recipe, the ingredient modifiers, and recipe generation policies, the modified recipe including a second ingredient group and quantities associated with each ingredient in the second ingredient group; communicating instructions of the modified recipe to an automated dispensing system having a plurality of dispensers, a controller of the automated dispensing system causing a plurality of modular dispensers to dispense the second group of ingredients in accordance with the modified recipe; 4. The method of claim 3, Computing system.
14. the ingredient modifier indicates the presence of a particular amount of an additional ingredient; To generate the modified recipe, the one or more processors are configured to proportionally modify quantities of the first ingredient group such that a total volume of the first ingredient group according to the standard recipe equals a total volume of the second ingredient group according to the modified recipe.
14. The computing system of claim 13.
15. the one or more processors are configured to store the modified recipe for the first beverage in the recipe catalog for later retrieval.
14. The computing system of claim 13.
16. the one or more processors are configured to receive, in response to a beverage order, the first beverage identifier and the first ingredient modifier; the beverage order includes a change to the first beverage; 14. The computing system of claim 13.
17. the automated dispensing system is one of a plurality of automated dispensing systems; and wherein the one or more processors are configured to communicate modified recipe instructions for the first beverage to each of the plurality of automated dispensing systems to communicate modified recipe instructions for the first beverage.
14. The computing system of claim 13.
18. A non-transitory computer-readable medium containing computer-executable instructions, comprising: The computer-executable instructions, when executed by one or more processors, cause the one or more processors to: maintaining a recipe catalog identifying a beverage recipe collection for a plurality of beverages, the beverage recipe collection including a standard recipe for a first beverage of the plurality of beverages, the standard recipe including a first group of ingredients and quantities associated with each ingredient in the first group of ingredients; receiving a first beverage identifier identifying the first beverage; receiving an ingredient modifier indicating a change to at least one of the first ingredient group or a quantity of a particular ingredient of the first ingredient group; generating a modified recipe for the first beverage based at least in part on the standard recipe, the ingredient modifiers, and recipe generation policies, the modified recipe including a second ingredient group and quantities associated with each ingredient in the second ingredient group; communicating instructions of the modified recipe to an automated dispensing system having a plurality of dispensers, a controller of the automated dispensing system causing a plurality of modular dispensers to dispense the second group of ingredients in accordance with the modified recipe; The purpose of the system is to A non-transitory computer-readable medium.
19. the ingredient modifier indicates the presence of an additional ingredient, the first ingredient group does not include the additional ingredient, and the second ingredient group includes the additional ingredient.
20. The non-transitory computer-readable medium of claim 18.
20. the ingredient modifier indicating a change in a first quantity of a first ingredient of the first ingredient group; 20. The non-transitory computer-readable medium of claim 18.