System
A system efficiently manages household food inventory and meal planning by registering inventory, family, and schedule information, using AI to propose optimal menus and generate shopping lists, thereby reducing labor and waste.
Patent Information
- Application Number
- JP2024116439
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-19
- Publication Date
- 2026-01-29
AI Technical Summary
Managing meals at home is labor-intensive and prone to food waste due to the complexity of considering multiple family members' preferences and schedules, and failure to manage food inventory leads to expiration-related economic losses and environmental impact.
A system that registers household food inventory, family information, and schedule information, uses an AI model to propose optimal menus, updates inventory, and generates shopping lists, including automatic replenishment of regularly-stocked foods.
Efficiently manages food inventory, reduces housework, and minimizes food waste by optimizing menus based on family preferences and schedules, while ensuring a continuous supply of necessary foods.
Smart Images

Figure 2026014965000001_ABST
Abstract
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] Managing meals at home requires a lot of effort and time, and is even more complicated in households with multiple family members, as each family member's preferences and schedules must be taken into consideration. Furthermore, failure to manage food inventory can result in food waste due to expiration dates, resulting in economic losses and having a negative impact on the environment. In these circumstances, there is a need for a system that can reduce household labor and efficiently and effectively manage food inventory and menu planning. [Means for solving the problem]
[0005] The present invention provides a system including a means for registering household food inventory information, a means for registering a user's family information and schedule information, a means for proposing an optimal menu based on the food inventory information, family information, and schedule information, a means for updating inventory information, and a means for generating a shopping list based on the menu. This system efficiently manages household food inventory, proposes optimal menus taking into consideration the preferences and health status of family members, and reduces food waste and housework. In addition, by including expiration date information in the food inventory information, the risk of expiration dates is reduced, and by providing a means for automatically replenishing stock of regularly-stocked foods, it is possible to always maintain a stock of necessary foods.
[0006] "Household food inventory information" refers to detailed information such as the type, quantity, purchase date, and expiration date of food held in the household.
[0007] "User's family information" refers to individual information about family meals, such as the age, gender, food preferences, and allergy information of each member of the household.
[0008] "Schedule information" refers to schedule information that affects food consumption, such as days when family members are absent, event information, and daily activity plans.
[0009] "Optimal menu" refers to a meal plan that takes nutritional balance into consideration, proposed by an AI model based on household food inventory information, family information, and schedule information.
[0010] "Means for updating inventory information" refers to a method by which a user can input food additions and consumption and keep the household food inventory information up to date based on that input.
[0011] A "shopping list" refers to a list of the foods and their quantities needed to create a menu suggested to the user. [Brief explanation of the drawings]
[0012] [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
[0013] 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.
[0014] First, the terms used in the following description will be explained.
[0015] 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).
[0016] 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.
[0017] 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.
[0018] 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.
[0019] 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."
[0020] [First embodiment]
[0021] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0022] 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.
[0023] 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).
[0024] 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.
[0025] 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.
[0026] 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.
[0027] 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.
[0028] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0029] 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.
[0030] 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.
[0031] 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.
[0032] 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."
[0033] The present invention is a system for efficiently managing home food inventory and optimizing family eating habits. The system manages home food inventory information, user family information, and schedule information, and has the function of proposing optimal menus and generating shopping lists based on the information.
[0034] The system is outlined below. Users can input and register information about food inventory in their homes using a terminal. They can also register family information such as the ages, preferences, and allergies of family members, as well as their schedules, through the terminal. This information is sent to a server, where it is managed centrally.
[0035] The server uses an AI model to propose optimal menus based on household food inventory information, family information, and schedule information sent by the user. The proposed menus are displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menus and generates a shopping list. This shopping list is also displayed on the user's device.
[0036] To give a specific example, a user registers the following food inventory information for his / her home:
[0037] Rice: 2kg
[0038] Carrots: 4 pieces
[0039] Chicken: 500g
[0040] Tofu: 3 packs
[0041] Furthermore, the user registers information such as the ages of their family members and their food preferences.
[0042] Father (40 years old): I like meat.
[0043] Mother (38 years old): Vegetarian
[0044] Child (10 years old): Nothing in particular that I dislike
[0045] Child (8 years old): No allergies
[0046] Next, the user registers schedule information. For example,
[0047] Monday: Everyone stays home
[0048] Friday: Family outing
[0049] Based on this information, the server uses an AI model to generate the optimal menu. For example,
[0050] Monday's menu: Chicken curry, vegetable soup
[0051] Friday Menu: Eating out
[0052] After the menu is generated, the server checks the inventory information and lists any missing foods. For example, if onions are needed to make chicken curry but are out of stock, it adds "2 onions" to the shopping list.
[0053] In this way, the system of the present invention can efficiently manage food inventory in the home and propose menus that take into account the preferences and health status of family members, thereby reducing food waste and reducing housework.In addition, by making it easy for users to reflect special events and schedule changes in the system, flexible food management can be achieved in real time.
[0054] The processing flow will be explained below.
[0055] Step 1:
[0056] The user inputs household food inventory information (item name, quantity, purchase date, expiration date, etc.) into the terminal. For example, "2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu."
[0057] Step 2:
[0058] The device sends the entered food inventory information to the server, which stores it in a database and manages it by linking it to the user's profile.
[0059] Step 3:
[0060] The user inputs family information (age, food preferences, allergy information, etc.) into the terminal. For example, "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[0061] Step 4:
[0062] The device sends the entered family information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0063] Step 5:
[0064] The user inputs family schedule information (events, days away, daily activities, etc.) into the terminal. For example, "Monday: everyone at home, Friday: everyone out."
[0065] Step 6:
[0066] The terminal sends the input schedule information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0067] Step 7:
[0068] The user requests a menu suggestion from the terminal, for example, a request such as "Please suggest a menu for this week."
[0069] Step 8:
[0070] The device sends the user's request to the server, which then uses the AI model to generate the optimal menu based on the request and references registered food inventory information, family information, and schedule information.
[0071] Step 9:
[0072] The server calculates a menu suggestion and sends it to the user's device, such as "chicken curry and vegetable soup on Monday, and eat out on Friday."
[0073] Step 10:
[0074] The terminal displays the generated menu to the user, who can then confirm the proposed menu.
[0075] Step 11:
[0076] The user requests the generation of a shopping list from the terminal, for example, a request such as "Please generate this week's shopping list."
[0077] Step 12:
[0078] The terminal sends the user's request to the server, which compares the generated menu with current inventory information and lists any ingredients that are in short supply.
[0079] Step 13:
[0080] The server sends the generated shopping list to the user's device, such as "two onions, one pack of curry powder, and lettuce for salad."
[0081] Step 14:
[0082] The terminal displays the generated shopping list to the user, who can then use this list to make purchases.
[0083] Through these steps, the system efficiently manages household food inventory, proposes optimal menus that take into account the preferences and health status of family members, and generates necessary shopping lists, thereby reducing the user's housework workload and reducing food waste.
[0084] Example 1
[0085] 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."
[0086] Managing food inventory at home is complicated, leading to food waste and duplicate purchases. Creating appropriate menus that take into account the preferences and allergies of each household member requires a great deal of effort. Creating shopping lists is also time-consuming, making efficient shopping difficult. A system that can solve these problems is needed.
[0087] 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.
[0088] In this invention, the server includes means for registering household food inventory information, means for registering user family information and schedule information, means for proposing an optimal menu based on the food inventory information, family information, and schedule information using a generation AI model, means for updating the inventory information, and means for generating a shopping list using prompt sentences based on the menu. This makes it possible to efficiently manage household food inventory, efficiently create menus that take into account the preferences and health status of family members, and automatically generate the necessary shopping list.
[0089] "Home food inventory information" is information about the types and amounts of food stored in the home.
[0090] "User's family information" is information about each member of the household, such as the user's family structure, age, food preferences, and allergy information.
[0091] "Schedule information" is information about the household schedule, such as whether each member of the household is at home or out on a particular day.
[0092] A "generative AI model" is a model trained using artificial intelligence to generate optimal menus based on input data.
[0093] "Means for proposing optimal menus" refers to methods and technologies for proposing optimal menus using a generative AI model based on household food inventory information, family information, and schedule information.
[0094] "Means for updating inventory information" refers to methods and techniques for immediately updating food inventory information in the home when new information is entered or changed, and maintaining the latest information.
[0095] A "prompt" is an instruction or question entered into an AI model to obtain a specific result.
[0096] A "means for generating a shopping list" is a method or technique for automatically generating a list of necessary foods and items based on a proposed menu.
[0097] This invention is a system that manages food inventory in the home, proposes optimal menus based on the user's family information and schedule information, and generates shopping lists. The main components of this system are a terminal where the user inputs information, a server that receives and analyzes the information, and a generating AI model.
[0098] First, the user inputs and registers household food inventory information on a terminal. This includes the type of food, quantity, and expiration date. For example, information such as "rice: 2 kg" or "carrots: 4" is registered. In addition, the user inputs family information such as the age, food preferences, and allergy information of each household member. For example, information such as "father (40 years old): likes meat" and "mother (38 years old): vegetarian" is registered.
[0099] Next, users enter their family schedule information through their devices, such as "Monday: everyone at home" or "Friday: everyone out and about." This information is entered through a web-based form or a mobile app.
[0100] All input information is sent from the device to the server. The server receives the data and stores it. The Python Pandas library is used to store the data. Frameworks such as Django and FastAPI are also used. Based on this data, the server uses a generative AI model to suggest the optimal menu. This AI model is trained using TensorFlow.
[0101] The server analyzes the household's food inventory information, family information, and schedule information to generate an optimal menu. For example, it might suggest "Monday's menu: chicken curry, vegetable soup." The generated menu is then displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menu. For example, if onions are needed for chicken curry but are out of stock, "2 onions" is added to the shopping list. This shopping list is also displayed on the user's device.
[0102] Specific examples of prompt sentences are shown below.
[0103] Household food inventory: ["Rice: 2kg", "Carrots: 4", "Chicken: 500g", "Tofu: 3 packs"]
[0104] Family information: ["Father (40): Likes meat", "Mother (38): Vegetarian", "Child (10): No particular dislikes", "Child (8): No allergies"]
[0105] Schedule information: ["Monday: Everyone at home", "Friday: The whole family out"]
[0106] Use this information to generate the perfect Monday meal plan and shopping list.
[0107] In this way, the system can efficiently manage food inventory in the home, suggest meals that take into account the preferences and health status of family members, and list foods that are in short supply, thereby optimizing household eating activities.
[0108] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0109] Step 1:
[0110] The user enters household food inventory information, family information, and schedule information using a web-based form on the device or a mobile app. Specifically, the user enters food inventory information such as "2 kg of rice" and "4 carrots," as well as family information and schedule information such as "Father (40 years old): likes meat" and "Monday: everyone is at home." The entered data is temporarily stored in the device's memory.
[0111] Input: Food inventory information, family information, schedule information
[0112] Output: Input data temporarily stored on the terminal
[0113] Step 2:
[0114] The device converts all information entered by the user into JSON format or similar and sends it to the server via an HTTP POST request, which passes all data to the server in one go.
[0115] Input: Input data stored on the device
[0116] Output: HTTP POST request to the server
[0117] Step 3:
[0118] The server receives the data sent from the device and stores it in a database or in-memory storage, specifically in a data frame using the Python Pandas library.
[0119] Input: JSON format data included in the HTTP POST request
[0120] Output: Food inventory information, family information, schedule information stored in the database
[0121] Step 4:
[0122] The server uses all the stored data to feed a generative AI model, which is pre-trained using TensorFlow, to generate optimal menus.
[0123] Input: Food inventory information, family information, schedule information
[0124] Output: Optimal menu output from the generative AI model
[0125] Step 5:
[0126] The server checks the current food inventory based on the menu output from the generative AI model and lists any missing items, generating a specific shopping list.
[0127] Input: Optimal menu, food inventory information
[0128] Output: A shopping list listing the missing items
[0129] Step 6:
[0130] The server converts the generated menu and shopping list into JSON format and sends it to the terminal as an HTTP response, allowing the user to receive the latest menu and shopping list.
[0131] Input: Optimal menu, list of missing items
[0132] Output: HTTP response to the device
[0133] Step 7:
[0134] The device parses the JSON data received from the server and displays it in a format that is easy for the user to understand. For example, it displays "Monday's menu: chicken curry, vegetable soup" and "Shopping list: 2 onions" on the app screen.
[0135] Input: HTTP response data from the server
[0136] Output: Optimized menu and shopping list displayed on the user's device
[0137] (Application example 1)
[0138] 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."
[0139] Conventional home food management systems propose menus that take into account food inventory information, family preferences, and schedules, but they still face challenges in further reducing housework and food waste. Furthermore, they lack the functionality to automatically order ingredients needed for the proposed menus from a food supply service, requiring users to go shopping in person, which is time-consuming and labor-intensive. This creates challenges in improving the efficiency of food inventory management and shopping.
[0140] 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.
[0141] In this invention, the server includes means for registering household food inventory information, means for registering family information and schedule information, means for proposing an optimal menu based on the food inventory information, family information and schedule information, means for updating the inventory information, and means for generating a shopping list based on the menu and automatically ordering from a food supply service. This allows users to efficiently manage food inventory in their homes and automatically order necessary ingredients from a food supply service, thereby reducing housework and food waste.
[0142] "Home food inventory information" is detailed information such as the type, quantity, and expiration date of food stored in the home.
[0143] "User's family information" is detailed information such as the user's family structure, age, food preferences, and allergy information.
[0144] "Schedule information" is time management information such as family plans and events.
[0145] The "means for proposing the optimal menu" is a technical means for generating the optimal meal menu useful for the family based on the information input by the user.
[0146] "Means for updating inventory information" refers to technical means for keeping the status of food used or purchased by the user up to date at all times.
[0147] The "means for generating a shopping list and automatically ordering from a supply service" refers to a technical means for listing the food items needed and automatically sending them to a supply service.
[0148] A "supply service" is an external service that receives a user's order and delivers the required food.
[0149] The present invention provides a system for efficiently managing food inventory in a home and optimizing the eating habits of a user and his / her family. Specific embodiments of the system are described below.
[0150] The system provides a terminal that can register food inventory information, family information, and schedule information for the home. The user can use this terminal to input the following information:
[0151] Food inventory information (e.g., quantity and expiration date of rice, carrots, chicken, tofu, etc.)
[0152] Family information (e.g., age, food preferences, allergies)
[0153] Schedule information (e.g., days when all family members are at home, days when they are out)
[0154] This information is sent in real time to a cloud server for centralized management. The server uses an AI model to generate optimal menus based on the received food inventory information, family information, and schedule information. The AI model uses a generative AI model to propose menus that take the user's specific requirements into account.
[0155] The menu created by the server is displayed on the user's device. Furthermore, the server creates a shopping list by listing any missing foods based on the created menu. The server also provides a means to automatically order food by linking with a food supply service, allowing users to easily obtain the necessary foods.
[0156] The system hardware includes a smartphone or tablet for users to input information, and uses cloud servers such as AWS (Amazon Web Services) and Google Cloud as the cloud environment for executing processing.
[0157] The software includes:
[0158] Flask: Implementing API endpoints using a Python-based web framework
[0159] requests: Used to call the API of the provided service
[0160] Generative AI model: Generates optimal menus based on household food inventory, family information, and schedule information
[0161] Examples:
[0162] The user uses a smartphone to enter the following information:
[0163] 1. Food inventory information:
[0164] Rice: 2kg
[0165] Carrots: 4
[0166] Chicken: 500g
[0167] Tofu: 3 packs
[0168] 2. Family Information:
[0169] Father (40 years old): I like meat.
[0170] Mother (38 years old): Vegetarian
[0171] Child (10 years old): Nothing in particular that I dislike
[0172] Child (8 years old): No allergies
[0173] 3. Schedule Information:
[0174] Monday: Everyone stays home
[0175] Friday: Family outing
[0176] Example prompt sentence:
[0177] "Food inventory registered by the user: 'Rice: 2kg', 'Carrots: 4', 'Chicken: 500g', 'Tofu: 3 packs' Family information registered by the user: 'Father (40): Likes meat', 'Mother (38): Vegetarian', 'Child (10): No particular dislikes', 'Child (8): No allergies' Schedule information registered by the user: 'Monday: Everyone at home', 'Friday: Whole family out' Please generate Python code that will suggest the optimal menu based on this and automatically order any missing ingredients from a supply service."
[0178] This allows users to easily receive optimal meal plans and the necessary ingredients from the comfort of their own home, reducing housework and food waste.
[0179] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0180] Step 1: The user uses the terminal to input food inventory information, family information, and schedule information for the home.
[0181] Input: household food inventory information, family information, schedule information
[0182] How it works: A user uses a smartphone or tablet to enter food inventory information, family information, and schedule information into a dedicated application. Specifically, the user enters food type (e.g., rice, carrots, chicken, tofu, etc.), quantity, expiration date, family member ages, food preferences, allergy information, and family schedule information.
[0183] Output: The input information is stored in the terminal.
[0184] Step 2: The user's device sends the entered information to the server.
[0185] Input: Food inventory information, family information, schedule information stored on the device
[0186] Operation: The user's terminal transmits the entered data to the server via the Internet.
[0187] Output: Food inventory information, family information, and schedule information are stored on the server.
[0188] Step 3: Based on the information received by the server, the AI model is used to generate an optimal menu.
[0189] Input: Food inventory information, family information, schedule information stored on the server
[0190] How it works: The server inputs food inventory information, family information, and schedule information into the AI model to generate the optimal menu. The generative AI model calculates the appropriate menu and selects the menu that best suits the user's household situation.
[0191] Output: The optimal menu is generated and stored on the server.
[0192] Step 4: The server sends the generated menu to the user's terminal.
[0193] Input: Generated menu information
[0194] Operation: The server sends the generated menu to the user's device, where the user can view the suggested menu through the device's application.
[0195] Output: The menu information is displayed on the user's device.
[0196] Step 5: The server generates a shopping list based on the generated menu, listing any missing foods.
[0197] Input: Generated menu information, food inventory information
[0198] Operation: The server compares the menu created by the server with the current food inventory information to identify any missing ingredients. Specifically, it compares the ingredients needed for the menu with the inventory information and lists the missing ingredients.
[0199] Output: A shopping list of missing ingredients is generated.
[0200] Step 6: The server automatically places an order with the supply service based on the generated shopping list.
[0201] Input: Shopping list
[0202] How it works: The server calls the delivery service API to order the required food items based on the generated shopping list. The delivery service receives the order and arranges for the delivery of the ingredients to the user's address.
[0203] Output: An order is placed with the supply service and the required ingredients are delivered.
[0204] 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.
[0205] This invention combines an emotion engine with a system for efficiently managing home food inventory and optimizing family eating habits. The system manages home food inventory information, user family information, and schedule information, and based on this information, suggests optimal menus and generates shopping lists, while also recognizing the user's emotional state and adjusting the suggestions accordingly.
[0206] The system is outlined below. Users can input and register information about food inventory in their homes using a terminal. They can also register family information such as the ages, preferences, and allergies of family members, as well as their schedules, through the terminal. This information is sent to a server, where it is managed centrally.
[0207] The server uses an AI model to propose optimal menus based on household food inventory information, family information, and schedule information sent by the user. The proposed menus are displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menus and generates a shopping list. This shopping list is also displayed on the user's device.
[0208] The system also incorporates an emotion engine that can recognize the user's emotional state. The emotion engine analyzes emotions from the user's facial expressions, tone of voice, input text, etc., to identify the user's current emotional state.
[0209] To give a specific example, a user registers the following food inventory information for his / her home:
[0210] Rice: 2kg
[0211] Carrots: 4 pieces
[0212] Chicken: 500g
[0213] Tofu: 3 packs
[0214] Furthermore, the user registers information such as the ages of their family members and their food preferences.
[0215] Father (40 years old): I like meat.
[0216] Mother (38 years old): Vegetarian
[0217] Child (10 years old): Nothing in particular that I dislike
[0218] Child (8 years old): No allergies
[0219] Next, the user registers schedule information. For example,
[0220] Monday: Everyone stays home
[0221] Friday: Family outing
[0222] Based on this information, the server uses an AI model to generate the optimal menu. For example,
[0223] Monday's menu: Chicken curry, vegetable soup
[0224] Friday Menu: Eating out
[0225] After the menu is generated, the server checks the inventory information and lists any missing foods. For example, if onions are needed to make chicken curry but are out of stock, it adds "2 onions" to the shopping list.
[0226] If the user is feeling stressed, the emotion engine can detect this and suggest simple, quick meals or their favorite dishes. If the user is in a happy mood, it can offer special recipes or ideas for new challenges. In this way, the emotion engine can adjust its suggestions based on the user's situation and emotional state.
[0227] For example, if the user is detected as being stressed:
[0228] Suggested menu: Easy stir-fry and pasta
[0229] Also, if the user is detected as having fun:
[0230] Suggested meals: authentic dinners and new recipes
[0231] In this way, the system of the present invention efficiently manages food inventory in the home and suggests menus that take into account the preferences and health status of family members, while the emotion engine adjusts the suggestions to suit the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[0232] In addition, the emotion engine collects and analyzes information from multiple data sources, enabling more accurate emotion recognition, ensuring users always receive a meal plan optimized for their condition.
[0233] The processing flow will be explained below.
[0234] Step 1:
[0235] The user inputs household food inventory information (item name, quantity, purchase date, expiration date, etc.) into the terminal. For example, "2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu."
[0236] Step 2:
[0237] The device sends the entered food inventory information to the server, which stores it in a database and manages it by linking it to the user's profile.
[0238] Step 3:
[0239] The user inputs family information (age, food preferences, allergy information, etc.) into the terminal. For example, "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[0240] Step 4:
[0241] The device sends the entered family information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0242] Step 5:
[0243] The user inputs family schedule information (events, days away, daily activities, etc.) into the terminal. For example, "Monday: everyone at home, Friday: everyone out."
[0244] Step 6:
[0245] The terminal sends the input schedule information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0246] Step 7:
[0247] The user inputs emotion information for the emotion engine from the terminal or automatically acquires it, for example, by showing facial expressions in front of the terminal camera or by analyzing the tone of voice.
[0248] Step 8:
[0249] The device acquires emotion information and sends it to the server, which uses an emotion engine to analyze and recognize the user's emotional state.
[0250] Step 9:
[0251] The user requests a menu suggestion from the terminal, for example, a request such as "Please suggest a menu for this week."
[0252] Step 10:
[0253] The device sends the user's request to the server, which then uses the AI model and emotion engine to generate the optimal menu based on the received request and referring to registered food inventory information, family information, schedule information, and emotion information.
[0254] Step 11:
[0255] The server calculates the suggested menu and sends it to the user's device. For example, "Chicken curry and vegetable soup on Monday, and eat out on Friday." If the user's emotional state is stressed, simple dishes are suggested.
[0256] Step 12:
[0257] The terminal displays the generated menu to the user, who can then confirm the proposed menu.
[0258] Step 13:
[0259] The user requests the generation of a shopping list from the terminal, for example, a request such as "Please generate this week's shopping list."
[0260] Step 14:
[0261] The terminal sends the user's request to the server, which compares the generated menu with current inventory information and lists any ingredients that are in short supply.
[0262] Step 15:
[0263] The server sends the generated shopping list to the user's device, such as "two onions, one pack of curry powder, and lettuce for salad."
[0264] Step 16:
[0265] The terminal displays the generated shopping list to the user, who can then use this list to make purchases.
[0266] Through these steps, the system efficiently manages household food inventory, proposes optimal menus that take into account the preferences and health status of family members, generates necessary shopping lists, and responds according to the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[0267] Example 2
[0268] 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."
[0269] Managing food inventory at home is a tedious and time-consuming task for many families, and it is particularly challenging to propose menus based on family members' food preferences and schedules. Furthermore, a system that takes into account the user's emotional state can affect meal preparation is required. Furthermore, reducing food waste and easing the household chore burden on users are major challenges in modern society.
[0270] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for registering food inventory information for the home, a means for registering family composition information and schedule information for the user, a means for proposing an optimal menu based on the food inventory information, family composition information, and schedule information, a means for updating the inventory information, a means for generating a shopping list based on the menu, and a means for recognizing the user's emotional state and adjusting the suggested content. This makes it possible to efficiently manage food inventory in the home and to propose an optimal menu based on the family's preferences, health status, schedule, and even the user's emotional state.
[0271] "Home food inventory information" is information about the types, quantities, and expiration dates of food items held in the home.
[0272] "Family composition information" is information about the individual characteristics of each member of the household, such as age, sex, food preferences, and allergy information.
[0273] "Schedule information" is information about the plans and activities of each member of the household.
[0274] The "means for proposing the optimal menu" is a means for automatically generating and proposing meal menus suitable for each member of the household based on information on food inventory, family composition, and schedule information.
[0275] The "means for updating inventory information" refers to a means for automatically updating food inventory information and maintaining the latest inventory status each time food is consumed in the household.
[0276] The "means for generating a shopping list" is a means for identifying missing foods based on the proposed menu and automatically creating a list of necessary purchase items.
[0277] "Means for recognizing the user's emotional state and adjusting the content of suggestions" refers to means for analyzing the user's facial expression, tone of voice, input text, etc., to identify the user's current emotional state, and adjust menu suggestions and shopping list contents based on that.
[0278] This invention combines an emotion engine with a system for efficiently managing food inventory in the home and optimizing the family's diet. The system manages information on the home's food inventory, the user's family composition, and schedule information, and based on this information, suggests optimal menus and generates shopping lists. It also has the ability to recognize the user's emotional state and adjust the suggestions accordingly.
[0279] Users can register by entering the following information using a device such as a smartphone or computer:
[0280] Household food inventory information (e.g., "2 kg rice, 4 carrots, 500 g chicken, 3 packs of tofu").
[0281] Family composition information (e.g., "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): no particular dislikes, Child (8 years old): no allergies").
[0282] Schedule information (e.g., "Monday: Everyone at home, Friday: Whole family out").
[0283] The device sends this information to a server, which then centrally manages this information using a database such as MySQL or PostgreSQL.
[0284] The system's server uses an AI model to suggest optimal menus based on household food inventory information, family composition information, and schedule information sent by the user. For example, it might suggest "chicken curry and vegetable soup" for Monday's menu and "eating out" for Friday's menu. The generated menu information is sent to the device via an HTTP response, and the device displays the menu to the user through the app.
[0285] The server also checks food inventory information, lists any missing foods, and generates a shopping list. The shopping list is also sent to the device via an HTTP response, and the user can check the shopping list on the app. For example, if "2 onions" are missing when creating a chicken curry menu, "2 onions" will be added to the shopping list.
[0286] Furthermore, the system incorporates an emotion engine that analyzes the user's facial expressions, tone of voice, and input text to identify their current emotional state. The server then adjusts its suggestions based on this emotional state. For example, if it recognizes that the user is stressed, it will suggest simple meals with short cooking times, while if the user appears happy, it will suggest authentic dinners or new recipes.
[0287] Here is an example prompt:
[0288] "We have rice, carrots, chicken, and tofu in stock. Everyone will be at home on Monday, so please suggest a meal using these ingredients."
[0289] "My father (age 40) likes meat, and my mother (age 38) is a vegetarian. Can you suggest a dinner menu that will suit everyone's tastes?"
[0290] In this way, the system of the present invention efficiently manages food inventory in the home, suggests menus that take into account the preferences and health status of family members, and adjusts suggestions to adapt to the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[0291] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0292] Step 1:
[0293] The user inputs food inventory information into the terminal.
[0294] Specifically, the user opens the app on their smartphone or computer and enters "2kg of rice, 4 carrots, 500g of chicken, 3 packs of tofu" into the text input field.
[0295] Input: Home food inventory information.
[0296] Output: Food inventory information stored as temporary data on the device.
[0297] Step 2:
[0298] The user inputs family composition information into the terminal.
[0299] Specifically, the user enters the following information into the app's input form: "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[0300] Input: Family composition information.
[0301] Output: Family composition information stored as temporary data on the device.
[0302] Step 3:
[0303] The user inputs schedule information into the terminal.
[0304] Specifically, the user enters "Monday: everyone at home, Friday: everyone out" into the app's schedule field.
[0305] Input: Family schedule information.
[0306] Output: Schedule information saved as temporary data in the device.
[0307] Step 4:
[0308] The terminal sends the input information to the server.
[0309] Specifically, the terminal uses an HTTP request to send the food inventory information, family composition information, and schedule information entered by the user to the server.
[0310] Input: Food inventory information, family composition information, and schedule information stored on the device.
[0311] Output: Various information sent to the server.
[0312] Step 5:
[0313] The server stores the data in a database and manages it centrally.
[0314] Specifically, the server stores the received information in a database such as MySQL or PostgreSQL.
[0315] Input: Food inventory information, family composition information, and schedule information received by the server.
[0316] Output: Various information stored in the database.
[0317] Step 6:
[0318] The server generates the menu using an AI model.
[0319] Specifically, the server retrieves information from the database and queries the AI model to generate the optimal menu, such as "suggest chicken curry and vegetable soup on Mondays."
[0320] Input: Food inventory information, family composition information, and schedule information stored in the database.
[0321] Output: The generated menu information.
[0322] Step 7:
[0323] The server sends the generated menu to the terminal.
[0324] Specifically, the server uses an HTTP response to send the generated menu information to the terminal.
[0325] Input: Generated menu information.
[0326] Output: Menu information sent to the device.
[0327] Step 8:
[0328] The terminal displays the menu to the user.
[0329] Specifically, the device displays the menu information it receives on the user interface, allowing the user to check the suggested menu on the app.
[0330] Input: Menu information sent to the device.
[0331] Output: The menu information displayed to the user.
[0332] Step 9:
[0333] The server lists the foods that are in short supply based on the inventory information and generates a shopping list.
[0334] Specifically, the server checks food inventory information, identifies any missing items, and generates a shopping list. For example, if there are no onions needed for chicken curry, "2 onions" will be added to the shopping list.
[0335] Input: Food inventory information, generated menu information.
[0336] Output: The generated shopping list.
[0337] Step 10:
[0338] The server sends the shopping list to the terminal.
[0339] Specifically, the server uses the HTTP response to send the generated shopping list to the terminal.
[0340] Input: The generated shopping list.
[0341] Output: Shopping list sent to the device.
[0342] Step 11:
[0343] The terminal displays the shopping list to the user.
[0344] Specifically, the device displays the received shopping list on the user interface, allowing the user to check the shopping list on the app.
[0345] Input: Shopping list sent to the device.
[0346] Output: The shopping list displayed to the user.
[0347] Step 12:
[0348] The server uses an emotion engine to recognize the user's emotional state.
[0349] Specifically, the server uses an emotion engine to analyze the user's facial expressions, tone of voice, input text, etc. to identify their emotional state. For example, it may recognize that the user is feeling stressed.
[0350] Input: User facial expressions, tone of voice, and input text.
[0351] Output: Identified emotional state.
[0352] Step 13:
[0353] The server adjusts the suggestions based on the emotional state.
[0354] Specifically, the server tailors its suggestions based on the emotional state it identifies, for example, suggesting easy-to-make meals if you're feeling stressed.
[0355] Input: Identified emotional state.
[0356] Output: Adjusted menu information.
[0357] Step 14:
[0358] The terminal displays the adjusted menu to the user.
[0359] Specifically, the device displays the adjusted menu information on the user interface, and the user can check the adjusted menu on the app.
[0360] Input: Adjusted menu information.
[0361] Output: The adjusted menu information displayed to the user.
[0362] (Application example 2)
[0363] 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."
[0364] Conventional food inventory management systems propose optimal menus by taking into account household food inventory information, family food preferences, and schedule information, but they were unable to consider the user's emotional state, meaning they were unable to propose optimal meals according to the user's situation. Furthermore, there was no mechanism to automatically order the necessary ingredients from the proposals in conjunction with a delivery service, which meant that the systems lacked convenience. This meant that users had to go through the extra effort of purchasing ingredients, making it difficult to reduce food waste.
[0365] 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 means for registering household ingredient inventory information, means for registering the user's family information and schedule information, means for proposing an optimal menu based on the ingredient inventory information, family information, and schedule information, means for updating the inventory information, means for generating a shopping list based on the menu, means for recognizing the user's emotional state and adjusting the content of the suggestions, and means for ordering the suggested ingredients in cooperation with a delivery service. This makes it possible to make meal suggestions optimized for the user's emotional state and automatically order the necessary ingredients all at once.
[0366] "Home food inventory information"
[0367] This is information about the types, quantities, and expiration dates of food ingredients currently stored in the home.
[0368] "User's family information"
[0369] This refers to individual dietary information for each member of the household, such as age, food preferences, and allergies.
[0370] "Schedule Information"
[0371] This is information that reflects the weekly and monthly schedules of each member of the household, including meal times and whether or not they go out.
[0372] "menu"
[0373] This refers to the menu and cooking plans for the meals you plan to prepare at home.
[0374] "Update inventory information"
[0375] refers to the activity of changing or amending the current food inventory in the home to keep it up to date.
[0376] "Purchase List"
[0377] is a list of ingredients that are in short supply based on a menu, and includes information on ingredients that should be purchased.
[0378] "Recognition of emotional states"
[0379] This is the process of detecting a user's current emotional and mental state by analyzing their facial expressions, tone of voice, text input, etc.
[0380] "Adjusting the proposal content"
[0381] This refers to optimizing the content provided, such as menus and operation methods, according to the user's recognized emotional state.
[0382] "Collaboration with delivery services"
[0383] This refers to the ability to link with a service that actually orders and delivers ingredients based on the generated shopping list.
[0384] The present invention provides a system that manages household food inventory, family information, and schedule information, suggests optimal menus based on the user's emotional state, and automatically orders the necessary ingredients in cooperation with a delivery service.
[0385] The system includes the following main components:
[0386] 1. Food Inventory Management Module: Registers and manages food inventory information within the home. Specifically, it records data such as the type, quantity, and expiration date of food ingredients. The user inputs food information into the interface using a smartphone.
[0387] 2. Family Information Management Module: Registers and manages the age, food preferences, allergy information, etc. of each family member, providing basic data for providing optimal menus for each family member.
[0388] 3. Schedule Management Module: Register and manage the weekly and monthly schedules of each household member. For example, adjust the daily meal plan based on the days when the family will be working or going out.
[0389] 4. Emotion Recognition Module: Analyzes facial expressions, tone of voice, text input, etc. to recognize the user's current emotional state. This module collects user data via the camera and microphone and analyzes emotions using sensors and image processing software.
[0390] 5. Menu suggestion module: Equipped with a generative AI model to generate optimal menus based on ingredient inventory information, family information, and schedule information. By taking into account data from the emotion recognition module, it provides meal plans optimized for the user's situation.
[0391] 6. Purchasing list generation module: Based on the proposed menu, it lists the ingredients that are missing and generates a purchasing list. The generated purchasing list is displayed to the user, who can check and edit it.
[0392] 7. Delivery Integration Module: Automatically sends food orders to partner delivery services based on the purchase list. This module integrates with an external delivery API to process orders and manage their progress.
[0393] Here are some concrete examples:
[0394] If the user is busy or stressed, the emotion recognition module detects this and suggests easy-to-make meals (e.g., vegetable salad, frozen pizza). Missing ingredients (e.g., lettuce, tomato, pizza) are added to the shopping list and automatically ordered through the delivery integration module.
[0395] Additionally, when the user is in a fun mood, the app will suggest authentic meals (e.g., homemade pizza, specialty pasta) and order ingredients to create a special dining experience.
[0396] To illustrate this, here are some examples of prompts for a generative AI model:
[0397] Household food inventory: 2kg rice, 4 carrots, 500g chicken, 3 packs of tofu
[0398] Family information: Father 40 years old, loves meat, Mother 38 years old, vegetarian, Child 10 years old, no particular dislikes, Child 8 years old, no allergies
[0399] Schedule information: Monday everyone at home, Friday everyone out
[0400] User's emotional state: Stress
[0401] Generate the perfect menu.
[0402] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0403] Step 1:
[0404] The user uses a smartphone to input information about the household's food inventory, family information, and schedule. The input data is sent to the server and recorded. This allows the server to grasp the latest information about the household's food inventory, family food preferences and allergies, and schedules.
[0405] Input: Food inventory information, family information, schedule information
[0406] Output: Information stored in the database
[0407] Step 2:
[0408] The server uses a generative AI model to generate optimal menus based on ingredient inventory information, family information, and schedule information, and uses user input data as prompts to run the AI model and suggest menus.
[0409] Input: Food inventory information, family information, schedule information
[0410] Example prompt: "Household food inventory information: 2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu. Family information: Father, 40 years old, likes meat; Mother, 38 years old, vegetarian; Child, 10 years old, has no particular dislikes; Child, 8 years old, has no allergies. Schedule information: Monday, everyone is at home; Friday, everyone is out. User's emotional state: stressed. Please generate the optimal menu."
[0411] Output: Generated menu
[0412] Step 3:
[0413] The server analyzes the user's emotional state using an emotion recognition module. It identifies the user's emotional state based on facial expressions and tone of voice data provided by the user through the smartphone's camera and microphone. This determination is made using sensors and image processing software.
[0414] Input: User's facial expression data, voice data
[0415] Output: User's emotional state
[0416] Step 4:
[0417] The server fine-tunes the generated menu based on the user's emotional state. Taking into account the emotional state obtained from the emotion recognition module, the server provides a meal plan that is optimal for the user's mental state. For example, if the user is feeling stressed, the server will suggest a simple menu that can be prepared quickly.
[0418] Input: Generated menu, user's emotional state
[0419] Output: Adjusted menu
[0420] Step 5:
[0421] The server generates a purchasing list based on the adjusted menu, listing any missing ingredients. This purchasing list is displayed on the user's device. The user can view and edit this list.
[0422] Input: Adjusted menu, ingredient inventory information
[0423] Output: Purchasing list
[0424] Step 6:
[0425] The server connects with the delivery service based on the generated shopping list and automatically orders the necessary ingredients. It also uses an external delivery API to send order information and manage delivery status.
[0426] Input: Purchasing List
[0427] Output: Delivery order information, delivery status confirmation
[0428] 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.
[0429] 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.
[0430] 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.
[0431] [Second embodiment]
[0432] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0433] 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.
[0434] 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).
[0435] 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.
[0436] 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.
[0437] 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).
[0438] 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.
[0439] 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.
[0440] 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.
[0441] 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.
[0442] 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.
[0443] 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."
[0444] The present invention is a system for efficiently managing home food inventory and optimizing family eating habits. The system manages home food inventory information, user family information, and schedule information, and has the function of proposing optimal menus and generating shopping lists based on the information.
[0445] The system is outlined below. Users can input and register information about food inventory in their homes using a terminal. They can also register family information such as the ages, preferences, and allergies of family members, as well as their schedules, through the terminal. This information is sent to a server, where it is managed centrally.
[0446] The server uses an AI model to propose optimal menus based on household food inventory information, family information, and schedule information sent by the user. The proposed menus are displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menus and generates a shopping list. This shopping list is also displayed on the user's device.
[0447] To give a specific example, a user registers the following food inventory information for his / her home:
[0448] Rice: 2kg
[0449] Carrots: 4 pieces
[0450] Chicken: 500g
[0451] Tofu: 3 packs
[0452] Furthermore, the user registers information such as the ages of their family members and their food preferences.
[0453] Father (40 years old): I like meat.
[0454] Mother (38 years old): Vegetarian
[0455] Child (10 years old): Nothing in particular that I dislike
[0456] Child (8 years old): No allergies
[0457] Next, the user registers schedule information. For example,
[0458] Monday: Everyone stays home
[0459] Friday: Family outing
[0460] Based on this information, the server uses an AI model to generate the optimal menu. For example,
[0461] Monday's menu: Chicken curry, vegetable soup
[0462] Friday Menu: Eating out
[0463] After the menu is generated, the server checks the inventory information and lists any missing foods. For example, if onions are needed to make chicken curry but are out of stock, it adds "2 onions" to the shopping list.
[0464] In this way, the system of the present invention can efficiently manage food inventory in the home and propose menus that take into account the preferences and health status of family members, thereby reducing food waste and reducing housework.In addition, by making it easy for users to reflect special events and schedule changes in the system, flexible food management can be achieved in real time.
[0465] The processing flow will be explained below.
[0466] Step 1:
[0467] The user inputs household food inventory information (item name, quantity, purchase date, expiration date, etc.) into the terminal. For example, "2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu."
[0468] Step 2:
[0469] The device sends the entered food inventory information to the server, which stores it in a database and manages it by linking it to the user's profile.
[0470] Step 3:
[0471] The user inputs family information (age, food preferences, allergy information, etc.) into the terminal. For example, "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[0472] Step 4:
[0473] The device sends the entered family information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0474] Step 5:
[0475] The user inputs family schedule information (events, days away, daily activities, etc.) into the terminal. For example, "Monday: everyone at home, Friday: everyone out."
[0476] Step 6:
[0477] The terminal sends the input schedule information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0478] Step 7:
[0479] The user requests a menu suggestion from the terminal, for example, a request such as "Please suggest a menu for this week."
[0480] Step 8:
[0481] The device sends the user's request to the server, which then uses the AI model to generate the optimal menu based on the request and references registered food inventory information, family information, and schedule information.
[0482] Step 9:
[0483] The server calculates a menu suggestion and sends it to the user's device, such as "chicken curry and vegetable soup on Monday, and eat out on Friday."
[0484] Step 10:
[0485] The terminal displays the generated menu to the user, who can then confirm the proposed menu.
[0486] Step 11:
[0487] The user requests the generation of a shopping list from the terminal, for example, a request such as "Please generate this week's shopping list."
[0488] Step 12:
[0489] The terminal sends the user's request to the server, which compares the generated menu with current inventory information and lists any ingredients that are in short supply.
[0490] Step 13:
[0491] The server sends the generated shopping list to the user's device, such as "two onions, one pack of curry powder, and lettuce for salad."
[0492] Step 14:
[0493] The terminal displays the generated shopping list to the user, who can then use this list to make purchases.
[0494] Through these steps, the system efficiently manages household food inventory, proposes optimal menus that take into account the preferences and health status of family members, and generates necessary shopping lists, thereby reducing the user's housework workload and reducing food waste.
[0495] Example 1
[0496] 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."
[0497] Managing food inventory at home is complicated, leading to food waste and duplicate purchases. Creating appropriate menus that take into account the preferences and allergies of each household member requires a great deal of effort. Creating shopping lists is also time-consuming, making efficient shopping difficult. A system that can solve these problems is needed.
[0498] 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.
[0499] In this invention, the server includes means for registering household food inventory information, means for registering user family information and schedule information, means for proposing an optimal menu based on the food inventory information, family information, and schedule information using a generation AI model, means for updating the inventory information, and means for generating a shopping list using prompt sentences based on the menu. This makes it possible to efficiently manage household food inventory, efficiently create menus that take into account the preferences and health status of family members, and automatically generate the necessary shopping list.
[0500] "Home food inventory information" is information about the types and amounts of food stored in the home.
[0501] "User's family information" is information about each member of the household, such as the user's family structure, age, food preferences, and allergy information.
[0502] "Schedule information" is information about the household schedule, such as whether each member of the household is at home or out on a particular day.
[0503] A "generative AI model" is a model trained using artificial intelligence to generate optimal menus based on input data.
[0504] "Means for proposing optimal menus" refers to methods and technologies for proposing optimal menus using a generative AI model based on household food inventory information, family information, and schedule information.
[0505] "Means for updating inventory information" refers to methods and techniques for immediately updating food inventory information in the home when new information is entered or changed, and maintaining the latest information.
[0506] A "prompt" is an instruction or question entered into an AI model to obtain a specific result.
[0507] A "means for generating a shopping list" is a method or technique for automatically generating a list of necessary foods and items based on a proposed menu.
[0508] This invention is a system that manages food inventory in the home, proposes optimal menus based on the user's family information and schedule information, and generates shopping lists. The main components of this system are a terminal where the user inputs information, a server that receives and analyzes the information, and a generating AI model.
[0509] First, the user inputs and registers household food inventory information on a terminal. This includes the type of food, quantity, and expiration date. For example, information such as "rice: 2 kg" or "carrots: 4" is registered. In addition, the user inputs family information such as the age, food preferences, and allergy information of each household member. For example, information such as "father (40 years old): likes meat" and "mother (38 years old): vegetarian" is registered.
[0510] Next, users enter their family schedule information through their devices, such as "Monday: everyone at home" or "Friday: everyone out and about." This information is entered through a web-based form or a mobile app.
[0511] All input information is sent from the device to the server. The server receives the data and stores it. The Python Pandas library is used to store the data. Frameworks such as Django and FastAPI are also used. Based on this data, the server uses a generative AI model to suggest the optimal menu. This AI model is trained using TensorFlow.
[0512] The server analyzes the household's food inventory information, family information, and schedule information to generate an optimal menu. For example, it might suggest "Monday's menu: chicken curry, vegetable soup." The generated menu is then displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menu. For example, if onions are needed for chicken curry but are out of stock, "2 onions" is added to the shopping list. This shopping list is also displayed on the user's device.
[0513] Specific examples of prompt sentences are shown below.
[0514] Household food inventory: ["Rice: 2kg", "Carrots: 4", "Chicken: 500g", "Tofu: 3 packs"]
[0515] Family information: ["Father (40): Likes meat", "Mother (38): Vegetarian", "Child (10): No particular dislikes", "Child (8): No allergies"]
[0516] Schedule information: ["Monday: Everyone at home", "Friday: The whole family out"]
[0517] Use this information to generate the perfect Monday meal plan and shopping list.
[0518] In this way, the system can efficiently manage food inventory in the home, suggest meals that take into account the preferences and health status of family members, and list foods that are in short supply, thereby optimizing household eating activities.
[0519] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0520] Step 1:
[0521] The user enters household food inventory information, family information, and schedule information using a web-based form on the device or a mobile app. Specifically, the user enters food inventory information such as "2 kg of rice" and "4 carrots," as well as family information and schedule information such as "Father (40 years old): likes meat" and "Monday: everyone is at home." The entered data is temporarily stored in the device's memory.
[0522] Input: Food inventory information, family information, schedule information
[0523] Output: Input data temporarily stored on the terminal
[0524] Step 2:
[0525] The device converts all information entered by the user into JSON format or similar and sends it to the server via an HTTP POST request, which passes all data to the server in one go.
[0526] Input: Input data stored on the device
[0527] Output: HTTP POST request to the server
[0528] Step 3:
[0529] The server receives the data sent from the device and stores it in a database or in-memory storage, specifically in a data frame using the Python Pandas library.
[0530] Input: JSON format data included in the HTTP POST request
[0531] Output: Food inventory information, family information, schedule information stored in the database
[0532] Step 4:
[0533] The server uses all the stored data to feed a generative AI model, which is pre-trained using TensorFlow, to generate optimal menus.
[0534] Input: Food inventory information, family information, schedule information
[0535] Output: Optimal menu output from the generative AI model
[0536] Step 5:
[0537] The server checks the current food inventory based on the menu output from the generative AI model and lists any missing items, generating a specific shopping list.
[0538] Input: Optimal menu, food inventory information
[0539] Output: A shopping list listing the missing items
[0540] Step 6:
[0541] The server converts the generated menu and shopping list into JSON format and sends it to the terminal as an HTTP response, allowing the user to receive the latest menu and shopping list.
[0542] Input: Optimal menu, list of missing items
[0543] Output: HTTP response to the device
[0544] Step 7:
[0545] The device parses the JSON data received from the server and displays it in a format that is easy for the user to understand. For example, it displays "Monday's menu: chicken curry, vegetable soup" and "Shopping list: 2 onions" on the app screen.
[0546] Input: HTTP response data from the server
[0547] Output: Optimized menu and shopping list displayed on the user's device
[0548] (Application example 1)
[0549] 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."
[0550] Conventional home food management systems propose menus that take into account food inventory information, family preferences, and schedules, but they still face challenges in further reducing housework and food waste. Furthermore, they lack the functionality to automatically order ingredients needed for the proposed menus from a food supply service, requiring users to go shopping in person, which is time-consuming and labor-intensive. This creates challenges in improving the efficiency of food inventory management and shopping.
[0551] 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.
[0552] In this invention, the server includes means for registering household food inventory information, means for registering family information and schedule information, means for proposing an optimal menu based on the food inventory information, family information and schedule information, means for updating the inventory information, and means for generating a shopping list based on the menu and automatically ordering from a food supply service. This allows users to efficiently manage food inventory in their homes and automatically order necessary ingredients from a food supply service, thereby reducing housework and food waste.
[0553] "Home food inventory information" is detailed information such as the type, quantity, and expiration date of food stored in the home.
[0554] "User's family information" is detailed information such as the user's family structure, age, food preferences, and allergy information.
[0555] "Schedule information" is time management information such as family plans and events.
[0556] The "means for proposing the optimal menu" is a technical means for generating the optimal meal menu useful for the family based on the information input by the user.
[0557] "Means for updating inventory information" refers to technical means for keeping the status of food used or purchased by the user up to date at all times.
[0558] The "means for generating a shopping list and automatically ordering from a supply service" refers to a technical means for listing the food items needed and automatically sending them to a supply service.
[0559] A "supply service" is an external service that receives a user's order and delivers the required food.
[0560] The present invention provides a system for efficiently managing food inventory in a home and optimizing the eating habits of a user and his / her family. Specific embodiments of the system are described below.
[0561] The system provides a terminal that can register food inventory information, family information, and schedule information for the home. The user can use this terminal to input the following information:
[0562] Food inventory information (e.g., quantity and expiration date of rice, carrots, chicken, tofu, etc.)
[0563] Family information (e.g., age, food preferences, allergies)
[0564] Schedule information (e.g., days when all family members are at home, days when they are out)
[0565] This information is sent in real time to a cloud server for centralized management. The server uses an AI model to generate optimal menus based on the received food inventory information, family information, and schedule information. The AI model uses a generative AI model to propose menus that take the user's specific requirements into account.
[0566] The menu created by the server is displayed on the user's device. Furthermore, the server creates a shopping list by listing any missing foods based on the created menu. The server also provides a means to automatically order food by linking with a food supply service, allowing users to easily obtain the necessary foods.
[0567] The system hardware includes a smartphone or tablet for users to input information, and uses cloud servers such as AWS (Amazon Web Services) and Google Cloud as the cloud environment for executing processing.
[0568] The software includes:
[0569] Flask: Implementing API endpoints using a Python-based web framework
[0570] requests: Used to call the API of the provided service
[0571] Generative AI model: Generates optimal menus based on household food inventory, family information, and schedule information
[0572] Examples:
[0573] The user uses a smartphone to enter the following information:
[0574] 1. Food inventory information:
[0575] Rice: 2kg
[0576] Carrots: 4
[0577] Chicken: 500g
[0578] Tofu: 3 packs
[0579] 2. Family Information:
[0580] Father (40 years old): I like meat.
[0581] Mother (38 years old): Vegetarian
[0582] Child (10 years old): Nothing in particular that I dislike
[0583] Child (8 years old): No allergies
[0584] 3. Schedule Information:
[0585] Monday: Everyone stays home
[0586] Friday: Family outing
[0587] Example prompt sentence:
[0588] "Food inventory registered by the user: 'Rice: 2kg', 'Carrots: 4', 'Chicken: 500g', 'Tofu: 3 packs' Family information registered by the user: 'Father (40): Likes meat', 'Mother (38): Vegetarian', 'Child (10): No particular dislikes', 'Child (8): No allergies' Schedule information registered by the user: 'Monday: Everyone at home', 'Friday: Whole family out' Please generate Python code that will suggest the optimal menu based on this and automatically order any missing ingredients from a supply service."
[0589] This allows users to easily receive optimal meal plans and the necessary ingredients from the comfort of their own home, reducing housework and food waste.
[0590] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0591] Step 1: The user uses the terminal to input food inventory information, family information, and schedule information for the home.
[0592] Input: household food inventory information, family information, schedule information
[0593] How it works: A user uses a smartphone or tablet to enter food inventory information, family information, and schedule information into a dedicated application. Specifically, the user enters food type (e.g., rice, carrots, chicken, tofu, etc.), quantity, expiration date, family member ages, food preferences, allergy information, and family schedule information.
[0594] Output: The input information is stored in the terminal.
[0595] Step 2: The user's device sends the entered information to the server.
[0596] Input: Food inventory information, family information, schedule information stored on the device
[0597] Operation: The user's terminal transmits the entered data to the server via the Internet.
[0598] Output: Food inventory information, family information, and schedule information are stored on the server.
[0599] Step 3: Based on the information received by the server, the AI model is used to generate an optimal menu.
[0600] Input: Food inventory information, family information, schedule information stored on the server
[0601] How it works: The server inputs food inventory information, family information, and schedule information into the AI model to generate the optimal menu. The generative AI model calculates the appropriate menu and selects the menu that best suits the user's household situation.
[0602] Output: The optimal menu is generated and stored on the server.
[0603] Step 4: The server sends the generated menu to the user's terminal.
[0604] Input: Generated menu information
[0605] Operation: The server sends the generated menu to the user's device, where the user can view the suggested menu through the device's application.
[0606] Output: The menu information is displayed on the user's device.
[0607] Step 5: The server generates a shopping list based on the generated menu, listing any missing foods.
[0608] Input: Generated menu information, food inventory information
[0609] Operation: The server compares the menu created by the server with the current food inventory information to identify any missing ingredients. Specifically, it compares the ingredients needed for the menu with the inventory information and lists the missing ingredients.
[0610] Output: A shopping list of missing ingredients is generated.
[0611] Step 6: The server automatically places an order with the supply service based on the generated shopping list.
[0612] Input: Shopping list
[0613] How it works: The server calls the delivery service API to order the required food items based on the generated shopping list. The delivery service receives the order and arranges for the delivery of the ingredients to the user's address.
[0614] Output: An order is placed with the supply service and the required ingredients are delivered.
[0615] 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.
[0616] This invention combines an emotion engine with a system for efficiently managing home food inventory and optimizing family eating habits. The system manages home food inventory information, user family information, and schedule information, and based on this information, suggests optimal menus and generates shopping lists, while also recognizing the user's emotional state and adjusting the suggestions accordingly.
[0617] The system is outlined below. Users can input and register information about food inventory in their homes using a terminal. They can also register family information such as the ages, preferences, and allergies of family members, as well as their schedules, through the terminal. This information is sent to a server, where it is managed centrally.
[0618] The server uses an AI model to propose optimal menus based on household food inventory information, family information, and schedule information sent by the user. The proposed menus are displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menus and generates a shopping list. This shopping list is also displayed on the user's device.
[0619] The system also incorporates an emotion engine that can recognize the user's emotional state. The emotion engine analyzes emotions from the user's facial expressions, tone of voice, input text, etc., to identify the user's current emotional state.
[0620] To give a specific example, a user registers the following food inventory information for his / her home:
[0621] Rice: 2kg
[0622] Carrots: 4 pieces
[0623] Chicken: 500g
[0624] Tofu: 3 packs
[0625] Furthermore, the user registers information such as the ages of their family members and their food preferences.
[0626] Father (40 years old): I like meat.
[0627] Mother (38 years old): Vegetarian
[0628] Child (10 years old): Nothing in particular that I dislike
[0629] Child (8 years old): No allergies
[0630] Next, the user registers schedule information. For example,
[0631] Monday: Everyone stays home
[0632] Friday: Family outing
[0633] Based on this information, the server uses an AI model to generate the optimal menu. For example,
[0634] Monday's menu: Chicken curry, vegetable soup
[0635] Friday Menu: Eating out
[0636] After the menu is generated, the server checks the inventory information and lists any missing foods. For example, if onions are needed to make chicken curry but are out of stock, it adds "2 onions" to the shopping list.
[0637] If the user is feeling stressed, the emotion engine can detect this and suggest simple, quick meals or their favorite dishes. If the user is in a happy mood, it can offer special recipes or ideas for new challenges. In this way, the emotion engine can adjust its suggestions based on the user's situation and emotional state.
[0638] For example, if the user is detected as being stressed:
[0639] Suggested menu: Easy stir-fry and pasta
[0640] Also, if the user is detected as having fun:
[0641] Suggested meals: authentic dinners and new recipes
[0642] In this way, the system of the present invention efficiently manages food inventory in the home and suggests menus that take into account the preferences and health status of family members, while the emotion engine adjusts the suggestions to suit the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[0643] In addition, the emotion engine collects and analyzes information from multiple data sources, enabling more accurate emotion recognition, ensuring users always receive a meal plan optimized for their condition.
[0644] The processing flow will be explained below.
[0645] Step 1:
[0646] The user inputs household food inventory information (item name, quantity, purchase date, expiration date, etc.) into the terminal. For example, "2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu."
[0647] Step 2:
[0648] The device sends the entered food inventory information to the server, which stores it in a database and manages it by linking it to the user's profile.
[0649] Step 3:
[0650] The user inputs family information (age, food preferences, allergy information, etc.) into the terminal. For example, "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[0651] Step 4:
[0652] The device sends the entered family information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0653] Step 5:
[0654] The user inputs family schedule information (events, days away, daily activities, etc.) into the terminal. For example, "Monday: everyone at home, Friday: everyone out."
[0655] Step 6:
[0656] The terminal sends the input schedule information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0657] Step 7:
[0658] The user inputs emotion information for the emotion engine from the terminal or automatically acquires it, for example, by showing facial expressions in front of the terminal camera or by analyzing the tone of voice.
[0659] Step 8:
[0660] The device acquires emotion information and sends it to the server, which uses an emotion engine to analyze and recognize the user's emotional state.
[0661] Step 9:
[0662] The user requests a menu suggestion from the terminal, for example, a request such as "Please suggest a menu for this week."
[0663] Step 10:
[0664] The device sends the user's request to the server, which then uses the AI model and emotion engine to generate the optimal menu based on the received request and referring to registered food inventory information, family information, schedule information, and emotion information.
[0665] Step 11:
[0666] The server calculates the suggested menu and sends it to the user's device. For example, "Chicken curry and vegetable soup on Monday, and eat out on Friday." If the user's emotional state is stressed, simple dishes are suggested.
[0667] Step 12:
[0668] The terminal displays the generated menu to the user, who can then confirm the proposed menu.
[0669] Step 13:
[0670] The user requests the generation of a shopping list from the terminal, for example, a request such as "Please generate this week's shopping list."
[0671] Step 14:
[0672] The terminal sends the user's request to the server, which compares the generated menu with current inventory information and lists any ingredients that are in short supply.
[0673] Step 15:
[0674] The server sends the generated shopping list to the user's device, such as "two onions, one pack of curry powder, and lettuce for salad."
[0675] Step 16:
[0676] The terminal displays the generated shopping list to the user, who can then use this list to make purchases.
[0677] Through these steps, the system efficiently manages household food inventory, proposes optimal menus that take into account the preferences and health status of family members, generates necessary shopping lists, and responds according to the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[0678] Example 2
[0679] 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."
[0680] Managing food inventory at home is a tedious and time-consuming task for many families, and it is particularly challenging to propose menus based on family members' food preferences and schedules. Furthermore, a system that takes into account the user's emotional state can affect meal preparation is required. Furthermore, reducing food waste and easing the household chore burden on users are major challenges in modern society.
[0681] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for registering food inventory information for the home, a means for registering family composition information and schedule information for the user, a means for proposing an optimal menu based on the food inventory information, family composition information, and schedule information, a means for updating the inventory information, a means for generating a shopping list based on the menu, and a means for recognizing the user's emotional state and adjusting the suggested content. This makes it possible to efficiently manage food inventory in the home and to propose an optimal menu based on the family's preferences, health status, schedule, and even the user's emotional state.
[0682] "Home food inventory information" is information about the types, quantities, and expiration dates of food items held in the home.
[0683] "Family composition information" is information about the individual characteristics of each member of the household, such as age, sex, food preferences, and allergy information.
[0684] "Schedule information" is information about the plans and activities of each member of the household.
[0685] The "means for proposing the optimal menu" is a means for automatically generating and proposing meal menus suitable for each member of the household based on information on food inventory, family composition, and schedule information.
[0686] The "means for updating inventory information" refers to a means for automatically updating food inventory information and maintaining the latest inventory status each time food is consumed in the household.
[0687] The "means for generating a shopping list" is a means for identifying missing foods based on the proposed menu and automatically creating a list of necessary purchase items.
[0688] "Means for recognizing the user's emotional state and adjusting the content of suggestions" refers to means for analyzing the user's facial expression, tone of voice, input text, etc., to identify the user's current emotional state, and adjust menu suggestions and shopping list contents based on that.
[0689] This invention combines an emotion engine with a system for efficiently managing food inventory in the home and optimizing the family's diet. The system manages information on the home's food inventory, the user's family composition, and schedule information, and based on this information, suggests optimal menus and generates shopping lists. It also has the ability to recognize the user's emotional state and adjust the suggestions accordingly.
[0690] Users can register by entering the following information using a device such as a smartphone or computer:
[0691] Household food inventory information (e.g., "2 kg rice, 4 carrots, 500 g chicken, 3 packs of tofu").
[0692] Family composition information (e.g., "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): no particular dislikes, Child (8 years old): no allergies").
[0693] Schedule information (e.g., "Monday: Everyone at home, Friday: Whole family out").
[0694] The device sends this information to a server, which then centrally manages this information using a database such as MySQL or PostgreSQL.
[0695] The system's server uses an AI model to suggest optimal menus based on household food inventory information, family composition information, and schedule information sent by the user. For example, it might suggest "chicken curry and vegetable soup" for Monday's menu and "eating out" for Friday's menu. The generated menu information is sent to the device via an HTTP response, and the device displays the menu to the user through the app.
[0696] The server also checks food inventory information, lists any missing foods, and generates a shopping list. The shopping list is also sent to the device via an HTTP response, and the user can check the shopping list on the app. For example, if "2 onions" are missing when creating a chicken curry menu, "2 onions" will be added to the shopping list.
[0697] Furthermore, the system incorporates an emotion engine that analyzes the user's facial expressions, tone of voice, and input text to identify their current emotional state. The server then adjusts its suggestions based on this emotional state. For example, if it recognizes that the user is stressed, it will suggest simple meals with short cooking times, while if the user appears happy, it will suggest authentic dinners or new recipes.
[0698] Here is an example prompt:
[0699] "We have rice, carrots, chicken, and tofu in stock. Everyone will be at home on Monday, so please suggest a meal using these ingredients."
[0700] "My father (age 40) likes meat, and my mother (age 38) is a vegetarian. Can you suggest a dinner menu that will suit everyone's tastes?"
[0701] In this way, the system of the present invention efficiently manages food inventory in the home, suggests menus that take into account the preferences and health status of family members, and adjusts suggestions to adapt to the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[0702] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0703] Step 1:
[0704] The user inputs food inventory information into the terminal.
[0705] Specifically, the user opens the app on their smartphone or computer and enters "2kg of rice, 4 carrots, 500g of chicken, 3 packs of tofu" into the text input field.
[0706] Input: Home food inventory information.
[0707] Output: Food inventory information stored as temporary data on the device.
[0708] Step 2:
[0709] The user inputs family composition information into the terminal.
[0710] Specifically, the user enters the following information into the app's input form: "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[0711] Input: Family composition information.
[0712] Output: Family composition information stored as temporary data on the device.
[0713] Step 3:
[0714] The user inputs schedule information into the terminal.
[0715] Specifically, the user enters "Monday: everyone at home, Friday: everyone out" into the app's schedule field.
[0716] Input: Family schedule information.
[0717] Output: Schedule information saved as temporary data in the device.
[0718] Step 4:
[0719] The terminal sends the input information to the server.
[0720] Specifically, the terminal uses an HTTP request to send the food inventory information, family composition information, and schedule information entered by the user to the server.
[0721] Input: Food inventory information, family composition information, and schedule information stored on the device.
[0722] Output: Various information sent to the server.
[0723] Step 5:
[0724] The server stores the data in a database and manages it centrally.
[0725] Specifically, the server stores the received information in a database such as MySQL or PostgreSQL.
[0726] Input: Food inventory information, family composition information, and schedule information received by the server.
[0727] Output: Various information stored in the database.
[0728] Step 6:
[0729] The server generates the menu using an AI model.
[0730] Specifically, the server retrieves information from the database and queries the AI model to generate the optimal menu, such as "suggest chicken curry and vegetable soup on Mondays."
[0731] Input: Food inventory information, family composition information, and schedule information stored in the database.
[0732] Output: The generated menu information.
[0733] Step 7:
[0734] The server sends the generated menu to the terminal.
[0735] Specifically, the server uses an HTTP response to send the generated menu information to the terminal.
[0736] Input: Generated menu information.
[0737] Output: Menu information sent to the device.
[0738] Step 8:
[0739] The terminal displays the menu to the user.
[0740] Specifically, the device displays the menu information it receives on the user interface, allowing the user to check the suggested menu on the app.
[0741] Input: Menu information sent to the device.
[0742] Output: The menu information displayed to the user.
[0743] Step 9:
[0744] The server lists the foods that are in short supply based on the inventory information and generates a shopping list.
[0745] Specifically, the server checks food inventory information, identifies any missing items, and generates a shopping list. For example, if there are no onions needed for chicken curry, "2 onions" will be added to the shopping list.
[0746] Input: Food inventory information, generated menu information.
[0747] Output: The generated shopping list.
[0748] Step 10:
[0749] The server sends the shopping list to the terminal.
[0750] Specifically, the server uses the HTTP response to send the generated shopping list to the terminal.
[0751] Input: The generated shopping list.
[0752] Output: Shopping list sent to the device.
[0753] Step 11:
[0754] The terminal displays the shopping list to the user.
[0755] Specifically, the device displays the received shopping list on the user interface, allowing the user to check the shopping list on the app.
[0756] Input: Shopping list sent to the device.
[0757] Output: The shopping list displayed to the user.
[0758] Step 12:
[0759] The server uses an emotion engine to recognize the user's emotional state.
[0760] Specifically, the server uses an emotion engine to analyze the user's facial expressions, tone of voice, input text, etc. to identify their emotional state. For example, it may recognize that the user is feeling stressed.
[0761] Input: User facial expressions, tone of voice, and input text.
[0762] Output: Identified emotional state.
[0763] Step 13:
[0764] The server adjusts the suggestions based on the emotional state.
[0765] Specifically, the server tailors its suggestions based on the emotional state it identifies, for example, suggesting easy-to-make meals if you're feeling stressed.
[0766] Input: Identified emotional state.
[0767] Output: Adjusted menu information.
[0768] Step 14:
[0769] The terminal displays the adjusted menu to the user.
[0770] Specifically, the device displays the adjusted menu information on the user interface, and the user can check the adjusted menu on the app.
[0771] Input: Adjusted menu information.
[0772] Output: The adjusted menu information displayed to the user.
[0773] (Application example 2)
[0774] 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."
[0775] Conventional food inventory management systems propose optimal menus by taking into account household food inventory information, family food preferences, and schedule information, but they were unable to consider the user's emotional state, meaning they were unable to propose optimal meals according to the user's situation. Furthermore, there was no mechanism to automatically order the necessary ingredients from the proposals in conjunction with a delivery service, which meant that the systems lacked convenience. This meant that users had to go through the extra effort of purchasing ingredients, making it difficult to reduce food waste.
[0776] 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 means for registering household ingredient inventory information, means for registering the user's family information and schedule information, means for proposing an optimal menu based on the ingredient inventory information, family information, and schedule information, means for updating the inventory information, means for generating a shopping list based on the menu, means for recognizing the user's emotional state and adjusting the content of the suggestions, and means for ordering the suggested ingredients in cooperation with a delivery service. This makes it possible to make meal suggestions optimized for the user's emotional state and automatically order the necessary ingredients all at once.
[0777] "Home food inventory information"
[0778] This is information about the types, quantities, and expiration dates of food ingredients currently stored in the home.
[0779] "User's family information"
[0780] This refers to individual dietary information for each member of the household, such as age, food preferences, and allergies.
[0781] "Schedule Information"
[0782] This is information that reflects the weekly and monthly schedules of each member of the household, including meal times and whether or not they go out.
[0783] "menu"
[0784] This refers to the menu and cooking plans for the meals you plan to prepare at home.
[0785] "Update inventory information"
[0786] refers to the activity of changing or amending the current food inventory in the home to keep it up to date.
[0787] "Purchase List"
[0788] is a list of ingredients that are in short supply based on a menu, and includes information on ingredients that should be purchased.
[0789] "Recognition of emotional states"
[0790] This is the process of detecting a user's current emotional and mental state by analyzing their facial expressions, tone of voice, text input, etc.
[0791] "Adjusting the proposal content"
[0792] This refers to optimizing the content provided, such as menus and operation methods, according to the user's recognized emotional state.
[0793] "Collaboration with delivery services"
[0794] This refers to the ability to link with a service that actually orders and delivers ingredients based on the generated shopping list.
[0795] The present invention provides a system that manages household food inventory, family information, and schedule information, suggests optimal menus based on the user's emotional state, and automatically orders the necessary ingredients in cooperation with a delivery service.
[0796] The system includes the following main components:
[0797] 1. Food Inventory Management Module: Registers and manages food inventory information within the home. Specifically, it records data such as the type, quantity, and expiration date of food ingredients. The user inputs food information into the interface using a smartphone.
[0798] 2. Family Information Management Module: Registers and manages the age, food preferences, allergy information, etc. of each family member, providing basic data for providing optimal menus for each family member.
[0799] 3. Schedule Management Module: Register and manage the weekly and monthly schedules of each household member. For example, adjust the daily meal plan based on the days when the family will be working or going out.
[0800] 4. Emotion Recognition Module: Analyzes facial expressions, tone of voice, text input, etc. to recognize the user's current emotional state. This module collects user data via the camera and microphone and analyzes emotions using sensors and image processing software.
[0801] 5. Menu suggestion module: Equipped with a generative AI model to generate optimal menus based on ingredient inventory information, family information, and schedule information. By taking into account data from the emotion recognition module, it provides meal plans optimized for the user's situation.
[0802] 6. Purchasing list generation module: Based on the proposed menu, it lists the ingredients that are missing and generates a purchasing list. The generated purchasing list is displayed to the user, who can check and edit it.
[0803] 7. Delivery Integration Module: Automatically sends food orders to partner delivery services based on the purchase list. This module integrates with an external delivery API to process orders and manage their progress.
[0804] Here are some concrete examples:
[0805] If the user is busy or stressed, the emotion recognition module detects this and suggests easy-to-make meals (e.g., vegetable salad, frozen pizza). Missing ingredients (e.g., lettuce, tomato, pizza) are added to the shopping list and automatically ordered through the delivery integration module.
[0806] Additionally, when the user is in a fun mood, the app will suggest authentic meals (e.g., homemade pizza, specialty pasta) and order ingredients to create a special dining experience.
[0807] To illustrate this, here are some examples of prompts for a generative AI model:
[0808] Household food inventory: 2kg rice, 4 carrots, 500g chicken, 3 packs of tofu
[0809] Family information: Father 40 years old, loves meat, Mother 38 years old, vegetarian, Child 10 years old, no particular dislikes, Child 8 years old, no allergies
[0810] Schedule information: Monday everyone at home, Friday everyone out
[0811] User's emotional state: Stress
[0812] Generate the perfect menu.
[0813] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0814] Step 1:
[0815] The user uses a smartphone to input information about the household's food inventory, family information, and schedule. The input data is sent to the server and recorded. This allows the server to grasp the latest information about the household's food inventory, family food preferences and allergies, and schedules.
[0816] Input: Food inventory information, family information, schedule information
[0817] Output: Information stored in the database
[0818] Step 2:
[0819] The server uses a generative AI model to generate optimal menus based on ingredient inventory information, family information, and schedule information, and uses user input data as prompts to run the AI model and suggest menus.
[0820] Input: Food inventory information, family information, schedule information
[0821] Example prompt: "Household food inventory information: 2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu. Family information: Father, 40 years old, likes meat; Mother, 38 years old, vegetarian; Child, 10 years old, has no particular dislikes; Child, 8 years old, has no allergies. Schedule information: Monday, everyone is at home; Friday, everyone is out. User's emotional state: stressed. Please generate the optimal menu."
[0822] Output: Generated menu
[0823] Step 3:
[0824] The server analyzes the user's emotional state using an emotion recognition module. It identifies the user's emotional state based on facial expressions and tone of voice data provided by the user through the smartphone's camera and microphone. This determination is made using sensors and image processing software.
[0825] Input: User's facial expression data, voice data
[0826] Output: User's emotional state
[0827] Step 4:
[0828] The server fine-tunes the generated menu based on the user's emotional state. Taking into account the emotional state obtained from the emotion recognition module, the server provides a meal plan that is optimal for the user's mental state. For example, if the user is feeling stressed, the server will suggest a simple menu that can be prepared quickly.
[0829] Input: Generated menu, user's emotional state
[0830] Output: Adjusted menu
[0831] Step 5:
[0832] The server generates a purchasing list based on the adjusted menu, listing any missing ingredients. This purchasing list is displayed on the user's device. The user can view and edit this list.
[0833] Input: Adjusted menu, ingredient inventory information
[0834] Output: Purchasing list
[0835] Step 6:
[0836] The server connects with the delivery service based on the generated shopping list and automatically orders the necessary ingredients. It also uses an external delivery API to send order information and manage delivery status.
[0837] Input: Purchasing List
[0838] Output: Delivery order information, delivery status confirmation
[0839] 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.
[0840] 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.
[0841] 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.
[0842] [Third embodiment]
[0843] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0844] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0845] 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).
[0846] 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.
[0847] 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.
[0848] 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).
[0849] 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.
[0850] 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.
[0851] 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.
[0852] 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.
[0853] 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.
[0854] 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."
[0855] The present invention is a system for efficiently managing home food inventory and optimizing family eating habits. The system manages home food inventory information, user family information, and schedule information, and has the function of proposing optimal menus and generating shopping lists based on the information.
[0856] The system is outlined below. Users can input and register information about food inventory in their homes using a terminal. They can also register family information such as the ages, preferences, and allergies of family members, as well as their schedules, through the terminal. This information is sent to a server, where it is managed centrally.
[0857] The server uses an AI model to propose optimal menus based on household food inventory information, family information, and schedule information sent by the user. The proposed menus are displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menus and generates a shopping list. This shopping list is also displayed on the user's device.
[0858] To give a specific example, a user registers the following food inventory information for his / her home:
[0859] Rice: 2kg
[0860] Carrots: 4 pieces
[0861] Chicken: 500g
[0862] Tofu: 3 packs
[0863] Furthermore, the user registers information such as the ages of their family members and their food preferences.
[0864] Father (40 years old): I like meat.
[0865] Mother (38 years old): Vegetarian
[0866] Child (10 years old): Nothing in particular that I dislike
[0867] Child (8 years old): No allergies
[0868] Next, the user registers schedule information. For example,
[0869] Monday: Everyone stays home
[0870] Friday: Family outing
[0871] Based on this information, the server uses an AI model to generate the optimal menu. For example,
[0872] Monday's menu: Chicken curry, vegetable soup
[0873] Friday Menu: Eating out
[0874] After the menu is generated, the server checks the inventory information and lists any missing foods. For example, if onions are needed to make chicken curry but are out of stock, it adds "2 onions" to the shopping list.
[0875] In this way, the system of the present invention can efficiently manage food inventory in the home and propose menus that take into account the preferences and health status of family members, thereby reducing food waste and reducing housework.In addition, by making it easy for users to reflect special events and schedule changes in the system, flexible food management can be achieved in real time.
[0876] The processing flow will be explained below.
[0877] Step 1:
[0878] The user inputs household food inventory information (item name, quantity, purchase date, expiration date, etc.) into the terminal. For example, "2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu."
[0879] Step 2:
[0880] The device sends the entered food inventory information to the server, which stores it in a database and manages it by linking it to the user's profile.
[0881] Step 3:
[0882] The user inputs family information (age, food preferences, allergy information, etc.) into the terminal. For example, "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[0883] Step 4:
[0884] The device sends the entered family information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0885] Step 5:
[0886] The user inputs family schedule information (events, days away, daily activities, etc.) into the terminal. For example, "Monday: everyone at home, Friday: everyone out."
[0887] Step 6:
[0888] The terminal sends the input schedule information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[0889] Step 7:
[0890] The user requests a menu suggestion from the terminal, for example, a request such as "Please suggest a menu for this week."
[0891] Step 8:
[0892] The device sends the user's request to the server, which then uses the AI model to generate the optimal menu based on the request and references registered food inventory information, family information, and schedule information.
[0893] Step 9:
[0894] The server calculates a menu suggestion and sends it to the user's device, such as "chicken curry and vegetable soup on Monday, and eat out on Friday."
[0895] Step 10:
[0896] The terminal displays the generated menu to the user, who can then confirm the proposed menu.
[0897] Step 11:
[0898] The user requests the generation of a shopping list from the terminal, for example, a request such as "Please generate this week's shopping list."
[0899] Step 12:
[0900] The terminal sends the user's request to the server, which compares the generated menu with current inventory information and lists any ingredients that are in short supply.
[0901] Step 13:
[0902] The server sends the generated shopping list to the user's device, such as "two onions, one pack of curry powder, and lettuce for salad."
[0903] Step 14:
[0904] The terminal displays the generated shopping list to the user, who can then use this list to make purchases.
[0905] Through these steps, the system efficiently manages household food inventory, proposes optimal menus that take into account the preferences and health status of family members, and generates necessary shopping lists, thereby reducing the user's housework workload and reducing food waste.
[0906] Example 1
[0907] 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."
[0908] Managing food inventory at home is complicated, leading to food waste and duplicate purchases. Creating appropriate menus that take into account the preferences and allergies of each household member requires a great deal of effort. Creating shopping lists is also time-consuming, making efficient shopping difficult. A system that can solve these problems is needed.
[0909] 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.
[0910] In this invention, the server includes means for registering household food inventory information, means for registering user family information and schedule information, means for proposing an optimal menu based on the food inventory information, family information, and schedule information using a generation AI model, means for updating the inventory information, and means for generating a shopping list using prompt sentences based on the menu. This makes it possible to efficiently manage household food inventory, efficiently create menus that take into account the preferences and health status of family members, and automatically generate the necessary shopping list.
[0911] "Home food inventory information" is information about the types and amounts of food stored in the home.
[0912] "User's family information" is information about each member of the household, such as the user's family structure, age, food preferences, and allergy information.
[0913] "Schedule information" is information about the household schedule, such as whether each member of the household is at home or out on a particular day.
[0914] A "generative AI model" is a model trained using artificial intelligence to generate optimal menus based on input data.
[0915] "Means for proposing optimal menus" refers to methods and technologies for proposing optimal menus using a generative AI model based on household food inventory information, family information, and schedule information.
[0916] "Means for updating inventory information" refers to methods and techniques for immediately updating food inventory information in the home when new information is entered or changed, and maintaining the latest information.
[0917] A "prompt" is an instruction or question entered into an AI model to obtain a specific result.
[0918] A "means for generating a shopping list" is a method or technique for automatically generating a list of necessary foods and items based on a proposed menu.
[0919] This invention is a system that manages food inventory in the home, proposes optimal menus based on the user's family information and schedule information, and generates shopping lists. The main components of this system are a terminal where the user inputs information, a server that receives and analyzes the information, and a generating AI model.
[0920] First, the user inputs and registers household food inventory information on a terminal. This includes the type of food, quantity, and expiration date. For example, information such as "rice: 2 kg" or "carrots: 4" is registered. In addition, the user inputs family information such as the age, food preferences, and allergy information of each household member. For example, information such as "father (40 years old): likes meat" and "mother (38 years old): vegetarian" is registered.
[0921] Next, users enter their family schedule information through their devices, such as "Monday: everyone at home" or "Friday: everyone out and about." This information is entered through a web-based form or a mobile app.
[0922] All input information is sent from the device to the server. The server receives the data and stores it. The Python Pandas library is used to store the data. Frameworks such as Django and FastAPI are also used. Based on this data, the server uses a generative AI model to suggest the optimal menu. This AI model is trained using TensorFlow.
[0923] The server analyzes the household's food inventory information, family information, and schedule information to generate an optimal menu. For example, it might suggest "Monday's menu: chicken curry, vegetable soup." The generated menu is then displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menu. For example, if onions are needed for chicken curry but are out of stock, "2 onions" is added to the shopping list. This shopping list is also displayed on the user's device.
[0924] Specific examples of prompt sentences are shown below.
[0925] Household food inventory: ["Rice: 2kg", "Carrots: 4", "Chicken: 500g", "Tofu: 3 packs"]
[0926] Family information: ["Father (40): Likes meat", "Mother (38): Vegetarian", "Child (10): No particular dislikes", "Child (8): No allergies"]
[0927] Schedule information: ["Monday: Everyone at home", "Friday: The whole family out"]
[0928] Use this information to generate the perfect Monday meal plan and shopping list.
[0929] In this way, the system can efficiently manage food inventory in the home, suggest meals that take into account the preferences and health status of family members, and list foods that are in short supply, thereby optimizing household eating activities.
[0930] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0931] Step 1:
[0932] The user enters household food inventory information, family information, and schedule information using a web-based form on the device or a mobile app. Specifically, the user enters food inventory information such as "2 kg of rice" and "4 carrots," as well as family information and schedule information such as "Father (40 years old): likes meat" and "Monday: everyone is at home." The entered data is temporarily stored in the device's memory.
[0933] Input: Food inventory information, family information, schedule information
[0934] Output: Input data temporarily stored on the terminal
[0935] Step 2:
[0936] The device converts all information entered by the user into JSON format or similar and sends it to the server via an HTTP POST request, which passes all data to the server in one go.
[0937] Input: Input data stored on the device
[0938] Output: HTTP POST request to the server
[0939] Step 3:
[0940] The server receives the data sent from the device and stores it in a database or in-memory storage, specifically in a data frame using the Python Pandas library.
[0941] Input: JSON format data included in the HTTP POST request
[0942] Output: Food inventory information, family information, schedule information stored in the database
[0943] Step 4:
[0944] The server uses all the stored data to feed a generative AI model, which is pre-trained using TensorFlow, to generate optimal menus.
[0945] Input: Food inventory information, family information, schedule information
[0946] Output: Optimal menu output from the generative AI model
[0947] Step 5:
[0948] The server checks the current food inventory based on the menu output from the generative AI model and lists any missing items, generating a specific shopping list.
[0949] Input: Optimal menu, food inventory information
[0950] Output: A shopping list listing the missing items
[0951] Step 6:
[0952] The server converts the generated menu and shopping list into JSON format and sends it to the terminal as an HTTP response, allowing the user to receive the latest menu and shopping list.
[0953] Input: Optimal menu, list of missing items
[0954] Output: HTTP response to the device
[0955] Step 7:
[0956] The device parses the JSON data received from the server and displays it in a format that is easy for the user to understand. For example, it displays "Monday's menu: chicken curry, vegetable soup" and "Shopping list: 2 onions" on the app screen.
[0957] Input: HTTP response data from the server
[0958] Output: Optimized menu and shopping list displayed on the user's device
[0959] (Application example 1)
[0960] 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."
[0961] Conventional home food management systems propose menus that take into account food inventory information, family preferences, and schedules, but they still face challenges in further reducing housework and food waste. Furthermore, they lack the functionality to automatically order ingredients needed for the proposed menus from a food supply service, requiring users to go shopping in person, which is time-consuming and labor-intensive. This creates challenges in improving the efficiency of food inventory management and shopping.
[0962] 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.
[0963] In this invention, the server includes means for registering household food inventory information, means for registering family information and schedule information, means for proposing an optimal menu based on the food inventory information, family information and schedule information, means for updating the inventory information, and means for generating a shopping list based on the menu and automatically ordering from a food supply service. This allows users to efficiently manage food inventory in their homes and automatically order necessary ingredients from a food supply service, thereby reducing housework and food waste.
[0964] "Home food inventory information" is detailed information such as the type, quantity, and expiration date of food stored in the home.
[0965] "User's family information" is detailed information such as the user's family structure, age, food preferences, and allergy information.
[0966] "Schedule information" is time management information such as family plans and events.
[0967] The "means for proposing the optimal menu" is a technical means for generating the optimal meal menu useful for the family based on the information input by the user.
[0968] "Means for updating inventory information" refers to technical means for keeping the status of food used or purchased by the user up to date at all times.
[0969] The "means for generating a shopping list and automatically ordering from a supply service" refers to a technical means for listing the food items needed and automatically sending them to a supply service.
[0970] A "supply service" is an external service that receives a user's order and delivers the required food.
[0971] The present invention provides a system for efficiently managing food inventory in a home and optimizing the eating habits of a user and his / her family. Specific embodiments of the system are described below.
[0972] The system provides a terminal that can register food inventory information, family information, and schedule information for the home. The user can use this terminal to input the following information:
[0973] Food inventory information (e.g., quantity and expiration date of rice, carrots, chicken, tofu, etc.)
[0974] Family information (e.g., age, food preferences, allergies)
[0975] Schedule information (e.g., days when all family members are at home, days when they are out)
[0976] This information is sent in real time to a cloud server for centralized management. The server uses an AI model to generate optimal menus based on the received food inventory information, family information, and schedule information. The AI model uses a generative AI model to propose menus that take the user's specific requirements into account.
[0977] The menu created by the server is displayed on the user's device. Furthermore, the server creates a shopping list by listing any missing foods based on the created menu. The server also provides a means to automatically order food by linking with a food supply service, allowing users to easily obtain the necessary foods.
[0978] The system hardware includes a smartphone or tablet for users to input information, and uses cloud servers such as AWS (Amazon Web Services) and Google Cloud as the cloud environment for executing processing.
[0979] The software includes:
[0980] Flask: Implementing API endpoints using a Python-based web framework
[0981] requests: Used to call the API of the provided service
[0982] Generative AI model: Generates optimal menus based on household food inventory, family information, and schedule information
[0983] Examples:
[0984] The user uses a smartphone to enter the following information:
[0985] 1. Food inventory information:
[0986] Rice: 2kg
[0987] Carrots: 4
[0988] Chicken: 500g
[0989] Tofu: 3 packs
[0990] 2. Family Information:
[0991] Father (40 years old): I like meat.
[0992] Mother (38 years old): Vegetarian
[0993] Child (10 years old): Nothing in particular that I dislike
[0994] Child (8 years old): No allergies
[0995] 3. Schedule Information:
[0996] Monday: Everyone stays home
[0997] Friday: Family outing
[0998] Example prompt sentence:
[0999] "Food inventory registered by the user: 'Rice: 2kg', 'Carrots: 4', 'Chicken: 500g', 'Tofu: 3 packs' Family information registered by the user: 'Father (40): Likes meat', 'Mother (38): Vegetarian', 'Child (10): No particular dislikes', 'Child (8): No allergies' Schedule information registered by the user: 'Monday: Everyone at home', 'Friday: Whole family out' Please generate Python code that will suggest the optimal menu based on this and automatically order any missing ingredients from a supply service."
[1000] This allows users to easily receive optimal meal plans and the necessary ingredients from the comfort of their own home, reducing housework and food waste.
[1001] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1002] Step 1: The user uses the terminal to input food inventory information, family information, and schedule information for the home.
[1003] Input: household food inventory information, family information, schedule information
[1004] How it works: A user uses a smartphone or tablet to enter food inventory information, family information, and schedule information into a dedicated application. Specifically, the user enters food type (e.g., rice, carrots, chicken, tofu, etc.), quantity, expiration date, family member ages, food preferences, allergy information, and family schedule information.
[1005] Output: The input information is stored in the terminal.
[1006] Step 2: The user's device sends the entered information to the server.
[1007] Input: Food inventory information, family information, schedule information stored on the device
[1008] Operation: The user's terminal transmits the entered data to the server via the Internet.
[1009] Output: Food inventory information, family information, and schedule information are stored on the server.
[1010] Step 3: Based on the information received by the server, the AI model is used to generate an optimal menu.
[1011] Input: Food inventory information, family information, schedule information stored on the server
[1012] How it works: The server inputs food inventory information, family information, and schedule information into the AI model to generate the optimal menu. The generative AI model calculates the appropriate menu and selects the menu that best suits the user's household situation.
[1013] Output: The optimal menu is generated and stored on the server.
[1014] Step 4: The server sends the generated menu to the user's terminal.
[1015] Input: Generated menu information
[1016] Operation: The server sends the generated menu to the user's device, where the user can view the suggested menu through the device's application.
[1017] Output: The menu information is displayed on the user's device.
[1018] Step 5: The server generates a shopping list based on the generated menu, listing any missing foods.
[1019] Input: Generated menu information, food inventory information
[1020] Operation: The server compares the menu created by the server with the current food inventory information to identify any missing ingredients. Specifically, it compares the ingredients needed for the menu with the inventory information and lists the missing ingredients.
[1021] Output: A shopping list of missing ingredients is generated.
[1022] Step 6: The server automatically places an order with the supply service based on the generated shopping list.
[1023] Input: Shopping list
[1024] How it works: The server calls the delivery service API to order the required food items based on the generated shopping list. The delivery service receives the order and arranges for the delivery of the ingredients to the user's address.
[1025] Output: An order is placed with the supply service and the required ingredients are delivered.
[1026] 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.
[1027] This invention combines an emotion engine with a system for efficiently managing home food inventory and optimizing family eating habits. The system manages home food inventory information, user family information, and schedule information, and based on this information, suggests optimal menus and generates shopping lists, while also recognizing the user's emotional state and adjusting the suggestions accordingly.
[1028] The system is outlined below. Users can input and register information about food inventory in their homes using a terminal. They can also register family information such as the ages, preferences, and allergies of family members, as well as their schedules, through the terminal. This information is sent to a server, where it is managed centrally.
[1029] The server uses an AI model to propose optimal menus based on household food inventory information, family information, and schedule information sent by the user. The proposed menus are displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menus and generates a shopping list. This shopping list is also displayed on the user's device.
[1030] The system also incorporates an emotion engine that can recognize the user's emotional state. The emotion engine analyzes emotions from the user's facial expressions, tone of voice, input text, etc., to identify the user's current emotional state.
[1031] To give a specific example, a user registers the following food inventory information for his / her home:
[1032] Rice: 2kg
[1033] Carrots: 4 pieces
[1034] Chicken: 500g
[1035] Tofu: 3 packs
[1036] Furthermore, the user registers information such as the ages of their family members and their food preferences.
[1037] Father (40 years old): I like meat.
[1038] Mother (38 years old): Vegetarian
[1039] Child (10 years old): Nothing in particular that I dislike
[1040] Child (8 years old): No allergies
[1041] Next, the user registers schedule information. For example,
[1042] Monday: Everyone stays home
[1043] Friday: Family outing
[1044] Based on this information, the server uses an AI model to generate the optimal menu. For example,
[1045] Monday's menu: Chicken curry, vegetable soup
[1046] Friday Menu: Eating out
[1047] After the menu is generated, the server checks the inventory information and lists any missing foods. For example, if onions are needed to make chicken curry but are out of stock, it adds "2 onions" to the shopping list.
[1048] If the user is feeling stressed, the emotion engine can detect this and suggest simple, quick meals or their favorite dishes. If the user is in a happy mood, it can offer special recipes or ideas for new challenges. In this way, the emotion engine can adjust its suggestions based on the user's situation and emotional state.
[1049] For example, if the user is detected as being stressed:
[1050] Suggested menu: Easy stir-fry and pasta
[1051] Also, if the user is detected as having fun:
[1052] Suggested meals: authentic dinners and new recipes
[1053] In this way, the system of the present invention efficiently manages food inventory in the home and suggests menus that take into account the preferences and health status of family members, while the emotion engine adjusts the suggestions to suit the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[1054] In addition, the emotion engine collects and analyzes information from multiple data sources, enabling more accurate emotion recognition, ensuring users always receive a meal plan optimized for their condition.
[1055] The processing flow will be explained below.
[1056] Step 1:
[1057] The user inputs household food inventory information (item name, quantity, purchase date, expiration date, etc.) into the terminal. For example, "2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu."
[1058] Step 2:
[1059] The device sends the entered food inventory information to the server, which stores it in a database and manages it by linking it to the user's profile.
[1060] Step 3:
[1061] The user inputs family information (age, food preferences, allergy information, etc.) into the terminal. For example, "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[1062] Step 4:
[1063] The device sends the entered family information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[1064] Step 5:
[1065] The user inputs family schedule information (events, days away, daily activities, etc.) into the terminal. For example, "Monday: everyone at home, Friday: everyone out."
[1066] Step 6:
[1067] The terminal sends the input schedule information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[1068] Step 7:
[1069] The user inputs emotion information for the emotion engine from the terminal or automatically acquires it, for example, by showing facial expressions in front of the terminal camera or by analyzing the tone of voice.
[1070] Step 8:
[1071] The device acquires emotion information and sends it to the server, which uses an emotion engine to analyze and recognize the user's emotional state.
[1072] Step 9:
[1073] The user requests a menu suggestion from the terminal, for example, a request such as "Please suggest a menu for this week."
[1074] Step 10:
[1075] The device sends the user's request to the server, which then uses the AI model and emotion engine to generate the optimal menu based on the received request and referring to registered food inventory information, family information, schedule information, and emotion information.
[1076] Step 11:
[1077] The server calculates the suggested menu and sends it to the user's device. For example, "Chicken curry and vegetable soup on Monday, and eat out on Friday." If the user's emotional state is stressed, simple dishes are suggested.
[1078] Step 12:
[1079] The terminal displays the generated menu to the user, who can then confirm the proposed menu.
[1080] Step 13:
[1081] The user requests the generation of a shopping list from the terminal, for example, a request such as "Please generate this week's shopping list."
[1082] Step 14:
[1083] The terminal sends the user's request to the server, which compares the generated menu with current inventory information and lists any ingredients that are in short supply.
[1084] Step 15:
[1085] The server sends the generated shopping list to the user's device, such as "two onions, one pack of curry powder, and lettuce for salad."
[1086] Step 16:
[1087] The terminal displays the generated shopping list to the user, who can then use this list to make purchases.
[1088] Through these steps, the system efficiently manages household food inventory, proposes optimal menus that take into account the preferences and health status of family members, generates necessary shopping lists, and responds according to the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[1089] Example 2
[1090] 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."
[1091] Managing food inventory at home is a tedious and time-consuming task for many families, and it is particularly challenging to propose menus based on family members' food preferences and schedules. Furthermore, a system that takes into account the user's emotional state can affect meal preparation is required. Furthermore, reducing food waste and easing the household chore burden on users are major challenges in modern society.
[1092] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for registering food inventory information for the home, a means for registering family composition information and schedule information for the user, a means for proposing an optimal menu based on the food inventory information, family composition information, and schedule information, a means for updating the inventory information, a means for generating a shopping list based on the menu, and a means for recognizing the user's emotional state and adjusting the suggested content. This makes it possible to efficiently manage food inventory in the home and to propose an optimal menu based on the family's preferences, health status, schedule, and even the user's emotional state.
[1093] "Home food inventory information" is information about the types, quantities, and expiration dates of food items held in the home.
[1094] "Family composition information" is information about the individual characteristics of each member of the household, such as age, sex, food preferences, and allergy information.
[1095] "Schedule information" is information about the plans and activities of each member of the household.
[1096] The "means for proposing the optimal menu" is a means for automatically generating and proposing meal menus suitable for each member of the household based on information on food inventory, family composition, and schedule information.
[1097] The "means for updating inventory information" refers to a means for automatically updating food inventory information and maintaining the latest inventory status each time food is consumed in the household.
[1098] The "means for generating a shopping list" is a means for identifying missing foods based on the proposed menu and automatically creating a list of necessary purchase items.
[1099] "Means for recognizing the user's emotional state and adjusting the content of suggestions" refers to means for analyzing the user's facial expression, tone of voice, input text, etc., to identify the user's current emotional state, and adjust menu suggestions and shopping list contents based on that.
[1100] This invention combines an emotion engine with a system for efficiently managing food inventory in the home and optimizing the family's diet. The system manages information on the home's food inventory, the user's family composition, and schedule information, and based on this information, suggests optimal menus and generates shopping lists. It also has the ability to recognize the user's emotional state and adjust the suggestions accordingly.
[1101] Users can register by entering the following information using a device such as a smartphone or computer:
[1102] Household food inventory information (e.g., "2 kg rice, 4 carrots, 500 g chicken, 3 packs of tofu").
[1103] Family composition information (e.g., "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): no particular dislikes, Child (8 years old): no allergies").
[1104] Schedule information (e.g., "Monday: Everyone at home, Friday: Whole family out").
[1105] The device sends this information to a server, which then centrally manages this information using a database such as MySQL or PostgreSQL.
[1106] The system's server uses an AI model to suggest optimal menus based on household food inventory information, family composition information, and schedule information sent by the user. For example, it might suggest "chicken curry and vegetable soup" for Monday's menu and "eating out" for Friday's menu. The generated menu information is sent to the device via an HTTP response, and the device displays the menu to the user through the app.
[1107] The server also checks food inventory information, lists any missing foods, and generates a shopping list. The shopping list is also sent to the device via an HTTP response, and the user can check the shopping list on the app. For example, if "2 onions" are missing when creating a chicken curry menu, "2 onions" will be added to the shopping list.
[1108] Furthermore, the system incorporates an emotion engine that analyzes the user's facial expressions, tone of voice, and input text to identify their current emotional state. The server then adjusts its suggestions based on this emotional state. For example, if it recognizes that the user is stressed, it will suggest simple meals with short cooking times, while if the user appears happy, it will suggest authentic dinners or new recipes.
[1109] Here is an example prompt:
[1110] "We have rice, carrots, chicken, and tofu in stock. Everyone will be at home on Monday, so please suggest a meal using these ingredients."
[1111] "My father (age 40) likes meat, and my mother (age 38) is a vegetarian. Can you suggest a dinner menu that will suit everyone's tastes?"
[1112] In this way, the system of the present invention efficiently manages food inventory in the home, suggests menus that take into account the preferences and health status of family members, and adjusts suggestions to adapt to the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[1113] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1114] Step 1:
[1115] The user inputs food inventory information into the terminal.
[1116] Specifically, the user opens the app on their smartphone or computer and enters "2kg of rice, 4 carrots, 500g of chicken, 3 packs of tofu" into the text input field.
[1117] Input: Home food inventory information.
[1118] Output: Food inventory information stored as temporary data on the device.
[1119] Step 2:
[1120] The user inputs family composition information into the terminal.
[1121] Specifically, the user enters the following information into the app's input form: "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[1122] Input: Family composition information.
[1123] Output: Family composition information stored as temporary data on the device.
[1124] Step 3:
[1125] The user inputs schedule information into the terminal.
[1126] Specifically, the user enters "Monday: everyone at home, Friday: everyone out" into the app's schedule field.
[1127] Input: Family schedule information.
[1128] Output: Schedule information saved as temporary data in the device.
[1129] Step 4:
[1130] The terminal sends the input information to the server.
[1131] Specifically, the terminal uses an HTTP request to send the food inventory information, family composition information, and schedule information entered by the user to the server.
[1132] Input: Food inventory information, family composition information, and schedule information stored on the device.
[1133] Output: Various information sent to the server.
[1134] Step 5:
[1135] The server stores the data in a database and manages it centrally.
[1136] Specifically, the server stores the received information in a database such as MySQL or PostgreSQL.
[1137] Input: Food inventory information, family composition information, and schedule information received by the server.
[1138] Output: Various information stored in the database.
[1139] Step 6:
[1140] The server generates the menu using an AI model.
[1141] Specifically, the server retrieves information from the database and queries the AI model to generate the optimal menu, such as "suggest chicken curry and vegetable soup on Mondays."
[1142] Input: Food inventory information, family composition information, and schedule information stored in the database.
[1143] Output: The generated menu information.
[1144] Step 7:
[1145] The server sends the generated menu to the terminal.
[1146] Specifically, the server uses an HTTP response to send the generated menu information to the terminal.
[1147] Input: Generated menu information.
[1148] Output: Menu information sent to the device.
[1149] Step 8:
[1150] The terminal displays the menu to the user.
[1151] Specifically, the device displays the menu information it receives on the user interface, allowing the user to check the suggested menu on the app.
[1152] Input: Menu information sent to the device.
[1153] Output: The menu information displayed to the user.
[1154] Step 9:
[1155] The server lists the foods that are in short supply based on the inventory information and generates a shopping list.
[1156] Specifically, the server checks food inventory information, identifies any missing items, and generates a shopping list. For example, if there are no onions needed for chicken curry, "2 onions" will be added to the shopping list.
[1157] Input: Food inventory information, generated menu information.
[1158] Output: The generated shopping list.
[1159] Step 10:
[1160] The server sends the shopping list to the terminal.
[1161] Specifically, the server uses the HTTP response to send the generated shopping list to the terminal.
[1162] Input: The generated shopping list.
[1163] Output: Shopping list sent to the device.
[1164] Step 11:
[1165] The terminal displays the shopping list to the user.
[1166] Specifically, the device displays the received shopping list on the user interface, allowing the user to check the shopping list on the app.
[1167] Input: Shopping list sent to the device.
[1168] Output: The shopping list displayed to the user.
[1169] Step 12:
[1170] The server uses an emotion engine to recognize the user's emotional state.
[1171] Specifically, the server uses an emotion engine to analyze the user's facial expressions, tone of voice, input text, etc. to identify their emotional state. For example, it may recognize that the user is feeling stressed.
[1172] Input: User facial expressions, tone of voice, and input text.
[1173] Output: Identified emotional state.
[1174] Step 13:
[1175] The server adjusts the suggestions based on the emotional state.
[1176] Specifically, the server tailors its suggestions based on the emotional state it identifies, for example, suggesting easy-to-make meals if you're feeling stressed.
[1177] Input: Identified emotional state.
[1178] Output: Adjusted menu information.
[1179] Step 14:
[1180] The terminal displays the adjusted menu to the user.
[1181] Specifically, the device displays the adjusted menu information on the user interface, and the user can check the adjusted menu on the app.
[1182] Input: Adjusted menu information.
[1183] Output: The adjusted menu information displayed to the user.
[1184] (Application example 2)
[1185] 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."
[1186] Conventional food inventory management systems propose optimal menus by taking into account household food inventory information, family food preferences, and schedule information, but they were unable to consider the user's emotional state, meaning they were unable to propose optimal meals according to the user's situation. Furthermore, there was no mechanism to automatically order the necessary ingredients from the proposals in conjunction with a delivery service, which meant that the systems lacked convenience. This meant that users had to go through the extra effort of purchasing ingredients, making it difficult to reduce food waste.
[1187] 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 means for registering household ingredient inventory information, means for registering the user's family information and schedule information, means for proposing an optimal menu based on the ingredient inventory information, family information, and schedule information, means for updating the inventory information, means for generating a shopping list based on the menu, means for recognizing the user's emotional state and adjusting the content of the suggestions, and means for ordering the suggested ingredients in cooperation with a delivery service. This makes it possible to make meal suggestions optimized for the user's emotional state and automatically order the necessary ingredients all at once.
[1188] "Home food inventory information"
[1189] This is information about the types, quantities, and expiration dates of food ingredients currently stored in the home.
[1190] "User's family information"
[1191] This refers to individual dietary information for each member of the household, such as age, food preferences, and allergies.
[1192] "Schedule Information"
[1193] This is information that reflects the weekly and monthly schedules of each member of the household, including meal times and whether or not they go out.
[1194] "menu"
[1195] This refers to the menu and cooking plans for the meals you plan to prepare at home.
[1196] "Update inventory information"
[1197] refers to the activity of changing or amending the current food inventory in the home to keep it up to date.
[1198] "Purchase List"
[1199] is a list of ingredients that are in short supply based on a menu, and includes information on ingredients that should be purchased.
[1200] "Recognition of emotional states"
[1201] This is the process of detecting a user's current emotional and mental state by analyzing their facial expressions, tone of voice, text input, etc.
[1202] "Adjusting the proposal content"
[1203] This refers to optimizing the content provided, such as menus and operation methods, according to the user's recognized emotional state.
[1204] "Collaboration with delivery services"
[1205] This refers to the ability to link with a service that actually orders and delivers ingredients based on the generated shopping list.
[1206] The present invention provides a system that manages household food inventory, family information, and schedule information, suggests optimal menus based on the user's emotional state, and automatically orders the necessary ingredients in cooperation with a delivery service.
[1207] The system includes the following main components:
[1208] 1. Food Inventory Management Module: Registers and manages food inventory information within the home. Specifically, it records data such as the type, quantity, and expiration date of food ingredients. The user inputs food information into the interface using a smartphone.
[1209] 2. Family Information Management Module: Registers and manages the age, food preferences, allergy information, etc. of each family member, providing basic data for providing optimal menus for each family member.
[1210] 3. Schedule Management Module: Register and manage the weekly and monthly schedules of each household member. For example, adjust the daily meal plan based on the days when the family will be working or going out.
[1211] 4. Emotion Recognition Module: Analyzes facial expressions, tone of voice, text input, etc. to recognize the user's current emotional state. This module collects user data via the camera and microphone and analyzes emotions using sensors and image processing software.
[1212] 5. Menu suggestion module: Equipped with a generative AI model to generate optimal menus based on ingredient inventory information, family information, and schedule information. By taking into account data from the emotion recognition module, it provides meal plans optimized for the user's situation.
[1213] 6. Purchasing list generation module: Based on the proposed menu, it lists the ingredients that are missing and generates a purchasing list. The generated purchasing list is displayed to the user, who can check and edit it.
[1214] 7. Delivery Integration Module: Automatically sends food orders to partner delivery services based on the purchase list. This module integrates with an external delivery API to process orders and manage their progress.
[1215] Here are some concrete examples:
[1216] If the user is busy or stressed, the emotion recognition module detects this and suggests easy-to-make meals (e.g., vegetable salad, frozen pizza). Missing ingredients (e.g., lettuce, tomato, pizza) are added to the shopping list and automatically ordered through the delivery integration module.
[1217] Additionally, when the user is in a fun mood, the app will suggest authentic meals (e.g., homemade pizza, specialty pasta) and order ingredients to create a special dining experience.
[1218] To illustrate this, here are some examples of prompts for a generative AI model:
[1219] Household food inventory: 2kg rice, 4 carrots, 500g chicken, 3 packs of tofu
[1220] Family information: Father 40 years old, loves meat, Mother 38 years old, vegetarian, Child 10 years old, no particular dislikes, Child 8 years old, no allergies
[1221] Schedule information: Monday everyone at home, Friday everyone out
[1222] User's emotional state: Stress
[1223] Generate the perfect menu.
[1224] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1225] Step 1:
[1226] The user uses a smartphone to input information about the household's food inventory, family information, and schedule. The input data is sent to the server and recorded. This allows the server to grasp the latest information about the household's food inventory, family food preferences and allergies, and schedules.
[1227] Input: Food inventory information, family information, schedule information
[1228] Output: Information stored in the database
[1229] Step 2:
[1230] The server uses a generative AI model to generate optimal menus based on ingredient inventory information, family information, and schedule information, and uses user input data as prompts to run the AI model and suggest menus.
[1231] Input: Food inventory information, family information, schedule information
[1232] Example prompt: "Household food inventory information: 2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu. Family information: Father, 40 years old, likes meat; Mother, 38 years old, vegetarian; Child, 10 years old, has no particular dislikes; Child, 8 years old, has no allergies. Schedule information: Monday, everyone is at home; Friday, everyone is out. User's emotional state: stressed. Please generate the optimal menu."
[1233] Output: Generated menu
[1234] Step 3:
[1235] The server analyzes the user's emotional state using an emotion recognition module. It identifies the user's emotional state based on facial expressions and tone of voice data provided by the user through the smartphone's camera and microphone. This determination is made using sensors and image processing software.
[1236] Input: User's facial expression data, voice data
[1237] Output: User's emotional state
[1238] Step 4:
[1239] The server fine-tunes the generated menu based on the user's emotional state. Taking into account the emotional state obtained from the emotion recognition module, the server provides a meal plan that is optimal for the user's mental state. For example, if the user is feeling stressed, the server will suggest a simple menu that can be prepared quickly.
[1240] Input: Generated menu, user's emotional state
[1241] Output: Adjusted menu
[1242] Step 5:
[1243] The server generates a purchasing list based on the adjusted menu, listing any missing ingredients. This purchasing list is displayed on the user's device. The user can view and edit this list.
[1244] Input: Adjusted menu, ingredient inventory information
[1245] Output: Purchasing list
[1246] Step 6:
[1247] The server connects with the delivery service based on the generated shopping list and automatically orders the necessary ingredients. It also uses an external delivery API to send order information and manage delivery status.
[1248] Input: Purchasing List
[1249] Output: Delivery order information, delivery status confirmation
[1250] 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.
[1251] 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.
[1252] 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.
[1253] [Fourth embodiment]
[1254] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1255] 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.
[1256] 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).
[1257] 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.
[1258] 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.
[1259] 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).
[1260] 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.
[1261] 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.
[1262] 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.
[1263] 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.
[1264] 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.
[1265] 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.
[1266] 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."
[1267] The present invention is a system for efficiently managing home food inventory and optimizing family eating habits. The system manages home food inventory information, user family information, and schedule information, and has the function of proposing optimal menus and generating shopping lists based on the information.
[1268] The system is outlined below. Users can input and register information about food inventory in their homes using a terminal. They can also register family information such as the ages, preferences, and allergies of family members, as well as their schedules, through the terminal. This information is sent to a server, where it is managed centrally.
[1269] The server uses an AI model to propose optimal menus based on household food inventory information, family information, and schedule information sent by the user. The proposed menus are displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menus and generates a shopping list. This shopping list is also displayed on the user's device.
[1270] To give a specific example, a user registers the following food inventory information for his / her home:
[1271] Rice: 2kg
[1272] Carrots: 4 pieces
[1273] Chicken: 500g
[1274] Tofu: 3 packs
[1275] Furthermore, the user registers information such as the ages of their family members and their food preferences.
[1276] Father (40 years old): I like meat.
[1277] Mother (38 years old): Vegetarian
[1278] Child (10 years old): Nothing in particular that I dislike
[1279] Child (8 years old): No allergies
[1280] Next, the user registers schedule information. For example,
[1281] Monday: Everyone stays home
[1282] Friday: Family outing
[1283] Based on this information, the server uses an AI model to generate the optimal menu. For example,
[1284] Monday's menu: Chicken curry, vegetable soup
[1285] Friday Menu: Eating out
[1286] After the menu is generated, the server checks the inventory information and lists any missing foods. For example, if onions are needed to make chicken curry but are out of stock, it adds "2 onions" to the shopping list.
[1287] In this way, the system of the present invention can efficiently manage food inventory in the home and propose menus that take into account the preferences and health status of family members, thereby reducing food waste and reducing housework.In addition, by making it easy for users to reflect special events and schedule changes in the system, flexible food management can be achieved in real time.
[1288] The processing flow will be explained below.
[1289] Step 1:
[1290] The user inputs household food inventory information (item name, quantity, purchase date, expiration date, etc.) into the terminal. For example, "2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu."
[1291] Step 2:
[1292] The device sends the entered food inventory information to the server, which stores it in a database and manages it by linking it to the user's profile.
[1293] Step 3:
[1294] The user inputs family information (age, food preferences, allergy information, etc.) into the terminal. For example, "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[1295] Step 4:
[1296] The device sends the entered family information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[1297] Step 5:
[1298] The user inputs family schedule information (events, days away, daily activities, etc.) into the terminal. For example, "Monday: everyone at home, Friday: everyone out."
[1299] Step 6:
[1300] The terminal sends the input schedule information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[1301] Step 7:
[1302] The user requests a menu suggestion from the terminal, for example, a request such as "Please suggest a menu for this week."
[1303] Step 8:
[1304] The device sends the user's request to the server, which then uses the AI model to generate the optimal menu based on the request and references registered food inventory information, family information, and schedule information.
[1305] Step 9:
[1306] The server calculates a menu suggestion and sends it to the user's device, such as "chicken curry and vegetable soup on Monday, and eat out on Friday."
[1307] Step 10:
[1308] The terminal displays the generated menu to the user, who can then confirm the proposed menu.
[1309] Step 11:
[1310] The user requests the generation of a shopping list from the terminal, for example, a request such as "Please generate this week's shopping list."
[1311] Step 12:
[1312] The terminal sends the user's request to the server, which compares the generated menu with current inventory information and lists any ingredients that are in short supply.
[1313] Step 13:
[1314] The server sends the generated shopping list to the user's device, such as "two onions, one pack of curry powder, and lettuce for salad."
[1315] Step 14:
[1316] The terminal displays the generated shopping list to the user, who can then use this list to make purchases.
[1317] Through these steps, the system efficiently manages household food inventory, proposes optimal menus that take into account the preferences and health status of family members, and generates necessary shopping lists, thereby reducing the user's housework workload and reducing food waste.
[1318] Example 1
[1319] 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."
[1320] Managing food inventory at home is complicated, leading to food waste and duplicate purchases. Creating appropriate menus that take into account the preferences and allergies of each household member requires a great deal of effort. Creating shopping lists is also time-consuming, making efficient shopping difficult. A system that can solve these problems is needed.
[1321] 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.
[1322] In this invention, the server includes means for registering household food inventory information, means for registering user family information and schedule information, means for proposing an optimal menu based on the food inventory information, family information, and schedule information using a generation AI model, means for updating the inventory information, and means for generating a shopping list using prompt sentences based on the menu. This makes it possible to efficiently manage household food inventory, efficiently create menus that take into account the preferences and health status of family members, and automatically generate the necessary shopping list.
[1323] "Home food inventory information" is information about the types and amounts of food stored in the home.
[1324] "User's family information" is information about each member of the household, such as the user's family structure, age, food preferences, and allergy information.
[1325] "Schedule information" is information about the household schedule, such as whether each member of the household is at home or out on a particular day.
[1326] A "generative AI model" is a model trained using artificial intelligence to generate optimal menus based on input data.
[1327] "Means for proposing optimal menus" refers to methods and technologies for proposing optimal menus using a generative AI model based on household food inventory information, family information, and schedule information.
[1328] "Means for updating inventory information" refers to methods and techniques for immediately updating food inventory information in the home when new information is entered or changed, and maintaining the latest information.
[1329] A "prompt" is an instruction or question entered into an AI model to obtain a specific result.
[1330] A "means for generating a shopping list" is a method or technique for automatically generating a list of necessary foods and items based on a proposed menu.
[1331] This invention is a system that manages food inventory in the home, proposes optimal menus based on the user's family information and schedule information, and generates shopping lists. The main components of this system are a terminal where the user inputs information, a server that receives and analyzes the information, and a generating AI model.
[1332] First, the user inputs and registers household food inventory information on a terminal. This includes the type of food, quantity, and expiration date. For example, information such as "rice: 2 kg" or "carrots: 4" is registered. In addition, the user inputs family information such as the age, food preferences, and allergy information of each household member. For example, information such as "father (40 years old): likes meat" and "mother (38 years old): vegetarian" is registered.
[1333] Next, users enter their family schedule information through their devices, such as "Monday: everyone at home" or "Friday: everyone out and about." This information is entered through a web-based form or a mobile app.
[1334] All input information is sent from the device to the server. The server receives the data and stores it. The Python Pandas library is used to store the data. Frameworks such as Django and FastAPI are also used. Based on this data, the server uses a generative AI model to suggest the optimal menu. This AI model is trained using TensorFlow.
[1335] The server analyzes the household's food inventory information, family information, and schedule information to generate an optimal menu. For example, it might suggest "Monday's menu: chicken curry, vegetable soup." The generated menu is then displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menu. For example, if onions are needed for chicken curry but are out of stock, "2 onions" is added to the shopping list. This shopping list is also displayed on the user's device.
[1336] Specific examples of prompt sentences are shown below.
[1337] Household food inventory: ["Rice: 2kg", "Carrots: 4", "Chicken: 500g", "Tofu: 3 packs"]
[1338] Family information: ["Father (40): Likes meat", "Mother (38): Vegetarian", "Child (10): No particular dislikes", "Child (8): No allergies"]
[1339] Schedule information: ["Monday: Everyone at home", "Friday: The whole family out"]
[1340] Use this information to generate the perfect Monday meal plan and shopping list.
[1341] In this way, the system can efficiently manage food inventory in the home, suggest meals that take into account the preferences and health status of family members, and list foods that are in short supply, thereby optimizing household eating activities.
[1342] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1343] Step 1:
[1344] The user enters household food inventory information, family information, and schedule information using a web-based form on the device or a mobile app. Specifically, the user enters food inventory information such as "2 kg of rice" and "4 carrots," as well as family information and schedule information such as "Father (40 years old): likes meat" and "Monday: everyone is at home." The entered data is temporarily stored in the device's memory.
[1345] Input: Food inventory information, family information, schedule information
[1346] Output: Input data temporarily stored on the terminal
[1347] Step 2:
[1348] The device converts all information entered by the user into JSON format or similar and sends it to the server via an HTTP POST request, which passes all data to the server in one go.
[1349] Input: Input data stored on the device
[1350] Output: HTTP POST request to the server
[1351] Step 3:
[1352] The server receives the data sent from the device and stores it in a database or in-memory storage, specifically in a data frame using the Python Pandas library.
[1353] Input: JSON format data included in the HTTP POST request
[1354] Output: Food inventory information, family information, schedule information stored in the database
[1355] Step 4:
[1356] The server uses all the stored data to feed a generative AI model, which is pre-trained using TensorFlow, to generate optimal menus.
[1357] Input: Food inventory information, family information, schedule information
[1358] Output: Optimal menu output from the generative AI model
[1359] Step 5:
[1360] The server checks the current food inventory based on the menu output from the generative AI model and lists any missing items, generating a specific shopping list.
[1361] Input: Optimal menu, food inventory information
[1362] Output: A shopping list listing the missing items
[1363] Step 6:
[1364] The server converts the generated menu and shopping list into JSON format and sends it to the terminal as an HTTP response, allowing the user to receive the latest menu and shopping list.
[1365] Input: Optimal menu, list of missing items
[1366] Output: HTTP response to the device
[1367] Step 7:
[1368] The device parses the JSON data received from the server and displays it in a format that is easy for the user to understand. For example, it displays "Monday's menu: chicken curry, vegetable soup" and "Shopping list: 2 onions" on the app screen.
[1369] Input: HTTP response data from the server
[1370] Output: Optimized menu and shopping list displayed on the user's device
[1371] (Application example 1)
[1372] 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."
[1373] Conventional home food management systems propose menus that take into account food inventory information, family preferences, and schedules, but they still face challenges in further reducing housework and food waste. Furthermore, they lack the functionality to automatically order ingredients needed for the proposed menus from a food supply service, requiring users to go shopping in person, which is time-consuming and labor-intensive. This creates challenges in improving the efficiency of food inventory management and shopping.
[1374] 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.
[1375] In this invention, the server includes means for registering household food inventory information, means for registering family information and schedule information, means for proposing an optimal menu based on the food inventory information, family information and schedule information, means for updating the inventory information, and means for generating a shopping list based on the menu and automatically ordering from a food supply service. This allows users to efficiently manage food inventory in their homes and automatically order necessary ingredients from a food supply service, thereby reducing housework and food waste.
[1376] "Home food inventory information" is detailed information such as the type, quantity, and expiration date of food stored in the home.
[1377] "User's family information" is detailed information such as the user's family structure, age, food preferences, and allergy information.
[1378] "Schedule information" is time management information such as family plans and events.
[1379] The "means for proposing the optimal menu" is a technical means for generating the optimal meal menu useful for the family based on the information input by the user.
[1380] "Means for updating inventory information" refers to technical means for keeping the status of food used or purchased by the user up to date at all times.
[1381] The "means for generating a shopping list and automatically ordering from a supply service" refers to a technical means for listing the food items needed and automatically sending them to a supply service.
[1382] A "supply service" is an external service that receives a user's order and delivers the required food.
[1383] The present invention provides a system for efficiently managing food inventory in a home and optimizing the eating habits of a user and his / her family. Specific embodiments of the system are described below.
[1384] The system provides a terminal that can register food inventory information, family information, and schedule information for the home. The user can use this terminal to input the following information:
[1385] Food inventory information (e.g., quantity and expiration date of rice, carrots, chicken, tofu, etc.)
[1386] Family information (e.g., age, food preferences, allergies)
[1387] Schedule information (e.g., days when all family members are at home, days when they are out)
[1388] This information is sent in real time to a cloud server for centralized management. The server uses an AI model to generate optimal menus based on the received food inventory information, family information, and schedule information. The AI model uses a generative AI model to propose menus that take the user's specific requirements into account.
[1389] The menu created by the server is displayed on the user's device. Furthermore, the server creates a shopping list by listing any missing foods based on the created menu. The server also provides a means to automatically order food by linking with a food supply service, allowing users to easily obtain the necessary foods.
[1390] The system hardware includes a smartphone or tablet for users to input information, and uses cloud servers such as AWS (Amazon Web Services) and Google Cloud as the cloud environment for executing processing.
[1391] The software includes:
[1392] Flask: Implementing API endpoints using a Python-based web framework
[1393] requests: Used to call the API of the provided service
[1394] Generative AI model: Generates optimal menus based on household food inventory, family information, and schedule information
[1395] Examples:
[1396] The user uses a smartphone to enter the following information:
[1397] 1. Food inventory information:
[1398] Rice: 2kg
[1399] Carrots: 4
[1400] Chicken: 500g
[1401] Tofu: 3 packs
[1402] 2. Family Information:
[1403] Father (40 years old): I like meat.
[1404] Mother (38 years old): Vegetarian
[1405] Child (10 years old): Nothing in particular that I dislike
[1406] Child (8 years old): No allergies
[1407] 3. Schedule Information:
[1408] Monday: Everyone stays home
[1409] Friday: Family outing
[1410] Example prompt sentence:
[1411] "Food inventory registered by the user: 'Rice: 2kg', 'Carrots: 4', 'Chicken: 500g', 'Tofu: 3 packs' Family information registered by the user: 'Father (40): Likes meat', 'Mother (38): Vegetarian', 'Child (10): No particular dislikes', 'Child (8): No allergies' Schedule information registered by the user: 'Monday: Everyone at home', 'Friday: Whole family out' Please generate Python code that will suggest the optimal menu based on this and automatically order any missing ingredients from a supply service."
[1412] This allows users to easily receive optimal meal plans and the necessary ingredients from the comfort of their own home, reducing housework and food waste.
[1413] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1414] Step 1: The user uses the terminal to input food inventory information, family information, and schedule information for the home.
[1415] Input: household food inventory information, family information, schedule information
[1416] How it works: A user uses a smartphone or tablet to enter food inventory information, family information, and schedule information into a dedicated application. Specifically, the user enters food type (e.g., rice, carrots, chicken, tofu, etc.), quantity, expiration date, family member ages, food preferences, allergy information, and family schedule information.
[1417] Output: The input information is stored in the terminal.
[1418] Step 2: The user's device sends the entered information to the server.
[1419] Input: Food inventory information, family information, schedule information stored on the device
[1420] Operation: The user's terminal transmits the entered data to the server via the Internet.
[1421] Output: Food inventory information, family information, and schedule information are stored on the server.
[1422] Step 3: Based on the information received by the server, the AI model is used to generate an optimal menu.
[1423] Input: Food inventory information, family information, schedule information stored on the server
[1424] How it works: The server inputs food inventory information, family information, and schedule information into the AI model to generate the optimal menu. The generative AI model calculates the appropriate menu and selects the menu that best suits the user's household situation.
[1425] Output: The optimal menu is generated and stored on the server.
[1426] Step 4: The server sends the generated menu to the user's terminal.
[1427] Input: Generated menu information
[1428] Operation: The server sends the generated menu to the user's device, where the user can view the suggested menu through the device's application.
[1429] Output: The menu information is displayed on the user's device.
[1430] Step 5: The server generates a shopping list based on the generated menu, listing any missing foods.
[1431] Input: Generated menu information, food inventory information
[1432] Operation: The server compares the menu created by the server with the current food inventory information to identify any missing ingredients. Specifically, it compares the ingredients needed for the menu with the inventory information and lists the missing ingredients.
[1433] Output: A shopping list of missing ingredients is generated.
[1434] Step 6: The server automatically places an order with the supply service based on the generated shopping list.
[1435] Input: Shopping list
[1436] How it works: The server calls the delivery service API to order the required food items based on the generated shopping list. The delivery service receives the order and arranges for the delivery of the ingredients to the user's address.
[1437] Output: An order is placed with the supply service and the required ingredients are delivered.
[1438] 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.
[1439] This invention combines an emotion engine with a system for efficiently managing home food inventory and optimizing family eating habits. The system manages home food inventory information, user family information, and schedule information, and based on this information, suggests optimal menus and generates shopping lists, while also recognizing the user's emotional state and adjusting the suggestions accordingly.
[1440] The system is outlined below. Users can input and register information about food inventory in their homes using a terminal. They can also register family information such as the ages, preferences, and allergies of family members, as well as their schedules, through the terminal. This information is sent to a server, where it is managed centrally.
[1441] The server uses an AI model to propose optimal menus based on household food inventory information, family information, and schedule information sent by the user. The proposed menus are displayed on the user's device. Furthermore, the server lists foods that are low in stock based on the menus and generates a shopping list. This shopping list is also displayed on the user's device.
[1442] The system also incorporates an emotion engine that can recognize the user's emotional state. The emotion engine analyzes emotions from the user's facial expressions, tone of voice, input text, etc., to identify the user's current emotional state.
[1443] To give a specific example, a user registers the following food inventory information for his / her home:
[1444] Rice: 2kg
[1445] Carrots: 4 pieces
[1446] Chicken: 500g
[1447] Tofu: 3 packs
[1448] Furthermore, the user registers information such as the ages of their family members and their food preferences.
[1449] Father (40 years old): I like meat.
[1450] Mother (38 years old): Vegetarian
[1451] Child (10 years old): Nothing in particular that I dislike
[1452] Child (8 years old): No allergies
[1453] Next, the user registers schedule information. For example,
[1454] Monday: Everyone stays home
[1455] Friday: Family outing
[1456] Based on this information, the server uses an AI model to generate the optimal menu. For example,
[1457] Monday's menu: Chicken curry, vegetable soup
[1458] Friday Menu: Eating out
[1459] After the menu is generated, the server checks the inventory information and lists any missing foods. For example, if onions are needed to make chicken curry but are out of stock, it adds "2 onions" to the shopping list.
[1460] If the user is feeling stressed, the emotion engine can detect this and suggest simple, quick meals or their favorite dishes. If the user is in a happy mood, it can offer special recipes or ideas for new challenges. In this way, the emotion engine can adjust its suggestions based on the user's situation and emotional state.
[1461] For example, if the user is detected as being stressed:
[1462] Suggested menu: Easy stir-fry and pasta
[1463] Also, if the user is detected as having fun:
[1464] Suggested meals: authentic dinners and new recipes
[1465] In this way, the system of the present invention efficiently manages food inventory in the home and suggests menus that take into account the preferences and health status of family members, while the emotion engine adjusts the suggestions to suit the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[1466] In addition, the emotion engine collects and analyzes information from multiple data sources, enabling more accurate emotion recognition, ensuring users always receive a meal plan optimized for their condition.
[1467] The processing flow will be explained below.
[1468] Step 1:
[1469] The user inputs household food inventory information (item name, quantity, purchase date, expiration date, etc.) into the terminal. For example, "2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu."
[1470] Step 2:
[1471] The device sends the entered food inventory information to the server, which stores it in a database and manages it by linking it to the user's profile.
[1472] Step 3:
[1473] The user inputs family information (age, food preferences, allergy information, etc.) into the terminal. For example, "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[1474] Step 4:
[1475] The device sends the entered family information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[1476] Step 5:
[1477] The user inputs family schedule information (events, days away, daily activities, etc.) into the terminal. For example, "Monday: everyone at home, Friday: everyone out."
[1478] Step 6:
[1479] The terminal sends the input schedule information to the server, which stores this information in a database and manages it by linking it to the user's profile.
[1480] Step 7:
[1481] The user inputs emotion information for the emotion engine from the terminal or automatically acquires it, for example, by showing facial expressions in front of the terminal camera or by analyzing the tone of voice.
[1482] Step 8:
[1483] The device acquires emotion information and sends it to the server, which uses an emotion engine to analyze and recognize the user's emotional state.
[1484] Step 9:
[1485] The user requests a menu suggestion from the terminal, for example, a request such as "Please suggest a menu for this week."
[1486] Step 10:
[1487] The device sends the user's request to the server, which then uses the AI model and emotion engine to generate the optimal menu based on the received request and referring to registered food inventory information, family information, schedule information, and emotion information.
[1488] Step 11:
[1489] The server calculates the suggested menu and sends it to the user's device. For example, "Chicken curry and vegetable soup on Monday, and eat out on Friday." If the user's emotional state is stressed, simple dishes are suggested.
[1490] Step 12:
[1491] The terminal displays the generated menu to the user, who can then confirm the proposed menu.
[1492] Step 13:
[1493] The user requests the generation of a shopping list from the terminal, for example, a request such as "Please generate this week's shopping list."
[1494] Step 14:
[1495] The terminal sends the user's request to the server, which compares the generated menu with current inventory information and lists any ingredients that are in short supply.
[1496] Step 15:
[1497] The server sends the generated shopping list to the user's device, such as "two onions, one pack of curry powder, and lettuce for salad."
[1498] Step 16:
[1499] The terminal displays the generated shopping list to the user, who can then use this list to make purchases.
[1500] Through these steps, the system efficiently manages household food inventory, proposes optimal menus that take into account the preferences and health status of family members, generates necessary shopping lists, and responds according to the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[1501] Example 2
[1502] 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."
[1503] Managing food inventory at home is a tedious and time-consuming task for many families, and it is particularly challenging to propose menus based on family members' food preferences and schedules. Furthermore, a system that takes into account the user's emotional state can affect meal preparation is required. Furthermore, reducing food waste and easing the household chore burden on users are major challenges in modern society.
[1504] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for registering food inventory information for the home, a means for registering family composition information and schedule information for the user, a means for proposing an optimal menu based on the food inventory information, family composition information, and schedule information, a means for updating the inventory information, a means for generating a shopping list based on the menu, and a means for recognizing the user's emotional state and adjusting the suggested content. This makes it possible to efficiently manage food inventory in the home and to propose an optimal menu based on the family's preferences, health status, schedule, and even the user's emotional state.
[1505] "Home food inventory information" is information about the types, quantities, and expiration dates of food items held in the home.
[1506] "Family composition information" is information about the individual characteristics of each member of the household, such as age, sex, food preferences, and allergy information.
[1507] "Schedule information" is information about the plans and activities of each member of the household.
[1508] The "means for proposing the optimal menu" is a means for automatically generating and proposing meal menus suitable for each member of the household based on information on food inventory, family composition, and schedule information.
[1509] The "means for updating inventory information" refers to a means for automatically updating food inventory information and maintaining the latest inventory status each time food is consumed in the household.
[1510] The "means for generating a shopping list" is a means for identifying missing foods based on the proposed menu and automatically creating a list of necessary purchase items.
[1511] "Means for recognizing the user's emotional state and adjusting the content of suggestions" refers to means for analyzing the user's facial expression, tone of voice, input text, etc., to identify the user's current emotional state, and adjust menu suggestions and shopping list contents based on that.
[1512] This invention combines an emotion engine with a system for efficiently managing food inventory in the home and optimizing the family's diet. The system manages information on the home's food inventory, the user's family composition, and schedule information, and based on this information, suggests optimal menus and generates shopping lists. It also has the ability to recognize the user's emotional state and adjust the suggestions accordingly.
[1513] Users can register by entering the following information using a device such as a smartphone or computer:
[1514] Household food inventory information (e.g., "2 kg rice, 4 carrots, 500 g chicken, 3 packs of tofu").
[1515] Family composition information (e.g., "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): no particular dislikes, Child (8 years old): no allergies").
[1516] Schedule information (e.g., "Monday: Everyone at home, Friday: Whole family out").
[1517] The device sends this information to a server, which then centrally manages this information using a database such as MySQL or PostgreSQL.
[1518] The system's server uses an AI model to suggest optimal menus based on household food inventory information, family composition information, and schedule information sent by the user. For example, it might suggest "chicken curry and vegetable soup" for Monday's menu and "eating out" for Friday's menu. The generated menu information is sent to the device via an HTTP response, and the device displays the menu to the user through the app.
[1519] The server also checks food inventory information, lists any missing foods, and generates a shopping list. The shopping list is also sent to the device via an HTTP response, and the user can check the shopping list on the app. For example, if "2 onions" are missing when creating a chicken curry menu, "2 onions" will be added to the shopping list.
[1520] Furthermore, the system incorporates an emotion engine that analyzes the user's facial expressions, tone of voice, and input text to identify their current emotional state. The server then adjusts its suggestions based on this emotional state. For example, if it recognizes that the user is stressed, it will suggest simple meals with short cooking times, while if the user appears happy, it will suggest authentic dinners or new recipes.
[1521] Here is an example prompt:
[1522] "We have rice, carrots, chicken, and tofu in stock. Everyone will be at home on Monday, so please suggest a meal using these ingredients."
[1523] "My father (age 40) likes meat, and my mother (age 38) is a vegetarian. Can you suggest a dinner menu that will suit everyone's tastes?"
[1524] In this way, the system of the present invention efficiently manages food inventory in the home, suggests menus that take into account the preferences and health status of family members, and adjusts suggestions to adapt to the user's emotional state, thereby reducing the user's housework workload and reducing food waste.
[1525] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1526] Step 1:
[1527] The user inputs food inventory information into the terminal.
[1528] Specifically, the user opens the app on their smartphone or computer and enters "2kg of rice, 4 carrots, 500g of chicken, 3 packs of tofu" into the text input field.
[1529] Input: Home food inventory information.
[1530] Output: Food inventory information stored as temporary data on the device.
[1531] Step 2:
[1532] The user inputs family composition information into the terminal.
[1533] Specifically, the user enters the following information into the app's input form: "Father (40 years old): likes meat, Mother (38 years old): vegetarian, Child (10 years old): nothing in particular they dislike, Child (8 years old): no allergies."
[1534] Input: Family composition information.
[1535] Output: Family composition information stored as temporary data on the device.
[1536] Step 3:
[1537] The user inputs schedule information into the terminal.
[1538] Specifically, the user enters "Monday: everyone at home, Friday: everyone out" into the app's schedule field.
[1539] Input: Family schedule information.
[1540] Output: Schedule information saved as temporary data in the device.
[1541] Step 4:
[1542] The terminal sends the input information to the server.
[1543] Specifically, the terminal uses an HTTP request to send the food inventory information, family composition information, and schedule information entered by the user to the server.
[1544] Input: Food inventory information, family composition information, and schedule information stored on the device.
[1545] Output: Various information sent to the server.
[1546] Step 5:
[1547] The server stores the data in a database and manages it centrally.
[1548] Specifically, the server stores the received information in a database such as MySQL or PostgreSQL.
[1549] Input: Food inventory information, family composition information, and schedule information received by the server.
[1550] Output: Various information stored in the database.
[1551] Step 6:
[1552] The server generates the menu using an AI model.
[1553] Specifically, the server retrieves information from the database and queries the AI model to generate the optimal menu, such as "suggest chicken curry and vegetable soup on Mondays."
[1554] Input: Food inventory information, family composition information, and schedule information stored in the database.
[1555] Output: The generated menu information.
[1556] Step 7:
[1557] The server sends the generated menu to the terminal.
[1558] Specifically, the server uses an HTTP response to send the generated menu information to the terminal.
[1559] Input: Generated menu information.
[1560] Output: Menu information sent to the device.
[1561] Step 8:
[1562] The terminal displays the menu to the user.
[1563] Specifically, the device displays the menu information it receives on the user interface, allowing the user to check the suggested menu on the app.
[1564] Input: Menu information sent to the device.
[1565] Output: The menu information displayed to the user.
[1566] Step 9:
[1567] The server lists the foods that are in short supply based on the inventory information and generates a shopping list.
[1568] Specifically, the server checks food inventory information, identifies any missing items, and generates a shopping list. For example, if there are no onions needed for chicken curry, "2 onions" will be added to the shopping list.
[1569] Input: Food inventory information, generated menu information.
[1570] Output: The generated shopping list.
[1571] Step 10:
[1572] The server sends the shopping list to the terminal.
[1573] Specifically, the server uses the HTTP response to send the generated shopping list to the terminal.
[1574] Input: The generated shopping list.
[1575] Output: Shopping list sent to the device.
[1576] Step 11:
[1577] The terminal displays the shopping list to the user.
[1578] Specifically, the device displays the received shopping list on the user interface, allowing the user to check the shopping list on the app.
[1579] Input: Shopping list sent to the device.
[1580] Output: The shopping list displayed to the user.
[1581] Step 12:
[1582] The server uses an emotion engine to recognize the user's emotional state.
[1583] Specifically, the server uses an emotion engine to analyze the user's facial expressions, tone of voice, input text, etc. to identify their emotional state. For example, it may recognize that the user is feeling stressed.
[1584] Input: User facial expressions, tone of voice, and input text.
[1585] Output: Identified emotional state.
[1586] Step 13:
[1587] The server adjusts the suggestions based on the emotional state.
[1588] Specifically, the server tailors its suggestions based on the emotional state it identifies, for example, suggesting easy-to-make meals if you're feeling stressed.
[1589] Input: Identified emotional state.
[1590] Output: Adjusted menu information.
[1591] Step 14:
[1592] The terminal displays the adjusted menu to the user.
[1593] Specifically, the device displays the adjusted menu information on the user interface, and the user can check the adjusted menu on the app.
[1594] Input: Adjusted menu information.
[1595] Output: The adjusted menu information displayed to the user.
[1596] (Application example 2)
[1597] 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 robot 414 will be referred to as a "terminal."
[1598] Conventional food inventory management systems propose optimal menus by taking into account household food inventory information, family food preferences, and schedule information, but they were unable to consider the user's emotional state, meaning they were unable to propose optimal meals according to the user's situation. Furthermore, there was no mechanism to automatically order the necessary ingredients from the proposals in conjunction with a delivery service, which meant that the systems lacked convenience. This meant that users had to go through the extra effort of purchasing ingredients, making it difficult to reduce food waste.
[1599] 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 means for registering household ingredient inventory information, means for registering the user's family information and schedule information, means for proposing an optimal menu based on the ingredient inventory information, family information, and schedule information, means for updating the inventory information, means for generating a shopping list based on the menu, means for recognizing the user's emotional state and adjusting the content of the suggestions, and means for ordering the suggested ingredients in cooperation with a delivery service. This makes it possible to make meal suggestions optimized for the user's emotional state and automatically order the necessary ingredients all at once.
[1600] "Home food inventory information"
[1601] This is information about the types, quantities, and expiration dates of food ingredients currently stored in the home.
[1602] "User's family information"
[1603] This refers to individual dietary information for each member of the household, such as age, food preferences, and allergies.
[1604] "Schedule Information"
[1605] This is information that reflects the weekly and monthly schedules of each member of the household, including meal times and whether or not they go out.
[1606] "menu"
[1607] This refers to the menu and cooking plans for the meals you plan to prepare at home.
[1608] "Update inventory information"
[1609] refers to the activity of changing or amending the current food inventory in the home to keep it up to date.
[1610] "Purchase List"
[1611] is a list of ingredients that are in short supply based on a menu, and includes information on ingredients that should be purchased.
[1612] "Recognition of emotional states"
[1613] This is the process of detecting a user's current emotional and mental state by analyzing their facial expressions, tone of voice, text input, etc.
[1614] "Adjusting the proposal content"
[1615] This refers to optimizing the content provided, such as menus and operation methods, according to the user's recognized emotional state.
[1616] "Collaboration with delivery services"
[1617] This refers to the ability to link with a service that actually orders and delivers ingredients based on the generated shopping list.
[1618] The present invention provides a system that manages household food inventory, family information, and schedule information, suggests optimal menus based on the user's emotional state, and automatically orders the necessary ingredients in cooperation with a delivery service.
[1619] The system includes the following main components:
[1620] 1. Food Inventory Management Module: Registers and manages food inventory information within the home. Specifically, it records data such as the type, quantity, and expiration date of food ingredients. The user inputs food information into the interface using a smartphone.
[1621] 2. Family Information Management Module: Registers and manages the age, food preferences, allergy information, etc. of each family member, providing basic data for providing optimal menus for each family member.
[1622] 3. Schedule Management Module: Register and manage the weekly and monthly schedules of each household member. For example, adjust the daily meal plan based on the days when the family will be working or going out.
[1623] 4. Emotion Recognition Module: Analyzes facial expressions, tone of voice, text input, etc. to recognize the user's current emotional state. This module collects user data via the camera and microphone and analyzes emotions using sensors and image processing software.
[1624] 5. Menu suggestion module: Equipped with a generative AI model to generate optimal menus based on ingredient inventory information, family information, and schedule information. By taking into account data from the emotion recognition module, it provides meal plans optimized for the user's situation.
[1625] 6. Purchasing list generation module: Based on the proposed menu, it lists the ingredients that are missing and generates a purchasing list. The generated purchasing list is displayed to the user, who can check and edit it.
[1626] 7. Delivery Integration Module: Automatically sends food orders to partner delivery services based on the purchase list. This module integrates with an external delivery API to process orders and manage their progress.
[1627] Here are some concrete examples:
[1628] If the user is busy or stressed, the emotion recognition module detects this and suggests easy-to-make meals (e.g., vegetable salad, frozen pizza). Missing ingredients (e.g., lettuce, tomato, pizza) are added to the shopping list and automatically ordered through the delivery integration module.
[1629] Additionally, when the user is in a fun mood, the app will suggest authentic meals (e.g., homemade pizza, specialty pasta) and order ingredients to create a special dining experience.
[1630] To illustrate this, here are some examples of prompts for a generative AI model:
[1631] Household food inventory: 2kg rice, 4 carrots, 500g chicken, 3 packs of tofu
[1632] Family information: Father 40 years old, loves meat, Mother 38 years old, vegetarian, Child 10 years old, no particular dislikes, Child 8 years old, no allergies
[1633] Schedule information: Monday everyone at home, Friday everyone out
[1634] User's emotional state: Stress
[1635] Generate the perfect menu.
[1636] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1637] Step 1:
[1638] The user uses a smartphone to input information about the household's food inventory, family information, and schedule. The input data is sent to the server and recorded. This allows the server to grasp the latest information about the household's food inventory, family food preferences and allergies, and schedules.
[1639] Input: Food inventory information, family information, schedule information
[1640] Output: Information stored in the database
[1641] Step 2:
[1642] The server uses a generative AI model to generate optimal menus based on ingredient inventory information, family information, and schedule information, and uses user input data as prompts to run the AI model and suggest menus.
[1643] Input: Food inventory information, family information, schedule information
[1644] Example prompt: "Household food inventory information: 2 kg of rice, 4 carrots, 500 g of chicken, 3 packs of tofu. Family information: Father, 40 years old, likes meat; Mother, 38 years old, vegetarian; Child, 10 years old, has no particular dislikes; Child, 8 years old, has no allergies. Schedule information: Monday, everyone is at home; Friday, everyone is out. User's emotional state: stressed. Please generate the optimal menu."
[1645] Output: Generated menu
[1646] Step 3:
[1647] The server analyzes the user's emotional state using an emotion recognition module. It identifies the user's emotional state based on facial expressions and tone of voice data provided by the user through the smartphone's camera and microphone. This determination is made using sensors and image processing software.
[1648] Input: User's facial expression data, voice data
[1649] Output: User's emotional state
[1650] Step 4:
[1651] The server fine-tunes the generated menu based on the user's emotional state. Taking into account the emotional state obtained from the emotion recognition module, the server provides a meal plan that is optimal for the user's mental state. For example, if the user is feeling stressed, the server will suggest a simple menu that can be prepared quickly.
[1652] Input: Generated menu, user's emotional state
[1653] Output: Adjusted menu
[1654] Step 5:
[1655] The server generates a purchasing list based on the adjusted menu, listing any missing ingredients. This purchasing list is displayed on the user's device. The user can view and edit this list.
[1656] Input: Adjusted menu, ingredient inventory information
[1657] Output: Purchasing list
[1658] Step 6:
[1659] The server connects with the delivery service based on the generated shopping list and automatically orders the necessary ingredients. It also uses an external delivery API to send order information and manage delivery status.
[1660] Input: Purchasing List
[1661] Output: Delivery order information, delivery status confirmation
[1662] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice 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 voice data.
[1663] 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.
[1664] 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 robot 414.
[1665] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1666] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1667] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1668] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1669] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1670] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1671] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1672] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1673] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1674] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1675] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1676] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1677] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1678] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1679] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1680] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1681] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1682] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1683] The following is further disclosed regarding the above embodiment.
[1684] (Claim 1)
[1685] a means for registering household food inventory information;
[1686] A means for registering user's family information and schedule information;
[1687] a means for suggesting an optimal menu based on the food inventory information, family information, and schedule information;
[1688] a means for updating inventory information;
[1689] means for generating a shopping list based on the menu;
[1690] A system including:
[1691] (Claim 2)
[1692] The food inventory information includes expiration date information.
[1693] 10. The system of claim 1.
[1694] (Claim 3)
[1695] said system comprising means for automatically replenishing stock of staple foods;
[1696] 10. The system of claim 1.
[1697] "Example 1"
[1698] (Claim 1)
[1699] a means for registering household food inventory information;
[1700] A means for registering user's family information and schedule information;
[1701] A means for proposing an optimal menu based on the food inventory information, family information, and schedule information using a generation AI model;
[1702] a means for updating inventory information;
[1703] means for generating a shopping list using prompt sentences based on the menu;
[1704] A system including:
[1705] (Claim 2)
[1706] 10. The system of claim 1, wherein the food inventory information includes expiration date information.
[1707] (Claim 3)
[1708] 10. The system of claim 1, wherein said system includes means for automatically replenishing food inventory.
[1709] "Application Example 1"
[1710] (Claim 1)
[1711] a means for registering household food inventory information;
[1712] A means for registering user's family information and schedule information;
[1713] a means for suggesting an optimal menu based on the food inventory information, family information, and schedule information;
[1714] a means for updating inventory information;
[1715] means for generating a shopping list based on said menu and automatically placing an order with a food supply service;
[1716] A system including:
[1717] (Claim 2)
[1718] The food inventory information includes expiration date information.
[1719] 10. The system of claim 1.
[1720] (Claim 3)
[1721] the system includes means for automatically replenishing the food supply inventory, and includes means associated with the supply service;
[1722] 10. The system of claim 1.
[1723] "Example 2: Combining Emotion Engines"
[1724] (Claim 1)
[1725] a means for registering household food inventory information;
[1726] A means for registering user's family composition information and schedule information;
[1727] a means for proposing an optimal menu based on the food inventory information, family composition information, and schedule information;
[1728] a means for updating inventory information;
[1729] means for generating a shopping list based on the menu;
[1730] means for recognizing a user's emotional state and adjusting the suggestions;
[1731] A system including:
[1732] (Claim 2)
[1733] The food inventory information includes expiration date information.
[1734] 10. The system of claim 1.
[1735] (Claim 3)
[1736] said system comprising means for automatically replenishing stock of staple foods;
[1737] 10. The system of claim 1.
[1738] "Application example 2 when combining emotion engines"
[1739] (Claim 1)
[1740] A means for registering household food inventory information;
[1741] A means for registering user's family information and schedule information;
[1742] A means for proposing an optimal menu based on the food stock information, family information, and schedule information;
[1743] a means for updating inventory information;
[1744] means for generating a shopping list based on the menu;
[1745] means for recognizing a user's emotional state and adjusting the suggestions;
[1746] A way to order suggested ingredients in collaboration with delivery services,
[1747] A system including:
[1748] (Claim 2)
[1749] The food ingredient inventory information includes expiration date information.
[1750] 10. The system of claim 1.
[1751] (Claim 3)
[1752] The system includes means for automatically replenishing the stock of food ingredients.
[1753] 10. The system of claim 1. [Explanation of symbols]
[1754] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. a means for registering household food inventory information; A means for registering user's family information and schedule information; a means for suggesting an optimal menu based on the food inventory information, family information, and schedule information; a means for updating inventory information; means for generating a shopping list based on the menu; A system including:
2. The food inventory information includes expiration date information. The system of claim 1 .
3. said system comprising means for automatically replenishing stock of staple foods; The system of claim 1 .
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A