System

A system addresses the challenge of planning nutritionally balanced meals by integrating database management, recipe search, and health information to suggest tailored recipes, enhancing meal preparation efficiency and reducing waste.

JP2026023945APending Publication Date: 2026-02-13SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024126266
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-01
Publication Date
2026-02-13

AI Technical Summary

Technical Problem

Individuals and families face challenges in planning and executing nutritionally balanced meals due to busy lifestyles, dietary restrictions, and lack of appropriate information, leading to food waste and inefficient food management.

Method used

A system that includes a database management means for storing ingredient data, recipe search means, recipe presentation means, health information management means, alternative recipe suggestion means, nutrition management means, and cooking time-compatible recipe suggestion means to provide tailored recipes based on user inputs.

Benefits of technology

Enables users to easily obtain and prepare nutritionally balanced meals using available ingredients, considering allergies and cooking time, reducing food waste and supporting healthy eating habits.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026023945000001_ABST
    Figure 2026023945000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: This system is provided with a database managing means for receiving and storing inputted food material data, a recipe retrieving means for retrieving a recipe from a database based on the stored food material data, a recipe presenting means for transmitting the corresponding recipe to a user terminal and displaying it, a health information managing means for receiving and storing allergy information and nutrition state information inputted by a user, and a means for retrieving the recipe suited to the allergy and the nutrition state based on the health information. The system includes an alternative recipe suggestion means for presentation, a nutrition management means for analyzing the stored health information and evaluating and adjusting the nutrition balance, and a cooking time corresponding recipe suggestion means for receiving desired cooking time information input by a user, and retrieving and presenting a recipe which can be cooked in the corresponding cooking time.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The technology of the present disclosure relates to a system. [Background technology]

[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]

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

[0004] In modern households, it is extremely difficult for individuals and families to plan and execute nutritionally balanced meals. Reducing food waste and conveniently preparing healthy meals can be challenging, especially when busy lifestyles and diverse dietary restrictions (allergies and health conditions) must be taken into account. This challenge is compounded not only by time and resource constraints, but also by a lack of appropriate information and effective food management. Therefore, a comprehensive system to address these issues is needed. [Means for solving the problem]

[0005] The present invention provides a system that includes a database management means for receiving and storing input ingredient data, a recipe search means for searching the database for recipes based on the stored ingredient data, and a recipe presentation means for transmitting and displaying corresponding recipes on a user terminal. The system also includes a health information management means for receiving and storing allergy information and nutritional status information entered by the user, and an alternative recipe suggestion means for searching for and presenting recipes that match the user's allergies and nutritional status based on the health information. The system also includes a nutrition management means for analyzing the stored health information to evaluate and adjust nutritional balance, and a cooking time-compatible recipe suggestion means for receiving desired cooking time information entered by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time. This allows the system to propose optimal recipes tailored to the user's ingredients and individual health status, enabling the easy and efficient provision of nutritionally balanced meals.

[0006] "Entered ingredient data" refers to the list of ingredients in the home that is entered into the system by the user.

[0007] "Database management means" refers to the function within the system that stores input data and manages it so that it can be searched or retrieved as needed.

[0008] "Recipe search means" refers to a function within the system that searches the database for related recipes based on stored ingredient data.

[0009] "Recipe presentation means" refers to a function within the system for transmitting searched recipes to a user terminal and visually displaying them to the user.

[0010] "Allergy Information" means information about allergies to specific foods or ingredients that a User enters into the System.

[0011] "Nutritional Information" refers to information about a User's health status and nutritional intake that is entered into the System.

[0012] "Health information management means" refers to the function within the system for receiving allergy information and nutritional status information entered by users and storing it in a database.

[0013] "Means for suggesting alternative recipes" refers to a function within the system that searches for alternative recipes that are suitable for allergies or health conditions based on stored allergy information and nutritional status information and presents them to the user.

[0014] "Nutrition Management Tools" refers to the functionality within the system that analyzes stored health information, assesses nutritional balance, and makes necessary adjustments.

[0015] "Desired cooking time information" refers to information regarding the amount of time available for cooking that a user inputs into the system.

[0016] "Cooking time compatible recipe suggestion means" refers to a function within the system that searches for recipes that can be cooked within the time based on the input desired cooking time information and presents them to the user. [Brief explanation of the drawings]

[0017] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7]FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION

[0018] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.

[0019] First, the terms used in the following description will be explained.

[0020] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).

[0021] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.

[0022] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.

[0023] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.

[0024] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."

[0025] [First embodiment]

[0026] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.

[0027] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.

[0028] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0029] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.

[0030] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.

[0031] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0032] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.

[0033] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.

[0034] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0035] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0036] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0037] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0038] The present invention relates to a system that efficiently proposes recipes using available household ingredients and provides meal plans that take into account nutritional balance, allergies, and cooking time. Below, the program processing of the system of the present invention is explained in natural language, and a form for carrying out the invention is shown with specific examples.

[0039] System Configuration

[0040] This system mainly consists of three main components: a "user terminal," a "server," and a "database."

[0041] Program processing (explained in natural language)

[0042] 1. Enter and save ingredients

[0043] The user inputs ingredients they have at home into the system, such as "chicken," "potatoes," and "carrots," into the input form on their device and clicks the "send button."

[0044] The terminal receives the input ingredient data and transmits it to the server.

[0045] The server stores the received ingredient data in a database, which is used to search for recipes later.

[0046] Examples:

[0047] The user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[0048] 2. Recipe acquisition and suggestions

[0049] The server searches the recipe database for matching recipes based on the stored ingredient data.

[0050] The server generates search results (recipe list) and sends them to the terminal.

[0051] The device displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the food.

[0052] Examples:

[0053] The server searches for recipes such as "chicken stew" and "chicken curry" and sends them to the device, which then displays them to the user.

[0054] 3. Input allergy and dietary restriction information and suggest alternative recipes

[0055] The user enters information about allergies or dietary restrictions (e.g., dairy allergy).

[0056] The terminal receives the entered allergy information and sends it to the server.

[0057] Based on this information, the server searches for suitable alternative recipes and sends them to the terminal.

[0058] The terminal displays the list of alternative recipes to the user.

[0059] Examples:

[0060] The user inputs "dairy allergy," and the server then suggests alternative recipes, such as "dairy-free chicken curry."

[0061] 4. Nutritional balance assessment and adjustment

[0062] The user enters information about their health and nutritional status (e.g., vitamin D deficiency).

[0063] The terminal receives the input health information and transmits it to the server.

[0064] The server analyzes the information, evaluates the nutritional balance, searches for recipes with the necessary adjustments based on that information, and sends the recipes to the device.

[0065] The device will display the recipe list.

[0066] Examples:

[0067] The user inputs "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[0068] 5. Proposal of easy and quick recipes

[0069] The user inputs the time they want to spend cooking (e.g., within 30 minutes).

[0070] The terminal receives the input time information and transmits it to the server.

[0071] The server searches for recipes that can be cooked within that time and sends them to the terminal.

[0072] The device will display the recipe list.

[0073] Examples:

[0074] The user requests a dish that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[0075] Action Results

[0076] This system allows users to easily obtain and execute recipes that are optimal for their individual health conditions and lifestyles using ingredients available at home. The system provides nutritionally balanced meals, reducing food waste and supporting the realization of a healthy diet.

[0077] The processing flow will be explained below.

[0078] Step 1:

[0079] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[0080] Step 2:

[0081] The terminal receives the input ingredient data and sends it to the server. The terminal then sends the ingredient data to the server as an HTTP request.

[0082] Step 3:

[0083] The server stores the received ingredient data in a database. Specifically, the server analyzes the request, executes an SQL query, and stores the ingredient data in the database.

[0084] Step 4:

[0085] The server searches the recipe database for matching recipes based on the stored ingredient data. The server uses an SQL query to retrieve recipes that contain the stored ingredients from the database.

[0086] Step 5:

[0087] The server generates search results (recipe list) and sends them to the device. The server returns the corresponding recipe list to the device as a JSON response.

[0088] Step 6:

[0089] The device displays the received recipe list to the user. The device parses the received JSON data and displays it in the user interface. The user can select from the displayed recipe list.

[0090] Step 7:

[0091] The user enters information about allergies and dietary restrictions. The user enters the allergy information (e.g., "dairy allergy") into the input form on the device and clicks the "Submit" button.

[0092] Step 8:

[0093] The device receives the entered allergy information and sends it to the server. The device then sends the allergy information to the server as an HTTP request.

[0094] Step 9:

[0095] Based on the allergy information received, the server searches the recipe database for suitable alternative recipes. The server executes an SQL query to find recipes that match the allergy.

[0096] Step 10:

[0097] The server generates a list of alternative recipes and sends it to the device. The server returns the relevant alternative recipe list to the device in JSON format.

[0098] Step 11:

[0099] The device displays the received list of alternative recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipes.

[0100] Step 12:

[0101] The user enters information about their health condition and nutritional intake. The user enters health information (e.g., "Vitamin D deficiency") into the input form on the device and clicks the "Submit" button.

[0102] Step 13:

[0103] The device receives the entered health information and sends it to the server. The device then sends the health information to the server as an HTTP request.

[0104] Step 14:

[0105] The server analyzes the received health information and evaluates and adjusts nutritional balance. The server evaluates nutritional balance and identifies nutrients that are lacking.

[0106] Step 15:

[0107] The server searches the recipe database for recipes that provide the necessary nutrients and generates a recipe list. The server executes an SQL query to find the relevant recipes.

[0108] Step 16:

[0109] The server sends the generated recipe list to the device, and the server returns the recipe list to the device in JSON format.

[0110] Step 17:

[0111] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0112] Step 18:

[0113] The user inputs the desired cooking time (e.g., "within 30 minutes") into the input form on the device and clicks the "Submit" button.

[0114] Step 19:

[0115] The terminal receives the input cooking time information and sends it to the server. The terminal then sends the desired cooking time to the server as an HTTP request.

[0116] Step 20:

[0117] Based on the cooking time information received by the server, the server searches the recipe database for recipes that can be cooked within the specified time. The server executes an SQL query to search for recipes that fit the cooking time.

[0118] Step 21:

[0119] The server generates the appropriate recipe list and sends it to the device. The server returns the appropriate recipe list in JSON format to the device.

[0120] Step 22:

[0121] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0122] Example 1

[0123] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0124] Today's consumers lead busy lives and often lack the time to plan meals at home. Under these circumstances, there is a need for a system that can efficiently suggest recipes that make effective use of ingredients available at home and take into account allergies and nutritional balance. It is also necessary to provide recipes that can accommodate individual health conditions and dietary restrictions, and it is essential to suggest recipes that fit specific cooking times.

[0125] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[0126] In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching the database for recipes based on the stored ingredient data, a recipe presentation means for sending relevant recipes to a user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information input by the user, an alternative recipe suggestion means for searching for and presenting recipes that match the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, and a cooking time-compatible recipe suggestion means for receiving desired cooking time information input by the user, searching for and presenting recipes that can be cooked within the corresponding cooking time. This allows users to easily obtain optimal recipes based on their health status and lifestyle without wasting ingredients at home, enabling them to achieve nutritionally balanced meals.

[0127] The "database management means" is a device or software that provides the function of receiving and storing input ingredient data.

[0128] The "recipe search means" is a device or software that provides a function for searching a database for recipes based on the stored ingredient data.

[0129] The "recipe presentation means" is a device or software that provides the function of transmitting the corresponding recipe to the user terminal and displaying it.

[0130] "Health information management means" refers to a device or software that provides the function of receiving and storing allergy information and nutritional status information entered by a user.

[0131] The "alternative recipe suggesting means" is a device or software that provides a function for searching for and presenting recipes that are suitable for allergies and nutritional status based on the health information.

[0132] The "nutritional management means" is a device or software that provides a function for analyzing the stored health information and evaluating and adjusting nutritional balance.

[0133] The "cooking time compatible recipe suggesting means" is a device or software that provides the function of receiving desired cooking time information input by the user, searching for recipes that can be cooked within the corresponding cooking time, and presenting them.

[0134] This invention is a system that efficiently suggests recipes that take into consideration allergies, nutritional balance, and cooking time based on ingredients available at home entered by the user. This system consists of three main components: a "user terminal," a "server," and a "database." The program for this system is implemented using the following hardware and software.

[0135] First, the user uses the user terminal to input ingredients available at home. An input form is installed on the user terminal, and the user inputs ingredients such as "chicken," "potatoes," and "carrots," and clicks the "send button." The user terminal receives the input ingredient data and sends it to the server. The server receives this data and stores it in a database.

[0136] Next, the server searches for matching recipes in the recipe database based on the stored ingredient data. The server generates search results and sends them to the user's terminal. The user terminal displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the dish.

[0137] Additionally, the user may enter information about allergies or dietary restrictions. For example, the user may enter "dairy allergy." The user terminal receives this allergy information and sends it to the server. The server searches for appropriate alternative recipes based on the allergy information and sends the results to the user terminal. The user terminal then displays a list of alternative recipes to the user.

[0138] Nutritional balance can also be evaluated and adjusted. The user inputs information about their health condition and nutritional intake. For example, they input "vitamin D deficiency." The user's device sends this information to the server. The server analyzes the information, evaluates the nutritional balance, and based on that, searches for recipes with the necessary adjustments and sends them to the device. The user's device then displays a list of these recipes.

[0139] Finally, the user can input the desired cooking time. For example, they can input "a dish that can be cooked in 30 minutes or less." The device sends this information to the server. The server searches for recipes that can be cooked within that time and sends them to the device. The device then displays the recipe list.

[0140] Example prompt sentences:

[0141] "I would like to develop a system that, when I input ingredients available at home, suggests recipes based on those ingredients and provides alternative recipes that take allergies and nutritional balance into consideration. Please explain the specific program processing steps and the technology used."

[0142] This system allows users to easily obtain and execute recipes that are optimal for their individual health condition and lifestyle while making effective use of ingredients available at home.The system provides nutritionally balanced meals, reducing food waste and supporting healthy eating habits.

[0143] The flow of the identification process in the first embodiment will be described with reference to FIG.

[0144] Step 1:

[0145] Entering and saving ingredients

[0146] The user enters the ingredients they have at home into an input form on the user terminal.

[0147] Input: Ingredient names such as "chicken," "potatoes," and "carrots."

[0148] Specific behavior: The user enters the name of an ingredient in the input form and clicks the "Submit" button.

[0149] The device receives the input food ingredient data, converts it into JSON format, and sends it to the server.

[0150] Output: The ingredients data is sent to the server in JSON format.

[0151] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[0152] The server stores the received ingredient data in a database.

[0153] Input: JSON formatted ingredient data sent from the device.

[0154] Output: Ingredient data stored in a database.

[0155] What happens: The server parses the data and stores it in the appropriate database fields.

[0156] Step 2:

[0157] Recipe retrieval and suggestions

[0158] The server searches a recipe database for matching recipes based on the stored ingredient data.

[0159] Input: Ingredient data stored in the database.

[0160] Output: A list of recipes that match the ingredients.

[0161] What happens: The server performs a database search using an SQL query to retrieve matching recipes.

[0162] The server generates search results and sends them to the terminal in JSON format.

[0163] Input: A list of matching recipes.

[0164] Output: JSON data of the recipe list.

[0165] Specific operation: The server converts the search results into a JSON format list and sends it to the device.

[0166] The terminal displays the received recipe list to the user.

[0167] Input: JSON data of the recipe list sent from the server.

[0168] Output: The recipe list that is displayed to the user.

[0169] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[0170] Step 3:

[0171] Input allergy and dietary restrictions information and suggest alternative recipes

[0172] A user fills out a form with information about allergies or dietary restrictions. For example, "dairy allergy."

[0173] Input: Allergy information, such as "dairy allergy."

[0174] Specific behavior: The user enters allergy information into the input form and clicks the "Submit" button.

[0175] The terminal receives the entered allergy information, converts it into JSON format, and sends it to the server.

[0176] Output: Allergy information is sent to the server in JSON format.

[0177] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[0178] The server searches for alternative recipes based on allergy information and sends them to the terminal.

[0179] Input: Allergy information sent from the device in JSON format.

[0180] Output: A list of allergy-friendly alternative recipes.

[0181] Specific operation: The server performs a database search based on the allergy information and extracts alternative recipes.

[0182] The terminal displays the list of alternative recipes to the user.

[0183] Input: JSON data of the recipe alternative list sent from the server.

[0184] Output: The list of recipe alternatives displayed to the user.

[0185] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[0186] Step 4:

[0187] Nutritional balance assessment and adjustment

[0188] The user enters information about their health and nutritional status. For example, "Vitamin D deficiency."

[0189] Input: Health information, such as "Vitamin D deficiency."

[0190] Specific behavior: The user enters health information into the input form and clicks the "Submit" button.

[0191] The device receives the entered health information, converts it into JSON format, and sends it to the server.

[0192] Output: Health information is sent to the server in JSON format.

[0193] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[0194] The server analyzes health information, evaluates nutritional balance, and then searches for recipes with necessary adjustments based on that information and sends them to the device.

[0195] Input: Health information sent from the device in JSON format.

[0196] Output: A list of nutritionally balanced recipes.

[0197] Specific operation: The server performs a database search based on health information and extracts recipes that take nutritional balance into consideration.

[0198] The terminal displays the recipe list to the user.

[0199] Input: JSON data of a list of nutritionally balanced recipes sent from the server.

[0200] Output: The recipe list that is displayed to the user.

[0201] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[0202] Step 5:

[0203] Proposal of easy and quick recipes

[0204] The user enters the time they want to cook. For example, "within 30 minutes."

[0205] Input: Cooking time information, such as "30 minutes or less".

[0206] Specific behavior: The user enters a cooking time into the input form and clicks the "Submit" button.

[0207] The device receives the entered time information, converts it into JSON format, and sends it to the server.

[0208] Output: Cooking time information is sent to the server in JSON format.

[0209] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[0210] The server searches for recipes that can be cooked within that time and sends them to the terminal.

[0211] Input: Cooking time information sent from the device in JSON format.

[0212] Output: A list of recipes that can be cooked within the specified time.

[0213] Specific operation: The server performs a database search based on the cooking time information and extracts recipes that can be made within the specified time.

[0214] The terminal displays the recipe list to the user.

[0215] Input: JSON data of recipe list with cooking time sent from the server.

[0216] Output: The recipe list that is displayed to the user.

[0217] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[0218] (Application example 1)

[0219] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0220] Conventional home recipe suggestion systems are limited to proposing recipes based on ingredients and health information, but lack the functionality to assist users in purchasing ingredients they are running low on or in procuring ingredients in a timely manner. Furthermore, when users try to efficiently purchase ingredients according to the suggested recipes, they are required to take multiple steps, which is inconvenient. There is a need for a system that solves these issues and provides healthy recipes that utilize ingredients available at home in an efficient and hassle-free manner.

[0221] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[0222] In this invention, the server includes a storage management means for receiving and storing input ingredient data, a recipe search means for searching for recipes from information sources based on the stored ingredient data, a recipe presentation means for transmitting relevant recipes to a user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information input by the user, an alternative recipe suggestion means for searching for and presenting recipes that are suitable for the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-compatible recipe suggestion means for receiving desired cooking time information input by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, and an electronic payment means for purchasing ingredients that are missing from the proposed recipe. This allows the user to use ingredients efficiently, receive suggestions for optimal recipes that take health information and cooking time into consideration, and easily purchase missing ingredients through electronic payment.

[0223] The "storage management means" is a device or part of software for receiving and storing input ingredient data.

[0224] A "recipe lookup means" is a device or piece of software that searches for suitable recipes from information sources based on stored ingredient data.

[0225] The "recipe presentation means" is a device or piece of software that transmits the relevant recipe to the user terminal and displays it.

[0226] The "health information management means" is a device or piece of software that receives and stores allergy information and nutritional status information entered by a user.

[0227] The "alternative recipe suggestion means" is a device or piece of software that searches for and presents recipes that are suitable for allergies and nutritional conditions based on health information.

[0228] A "nutritional management tool" is a device or piece of software that analyzes stored health information and evaluates and adjusts nutritional balance.

[0229] The "cooking time compatible recipe suggesting means" is a device or part of software that receives desired cooking time information input by the user, searches for recipes that can be cooked within the corresponding cooking time, and presents them.

[0230] An "electronic payment instrument" is a device or piece of software for making electronic payments to purchase missing ingredients for a suggested recipe.

[0231] The system of this invention mainly consists of three main components: a user terminal, a server, and a database. It also incorporates an electronic payment function.

[0232] Program processing (explained in natural language)

[0233] 1. Enter and save ingredients

[0234] The user enters the ingredients they have at home into an input form on their device and presses the send button. The device receives the entered ingredient data and sends it to the server. The server stores the received ingredient data in a database, which can then be used as a source of information for searching for recipes later.

[0235] Example: A user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[0236] 2. Recipe acquisition and suggestions

[0237] The server searches the recipe database for matching recipes based on the stored ingredient data. The server then sends the resulting recipe list to the user's device, which then displays it to the user. The recipe also includes cooking instructions, allowing the user to follow the detailed instructions to cook the food.

[0238] Example: The server searches for recipes such as "boiled chicken" and "chicken curry," and the device displays them to the user.

[0239] 3. Input allergy and dietary restriction information and suggest alternative recipes

[0240] The user enters information about allergies and dietary restrictions into the user terminal. The terminal receives the entered allergy information and sends it to the server. The server uses that information to search for appropriate alternative recipes and sends them to the terminal. The terminal then displays a list of alternative recipes to the user.

[0241] Example: A user enters "dairy allergy" and the server suggests alternative recipes such as "dairy-free chicken curry."

[0242] 4. Nutritional balance assessment and adjustment

[0243] The user inputs information about their health condition and nutritional intake into the user terminal. The terminal receives the input health information and sends it to the server. The server evaluates the nutritional balance based on the information, searches for recipes with necessary adjustments based on that evaluation, and sends them to the terminal. The terminal then displays a list of those recipes.

[0244] Example: A user inputs "Vitamin D deficiency" and the server suggests recipes that are high in Vitamin D.

[0245] 5. Proposal of easy and quick recipes

