Intelligent meal arrangement method, computer storage medium and intelligent meal arrangement system
By using a mixed integer programming model and a hierarchical collaborative computing architecture, the problems of long computation time, difficult data integration, and poor security in large-scale intelligent meal scheduling are solved, enabling the generation of efficient and transparent multi-store meal scheduling solutions and improving the efficiency of menu sharing and supply chain collaboration.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANGHAI AIPEIFENING INTERNET TECH CO LTD
- Filing Date
- 2026-03-11
- Publication Date
- 2026-06-05
AI Technical Summary
In large-scale intelligent meal scheduling scenarios, existing technologies suffer from problems such as excessive computation time, difficulty in data integration, challenges in data security and privacy protection, insufficient algorithm interpretability, and poor compatibility with existing canteen management systems. This results in meal scheduling plans taking too long to generate and not being real-time, as well as poor multi-store collaboration.
By employing a mixed integer programming model and a hierarchical collaborative computing architecture, and by constructing a standardized model and storing meal scheduling parameters in a multi-dimensional matrix, combined with sequential iteration and parallel computing, the meal scheduling scheme of each store is optimized, thereby achieving food sharing and supply chain collaboration.
It significantly improves the efficiency of meal scheduling in multi-store scenarios, shortens calculation time, enhances the transparency and rationality of meal scheduling plans, reduces the cost of food procurement and inventory management, and meets the needs of real-time meal scheduling.
Smart Images

