Menu creation support device, method, and program

The system addresses monotonous meal options by grouping dishes based on similarity and past records to create diverse and novel meal combinations.

JP7745857B1Active Publication Date: 2025-09-30EXEO GRP INC +2

Patent Information

Application Number
JP2024077395
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-05-10
Publication Date
2025-09-30
Estimated Expiration
2044-05-10

AI Technical Summary

Technical Problem

Conventional menu creation systems fail to provide sufficient variety, leading to monotonous meal options due to the frequent repetition of similar dishes.

Method used

A system that groups dishes by similar ingredients, calculates combination scores based on past menu records, and selects combinations with high scores to create new and diverse meal options, ensuring dishes are less repetitive.

Benefits of technology

The system increases menu variety by providing unique dish combinations that have not been previously served, preventing monotony in meal schedules.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007745857000001_ABST
    Figure 0007745857000001_ABST
Patent Text Reader

Abstract

Prevent your menu from becoming monotonous. [Solution] A set of dish information is acquired, and multiple dish groups are generated by classifying multiple dishes included in the acquired set of dish information by dishes with similar ingredients. Multiple combinations of dish groups are then generated based on the multiple dish groups, and for each of the multiple combinations generated, a score is calculated so that the more frequently the combination of dishes that make up the dish group appears in past menu records, the higher the score becomes. The combination of dish groups whose calculated score satisfies a predetermined condition is selected, and new dish combinations are created by matching dishes between the dish groups of the selected combinations.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] One aspect of the present invention relates to a menu creation support device, method, and program that support the creation of meal menus to be provided to users in various facilities, for example. [Background technology]

[0002] For example, when creating a menu for meals to be served to hospitalized patients or residents at a hospital or nursing home, various requirements must be considered, such as nutritional balance, disease-specific dietary therapy, allergy measures, the nutritional content of ingredients, cooking methods, cooking times, measures to prevent monotony, seasonal and special occasion menus, balance of taste and appearance, etc. However, the task of creating menus is generally often carried out by registered dietitians based on their own knowledge, experience, and intuition, placing a heavy burden on the registered dietitian and making it difficult for successors to inherit this knowledge.