[0246] The user inputs the desired cooking time into the user terminal. The terminal receives the input time information and sends it to the server. The server searches for recipes that can be cooked within that time and sends them to the terminal. The terminal then displays a list of those recipes.

[0247] Example: A user requests a meal that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[0248] 6. Purchasing food ingredients with electronic payment

[0249] Based on the proposed recipe, the user can purchase any missing ingredients from their terminal using an electronic payment system, allowing them to obtain the ingredients they need without any hassle.

[0250] Example: A user uses an electronic payment system to purchase the missing ingredient "soy sauce" to make "boiled chicken" online.

[0251] Specific hardware and software names used

[0252] Smartphone (iOS / Android): Operate the user interface and enter food and health information.

[0253] Database (PostgreSQL, MongoDB): Stores ingredient information, recipe information, and allergy information.

[0254] Server (Django, Node.js): Receives and processes data, searches for recipes, and processes electronic payments.

[0255] Electronic payment API (Stripe, PayPal): Provides payment functionality for users to purchase ingredients they are running low on.

[0256] Prompt Sentence Examples

[0257] "Please tell me a recipe that is high in vitamin D using ingredients that you have at home. The ingredients that can be used are chicken, potatoes, and carrots. You also have the option to purchase any ingredients that you are missing with a credit card."

[0258] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[0259] Step 1:

[0260] The user enters the ingredients they have at home into an input form on their device and presses the submit button. A list of ingredients (e.g., chicken, potatoes, carrots) is provided as input. The device receives this ingredient data and sends it to the server. The server stores the entered ingredient data in a database. This allows it to be used as a source of information for future recipe searches.

[0261] Step 2:

[0262] The server searches the recipe database for matching recipes based on the stored ingredient data. The stored ingredient data is used as input. The server sends the search result, a recipe list (e.g., simmered chicken, chicken curry), to the user's terminal. The terminal receives it and displays it to the user. As output, the recipe list is presented to the user.

[0263] Step 3:

[0264] The user inputs health information such as allergy information and dietary restrictions into the user terminal. Allergy information and nutritional status information (e.g., dairy allergy) are provided as input. The terminal receives the input information and sends it to the server. The server uses that information to search for appropriate alternative recipes in a recipe database. The server sends a list of alternative recipes to the user terminal, which displays it to the user. As output, the list of alternative recipes is presented to the user.

[0265] Step 4:

[0266] The user inputs information about their health condition and nutritional intake into the user terminal. Data about health and nutritional intake (e.g., vitamin D deficiency) is provided as input. The terminal receives the input information and sends it to the server. The server uses the information to evaluate nutritional balance and search for recipes with necessary adjustments. The server sends the search results to the user terminal, which displays them to the user. As output, the user is presented with a list of recipes with adjusted nutritional balance.

[0267] Step 5:

[0268] The user inputs the time they wish to spend cooking into the user terminal. As input, the desired cooking time (e.g., within 30 minutes) is provided. The terminal receives the input time information and sends it to the server. The server searches the recipe database for recipes that can be cooked within that time. The server sends the results to the user terminal, which displays them to the user. As output, the user is presented with a list of recipes that can be cooked within the specified time.

[0269] Step 6:

[0270] Based on the proposed recipe, the user purchases missing ingredients using an electronic payment system. As input, a list of missing ingredients is provided. The user terminal receives this information and sends payment information through the electronic payment API. The server processes the payment and sends a purchase confirmation to the user terminal. As output, the purchase of missing ingredients is completed and a purchase confirmation is presented to the user.

[0271] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.

[0272] The present invention relates to a system that suggests optimal recipes based on ingredients available at home, the user's health information, cooking time, and even the user's emotions. This system is equipped with a database management means and recipe search means based on the user's ingredients and health information, as well as an emotion engine that recognizes the user's emotions and suggests recipes accordingly. Below, the program processing of the system of the present invention is explained in natural language, and specific examples are included to illustrate the embodiments of the invention.

[0273] System Configuration

[0274] This system mainly consists of four main components: "user terminal," "server," "database," and "emotion engine."

[0275] Program processing (explained in natural language)

[0276] 1. Enter and save ingredients

[0277] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[0278] The terminal receives the input ingredient data and transmits it to the server.

[0279] The server stores the received ingredient data in a database, which is used to search for recipes later.

[0280] Examples:

[0281] The user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[0282] 2. Recipe acquisition and suggestions

[0283] The server searches the recipe database for matching recipes based on the stored ingredient data.

[0284] The server generates search results (recipe list) and sends them to the terminal.

[0285] The device displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the food.

[0286] Examples:

[0287] The server searches for recipes such as "chicken stew" and "chicken curry" and sends them to the device, which then displays them to the user.

[0288] 3. Input allergy and dietary restriction information and suggest alternative recipes

[0289] The user enters information about allergies or dietary restrictions (e.g., dairy allergy).

[0290] The terminal receives the entered allergy information and sends it to the server.

[0291] Based on this information, the server searches for suitable alternative recipes and sends them to the terminal.

[0292] The terminal displays the list of alternative recipes to the user.

[0293] Examples:

[0294] The user inputs "dairy allergy," and the server then suggests alternative recipes, such as "dairy-free chicken curry."

[0295] 4. Nutritional balance assessment and adjustment

[0296] The user enters information about their health and nutritional status (e.g., vitamin D deficiency).

[0297] The terminal receives the input health information and transmits it to the server.

[0298] The server analyzes the information, evaluates the nutritional balance, searches for recipes with the necessary adjustments based on that information, and sends the recipes to the device.

[0299] The device will display the recipe list.

[0300] Examples:

[0301] The user inputs "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[0302] 5. Proposal of easy and quick recipes

[0303] The user inputs the time they want to spend cooking (e.g., within 30 minutes).

[0304] The terminal receives the input time information and transmits it to the server.

[0305] The server searches the recipe database for recipes that can be cooked within that time.

[0306] The server generates a corresponding recipe list and sends it to the terminal.

[0307] The device will display the recipe list.

[0308] Examples:

[0309] The user requests a dish that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[0310] 6. Use of Emotion Engines

[0311] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions and generate emotion data (e.g., "I'm stressed").

[0312] The server receives the emotion data and modifies or adjusts the recipe suggestions.

[0313] Examples:

[0314] If the emotion engine recognizes that the user is "tired," the server will prioritize suggesting "easy, energizing dishes."

[0315] 7. Accumulation and utilization of emotional data

[0316] The server accumulates the user's past emotional data and uses this when suggesting the next recipe.

[0317] The emotion engine analyzes past data and suggests optimal recipes based on the user's preferences and tendencies.

[0318] Examples:

[0319] The server stores "recipes that users have preferred in the past when they were feeling stressed" and suggests them the next time a similar emotion is detected.

[0320] Action Results

[0321] This system allows users to easily obtain and execute optimal recipes using ingredients available at home, tailored to their individual health status and lifestyle. Furthermore, by combining it with an emotion engine, the system can suggest recipes based on the user's emotional state, providing a more comfortable cooking experience. The system provides nutritionally balanced meals, reducing food waste and supporting a healthier diet.

[0322] The processing flow will be explained below.

[0323] Step 1:

[0324] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[0325] Step 2:

[0326] The terminal receives the input ingredient data and sends it to the server. The terminal then sends the input data to the server as an HTTP request.

[0327] Step 3:

[0328] The server stores the received ingredient data in the database. The server parses the request, executes the SQL query, and stores the ingredient data in the database.

[0329] Step 4:

[0330] The server searches the recipe database for matching recipes based on the stored ingredient data. The server uses an SQL query to retrieve recipes that contain the stored ingredients from the database.

[0331] Step 5:

[0332] The server generates search results (recipe list) and sends them to the device. The server returns the corresponding recipe list to the device as a JSON response.

[0333] Step 6:

[0334] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipe list.

[0335] Step 7:

[0336] The user enters information about allergies and dietary restrictions. The user enters the allergy information (e.g., "dairy allergy") into the input form on the device and clicks the "Submit" button.

[0337] Step 8:

[0338] The device receives the entered allergy information and sends it to the server. The device then sends the allergy information to the server as an HTTP request.

[0339] Step 9:

[0340] Based on the allergy information received, the server searches the recipe database for suitable alternative recipes. The server executes an SQL query to find recipes that match the allergy.

[0341] Step 10:

[0342] The server generates a list of alternative recipes and sends it to the device. The server returns the relevant alternative recipe list to the device in JSON format.

[0343] Step 11:

[0344] The device displays the received list of alternative recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipes.

[0345] Step 12:

[0346] The user enters information about their health condition and nutritional intake. The user enters health information (e.g., "Vitamin D deficiency") into the input form on the device and clicks the "Submit" button.

[0347] Step 13:

[0348] The device receives the entered health information and sends it to the server. The device then sends the health information to the server as an HTTP request.

[0349] Step 14:

[0350] The server analyzes the received health information and evaluates and adjusts nutritional balance. The server evaluates nutritional balance and identifies nutrients that are lacking.

[0351] Step 15:

[0352] The server searches the recipe database for recipes that provide the necessary nutrients and generates a recipe list. The server executes an SQL query to find the relevant recipes.

[0353] Step 16:

[0354] The server sends the generated recipe list to the device, and the server returns the recipe list to the device in JSON format.

[0355] Step 17:

[0356] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0357] Step 18:

[0358] The user inputs the desired cooking time (e.g., "within 30 minutes") into the input form on the device and clicks the "Submit" button.

[0359] Step 19:

[0360] The terminal receives the input cooking time information and sends it to the server. The terminal then sends the desired cooking time to the server as an HTTP request.

[0361] Step 20:

[0362] Based on the cooking time information received by the server, the server searches the recipe database for recipes that can be cooked within the specified time. The server executes an SQL query to search for recipes that fit the cooking time.

[0363] Step 21:

[0364] The server generates the appropriate recipe list and sends it to the device. The server returns the appropriate recipe list in JSON format to the device.

[0365] Step 22:

[0366] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0367] Step 23:

[0368] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions and generate emotion data (e.g., "I'm stressed").

[0369] Step 24:

[0370] The server receives the emotion data and changes or adjusts the recipe suggestions. The server then searches for optimal recipes for the user again based on the emotion data and generates an optimal recipe list.

[0371] Step 25:

[0372] The server sends the regenerated recipe list to the device, and the server returns an appropriate recipe list in JSON format according to the emotion.

[0373] Step 26:

[0374] The device displays the received list of regenerated recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0375] Step 27:

[0376] The server accumulates the user's past emotional data and uses it when suggesting the next recipe. The server analyzes the past data and reflects it in the next suggestion.

[0377] Step 28:

[0378] The emotion engine analyzes past data and suggests optimal recipes based on the user's preferences and trends. Emotion-based recipe suggestions improve user satisfaction.

[0379] Example 2

[0380] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0381] In today's busy lifestyles, it is important to effectively utilize limited time and resources when preparing meals at home and provide nutritionally balanced meals. Furthermore, recipes must be proposed that take into account constraints such as the health status and allergies of each household and individual, and that are also suited to the user's mental state. However, no system yet exists that can comprehensively manage these diverse factors, and conventional recipe suggestion systems have difficulty addressing the user's health and emotional state. Therefore, the present invention provides a system that solves these problems.

[0382] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching for recipes from an information store based on the stored ingredient data, and a recipe presentation means for sending the corresponding recipe to a user terminal and displaying it. This includes a health information management means for receiving and storing health status information entered by the user, an alternative recipe suggestion means for searching for and presenting recipes that match allergies and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-based recipe suggestion means for receiving desired cooking time information entered by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, an emotion recognition engine means for analyzing the user's emotional state and suggesting recipes based on the analysis, and a means for accumulating past emotion data and utilizing it for future recipe suggestions. This allows users to obtain optimal recipes based on their health and emotional state while using ingredients available at home, and prepare nutritionally balanced meals.

[0383] "Ingredient data" refers to information including the type and quantity of food that a user enters into the system.

[0384] "Database management means" refers to the function of receiving, organizing, and efficiently storing and managing input data.

[0385] "Recipe search means" refers to a function that searches an information store or database for recipes that meet specific conditions based on stored data.

[0386] The "recipe presentation means" is a function that sends the searched recipe to the user's terminal and displays it so that the user can visually check it.

[0387] "Health Information" refers to allergies, nutritional status, and other health-related information entered by users.

[0388] "Health information management means" refers to the function for receiving, storing, and managing health status information entered by the user.

[0389] "Alternative recipe suggestion means" refers to a function that searches for and suggests recipes that suit the user's allergies and nutritional status based on the user's health information.

[0390] "Nutrition management tools" refers to functions for analyzing stored health information, evaluating nutritional balance, and making necessary adjustments.

[0391] The "cooking time compatible recipe suggestion means" is a function that receives desired cooking time information input by the user, searches for and suggests recipes that can be cooked within that time.

[0392] "Emotion recognition engine means" refers to a function for analyzing user input and voice data and recognizing the user's emotional state.

[0393] "Means for accumulating past emotional data" refers to a function that saves a user's past emotional information and uses it to suggest future recipes.

[0394] This invention relates to a system that proposes optimal recipes based on household ingredients, the user's health information, cooking time, and even the user's emotions. This system consists of four main components: a user terminal, a server, a database, and an emotion engine.

[0395] First, the user enters ingredients they have at home into an input form on their device. They enter ingredients such as "chicken," "potatoes," and "carrots," and then click the "Submit" button. The entered ingredient data is received by the device, converted to JavaScript Object Notation (JSON) format, and sent to the server. The server analyzes the received ingredient data and saves it in a database. The ingredient information is systematically stored in the database and later used as basic data for recipe searches.

[0396] Next, the server searches the recipe database for matching recipes based on the ingredient data stored in the database. It uses SQL queries to retrieve recipes that match the ingredients the user has. The server then formats the search results and sends them to the device in the form of a recipe list. The device then displays the received recipe list to the user, allowing the user to check detailed cooking instructions.

[0397] If the user enters information about allergies or dietary restrictions, that information is also received by the device, converted to JSON format, and sent to the server. The server analyzes the received health information and searches for alternative recipes that meet the allergies or dietary restrictions. The searched alternative recipes are then sent back to the device and displayed to the user.

[0398] Additionally, if a user inputs information about their health condition or nutritional intake (e.g., vitamin D deficiency), the server analyzes that information, evaluates the nutritional balance, and searches for recipes with the necessary adjustments. These recipes are also sent to the device and displayed to the user.

[0399] Furthermore, if the user inputs information about the cooking time (e.g., within 30 minutes), the server searches for recipes that can be cooked within that time. If a matching recipe is found, it is sent to the terminal and displayed for the user to check.

[0400] The system is equipped with an emotion engine that analyzes input and voice data to recognize the user's emotional state when searching for recipes. For example, if the emotion engine recognizes that the user is "tired," the server will prioritize suggestions for "easy, energizing dishes." Emotional data is accumulated, and the next time a recipe is suggested, it can be based on past emotion data.

[0401] Examples:

[0402] 1. The user enters "chicken," "potatoes," and "carrots" into the input form on the device and clicks the send button.

[0403] 2. The server receives it and stores it in the database.

[0404] 3. The server searches the database for recipes such as "chicken stew" and "chicken curry" and sends them to the terminal.

[0405] 4. The user enters "dairy allergy," and the server suggests alternative recipes, such as "dairy-free chicken curry."

[0406] 5. The user types in "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[0407] 6. The user requests a meal that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[0408] 7. The emotion engine recognizes that the user is "tired," and the server prioritizes suggesting "easy, energizing meals."

[0409] Example prompt sentence:

[0410] "Please suggest a simple recipe using 'chicken,' 'potatoes,' and 'carrots.'"

[0411] "Please suggest some chicken recipes that are suitable for people with dairy allergies."

[0412] "Please provide recipes that are high in vitamin D."

[0413] Please suggest a recipe that can be made in 30 minutes or less.

[0414] "What recipes would you recommend for when you're tired?"

[0415] "What recipes have you enjoyed in the past when you were stressed?"

[0416] This system allows users to easily obtain optimal recipes based on their detailed health and emotional state, providing nutritionally balanced meals. Furthermore, by utilizing the emotion engine, the system can further enhance the optimal recipe suggestions based on the user's emotional state.

[0417] The flow of the identification process in the second embodiment will be described with reference to FIG.

[0418] Step 1:

[0419] The user inputs ingredients they have at home into the input form on the device. Specifically, the user inputs ingredients such as "chicken," "potatoes," and "carrots" using the keyboard and clicks the "send button." The input data is sent to the device in text format.

[0420] Input: Ingredient information (e.g. chicken, potatoes, carrots)

[0421] Output: Text data sent to the terminal

[0422] Step 2:

[0423] The device receives the input food ingredient data, converts it into JSON format, and then sends the received data to the server.

[0424] Input: Textual ingredient information

[0425] Output: Ingredient data converted to JSON format

[0426] Step 3:

[0427] The server analyzes the received JSON data and extracts the ingredient information, which is then stored in a database.

[0428] Input: JSON formatted food ingredients data

[0429] Output: Ingredient information stored in the database

[0430] Step 4:

[0431] The server searches the recipe database for matching recipes based on the ingredient data stored in the database, generates an SQL query, and retrieves the appropriate recipes based on that.

[0432] Input: Ingredient information stored in the database

[0433] Output: Searched recipe data

[0434] Step 5:

[0435] The server formats the retrieved recipe data and generates a recipe list, which is formatted for display to the user.

[0436] Input: Searched recipe data

[0437] Output: A formatted list of recipes

[0438] Step 6:

[0439] The server sends the generated recipe list to the terminal, which receives it and displays it to the user, who can then check the detailed cooking instructions for each recipe.

[0440] Input: A formatted list of recipes

[0441] Output: Recipe list displayed on the user's device

[0442] Step 7:

[0443] The user enters information about allergies and dietary restrictions. The information is received by the device, converted into JSON format, and sent to the server.

[0444] Input: Allergy information (e.g. dairy allergy)

[0445] Output: Allergy information in JSON format

[0446] Step 8:

[0447] The server analyzes the received allergy information and searches a recipe database for suitable alternative recipes based on that information.

[0448] Input: Allergy information in JSON format

[0449] Output: Searched alternative recipe data

[0450] Step 9:

[0451] The server generates a list of alternative recipes, sends it to the terminal, and displays it to the user, who can then check recipes that match the allergy information.

[0452] Input: Searched alternative recipe data

[0453] Output: A list of alternative recipes displayed on the user's terminal

[0454] Step 10:

[0455] The user inputs information about their health condition and nutritional intake. The input information is received by the device, converted into JSON format, and sent to the server.

[0456] Input: Health information (e.g., Vitamin D deficiency)

[0457] Output: Health status information in JSON format

[0458] Step 11:

[0459] The server analyzes the received health information and evaluates the nutritional balance. Based on the analysis results, it searches the recipe database for recipes with necessary adjustments.

[0460] Input: Health status information in JSON format

[0461] Output: Adjusted recipe data

[0462] Step 12:

[0463] The server generates an adjusted recipe list and sends it to the terminal, which displays the received recipe list to the user.

[0464] Input: Adjusted recipe data

[0465] Output: Adjustment recipe list displayed on the user's device

[0466] Step 13:

[0467] The user inputs the desired cooking time. The input time information is received by the device, converted into JSON format, and sent to the server.

[0468] Input: Desired cooking time (e.g., within 30 minutes)

[0469] Output: Desired cooking time information in JSON format

[0470] Step 14:

[0471] The server analyzes the received time information and searches the recipe database for recipes that can be cooked within that time.

[0472] Input: Desired cooking time information in JSON format

[0473] Output: Searched time-enabled recipe data

[0474] Step 15:

[0475] The server generates a time-based recipe list and transmits it to the terminal, which then displays the received recipe list to the user.

[0476] Input: Searched time-enabled recipe data

[0477] Output: A time-aware recipe list displayed on the user's device

[0478] Step 16:

[0479] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions.

[0480] Input: User input and voice data

[0481] Output: Recognized emotion data

[0482] Step 17:

[0483] The server receives the emotion data and adjusts the recipe suggestions. Based on the emotion recognized by the emotion engine, it searches for suitable recipes from the recipe database.

[0484] Input: Recognized emotion data

[0485] Output: Adjusted emotion-aware recipe data

[0486] Step 18:

[0487] The server generates an adjusted recipe list and sends it to the terminal, which displays the received recipe list to the user.

[0488] Input: Adjusted emotion-aware recipe data

[0489] Output: A list of emotion-aware recipes displayed on the user's device

[0490] Step 19:

[0491] The server accumulates the user's past emotional data and uses it when suggesting the next recipe. The emotion engine analyzes the past emotional data and suggests the optimal recipe based on the user's preferences and tendencies.

[0492] Input: Historical emotion data

[0493] Output: Recipe suggestions based on accumulated emotional data

[0494] This allows users to easily obtain the optimal recipes tailored to their individual health condition, lifestyle, and even emotional state.

[0495] (Application example 2)

[0496] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0497] While conventional recipe suggestion systems can collect information on ingredients and health, they are unable to make suggestions that take into account the user's emotional state, making it difficult to provide optimal recipes that are in line with the user's emotions. Furthermore, it is difficult to make suggestions in real time, making it difficult to improve the user's shopping experience.

[0498] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching for recipes based on the stored ingredient data, a recipe presentation means for sending corresponding recipes to the user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information entered by the user, an alternative recipe suggestion means for searching for and presenting recipes that match the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-based recipe suggestion means for receiving desired cooking time information entered by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, and an emotion engine for recognizing the user's emotional state and suggesting recipes based on the corresponding emotional state. This enables optimal recipe suggestions based on the user's emotional state, improving the shopping experience by suggesting recipes in real time.

[0499] The "database management means" is a means having the function of receiving and storing input ingredient data.

[0500] The "recipe search means" is a means for searching a database for recipes based on stored ingredient data.

[0501] The "recipe presentation means" is a means for transmitting the searched recipe to the user terminal and displaying it.

[0502] The "health information management means" is a means for receiving and storing allergy information and nutritional status information input by the user.

[0503] The "alternative recipe suggestion means" is a means for searching for and presenting recipes that suit allergies and nutritional conditions based on stored health information.