Figure CN122155279A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to intelligent catering technology, and in particular to an intelligent meal scheduling method, a computer storage medium, and an intelligent meal scheduling system. Background Technology
[0002] In large-scale intelligent meal scheduling scenarios, multi-objective optimization is one of the core challenges. Traditional multi-objective optimization algorithms (such as genetic algorithms and particle swarm optimization) often face the "curse of dimensionality" when dealing with meal scheduling problems because they have multiple objective dimensions (considering nutrition, cost, preferences, inventory, etc.). These algorithms require a large number of iterative calculations when searching the solution space. As the user scale and the number of dishes increase, the computation time grows exponentially. In scenarios with tens of thousands of users and thousands of dishes, the time to generate a single meal scheduling solution often exceeds minutes, making it difficult to meet the needs of real-time meal scheduling.
[0003] Taking large enterprises or school canteens as an example, there may be thousands or even tens of thousands of users, each with different dietary needs and preferences. At the same time, the canteen's menu may contain hundreds of dishes, each with multiple attributes, resulting in a huge amount of data to process. Existing intelligent meal scheduling algorithms have extremely high demands on computing resources when processing this data, which ordinary hardware devices often cannot meet. Furthermore, under peak concurrent requests, problems such as response delays and system lag are prone to occur.
[0004] In terms of data integration and management, intelligent meal planning requires integrating multi-source data, including user health data, dietary habits, historical consumption records, ingredient supply information, and market price fluctuations. These data sources are complex, with varying formats and standards, making integration challenging. Furthermore, the data may be incomplete, erroneous, or missing, such as outdated health data for some individuals or discrepancies in ingredient supply data, which could affect the accuracy and rationality of meal planning. In addition, sensitive data, including users' personal health information, presents significant challenges to data security and privacy protection.
[0005] Existing intelligent meal scheduling algorithms suffer from insufficient interpretability and practical adaptability. While deep learning-based black-box models can achieve good results on some metrics, the generated meal scheduling plans lack transparency. Users cannot clearly understand the basis for the plans meeting nutritional standards and cost control, leading to low trust. Traditional rule-based algorithms, although interpretable, lack flexibility and often overlook detailed constraints in actual operation, such as the capacity of kitchen cooking equipment, differences in food preparation time, and the need for food rotation. This results in theoretically optimal solutions that are practically infeasible. Furthermore, poor compatibility between these algorithms and existing canteen management systems and difficulties in data exchange increase the cost and difficulty of deployment. Summary of the Invention
[0006] The technical problem to be solved by the intelligent meal scheduling method of the present invention is to achieve fast meal scheduling speed for multiple stores and to significantly increase the repetition rate of core dishes in each store.
[0007] To solve the above-mentioned technical problems, the present invention provides an intelligent meal scheduling method, which includes the following steps: S1. Based on the meal scheduling business needs of a catering business entity, design the structure of the meal scheduling parameter file, construct a standardized model of the meal scheduling parameters, encapsulate the meal scheduling parameters involved in the meal scheduling in a structured way, and map the meal scheduling parameters into a multi-dimensional matrix for storage; S2. Select the first store of the aforementioned catering business entity, and based on the specific requirements of the first store's menu arrangement, establish a system using the variables corresponding to the aforementioned menu arrangement parameter matrix. Given a mixed-integer programming model with a target function, load the corresponding meal scheduling parameter matrix and meal scheduling optimization decision variables to... With the objective of maximizing, solve the mixed-integer programming model to obtain the optimal menu arrangement for the first store, and extract the set of dishes from it as the first priority menu set. ; T represents the number of days in the meal scheduling cycle, where T is an integer greater than 1; t is a positive integer less than or equal to T. I represents the total number of different types of vegetables, where I is an integer greater than 1; i is a positive integer less than or equal to I. Decision variables for optimizing meal scheduling include ; This is a binary decision variable, where variable i represents the dish number and variable t represents the day number of the meal reservation. This indicates whether the store selects dish i on day t; =1 indicates that the store selects the i-th dish on day t. =0 indicates that the store does not select dish i on day t; This indicates the first preferred recipe set. The number of dishes on day t; The summation of the scores of the dishes selected for a store is a continuous variable. ; This represents the sum of the scores of the dishes selected by the first store within a single meal selection cycle. Let i represent the score of the i-th dish on day t; The score of dish i on day t The default value or a stored setting; S3. Select the md-th store of the aforementioned catering business entity, and establish a system based on the specific meal arrangement requirements of the md-th store. Given a mixed-integer programming model with a target function, load the corresponding meal scheduling parameter matrix and meal scheduling optimization decision variables to... With the objective of maximizing, solve the mixed-integer programming model to obtain the optimal menu arrangement for the md-th store, and extract the set of dishes from it as the md-th priority menu set. ; J represents the total number of stores of the aforementioned catering business entity, and J is a positive integer greater than 2; md is the store number, and md is a positive integer greater than 1 and less than J; ; This represents the sum of the scores of the i-th dish selected by the md-th store on day t within the meal scheduling cycle; like , then let A perfect score; This indicates that the md-1th recipe set is preferred. The number of dishes on day t; S4. If If the ratio is less than the set ratio, proceed to step S5; otherwise, proceed to step S6. Set the ratio to be greater than 0 and less than 1; S5. Increment md by 1, then proceed to step S3; S6. Select stores md+1 to J of the aforementioned catering operators in sequence, and establish a system based on the specific meal arrangement requirements of store k. Given a mixed-integer programming model with a target function, load the corresponding meal scheduling parameter matrix and meal scheduling optimization decision variables to... With the objective of maximizing, solve the mixed-integer programming model to obtain the optimal menu arrangement for the k-th store, and extract the set of dishes from it as the k-th priority menu set. , obtained the The optimal meal arrangement result from store number J to store number J; k is a positive integer, greater than md and less than or equal to J; ; This represents the sum of the scores of the i-th dish selected by the k-th store on day t within the meal scheduling cycle; like , then let A perfect score; This indicates that the md-th recipe set is preferred. The number of dishes on day t; S7. Output the optimal meal arrangement results for J stores of the aforementioned catering business entity.
[0008] Preferably, the set ratio is determined based on the total number of stores and the need for food sharing.
[0009] Preferably, the set ratio is 20% to 40%.
[0010] Ideally, the first store of a catering business should be the supply chain center store or the store with the largest user base.
[0011] Ideally, the optimal meal arrangement result for each store can be obtained by calling the SCIP solver to solve the mixed integer programming model of each store.
[0012] Preferably, the parameter file is a JSON parameter file, which maps JSON parameters into a multidimensional matrix.
[0013] Preferably, mapping parameters to multidimensional matrices involves constructing at least two of the following matrices: Store-Personnel Flow Matrix Construct a store-table category restriction matrix Store-Popularity Ratio Limit Matrix Menu - Meal Category Matrix Menu - Layout Category Matrix Dish-Preparation Method Matrix Dishes - Popular Dishes Matrix Dishes - Increase / Decrease Ratio Matrix Store-Menu Price Matrix ; A meal subcategory is a level below a meal major category, and a meal major category includes at least one meal subcategory. ; Where J is the total number of stores, W is the total number of major categories of dishes, V is the total number of minor categories of dishes, P is the total number of preparation methods, j is the store number, w is the major category number of dishes, v is the minor category number of dishes, j is a positive integer less than or equal to A, w is a positive integer less than or equal to W, and v is a positive integer less than or equal to V. This represents the foot traffic of the j-th store on day t. This represents the limit quantity for the w-th food category at the j-th store; This represents the percentage of popular items restricted for the w-th menu category at the j-th store; This indicates whether the i-th dish belongs to the w-th menu category; if the i-th dish belongs to the w-th menu category, then... If the i-th dish does not belong to the w-th major category of the meal, then... ; This indicates whether the i-th dish belongs to the v-th sub-category; if the i-th dish belongs to the v-th sub-category, then... If the i-th dish does not belong to the v-th sub-category; This indicates whether the i-th dish belongs to the p-th preparation method, where p is a positive integer; it also indicates that the i-th dish belongs to the p-th preparation method. The i-th dish is not prepared in the p-th way; This indicates whether the i-th dish is a popular dish; if the i-th dish is a popular dish, then... =1, if the i-th dish is not a popular dish. =0; This represents the percentage increase or decrease of the i-th type of dish. This represents the price of the i-th dish at the j-th store.
[0014] Preferably, the meal scheduling parameters include at least one of the following: number of meal scheduling days, number of diners, average weight of dishes consumed per person and its fluctuation ratio, average consumption amount per person and its fluctuation ratio, minimum proportion of preparation methods, weight proportion of major meal categories, percentage of non-popular dishes repeated, minimum weight of dishes, number of days between dish discontinuous intervals, meal scheduling requirements for each store, percentage of popular dishes, and data from the dish database.
[0015] The present invention also discloses a computer storage medium storing a computer program that, when executed by a processor, implements the intelligent meal scheduling method.
[0016] The present invention also discloses an intelligent meal scheduling system, which includes a processor and the computer storage medium; The processor controls the execution of the computer program stored in the computer storage medium, and stores and outputs the optimal meal arrangement results of J stores of the catering business entity to the monitor or printer.
[0017] The intelligent meal scheduling method of this invention adopts a hybrid computing architecture of "sequential iteration + parallel computing". Its hierarchical collaborative mode takes into account both the differentiated needs of stores and the overall collaborative goal, and significantly improves the meal scheduling efficiency in large-scale multi-store scenarios while ensuring solution quality. Precise optimization of the first store provides high-quality "seed" dishes for the recipe set (the first priority recipe set). In the sequential iteration phase, subsequent stores are forced to prioritize selecting dishes from the historical priority menu set, achieving efficient sharing of dishes among multiple stores. Through iterative updates of the priority menu set, the repetition rate of core dishes in each store is significantly increased, thereby promoting the scale of ingredient procurement and reducing supply chain procurement and inventory management costs. Subsequent stores perform local optimizations under the constraints of the historical priority menu set, ensuring the rationality of their own meal planning schemes while contributing shared dishes to global collaboration, effectively solving the problem of poor multi-store collaboration in the traditional "single-store independent optimization" model. In the parallel optimization phase for the remaining stores, for the remaining stores that did not participate in the sequential iteration, the final md-th priority menu set from the sequential iteration is used. A parallel computing task pool was constructed, and the menu selection model for each store prioritized the m-th recipe set based on sequential iteration. Calculated With the goal of solving the problem simultaneously using a multi-threaded or distributed computing framework, the meal scheduling results for each remaining store are obtained. Parallel computing significantly reduces the overall computation time. Furthermore, due to the constraints of the priority menu set, each store's solution naturally has the basis for sharing ingredients while meeting its own needs, thus achieving the goal of supply chain collaboration. Attached Figure Description
[0018] To more clearly illustrate the technical solution of the present invention, the accompanying drawings used in the present invention will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 This is a schematic flowchart of an embodiment of the intelligent meal scheduling method of the present invention. Detailed Implementation
[0020] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0021] The terms "first," "second," and similar words used in this application do not indicate any order, quantity, or importance, but are merely used to distinguish different components. Words such as "including" or "comprising" mean that the element or object preceding the word encompasses the elements or objects listed after the word and their equivalents, without excluding other elements or objects. Words such as "connected" or "linked" are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. Terms such as "upper," "lower," "left," "right," "front," and "back" are used only to indicate relative positional relationships; when the absolute position of the described object changes, the relative positional relationship may also change accordingly.
[0022] It should be noted that, unless otherwise specified, the embodiments and features described in the present invention can be combined with each other.
[0023] Example 1: An intelligent meal scheduling method, such as Figure 1 As shown, it includes the following steps:
[0024] S1. Based on the meal planning business needs of a catering business entity, design the structure of the meal planning parameter file, construct a standardized model of the meal planning parameters, encapsulate the meal planning parameters involved in the meal planning in a structured way, and map the meal planning parameters into a multi-dimensional matrix for storage and calculation; S2. Select the first store of the aforementioned catering business entity, and based on the specific requirements of the first store's menu arrangement, establish a system using the variables corresponding to the aforementioned menu arrangement parameter matrix. Given a mixed-integer programming model with a target function, load the corresponding meal scheduling parameter matrix and meal scheduling optimization decision variables to... With the objective of maximizing, solve the mixed-integer programming model to obtain the optimal menu arrangement for the first store, and extract the set of dishes from it as the first priority menu set. ; T represents the number of days in the meal scheduling cycle, where T is an integer greater than 1; t is a positive integer less than or equal to T. I represents the total number of different types of vegetables, where I is an integer greater than 1; i is a positive integer less than or equal to I. Decision variables for optimizing meal scheduling include ; This is a binary decision variable, where variable i represents the dish number and variable t represents the day number of the meal reservation. This indicates whether the store selects dish i on day t; =1 indicates that the store selects the i-th dish on day t. =0 indicates that the store does not select dish i on day t; This indicates the first preferred recipe set. The number of dishes on day t; The summation of the scores of the dishes selected for a store is a continuous variable. ; This represents the sum of the scores of the dishes selected by the first store within a single meal selection cycle. Let i represent the score of the i-th dish on day t; The score of dish i on day t The default value or a stored setting; S3. Select the md-th store of the aforementioned catering business entity, and establish a system based on the specific meal arrangement requirements of the md-th store. Given a mixed-integer programming model with a target function, load the corresponding meal scheduling parameter matrix and meal scheduling optimization decision variables to... With the objective of maximizing, solve the mixed-integer programming model to obtain the optimal menu arrangement for the md-th store, and extract the set of dishes from it as the md-th priority menu set. ; J represents the total number of stores of the aforementioned catering business entity, and J is a positive integer greater than 2; md is the store number, and md is a positive integer greater than 1 and less than J; ; This represents the sum of the scores of the i-th dish selected by the md-th store on day t within the meal scheduling cycle; like , then let It is a perfect score (the highest score among popular dishes, such as 100 points in a 100-point scale). This indicates that the md-1th recipe set is preferred. The quantity of the i-th dish on day t; ensuring the quantity of the i-th dish of the aforementioned catering business entity. ( The menu items for each store are prioritized from the menu collection. The selection is based on the objective function of maximizing the total score of the i-th dish selected on day t. Therefore, when solving a mixed-integer programming model, the dish with the higher score will be selected first, i.e., when... When aiming for a perfect score, one tends to... The optimal value of the mixed-integer programming model can be obtained, and all binary decision variables can be obtained by solving the mixed-integer programming model. After that, the menu for this store was definitively determined, and the store's menu was compared with... Merge, remove duplicates, and update to obtain a new md-th preferred recipe set. ; S4. If If the ratio is less than the set ratio, proceed to step S5; otherwise, proceed to step S6. Set the ratio to be greater than 0 and less than 1; S5.md increments by 1 ( Then proceed to step S3; S6. Select stores md+1 to J of the aforementioned catering operators in sequence, and establish a system based on the specific meal arrangement requirements of store k. Given a mixed-integer programming model with a target function, load the corresponding meal scheduling parameter matrix and meal scheduling optimization decision variables to... With the objective of maximizing, solve the mixed-integer programming model to obtain the optimal menu arrangement for the k-th store, and extract the set of dishes from it as the k-th priority menu set. , obtained the The optimal meal arrangement result from store number J to store number J; k is a positive integer, greater than md and less than or equal to J; ; This represents the sum of the scores of the i-th dish selected by the k-th store on day t within the meal scheduling cycle; like , then let A perfect score; This indicates that the md-th recipe set is preferred. The number of dishes on day t; S7. Output the optimal meal arrangement results for J stores of the aforementioned catering business entity.
[0025] Preferably, the set ratio is determined based on the total number of stores and the need for food sharing.
[0026] Preferably, the set ratio is 20% to 40%.
[0027] Ideally, the first store of a catering business should be the supply chain center store or the store with the largest user base.
[0028] Mixed Integer Programming (MIP) is an important branch of mathematical programming that requires some decision variables to take integer values. Its mathematical model consists of a linear objective function, linear constraints, and a specified set of integer variables. If all decision variables are integers, it transforms into a special case of pure integer programming (IP). The MIP model consists of decision variables, an objective function, and constraints. When all decision variables are restricted to integers, the model degenerates into pure integer programming (IP). This characteristic gives MIP the dual properties of continuous optimization and discrete combinatorial optimization.
[0029] The intelligent meal scheduling method in Example 1 first constructs a standardized model of meal scheduling parameters, encapsulating the parameters involved in the meal scheduling problem (number of scheduling days, number of diners, average weight of dishes consumed per person and its fluctuation ratio, average consumption amount per person and its fluctuation ratio, minimum proportion of preparation methods, weight ratio of major meal categories, percentage of repetition of non-popular dishes, minimum weight of dishes, number of days between dish repetitions, meal scheduling requirements for each store, percentage of popular dishes, and menu data, etc.) in a structured manner. The parameters are mapped to a multi-dimensional matrix for efficient storage and computation. Then, a hybrid computing architecture and a layered iterative strategy are adopted to achieve collaborative meal scheduling across multiple stores. First, the first store is optimized, followed by sequential iterative optimization of multiple stores, and finally, the remaining stores are optimized in parallel.
[0030] The intelligent meal scheduling method in Example 1 adopts a hybrid computing architecture of "sequential iteration + parallel computing." Its hierarchical collaborative mode takes into account both the differentiated needs of stores and the overall collaborative goal, significantly improving the meal scheduling efficiency in large-scale multi-store scenarios while ensuring solution quality. Precise optimization of the first store provides high-quality "seed" dishes for the recipe set (the first priority recipe set). In the sequential iteration phase, subsequent stores are forced to prioritize selecting dishes from the historical priority menu set, achieving efficient sharing of dishes among multiple stores. Through iterative updates of the priority menu set, the repetition rate of core dishes in each store is significantly increased, thereby promoting the scale of ingredient procurement and reducing supply chain procurement and inventory management costs. Subsequent stores perform local optimizations under the constraints of the historical priority menu set, ensuring the rationality of their own meal planning schemes while contributing shared dishes to global collaboration, effectively solving the problem of poor multi-store collaboration in the traditional "single-store independent optimization" model. In the parallel optimization phase for the remaining stores, for the remaining stores that did not participate in the sequential iteration, the md-th priority menu set of the final sequential iteration is used. A parallel computing task pool was constructed, and the menu selection model for each store prioritized the m-th recipe set based on sequential iteration. Calculated With the goal of solving the problem simultaneously using a multi-threaded or distributed computing framework, the meal scheduling results for each remaining store are obtained. Parallel computing significantly reduces the overall computation time. Furthermore, due to the constraints of the priority menu set, each store's solution naturally has the basis for sharing ingredients while meeting its own needs, thus achieving the goal of supply chain collaboration.
[0031] The time for the sequential iteration phase of this intelligent meal scheduling method is... (X represents the number of stores participating in the sequential iteration,) The time for the parallel phase is Y represents the time required for the mixed integer programming model to complete one solution. The overall computation time can be reduced by 60%-80%, significantly improving efficiency. It can meet the real-time needs of multi-store meal scheduling, such as generating meal scheduling plans for all stores in a short period of time before the peak hours in the canteen, allowing sufficient time for kitchen preparation and food delivery, and improving the smoothness of the overall meal supply process.
[0032] Example 2: Based on the intelligent meal scheduling method of Example 1, the optimal meal scheduling result for each store is obtained by calling the SCIP solver to solve the mixed integer programming model of each store.
[0033] The intelligent meal scheduling method in Example 2 utilizes the precise solution capability of the SCIP solver during the first store optimization and multi-store sequential iteration stages to ensure that the meal scheduling result at each step is a locally optimal solution, thus guaranteeing the quality of the solution.
[0034] Example 3: Based on the intelligent meal scheduling method of Example 1, the parameter file is a JSON (JavaScript Object Notation) parameter file, and the above JSON parameters are mapped into a multi-dimensional matrix.
[0035] JSON, designed based on a subset of ECMAScript, is an open standard file and data exchange format. It is easy for humans to read and write, and also easy for machines to parse and generate. JSON is language-independent, and many programming languages support JSON for data exchange. JSON is a commonly used data format with various applications in electronic data interchange, including data exchange between web applications and servers. Its concise and clear hierarchical structure effectively improves network transmission efficiency, making it an ideal data exchange language. Its files typically use the .json extension. JSON is a lightweight data exchange format, easy for humans to read and write, and also easy for machines to parse and generate. It uses a text format that is completely independent of programming languages, but also uses conventions similar to the C family of languages. JSON is ideal for data representation, especially in network transmission and storage.
[0036] The intelligent meal scheduling method in Example 3 uses a standardized JSON model to structurally encapsulate the parameters involved in the meal scheduling problem. These parameters are mapped to a multi-dimensional matrix for efficient storage and computation, achieving modular parameter management. When parameters such as the number of meal scheduling days, the number of diners, and the menu data change, only the JSON file needs to be updated; the model code does not need to be modified, significantly reducing system maintenance costs. Furthermore, the decoupling design of parameters and the model allows this invention to quickly adapt to different catering scenarios, such as school canteens, corporate restaurants, and chain fast-food restaurants. Simply adjusting the store's meal scheduling requirements and the proportion of different meal categories in the JSON parameters is sufficient to achieve scenario-based meal scheduling optimization, enhancing the system's adaptability and scalability.
[0037] Example 4: The intelligent meal scheduling method based on Example 1, where parameter mapping to a multidimensional matrix includes constructing at least two of the following matrices: Store-Personnel Flow Matrix Construct a store-table category restriction matrix Store-Popularity Ratio Limit Matrix Menu - Meal Category Matrix Menu - Layout Category Matrix Dish-Preparation Method Matrix Menu - Popular Dishes Matrix, Menu - Increase / Decrease Ratio Matrix, Store - Menu Price Matrix ; A meal subcategory is the next level below a meal major category, and a meal major category includes at least one meal subcategory. Where J is the total number of stores, W is the total number of major categories of dishes, V is the total number of minor categories of dishes, P is the total number of preparation methods, j is the store number, w is the major category number of dishes, v is the minor category number of dishes, j is a positive integer less than or equal to A, w is a positive integer less than or equal to W, and v is a positive integer less than or equal to V. This represents the foot traffic of the j-th store on day t. This represents the limit quantity for the w-th food category at the j-th store; This represents the percentage of popular items restricted for the w-th menu category at the j-th store; This indicates whether the i-th dish belongs to the w-th menu category; if the i-th dish belongs to the w-th menu category, then... If the i-th dish does not belong to the w-th major category of the meal, then... ; This indicates whether the i-th dish belongs to the v-th sub-category; if the i-th dish belongs to the v-th sub-category, then... If the i-th dish does not belong to the v-th sub-category, then... ; This indicates whether the i-th dish belongs to the p-th preparation method, where p is a positive integer; This indicates that the i-th dish belongs to the p-th preparation method. The i-th dish is not prepared in the p-th way; This indicates whether the i-th dish is a popular dish; if the i-th dish is a popular dish, then... =1, if the i-th dish is not a popular dish. =0; This represents the percentage increase or decrease of the i-th type of dish. This represents the price of the i-th dish at the j-th store.
[0038] Preferably, the meal scheduling parameters include at least one of the following: number of meal scheduling days, number of diners, average weight of dishes consumed per person and its fluctuation ratio, average consumption amount per person and its fluctuation ratio, minimum proportion of preparation methods, weight proportion of major meal categories, percentage of non-popular dishes repeated, minimum weight of dishes, number of days between dish discontinuous intervals, meal scheduling requirements for each store, percentage of popular dishes, and data from the dish database.
[0039] Commonly, meal categories are usually divided into broad meal categories and subcategories: Main Categories are the top-level classifications for meals, usually divided according to the nature of the food, the order in which it is eaten, or the type of meal.
[0040] Meal categories are divided according to restaurant type: Chinese food is generally divided into cold dishes, hot dishes (which can be further divided into meat dishes and vegetarian dishes), soups, staple foods, and desserts. Western cuisine is typically divided into appetizers, soups, salads, main courses, and desserts. Fast food / casual meals: often categorized into hamburgers, pizzas, rice sets, noodles, snacks, and drinks.
[0041] Meal categories are divided according to consumption scenarios: A la carte dining: This allows customers to order dishes individually, usually categorized as cold dishes, stir-fries, soups, staple foods, desserts, etc. The banquet is structured rigorously and is divided into several categories: overture (tea, hand dishes, appetizers, first soup), main course (first course, roasted and fried dishes, second soup, fish, poultry and livestock meat, vegetarian dishes, desserts, and sitting soup), and end (staple food, fruit, and tea).
[0042] Subcategories are further subdivisions of the main categories, designed to provide more precise choices.
[0043] For example, under the category of "hot dishes", the subcategories of main courses can be further divided into meat dishes (such as livestock meat, poultry, and seafood) and vegetarian dishes (such as leafy greens, mushrooms, and bean products). Under the category of "staple food", the subcategories of staple food can be further divided into rice, pasta (such as noodles and steamed buns), and whole grains, etc. Under the category of "beverages", the subcategory of food can be further divided into alcoholic beverages (such as beer and spirits), non-alcoholic beverages (such as tea, coffee, and juice), and desserts (such as ice cream and cake). Within the "Available Meals" category, the subcategories may be divided according to cooking methods, such as grilling, frying, steaming, stewing, etc.
[0044] For example, the main categories of meals include three major categories: main meat dishes, minor meat dishes, and vegetarian dishes. The minor categories of main meat dishes include more than ten kinds of dishes such as chicken, duck, and fish.
[0045] Example 5: The intelligent meal scheduling method based on Example 4 includes at least one of the following constraints: (1) Constraints on the number of meal categories for a single store on a single day: ; V represents the set of subcategories of meal plans. The daily upper limit for the vth sub-category of dishes; (2) Constraints on the number of major meal categories for a single store on a single day: ; W represents the set meal category. This is the daily upper limit for the w-th major category of dishes. (3) Manufacturing method constraints: like If the value is greater than or equal to 0, the corresponding constraint is: ; like If the value is less than 0, the corresponding constraint is: ; The percentage value for the p-th production method is set. This indicates the number of dishes required for a single store's daily meal service; (4) Constraint on the proportion of popular dishes: ; This indicates the number of popular dishes in the w-th major menu category set for a single store; (5) Minimum weight guarantee for dishes: ; This represents the basic weight of the w-th meal category on day t; M represents the minimum weight of dishes set for a single store; (6) Constraint on the number of discontinuous interval days: ; The requirement for the number of discontinuous interval days between two adjacent cycles must also be met: ; This indicates the set number of non-consecutive days; 'a' represents the index of the summation symbol, indicating day a; This indicates whether the i-th dish was included on day a of the previous meal schedule. If the i-th dish was included, then... ,otherwise ; (7) Limitation on the number of window cycles within the meal scheduling cycle: ; The window period count limit must also be met between two adjacent periods: ; This represents the number of days in the window period for the i-th type of dish; This indicates the number of times the i-th dish appears within a given window period; (8) Constraint on the percentage of non-popular dishes repeated during the meal scheduling cycle: ; ; This indicates the percentage of non-popular dishes that are repeated. This indicates the number of dishes required for a single store's daily meal service; Let be an integer variable representing the number of times the i-th dish is repeated as a non-popular dish within the meal scheduling cycle; (9) Price constraints: ; ; This represents the basic weight of the w-th meal category on day t; This represents the price of the i-th dish; This indicates the percentage change in average spending per customer at a single store. This represents the number of diners at a single store on day t. This indicates the set average spending per person per store; (10) Weight restrictions for dishes: ; ; This represents the basic weight of the w-th meal category on day t; This indicates the weight percentage of the w-th food category in a single store. This represents the number of diners at a single store on day t. This indicates the average consumption weight per person per store. This indicates the percentage change in average spending per customer per store. (11) Daily tag non-repetition constraint: ; Indicate whether the i-th dish is a type of label in class s. If the i-th dish is the r-th label in the s-th label class, then... ,otherwise ; S represents all tag categories, where s represents the s-th tag category; Let represent the set of all tags in the s-th category, and r represent the r-th type of tag in the s-th category. (12) No meal scheduling on the first day of the first cycle: If this is the first cycle, an additional restriction on not scheduling meals on the first day must be added: ;y can be one or more from 1 to I; This constraint means that the y-th dish cannot be placed on the first day of the first cycle.
[0046] For example, dish labels can be divided into Sichuan cuisine, Hunan cuisine, Cantonese cuisine, Huaiyang cuisine, Shandong cuisine, meat dishes, seafood, seasonal vegetables, etc.
[0047] Example 6: A computer storage medium storing a computer program that, when executed by a processor, implements the above-described intelligent meal scheduling method.
[0048] Example 7: An intelligent meal scheduling system, comprising a processor and the aforementioned computer storage medium; The processor controls the execution of the computer program stored in the computer storage medium of claim 10, and stores and outputs the optimal meal arrangement results of J stores of the catering business entity to a display or printer.
[0049] The intelligent meal planning system in Example 7 uses the SCIP solver to precisely optimize the meal planning schemes for corresponding stores, ensuring that the schemes at key points achieve optimal performance in terms of the proportion of popular dishes, nutritional balance, and cost control. Testing showed that the meal planning schemes generated by the intelligent meal planning system of this invention achieved a 100% success rate in meeting the target proportion of popular dishes, controlled the fluctuation of average per capita consumption price within ±4%, and ensured that the repetition rate of non-popular dishes met the preset requirements, thus fully satisfying operational indicators.
[0050] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. An intelligent meal scheduling method, characterized in that, It includes the following steps: S1. Based on the meal scheduling business needs of a catering business entity, design the structure of the meal scheduling parameter file, construct a standardized model of the meal scheduling parameters, encapsulate the meal scheduling parameters involved in the meal scheduling in a structured way, and map the meal scheduling parameters into a multi-dimensional matrix for storage; S2. Select the first store of the aforementioned catering business entity, and based on the specific requirements of the first store's menu arrangement, establish a system using the variables corresponding to the aforementioned menu arrangement parameter matrix. Given a mixed-integer programming model with a target function, load the corresponding meal scheduling parameter matrix and meal scheduling optimization decision variables to... With the objective of maximizing, solve the mixed-integer programming model to obtain the optimal menu arrangement for the first store, and extract the set of dishes from it as the first priority menu set. ; T represents the number of days in the meal scheduling cycle, where T is an integer greater than 1; t is a positive integer less than or equal to T. I represents the total number of different types of vegetables, where I is an integer greater than 1; i is a positive integer less than or equal to I. Decision variables for optimizing meal scheduling include ; This is a binary decision variable, where variable i represents the dish number and variable t represents the day number of the meal reservation. This indicates whether the store selects dish i on day t; =1 indicates that the store selects the i-th dish on day t. =0 indicates that the store does not select dish i on day t; This indicates the first preferred recipe set. The number of dishes on day t; The summation of the scores of the dishes selected for a store is a continuous variable. ; This represents the sum of the scores of the dishes selected by the first store within a single meal selection cycle. Let i represent the score of the i-th dish on day t; The score of dish i on day t The default value or a stored setting; S3. Select the md-th store of the aforementioned catering business entity, and establish a system based on the specific meal arrangement requirements of the md-th store. Given a mixed-integer programming model with a target function, load the corresponding meal scheduling parameter matrix and meal scheduling optimization decision variables to... With the objective of maximizing, solve the mixed-integer programming model to obtain the optimal menu arrangement for the md-th store, and extract the set of dishes from it as the md-th priority menu set. ; J represents the total number of stores of the aforementioned catering business entity, and J is a positive integer greater than 2; md is the store number, and md is a positive integer greater than 1 and less than J; ; This represents the sum of the scores of the i-th dish selected by the md-th store on day t within the meal scheduling cycle; like , then let A perfect score; This indicates that the md-1th recipe set is preferred. The number of dishes on day t; S4. If If the ratio is less than the set ratio, proceed to step S5; otherwise, proceed to step S6. Set the ratio to be greater than 0 and less than 1; S5. Increment md by 1, then proceed to step S3; S6. Select stores md+1 to J of the aforementioned catering operators in sequence, and establish a system based on the specific meal arrangement requirements of store k. Given a mixed-integer programming model with a target function, load the corresponding meal scheduling parameter matrix and meal scheduling optimization decision variables to... With the objective of maximizing, solve the mixed-integer programming model to obtain the optimal menu arrangement for the k-th store, and extract the set of dishes from it as the k-th priority menu set. , obtained the The optimal meal arrangement result from store number J to store number J; k is a positive integer, greater than md and less than or equal to J; ; This represents the sum of the scores of the i-th dish selected by the k-th store on day t within the meal scheduling cycle; like , then let A perfect score; This indicates that the md-th recipe set is preferred. The number of dishes on day t; S7. Output the optimal meal arrangement results for J stores of the aforementioned catering business entity.
2. The intelligent meal scheduling method according to claim 1, characterized in that, The set ratio is determined based on the total number of stores and the need for food sharing.
3. The intelligent meal scheduling method according to claim 1, characterized in that, The set ratio is 20% to 40%.
4. The intelligent meal scheduling method according to claim 1, characterized in that, The first store of a catering business entity is either the supply chain center store or the store with the largest user base.
5. The intelligent meal scheduling method according to claim 1, characterized in that, By calling the SCIP solver to solve the mixed integer programming model for each store, the optimal meal arrangement result for each store can be obtained.
6. The intelligent meal scheduling method according to claim 1, characterized in that, The parameter file is a JSON parameter file, which maps JSON parameters into a multidimensional matrix.
7. The intelligent meal scheduling method according to claim 1, characterized in that, Parameter mapping to a multidimensional matrix includes constructing at least two of the following matrices: Store-Personnel Flow Matrix Construct a store-table category restriction matrix Store-Popularity Ratio Limit Matrix Menu - Meal Category Matrix Menu - Layout Category Matrix Dish-Preparation Method Matrix Dishes - Popular Dishes Matrix Dishes - Increase / Decrease Ratio Matrix Store-Menu Price Matrix ; A subcategory is the next level below a major category of meal preparation; a major category of meal preparation includes at least one subcategory of meal preparation. Where J is the total number of stores, W is the total number of major categories of dishes, V is the total number of minor categories of dishes, P is the total number of preparation methods, j is the store number, w is the major category number of dishes, v is the minor category number of dishes, j is a positive integer less than or equal to A, w is a positive integer less than or equal to W, and v is a positive integer less than or equal to V. This represents the foot traffic of the j-th store on day t. This represents the limit quantity for the w-th food category at the j-th store; This represents the percentage of popular items restricted for the w-th menu category at the j-th store; This indicates whether the i-th dish belongs to the w-th menu category; if the i-th dish belongs to the w-th menu category, then... If the i-th dish does not belong to the w-th major category of the meal, then... ; This indicates whether the i-th dish belongs to the v-th sub-category; if the i-th dish belongs to the v-th sub-category, then... If the i-th dish does not belong to the v-th sub-category, then... ; This indicates whether the i-th dish belongs to the p-th preparation method, where p is a positive integer; This indicates that the i-th dish belongs to the p-th preparation method. The i-th dish is not prepared in the p-th way; This indicates whether the i-th dish is a popular dish; if the i-th dish is a popular dish, then... =1, if the i-th dish is not a popular dish. =0; This represents the percentage increase or decrease of the i-th type of dish. This represents the price of the i-th dish at the j-th store.
8. The intelligent meal scheduling method according to claim 7, characterized in that, The meal planning parameters include at least one of the following: number of days for meal planning, number of diners, average weight of dishes consumed per person and its fluctuation percentage, average consumption amount per person and its fluctuation percentage, minimum percentage of preparation methods, weight percentage of major meal categories, percentage of repetition of non-popular dishes, minimum weight of dishes, number of days for non-consecutive intervals between dishes, meal planning requirements for each store, percentage of popular dishes, and data from the dish database.
9. The intelligent meal scheduling method according to claim 7, characterized in that, The constraints include at least one of the following: Constraints on the number of different meal categories for a single store per day: ; V represents the set of subcategories of meal plans. The daily upper limit for the vth sub-category of dishes; Constraints on the number of major meal categories for a single store per day: ; W represents the set meal category. This is the daily upper limit for the w-th major category of dishes. Production method constraints: like If the value is greater than or equal to 0, the corresponding constraint is: ; like If the value is less than 0, the corresponding constraint is: ; The percentage value for the p-th production method is set. This indicates the number of dishes required for a single store's daily meal service; Popular dish percentage constraint: ; This indicates the number of popular dishes in the w-th major menu category set for a single store; Minimum weight guarantee for dishes: ; This represents the basic weight of the w-th meal category on day t; M represents the minimum weight of dishes set for a single store; Non-continuous interval days constraint: ; The requirement for the number of discontinuous interval days between two adjacent cycles must also be met: ; This indicates the set number of non-consecutive days; 'a' represents the index of the summation symbol, indicating day a; This indicates whether the i-th dish was included on day a of the previous meal schedule. If the i-th dish was included, then... ,otherwise ; Limits on the number of window cycles within a meal scheduling cycle: ; The window period count limit must also be met between two adjacent periods: ; This represents the number of days in the window period for the i-th type of dish; This indicates the number of times the i-th dish appears within a given window period; Constraints on the percentage of non-popular dishes repeated during the meal scheduling period: ; ; This indicates the percentage of non-popular dishes that are repeated. This indicates the number of dishes required for a single store's daily meal service; Let be an integer variable representing the number of times the i-th dish is repeated as a non-popular dish within the meal scheduling cycle; Price constraints: ; ; This represents the basic weight of the w-th meal category on day t; This represents the price of the i-th dish; This indicates the percentage change in average spending per customer at a single store. This represents the number of diners at a single store on day t. This indicates the set average spending per person per store; Food weight restrictions: ; ; This represents the basic weight of the w-th meal category on day t; This indicates the weight percentage of the w-th food category in a single store. This represents the number of diners at a single store on day t. This indicates the average consumption weight per person per store. This indicates the percentage change in average spending per customer per store. Daily tag uniqueness constraint: ; Indicate whether the i-th dish is a type of label in class s. If the i-th dish is the r-th label in the s-th label class, then... ,otherwise ; S represents all tag categories, where s represents the s-th tag category; Let represent the set of all tags in the s-th category, and r represent the r-th type of tag in the s-th category. No meal scheduling on the first day of the first cycle: If this is the first cycle, an additional restriction on not scheduling meals on the first day must be added: ;y can be one or more from 1 to I; This constraint means that the y-th dish cannot be placed on the first day of the first cycle.
10. A computer storage medium, characterized in that, It stores a computer program that, when executed by a processor, implements the intelligent meal scheduling method according to any one of claims 1 to 9.
11. An intelligent meal scheduling system, characterized in that, Includes the processor and the computer storage medium; The processor controls the execution of the computer program stored in the computer storage medium of claim 10, and stores and outputs the optimal meal arrangement results of J stores of the catering business entity to a display or printer.