[0003] Therefore, a system has been proposed that uses a computer to generate menus for a predetermined period of time to be proposed to users. This system generates a group of meal sets that includes multiple meal sets for one meal, each containing multiple dishes, and generates a menu for a predetermined period of time based on the generated group of meal sets (see, for example, Patent Document 1). [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Publication No. 2022-76695 Summary of the Invention [Problem to be solved by the invention]

[0005] However, with conventional systems, the variety of menus created is insufficient, and similar dishes are often served consecutively, which can still lead to menus becoming monotonous.

[0006] This invention has been made in light of the above circumstances, and in one aspect, aims to provide a technology that prevents menus from becoming monotonous. [Means for solving the problem]

[0007] To solve the above problems, a first aspect of the menu creation support device or method of the present invention acquires a set of dish information, classifies the dishes included in the acquired set of dish information by dishes with similar ingredients to generate a plurality of dish groups, generates a plurality of combinations of dish groups based on the generated plurality of dish groups, and calculates a score for each of the generated plurality of combinations, such that the score increases with the frequency with which the dish combinations that make up the dish group appear in past menu records.Then, a combination of dish groups whose calculated score satisfies a predetermined condition is selected, and a new dish combination is created by matching the dishes between the dish groups of the selected combinations.

[0008] According to the first aspect of this invention, it is possible to increase the number of menu information that can be provided, thereby increasing the menu options available to users when creating menu schedules, thereby preventing menus from becoming monotonous.

[0009] In addition, new combinations of dishes are created by selecting combinations of dish groups that have appeared frequently in past menu records and matching dishes between these dish groups. This makes it possible to provide users with new menus that are less incongruous with previously offered menus and that are "dish combinations that have never been seen before." [Effects of the Invention]

[0014] That is, the present invention 1st According to this aspect, a technology can be provided that aims to prevent menus from becoming monotonous. [Brief explanation of the drawings]

[0015] [Figure 1] FIG. 1 is a diagram showing an example of the configuration of a system including a menu creation support device according to a first embodiment of the present invention. [Figure 2] FIG. 2 is a block diagram showing an example of a hardware configuration of the menu creation support device according to the first embodiment of the present invention. [Figure 3] FIG. 3 is a block diagram showing an example of the software configuration of the menu creation support device according to the first embodiment of the present invention. [Figure 4] FIG. 4 is a flowchart showing an example of a processing procedure and processing contents of a menu creation support process executed by the control unit of the menu creation support device shown in FIG. [Figure 5] FIG. 5 is a diagram for explaining an example of the operation of the menu creation support process shown in FIG. [Figure 6] FIG. 6 is a diagram showing an example of dish information and its attribute information used in the menu creation support process shown in FIG. [Figure 7] FIG. 7 is a diagram showing an example of a dish group generated by the menu creation support process shown in FIG. [Figure 8] FIG. 8 is a block diagram showing an example of the software configuration of a menu creation support device according to the second embodiment of the present invention. [Figure 9] FIG. 9 is a flowchart showing an example of the processing procedure and processing contents of the menu creation support processing executed by the control unit of the menu creation support device shown in FIG. [Figure 10] FIG. 10 is a flowchart showing an example of the processing procedure and processing content of the menu schedule optimization processing in the menu creation support processing shown in FIG. [Figure 11] FIG. 11 is a diagram for explaining an example of the operation of the attribute information addition process in the menu creation support process shown in FIG. [Figure 12] FIG. 12 is a diagram showing an example of attribute information related to food. [Figure 13] FIG. 13 is a diagram for explaining an example of the operation of the menu creation process in the menu creation support process shown in FIG. [Figure 14] FIG. 14 is a diagram for explaining an example of the operation of the menu schedule candidate creation process in the menu creation support process shown in FIG. [Figure 15] FIG. 15 is a diagram for explaining an example of the operation of the menu schedule optimization process shown in FIG. [Figure 16] FIG. 16 is a diagram showing an example of the similarity calculated in the menu schedule optimization process shown in FIG. [Figure 17] FIG. 17 is a block diagram showing an example of the software configuration of a menu creation assistance device according to the third embodiment of the present invention. [Figure 18] FIG. 18 is a flowchart showing an example of the processing procedure and processing content of the menu schedule simple optimization processing of the menu creation support processing shown in FIG. DETAILED DESCRIPTION OF THE INVENTION

[0016] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. In the following explanations, terms related to menus will be defined as a menu schedule being a combination of multiple menus, a menu including multiple dishes, and a dish including multiple foods or ingredients.

[0017] [First embodiment] (Configuration example) (1) System FIG. 1 is a diagram showing an example of the configuration of a support system including a menu creation support device SVA according to a first embodiment of the present invention.

[0018] The support system of the first embodiment is equipped with a menu creation support device SVA that provides a menu creation support service, and enables the transmission of information data between this menu creation support device SVA and a group of databases DB1 to DBm, and between the menu creation support device SVA and user terminals UT1 to UTn, respectively, via a network NW.

[0019] The database group DB1 to DBm stores, for example, a list of past menus, a list of dishes, information about the foods that make up each dish, and recipe data, and stores, for example, menu information managed by a nutritional school lunch management system and information defined in the Ministry of Education, Culture, Sports, Science and Technology's Standard Tables of Food Composition in Japan.

[0020] The user terminals UT1 to UTn are used by users who receive the menu creation support service and are, for example, personal computers. The user terminals UT1 to UTn are used to request the menu creation support device SVA to create a menu schedule, and to receive menu schedule information sent from the menu creation support device SVA in response to this request.

[0021] The network NW comprises a wide area network with the Internet at its core, and an access network for accessing this wide area network. The access network may be, for example, a public wireless data communication network or a LAN (Local Area Network), but is not limited to these.

[0022] (2) Menu Creation Support Device SVA The menu creation support device SVA is configured by, for example, a server computer installed on the cloud or the Web. Note that the menu creation support device SVA may also be configured by, for example, a personal computer used by a system administrator.

[0023] 2 and 3 are block diagrams showing an example of the hardware configuration and software configuration of the menu creation assistance device SVA, respectively.

[0024] The menu creation support device SVA has a control unit 1A that uses a hardware processor such as a central processing unit (CPU), and this control unit 1A is connected via a bus 5A to a memory unit having a program memory unit 2A and a data memory unit 3A, and a communication interface (hereinafter, interface will be referred to as I / F) unit 4A.

[0025] The communication I / F unit 4A transmits and receives information data to and from the database group DB1 to DBm and the user terminals UT1 to UTn using a communication protocol defined in the network NW. The communication I / F unit 4A can also perform data communication with an administrator terminal (not shown) used by a system administrator or the like.

[0026] The program storage unit 2A is configured by combining, for example, a nonvolatile memory such as a solid-state drive (SSD) as a storage medium that can be written to and read from at any time, and a nonvolatile memory such as a read-only memory (ROM), and stores middleware such as an operating system (OS), as well as application programs required to execute various controls according to one embodiment. Hereinafter, the OS and each application program will be collectively referred to as the program.

[0027] The data storage unit 3A is, for example, a combination of a non-volatile memory such as an SSD that can be written to and read from at any time as a storage medium, and a volatile memory such as RAM (Random Access Memory), and its storage area includes a dish information storage unit 31A, a dish group learning model storage unit 32A, a combination storage unit 33A, a combination score learning model storage unit 34A, a combination score storage unit 35A, and a menu information storage unit 36A.

[0028] Among these, the dish group learning model storage unit 32A stores a learning model for generating dish groups that has been trained in advance. The learning model for generating dish groups is trained to cluster multiple input dishes based on their names, classify them into multiple dish groups, and output the classification results.

[0029] The combination score learning model storage unit 34A stores a pre-trained learning model for calculating combination scores. The learning model for calculating combination scores is trained so that when a combination of dish groups is input, it outputs a score for that combination of dish groups that corresponds to the number of times the dishes included in those dish groups have appeared in past menus.

[0030] The control unit 1A has the following processing functions necessary to implement the first embodiment of the present invention: a dish information acquisition processing unit 11A, a dish group generation processing unit 12A, a dish group combination generation processing unit 13A, a combination score calculation processing unit 14A, a menu creation processing unit 15A, and a menu information transmission processing unit 16A.

[0031] The dish information acquisition processor 11A acquires a set of dish information from the database group DB1 to DBm, and stores the acquired set of dish information in the dish information storage unit 31 A. Each piece of dish information contains at least information indicating the name of the dish.

[0032] The cuisine group generation processing unit 12A uses the learning model for cuisine group generation stored in the cuisine group learning model storage unit 32A to group the cuisine information stored in the cuisine information storage unit 31A into groups of cuisines with similar names, and stores the information representing the cuisine groups generated in this way in the combination storage unit 33A. An example of the cuisine information grouping process will be explained in detail in the operation example.

[0033] The cuisine group combination generation processing unit 13A generates a plurality of cuisine group combinations based on information representing a plurality of cuisine groups stored in the combination storage unit 33A, and stores the generated cuisine group combinations in the combination storage unit 33A in association with combination identification information (combination ID).

[0034] The combination score calculation processing unit 14A uses the learning model for combination score calculation stored in the combination score learning model storage unit 34A to obtain a score for the combination of the plurality of dish groups according to the number of times that the dishes included in each dish group constituting the combination have appeared in past menus.The combination score calculation processing unit 14A then stores the combination score in the combination score storage unit 35A in association with the combination ID.An example of the calculation process for the combination score will be described in detail in the operation example.

[0035] The menu creation processing unit 15A reads the corresponding combination score from the combination score storage unit 35A for each combination of cuisine groups, and extracts cuisine group combinations for which the read combination score is equal to or greater than a threshold. The menu creation processing unit 15A then generates a plurality of cuisine combinations by selectively associating a plurality of cuisines one-to-one between the cuisine groups for the extracted cuisine group combinations, and stores the generated plurality of cuisine combinations as menu information in the menu information storage unit 36A.

[0036] The menu information transmission processing unit 16A transmits the plurality of menu information stored in the menu information storage unit 36A from the communication I / F unit 4A to the user terminals UT1 to UTn.

[0037] (Example of operation) Next, an example of the operation of the menu creation assistance device SVA configured as above will be described.

[0038] FIG. 4 is a flowchart showing an example of the processing procedure and processing contents of the menu creation support processing executed by the control unit 1A of the menu creation support device SVA.

[0039] (1) Collecting food information First, in step S10, the control unit 1A of the menu creation support device SVA, under the control of the dish information acquisition processing unit 11A, accesses the database group DB1 to DBm via the communication I / F unit 4A, collects dish information managed as dish masters in the database group DB1 to DBm, and stores the dish information in the dish information storage unit 31A.

[0040] Figure 6(a) shows an example of collected dish information, where the dish information is represented as a dish code and a dish name associated with it. Figure 6(b) shows an example of categories represented by the above dish code, where each digit of the dish code is associated with a category hierarchy.

[0041] (2) Creating food groups Next, in step S11, the control unit 1A of the menu creation support device SVA, under the control of the dish group generation processing unit 12A, performs the process of grouping the above dish information into groups of dishes with similar dish names using a learning model for dish group generation as follows.

[0042] That is, in the learning phase, the cuisine group generation processing unit 12A first uses, as learning data, a large amount of cuisine information stored in a cuisine master and labels indicating the cuisine groups into which the cuisine information should be categorized, to make a machine learning model such as a neural network learn the relationships between cuisines.Then, the learning model including the learned model parameters is stored in the cuisine group learning model storage unit 32A.

[0043] Next, in the estimation phase, the cuisine group generation processing unit 12A reads out the cuisine information one by one from the cuisine information storage unit 31A and inputs it into the learning model for cuisine group generation. As a result, the learning model for cuisine group generation clusters the input cuisine information based on its cuisine name and classifies it into cuisine groups with similar cuisine names, and outputs the label of the classified cuisine group, i.e., the cuisine group ID.

[0044] The cuisine group generation processing unit 12A stores the classified cuisine information in association with the cuisine group ID output from the learning model for cuisine group generation in the combination storage unit 33A. As a result, the combination storage unit 33A stores a set of cuisine information classified into the cuisine group in association with each of the plurality of cuisine group IDs.

[0045] Fig. 5(a) shows an example of the operation of the above-mentioned dish group generation process, in which dishes 1 to 9 are classified into three dish groups, A, B, and C. Fig. 7 also shows an example of the results of the grouping process, in which dishes are classified into the fish A group and the fish B group.

[0046] (3) Calculating the score for each food group combination In step S12, the control unit 1A of the menu creation support device SVA, under the control of the dish group combination generation processing unit 13A, generates multiple pairs of dish group combinations by combining the multiple dish groups stored in the combination storage unit 33A in pairs.Then, the generated dish group combinations are stored in the combination storage unit 33A in association with combination identification information (combination ID).

[0047] Next, the control unit 1A of the menu creation assistance device SVA executes the process of calculating a combination score for each combination of the above-mentioned dish groups under the control of the combination score calculation processing unit 14A as follows.

[0048] That is, in the learning phase, the combination score calculation processor 14A first acquires information representing past menu performance from the databases DB1 to DBm, and then uses the combinations of the above-mentioned dish groups and the number of times that the dishes included in the dish groups that make up the combinations appear in past menus as learning data to train a machine learning model such as a neural network to learn the relationships between the dish groups.

[0049] More specifically, the learning model is trained to output a combination score that increases with the number of times the dishes included in the dish group have appeared in past menus for each combination of dish groups.The combination score calculation processing unit 14A then stores the learning model for calculating dish groups, including the trained model parameters, in the combination score learning model storage unit 34A.

[0050] Next, in the estimation phase, each time the combination score calculation processing unit 14A selects a combination of dish groups from the combination storage unit 33A in step S13, it inputs the selected dish group into a learning model for combination score calculation in step S14.

[0051] The learning model for calculating combination scores outputs a combination score based on the number of times the dishes included in the input dish group appear in past menus, i.e., the higher the score value, the more times a dish appears in past menus.

[0052] Then, the combination score calculation processing unit 14A stores the combination score output from the learning model for combination score calculation in the combination score storage unit 35A in association with the combination ID of the dish group.

[0053] 5(b) is a diagram showing an example of the operation of the combination score calculation process. In this example, the score for the combination of group A and group B is calculated to be "90 points," the score for the combination of group A and group C is calculated to be "20 points," and the score for the combination of group B and group D is calculated to be "80 points."

[0054] (4) Menu creation Next, the control unit 1A of the menu creation support device SVA executes the menu creation process as follows under the control of the menu creation processing unit 15A.

[0055] That is, in step S15, the menu creation processing unit 15A first compares the score for the combination of dish groups obtained by the combination score calculation processing unit 14A with a preset threshold value. If the comparison shows that the combination score is equal to or greater than the threshold value, the menu creation processing unit 15A selects the combination of dish groups for use in menu creation in step S16.

[0056] Next, in step S17, the menu creation processing unit 15A generates all combinations of dishes included in each of the selected dish groups by associating the dishes included in each of the selected dish groups one-to-one. Then, in step S18, the menu creation processing unit 15A stores all of the generated dish combinations as menu information in the menu information storage unit 36A. As a result, in addition to existing dish combinations, new, previously unseen dish combinations are stored as new menu information in the menu information storage unit 36A.

[0057] Figure 5(c) shows an example of the menu creation process. In this example, for a combination of group A and group B that has a combination score of 90 points, which is determined to be above the threshold, all combinations of dishes included in group A and dishes included in group B are created as menu information.

[0058] In step S19, the control unit 1A of the menu creation support device SVA determines whether all of the dish group combinations previously generated by the dish group combination generation processing unit 13A have been selected. If this determination shows that there are unselected dish group combinations remaining, the control unit 1A returns to step S13. Then, the control unit 1A selects the next dish group combination and executes the series of processes from calculating the combination score to creating menu information, as described above, in steps S14 to S18. Thereafter, the process from calculating the combination score to creating menu information is repeated for all unselected dish group combinations in the same manner.

[0059] (5) Sending menu information On the other hand, if it is determined in step S19 that all combinations of dish groups have been selected, the control unit 1A of the menu creation support device SVA proceeds to step S20. Then, under the control of the menu information transmission processing unit 16A, the set of menu information stored in the menu information storage unit 36A is read and transmitted from the communication I / F unit 4A to, for example, the user terminal UT1 to UTn that requested the creation of the menu.

[0060] (effect) As described above, in the first embodiment, multiple pieces of dish information are grouped by dish names similarly using a learning model for generating dish groups, and combinations of these dish groups are generated.For each combination of generated dish groups, a combination score is calculated based on the number of dishes appearing in past menu results using a learning model for calculating combination scores.Dish group combinations with calculated combination scores above a threshold are extracted, and combinations of dishes are generated between these dish groups.The generated combinations of dishes are provided to the user as menu information.

[0061] This makes it possible to increase the number of menu information that can be provided, which increases the number of menu options available to users when creating a menu schedule, thereby preventing menus from becoming monotonous. Furthermore, combinations of dish groups with high combination scores, i.e., combinations of dish groups with dishes that appear frequently in past menu records, are extracted, and new dish combinations are created by matching dishes between these dish groups. This makes it possible to provide users with new menus that are less incongruous with previously available menus and that offer "unprecedented dish combinations" that have not previously been seen.

[0062] [Second embodiment] In the second embodiment of the present invention, attribute information is first added to the dish information, and then multiple menu information is created by combining dishes with reference to this attribute information.The multiple created menu information are then combined to create multiple menu schedule candidates for, for example, one week's worth, and for each created menu schedule candidate, the similarity of dishes between the menu information is calculated, and a menu schedule candidate with the calculated similarity of dishes below a threshold is selected.Based on the selected menu schedule candidate, an optimized menu schedule is created so that menus containing similar dishes are not consecutive, and is provided to the user.

[0063] (Configuration example) 8 is a block diagram showing an example of the software configuration of the menu creation support device SVB according to the second embodiment of the present invention. Note that the hardware configuration of the menu creation support device SVB is the same as that shown in FIG. 2 described in the first embodiment, and therefore is not shown.

[0064] The data storage unit 3B of the menu creation support device SVB includes a recipe data storage unit 31B, an information addition learning model storage unit 32B, a cooking information storage unit 33B, a menu creation learning model storage unit 34B, a menu information storage unit 35B, a menu schedule creation learning model storage unit 36B, a menu schedule candidate storage unit 37B, an optimization learning model storage unit 38B, and an optimized menu schedule storage unit 39B.

[0065] Of these, the information addition learning model storage unit 32B stores data representing a pre-trained learning model for information addition. The information addition learning model is a machine learning model, such as a neural network, trained to estimate and output attribute information for a dish or food when the name of the dish or food contained in the cooking information is input. A recipe dataset containing attributes of the cooking information and dish image data are used as the learning data.

[0066] The menu creation learning model storage unit 34B stores data representing a learning model for menu creation that has been trained in advance. The learning model for menu creation is a machine learning model such as a neural network that is trained to create menu information by combining multiple pieces of dish information when multiple pieces of dish information are input, taking into account their attribute information. As the learning data, for example, multiple pieces of dish information and their attribute information included in past menu performance list data (menu master) are used.

[0067] The menu schedule creation learning model storage unit 36B stores data representing a learning model for creating a menu schedule. The learning model for creating a menu schedule is a model that is trained by a machine learning model such as a neural network so that when multiple menu information and constraint conditions are input, the learning model creates a weekly menu schedule candidate by combining menu information that satisfies the constraint conditions. The learning data uses multiple menu information and constraint conditions included in the menu history list data. The constraint conditions include nutritional value, cost, and variation (e.g., seasonality), etc.

[0068] The optimization learning model storage unit 38B stores data representing a pre-trained optimization learning model. The optimization learning model is trained using a machine learning model such as a neural network so that it can estimate the similarity of a dish name when dish information is input. The learning data used includes a large number of dish names (e.g., text data in Japanese) and correct answer data on the similarity between dish names.

[0069] The control unit 1B of the menu creation support device SVB has the following control functions necessary for implementing the second embodiment of the present invention: a recipe data acquisition processing unit 11B, an attribute information addition processing unit 12B, a menu creation processing unit 13B, a menu schedule candidate creation processing unit 14B, a menu schedule optimization processing unit 15B, and a menu schedule transmission processing unit 16B.

[0070] The recipe data acquisition processing unit 11B acquires a recipe data set and a dish image data set from the database group DB1 to DBm, and stores the acquired recipe data set and dish image data set in the recipe data storage unit 31B.

[0071] The attribute information addition processing unit 12B uses the learning model for adding the information to estimate attribute information corresponding to the input dish name and food, such as category or main / side dish classification, and stores the dish information with the estimated attribute information added to the dish name in the dish information storage unit 33B.

[0072] The menu creation processing unit 13B inputs the input multiple pieces of dish information into a learning model for menu creation, and acquires menu information created by combining the multiple pieces of dish information from the learning model for menu creation.

[0073] The menu schedule candidate creation processing unit 14B inputs multiple menu information and constraint conditions into a learning model for creating a menu schedule, and acquires multiple menu schedule candidates for one week created by combining menu information that satisfies the constraint conditions from the learning model for creating a menu schedule. The menu schedule candidate creation processing unit 14B stores the acquired multiple menu schedule candidates in the menu schedule candidate storage unit 37B.

[0074] For each menu schedule candidate, the menu schedule optimization processing unit 15B inputs the dish information included in the multiple menu information constituting this candidate into the optimization learning model, and obtains from the optimization learning model an estimated value of the similarity of the dish information between the menu information and the total value of the similarity between all menu information.The menu schedule optimization processing unit 15B then selects menu schedule candidates whose total similarity is less than a threshold value, and stores the selected menu schedule candidates as optimized menu schedules in the optimized menu schedule storage unit 39B.

[0075] The menu schedule transmission processing unit 16B reads out the optimized menu schedule information from the optimized menu schedule storage unit 39B, and transmits the read optimized menu schedule information from the communication I / F unit 4B to the user terminals UT1 to UTn.

[0076] (Example of operation) Next, the operation of the menu creation support device SVB configured as above will be described.

[0077] FIG. 9 is a flowchart showing an example of the processing procedure and processing contents of the menu creation support processing executed by the control unit 1B of the menu creation support device SVB.

[0078] (1) Adding attribute information to food information Prior to creating menu information, the control unit 1B of the menu creation support device SVB executes a process of adding attribute information to dish information as follows.

[0079] That is, in step S30, the control unit 1B first acquires a recipe data set and a dish image data set from the database group DB1 to DBm under the control of the recipe data acquisition processing unit 11B, and temporarily stores the acquired recipe data set and dish image data set in the recipe data storage unit 31B. A recipe data set is a data set in which a dish name is associated with a food item and a category. A dish image data set is a data set in which a dish name is associated with dish image data.

[0080] Next, in step S31, the control unit 1B executes the process of adding attribute information to the dish information under the control of the attribute information addition processing unit 12B as follows.

[0081] That is, in the learning phase, the attribute information addition processing unit 12B first reads the recipe data set and the dish image data set from the recipe data storage unit 31B, and trains a machine learning model such as a neural network using these as learning data. As a result, a learning model is constructed that can estimate the category, main / side dish classification, and color scheme corresponding to the input dish information.

[0082] Once the learning model for adding attribute information has been constructed, in the estimation phase, the attribute information addition processing unit 12B inputs, for example, dish names and food names contained in multiple pieces of dish information acquired from the databases DB1 to DBm, into the learning model for adding information. The learning model for adding information estimates attribute information, such as category, main / side dish classification, and color, corresponding to the input dish name and food name. The attribute information addition processing unit 12B adds the attribute information estimated by the learning model for adding information to the dish information and stores it in the dish information storage unit 33B.

[0083] Fig. 11 shows an example of the operation of the attribute information addition processing by the attribute information addition processing unit 12B. Also, Fig. 12 shows an example of a recipe data set that can be used for learning the learning model for adding the attribute information.

[0084] (2) Creating menu information Subsequently, in step S32, the control unit 1B of the menu creation support device SVB creates menu information as follows using a learning model for menu creation under the control of the menu creation processing unit 13B.

[0085] That is, in the learning phase, the menu creation processing unit 13B first uses the multiple pieces of dish information and their attribute information stored in the dish information storage unit 33B as learning data to train a machine learning model such as a neural network. As a result, when dish information is input, a learning model for menu creation is constructed that creates menu information by combining dishes with different categories, main and side dish classifications, and colors.

[0086] When the estimation phase is subsequently set, the menu creation processing unit 13B acquires a list of past menu records from the databases DB1 to DBm. Then, the menu creation processing unit 13B inputs the multiple dish information contained in the acquired list of past menu records into the menu creation learning model, and acquires multiple menu information created by combining dishes with different categories, main and side dish classifications, and colors from this menu creation learning model. The acquired multiple menu information is then stored in the menu information storage unit 35B.

[0087] FIG. 13 shows an example of the operation of the menu creation process by the menu creation processing unit 13B.

[0088] (3) Creating menu schedule candidates Next, in step S33, the control unit 1B of the menu creation support device SVB creates menu schedule candidates using a learning model for menu schedule creation under the control of the menu schedule candidate creation processing unit 14B as follows.

[0089] That is, in the learning phase, the menu schedule candidate creation processing unit 14B first trains a machine learning model such as a neural network to create, for example, a week's worth of menu schedule candidates using multiple menu information items included in the menu record list data and constraints such as nutritional value, cost, and variation (e.g., seasonality) as learning data. Then, the learning model data for menu schedule creation, including the learned parameters, is stored in the menu schedule creation learning model storage unit 36B.

[0090] When the estimation phase is subsequently set, the menu schedule candidate creation processing unit 14B reads out the menu information stored in the menu information storage unit 35B and inputs it into the learning model for creating the menu schedule. If the user specifies any constraints at this time, the constraints are also input into the learning model for creating the menu schedule. As a result, the learning model for creating the menu schedule creates multiple menu schedule candidates for one week by combining the menu information so as to satisfy the constraints.

[0091] Menu schedule candidate creation processing unit 14B stores a plurality of menu schedule candidates created by the learning model for creating the menu schedule in menu schedule candidate storage unit 37B.

[0092] FIG. 14 shows an example of the operation of the process for creating the menu schedule candidates.

[0093] (4) Optimizing menu schedules Next, in step S34, the control unit 1B of the menu creation support device SVB, under the control of the menu schedule optimization processing unit 15B, executes the following process to select, from among multiple menu schedule candidates, a menu schedule candidate that is optimized so that similar dishes do not appear consecutively or frequently.

[0094] That is, in the learning phase, menu schedule optimization processor 15B first acquires a large amount of dish information from databases DB1 to DBm, and uses the correct answer data for the dish names and similarities between dish names of each acquired dish information as learning data to train a machine learning model such as a neural network. As a result, when multiple dish names included in menu information for one week, for example, are input, an optimization learning model is constructed that estimates the similarities between each dish name and the total value of these similarities for one week.

[0095] When the estimation phase is subsequently set, the menu schedule optimization processing unit 15B executes a process of creating an optimized menu schedule using a learning model for optimization as follows.

[0096] FIG. 10 is a flowchart showing an example of the processing procedure and processing contents of the optimization processing executed by the menu schedule optimization processing unit 15B.

[0097] That is, in step S341, the menu schedule optimization processor 15B first selects one menu schedule candidate from the menu schedule candidate storage unit 37B. Then, in steps S342 and S343, the menu schedule optimization processor 15B inputs the multiple dish information included in the multiple menu information constituting the selected menu schedule candidate into the optimization learning model. As a result, the optimization learning model estimates the similarity of the dish names for each of the input dish information, and further outputs the sum of these similarities for one week.

[0098] Next, in step S344, the menu schedule optimization processing unit 15B compares the total similarity for one week output from the optimization learning model with a threshold value and determines whether the total similarity is less than the threshold value. If the total similarity is less than the threshold value, the menu schedule optimization processing unit 15B proceeds to step S345, selects the menu schedule candidate as an optimized menu schedule, and stores it in the optimized menu schedule storage unit 39B.

[0099] Next, menu schedule optimization processing unit 15B determines whether all menu schedule candidates stored in menu schedule candidate storage unit 37B have been selected. If there are any menu schedule candidates that have not yet been selected, the process returns to step S341. Then, menu schedule optimization processing unit 15B selects the next unselected menu schedule candidate from menu schedule candidate storage unit 37B and performs a series of optimization processes in steps S342 to S345 on the selected menu schedule candidate.

[0100] Note that, even if it is determined in step S344 that the total similarity is not less than the threshold value, the menu schedule optimization processing unit 15B returns to step S341 and executes a series of optimization processes in steps S342 to S345 for the next unselected menu schedule candidate.

[0101] Thereafter, the menu schedule optimization processing unit 15B repeatedly executes the series of optimization processes in steps S342 to S346 described above until the optimization process is completed for all menu schedule candidates stored in the menu schedule candidate storage unit 37B.

[0102] Fig. 15 shows an example of the operation of the process for estimating the similarity between dishes using the learning model for optimization. Fig. 16 shows an example of the estimation result of the similarity between dishes for a certain menu schedule candidate.

[0103] (5) Sending optimized menu schedule information Finally, in step S35, the control unit 1B of the menu creation support device SVB, under the control of the menu schedule transmission processing unit 16B, reads out the optimized menu schedule information from the optimized menu schedule memory unit 39B, and transmits the read menu schedule information from the communication I / F unit 4B to the user terminal UT1 to UTn of the user who requested the creation of the menu schedule.

[0104] When the optimized menu schedule storage unit 39B stores a plurality of pieces of optimized menu schedule information, the menu schedule transmission processing unit 16B may select and transmit one piece of menu schedule information with the smallest total similarity from among the plurality of pieces of menu schedule information, or may transmit all of the plurality of pieces of menu schedule information. Also, the menu schedule transmission processing unit 16B may select and transmit a certain number of pieces of menu schedule information from the plurality of pieces of menu schedule information in ascending order of the total similarity.

[0105] (effect) As described above, in the second embodiment, attribute information is added to each of a plurality of pieces of dish information, and menu information is created by combining the plurality of pieces of dish information based on this attribute information. Then, the created plurality of pieces of menu information are combined to create, for example, a plurality of menu schedule candidates for one week. For each of the created menu schedule candidates, the similarity between the dishes of the menu information is calculated, and the total value of the calculated similarities for one week is calculated. Then, a menu schedule candidate whose calculated total similarity value is less than a threshold value is selected, and the selected menu schedule candidate is transmitted as an optimized menu schedule to the user terminal UT1 to UTn that requested the creation.

[0106] Therefore, according to the second embodiment, menu information is created taking into consideration the attribute information added to the cooking information, making it possible to create menu information that takes into consideration category, main / side dish classification, and color.

[0107] In addition, the similarity of dishes between menu information for each menu schedule candidate is calculated, and the menu schedule candidate for which the calculated total value of similarities for one week is less than a threshold value is selected as the menu schedule, making it possible to provide the user with an optimized menu schedule so that menu information containing similar dishes does not appear consecutively or frequently. Therefore, the user can create a menu for one week based on the optimized menu schedule, thereby preventing menus from becoming monotonous.

[0108] [Third embodiment] In the third embodiment of the present invention, when a request for a menu schedule specifying food types, such as low-salt or low-calorie food, is sent from a user terminal, a menu schedule optimized in the second embodiment so that menus are not consecutive is used as a base menu, and a menu schedule corresponding to the requested food types is created and provided to the user by changing part of the cooking information that makes up the base menu in accordance with constraints corresponding to the food types.

[0109] (Configuration example) Fig. 17 is a block diagram showing an example of the software configuration of a menu creation support device SVC according to a third embodiment of the present invention. In Fig. 17, the same parts as those in Fig. 8 are given the same reference numerals and detailed explanations are omitted. In addition, the hardware configuration of the menu creation support device SVC is the same as that in Fig. 2, so it is not shown.

[0110] The data storage unit 3C of the menu creation support device SVC includes the recipe data storage unit 31B, the information addition learning model storage unit 32B, the cooking information storage unit 33B, the menu creation learning model storage unit 34B, the menu information storage unit 35B, the menu schedule creation learning model storage unit 36B, the menu schedule candidate storage unit 37B, the optimization learning model storage unit 38B, and the optimized menu schedule storage unit 39B shown in Figure 8, as well as a simple optimized menu schedule storage unit 30C.

[0111] The simple optimized menu schedule storage unit 30C is used to store menu schedule information that is simply optimized according to the type of food.

[0112] The control unit 1C of the menu creation support device SVC includes a simple optimization processing unit 11C as a control function unit required to implement the third embodiment of the present invention, in addition to the recipe data acquisition processing unit 11B, attribute information addition processing unit 12B, menu creation processing unit 13B, menu schedule candidate creation processing unit 14B, menu schedule optimization processing unit 15B, and menu schedule transmission processing unit 16B shown in Figure 8.

[0113] When a request to create a menu schedule specifying a food type, such as low-salt food or low-calorie food, is sent from a user terminal UT1 to UTn by the user, the simple optimization processing unit 11C reads the optimized menu schedule stored in the optimized menu schedule storage unit 39B, and creates a simply optimized menu schedule by using the read menu schedule as a base menu and changing some of the cooking information included in the multiple menu information that make up this menu schedule in accordance with the constraint conditions corresponding to the food type.

[0114] (Example of operation) Next, an example of the operation of the menu creation support device SVC configured as above will be described.

[0115] Fig. 18 is a flowchart showing an example of the contents of a procedure manual for the menu creation support process executed by the control unit 1C of the menu creation support device SVC according to the third embodiment of the present invention. In Fig. 18, the same parts as those in Fig. 9 are designated by the same reference numerals and detailed explanations are omitted.

[0116] In step S40, the control unit 1C of the menu creation support device SVC, under the control of the simple optimization processing unit 11C, determines whether a request for creating a menu schedule specifying a food type has been received from the user terminals UT1 to UTn. If it is determined that a request for creating a menu schedule specifying a food type has been received, the simple optimization processing unit 11C proceeds to step S41 and performs simple optimization processing of the menu schedule as follows.

[0117] That is, the simple optimization processing unit 11C reads the optimized menu schedule from the optimized menu schedule storage unit 39B as basic menu information, and then uses this menu schedule as a base menu, and changes some of the dish information included in the multiple menu information that make up this menu schedule to other dish information that satisfies the constraints corresponding to the specified food type.

[0118] For example, suppose "meal for calorie-restricted individuals" is specified as the food type. In this case, the simplified optimization processing unit 11C, in accordance with the constraints prepared in advance for "meal for calorie-restricted individuals," extracts, from the plurality of menu items constituting the menu schedule, dish information whose calorie content exceeds the upper limit defined by the constraints. Then, from the plurality of dish items stored in the dish information storage unit 33B, dish information whose calorie content satisfies the constraints is read, and the extracted high-calorie dish information is replaced with the read low-calorie dish information.

[0119] The simple optimization processing unit 11C stores the menu schedule in which the cooking information has been changed in the simple optimized menu schedule storage unit 30C in association with a food type ID indicating low calorie.

[0120] The simple optimization processor 11C performs the above-described simple optimization process for each menu schedule stored in the optimized menu schedule storage unit 39B. If all of the dish information included in the multiple menu information that make up the menu schedule satisfies the food type constraints, the dish information does not need to be changed, or it may be changed to lower-calorie dish information.

[0121] In step S35, the control unit 1C of the menu creation support device SVC, under the control of the menu schedule transmission processing unit 16B, reads out menu schedule information that has been simply optimized to correspond to the food type from the simply optimized menu schedule memory unit 30C, and transmits the read menu schedule information from the communication I / F unit 4C to the requesting user terminal UT1 to UTn.

[0122] (effect) As explained above, in the third embodiment, when a user sends a request for a menu schedule specifying a food type, such as a low-salt diet or a low-calorie diet, the menu schedule stored in the optimized menu schedule memory unit 39B is used as the base menu, and dish information included in the menu information constituting this base menu that does not satisfy the constraint conditions for the food type is changed to other dish information that satisfies the constraint conditions for the food type, thereby creating a menu schedule that meets the request for the food type.

[0123] This makes it possible to create a menu schedule that meets the dietary requirements through relatively simple processing without significantly changing the base menu. Therefore, it is possible to create and provide a new menu schedule that meets the dietary requirements of the user without incurring a significant increase in cooking costs.

[0124] [Other embodiments] (1) In the second embodiment, multiple menu information items are created based on cooking information based on past menu records stored in the databases DB1 to DBm, and menu schedule candidates are created based on this menu information. However, this is not limited to this, and menu schedule candidates may be created using a larger number of menu information items created by the menu creation support device SVA in the first embodiment.

[0125] (2) The configuration, processing procedure, processing content, and period for creating a menu schedule of each control function unit of the menu creation support device may be changed within the scope of the present invention.

[0126] Although several embodiments of the present invention have been described in detail above, the above description is merely an example of the present invention in every respect. It goes without saying that various improvements and modifications can be made without departing from the scope of the present invention. In other words, when implementing the present invention, specific configurations corresponding to the embodiments may be appropriately adopted.

[0127] In short, this invention is not limited to the above-described embodiments, and the components can be modified and embodied in practice without departing from the spirit of the invention. Furthermore, various inventions can be created by appropriately combining multiple components disclosed in the above-described embodiments. For example, some components may be omitted from all the components shown in the embodiments. Furthermore, components from different embodiments may be appropriately combined. [Explanation of symbols]

[0128] SVA, SVB, SVC...Menu creation support device DB1 to DBm: Databases UT1~UTn...User terminal NW...Network 1A, 1B, 1C...Control section 2A, 2B, 2C...Program memory section 3A,3B,3C…Data storage section 4A, 4B, 4C…Communication I / F section 5A...bus 11A...Cooking information acquisition processing unit 12A...Cuisine group generation processing unit 13A... Recipe group combination generation processing unit 14A...Combination score calculation processing unit 15A...Menu creation processing unit 16A...Menu information transmission processing unit 11B...Recipe data acquisition processing unit 12B...Attribute information addition processing section 13B...Menu creation processing unit 14B... Menu schedule candidate creation processing unit 15B...Menu schedule optimization processing section 16B...Menu schedule transmission processing section 11C...Simple optimization processing section 31A…Cooking information storage unit 32A…Cooking group learning model memory section 33A...Combination memory section 34A...Combination score learning model memory unit 35A…Combination score memory section 36A...Menu information storage section 31B...Recipe data storage section 32B...Learning model memory for adding information 33B...Cooking information storage section 34B...Menu creation learning model memory unit 35B...Menu information storage section 36B...Learning model memory unit for creating menu schedules 37B... Menu schedule candidate memory section 38B…Optimization learning model memory section 39B…Optimized menu schedule memory section 30C… Simple optimized menu schedule memory section

Claims

1. a first processing unit that acquires a set of recipe information; a second processing unit that classifies the plurality of dishes included in the set of dish information into groups of dishes having similar ingredients to generate a plurality of dish groups; a third processing unit that generates a plurality of combinations of dish groups based on the plurality of dish groups, and calculates a score for each of the plurality of combinations generated, such that the score is larger for dish groups whose combinations of dishes that make up the dish group appear more frequently in past menu records; a fourth processing unit that selects a combination of the dish groups whose score satisfies a predetermined condition, and creates a new combination of dishes by associating dishes between the dish groups of the selected combination; and A menu creation support device equipped with the above.

2. The menu creation support device of claim 1, wherein the fourth processing unit selects combinations of the dish groups whose scores are equal to or greater than a predetermined threshold, and creates new combinations of dishes by matching dishes between the dish groups of the selected combinations.

3. A menu creation support method executed by an information processing device, obtaining a set of food information; a step of classifying the plurality of dishes included in the set of dish information into groups of dishes having similar ingredients to generate a plurality of dish groups; generating a plurality of combinations of dish groups based on the plurality of dish groups, and calculating a score for each of the plurality of combinations so that the score is larger for dish groups whose combinations of dishes that make up the dish group appear more frequently in past menu records; a step of selecting a combination of the dish groups whose score satisfies a predetermined condition, and creating a new combination of dishes by associating dishes between the dish groups of the selected combination; A menu creation support method that includes the following.

4. A program that causes a processor provided in the menu creation support device to execute the processing executed by a processing unit provided in the menu creation support device according to claim 1 or 2.

Citation Information

Patent Citations

  • Menu supporting device and method therefor

    JP2000067029A

  • Menu planning method, menu planning device, menu planning system and computer system

    JP2008217610A

  • Information provision apparatus, information provision method and information provision program

    JP2021082299A

  • Program and information processor

    JP2022076695A

  • Menu support system, menu support tool, menu support program, menu guidance method, food provision method and food production method

    JP2024175122A

Cited By

  • Menu creation support system and menu creation support method

    JP7873809B1