[0504] "Nutrition management tools" are tools for analyzing stored health information and evaluating and adjusting nutritional balance.

[0505] The "cooking time compatible recipe suggesting means" is a means for receiving desired cooking time information input by the user, searching for recipes that can be cooked within that cooking time, and presenting them.

[0506] The "emotion engine" is an engine that has the function of recognizing the user's emotional state and suggesting recipes based on that emotional state.

[0507] The system for implementing this invention mainly consists of four main components: a “user terminal,” a “server,” a “database,” and an “emotion engine.” The operation of each component and the entire system will be explained in detail below.

[0508] System Configuration and Operation

[0509] 1. User Device

[0510] The user terminal is assumed to be a wearable device such as smart glasses. The user terminal has an interface that allows the user to input information about ingredients, health information, desired cooking time, allergy information, etc. The user terminal is also equipped with a camera that captures the user's face and sends the data to the emotion engine.

[0511] 2. Database Management Methods

[0512] The database management means is located within the server. It receives ingredient data entered by the user from the terminal and stores it in the database. The user's health information and allergy information are also stored in the same way.

[0513] 3. Recipe search methods

[0514] The recipe search means is executed by the server. It searches the database for a corresponding recipe based on the stored ingredient data and health information. The searched recipe is sent from the server to the user terminal and displayed.

[0515] 4. Emotion Engine

[0516] The emotion engine analyzes facial images sent from the user's device and recognizes the user's emotions. The emotion engine uses an external emotion recognition API (for example, in conjunction with the OpenCV library). Emotion data is sent to the server and used to adjust recipe suggestions.

[0517] 5. Health information management and alternative recipe suggestion methods

[0518] The health information management means has the function of receiving and storing allergy information and nutritional status information entered by the user. The alternative recipe suggestion means searches for and presents recipes that are suitable for the allergies and nutritional status based on the stored health information.

[0519] 6. Nutritional Management Measures

[0520] The nutrition management tool analyzes the stored health information and evaluates and adjusts the nutritional balance, thereby suggesting ingredients and recipes that will supplement the user's nutrient deficiencies.

[0521] Specific examples

[0522] Suppose a user types, "I have some chicken and spinach in the fridge. I'd like a recipe that will cheer me up and that I can make in under 30 minutes today." In this case, the system will suggest the best recipe by following these steps:

[0523] 1. The user's device sends information about the ingredients (chicken and spinach), cooking time (within 30 minutes), health information, allergy information, and the user's emotional data (e.g., "stress") to the server.

[0524] 2. The server searches the database for suitable recipes based on the stored data. It uses an emotion engine to analyze the user's emotional state and prioritizes recipes that will cheer you up.

[0525] 3. The server sends the search results to the user's device, and recipes such as "Chicken and Spinach Stir-fry (cooking time: 20 minutes)" and "High-Protein Smoothie (cooking time: 5 minutes)" are displayed on the smart glasses' display.

[0526] Prompt Sentence Examples

[0527] "I have some chicken and spinach in the fridge. I'd like an energizing recipe that I can make in under 30 minutes today."

[0528] In this way, using this system makes it possible to suggest optimal recipes based on the user's emotional state, improving the shopping experience through effective recipe suggestions in real time.

[0529] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[0530] Step 1:

[0531] The user terminal receives the ingredient information, desired cooking time, allergy information, nutritional status information, and facial image input by the user. This input data includes ingredients such as "chicken" and "spinach" and the desired cooking time of "within 30 minutes." The user's facial image is also captured by a camera.

[0532] Step 2:

[0533] The device sends the received data to the server. The data includes ingredient information, cooking time, allergy information, nutritional status information, and facial images. The device sends the data to the server using an HTTP request.

[0534] Step 3:

[0535] The server processes the received data. First, it sends the facial image to the emotion recognition API to analyze the user's emotional state. The emotion recognition API receives image data as input and outputs emotional data. In this example, the emotional state is recognized as "stress."

[0536] Step 4:

[0537] The server uses a database management means to store the ingredient information, cooking time, allergy information, and nutritional status information in a database. The database management means stores the data using SQL queries and outputs status information indicating whether the data storage was successful.

[0538] Step 5:

[0539] The server uses the recipe search means to search for recipes based on the saved data. It searches for recipes in the database using the search criteria: ingredient information "chicken" and "spinach," cooking time "within 30 minutes," allergy information, nutritional status, and emotional state "stress." It outputs a list of matching recipes as the search result.

[0540] Step 6:

[0541] The server considers the results of the emotion engine and prioritizes selecting invigorating recipes that correspond to the emotional state "stress." This selection process extracts recipes that contain ingredients that relax the user and avoid complicated cooking steps.

[0542] Step 7:

[0543] The server uses the recipe presentation means to send the selected recipe list to the user terminal. The recipe list sent includes recipes such as "Chicken and Spinach Stir-fry (Cooking time: 20 minutes)" and "High Protein Smoothie (Cooking time: 5 minutes)." The list is sent to the user terminal as an HTTP response.

[0544] Step 8:

[0545] The user device displays the received recipe list, and the smart glasses display shows the suggested recipe name and cooking time. The user can start cooking based on the optimal recipe information presented in real time.

[0546] Through this series of processes, it is possible to provide optimal recipes in real time that take into account the user's emotional state and health information.

[0547] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0548] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0549] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.

[0550] [Second embodiment]

[0551] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.

[0552] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0553] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0554] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.

[0555] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[0556] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0557] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0558] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0559] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0560] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0561] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0562] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."

[0563] The present invention relates to a system that efficiently proposes recipes using available household ingredients and provides meal plans that take into account nutritional balance, allergies, and cooking time. Below, the program processing of the system of the present invention is explained in natural language, and a form for carrying out the invention is shown with specific examples.

[0564] System Configuration

[0565] This system mainly consists of three main components: a "user terminal," a "server," and a "database."

[0566] Program processing (explained in natural language)

[0567] 1. Enter and save ingredients

[0568] The user inputs ingredients they have at home into the system, such as "chicken," "potatoes," and "carrots," into the input form on their device and clicks the "send button."

[0569] The terminal receives the input ingredient data and transmits it to the server.

[0570] The server stores the received ingredient data in a database, which is used to search for recipes later.

[0571] Examples:

[0572] The user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[0573] 2. Recipe acquisition and suggestions

[0574] The server searches the recipe database for matching recipes based on the stored ingredient data.

[0575] The server generates search results (recipe list) and sends them to the terminal.

[0576] The device displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the food.

[0577] Examples:

[0578] The server searches for recipes such as "chicken stew" and "chicken curry" and sends them to the device, which then displays them to the user.

[0579] 3. Input allergy and dietary restriction information and suggest alternative recipes

[0580] The user enters information about allergies or dietary restrictions (e.g., dairy allergy).

[0581] The terminal receives the entered allergy information and sends it to the server.

[0582] Based on this information, the server searches for suitable alternative recipes and sends them to the terminal.

[0583] The terminal displays the list of alternative recipes to the user.

[0584] Examples:

[0585] The user inputs "dairy allergy," and the server then suggests alternative recipes, such as "dairy-free chicken curry."

[0586] 4. Nutritional balance assessment and adjustment

[0587] The user enters information about their health and nutritional status (e.g., vitamin D deficiency).

[0588] The terminal receives the input health information and transmits it to the server.

[0589] The server analyzes the information, evaluates the nutritional balance, searches for recipes with the necessary adjustments based on that information, and sends the recipes to the device.

[0590] The device will display the recipe list.

[0591] Examples:

[0592] The user inputs "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[0593] 5. Proposal of easy and quick recipes

[0594] The user inputs the time they want to spend cooking (e.g., within 30 minutes).

[0595] The terminal receives the input time information and transmits it to the server.

[0596] The server searches for recipes that can be cooked within that time and sends them to the terminal.

[0597] The device will display the recipe list.

[0598] Examples:

[0599] The user requests a dish that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[0600] Action Results

[0601] This system allows users to easily obtain and execute recipes that are optimal for their individual health conditions and lifestyles using ingredients available at home. The system provides nutritionally balanced meals, reducing food waste and supporting the realization of a healthy diet.

[0602] The processing flow will be explained below.

[0603] Step 1:

[0604] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[0605] Step 2:

[0606] The terminal receives the input ingredient data and sends it to the server. The terminal then sends the ingredient data to the server as an HTTP request.

[0607] Step 3:

[0608] The server stores the received ingredient data in a database. Specifically, the server analyzes the request, executes an SQL query, and stores the ingredient data in the database.

[0609] Step 4:

[0610] The server searches the recipe database for matching recipes based on the stored ingredient data. The server uses an SQL query to retrieve recipes that contain the stored ingredients from the database.

[0611] Step 5:

[0612] The server generates search results (recipe list) and sends them to the device. The server returns the corresponding recipe list to the device as a JSON response.

[0613] Step 6:

[0614] The device displays the received recipe list to the user. The device parses the received JSON data and displays it in the user interface. The user can select from the displayed recipe list.

[0615] Step 7:

[0616] The user enters information about allergies and dietary restrictions. The user enters the allergy information (e.g., "dairy allergy") into the input form on the device and clicks the "Submit" button.

[0617] Step 8:

[0618] The device receives the entered allergy information and sends it to the server. The device then sends the allergy information to the server as an HTTP request.

[0619] Step 9:

[0620] Based on the allergy information received, the server searches the recipe database for suitable alternative recipes. The server executes an SQL query to find recipes that match the allergy.

[0621] Step 10:

[0622] The server generates a list of alternative recipes and sends it to the device. The server returns the relevant alternative recipe list to the device in JSON format.

[0623] Step 11:

[0624] The device displays the received list of alternative recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipes.

[0625] Step 12:

[0626] The user enters information about their health condition and nutritional intake. The user enters health information (e.g., "Vitamin D deficiency") into the input form on the device and clicks the "Submit" button.

[0627] Step 13:

[0628] The device receives the entered health information and sends it to the server. The device then sends the health information to the server as an HTTP request.

[0629] Step 14:

[0630] The server analyzes the received health information and evaluates and adjusts nutritional balance. The server evaluates nutritional balance and identifies nutrients that are lacking.

[0631] Step 15:

[0632] The server searches the recipe database for recipes that provide the necessary nutrients and generates a recipe list. The server executes an SQL query to find the relevant recipes.

[0633] Step 16:

[0634] The server sends the generated recipe list to the device, and the server returns the recipe list to the device in JSON format.

[0635] Step 17:

[0636] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0637] Step 18:

[0638] The user inputs the desired cooking time (e.g., "within 30 minutes") into the input form on the device and clicks the "Submit" button.

[0639] Step 19:

[0640] The terminal receives the input cooking time information and sends it to the server. The terminal then sends the desired cooking time to the server as an HTTP request.

[0641] Step 20:

[0642] Based on the cooking time information received by the server, the server searches the recipe database for recipes that can be cooked within the specified time. The server executes an SQL query to search for recipes that fit the cooking time.

[0643] Step 21:

[0644] The server generates the appropriate recipe list and sends it to the device. The server returns the appropriate recipe list in JSON format to the device.

[0645] Step 22:

[0646] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0647] Example 1

[0648] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0649] Today's consumers lead busy lives and often lack the time to plan meals at home. Under these circumstances, there is a need for a system that can efficiently suggest recipes that make effective use of ingredients available at home and take into account allergies and nutritional balance. It is also necessary to provide recipes that can accommodate individual health conditions and dietary restrictions, and it is essential to suggest recipes that fit specific cooking times.

[0650] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[0651] In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching the database for recipes based on the stored ingredient data, a recipe presentation means for sending relevant recipes to a user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information input by the user, an alternative recipe suggestion means for searching for and presenting recipes that match the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, and a cooking time-compatible recipe suggestion means for receiving desired cooking time information input by the user, searching for and presenting recipes that can be cooked within the corresponding cooking time. This allows users to easily obtain optimal recipes based on their health status and lifestyle without wasting ingredients at home, enabling them to achieve nutritionally balanced meals.

[0652] The "database management means" is a device or software that provides the function of receiving and storing input ingredient data.

[0653] The "recipe search means" is a device or software that provides a function for searching a database for recipes based on the stored ingredient data.

[0654] The "recipe presentation means" is a device or software that provides the function of transmitting the corresponding recipe to the user terminal and displaying it.

[0655] "Health information management means" refers to a device or software that provides the function of receiving and storing allergy information and nutritional status information entered by a user.

[0656] The "alternative recipe suggesting means" is a device or software that provides a function for searching for and presenting recipes that are suitable for allergies and nutritional status based on the health information.

[0657] The "nutritional management means" is a device or software that provides a function for analyzing the stored health information and evaluating and adjusting nutritional balance.

[0658] The "cooking time compatible recipe suggesting means" is a device or software that provides the function of receiving desired cooking time information input by the user, searching for recipes that can be cooked within the corresponding cooking time, and presenting them.

[0659] This invention is a system that efficiently suggests recipes that take into consideration allergies, nutritional balance, and cooking time based on ingredients available at home entered by the user. This system consists of three main components: a "user terminal," a "server," and a "database." The program for this system is implemented using the following hardware and software.

[0660] First, the user uses the user terminal to input ingredients available at home. An input form is installed on the user terminal, and the user inputs ingredients such as "chicken," "potatoes," and "carrots," and clicks the "send button." The user terminal receives the input ingredient data and sends it to the server. The server receives this data and stores it in a database.

[0661] Next, the server searches for matching recipes in the recipe database based on the stored ingredient data. The server generates search results and sends them to the user's terminal. The user terminal displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the dish.

[0662] Additionally, the user may enter information about allergies or dietary restrictions. For example, the user may enter "dairy allergy." The user terminal receives this allergy information and sends it to the server. The server searches for appropriate alternative recipes based on the allergy information and sends the results to the user terminal. The user terminal then displays a list of alternative recipes to the user.

[0663] Nutritional balance can also be evaluated and adjusted. The user inputs information about their health condition and nutritional intake. For example, they input "vitamin D deficiency." The user's device sends this information to the server. The server analyzes the information, evaluates the nutritional balance, and based on that, searches for recipes with the necessary adjustments and sends them to the device. The user's device then displays a list of these recipes.

[0664] Finally, the user can input the desired cooking time. For example, they can input "a dish that can be cooked in 30 minutes or less." The device sends this information to the server. The server searches for recipes that can be cooked within that time and sends them to the device. The device then displays the recipe list.

[0665] Example prompt sentences:

[0666] "I would like to develop a system that, when I input ingredients available at home, suggests recipes based on those ingredients and provides alternative recipes that take allergies and nutritional balance into consideration. Please explain the specific program processing steps and the technology used."

[0667] This system allows users to easily obtain and execute recipes that are optimal for their individual health condition and lifestyle while making effective use of ingredients available at home.The system provides nutritionally balanced meals, reducing food waste and supporting healthy eating habits.

[0668] The flow of the identification process in the first embodiment will be described with reference to FIG.

[0669] Step 1:

[0670] Entering and saving ingredients

[0671] The user enters the ingredients they have at home into an input form on the user terminal.

[0672] Input: Ingredient names such as "chicken," "potatoes," and "carrots."

[0673] Specific behavior: The user enters the name of an ingredient in the input form and clicks the "Submit" button.

[0674] The device receives the input food ingredient data, converts it into JSON format, and sends it to the server.

[0675] Output: The ingredients data is sent to the server in JSON format.

[0676] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[0677] The server stores the received ingredient data in a database.

[0678] Input: JSON formatted ingredient data sent from the device.

[0679] Output: Ingredient data stored in a database.

[0680] What happens: The server parses the data and stores it in the appropriate database fields.

[0681] Step 2:

[0682] Recipe retrieval and suggestions

[0683] The server searches a recipe database for matching recipes based on the stored ingredient data.

[0684] Input: Ingredient data stored in the database.

[0685] Output: A list of recipes that match the ingredients.

[0686] What happens: The server performs a database search using an SQL query to retrieve matching recipes.

[0687] The server generates search results and sends them to the terminal in JSON format.

[0688] Input: A list of matching recipes.

[0689] Output: JSON data of the recipe list.

[0690] Specific operation: The server converts the search results into a JSON format list and sends it to the device.

[0691] The terminal displays the received recipe list to the user.

[0692] Input: JSON data of the recipe list sent from the server.

[0693] Output: The recipe list that is displayed to the user.

[0694] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[0695] Step 3:

[0696] Input allergy and dietary restrictions information and suggest alternative recipes

[0697] A user fills out a form with information about allergies or dietary restrictions. For example, "dairy allergy."

[0698] Input: Allergy information, such as "dairy allergy."

[0699] Specific behavior: The user enters allergy information into the input form and clicks the "Submit" button.

[0700] The terminal receives the entered allergy information, converts it into JSON format, and sends it to the server.

[0701] Output: Allergy information is sent to the server in JSON format.

[0702] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[0703] The server searches for alternative recipes based on allergy information and sends them to the terminal.

[0704] Input: Allergy information sent from the device in JSON format.

[0705] Output: A list of allergy-friendly alternative recipes.

[0706] Specific operation: The server performs a database search based on the allergy information and extracts alternative recipes.

[0707] The terminal displays the list of alternative recipes to the user.

[0708] Input: JSON data of the recipe alternative list sent from the server.

[0709] Output: The list of recipe alternatives displayed to the user.

[0710] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[0711] Step 4:

[0712] Nutritional balance assessment and adjustment

[0713] The user enters information about their health and nutritional status. For example, "Vitamin D deficiency."

[0714] Input: Health information, such as "Vitamin D deficiency."

[0715] Specific behavior: The user enters health information into the input form and clicks the "Submit" button.

[0716] The device receives the entered health information, converts it into JSON format, and sends it to the server.

[0717] Output: Health information is sent to the server in JSON format.

[0718] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[0719] The server analyzes health information, evaluates nutritional balance, and then searches for recipes with necessary adjustments based on that information and sends them to the device.

[0720] Input: Health information sent from the device in JSON format.

[0721] Output: A list of nutritionally balanced recipes.

[0722] Specific operation: The server performs a database search based on health information and extracts recipes that take nutritional balance into consideration.

[0723] The terminal displays the recipe list to the user.

[0724] Input: JSON data of a list of nutritionally balanced recipes sent from the server.

[0725] Output: The recipe list that is displayed to the user.

[0726] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[0727] Step 5:

[0728] Proposal of easy and quick recipes

[0729] The user enters the time they want to cook. For example, "within 30 minutes."

[0730] Input: Cooking time information, such as "30 minutes or less".

[0731] Specific behavior: The user enters a cooking time into the input form and clicks the "Submit" button.

[0732] The device receives the entered time information, converts it into JSON format, and sends it to the server.

[0733] Output: Cooking time information is sent to the server in JSON format.

[0734] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[0735] The server searches for recipes that can be cooked within that time and sends them to the terminal.

[0736] Input: Cooking time information sent from the device in JSON format.

[0737] Output: A list of recipes that can be cooked within the specified time.

[0738] Specific operation: The server performs a database search based on the cooking time information and extracts recipes that can be made within the specified time.

[0739] The terminal displays the recipe list to the user.

[0740] Input: JSON data of recipe list with cooking time sent from the server.

[0741] Output: The recipe list that is displayed to the user.

[0742] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[0743] (Application example 1)

[0744] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0745] Conventional home recipe suggestion systems are limited to proposing recipes based on ingredients and health information, but lack the functionality to assist users in purchasing ingredients they are running low on or in procuring ingredients in a timely manner. Furthermore, when users try to efficiently purchase ingredients according to the suggested recipes, they are required to take multiple steps, which is inconvenient. There is a need for a system that solves these issues and provides healthy recipes that utilize ingredients available at home in an efficient and hassle-free manner.

[0746] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[0747] In this invention, the server includes a storage management means for receiving and storing input ingredient data, a recipe search means for searching for recipes from information sources based on the stored ingredient data, a recipe presentation means for transmitting relevant recipes to a user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information input by the user, an alternative recipe suggestion means for searching for and presenting recipes that are suitable for the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-compatible recipe suggestion means for receiving desired cooking time information input by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, and an electronic payment means for purchasing ingredients that are missing from the proposed recipe. This allows the user to use ingredients efficiently, receive suggestions for optimal recipes that take health information and cooking time into consideration, and easily purchase missing ingredients through electronic payment.

[0748] The "storage management means" is a device or part of software for receiving and storing input ingredient data.

[0749] A "recipe lookup means" is a device or piece of software that searches for suitable recipes from information sources based on stored ingredient data.

[0750] The "recipe presentation means" is a device or piece of software that transmits the relevant recipe to the user terminal and displays it.

[0751] The "health information management means" is a device or piece of software that receives and stores allergy information and nutritional status information entered by a user.

[0752] The "alternative recipe suggestion means" is a device or piece of software that searches for and presents recipes that are suitable for allergies and nutritional conditions based on health information.

[0753] A "nutritional management tool" is a device or piece of software that analyzes stored health information and evaluates and adjusts nutritional balance.

[0754] The "cooking time compatible recipe suggesting means" is a device or part of software that receives desired cooking time information input by the user, searches for recipes that can be cooked within the corresponding cooking time, and presents them.

[0755] An "electronic payment instrument" is a device or piece of software for making electronic payments to purchase missing ingredients for a suggested recipe.

[0756] The system of this invention mainly consists of three main components: a user terminal, a server, and a database. It also incorporates an electronic payment function.

[0757] Program processing (explained in natural language)

[0758] 1. Enter and save ingredients

[0759] The user enters the ingredients they have at home into an input form on their device and presses the send button. The device receives the entered ingredient data and sends it to the server. The server stores the received ingredient data in a database, which can then be used as a source of information for searching for recipes later.

[0760] Example: A user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[0761] 2. Recipe acquisition and suggestions

[0762] The server searches the recipe database for matching recipes based on the stored ingredient data. The server then sends the resulting recipe list to the user's device, which then displays it to the user. The recipe also includes cooking instructions, allowing the user to follow the detailed instructions to cook the food.

[0763] Example: The server searches for recipes such as "boiled chicken" and "chicken curry," and the device displays them to the user.

[0764] 3. Input allergy and dietary restriction information and suggest alternative recipes

[0765] The user enters information about allergies and dietary restrictions into the user terminal. The terminal receives the entered allergy information and sends it to the server. The server uses that information to search for appropriate alternative recipes and sends them to the terminal. The terminal then displays a list of alternative recipes to the user.

[0766] Example: A user enters "dairy allergy" and the server suggests alternative recipes such as "dairy-free chicken curry."

[0767] 4. Nutritional balance assessment and adjustment

[0768] The user inputs information about their health condition and nutritional intake into the user terminal. The terminal receives the input health information and sends it to the server. The server evaluates the nutritional balance based on the information, searches for recipes with necessary adjustments based on that evaluation, and sends them to the terminal. The terminal then displays a list of those recipes.

[0769] Example: A user inputs "Vitamin D deficiency" and the server suggests recipes that are high in Vitamin D.

[0770] 5. Proposal of easy and quick recipes

[0771] The user inputs the desired cooking time into the user terminal. The terminal receives the input time information and sends it to the server. The server searches for recipes that can be cooked within that time and sends them to the terminal. The terminal then displays a list of those recipes.

[0772] Example: A user requests a meal that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[0773] 6. Purchasing food ingredients with electronic payment

[0774] Based on the proposed recipe, the user can purchase any missing ingredients from their terminal using an electronic payment system, allowing them to obtain the ingredients they need without any hassle.

[0775] Example: A user uses an electronic payment system to purchase the missing ingredient "soy sauce" to make "boiled chicken" online.

[0776] Specific hardware and software names used

[0777] Smartphone (iOS / Android): Operate the user interface and enter food and health information.

[0778] Database (PostgreSQL, MongoDB): Stores ingredient information, recipe information, and allergy information.

[0779] Server (Django, Node.js): Receives and processes data, searches for recipes, and processes electronic payments.

[0780] Electronic payment API (Stripe, PayPal): Provides payment functionality for users to purchase ingredients they are running low on.

[0781] Prompt Sentence Examples

[0782] "Please tell me a recipe that is high in vitamin D using ingredients that you have at home. The ingredients that can be used are chicken, potatoes, and carrots. You also have the option to purchase any ingredients that you are missing with a credit card."

[0783] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[0784] Step 1:

[0785] The user enters the ingredients they have at home into an input form on their device and presses the submit button. A list of ingredients (e.g., chicken, potatoes, carrots) is provided as input. The device receives this ingredient data and sends it to the server. The server stores the entered ingredient data in a database. This allows it to be used as a source of information for future recipe searches.

[0786] Step 2:

[0787] The server searches the recipe database for matching recipes based on the stored ingredient data. The stored ingredient data is used as input. The server sends the search result, a recipe list (e.g., simmered chicken, chicken curry), to the user's terminal. The terminal receives it and displays it to the user. As output, the recipe list is presented to the user.

[0788] Step 3:

[0789] The user inputs health information such as allergy information and dietary restrictions into the user terminal. Allergy information and nutritional status information (e.g., dairy allergy) are provided as input. The terminal receives the input information and sends it to the server. The server uses that information to search for appropriate alternative recipes in a recipe database. The server sends a list of alternative recipes to the user terminal, which displays it to the user. As output, the list of alternative recipes is presented to the user.

[0790] Step 4:

[0791] The user inputs information about their health condition and nutritional intake into the user terminal. Data about health and nutritional intake (e.g., vitamin D deficiency) is provided as input. The terminal receives the input information and sends it to the server. The server uses the information to evaluate nutritional balance and search for recipes with necessary adjustments. The server sends the search results to the user terminal, which displays them to the user. As output, the user is presented with a list of recipes with adjusted nutritional balance.

[0792] Step 5:

[0793] The user inputs the time they wish to spend cooking into the user terminal. As input, the desired cooking time (e.g., within 30 minutes) is provided. The terminal receives the input time information and sends it to the server. The server searches the recipe database for recipes that can be cooked within that time. The server sends the results to the user terminal, which displays them to the user. As output, the user is presented with a list of recipes that can be cooked within the specified time.

[0794] Step 6:

[0795] Based on the proposed recipe, the user purchases missing ingredients using an electronic payment system. As input, a list of missing ingredients is provided. The user terminal receives this information and sends payment information through the electronic payment API. The server processes the payment and sends a purchase confirmation to the user terminal. As output, the purchase of missing ingredients is completed and a purchase confirmation is presented to the user.

[0796] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[0797] The present invention relates to a system that suggests optimal recipes based on ingredients available at home, the user's health information, cooking time, and even the user's emotions. This system is equipped with a database management means and recipe search means based on the user's ingredients and health information, as well as an emotion engine that recognizes the user's emotions and suggests recipes accordingly. Below, the program processing of the system of the present invention is explained in natural language, and specific examples are included to illustrate the embodiments of the invention.

[0798] System Configuration

[0799] This system mainly consists of four main components: "user terminal," "server," "database," and "emotion engine."

[0800] Program processing (explained in natural language)

[0801] 1. Enter and save ingredients

[0802] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[0803] The terminal receives the input ingredient data and transmits it to the server.

[0804] The server stores the received ingredient data in a database, which is used to search for recipes later.

[0805] Examples:

[0806] The user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[0807] 2. Recipe acquisition and suggestions

[0808] The server searches the recipe database for matching recipes based on the stored ingredient data.

[0809] The server generates search results (recipe list) and sends them to the terminal.

[0810] The device displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the food.

[0811] Examples:

[0812] The server searches for recipes such as "chicken stew" and "chicken curry" and sends them to the device, which then displays them to the user.

[0813] 3. Input allergy and dietary restriction information and suggest alternative recipes

[0814] The user enters information about allergies or dietary restrictions (e.g., dairy allergy).

[0815] The terminal receives the entered allergy information and sends it to the server.

[0816] Based on this information, the server searches for suitable alternative recipes and sends them to the terminal.

[0817] The terminal displays the list of alternative recipes to the user.

[0818] Examples:

[0819] The user inputs "dairy allergy," and the server then suggests alternative recipes, such as "dairy-free chicken curry."

[0820] 4. Nutritional balance assessment and adjustment

[0821] The user enters information about their health and nutritional status (e.g., vitamin D deficiency).

[0822] The terminal receives the input health information and transmits it to the server.

[0823] The server analyzes the information, evaluates the nutritional balance, searches for recipes with the necessary adjustments based on that information, and sends the recipes to the device.

[0824] The device will display the recipe list.

[0825] Examples:

[0826] The user inputs "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[0827] 5. Proposal of easy and quick recipes

[0828] The user inputs the time they want to spend cooking (e.g., within 30 minutes).

[0829] The terminal receives the input time information and transmits it to the server.

[0830] The server searches the recipe database for recipes that can be cooked within that time.

[0831] The server generates a corresponding recipe list and sends it to the terminal.

[0832] The device will display the recipe list.

[0833] Examples:

[0834] The user requests a dish that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[0835] 6. Use of Emotion Engines

[0836] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions and generate emotion data (e.g., "I'm stressed").

[0837] The server receives the emotion data and modifies or adjusts the recipe suggestions.

[0838] Examples:

[0839] If the emotion engine recognizes that the user is "tired," the server will prioritize suggesting "easy, energizing dishes."

[0840] 7. Accumulation and utilization of emotional data

[0841] The server accumulates the user's past emotional data and uses this when suggesting the next recipe.

[0842] The emotion engine analyzes past data and suggests optimal recipes based on the user's preferences and tendencies.

[0843] Examples:

[0844] The server stores "recipes that users have preferred in the past when they were feeling stressed" and suggests them the next time a similar emotion is detected.

[0845] Action Results

[0846] This system allows users to easily obtain and execute optimal recipes using ingredients available at home, tailored to their individual health status and lifestyle. Furthermore, by combining it with an emotion engine, the system can suggest recipes based on the user's emotional state, providing a more comfortable cooking experience. The system provides nutritionally balanced meals, reducing food waste and supporting a healthier diet.

[0847] The processing flow will be explained below.

[0848] Step 1:

[0849] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[0850] Step 2:

[0851] The terminal receives the input ingredient data and sends it to the server. The terminal then sends the input data to the server as an HTTP request.

[0852] Step 3:

[0853] The server stores the received ingredient data in the database. The server parses the request, executes the SQL query, and stores the ingredient data in the database.

[0854] Step 4:

[0855] The server searches the recipe database for matching recipes based on the stored ingredient data. The server uses an SQL query to retrieve recipes that contain the stored ingredients from the database.

[0856] Step 5:

[0857] The server generates search results (recipe list) and sends them to the device. The server returns the corresponding recipe list to the device as a JSON response.

[0858] Step 6:

[0859] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipe list.

[0860] Step 7:

[0861] The user enters information about allergies and dietary restrictions. The user enters the allergy information (e.g., "dairy allergy") into the input form on the device and clicks the "Submit" button.

[0862] Step 8:

[0863] The device receives the entered allergy information and sends it to the server. The device then sends the allergy information to the server as an HTTP request.

[0864] Step 9:

[0865] Based on the allergy information received, the server searches the recipe database for suitable alternative recipes. The server executes an SQL query to find recipes that match the allergy.

[0866] Step 10:

[0867] The server generates a list of alternative recipes and sends it to the device. The server returns the relevant alternative recipe list to the device in JSON format.

[0868] Step 11:

[0869] The device displays the received list of alternative recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipes.

[0870] Step 12:

[0871] The user enters information about their health condition and nutritional intake. The user enters health information (e.g., "Vitamin D deficiency") into the input form on the device and clicks the "Submit" button.

[0872] Step 13:

[0873] The device receives the entered health information and sends it to the server. The device then sends the health information to the server as an HTTP request.

[0874] Step 14:

[0875] The server analyzes the received health information and evaluates and adjusts nutritional balance. The server evaluates nutritional balance and identifies nutrients that are lacking.

[0876] Step 15:

[0877] The server searches the recipe database for recipes that provide the necessary nutrients and generates a recipe list. The server executes an SQL query to find the relevant recipes.

[0878] Step 16:

[0879] The server sends the generated recipe list to the device, and the server returns the recipe list to the device in JSON format.

[0880] Step 17:

[0881] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0882] Step 18:

[0883] The user inputs the desired cooking time (e.g., "within 30 minutes") into the input form on the device and clicks the "Submit" button.

[0884] Step 19:

[0885] The terminal receives the input cooking time information and sends it to the server. The terminal then sends the desired cooking time to the server as an HTTP request.

[0886] Step 20:

[0887] Based on the cooking time information received by the server, the server searches the recipe database for recipes that can be cooked within the specified time. The server executes an SQL query to search for recipes that fit the cooking time.

[0888] Step 21:

[0889] The server generates the appropriate recipe list and sends it to the device. The server returns the appropriate recipe list in JSON format to the device.

[0890] Step 22:

[0891] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0892] Step 23:

[0893] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions and generate emotion data (e.g., "I'm stressed").

[0894] Step 24:

[0895] The server receives the emotion data and changes or adjusts the recipe suggestions. The server then searches for optimal recipes for the user again based on the emotion data and generates an optimal recipe list.

[0896] Step 25:

[0897] The server sends the regenerated recipe list to the device, and the server returns an appropriate recipe list in JSON format according to the emotion.

[0898] Step 26:

[0899] The device displays the received list of regenerated recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[0900] Step 27:

[0901] The server accumulates the user's past emotional data and uses it when suggesting the next recipe. The server analyzes the past data and reflects it in the next suggestion.

[0902] Step 28:

[0903] The emotion engine analyzes past data and suggests optimal recipes based on the user's preferences and trends. Emotion-based recipe suggestions improve user satisfaction.

[0904] Example 2

[0905] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0906] In today's busy lifestyles, it is important to effectively utilize limited time and resources when preparing meals at home and provide nutritionally balanced meals. Furthermore, recipes must be proposed that take into account constraints such as the health status and allergies of each household and individual, and that are also suited to the user's mental state. However, no system yet exists that can comprehensively manage these diverse factors, and conventional recipe suggestion systems have difficulty addressing the user's health and emotional state. Therefore, the present invention provides a system that solves these problems.

[0907] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching for recipes from an information store based on the stored ingredient data, and a recipe presentation means for sending the corresponding recipe to a user terminal and displaying it. This includes a health information management means for receiving and storing health status information entered by the user, an alternative recipe suggestion means for searching for and presenting recipes that match allergies and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-based recipe suggestion means for receiving desired cooking time information entered by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, an emotion recognition engine means for analyzing the user's emotional state and suggesting recipes based on the analysis, and a means for accumulating past emotion data and utilizing it for future recipe suggestions. This allows users to obtain optimal recipes based on their health and emotional state while using ingredients available at home, and prepare nutritionally balanced meals.

[0908] "Ingredient data" refers to information including the type and quantity of food that a user enters into the system.

[0909] "Database management means" refers to the function of receiving, organizing, and efficiently storing and managing input data.

[0910] "Recipe search means" refers to a function that searches an information store or database for recipes that meet specific conditions based on stored data.

[0911] The "recipe presentation means" is a function that sends the searched recipe to the user's terminal and displays it so that the user can visually check it.

[0912] "Health Information" refers to allergies, nutritional status, and other health-related information entered by users.

[0913] "Health information management means" refers to the function for receiving, storing, and managing health status information entered by the user.

[0914] "Alternative recipe suggestion means" refers to a function that searches for and suggests recipes that suit the user's allergies and nutritional status based on the user's health information.

[0915] "Nutrition management tools" refers to functions for analyzing stored health information, evaluating nutritional balance, and making necessary adjustments.

[0916] The "cooking time compatible recipe suggestion means" is a function that receives desired cooking time information input by the user, searches for and suggests recipes that can be cooked within that time.

[0917] "Emotion recognition engine means" refers to a function for analyzing user input and voice data and recognizing the user's emotional state.

[0918] "Means for accumulating past emotional data" refers to a function that saves a user's past emotional information and uses it to suggest future recipes.

[0919] This invention relates to a system that proposes optimal recipes based on household ingredients, the user's health information, cooking time, and even the user's emotions. This system consists of four main components: a user terminal, a server, a database, and an emotion engine.

[0920] First, the user enters ingredients they have at home into an input form on their device. They enter ingredients such as "chicken," "potatoes," and "carrots," and then click the "Submit" button. The entered ingredient data is received by the device, converted to JavaScript Object Notation (JSON) format, and sent to the server. The server analyzes the received ingredient data and saves it in a database. The ingredient information is systematically stored in the database and later used as basic data for recipe searches.

[0921] Next, the server searches the recipe database for matching recipes based on the ingredient data stored in the database. It uses SQL queries to retrieve recipes that match the ingredients the user has. The server then formats the search results and sends them to the device in the form of a recipe list. The device then displays the received recipe list to the user, allowing the user to check detailed cooking instructions.

[0922] If the user enters information about allergies or dietary restrictions, that information is also received by the device, converted to JSON format, and sent to the server. The server analyzes the received health information and searches for alternative recipes that meet the allergies or dietary restrictions. The searched alternative recipes are then sent back to the device and displayed to the user.

[0923] Additionally, if a user inputs information about their health condition or nutritional intake (e.g., vitamin D deficiency), the server analyzes that information, evaluates the nutritional balance, and searches for recipes with the necessary adjustments. These recipes are also sent to the device and displayed to the user.

[0924] Furthermore, if the user inputs information about the cooking time (e.g., within 30 minutes), the server searches for recipes that can be cooked within that time. If a matching recipe is found, it is sent to the terminal and displayed for the user to check.

[0925] The system is equipped with an emotion engine that analyzes input and voice data to recognize the user's emotional state when searching for recipes. For example, if the emotion engine recognizes that the user is "tired," the server will prioritize suggestions for "easy, energizing dishes." Emotional data is accumulated, and the next time a recipe is suggested, it can be based on past emotion data.

[0926] Examples:

[0927] 1. The user enters "chicken," "potatoes," and "carrots" into the input form on the device and clicks the send button.

[0928] 2. The server receives it and stores it in the database.

[0929] 3. The server searches the database for recipes such as "chicken stew" and "chicken curry" and sends them to the terminal.

[0930] 4. The user enters "dairy allergy," and the server suggests alternative recipes, such as "dairy-free chicken curry."

[0931] 5. The user types in "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[0932] 6. The user requests a meal that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[0933] 7. The emotion engine recognizes that the user is "tired," and the server prioritizes suggesting "easy, energizing meals."

[0934] Example prompt sentence:

[0935] "Please suggest a simple recipe using 'chicken,' 'potatoes,' and 'carrots.'"

[0936] "Please suggest some chicken recipes that are suitable for people with dairy allergies."

[0937] "Please provide recipes that are high in vitamin D."

[0938] Please suggest a recipe that can be made in 30 minutes or less.

[0939] "What recipes would you recommend for when you're tired?"

[0940] "What recipes have you enjoyed in the past when you were stressed?"

[0941] This system allows users to easily obtain optimal recipes based on their detailed health and emotional state, providing nutritionally balanced meals. Furthermore, by utilizing the emotion engine, the system can further enhance the optimal recipe suggestions based on the user's emotional state.

[0942] The flow of the identification process in the second embodiment will be described with reference to FIG.

[0943] Step 1:

[0944] The user inputs ingredients they have at home into the input form on the device. Specifically, the user inputs ingredients such as "chicken," "potatoes," and "carrots" using the keyboard and clicks the "send button." The input data is sent to the device in text format.

[0945] Input: Ingredient information (e.g. chicken, potatoes, carrots)

[0946] Output: Text data sent to the terminal

[0947] Step 2:

[0948] The device receives the input food ingredient data, converts it into JSON format, and then sends the received data to the server.

[0949] Input: Textual ingredient information

[0950] Output: Ingredient data converted to JSON format

[0951] Step 3:

[0952] The server analyzes the received JSON data and extracts the ingredient information, which is then stored in a database.

[0953] Input: JSON formatted food ingredients data

[0954] Output: Ingredient information stored in the database

[0955] Step 4:

[0956] The server searches the recipe database for matching recipes based on the ingredient data stored in the database, generates an SQL query, and retrieves the appropriate recipes based on that.

[0957] Input: Ingredient information stored in the database

[0958] Output: Searched recipe data

[0959] Step 5:

[0960] The server formats the retrieved recipe data and generates a recipe list, which is formatted for display to the user.

[0961] Input: Searched recipe data

[0962] Output: A formatted list of recipes

[0963] Step 6:

[0964] The server sends the generated recipe list to the terminal, which receives it and displays it to the user, who can then check the detailed cooking instructions for each recipe.

[0965] Input: A formatted list of recipes

[0966] Output: Recipe list displayed on the user's device

[0967] Step 7:

[0968] The user enters information about allergies and dietary restrictions. The information is received by the device, converted into JSON format, and sent to the server.

[0969] Input: Allergy information (e.g. dairy allergy)

[0970] Output: Allergy information in JSON format

[0971] Step 8:

[0972] The server analyzes the received allergy information and searches a recipe database for suitable alternative recipes based on that information.

[0973] Input: Allergy information in JSON format

[0974] Output: Searched alternative recipe data

[0975] Step 9:

[0976] The server generates a list of alternative recipes, sends it to the terminal, and displays it to the user, who can then check recipes that match the allergy information.

[0977] Input: Searched alternative recipe data

[0978] Output: A list of alternative recipes displayed on the user's terminal

[0979] Step 10:

[0980] The user inputs information about their health condition and nutritional intake. The input information is received by the device, converted into JSON format, and sent to the server.

[0981] Input: Health information (e.g., Vitamin D deficiency)

[0982] Output: Health status information in JSON format

[0983] Step 11:

[0984] The server analyzes the received health information and evaluates the nutritional balance. Based on the analysis results, it searches the recipe database for recipes with necessary adjustments.

[0985] Input: Health status information in JSON format

[0986] Output: Adjusted recipe data

[0987] Step 12:

[0988] The server generates an adjusted recipe list and sends it to the terminal, which displays the received recipe list to the user.

[0989] Input: Adjusted recipe data

[0990] Output: Adjustment recipe list displayed on the user's device

[0991] Step 13:

[0992] The user inputs the desired cooking time. The input time information is received by the device, converted into JSON format, and sent to the server.

[0993] Input: Desired cooking time (e.g., within 30 minutes)

[0994] Output: Desired cooking time information in JSON format

[0995] Step 14:

[0996] The server analyzes the received time information and searches the recipe database for recipes that can be cooked within that time.

[0997] Input: Desired cooking time information in JSON format

[0998] Output: Searched time-enabled recipe data

[0999] Step 15:

[1000] The server generates a time-based recipe list and transmits it to the terminal, which then displays the received recipe list to the user.

[1001] Input: Searched time-enabled recipe data

[1002] Output: A time-aware recipe list displayed on the user's device

[1003] Step 16:

[1004] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions.

[1005] Input: User input and voice data

[1006] Output: Recognized emotion data

[1007] Step 17:

[1008] The server receives the emotion data and adjusts the recipe suggestions. Based on the emotion recognized by the emotion engine, it searches for suitable recipes from the recipe database.

[1009] Input: Recognized emotion data

[1010] Output: Adjusted emotion-aware recipe data

[1011] Step 18:

[1012] The server generates an adjusted recipe list and sends it to the terminal, which displays the received recipe list to the user.

[1013] Input: Adjusted emotion-aware recipe data

[1014] Output: A list of emotion-aware recipes displayed on the user's device

[1015] Step 19:

[1016] The server accumulates the user's past emotional data and uses it when suggesting the next recipe. The emotion engine analyzes the past emotional data and suggests the optimal recipe based on the user's preferences and tendencies.

[1017] Input: Historical emotion data

[1018] Output: Recipe suggestions based on accumulated emotional data

[1019] This allows users to easily obtain the optimal recipes tailored to their individual health condition, lifestyle, and even emotional state.

[1020] (Application example 2)

[1021] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[1022] While conventional recipe suggestion systems can collect information on ingredients and health, they are unable to make suggestions that take into account the user's emotional state, making it difficult to provide optimal recipes that are in line with the user's emotions. Furthermore, it is difficult to make suggestions in real time, making it difficult to improve the user's shopping experience.

[1023] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching for recipes based on the stored ingredient data, a recipe presentation means for sending corresponding recipes to the user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information entered by the user, an alternative recipe suggestion means for searching for and presenting recipes that match the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-based recipe suggestion means for receiving desired cooking time information entered by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, and an emotion engine for recognizing the user's emotional state and suggesting recipes based on the corresponding emotional state. This enables optimal recipe suggestions based on the user's emotional state, improving the shopping experience by suggesting recipes in real time.

[1024] The "database management means" is a means having the function of receiving and storing input ingredient data.

[1025] The "recipe search means" is a means for searching a database for recipes based on stored ingredient data.

[1026] The "recipe presentation means" is a means for transmitting the searched recipe to the user terminal and displaying it.

[1027] The "health information management means" is a means for receiving and storing allergy information and nutritional status information input by the user.

[1028] The "alternative recipe suggestion means" is a means for searching for and presenting recipes that suit allergies and nutritional conditions based on stored health information.

[1029] "Nutrition management tools" are tools for analyzing stored health information and evaluating and adjusting nutritional balance.

[1030] The "cooking time compatible recipe suggesting means" is a means for receiving desired cooking time information input by the user, searching for recipes that can be cooked within that cooking time, and presenting them.

[1031] The "emotion engine" is an engine that has the function of recognizing the user's emotional state and suggesting recipes based on that emotional state.

[1032] The system for implementing this invention mainly consists of four main components: a “user terminal,” a “server,” a “database,” and an “emotion engine.” The operation of each component and the entire system will be explained in detail below.

[1033] System Configuration and Operation

[1034] 1. User Device

[1035] The user terminal is assumed to be a wearable device such as smart glasses. The user terminal has an interface that allows the user to input information about ingredients, health information, desired cooking time, allergy information, etc. The user terminal is also equipped with a camera that captures the user's face and sends the data to the emotion engine.

[1036] 2. Database Management Methods

[1037] The database management means is located within the server. It receives ingredient data entered by the user from the terminal and stores it in the database. The user's health information and allergy information are also stored in the same way.

[1038] 3. Recipe search methods

[1039] The recipe search means is executed by the server. It searches the database for a corresponding recipe based on the stored ingredient data and health information. The searched recipe is sent from the server to the user terminal and displayed.

[1040] 4. Emotion Engine

[1041] The emotion engine analyzes facial images sent from the user's device and recognizes the user's emotions. The emotion engine uses an external emotion recognition API (for example, in conjunction with the OpenCV library). Emotion data is sent to the server and used to adjust recipe suggestions.

[1042] 5. Health information management and alternative recipe suggestion methods

[1043] The health information management means has the function of receiving and storing allergy information and nutritional status information entered by the user. The alternative recipe suggestion means searches for and presents recipes that are suitable for the allergies and nutritional status based on the stored health information.

[1044] 6. Nutritional Management Measures

[1045] The nutrition management tool analyzes the stored health information and evaluates and adjusts the nutritional balance, thereby suggesting ingredients and recipes that will supplement the user's nutrient deficiencies.

[1046] Specific examples

[1047] Suppose a user types, "I have some chicken and spinach in the fridge. I'd like a recipe that will cheer me up and that I can make in under 30 minutes today." In this case, the system will suggest the best recipe by following these steps:

[1048] 1. The user's device sends information about the ingredients (chicken and spinach), cooking time (within 30 minutes), health information, allergy information, and the user's emotional data (e.g., "stress") to the server.

[1049] 2. The server searches the database for suitable recipes based on the stored data. It uses an emotion engine to analyze the user's emotional state and prioritizes recipes that will cheer you up.

[1050] 3. The server sends the search results to the user's device, and recipes such as "Chicken and Spinach Stir-fry (cooking time: 20 minutes)" and "High-Protein Smoothie (cooking time: 5 minutes)" are displayed on the smart glasses' display.

[1051] Prompt Sentence Examples

[1052] "I have some chicken and spinach in the fridge. I'd like an energizing recipe that I can make in under 30 minutes today."

[1053] In this way, using this system makes it possible to suggest optimal recipes based on the user's emotional state, improving the shopping experience through effective recipe suggestions in real time.

[1054] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[1055] Step 1:

[1056] The user terminal receives the ingredient information, desired cooking time, allergy information, nutritional status information, and facial image input by the user. This input data includes ingredients such as "chicken" and "spinach" and the desired cooking time of "within 30 minutes." The user's facial image is also captured by a camera.

[1057] Step 2:

[1058] The device sends the received data to the server. The data includes ingredient information, cooking time, allergy information, nutritional status information, and facial images. The device sends the data to the server using an HTTP request.

[1059] Step 3:

[1060] The server processes the received data. First, it sends the facial image to the emotion recognition API to analyze the user's emotional state. The emotion recognition API receives image data as input and outputs emotional data. In this example, the emotional state is recognized as "stress."

[1061] Step 4:

[1062] The server uses a database management means to store the ingredient information, cooking time, allergy information, and nutritional status information in a database. The database management means stores the data using SQL queries and outputs status information indicating whether the data storage was successful.

[1063] Step 5:

[1064] The server uses the recipe search means to search for recipes based on the saved data. It searches for recipes in the database using the search criteria: ingredient information "chicken" and "spinach," cooking time "within 30 minutes," allergy information, nutritional status, and emotional state "stress." It outputs a list of matching recipes as the search result.

[1065] Step 6:

[1066] The server considers the results of the emotion engine and prioritizes selecting invigorating recipes that correspond to the emotional state "stress." This selection process extracts recipes that contain ingredients that relax the user and avoid complicated cooking steps.

[1067] Step 7:

[1068] The server uses the recipe presentation means to send the selected recipe list to the user terminal. The recipe list sent includes recipes such as "Chicken and Spinach Stir-fry (Cooking time: 20 minutes)" and "High Protein Smoothie (Cooking time: 5 minutes)." The list is sent to the user terminal as an HTTP response.

[1069] Step 8:

[1070] The user device displays the received recipe list, and the smart glasses display shows the suggested recipe name and cooking time. The user can start cooking based on the optimal recipe information presented in real time.

[1071] Through this series of processes, it is possible to provide optimal recipes in real time that take into account the user's emotional state and health information.

[1072] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[1073] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1074] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.

[1075] [Third embodiment]

[1076] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.

[1077] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.

[1078] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[1079] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.

[1080] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[1081] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[1082] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[1083] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[1084] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[1085] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[1086] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[1087] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."

[1088] The present invention relates to a system that efficiently proposes recipes using available household ingredients and provides meal plans that take into account nutritional balance, allergies, and cooking time. Below, the program processing of the system of the present invention is explained in natural language, and a form for carrying out the invention is shown with specific examples.

[1089] System Configuration

[1090] This system mainly consists of three main components: a "user terminal," a "server," and a "database."

[1091] Program processing (explained in natural language)

[1092] 1. Enter and save ingredients

[1093] The user inputs ingredients they have at home into the system, such as "chicken," "potatoes," and "carrots," into the input form on their device and clicks the "send button."

[1094] The terminal receives the input ingredient data and transmits it to the server.

[1095] The server stores the received ingredient data in a database, which is used to search for recipes later.

[1096] Examples:

[1097] The user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[1098] 2. Recipe acquisition and suggestions

[1099] The server searches the recipe database for matching recipes based on the stored ingredient data.

[1100] The server generates search results (recipe list) and sends them to the terminal.

[1101] The device displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the food.

[1102] Examples:

[1103] The server searches for recipes such as "chicken stew" and "chicken curry" and sends them to the device, which then displays them to the user.

[1104] 3. Input allergy and dietary restriction information and suggest alternative recipes

[1105] The user enters information about allergies or dietary restrictions (e.g., dairy allergy).

[1106] The terminal receives the entered allergy information and sends it to the server.

[1107] Based on this information, the server searches for suitable alternative recipes and sends them to the terminal.

[1108] The terminal displays the list of alternative recipes to the user.

[1109] Examples:

[1110] The user inputs "dairy allergy," and the server then suggests alternative recipes, such as "dairy-free chicken curry."

[1111] 4. Nutritional balance assessment and adjustment

[1112] The user enters information about their health and nutritional status (e.g., vitamin D deficiency).

[1113] The terminal receives the input health information and transmits it to the server.

[1114] The server analyzes the information, evaluates the nutritional balance, searches for recipes with the necessary adjustments based on that information, and sends the recipes to the device.

[1115] The device will display the recipe list.

[1116] Examples:

[1117] The user inputs "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[1118] 5. Proposal of easy and quick recipes

[1119] The user inputs the time they want to spend cooking (e.g., within 30 minutes).

[1120] The terminal receives the input time information and transmits it to the server.

[1121] The server searches for recipes that can be cooked within that time and sends them to the terminal.

[1122] The device will display the recipe list.

[1123] Examples:

[1124] The user requests a dish that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[1125] Action Results

[1126] This system allows users to easily obtain and execute recipes that are optimal for their individual health conditions and lifestyles using ingredients available at home. The system provides nutritionally balanced meals, reducing food waste and supporting the realization of a healthy diet.

[1127] The processing flow will be explained below.

[1128] Step 1:

[1129] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[1130] Step 2:

[1131] The terminal receives the input ingredient data and sends it to the server. The terminal then sends the ingredient data to the server as an HTTP request.

[1132] Step 3:

[1133] The server stores the received ingredient data in a database. Specifically, the server analyzes the request, executes an SQL query, and stores the ingredient data in the database.

[1134] Step 4:

[1135] The server searches the recipe database for matching recipes based on the stored ingredient data. The server uses an SQL query to retrieve recipes that contain the stored ingredients from the database.

[1136] Step 5:

[1137] The server generates search results (recipe list) and sends them to the device. The server returns the corresponding recipe list to the device as a JSON response.

[1138] Step 6:

[1139] The device displays the received recipe list to the user. The device parses the received JSON data and displays it in the user interface. The user can select from the displayed recipe list.

[1140] Step 7:

[1141] The user enters information about allergies and dietary restrictions. The user enters the allergy information (e.g., "dairy allergy") into the input form on the device and clicks the "Submit" button.

[1142] Step 8:

[1143] The device receives the entered allergy information and sends it to the server. The device then sends the allergy information to the server as an HTTP request.

[1144] Step 9:

[1145] Based on the allergy information received, the server searches the recipe database for suitable alternative recipes. The server executes an SQL query to find recipes that match the allergy.

[1146] Step 10:

[1147] The server generates a list of alternative recipes and sends it to the device. The server returns the relevant alternative recipe list to the device in JSON format.

[1148] Step 11:

[1149] The device displays the received list of alternative recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipes.

[1150] Step 12:

[1151] The user enters information about their health condition and nutritional intake. The user enters health information (e.g., "Vitamin D deficiency") into the input form on the device and clicks the "Submit" button.

[1152] Step 13:

[1153] The device receives the entered health information and sends it to the server. The device then sends the health information to the server as an HTTP request.

[1154] Step 14:

[1155] The server analyzes the received health information and evaluates and adjusts nutritional balance. The server evaluates nutritional balance and identifies nutrients that are lacking.

[1156] Step 15:

[1157] The server searches the recipe database for recipes that provide the necessary nutrients and generates a recipe list. The server executes an SQL query to find the relevant recipes.

[1158] Step 16:

[1159] The server sends the generated recipe list to the device, and the server returns the recipe list to the device in JSON format.

[1160] Step 17:

[1161] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1162] Step 18:

[1163] The user inputs the desired cooking time (e.g., "within 30 minutes") into the input form on the device and clicks the "Submit" button.

[1164] Step 19:

[1165] The terminal receives the input cooking time information and sends it to the server. The terminal then sends the desired cooking time to the server as an HTTP request.

[1166] Step 20:

[1167] Based on the cooking time information received by the server, the server searches the recipe database for recipes that can be cooked within the specified time. The server executes an SQL query to search for recipes that fit the cooking time.

[1168] Step 21:

[1169] The server generates the appropriate recipe list and sends it to the device. The server returns the appropriate recipe list in JSON format to the device.

[1170] Step 22:

[1171] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1172] Example 1

[1173] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1174] Today's consumers lead busy lives and often lack the time to plan meals at home. Under these circumstances, there is a need for a system that can efficiently suggest recipes that make effective use of ingredients available at home and take into account allergies and nutritional balance. It is also necessary to provide recipes that can accommodate individual health conditions and dietary restrictions, and it is essential to suggest recipes that fit specific cooking times.

[1175] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[1176] In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching the database for recipes based on the stored ingredient data, a recipe presentation means for sending relevant recipes to a user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information input by the user, an alternative recipe suggestion means for searching for and presenting recipes that match the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, and a cooking time-compatible recipe suggestion means for receiving desired cooking time information input by the user, searching for and presenting recipes that can be cooked within the corresponding cooking time. This allows users to easily obtain optimal recipes based on their health status and lifestyle without wasting ingredients at home, enabling them to achieve nutritionally balanced meals.

[1177] The "database management means" is a device or software that provides the function of receiving and storing input ingredient data.

[1178] The "recipe search means" is a device or software that provides a function for searching a database for recipes based on the stored ingredient data.

[1179] The "recipe presentation means" is a device or software that provides the function of transmitting the corresponding recipe to the user terminal and displaying it.

[1180] "Health information management means" refers to a device or software that provides the function of receiving and storing allergy information and nutritional status information entered by a user.

[1181] The "alternative recipe suggesting means" is a device or software that provides a function for searching for and presenting recipes that are suitable for allergies and nutritional status based on the health information.

[1182] The "nutritional management means" is a device or software that provides a function for analyzing the stored health information and evaluating and adjusting nutritional balance.

[1183] The "cooking time compatible recipe suggesting means" is a device or software that provides the function of receiving desired cooking time information input by the user, searching for recipes that can be cooked within the corresponding cooking time, and presenting them.

[1184] This invention is a system that efficiently suggests recipes that take into consideration allergies, nutritional balance, and cooking time based on ingredients available at home entered by the user. This system consists of three main components: a "user terminal," a "server," and a "database." The program for this system is implemented using the following hardware and software.

[1185] First, the user uses the user terminal to input ingredients available at home. An input form is installed on the user terminal, and the user inputs ingredients such as "chicken," "potatoes," and "carrots," and clicks the "send button." The user terminal receives the input ingredient data and sends it to the server. The server receives this data and stores it in a database.

[1186] Next, the server searches for matching recipes in the recipe database based on the stored ingredient data. The server generates search results and sends them to the user's terminal. The user terminal displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the dish.

[1187] Additionally, the user may enter information about allergies or dietary restrictions. For example, the user may enter "dairy allergy." The user terminal receives this allergy information and sends it to the server. The server searches for appropriate alternative recipes based on the allergy information and sends the results to the user terminal. The user terminal then displays a list of alternative recipes to the user.

[1188] Nutritional balance can also be evaluated and adjusted. The user inputs information about their health condition and nutritional intake. For example, they input "vitamin D deficiency." The user's device sends this information to the server. The server analyzes the information, evaluates the nutritional balance, and based on that, searches for recipes with the necessary adjustments and sends them to the device. The user's device then displays a list of these recipes.

[1189] Finally, the user can input the desired cooking time. For example, they can input "a dish that can be cooked in 30 minutes or less." The device sends this information to the server. The server searches for recipes that can be cooked within that time and sends them to the device. The device then displays the recipe list.

[1190] Example prompt sentences:

[1191] "I would like to develop a system that, when I input ingredients available at home, suggests recipes based on those ingredients and provides alternative recipes that take allergies and nutritional balance into consideration. Please explain the specific program processing steps and the technology used."

[1192] This system allows users to easily obtain and execute recipes that are optimal for their individual health condition and lifestyle while making effective use of ingredients available at home.The system provides nutritionally balanced meals, reducing food waste and supporting healthy eating habits.

[1193] The flow of the identification process in the first embodiment will be described with reference to FIG.

[1194] Step 1:

[1195] Entering and saving ingredients

[1196] The user enters the ingredients they have at home into an input form on the user terminal.

[1197] Input: Ingredient names such as "chicken," "potatoes," and "carrots."

[1198] Specific behavior: The user enters the name of an ingredient in the input form and clicks the "Submit" button.

[1199] The device receives the input food ingredient data, converts it into JSON format, and sends it to the server.

[1200] Output: The ingredients data is sent to the server in JSON format.

[1201] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[1202] The server stores the received ingredient data in a database.

[1203] Input: JSON formatted ingredient data sent from the device.

[1204] Output: Ingredient data stored in a database.

[1205] What happens: The server parses the data and stores it in the appropriate database fields.

[1206] Step 2:

[1207] Recipe retrieval and suggestions

[1208] The server searches a recipe database for matching recipes based on the stored ingredient data.

[1209] Input: Ingredient data stored in the database.

[1210] Output: A list of recipes that match the ingredients.

[1211] What happens: The server performs a database search using an SQL query to retrieve matching recipes.

[1212] The server generates search results and sends them to the terminal in JSON format.

[1213] Input: A list of matching recipes.

[1214] Output: JSON data of the recipe list.

[1215] Specific operation: The server converts the search results into a JSON format list and sends it to the device.

[1216] The terminal displays the received recipe list to the user.

[1217] Input: JSON data of the recipe list sent from the server.

[1218] Output: The recipe list that is displayed to the user.

[1219] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[1220] Step 3:

[1221] Input allergy and dietary restrictions information and suggest alternative recipes

[1222] A user fills out a form with information about allergies or dietary restrictions. For example, "dairy allergy."

[1223] Input: Allergy information, such as "dairy allergy."

[1224] Specific behavior: The user enters allergy information into the input form and clicks the "Submit" button.

[1225] The terminal receives the entered allergy information, converts it into JSON format, and sends it to the server.

[1226] Output: Allergy information is sent to the server in JSON format.

[1227] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[1228] The server searches for alternative recipes based on allergy information and sends them to the terminal.

[1229] Input: Allergy information sent from the device in JSON format.

[1230] Output: A list of allergy-friendly alternative recipes.

[1231] Specific operation: The server performs a database search based on the allergy information and extracts alternative recipes.

[1232] The terminal displays the list of alternative recipes to the user.

[1233] Input: JSON data of the recipe alternative list sent from the server.

[1234] Output: The list of recipe alternatives displayed to the user.

[1235] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[1236] Step 4:

[1237] Nutritional balance assessment and adjustment

[1238] The user enters information about their health and nutritional status. For example, "Vitamin D deficiency."

[1239] Input: Health information, such as "Vitamin D deficiency."

[1240] Specific behavior: The user enters health information into the input form and clicks the "Submit" button.

[1241] The device receives the entered health information, converts it into JSON format, and sends it to the server.

[1242] Output: Health information is sent to the server in JSON format.

[1243] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[1244] The server analyzes health information, evaluates nutritional balance, and then searches for recipes with necessary adjustments based on that information and sends them to the device.

[1245] Input: Health information sent from the device in JSON format.

[1246] Output: A list of nutritionally balanced recipes.

[1247] Specific operation: The server performs a database search based on health information and extracts recipes that take nutritional balance into consideration.

[1248] The terminal displays the recipe list to the user.

[1249] Input: JSON data of a list of nutritionally balanced recipes sent from the server.

[1250] Output: The recipe list that is displayed to the user.

[1251] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[1252] Step 5:

[1253] Proposal of easy and quick recipes

[1254] The user enters the time they want to cook. For example, "within 30 minutes."

[1255] Input: Cooking time information, such as "30 minutes or less".

[1256] Specific behavior: The user enters a cooking time into the input form and clicks the "Submit" button.

[1257] The device receives the entered time information, converts it into JSON format, and sends it to the server.

[1258] Output: Cooking time information is sent to the server in JSON format.

[1259] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[1260] The server searches for recipes that can be cooked within that time and sends them to the terminal.

[1261] Input: Cooking time information sent from the device in JSON format.

[1262] Output: A list of recipes that can be cooked within the specified time.

[1263] Specific operation: The server performs a database search based on the cooking time information and extracts recipes that can be made within the specified time.

[1264] The terminal displays the recipe list to the user.

[1265] Input: JSON data of recipe list with cooking time sent from the server.

[1266] Output: The recipe list that is displayed to the user.

[1267] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[1268] (Application example 1)

[1269] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1270] Conventional home recipe suggestion systems are limited to proposing recipes based on ingredients and health information, but lack the functionality to assist users in purchasing ingredients they are running low on or in procuring ingredients in a timely manner. Furthermore, when users try to efficiently purchase ingredients according to the suggested recipes, they are required to take multiple steps, which is inconvenient. There is a need for a system that solves these issues and provides healthy recipes that utilize ingredients available at home in an efficient and hassle-free manner.

[1271] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[1272] In this invention, the server includes a storage management means for receiving and storing input ingredient data, a recipe search means for searching for recipes from information sources based on the stored ingredient data, a recipe presentation means for transmitting relevant recipes to a user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information input by the user, an alternative recipe suggestion means for searching for and presenting recipes that are suitable for the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-compatible recipe suggestion means for receiving desired cooking time information input by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, and an electronic payment means for purchasing ingredients that are missing from the proposed recipe. This allows the user to use ingredients efficiently, receive suggestions for optimal recipes that take health information and cooking time into consideration, and easily purchase missing ingredients through electronic payment.

[1273] The "storage management means" is a device or part of software for receiving and storing input ingredient data.

[1274] A "recipe lookup means" is a device or piece of software that searches for suitable recipes from information sources based on stored ingredient data.

[1275] The "recipe presentation means" is a device or piece of software that transmits the relevant recipe to the user terminal and displays it.

[1276] The "health information management means" is a device or piece of software that receives and stores allergy information and nutritional status information entered by a user.

[1277] The "alternative recipe suggestion means" is a device or piece of software that searches for and presents recipes that are suitable for allergies and nutritional conditions based on health information.

[1278] A "nutritional management tool" is a device or piece of software that analyzes stored health information and evaluates and adjusts nutritional balance.

[1279] The "cooking time compatible recipe suggesting means" is a device or part of software that receives desired cooking time information input by the user, searches for recipes that can be cooked within the corresponding cooking time, and presents them.

[1280] An "electronic payment instrument" is a device or piece of software for making electronic payments to purchase missing ingredients for a suggested recipe.

[1281] The system of this invention mainly consists of three main components: a user terminal, a server, and a database. It also incorporates an electronic payment function.

[1282] Program processing (explained in natural language)

[1283] 1. Enter and save ingredients

[1284] The user enters the ingredients they have at home into an input form on their device and presses the send button. The device receives the entered ingredient data and sends it to the server. The server stores the received ingredient data in a database, which can then be used as a source of information for searching for recipes later.

[1285] Example: A user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[1286] 2. Recipe acquisition and suggestions

[1287] The server searches the recipe database for matching recipes based on the stored ingredient data. The server then sends the resulting recipe list to the user's device, which then displays it to the user. The recipe also includes cooking instructions, allowing the user to follow the detailed instructions to cook the food.

[1288] Example: The server searches for recipes such as "boiled chicken" and "chicken curry," and the device displays them to the user.

[1289] 3. Input allergy and dietary restriction information and suggest alternative recipes

[1290] The user enters information about allergies and dietary restrictions into the user terminal. The terminal receives the entered allergy information and sends it to the server. The server uses that information to search for appropriate alternative recipes and sends them to the terminal. The terminal then displays a list of alternative recipes to the user.

[1291] Example: A user enters "dairy allergy" and the server suggests alternative recipes such as "dairy-free chicken curry."

[1292] 4. Nutritional balance assessment and adjustment

[1293] The user inputs information about their health condition and nutritional intake into the user terminal. The terminal receives the input health information and sends it to the server. The server evaluates the nutritional balance based on the information, searches for recipes with necessary adjustments based on that evaluation, and sends them to the terminal. The terminal then displays a list of those recipes.

[1294] Example: A user inputs "Vitamin D deficiency" and the server suggests recipes that are high in Vitamin D.

[1295] 5. Proposal of easy and quick recipes

[1296] The user inputs the desired cooking time into the user terminal. The terminal receives the input time information and sends it to the server. The server searches for recipes that can be cooked within that time and sends them to the terminal. The terminal then displays a list of those recipes.

[1297] Example: A user requests a meal that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[1298] 6. Purchasing food ingredients with electronic payment

[1299] Based on the proposed recipe, the user can purchase any missing ingredients from their terminal using an electronic payment system, allowing them to obtain the ingredients they need without any hassle.

[1300] Example: A user uses an electronic payment system to purchase the missing ingredient "soy sauce" to make "boiled chicken" online.

[1301] Specific hardware and software names used

[1302] Smartphone (iOS / Android): Operate the user interface and enter food and health information.

[1303] Database (PostgreSQL, MongoDB): Stores ingredient information, recipe information, and allergy information.

[1304] Server (Django, Node.js): Receives and processes data, searches for recipes, and processes electronic payments.

[1305] Electronic payment API (Stripe, PayPal): Provides payment functionality for users to purchase ingredients they are running low on.

[1306] Prompt Sentence Examples

[1307] "Please tell me a recipe that is high in vitamin D using ingredients that you have at home. The ingredients that can be used are chicken, potatoes, and carrots. You also have the option to purchase any ingredients that you are missing with a credit card."

[1308] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[1309] Step 1:

[1310] The user enters the ingredients they have at home into an input form on their device and presses the submit button. A list of ingredients (e.g., chicken, potatoes, carrots) is provided as input. The device receives this ingredient data and sends it to the server. The server stores the entered ingredient data in a database. This allows it to be used as a source of information for future recipe searches.

[1311] Step 2:

[1312] The server searches the recipe database for matching recipes based on the stored ingredient data. The stored ingredient data is used as input. The server sends the search result, a recipe list (e.g., simmered chicken, chicken curry), to the user's terminal. The terminal receives it and displays it to the user. As output, the recipe list is presented to the user.

[1313] Step 3:

[1314] The user inputs health information such as allergy information and dietary restrictions into the user terminal. Allergy information and nutritional status information (e.g., dairy allergy) are provided as input. The terminal receives the input information and sends it to the server. The server uses that information to search for appropriate alternative recipes in a recipe database. The server sends a list of alternative recipes to the user terminal, which displays it to the user. As output, the list of alternative recipes is presented to the user.

[1315] Step 4:

[1316] The user inputs information about their health condition and nutritional intake into the user terminal. Data about health and nutritional intake (e.g., vitamin D deficiency) is provided as input. The terminal receives the input information and sends it to the server. The server uses the information to evaluate nutritional balance and search for recipes with necessary adjustments. The server sends the search results to the user terminal, which displays them to the user. As output, the user is presented with a list of recipes with adjusted nutritional balance.

[1317] Step 5:

[1318] The user inputs the time they wish to spend cooking into the user terminal. As input, the desired cooking time (e.g., within 30 minutes) is provided. The terminal receives the input time information and sends it to the server. The server searches the recipe database for recipes that can be cooked within that time. The server sends the results to the user terminal, which displays them to the user. As output, the user is presented with a list of recipes that can be cooked within the specified time.

[1319] Step 6:

[1320] Based on the proposed recipe, the user purchases missing ingredients using an electronic payment system. As input, a list of missing ingredients is provided. The user terminal receives this information and sends payment information through the electronic payment API. The server processes the payment and sends a purchase confirmation to the user terminal. As output, the purchase of missing ingredients is completed and a purchase confirmation is presented to the user.

[1321] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[1322] The present invention relates to a system that suggests optimal recipes based on ingredients available at home, the user's health information, cooking time, and even the user's emotions. This system is equipped with a database management means and recipe search means based on the user's ingredients and health information, as well as an emotion engine that recognizes the user's emotions and suggests recipes accordingly. Below, the program processing of the system of the present invention is explained in natural language, and specific examples are included to illustrate the embodiments of the invention.

[1323] System Configuration

[1324] This system mainly consists of four main components: "user terminal," "server," "database," and "emotion engine."

[1325] Program processing (explained in natural language)

[1326] 1. Enter and save ingredients

[1327] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[1328] The terminal receives the input ingredient data and transmits it to the server.

[1329] The server stores the received ingredient data in a database, which is used to search for recipes later.

[1330] Examples:

[1331] The user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[1332] 2. Recipe acquisition and suggestions

[1333] The server searches the recipe database for matching recipes based on the stored ingredient data.

[1334] The server generates search results (recipe list) and sends them to the terminal.

[1335] The device displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the food.

[1336] Examples:

[1337] The server searches for recipes such as "chicken stew" and "chicken curry" and sends them to the device, which then displays them to the user.

[1338] 3. Input allergy and dietary restriction information and suggest alternative recipes

[1339] The user enters information about allergies or dietary restrictions (e.g., dairy allergy).

[1340] The terminal receives the entered allergy information and sends it to the server.

[1341] Based on this information, the server searches for suitable alternative recipes and sends them to the terminal.

[1342] The terminal displays the list of alternative recipes to the user.

[1343] Examples:

[1344] The user inputs "dairy allergy," and the server then suggests alternative recipes, such as "dairy-free chicken curry."

[1345] 4. Nutritional balance assessment and adjustment

[1346] The user enters information about their health and nutritional status (e.g., vitamin D deficiency).

[1347] The terminal receives the input health information and transmits it to the server.

[1348] The server analyzes the information, evaluates the nutritional balance, searches for recipes with the necessary adjustments based on that information, and sends the recipes to the device.

[1349] The device will display the recipe list.

[1350] Examples:

[1351] The user inputs "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[1352] 5. Proposal of easy and quick recipes

[1353] The user inputs the time they want to spend cooking (e.g., within 30 minutes).

[1354] The terminal receives the input time information and transmits it to the server.

[1355] The server searches the recipe database for recipes that can be cooked within that time.

[1356] The server generates a corresponding recipe list and sends it to the terminal.

[1357] The device will display the recipe list.

[1358] Examples:

[1359] The user requests a dish that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[1360] 6. Use of Emotion Engines

[1361] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions and generate emotion data (e.g., "I'm stressed").

[1362] The server receives the emotion data and modifies or adjusts the recipe suggestions.

[1363] Examples:

[1364] If the emotion engine recognizes that the user is "tired," the server will prioritize suggesting "easy, energizing dishes."

[1365] 7. Accumulation and utilization of emotional data

[1366] The server accumulates the user's past emotional data and uses this when suggesting the next recipe.

[1367] The emotion engine analyzes past data and suggests optimal recipes based on the user's preferences and tendencies.

[1368] Examples:

[1369] The server stores "recipes that users have preferred in the past when they were feeling stressed" and suggests them the next time a similar emotion is detected.

[1370] Action Results

[1371] This system allows users to easily obtain and execute optimal recipes using ingredients available at home, tailored to their individual health status and lifestyle. Furthermore, by combining it with an emotion engine, the system can suggest recipes based on the user's emotional state, providing a more comfortable cooking experience. The system provides nutritionally balanced meals, reducing food waste and supporting a healthier diet.

[1372] The processing flow will be explained below.

[1373] Step 1:

[1374] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[1375] Step 2:

[1376] The terminal receives the input ingredient data and sends it to the server. The terminal then sends the input data to the server as an HTTP request.

[1377] Step 3:

[1378] The server stores the received ingredient data in the database. The server parses the request, executes the SQL query, and stores the ingredient data in the database.

[1379] Step 4:

[1380] The server searches the recipe database for matching recipes based on the stored ingredient data. The server uses an SQL query to retrieve recipes that contain the stored ingredients from the database.

[1381] Step 5:

[1382] The server generates search results (recipe list) and sends them to the device. The server returns the corresponding recipe list to the device as a JSON response.

[1383] Step 6:

[1384] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipe list.

[1385] Step 7:

[1386] The user enters information about allergies and dietary restrictions. The user enters the allergy information (e.g., "dairy allergy") into the input form on the device and clicks the "Submit" button.

[1387] Step 8:

[1388] The device receives the entered allergy information and sends it to the server. The device then sends the allergy information to the server as an HTTP request.

[1389] Step 9:

[1390] Based on the allergy information received, the server searches the recipe database for suitable alternative recipes. The server executes an SQL query to find recipes that match the allergy.

[1391] Step 10:

[1392] The server generates a list of alternative recipes and sends it to the device. The server returns the relevant alternative recipe list to the device in JSON format.

[1393] Step 11:

[1394] The device displays the received list of alternative recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipes.

[1395] Step 12:

[1396] The user enters information about their health condition and nutritional intake. The user enters health information (e.g., "Vitamin D deficiency") into the input form on the device and clicks the "Submit" button.

[1397] Step 13:

[1398] The device receives the entered health information and sends it to the server. The device then sends the health information to the server as an HTTP request.

[1399] Step 14:

[1400] The server analyzes the received health information and evaluates and adjusts nutritional balance. The server evaluates nutritional balance and identifies nutrients that are lacking.

[1401] Step 15:

[1402] The server searches the recipe database for recipes that provide the necessary nutrients and generates a recipe list. The server executes an SQL query to find the relevant recipes.

[1403] Step 16:

[1404] The server sends the generated recipe list to the device, and the server returns the recipe list to the device in JSON format.

[1405] Step 17:

[1406] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1407] Step 18:

[1408] The user inputs the desired cooking time (e.g., "within 30 minutes") into the input form on the device and clicks the "Submit" button.

[1409] Step 19:

[1410] The terminal receives the input cooking time information and sends it to the server. The terminal then sends the desired cooking time to the server as an HTTP request.

[1411] Step 20:

[1412] Based on the cooking time information received by the server, the server searches the recipe database for recipes that can be cooked within the specified time. The server executes an SQL query to search for recipes that fit the cooking time.

[1413] Step 21:

[1414] The server generates the appropriate recipe list and sends it to the device. The server returns the appropriate recipe list in JSON format to the device.

[1415] Step 22:

[1416] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1417] Step 23:

[1418] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions and generate emotion data (e.g., "I'm stressed").

[1419] Step 24:

[1420] The server receives the emotion data and changes or adjusts the recipe suggestions. The server then searches for optimal recipes for the user again based on the emotion data and generates an optimal recipe list.

[1421] Step 25:

[1422] The server sends the regenerated recipe list to the device, and the server returns an appropriate recipe list in JSON format according to the emotion.

[1423] Step 26:

[1424] The device displays the received list of regenerated recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1425] Step 27:

[1426] The server accumulates the user's past emotional data and uses it when suggesting the next recipe. The server analyzes the past data and reflects it in the next suggestion.

[1427] Step 28:

[1428] The emotion engine analyzes past data and suggests optimal recipes based on the user's preferences and trends. Emotion-based recipe suggestions improve user satisfaction.

[1429] Example 2

[1430] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1431] In today's busy lifestyles, it is important to effectively utilize limited time and resources when preparing meals at home and provide nutritionally balanced meals. Furthermore, recipes must be proposed that take into account constraints such as the health status and allergies of each household and individual, and that are also suited to the user's mental state. However, no system yet exists that can comprehensively manage these diverse factors, and conventional recipe suggestion systems have difficulty addressing the user's health and emotional state. Therefore, the present invention provides a system that solves these problems.

[1432] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching for recipes from an information store based on the stored ingredient data, and a recipe presentation means for sending the corresponding recipe to a user terminal and displaying it. This includes a health information management means for receiving and storing health status information entered by the user, an alternative recipe suggestion means for searching for and presenting recipes that match allergies and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-based recipe suggestion means for receiving desired cooking time information entered by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, an emotion recognition engine means for analyzing the user's emotional state and suggesting recipes based on the analysis, and a means for accumulating past emotion data and utilizing it for future recipe suggestions. This allows users to obtain optimal recipes based on their health and emotional state while using ingredients available at home, and prepare nutritionally balanced meals.

[1433] "Ingredient data" refers to information including the type and quantity of food that a user enters into the system.

[1434] "Database management means" refers to the function of receiving, organizing, and efficiently storing and managing input data.

[1435] "Recipe search means" refers to a function that searches an information store or database for recipes that meet specific conditions based on stored data.

[1436] The "recipe presentation means" is a function that sends the searched recipe to the user's terminal and displays it so that the user can visually check it.

[1437] "Health Information" refers to allergies, nutritional status, and other health-related information entered by users.

[1438] "Health information management means" refers to the function for receiving, storing, and managing health status information entered by the user.

[1439] "Alternative recipe suggestion means" refers to a function that searches for and suggests recipes that suit the user's allergies and nutritional status based on the user's health information.

[1440] "Nutrition management tools" refers to functions for analyzing stored health information, evaluating nutritional balance, and making necessary adjustments.

[1441] The "cooking time compatible recipe suggestion means" is a function that receives desired cooking time information input by the user, searches for and suggests recipes that can be cooked within that time.

[1442] "Emotion recognition engine means" refers to a function for analyzing user input and voice data and recognizing the user's emotional state.

[1443] "Means for accumulating past emotional data" refers to a function that saves a user's past emotional information and uses it to suggest future recipes.

[1444] This invention relates to a system that proposes optimal recipes based on household ingredients, the user's health information, cooking time, and even the user's emotions. This system consists of four main components: a user terminal, a server, a database, and an emotion engine.

[1445] First, the user enters ingredients they have at home into an input form on their device. They enter ingredients such as "chicken," "potatoes," and "carrots," and then click the "Submit" button. The entered ingredient data is received by the device, converted to JavaScript Object Notation (JSON) format, and sent to the server. The server analyzes the received ingredient data and saves it in a database. The ingredient information is systematically stored in the database and later used as basic data for recipe searches.

[1446] Next, the server searches the recipe database for matching recipes based on the ingredient data stored in the database. It uses SQL queries to retrieve recipes that match the ingredients the user has. The server then formats the search results and sends them to the device in the form of a recipe list. The device then displays the received recipe list to the user, allowing the user to check detailed cooking instructions.

[1447] If the user enters information about allergies or dietary restrictions, that information is also received by the device, converted to JSON format, and sent to the server. The server analyzes the received health information and searches for alternative recipes that meet the allergies or dietary restrictions. The searched alternative recipes are then sent back to the device and displayed to the user.

[1448] Additionally, if a user inputs information about their health condition or nutritional intake (e.g., vitamin D deficiency), the server analyzes that information, evaluates the nutritional balance, and searches for recipes with the necessary adjustments. These recipes are also sent to the device and displayed to the user.

[1449] Furthermore, if the user inputs information about the cooking time (e.g., within 30 minutes), the server searches for recipes that can be cooked within that time. If a matching recipe is found, it is sent to the terminal and displayed for the user to check.

[1450] The system is equipped with an emotion engine that analyzes input and voice data to recognize the user's emotional state when searching for recipes. For example, if the emotion engine recognizes that the user is "tired," the server will prioritize suggestions for "easy, energizing dishes." Emotional data is accumulated, and the next time a recipe is suggested, it can be based on past emotion data.

[1451] Examples:

[1452] 1. The user enters "chicken," "potatoes," and "carrots" into the input form on the device and clicks the send button.

[1453] 2. The server receives it and stores it in the database.

[1454] 3. The server searches the database for recipes such as "chicken stew" and "chicken curry" and sends them to the terminal.

[1455] 4. The user enters "dairy allergy," and the server suggests alternative recipes, such as "dairy-free chicken curry."

[1456] 5. The user types in "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[1457] 6. The user requests a meal that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[1458] 7. The emotion engine recognizes that the user is "tired," and the server prioritizes suggesting "easy, energizing meals."

[1459] Example prompt sentence:

[1460] "Please suggest a simple recipe using 'chicken,' 'potatoes,' and 'carrots.'"

[1461] "Please suggest some chicken recipes that are suitable for people with dairy allergies."

[1462] "Please provide recipes that are high in vitamin D."

[1463] Please suggest a recipe that can be made in 30 minutes or less.

[1464] "What recipes would you recommend for when you're tired?"

[1465] "What recipes have you enjoyed in the past when you were stressed?"

[1466] This system allows users to easily obtain optimal recipes based on their detailed health and emotional state, providing nutritionally balanced meals. Furthermore, by utilizing the emotion engine, the system can further enhance the optimal recipe suggestions based on the user's emotional state.

[1467] The flow of the identification process in the second embodiment will be described with reference to FIG.

[1468] Step 1:

[1469] The user inputs ingredients they have at home into the input form on the device. Specifically, the user inputs ingredients such as "chicken," "potatoes," and "carrots" using the keyboard and clicks the "send button." The input data is sent to the device in text format.

[1470] Input: Ingredient information (e.g. chicken, potatoes, carrots)

[1471] Output: Text data sent to the terminal

[1472] Step 2:

[1473] The device receives the input food ingredient data, converts it into JSON format, and then sends the received data to the server.

[1474] Input: Textual ingredient information

[1475] Output: Ingredient data converted to JSON format

[1476] Step 3:

[1477] The server analyzes the received JSON data and extracts the ingredient information, which is then stored in a database.

[1478] Input: JSON formatted food ingredients data

[1479] Output: Ingredient information stored in the database

[1480] Step 4:

[1481] The server searches the recipe database for matching recipes based on the ingredient data stored in the database, generates an SQL query, and retrieves the appropriate recipes based on that.

[1482] Input: Ingredient information stored in the database

[1483] Output: Searched recipe data

[1484] Step 5:

[1485] The server formats the retrieved recipe data and generates a recipe list, which is formatted for display to the user.

[1486] Input: Searched recipe data

[1487] Output: A formatted list of recipes

[1488] Step 6:

[1489] The server sends the generated recipe list to the terminal, which receives it and displays it to the user, who can then check the detailed cooking instructions for each recipe.

[1490] Input: A formatted list of recipes

[1491] Output: Recipe list displayed on the user's device

[1492] Step 7:

[1493] The user enters information about allergies and dietary restrictions. The information is received by the device, converted into JSON format, and sent to the server.

[1494] Input: Allergy information (e.g. dairy allergy)

[1495] Output: Allergy information in JSON format

[1496] Step 8:

[1497] The server analyzes the received allergy information and searches a recipe database for suitable alternative recipes based on that information.

[1498] Input: Allergy information in JSON format

[1499] Output: Searched alternative recipe data

[1500] Step 9:

[1501] The server generates a list of alternative recipes, sends it to the terminal, and displays it to the user, who can then check recipes that match the allergy information.

[1502] Input: Searched alternative recipe data

[1503] Output: A list of alternative recipes displayed on the user's terminal

[1504] Step 10:

[1505] The user inputs information about their health condition and nutritional intake. The input information is received by the device, converted into JSON format, and sent to the server.

[1506] Input: Health information (e.g., Vitamin D deficiency)

[1507] Output: Health status information in JSON format

[1508] Step 11:

[1509] The server analyzes the received health information and evaluates the nutritional balance. Based on the analysis results, it searches the recipe database for recipes with necessary adjustments.

[1510] Input: Health status information in JSON format

[1511] Output: Adjusted recipe data

[1512] Step 12:

[1513] The server generates an adjusted recipe list and sends it to the terminal, which displays the received recipe list to the user.

[1514] Input: Adjusted recipe data

[1515] Output: Adjustment recipe list displayed on the user's device

[1516] Step 13:

[1517] The user inputs the desired cooking time. The input time information is received by the device, converted into JSON format, and sent to the server.

[1518] Input: Desired cooking time (e.g., within 30 minutes)

[1519] Output: Desired cooking time information in JSON format

[1520] Step 14:

[1521] The server analyzes the received time information and searches the recipe database for recipes that can be cooked within that time.

[1522] Input: Desired cooking time information in JSON format

[1523] Output: Searched time-enabled recipe data

[1524] Step 15:

[1525] The server generates a time-based recipe list and transmits it to the terminal, which then displays the received recipe list to the user.

[1526] Input: Searched time-enabled recipe data

[1527] Output: A time-aware recipe list displayed on the user's device

[1528] Step 16:

[1529] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions.

[1530] Input: User input and voice data

[1531] Output: Recognized emotion data

[1532] Step 17:

[1533] The server receives the emotion data and adjusts the recipe suggestions. Based on the emotion recognized by the emotion engine, it searches for suitable recipes from the recipe database.

[1534] Input: Recognized emotion data

[1535] Output: Adjusted emotion-aware recipe data

[1536] Step 18:

[1537] The server generates an adjusted recipe list and sends it to the terminal, which displays the received recipe list to the user.

[1538] Input: Adjusted emotion-aware recipe data

[1539] Output: A list of emotion-aware recipes displayed on the user's device

[1540] Step 19:

[1541] The server accumulates the user's past emotional data and uses it when suggesting the next recipe. The emotion engine analyzes the past emotional data and suggests the optimal recipe based on the user's preferences and tendencies.

[1542] Input: Historical emotion data

[1543] Output: Recipe suggestions based on accumulated emotional data

[1544] This allows users to easily obtain the optimal recipes tailored to their individual health condition, lifestyle, and even emotional state.

[1545] (Application example 2)

[1546] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1547] While conventional recipe suggestion systems can collect information on ingredients and health, they are unable to make suggestions that take into account the user's emotional state, making it difficult to provide optimal recipes that are in line with the user's emotions. Furthermore, it is difficult to make suggestions in real time, making it difficult to improve the user's shopping experience.

[1548] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching for recipes based on the stored ingredient data, a recipe presentation means for sending corresponding recipes to the user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information entered by the user, an alternative recipe suggestion means for searching for and presenting recipes that match the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-based recipe suggestion means for receiving desired cooking time information entered by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, and an emotion engine for recognizing the user's emotional state and suggesting recipes based on the corresponding emotional state. This enables optimal recipe suggestions based on the user's emotional state, improving the shopping experience by suggesting recipes in real time.

[1549] The "database management means" is a means having the function of receiving and storing input ingredient data.

[1550] The "recipe search means" is a means for searching a database for recipes based on stored ingredient data.

[1551] The "recipe presentation means" is a means for transmitting the searched recipe to the user terminal and displaying it.

[1552] The "health information management means" is a means for receiving and storing allergy information and nutritional status information input by the user.

[1553] The "alternative recipe suggestion means" is a means for searching for and presenting recipes that suit allergies and nutritional conditions based on stored health information.

[1554] "Nutrition management tools" are tools for analyzing stored health information and evaluating and adjusting nutritional balance.

[1555] The "cooking time compatible recipe suggesting means" is a means for receiving desired cooking time information input by the user, searching for recipes that can be cooked within that cooking time, and presenting them.

[1556] The "emotion engine" is an engine that has the function of recognizing the user's emotional state and suggesting recipes based on that emotional state.

[1557] The system for implementing this invention mainly consists of four main components: a “user terminal,” a “server,” a “database,” and an “emotion engine.” The operation of each component and the entire system will be explained in detail below.

[1558] System Configuration and Operation

[1559] 1. User Device

[1560] The user terminal is assumed to be a wearable device such as smart glasses. The user terminal has an interface that allows the user to input information about ingredients, health information, desired cooking time, allergy information, etc. The user terminal is also equipped with a camera that captures the user's face and sends the data to the emotion engine.

[1561] 2. Database Management Methods

[1562] The database management means is located within the server. It receives ingredient data entered by the user from the terminal and stores it in the database. The user's health information and allergy information are also stored in the same way.

[1563] 3. Recipe search methods

[1564] The recipe search means is executed by the server. It searches the database for a corresponding recipe based on the stored ingredient data and health information. The searched recipe is sent from the server to the user terminal and displayed.

[1565] 4. Emotion Engine

[1566] The emotion engine analyzes facial images sent from the user's device and recognizes the user's emotions. The emotion engine uses an external emotion recognition API (for example, in conjunction with the OpenCV library). Emotion data is sent to the server and used to adjust recipe suggestions.

[1567] 5. Health information management and alternative recipe suggestion methods

[1568] The health information management means has the function of receiving and storing allergy information and nutritional status information entered by the user. The alternative recipe suggestion means searches for and presents recipes that are suitable for the allergies and nutritional status based on the stored health information.

[1569] 6. Nutritional Management Measures

[1570] The nutrition management tool analyzes the stored health information and evaluates and adjusts the nutritional balance, thereby suggesting ingredients and recipes that will supplement the user's nutrient deficiencies.

[1571] Specific examples

[1572] Suppose a user types, "I have some chicken and spinach in the fridge. I'd like a recipe that will cheer me up and that I can make in under 30 minutes today." In this case, the system will suggest the best recipe by following these steps:

[1573] 1. The user's device sends information about the ingredients (chicken and spinach), cooking time (within 30 minutes), health information, allergy information, and the user's emotional data (e.g., "stress") to the server.

[1574] 2. The server searches the database for suitable recipes based on the stored data. It uses an emotion engine to analyze the user's emotional state and prioritizes recipes that will cheer you up.

[1575] 3. The server sends the search results to the user's device, and recipes such as "Chicken and Spinach Stir-fry (cooking time: 20 minutes)" and "High-Protein Smoothie (cooking time: 5 minutes)" are displayed on the smart glasses' display.

[1576] Prompt Sentence Examples

[1577] "I have some chicken and spinach in the fridge. I'd like an energizing recipe that I can make in under 30 minutes today."

[1578] In this way, using this system makes it possible to suggest optimal recipes based on the user's emotional state, improving the shopping experience through effective recipe suggestions in real time.

[1579] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[1580] Step 1:

[1581] The user terminal receives the ingredient information, desired cooking time, allergy information, nutritional status information, and facial image input by the user. This input data includes ingredients such as "chicken" and "spinach" and the desired cooking time of "within 30 minutes." The user's facial image is also captured by a camera.

[1582] Step 2:

[1583] The device sends the received data to the server. The data includes ingredient information, cooking time, allergy information, nutritional status information, and facial images. The device sends the data to the server using an HTTP request.

[1584] Step 3:

[1585] The server processes the received data. First, it sends the facial image to the emotion recognition API to analyze the user's emotional state. The emotion recognition API receives image data as input and outputs emotional data. In this example, the emotional state is recognized as "stress."

[1586] Step 4:

[1587] The server uses a database management means to store the ingredient information, cooking time, allergy information, and nutritional status information in a database. The database management means stores the data using SQL queries and outputs status information indicating whether the data storage was successful.

[1588] Step 5:

[1589] The server uses the recipe search means to search for recipes based on the saved data. It searches for recipes in the database using the search criteria: ingredient information "chicken" and "spinach," cooking time "within 30 minutes," allergy information, nutritional status, and emotional state "stress." It outputs a list of matching recipes as the search result.

[1590] Step 6:

[1591] The server considers the results of the emotion engine and prioritizes selecting invigorating recipes that correspond to the emotional state "stress." This selection process extracts recipes that contain ingredients that relax the user and avoid complicated cooking steps.

[1592] Step 7:

[1593] The server uses the recipe presentation means to send the selected recipe list to the user terminal. The recipe list sent includes recipes such as "Chicken and Spinach Stir-fry (Cooking time: 20 minutes)" and "High Protein Smoothie (Cooking time: 5 minutes)." The list is sent to the user terminal as an HTTP response.

[1594] Step 8:

[1595] The user device displays the received recipe list, and the smart glasses display shows the suggested recipe name and cooking time. The user can start cooking based on the optimal recipe information presented in real time.

[1596] Through this series of processes, it is possible to provide optimal recipes in real time that take into account the user's emotional state and health information.

[1597] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[1598] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1599] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.

[1600] [Fourth embodiment]

[1601] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[1602] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

[1603] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[1604] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.

[1605] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[1606] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[1607] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[1608] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.

[1609] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[1610] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[1611] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[1612] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[1613] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1614] The present invention relates to a system that efficiently proposes recipes using available household ingredients and provides meal plans that take into account nutritional balance, allergies, and cooking time. Below, the program processing of the system of the present invention is explained in natural language, and a form for carrying out the invention is shown with specific examples.

[1615] System Configuration

[1616] This system mainly consists of three main components: a "user terminal," a "server," and a "database."

[1617] Program processing (explained in natural language)

[1618] 1. Enter and save ingredients

[1619] The user inputs ingredients they have at home into the system, such as "chicken," "potatoes," and "carrots," into the input form on their device and clicks the "send button."

[1620] The terminal receives the input ingredient data and transmits it to the server.

[1621] The server stores the received ingredient data in a database, which is used to search for recipes later.

[1622] Examples:

[1623] The user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[1624] 2. Recipe acquisition and suggestions

[1625] The server searches the recipe database for matching recipes based on the stored ingredient data.

[1626] The server generates search results (recipe list) and sends them to the terminal.

[1627] The device displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the food.

[1628] Examples:

[1629] The server searches for recipes such as "chicken stew" and "chicken curry" and sends them to the device, which then displays them to the user.

[1630] 3. Input allergy and dietary restriction information and suggest alternative recipes

[1631] The user enters information about allergies or dietary restrictions (e.g., dairy allergy).

[1632] The terminal receives the entered allergy information and sends it to the server.

[1633] Based on this information, the server searches for suitable alternative recipes and sends them to the terminal.

[1634] The terminal displays the list of alternative recipes to the user.

[1635] Examples:

[1636] The user inputs "dairy allergy," and the server then suggests alternative recipes, such as "dairy-free chicken curry."

[1637] 4. Nutritional balance assessment and adjustment

[1638] The user enters information about their health and nutritional status (e.g., vitamin D deficiency).

[1639] The terminal receives the input health information and transmits it to the server.

[1640] The server analyzes the information, evaluates the nutritional balance, searches for recipes with the necessary adjustments based on that information, and sends the recipes to the device.

[1641] The device will display the recipe list.

[1642] Examples:

[1643] The user inputs "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[1644] 5. Proposal of easy and quick recipes

[1645] The user inputs the time they want to spend cooking (e.g., within 30 minutes).

[1646] The terminal receives the input time information and transmits it to the server.

[1647] The server searches for recipes that can be cooked within that time and sends them to the terminal.

[1648] The device will display the recipe list.

[1649] Examples:

[1650] The user requests a dish that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[1651] Action Results

[1652] This system allows users to easily obtain and execute recipes that are optimal for their individual health conditions and lifestyles using ingredients available at home. The system provides nutritionally balanced meals, reducing food waste and supporting the realization of a healthy diet.

[1653] The processing flow will be explained below.

[1654] Step 1:

[1655] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[1656] Step 2:

[1657] The terminal receives the input ingredient data and sends it to the server. The terminal then sends the ingredient data to the server as an HTTP request.

[1658] Step 3:

[1659] The server stores the received ingredient data in a database. Specifically, the server analyzes the request, executes an SQL query, and stores the ingredient data in the database.

[1660] Step 4:

[1661] The server searches the recipe database for matching recipes based on the stored ingredient data. The server uses an SQL query to retrieve recipes that contain the stored ingredients from the database.

[1662] Step 5:

[1663] The server generates search results (recipe list) and sends them to the device. The server returns the corresponding recipe list to the device as a JSON response.

[1664] Step 6:

[1665] The device displays the received recipe list to the user. The device parses the received JSON data and displays it in the user interface. The user can select from the displayed recipe list.

[1666] Step 7:

[1667] The user enters information about allergies and dietary restrictions. The user enters the allergy information (e.g., "dairy allergy") into the input form on the device and clicks the "Submit" button.

[1668] Step 8:

[1669] The device receives the entered allergy information and sends it to the server. The device then sends the allergy information to the server as an HTTP request.

[1670] Step 9:

[1671] Based on the allergy information received, the server searches the recipe database for suitable alternative recipes. The server executes an SQL query to find recipes that match the allergy.

[1672] Step 10:

[1673] The server generates a list of alternative recipes and sends it to the device. The server returns the relevant alternative recipe list to the device in JSON format.

[1674] Step 11:

[1675] The device displays the received list of alternative recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipes.

[1676] Step 12:

[1677] The user enters information about their health condition and nutritional intake. The user enters health information (e.g., "Vitamin D deficiency") into the input form on the device and clicks the "Submit" button.

[1678] Step 13:

[1679] The device receives the entered health information and sends it to the server. The device then sends the health information to the server as an HTTP request.

[1680] Step 14:

[1681] The server analyzes the received health information and evaluates and adjusts nutritional balance. The server evaluates nutritional balance and identifies nutrients that are lacking.

[1682] Step 15:

[1683] The server searches the recipe database for recipes that provide the necessary nutrients and generates a recipe list. The server executes an SQL query to find the relevant recipes.

[1684] Step 16:

[1685] The server sends the generated recipe list to the device, and the server returns the recipe list to the device in JSON format.

[1686] Step 17:

[1687] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1688] Step 18:

[1689] The user inputs the desired cooking time (e.g., "within 30 minutes") into the input form on the device and clicks the "Submit" button.

[1690] Step 19:

[1691] The terminal receives the input cooking time information and sends it to the server. The terminal then sends the desired cooking time to the server as an HTTP request.

[1692] Step 20:

[1693] Based on the cooking time information received by the server, the server searches the recipe database for recipes that can be cooked within the specified time. The server executes an SQL query to search for recipes that fit the cooking time.

[1694] Step 21:

[1695] The server generates the appropriate recipe list and sends it to the device. The server returns the appropriate recipe list in JSON format to the device.

[1696] Step 22:

[1697] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1698] Example 1

[1699] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1700] Today's consumers lead busy lives and often lack the time to plan meals at home. Under these circumstances, there is a need for a system that can efficiently suggest recipes that make effective use of ingredients available at home and take into account allergies and nutritional balance. It is also necessary to provide recipes that can accommodate individual health conditions and dietary restrictions, and it is essential to suggest recipes that fit specific cooking times.

[1701] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[1702] In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching the database for recipes based on the stored ingredient data, a recipe presentation means for sending relevant recipes to a user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information input by the user, an alternative recipe suggestion means for searching for and presenting recipes that match the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, and a cooking time-compatible recipe suggestion means for receiving desired cooking time information input by the user, searching for and presenting recipes that can be cooked within the corresponding cooking time. This allows users to easily obtain optimal recipes based on their health status and lifestyle without wasting ingredients at home, enabling them to achieve nutritionally balanced meals.

[1703] The "database management means" is a device or software that provides the function of receiving and storing input ingredient data.

[1704] The "recipe search means" is a device or software that provides a function for searching a database for recipes based on the stored ingredient data.

[1705] The "recipe presentation means" is a device or software that provides the function of transmitting the corresponding recipe to the user terminal and displaying it.

[1706] "Health information management means" refers to a device or software that provides the function of receiving and storing allergy information and nutritional status information entered by a user.

[1707] The "alternative recipe suggesting means" is a device or software that provides a function for searching for and presenting recipes that are suitable for allergies and nutritional status based on the health information.

[1708] The "nutritional management means" is a device or software that provides a function for analyzing the stored health information and evaluating and adjusting nutritional balance.

[1709] The "cooking time compatible recipe suggesting means" is a device or software that provides the function of receiving desired cooking time information input by the user, searching for recipes that can be cooked within the corresponding cooking time, and presenting them.

[1710] This invention is a system that efficiently suggests recipes that take into consideration allergies, nutritional balance, and cooking time based on ingredients available at home entered by the user. This system consists of three main components: a "user terminal," a "server," and a "database." The program for this system is implemented using the following hardware and software.

[1711] First, the user uses the user terminal to input ingredients available at home. An input form is installed on the user terminal, and the user inputs ingredients such as "chicken," "potatoes," and "carrots," and clicks the "send button." The user terminal receives the input ingredient data and sends it to the server. The server receives this data and stores it in a database.

[1712] Next, the server searches for matching recipes in the recipe database based on the stored ingredient data. The server generates search results and sends them to the user's terminal. The user terminal displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the dish.

[1713] Additionally, the user may enter information about allergies or dietary restrictions. For example, the user may enter "dairy allergy." The user terminal receives this allergy information and sends it to the server. The server searches for appropriate alternative recipes based on the allergy information and sends the results to the user terminal. The user terminal then displays a list of alternative recipes to the user.

[1714] Nutritional balance can also be evaluated and adjusted. The user inputs information about their health condition and nutritional intake. For example, they input "vitamin D deficiency." The user's device sends this information to the server. The server analyzes the information, evaluates the nutritional balance, and based on that, searches for recipes with the necessary adjustments and sends them to the device. The user's device then displays a list of these recipes.

[1715] Finally, the user can input the desired cooking time. For example, they can input "a dish that can be cooked in 30 minutes or less." The device sends this information to the server. The server searches for recipes that can be cooked within that time and sends them to the device. The device then displays the recipe list.

[1716] Example prompt sentences:

[1717] "I would like to develop a system that, when I input ingredients available at home, suggests recipes based on those ingredients and provides alternative recipes that take allergies and nutritional balance into consideration. Please explain the specific program processing steps and the technology used."

[1718] This system allows users to easily obtain and execute recipes that are optimal for their individual health condition and lifestyle while making effective use of ingredients available at home.The system provides nutritionally balanced meals, reducing food waste and supporting healthy eating habits.

[1719] The flow of the identification process in the first embodiment will be described with reference to FIG.

[1720] Step 1:

[1721] Entering and saving ingredients

[1722] The user enters the ingredients they have at home into an input form on the user terminal.

[1723] Input: Ingredient names such as "chicken," "potatoes," and "carrots."

[1724] Specific behavior: The user enters the name of an ingredient in the input form and clicks the "Submit" button.

[1725] The device receives the input food ingredient data, converts it into JSON format, and sends it to the server.

[1726] Output: The ingredients data is sent to the server in JSON format.

[1727] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[1728] The server stores the received ingredient data in a database.

[1729] Input: JSON formatted ingredient data sent from the device.

[1730] Output: Ingredient data stored in a database.

[1731] What happens: The server parses the data and stores it in the appropriate database fields.

[1732] Step 2:

[1733] Recipe retrieval and suggestions

[1734] The server searches a recipe database for matching recipes based on the stored ingredient data.

[1735] Input: Ingredient data stored in the database.

[1736] Output: A list of recipes that match the ingredients.

[1737] What happens: The server performs a database search using an SQL query to retrieve matching recipes.

[1738] The server generates search results and sends them to the terminal in JSON format.

[1739] Input: A list of matching recipes.

[1740] Output: JSON data of the recipe list.

[1741] Specific operation: The server converts the search results into a JSON format list and sends it to the device.

[1742] The terminal displays the received recipe list to the user.

[1743] Input: JSON data of the recipe list sent from the server.

[1744] Output: The recipe list that is displayed to the user.

[1745] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[1746] Step 3:

[1747] Input allergy and dietary restrictions information and suggest alternative recipes

[1748] A user fills out a form with information about allergies or dietary restrictions. For example, "dairy allergy."

[1749] Input: Allergy information, such as "dairy allergy."

[1750] Specific behavior: The user enters allergy information into the input form and clicks the "Submit" button.

[1751] The terminal receives the entered allergy information, converts it into JSON format, and sends it to the server.

[1752] Output: Allergy information is sent to the server in JSON format.

[1753] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[1754] The server searches for alternative recipes based on allergy information and sends them to the terminal.

[1755] Input: Allergy information sent from the device in JSON format.

[1756] Output: A list of allergy-friendly alternative recipes.

[1757] Specific operation: The server performs a database search based on the allergy information and extracts alternative recipes.

[1758] The terminal displays the list of alternative recipes to the user.

[1759] Input: JSON data of the recipe alternative list sent from the server.

[1760] Output: The list of recipe alternatives displayed to the user.

[1761] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[1762] Step 4:

[1763] Nutritional balance assessment and adjustment

[1764] The user enters information about their health and nutritional status. For example, "Vitamin D deficiency."

[1765] Input: Health information, such as "Vitamin D deficiency."

[1766] Specific behavior: The user enters health information into the input form and clicks the "Submit" button.

[1767] The device receives the entered health information, converts it into JSON format, and sends it to the server.

[1768] Output: Health information is sent to the server in JSON format.

[1769] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[1770] The server analyzes health information, evaluates nutritional balance, and then searches for recipes with necessary adjustments based on that information and sends them to the device.

[1771] Input: Health information sent from the device in JSON format.

[1772] Output: A list of nutritionally balanced recipes.

[1773] Specific operation: The server performs a database search based on health information and extracts recipes that take nutritional balance into consideration.

[1774] The terminal displays the recipe list to the user.

[1775] Input: JSON data of a list of nutritionally balanced recipes sent from the server.

[1776] Output: The recipe list that is displayed to the user.

[1777] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[1778] Step 5:

[1779] Proposal of easy and quick recipes

[1780] The user enters the time they want to cook. For example, "within 30 minutes."

[1781] Input: Cooking time information, such as "30 minutes or less".

[1782] Specific behavior: The user enters a cooking time into the input form and clicks the "Submit" button.

[1783] The device receives the entered time information, converts it into JSON format, and sends it to the server.

[1784] Output: Cooking time information is sent to the server in JSON format.

[1785] Specific operation: The terminal converts the input data into JSON format and sends it to the server as a data packet.

[1786] The server searches for recipes that can be cooked within that time and sends them to the terminal.

[1787] Input: Cooking time information sent from the device in JSON format.

[1788] Output: A list of recipes that can be cooked within the specified time.

[1789] Specific operation: The server performs a database search based on the cooking time information and extracts recipes that can be made within the specified time.

[1790] The terminal displays the recipe list to the user.

[1791] Input: JSON data of recipe list with cooking time sent from the server.

[1792] Output: The recipe list that is displayed to the user.

[1793] Specific operation: The device analyzes the received data and displays it in list format on the user interface.

[1794] (Application example 1)

[1795] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1796] Conventional home recipe suggestion systems are limited to proposing recipes based on ingredients and health information, but lack the functionality to assist users in purchasing ingredients they are running low on or in procuring ingredients in a timely manner. Furthermore, when users try to efficiently purchase ingredients according to the suggested recipes, they are required to take multiple steps, which is inconvenient. There is a need for a system that solves these issues and provides healthy recipes that utilize ingredients available at home in an efficient and hassle-free manner.

[1797] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[1798] In this invention, the server includes a storage management means for receiving and storing input ingredient data, a recipe search means for searching for recipes from information sources based on the stored ingredient data, a recipe presentation means for transmitting relevant recipes to a user terminal and displaying them, a health information management means for receiving and storing allergy information and nutritional status information input by the user, an alternative recipe suggestion means for searching for and presenting recipes that are suitable for the allergy and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-compatible recipe suggestion means for receiving desired cooking time information input by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, and an electronic payment means for purchasing ingredients that are missing from the proposed recipe. This allows the user to use ingredients efficiently, receive suggestions for optimal recipes that take health information and cooking time into consideration, and easily purchase missing ingredients through electronic payment.

[1799] The "storage management means" is a device or part of software for receiving and storing input ingredient data.

[1800] A "recipe lookup means" is a device or piece of software that searches for suitable recipes from information sources based on stored ingredient data.

[1801] The "recipe presentation means" is a device or piece of software that transmits the relevant recipe to the user terminal and displays it.

[1802] The "health information management means" is a device or piece of software that receives and stores allergy information and nutritional status information entered by a user.

[1803] The "alternative recipe suggestion means" is a device or piece of software that searches for and presents recipes that are suitable for allergies and nutritional conditions based on health information.

[1804] A "nutritional management tool" is a device or piece of software that analyzes stored health information and evaluates and adjusts nutritional balance.

[1805] The "cooking time compatible recipe suggesting means" is a device or part of software that receives desired cooking time information input by the user, searches for recipes that can be cooked within the corresponding cooking time, and presents them.

[1806] An "electronic payment instrument" is a device or piece of software for making electronic payments to purchase missing ingredients for a suggested recipe.

[1807] The system of this invention mainly consists of three main components: a user terminal, a server, and a database. It also incorporates an electronic payment function.

[1808] Program processing (explained in natural language)

[1809] 1. Enter and save ingredients

[1810] The user enters the ingredients they have at home into an input form on their device and presses the send button. The device receives the entered ingredient data and sends it to the server. The server stores the received ingredient data in a database, which can then be used as a source of information for searching for recipes later.

[1811] Example: A user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[1812] 2. Recipe acquisition and suggestions

[1813] The server searches the recipe database for matching recipes based on the stored ingredient data. The server then sends the resulting recipe list to the user's device, which then displays it to the user. The recipe also includes cooking instructions, allowing the user to follow the detailed instructions to cook the food.

[1814] Example: The server searches for recipes such as "boiled chicken" and "chicken curry," and the device displays them to the user.

[1815] 3. Input allergy and dietary restriction information and suggest alternative recipes

[1816] The user enters information about allergies and dietary restrictions into the user terminal. The terminal receives the entered allergy information and sends it to the server. The server uses that information to search for appropriate alternative recipes and sends them to the terminal. The terminal then displays a list of alternative recipes to the user.

[1817] Example: A user enters "dairy allergy" and the server suggests alternative recipes such as "dairy-free chicken curry."

[1818] 4. Nutritional balance assessment and adjustment

[1819] The user inputs information about their health condition and nutritional intake into the user terminal. The terminal receives the input health information and sends it to the server. The server evaluates the nutritional balance based on the information, searches for recipes with necessary adjustments based on that evaluation, and sends them to the terminal. The terminal then displays a list of those recipes.

[1820] Example: A user inputs "Vitamin D deficiency" and the server suggests recipes that are high in Vitamin D.

[1821] 5. Proposal of easy and quick recipes

[1822] The user inputs the desired cooking time into the user terminal. The terminal receives the input time information and sends it to the server. The server searches for recipes that can be cooked within that time and sends them to the terminal. The terminal then displays a list of those recipes.

[1823] Example: A user requests a meal that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[1824] 6. Purchasing food ingredients with electronic payment

[1825] Based on the proposed recipe, the user can purchase any missing ingredients from their terminal using an electronic payment system, allowing them to obtain the ingredients they need without any hassle.

[1826] Example: A user uses an electronic payment system to purchase the missing ingredient "soy sauce" to make "boiled chicken" online.

[1827] Specific hardware and software names used

[1828] Smartphone (iOS / Android): Operate the user interface and enter food and health information.

[1829] Database (PostgreSQL, MongoDB): Stores ingredient information, recipe information, and allergy information.

[1830] Server (Django, Node.js): Receives and processes data, searches for recipes, and processes electronic payments.

[1831] Electronic payment API (Stripe, PayPal): Provides payment functionality for users to purchase ingredients they are running low on.

[1832] Prompt Sentence Examples

[1833] "Please tell me a recipe that is high in vitamin D using ingredients that you have at home. The ingredients that can be used are chicken, potatoes, and carrots. You also have the option to purchase any ingredients that you are missing with a credit card."

[1834] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[1835] Step 1:

[1836] The user enters the ingredients they have at home into an input form on their device and presses the submit button. A list of ingredients (e.g., chicken, potatoes, carrots) is provided as input. The device receives this ingredient data and sends it to the server. The server stores the entered ingredient data in a database. This allows it to be used as a source of information for future recipe searches.

[1837] Step 2:

[1838] The server searches the recipe database for matching recipes based on the stored ingredient data. The stored ingredient data is used as input. The server sends the search result, a recipe list (e.g., simmered chicken, chicken curry), to the user's terminal. The terminal receives it and displays it to the user. As output, the recipe list is presented to the user.

[1839] Step 3:

[1840] The user inputs health information such as allergy information and dietary restrictions into the user terminal. Allergy information and nutritional status information (e.g., dairy allergy) are provided as input. The terminal receives the input information and sends it to the server. The server uses that information to search for appropriate alternative recipes in a recipe database. The server sends a list of alternative recipes to the user terminal, which displays it to the user. As output, the list of alternative recipes is presented to the user.

[1841] Step 4:

[1842] The user inputs information about their health condition and nutritional intake into the user terminal. Data about health and nutritional intake (e.g., vitamin D deficiency) is provided as input. The terminal receives the input information and sends it to the server. The server uses the information to evaluate nutritional balance and search for recipes with necessary adjustments. The server sends the search results to the user terminal, which displays them to the user. As output, the user is presented with a list of recipes with adjusted nutritional balance.

[1843] Step 5:

[1844] The user inputs the time they wish to spend cooking into the user terminal. As input, the desired cooking time (e.g., within 30 minutes) is provided. The terminal receives the input time information and sends it to the server. The server searches the recipe database for recipes that can be cooked within that time. The server sends the results to the user terminal, which displays them to the user. As output, the user is presented with a list of recipes that can be cooked within the specified time.

[1845] Step 6:

[1846] Based on the proposed recipe, the user purchases missing ingredients using an electronic payment system. As input, a list of missing ingredients is provided. The user terminal receives this information and sends payment information through the electronic payment API. The server processes the payment and sends a purchase confirmation to the user terminal. As output, the purchase of missing ingredients is completed and a purchase confirmation is presented to the user.

[1847] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[1848] The present invention relates to a system that suggests optimal recipes based on ingredients available at home, the user's health information, cooking time, and even the user's emotions. This system is equipped with a database management means and recipe search means based on the user's ingredients and health information, as well as an emotion engine that recognizes the user's emotions and suggests recipes accordingly. Below, the program processing of the system of the present invention is explained in natural language, and specific examples are included to illustrate the embodiments of the invention.

[1849] System Configuration

[1850] This system mainly consists of four main components: "user terminal," "server," "database," and "emotion engine."

[1851] Program processing (explained in natural language)

[1852] 1. Enter and save ingredients

[1853] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[1854] The terminal receives the input ingredient data and transmits it to the server.

[1855] The server stores the received ingredient data in a database, which is used to search for recipes later.

[1856] Examples:

[1857] The user enters "chicken," "potatoes," and "carrots," which are then saved on the server.

[1858] 2. Recipe acquisition and suggestions

[1859] The server searches the recipe database for matching recipes based on the stored ingredient data.

[1860] The server generates search results (recipe list) and sends them to the terminal.

[1861] The device displays the received recipe list to the user. The recipes also include cooking instructions, so the user can follow the detailed instructions to cook the food.

[1862] Examples:

[1863] The server searches for recipes such as "chicken stew" and "chicken curry" and sends them to the device, which then displays them to the user.

[1864] 3. Input allergy and dietary restriction information and suggest alternative recipes

[1865] The user enters information about allergies or dietary restrictions (e.g., dairy allergy).

[1866] The terminal receives the entered allergy information and sends it to the server.

[1867] Based on this information, the server searches for suitable alternative recipes and sends them to the terminal.

[1868] The terminal displays the list of alternative recipes to the user.

[1869] Examples:

[1870] The user inputs "dairy allergy," and the server then suggests alternative recipes, such as "dairy-free chicken curry."

[1871] 4. Nutritional balance assessment and adjustment

[1872] The user enters information about their health and nutritional status (e.g., vitamin D deficiency).

[1873] The terminal receives the input health information and transmits it to the server.

[1874] The server analyzes the information, evaluates the nutritional balance, searches for recipes with the necessary adjustments based on that information, and sends the recipes to the device.

[1875] The device will display the recipe list.

[1876] Examples:

[1877] The user inputs "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[1878] 5. Proposal of easy and quick recipes

[1879] The user inputs the time they want to spend cooking (e.g., within 30 minutes).

[1880] The terminal receives the input time information and transmits it to the server.

[1881] The server searches the recipe database for recipes that can be cooked within that time.

[1882] The server generates a corresponding recipe list and sends it to the terminal.

[1883] The device will display the recipe list.

[1884] Examples:

[1885] The user requests a dish that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[1886] 6. Use of Emotion Engines

[1887] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions and generate emotion data (e.g., "I'm stressed").

[1888] The server receives the emotion data and modifies or adjusts the recipe suggestions.

[1889] Examples:

[1890] If the emotion engine recognizes that the user is "tired," the server will prioritize suggesting "easy, energizing dishes."

[1891] 7. Accumulation and utilization of emotional data

[1892] The server accumulates the user's past emotional data and uses this when suggesting the next recipe.

[1893] The emotion engine analyzes past data and suggests optimal recipes based on the user's preferences and tendencies.

[1894] Examples:

[1895] The server stores "recipes that users have preferred in the past when they were feeling stressed" and suggests them the next time a similar emotion is detected.

[1896] Action Results

[1897] This system allows users to easily obtain and execute optimal recipes using ingredients available at home, tailored to their individual health status and lifestyle. Furthermore, by combining it with an emotion engine, the system can suggest recipes based on the user's emotional state, providing a more comfortable cooking experience. The system provides nutritionally balanced meals, reducing food waste and supporting a healthier diet.

[1898] The processing flow will be explained below.

[1899] Step 1:

[1900] The user inputs ingredients they have at home into the system. They input ingredients such as "chicken," "potatoes," and "carrots" into the input form on their device and click the "send button."

[1901] Step 2:

[1902] The terminal receives the input ingredient data and sends it to the server. The terminal then sends the input data to the server as an HTTP request.

[1903] Step 3:

[1904] The server stores the received ingredient data in the database. The server parses the request, executes the SQL query, and stores the ingredient data in the database.

[1905] Step 4:

[1906] The server searches the recipe database for matching recipes based on the stored ingredient data. The server uses an SQL query to retrieve recipes that contain the stored ingredients from the database.

[1907] Step 5:

[1908] The server generates search results (recipe list) and sends them to the device. The server returns the corresponding recipe list to the device as a JSON response.

[1909] Step 6:

[1910] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipe list.

[1911] Step 7:

[1912] The user enters information about allergies and dietary restrictions. The user enters the allergy information (e.g., "dairy allergy") into the input form on the device and clicks the "Submit" button.

[1913] Step 8:

[1914] The device receives the entered allergy information and sends it to the server. The device then sends the allergy information to the server as an HTTP request.

[1915] Step 9:

[1916] Based on the allergy information received, the server searches the recipe database for suitable alternative recipes. The server executes an SQL query to find recipes that match the allergy.

[1917] Step 10:

[1918] The server generates a list of alternative recipes and sends it to the device. The server returns the relevant alternative recipe list to the device in JSON format.

[1919] Step 11:

[1920] The device displays the received list of alternative recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select from the displayed recipes.

[1921] Step 12:

[1922] The user enters information about their health condition and nutritional intake. The user enters health information (e.g., "Vitamin D deficiency") into the input form on the device and clicks the "Submit" button.

[1923] Step 13:

[1924] The device receives the entered health information and sends it to the server. The device then sends the health information to the server as an HTTP request.

[1925] Step 14:

[1926] The server analyzes the received health information and evaluates and adjusts nutritional balance. The server evaluates nutritional balance and identifies nutrients that are lacking.

[1927] Step 15:

[1928] The server searches the recipe database for recipes that provide the necessary nutrients and generates a recipe list. The server executes an SQL query to find the relevant recipes.

[1929] Step 16:

[1930] The server sends the generated recipe list to the device, and the server returns the recipe list to the device in JSON format.

[1931] Step 17:

[1932] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1933] Step 18:

[1934] The user inputs the desired cooking time (e.g., "within 30 minutes") into the input form on the device and clicks the "Submit" button.

[1935] Step 19:

[1936] The terminal receives the input cooking time information and sends it to the server. The terminal then sends the desired cooking time to the server as an HTTP request.

[1937] Step 20:

[1938] Based on the cooking time information received by the server, the server searches the recipe database for recipes that can be cooked within the specified time. The server executes an SQL query to search for recipes that fit the cooking time.

[1939] Step 21:

[1940] The server generates the appropriate recipe list and sends it to the device. The server returns the appropriate recipe list in JSON format to the device.

[1941] Step 22:

[1942] The device displays the received recipe list to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1943] Step 23:

[1944] When a user searches for a dish, the emotion engine analyzes the user's input and voice data to recognize emotions and generate emotion data (e.g., "I'm stressed").

[1945] Step 24:

[1946] The server receives the emotion data and changes or adjusts the recipe suggestions. The server then searches for optimal recipes for the user again based on the emotion data and generates an optimal recipe list.

[1947] Step 25:

[1948] The server sends the regenerated recipe list to the device, and the server returns an appropriate recipe list in JSON format according to the emotion.

[1949] Step 26:

[1950] The device displays the received list of regenerated recipes to the user. The device parses the JSON data and displays it in the user interface. The user can select a recipe from the displayed list.

[1951] Step 27:

[1952] The server accumulates the user's past emotional data and uses it when suggesting the next recipe. The server analyzes the past data and reflects it in the next suggestion.

[1953] Step 28:

[1954] The emotion engine analyzes past data and suggests optimal recipes based on the user's preferences and trends. Emotion-based recipe suggestions improve user satisfaction.

[1955] Example 2

[1956] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1957] In today's busy lifestyles, it is important to effectively utilize limited time and resources when preparing meals at home and provide nutritionally balanced meals. Furthermore, recipes must be proposed that take into account constraints such as the health status and allergies of each household and individual, and that are also suited to the user's mental state. However, no system yet exists that can comprehensively manage these diverse factors, and conventional recipe suggestion systems have difficulty addressing the user's health and emotional state. Therefore, the present invention provides a system that solves these problems.

[1958] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes a database management means for receiving and storing input ingredient data, a recipe search means for searching for recipes from an information store based on the stored ingredient data, and a recipe presentation means for sending the corresponding recipe to a user terminal and displaying it. This includes a health information management means for receiving and storing health status information entered by the user, an alternative recipe suggestion means for searching for and presenting recipes that match allergies and nutritional status based on the health information, a nutrition management means for analyzing the stored health information and evaluating and adjusting nutritional balance, a cooking time-based recipe suggestion means for receiving desired cooking time information entered by the user and searching for and presenting recipes that can be cooked within the corresponding cooking time, an emotion recognition engine means for analyzing the user's emotional state and suggesting recipes based on the analysis, and a means for accumulating past emotion data and utilizing it for future recipe suggestions. This allows users to obtain optimal recipes based on their health and emotional state while using ingredients available at home, and prepare nutritionally balanced meals.

[1959] "Ingredient data" refers to information including the type and quantity of food that a user enters into the system.

[1960] "Database management means" refers to the function of receiving, organizing, and efficiently storing and managing input data.

[1961] "Recipe search means" refers to a function that searches an information store or database for recipes that meet specific conditions based on stored data.

[1962] The "recipe presentation means" is a function that sends the searched recipe to the user's terminal and displays it so that the user can visually check it.

[1963] "Health Information" refers to allergies, nutritional status, and other health-related information entered by users.

[1964] "Health information management means" refers to the function for receiving, storing, and managing health status information entered by the user.

[1965] "Alternative recipe suggestion means" refers to a function that searches for and suggests recipes that suit the user's allergies and nutritional status based on the user's health information.

[1966] "Nutrition management tools" refers to functions for analyzing stored health information, evaluating nutritional balance, and making necessary adjustments.

[1967] The "cooking time compatible recipe suggestion means" is a function that receives desired cooking time information input by the user, searches for and suggests recipes that can be cooked within that time.

[1968] "Emotion recognition engine means" refers to a function for analyzing user input and voice data and recognizing the user's emotional state.

[1969] "Means for accumulating past emotional data" refers to a function that saves a user's past emotional information and uses it to suggest future recipes.

[1970] This invention relates to a system that proposes optimal recipes based on household ingredients, the user's health information, cooking time, and even the user's emotions. This system consists of four main components: a user terminal, a server, a database, and an emotion engine.

[1971] First, the user enters ingredients they have at home into an input form on their device. They enter ingredients such as "chicken," "potatoes," and "carrots," and then click the "Submit" button. The entered ingredient data is received by the device, converted to JavaScript Object Notation (JSON) format, and sent to the server. The server analyzes the received ingredient data and saves it in a database. The ingredient information is systematically stored in the database and later used as basic data for recipe searches.

[1972] Next, the server searches the recipe database for matching recipes based on the ingredient data stored in the database. It uses SQL queries to retrieve recipes that match the ingredients the user has. The server then formats the search results and sends them to the device in the form of a recipe list. The device then displays the received recipe list to the user, allowing the user to check detailed cooking instructions.

[1973] If the user enters information about allergies or dietary restrictions, that information is also received by the device, converted to JSON format, and sent to the server. The server analyzes the received health information and searches for alternative recipes that meet the allergies or dietary restrictions. The searched alternative recipes are then sent back to the device and displayed to the user.

[1974] Additionally, if a user inputs information about their health condition or nutritional intake (e.g., vitamin D deficiency), the server analyzes that information, evaluates the nutritional balance, and searches for recipes with the necessary adjustments. These recipes are also sent to the device and displayed to the user.

[1975] Furthermore, if the user inputs information about the cooking time (e.g., within 30 minutes), the server searches for recipes that can be cooked within that time. If a matching recipe is found, it is sent to the terminal and displayed for the user to check.

[1976] The system is equipped with an emotion engine that analyzes input and voice data to recognize the user's emotional state when searching for recipes. For example, if the emotion engine recognizes that the user is "tired," the server will prioritize suggestions for "easy, energizing dishes." Emotional data is accumulated, and the next time a recipe is suggested, it can be based on past emotion data.

[1977] Examples:

[1978] 1. The user enters "chicken," "potatoes," and "carrots" into the input form on the device and clicks the send button.

[1979] 2. The server receives it and stores it in the database.

[1980] 3. The server searches the database for recipes such as "chicken stew" and "chicken curry" and sends them to the terminal.

[1981] 4. The user enters "dairy allergy," and the server suggests alternative recipes, such as "dairy-free chicken curry."

[1982] 5. The user types in "vitamin D deficiency" and the server suggests recipes that are high in vitamin D.

[1983] 6. The user requests a meal that can be prepared in under 30 minutes, and the server suggests a stir-fry of chicken and potatoes that can be prepared in 20 minutes.

[1984] 7. The emotion engine recognizes that the user is "tired," and the server prioritizes suggesting "easy, energizing meals."

[1985] Example prompt sentence:

[1986] "Please suggest a simple recipe using 'chicken,' 'potatoes,' and 'carrots.'"

[1987] "Please suggest some chicken recipes that are suitable for people with dairy allergies."

[1988] "Please provide recipes that are high in vitamin D."

[1989] Please suggest a recipe that can be made in 30 minutes or less.

[1990] "What recipes would you recommend for when you're tired?"

[1991] "What recipes have you enjoyed in the past when you were stressed?"

[1992] This system allows users to easily obtain optimal recipes based on their detailed health and emotional state, providing nutritionally balanced meals. Furthermore, by utilizing the emotion engine, the system can further enhance the optimal recipe suggestions based on the user's emotional state.

[1993] The flow of the identification process in the second embodiment will be described with reference to FIG.

[1994] Step 1:

[1995] The user inputs ingredients they have at home into the input form on the device. Specifically, the user inputs ingredients such as "chicken," "potatoes," and "carrots" using the keyboard and clicks the "send button." The input data is sent to the device in text format.

[1996] Input: Ingredient information (e.g. chicken, potatoes, carrots)

[1997] Output: Text data sent to the terminal

[1998] Step 2:

[1999] The device receives the input food ingredient data, converts it into JSON format, and then sends the received data to the server.

[2000] Input: Textual ingredient information

[2001] Output: Ingredient data converted to JSON format

[2002] Step 3:

[2003] The server analyzes the received JSON data and extracts the ingredient information, which is then stored in a database.

[2004] Input: JSON formatted food ingredients data

[2005] Output: Ingredient information stored in the database

[2006] Step 4:

[2007] The server searches the recipe database for matching recipes based on the ingredient data stored in the database, generates an SQL query, and retrieves the appropriate recipes based on that.

[2008] Input: Ingredient information stored in the database

[2009] Output: Searched recipe data

[2010] Step 5:

[2011] The server formats the retrieved recipe data and generates a recipe list, which is formatted for display to the user.

[2012] Input: Searched recipe data

[2013] Output: A formatted list of recipes

[2014] Step 6:

[2015] The server sends the generated recipe list to the terminal, which ...

Claims

1. a database management means for receiving and storing input food ingredient data; a recipe search means for searching a database for a recipe based on the stored ingredient data; a recipe presentation means for transmitting the corresponding recipe to a user terminal and displaying it; a health information management means for receiving and storing allergy information and nutritional status information input by a user; an alternative recipe suggestion means for searching for and presenting recipes that are suitable for allergies and nutritional status based on the health information; a nutritional management means for analyzing the stored health information and evaluating and adjusting nutritional balance; The system includes a cooking time compatible recipe suggestion means that receives desired cooking time information input by a user, searches for recipes that can be cooked within the corresponding cooking time, and presents them.

2. 2. The system according to claim 1, wherein the input ingredient data includes a list of ingredients to be used within a specific time period, and a recipe is suggested based on the list.

3. 2. The system according to claim 1, wherein the nutritional management means detects a nutrient deficiency and suggests ingredients and recipes containing the nutrient.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A