System
The system automates nutritionally balanced meal planning and ingredient ordering, addressing inefficiencies in existing systems by providing a terminal for selection, server for calculation, and online store integration, thereby reducing user effort and waste.
Patent Information
- Application Number
- JP2024121636
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-26
- Publication Date
- 2026-02-05
AI Technical Summary
Households and individuals face challenges in efficiently selecting nutritionally balanced menus, planning meals, and purchasing ingredients without wasting food, as existing systems lack automation and reference for future selections.
A system that includes a terminal for menu selection, a server for nutritional balance calculation and ingredient list generation, and an online store API for one-click ordering, with historical data for improved efficiency and reduced waste.
Enables efficient planning of nutritionally balanced meals and reduces food waste by automating ingredient selection and ordering, minimizing user effort and time.
Smart Images

Figure 2026019888000001_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] The problem that this invention aims to solve is to provide a system that enables households and individuals to efficiently select nutritionally balanced menus and easily purchase the ingredients needed for those menus. Specifically, it aims to provide a means for realizing nutritionally balanced meals by eliminating the effort of planning daily menus and wasting ingredients. Another objective is to reduce the time and effort required for shopping and reduce food waste. [Means for solving the problem]
[0005] The present invention solves the above-mentioned problems by providing a system including a means for a user to select a weekly menu, a means for calculating and visually displaying nutritional balance based on the selected menu, a means for automatically generating a list of ingredients required for the selected menu, a means for ordering ingredients online based on the generated ingredient list, and a means for saving past menu selections and purchase history to use as reference when selecting a menu or purchasing ingredients next time.
[0006] This system allows users to easily select a week's worth of menu items using their devices, and the server calculates and displays a graph of the nutritional balance based on the selections. It also automatically generates a list of ingredients needed and allows online ordering with one click, preventing food waste and significantly reducing the effort required for shopping. Furthermore, past data can be used to more efficiently select menu items and purchase ingredients for the next time.
[0007] "User" refers to an individual or household who uses the system and is the entity that selects menus, checks nutritional balance, and orders ingredients.
[0008] A "menu" refers to a combination of dishes and menu items that a user selects when dining.
[0009] "Nutritional balance" indicates the amount and proportion of each nutrient contained in the menu selected by the user, and refers to the standard for maintaining a healthy diet.
[0010] "Visual display means" refers to a device or method that displays information such as nutritional balance in a format such as a graph or chart in an easy-to-understand manner for the user.
[0011] "Ingredient list" refers to a list that lists the names and quantities of specific ingredients required based on the selected menu.
[0012] "Means for automatic generation" refers to a method or device in which a system automatically performs processing and generates a result without user operation.
[0013] "Means of ordering online" refers to functions and systems that allow you to purchase all the ingredients you need in one go using the Internet.
[0014] "Past menu selection and purchase history" refers to a record of the menus the user previously selected and ingredients purchased, and is data that is saved for future reference. [Brief explanation of the drawings]
[0015] [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
[0016] 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.
[0017] First, the terms used in the following description will be explained.
[0018] 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).
[0019] 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.
[0020] 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.
[0021] 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.
[0022] 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."
[0023] [First embodiment]
[0024] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0025] 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.
[0026] 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).
[0027] 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.
[0028] 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.
[0029] 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.
[0030] 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.
[0031] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0032] 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.
[0033] 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.
[0034] 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.
[0035] 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."
[0036] The present invention provides a system that enables a user to efficiently plan a nutritionally balanced meal and easily purchase the ingredients necessary for that meal. An embodiment of the system will be described below in detail.
[0037] Overall system configuration
[0038] The system includes a terminal that accepts user input, a server that processes and manages data, and an API for an online store that supplies ingredients.
[0039] 1. Terminal
[0040] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[0041] 2. Server
[0042] A database that stores and manages menu information and nutritional data.
[0043] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[0044] A function that automatically generates a list of required ingredients and sends order data to the online store.
[0045] 3. Online Store API
[0046] A third-party service that processes food orders and arranges delivery.
[0047] Program processing
[0048] Menu selection
[0049] The server retrieves a weekly menu list from the database and sends it to the terminal. The user selects a menu for each day of the week from Monday to Sunday on the terminal and sends this information to the server.
[0050] Nutritional balance display
[0051] The server retrieves nutritional information for each selected menu from the database, calculates the overall nutritional balance, generates data for visually displaying the calculation results as a graph, and sends it to the terminal. The terminal then displays this graph to the user.
[0052] Ingredient list generation and display
[0053] The server retrieves all the ingredient information required for the selected menu from the database and automatically generates an ingredient list, which is then sent to the terminal, where the user can confirm the ingredients and place the order with one click.
[0054] Order ingredients online
[0055] When the user clicks the order button, the terminal sends a request to the server. The server sends the order data to the online store's API, and the order process begins. The order completion status is sent to the terminal, and a confirmation message is displayed to the user.
[0056] Specific examples
[0057] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server obtains and calculates the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated, and the user can place an order with one click. The order data is sent to the online store, and the ingredients are delivered.
[0058] This system allows users to efficiently and easily plan balanced meals and purchase the ingredients they need without waste, reducing the effort required for nutritional management and shopping, and contributing to reducing food waste.
[0059] The processing flow will be explained below.
[0060] Step 1:
[0061] A user logs in to the system using a terminal and accesses the menu selection page.
[0062] Step 2:
[0063] The server retrieves a week's worth of menu lists from the database and sends them to the terminal.
[0064] Step 3:
[0065] The terminal displays a menu list, and the user selects a menu for each day of the week from Monday to Sunday.
[0066] Step 4:
[0067] The terminal transmits the user's selection to the server.
[0068] Step 5:
[0069] Based on the selected menu, the server retrieves nutritional information (e.g., calories, protein, fat, vitamins, etc.) for each menu from the database.
[0070] Step 6:
[0071] The server calculates the overall nutritional balance of a week's worth of menus and generates graph data for visual display.
[0072] Step 7:
[0073] The server sends the generated graph data to the terminal.
[0074] Step 8:
[0075] The terminal displays a nutritional balance graph to the user, allowing the user to visually check the overall nutritional balance.
[0076] Step 9:
[0077] The server acquires all the ingredient information required for the selected menu from the database and automatically generates an ingredient list.
[0078] Step 10:
[0079] The server transmits the generated ingredient list to the terminal.
[0080] Step 11:
[0081] The terminal displays the ingredient list to the user and displays a "Bulk Order" button for confirmation.
[0082] Step 12:
[0083] User clicks the "Bulk Order" button.
[0084] Step 13:
[0085] The terminal sends a one-click ordering request to the server.
[0086] Step 14:
[0087] The server sends the order data via the online store's API and starts the food purchasing process.
[0088] Step 15:
[0089] The online store accepts the order and sends the order completion status to the server.
[0090] Step 16:
[0091] The server sends the order completion status to the terminal, and the terminal displays a confirmation message of the order completion to the user.
[0092] Step 17:
[0093] The server stores the user's menu selection history and purchase history in a database.
[0094] Example 1
[0095] 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."
[0096] In today's busy daily lives, users need a way to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients. However, calculating nutritional balance, listing ingredients, and ordering from online stores require time and effort. In addition, there is a lack of systems that can provide reference information for next menu selections and ingredient purchases based on past menu selections and purchase history, so automation and optimization are needed in this area.
[0097] 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.
[0098] In this invention, the server includes information device means for allowing the user to select a meal menu, computer means for calculating and visually displaying the nutritional balance based on the selected menu, data processing means for automatically generating an ingredient list required for the selected menu, network communication means for ordering ingredients online based on the generated ingredient list, and database means for storing past menu selections and purchase history for reference when selecting a menu or purchasing ingredients next time. This allows the user to efficiently and easily plan nutritionally balanced meals and purchase the necessary ingredients without waste.
[0099] "Information device means" refers to the terminal device used by the user to select a meal menu, and specifically includes interfaces such as smartphones, tablets, and personal computers.
[0100] "Calculator means" refers to hardware and software for calculating and visually displaying nutritional balance based on a menu selected by a user.
[0101] "Data processing means" refers to the hardware and software configuration within the system that has the function of automatically generating a list of ingredients required for the selected menu.
[0102] "Network communication means" refers to a function for communicating with an external service via the Internet in order to order ingredients online based on the generated ingredient list.
[0103] "Database means" refers to a database system that stores past menu selections and purchasing history and serves as a reference when selecting a menu or purchasing ingredients next time.
[0104] The present invention provides a system that enables a user to efficiently plan a nutritionally balanced meal and easily purchase the ingredients necessary for that meal. An embodiment of the system will be described below in detail.
[0105] System configuration
[0106] The system includes a terminal that accepts user input, a server that processes and manages data, and an API for an online store that supplies ingredients.
[0107] Terminal
[0108] A terminal is an information device that a user uses to select a meal plan and check the nutritional balance and ingredient list. Specifically, this includes devices such as smartphones, tablets, and personal computers. The terminal provides a user interface that allows users to easily operate it.
[0109] server
[0110] The server mainly has the following functions:
[0111] 1. Database management: Store and manage menu information and nutritional data.
[0112] 2. Nutrition calculation and graph generation: The system has a calculator that calculates the nutritional balance based on the menu selected by the user and generates data to visually display the results as a graph.
[0113] 3. Automatic generation of ingredient list: The system has a data processing means for automatically generating a list of ingredients required based on the selected menu.
[0114] 4. Online ordering: Includes network communication means for ordering ingredients online based on the generated ingredient list.
[0115] 5. Historical data management: A database is provided to store past menu selections and purchasing history, and to serve as a reference when selecting menus or purchasing ingredients next time.
[0116] Online store API
[0117] The online store's API is an external service that processes food orders and deliveries. It receives the order data generated by the server and processes the actual order.
[0118] Specific examples
[0119] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday on their device, the server retrieves the nutritional information for these dishes from the database and calculates the overall nutritional balance. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated and sent to the device. When the user presses the order button with one click, the server sends the order data to the online store's API, and the ingredients are delivered.
[0120] This system allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste, reducing the effort required for nutritional management and shopping, and contributing to reducing food waste.
[0121] Prompt Sentence Examples
[0122] This system allows users to efficiently plan nutritionally balanced meals and easily purchase the ingredients they need. First, select a weekly menu and check the nutritional balance. Then, generate a list of the ingredients you need and place an order from the online store.
[0123] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0124] Step 1: User selects a menu
[0125] The whole process starts when the user selects a menu for the week using a terminal.
[0126] Input: Multiple menu options displayed on the device
[0127] How it works: The user selects the menu they want for each day of the week from Monday to Sunday on their device.
[0128] Output: Selected menu data (menu name for each day of the week)
[0129] Step 2: Send the selected menu data to the server
[0130] Once the user has completed their selections, the data is sent to the server.
[0131] Input: Menu data selected by the user
[0132] How it works: The device compiles the user's selections and sends them to the server as an HTTP request.
[0133] Output: Menu data saved on the server
[0134] Step 3: Calculate your nutritional balance
[0135] The server calculates the nutritional balance based on the received menu data.
[0136] Input: Menu data and nutrition information in the database
[0137] How it works: The server retrieves the nutritional information contained in each menu from the database and calculates the overall nutritional balance.
[0138] Output: Nutritional balance calculation results
[0139] Step 4: Visual display of nutritional balance
[0140] Based on the calculation results, the server generates data that visually displays the nutritional balance and sends it to the terminal.
[0141] Input: Nutritional balance calculation result
[0142] Operation: The server generates the calculation results as graph data and sends it to the terminal. The terminal receives the data and displays it as a graph in the user interface.
[0143] Output: Nutritional balance graph displayed on the device
[0144] Step 5: Generate an ingredient list
[0145] After calculating the nutritional balance, the server automatically generates a list of necessary ingredients based on the selected menu.
[0146] Input: Menu data and ingredient information in the database
[0147] How it works: The server retrieves all the necessary ingredients from the database based on the menu and generates a list.
[0148] Output: Generated ingredient list
[0149] Step 6: View and review the ingredients list
[0150] The generated ingredient list is sent to the terminal and displayed for the user to check.
[0151] Input: Generated ingredient list
[0152] Operation: The server sends the ingredient list data to the device, which displays it on the user interface. The user can check the displayed ingredient list and make corrections or additions as necessary.
[0153] Output: Confirmed or revised ingredient list
[0154] Step 7: Order ingredients online
[0155] The online food ordering process begins when the user presses the order button.
[0156] Input: Confirmed or revised ingredient list
[0157] How it works: When a user clicks the "Order" button, the terminal sends an order request to the server. The server receives the request and sends the order data to the online store's API. It receives a response from the API confirming that the order was processed successfully.
[0158] Output: Order completion status and confirmation message to terminal
[0159] Through the above process, users can easily select a menu, check the nutritional balance, and order the necessary ingredients online, which is expected to improve daily meal management, improve nutritional balance, and reduce food waste.
[0160] (Application example 1)
[0161] 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."
[0162] The objective of this system is to provide a system that allows users to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients and completed dishes. Another objective is to provide a means for users to quickly respond when they are lacking in a particular nutrient. Furthermore, the system aims to achieve more effective dietary management by storing past menu selections and purchase history, which can be used as reference for the next menu selection or ingredient purchase.
[0163] 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.
[0164] In this invention, the server includes means for a user to select a meal menu, means for calculating nutritional balance based on the selected menu and visually displaying it as a graph, means for automatically generating a list of ingredients required for the selected menu, means for ordering ingredients and completed dishes online based on the generated ingredient list, means for saving past menu selections and purchase history to use as reference for the next menu selection or ingredient purchase, and means for displaying an alert if a specific nutrient is lacking and suggesting a balanced menu. This allows a user to efficiently and easily plan a balanced meal, purchase the necessary ingredients and completed dishes without waste, and quickly respond to a specific nutrient deficiency.
[0165] Below are definitions of important terms included in the claims, rewritten to fit the application example.
[0166] A "user" is a person who uses the system to select meal plans and manage nutritional balance.
[0167] A "menu" refers to the dishes and meal combinations that a user selects for their daily meals.
[0168] "Nutritional balance" refers to the overall distribution of nutrients such as calories, protein, lipids, vitamins, and minerals contained in each food or menu item.
[0169] "Visually displaying as a graph" means presenting the nutritional balance numerical data to the user in a visual format such as a graph or chart.
[0170] "Ingredient List" means a list of ingredients required based on the selected menu.
[0171] "Automatic generation" refers to the system automatically generating a specific deliverable with minimal user interaction.
[0172] "Ordering online" refers to the process of purchasing ingredients and finished dishes via the Internet.
[0173] "Past menu selection and purchase history" refers to a record of menus previously selected and ingredients previously purchased by the user.
[0174] "Displaying an alert" means presenting a message to warn or alert the user when a specific condition (e.g., a lack of a specific nutrient) is met.
[0175] "Suggesting a balanced menu" means that if the user's nutritional balance is unbalanced, the system will recommend an appropriate menu or meal content to correct it.
[0176] "Ingredients and completed dishes" refers to the necessary raw materials and cooked dishes that the user must procure based on the menu.
[0177] MODE FOR CARRYING OUT THE INVENTION
[0178] Overall system configuration
[0179] The present invention is implemented by a system that includes the following components: The system is designed to enable users to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients and completed dishes.
[0180] 1. Terminal
[0181] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[0182] 2. Server
[0183] A database that stores and manages menu information and nutritional data.
[0184] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[0185] A function that automatically generates a list of required ingredients and sends order data to the online store.
[0186] A function that saves past menu selections and purchase history, allowing you to use it as a reference when selecting your next menu or purchasing ingredients.
[0187] A function that displays an alert if you are lacking in certain nutrients and suggests balanced meal plans.
[0188] 3. Online Store API
[0189] A third-party service that processes food orders and arranges delivery.
[0190] Hardware and Software Used
[0191] Hardware: Smartphone
[0192] Software: Python, Matplotlib, requests
[0193] Explanation of program processing
[0194] The server calculates the nutritional balance based on the menu selected by the user and displays it as a visual graph. Specifically, it retrieves a list of menus for one week from the database, and the user selects each day. Next, it retrieves the nutritional information for the selected menu from the database and generates a graph of the calculation results. It also automatically generates a list of necessary ingredients and sends the order data to the online store. At this time, it displays an alert if a specific nutrient is lacking and suggests a balanced menu.
[0195] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server obtains and calculates the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated, and the user can place an order with one click. The order data is sent to the online store, and the ingredients and completed dishes are delivered.
[0196] Prompt Sentence Examples
[0197] "I want to plan nutritionally balanced meals and order the ingredients and complete dishes I need. I want to prepare teriyaki chicken on Monday, shogayaki pork on Tuesday, and stir-fried vegetables on Wednesday. Please create a program that calculates the nutritional balance, generates a list of ingredients I need, and places the delivery order."
[0198] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0199] Step 1:
[0200] The user selects a menu using the terminal.
[0201] Input: The user uses the device interface to select a weekly menu, for example, "Teriyaki Chicken" for Monday, "Ginger Pork" for Tuesday, and "Stir-fried Vegetables" for Wednesday.
[0202] Output: The selected menu is sent to the server.
[0203] Step 2:
[0204] The server calculates the nutritional balance based on the selected menu and generates data that can be visually displayed as a graph.
[0205] Input: The server retrieves nutritional information for each menu item from the database.
[0206] How it works: Accesses the database to extract the necessary nutritional information. Using Python's mathematical calculation library, calculates the nutritional balance based on the nutrient data for each menu item.
[0207] Output: Generates the calculation results as a graph and sends the data to the terminal for visual display.
[0208] Step 3:
[0209] The nutritional balance received by the terminal is visually displayed to the user as a graph.
[0210] Input: Nutritional balance graph data sent from the server.
[0211] Operation: A nutritional balance graph is drawn using Matplotlib and displayed on the terminal screen.
[0212] Output: A visual representation of the graph is provided for the user.
[0213] Step 4:
[0214] The server automatically generates a list of ingredients required for the selected menu.
[0215] Input: Selected menu data.
[0216] Operation: The server retrieves information about ingredients needed for each menu from the database and calculates the required quantities.
[0217] Output: Send the automatically generated ingredient list to the terminal.
[0218] Step 5:
[0219] The user is prompted to confirm the ingredient list displayed on the terminal.
[0220] Input: An automatically generated list of ingredients sent from the server.
[0221] Action: The device displays the ingredient list to the user and prompts for confirmation.
[0222] Output: A list of ingredients confirmed by the user.
[0223] Step 6:
[0224] Users can order ingredients and prepared meals online with one click.
[0225] Input: Confirmed ingredient list.
[0226] How it works: When the user clicks the order button, the terminal sends a request to the server.
[0227] Output: Online order data sent to the server.
[0228] Step 7:
[0229] The server sends the order data to the online store's API.
[0230] Input: Online order data submitted by the user.
[0231] How it works: The server sends the order data to the online store's API, and the order process begins.
[0232] Output: The online store processes the order and begins the shipping process.
[0233] Step 8:
[0234] Monitor the status of the order and display a confirmation message to the user when it is complete.
[0235] Input: Order completion notification from the online store API.
[0236] Operation: The server checks the order status and notifies the terminal that the order has been completed.
[0237] Output: A confirmation message displayed on the terminal.
[0238] Step 9:
[0239] The server stores past menu selections and purchase history, which can be used as a reference when selecting a menu or purchasing ingredients for the next time.
[0240] Input: User's menu selection and purchase history data.
[0241] How it works: The server stores this data in a database and provides it as reference information the next time you choose a menu or purchase ingredients.
[0242] Output: Updated user history data.
[0243] Step 10:
[0244] The server will alert you if you are lacking in certain nutrients and suggest balanced meals.
[0245] Input: Calculated nutritional balance data.
[0246] How it works: The server analyzes nutritional data, generates alerts if certain nutrients are lacking, and suggests appropriate meal plans.
[0247] Output: Alert message and suggested menu displayed on terminal.
[0248] 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.
[0249] The present invention aims to provide a system that allows users to efficiently select menus while taking nutritional balance into consideration and easily purchase the ingredients needed for those menus, and further aims to improve user satisfaction by combining it with an emotion engine that recognizes the user's emotions. An embodiment of the system will be described in detail below.
[0250] Overall system configuration
[0251] The system includes a terminal that accepts user input, a server that processes and manages data, an API for an online store that supplies ingredients, and an emotion engine that recognizes user emotions.
[0252] Terminal
[0253] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[0254] It includes input means (camera, microphone, etc.) for recognizing the user's emotions.
[0255] server
[0256] A database that stores and manages menu information and nutritional data.
[0257] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[0258] A function that automatically generates a list of required ingredients and sends order data to the online store.
[0259] A function that receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[0260] Online store API
[0261] A third-party service that processes food orders and arranges delivery.
[0262] Emotion Engine
[0263] A function that uses a camera and microphone to analyze the user's facial expressions and tone of voice and recognize the user's emotions.
[0264] The recognized emotion data is sent to a server and used for menu suggestions and feedback.
[0265] Program processing
[0266] Menu Selection and Emotion Recognition
[0267] The server retrieves a weekly menu list from the database and sends it to the device. The device displays the menu list, and the user selects a menu for each day of the week from Monday to Sunday. At the same time, the emotion engine analyzes the user's facial expressions and voice and sends the emotion data to the server. The server then suggests appropriate menus and assists in the selection of meals based on the user's emotional state.
[0268] Nutritional balance display and emotional feedback
[0269] The server retrieves nutritional information for each selected menu item from a database and calculates the overall nutritional balance. It then generates data to visually display the results as a graph and sends it to the device. The device then displays this graph to the user. At the same time, an emotion engine analyzes the user's reaction, and the server provides feedback based on that emotion.
[0270] Ingredient list generation and display
[0271] The server retrieves all the ingredient information required for the selected menu from the database and automatically generates an ingredient list. The generated ingredient list is sent to the terminal, where the user can confirm and place the order with one click. The emotion engine also analyzes the user's emotions when ordering and provides feedback as needed.
[0272] Order ingredients online
[0273] When the user clicks the order button, the device sends a request to the server. The server then sends the order data to the online store's API and begins the ordering process. The order completion status is sent to the device, and a confirmation message is displayed to the user. At the same time, the emotion engine analyzes the user's reaction and uses that data to suggest menu items for the next order and for the ordering process.
[0274] Specific examples
[0275] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain and calculate the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, the emotion engine analyzes the user's facial expressions and voice, and the server receives this emotional data. If the user looks happy, the next menu suggestion will include items with a relaxing effect; if the user looks stressed, the server will suggest a menu that adjusts the nutritional balance and replenishes energy.
[0276] This system allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste.In addition, an emotion engine provides suggestions and feedback optimized for the user's emotional state, improving satisfaction.
[0277] The processing flow will be explained below.
[0278] Step 1:
[0279] A user logs in to the system using a terminal and accesses the menu selection page.
[0280] Step 2:
[0281] The server retrieves a week's worth of menu lists from the database and sends them to the terminal.
[0282] Step 3:
[0283] The terminal displays a menu list, and the user selects a menu for each day of the week from Monday to Sunday.
[0284] Step 4:
[0285] The emotion engine analyzes the user's facial expressions and voice and sends the emotion data to the server.
[0286] Step 5:
[0287] The server reviews the user's menu selections based on the user's emotional state and suggests or adjusts the menu as needed.
[0288] Step 6:
[0289] The terminal confirms the user's selection or suggested revisions and transmits the finalized menu data to the server.
[0290] Step 7:
[0291] The server retrieves nutritional information (calories, protein, fat, vitamins, etc.) for each selected meal from a database.
[0292] Step 8:
[0293] The server calculates the overall nutritional balance of a week's worth of menus and generates graph data for visual display.
[0294] Step 9:
[0295] The server sends the generated graph data to the terminal.
[0296] Step 10:
[0297] The terminal displays a nutritional balance graph to the user.
[0298] Step 11:
[0299] The emotion engine analyzes the user's reaction and sends feedback based on the emotion to the server.
[0300] Step 12:
[0301] The server receives the emotional feedback data and adjusts the nutritional balance and menu suggestions as needed.
[0302] Step 13:
[0303] The server generates the final nutritional balance graph and ingredient list and sends them to the terminal.
[0304] Step 14:
[0305] The terminal displays the ingredient list to the user and displays a "Bulk Order" button for confirmation.
[0306] Step 15:
[0307] User clicks the "Bulk Order" button.
[0308] Step 16:
[0309] The terminal sends a one-click ordering request to the server.
[0310] Step 17:
[0311] The server sends the order data via the online store's API and starts the food purchasing process.
[0312] Step 18:
[0313] The online store accepts the order and sends the order completion status to the server.
[0314] Step 19:
[0315] The server sends the order completion status to the terminal, and the terminal displays a confirmation message of the order completion to the user.
[0316] Step 20:
[0317] The emotion engine analyzes the user's reactions and uses the emotional data to suggest the next menu and improve the ordering process.
[0318] Step 21:
[0319] The server stores the user's menu selection history and purchase history in a database.
[0320] Example 2
[0321] 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."
[0322] In conventional dietary management systems, calculation of nutritional balance and creation of ingredient lists are often done manually, placing a heavy burden on users. Furthermore, because meal selection does not take into account the user's emotional state, it is difficult to improve user satisfaction. Furthermore, the process of ordering ingredients online is cumbersome, making efficient dietary management difficult.
[0323] The specification process by the specification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for calculating and visually displaying nutritional balance based on a menu, means for analyzing the user's emotions using the device's camera and microphone and using the data to suggest an appropriate menu, means for automatically generating an ingredient list required for the selected menu, means for ordering ingredients online based on the generated ingredient list, and means for saving past menu selections and purchase history to use as reference for the next menu selection or ingredient purchase. This enables menu suggestions that take the user's emotions into consideration, as well as simple and efficient nutritional management and ingredient purchases.
[0324] The "means for selecting a meal menu" is a function that provides an interface for the user to select a meal menu for one week.
[0325] "Means for calculating and visually displaying nutritional balance" refers to a function that quantifies the balance of nutrients based on the selected menu and displays the results in a visually easy-to-understand format such as a graph or chart.
[0326] "Means for analyzing user emotions using the device's camera and microphone" refers to a function that uses the device's camera and microphone to capture the user's facial expressions and voice, and identifies the user's emotional state from that data.
[0327] The "means for suggesting an appropriate menu" is a function that recommends the optimal meal menu taking into consideration the user's emotional state and nutritional balance.
[0328] The "means for automatically generating an ingredient list" is a function that lists the ingredients required based on the selected menu and automatically generates a shopping list without the user having to manually enter them.
[0329] The "means for ordering ingredients online" is a function for using the generated ingredient list to send an order to an online store via the Internet and purchase ingredients.
[0330] "Means for saving past menu selections and purchase history" is a function that saves data related to the menus selected by the user and food purchases made so that the data can be referenced later.
[0331] The "means for ordering ingredients from the online store with one click" is a function that allows the user to place an order with the online store based on the ingredient list with just one click after checking.
[0332] "Means for visually displaying as a graph" refers to a function that graphically represents data such as nutritional balance and displays it in a way that is easy for users to understand.
[0333] The "means for generating a shopping list" is a function that lists the ingredients needed and displays them along with detailed information.
[0334] "Means of reflecting emotional data in the next menu suggestion" is a function that uses the analyzed emotional data to suggest the next menu or when purchasing ingredients.
[0335] "Means for providing feedback" refers to a function that returns appropriate information and advice based on the user's emotions and behavior.
[0336] This invention is a system that allows users to efficiently select meal plans while considering nutritional balance, and then order the necessary ingredients online based on those selections. This system also includes an emotion recognition function that analyzes the user's emotions and uses them to suggest meals, with the aim of increasing user satisfaction.
[0337] Overall system configuration
[0338] This system mainly consists of the following elements: terminal, server, emotion engine, and online store API.
[0339] Terminal
[0340] The terminals are devices such as smartphones, tablets, and PCs that users use to select menus and check the nutritional balance and ingredient list. The terminals are equipped with cameras and microphones to capture facial expressions and voice. These hardware devices are used to collect and analyze user emotional data.
[0341] server
[0342] The server is the central data processing and management center. It has the following functions:
[0343] 1. Database management: The server uses a database to manage menu information and nutritional data.
[0344] 2. Nutritional balance calculation: The server calculates the nutritional balance based on the selected menu and generates data to be displayed visually.
[0345] 3. Generate ingredient list: The server automatically generates the required ingredient list and sends the order data to the online store.
[0346] 4. Emotional data analysis: The server receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[0347] Emotion Engine
[0348] The emotion engine uses the device's camera and microphone to analyze the user's facial expressions and tone of voice to generate emotion data, which is then sent to a server and used to provide meal suggestions and feedback.
[0349] Online store API
[0350] The online store's API is an external service that receives order data from the server, processes food orders, and arranges delivery.
[0351] Specific processing of the program
[0352] The server retrieves a week's worth of menu lists from the database and sends them to the device. The device then calculates the nutritional balance based on the selected menu and displays the results visually as a graph to the user. It also uses the device's camera and microphone to analyze the user's emotions and sends that data to the server. Based on the received emotional data, the server suggests appropriate menus and assists the user in making food and drink choices.
[0353] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain the nutritional information for each menu and display the calculation results as a graph. Meanwhile, the emotion engine analyzes the user's facial expressions and voice, and suggests relaxing menus if the user seems happy, or menus to replenish energy if the user is feeling stressed.
[0354] Prompt Sentence Examples
[0355] "Please suggest a week's worth of nutritionally balanced meals."
[0356] "Generate a list of ingredients required for the menu selected by the user. Send this list to the online store's API as order data."
[0357] "Analyze the user's facial expressions and voice, and provide menu selection assistance and feedback based on emotion data."
[0358] The above is a description of an embodiment of the invention. This configuration allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste. In addition, the emotion engine provides suggestions and feedback optimized for the user's emotional state, improving satisfaction.
[0359] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0360] Step 1:
[0361] The server retrieves a weekly menu list from the database, which also contains nutritional information related to each menu, and sends it to the device. Specifically, the server queries the MySQL database, converts the menu data obtained into JSON format, and then sends it to the device via an HTTP request.
[0362] Input: Menu data in the database
[0363] Output: Menu list in JSON format
[0364] Step 2:
[0365] The terminal displays the menu list received from the server on the user interface. The terminal uses a front-end framework such as React.js to build a screen that allows users to check a week's worth of menus.
[0366] Input: Menu list in JSON format
[0367] Output: Menu displayed in the user interface
[0368] Step 3:
[0369] The user selects the menu for each day of the week from the menu list displayed on the device. Specifically, the user selects the desired menu by touch operation or mouse click, and the selected data is saved on the device. A JavaScript event listener monitors this operation and prepares to send the selected data to the server.
[0370] Input: User menu selection operation
[0371] Output: Selected menu data
[0372] Step 4:
[0373] The device sends the user's selection data to the server, which then sends the selection data to the server as an API request.
[0374] Input: Selected menu data
[0375] Output: Menu selection data sent to the server
[0376] Step 5:
[0377] The device uses a camera and microphone to capture the user's real-time video and audio. The emotion engine analyzes the captured video and audio to generate the user's emotion data. The emotion engine uses the Google Cloud Vision API or Microsoft Azure Emotion API.
[0378] Input: User video and audio
[0379] Output: Parsed emotion data
[0380] Step 6:
[0381] The device sends the generated emotion data to the server via an HTTP request.
[0382] Input: Parsed emotion data
[0383] Output: Emotion data sent to the server
[0384] Step 7:
[0385] The server retrieves and analyzes relevant menu items from the database based on the user's emotional data, such as menu items that have a relaxing effect or menu items that require energy. This process is carried out using data analysis libraries in Python and R.
[0386] Input: User emotion data
[0387] Output: A suitable menu list
[0388] Step 8:
[0389] The server generates a supplementary menu list based on the analysis results and sends it to the device. The generated menu list is sent in JSON format and displayed on the device.
[0390] Input: Appropriate menu list
[0391] Output: A secondary menu list sent to the terminal
[0392] Step 9:
[0393] The terminal presents the supplementary menu list received from the server to the user, helping the user to finalize the menu selection. The menu is displayed in a visually easy-to-understand manner so that the user can easily find a menu that satisfies them.
[0394] Input: supplementary menu list
[0395] Output: A supplementary menu displayed in the user interface
[0396] Step 10:
[0397] The server retrieves the nutritional information for each confirmed menu from the database and calculates the overall nutritional balance. This is done using a Python data analysis library (e.g., Pandas). Data is generated to visually display the calculation results as a graph and sent to the terminal.
[0398] Input: Confirmed menu data
[0399] Output: Nutritional balance graph data
[0400] Step 11:
[0401] The terminal displays the nutritional balance graph received from the server, allowing users to visually grasp their own nutritional balance. Graph drawing libraries such as D3.js are used on the front end.
[0402] Input: Nutritional balance graph data
[0403] Output: Nutritional balance graph displayed on the user interface
[0404] Step 12:
[0405] The emotion engine continues to analyze the user's reactions (facial expressions and voice) and sends the data to the server.
[0406] Input: User reaction video and audio
[0407] Output: Analyzed sentiment data
[0408] Step 13:
[0409] The server generates feedback based on the emotional data and sends it to the device, including, for example, relaxation suggestions or nutritional advice.
[0410] Input: Emotion data
[0411] Output: Generated feedback
[0412] Step 14:
[0413] The terminal displays the feedback received from the server to the user.
[0414] Input: Generated feedback
[0415] Output: Feedback displayed in the user interface
[0416] Step 15:
[0417] The server retrieves the information on ingredients required for the final menu from the database and automatically generates an ingredient list using a Python script, converts it into JSON format, and sends it to the terminal.
[0418] Input: Confirmed menu data
[0419] Output: Generated ingredient list
[0420] Step 16:
[0421] The terminal displays the generated ingredient list on the user interface for the user to review, and after reviewing, the user can order the ingredients from the online store with one click.
[0422] Input: Generated ingredient list
[0423] Output: A list of ingredients displayed in a user interface
[0424] Step 17:
[0425] When the user presses the order button, the terminal sends the order data to the server, which then sends the order data to the online store's API and starts the order process.
[0426] Input: Click on the order button
[0427] Output: Order request to online store
[0428] Step 18:
[0429] The server receives the order completion status from the online store and sends it to the terminal, which displays it to the user as a confirmation message.
[0430] Input: Order completion status from online store
[0431] Output: A confirmation message displayed in the user interface.
[0432] This is the specific flow of the program processing of this system. This allows users to efficiently plan meals that take nutritional balance into consideration and purchase the necessary ingredients without waste. In addition, the addition of feedback from the emotion engine increases satisfaction.
[0433] (Application example 2)
[0434] 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."
[0435] Conventional systems have insufficient support for users to consider nutritional balance when selecting menus. Furthermore, they only unilaterally suggest menus without considering the user's emotional state, which does not improve meal satisfaction. As a result, it has been difficult to reduce the stress and dissatisfaction users experience.
[0436] The specification processing by the specification 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 the user to select a meal menu, means for calculating and visually displaying nutritional balance based on the selected menu, means for automatically generating an ingredient list required for the selected menu, means for ordering ingredients online based on the generated ingredient list, means for saving past menu selections and purchase history and using it as reference for the next menu selection or ingredient purchase, means for recognizing the user's emotions, and means for suggesting an optimal menu to the user based on the recognized emotions. This enables the user to efficiently select a menu and purchase ingredients that take nutritional balance into consideration, and improves meal satisfaction through suggestions based on the user's emotions.
[0437] A "means for a user to select a meal plan" is a device or application that provides an interface or function for a user to visually select from multiple meal plans.
[0438] "Means for calculating and visually displaying nutritional balance based on the selected menu" is a function for retrieving nutrient information for the meal plan selected by the user from a database, calculating it, and displaying it graphically.
[0439] "Means for automatically generating a list of ingredients required for a selected menu" refers to a function that automatically creates a list of ingredients required for a menu selected by a user.
[0440] The "means for ordering ingredients online based on the generated ingredient list" is a function for placing an order with an ingredient sales service on the Internet using the generated ingredient list.
[0441] "A means of saving past menu selections and purchase history to use as reference when selecting a menu or purchasing ingredients for the next time" is a function that saves the user's history of menu selections and purchased ingredients in a database and allows them to use this information when selecting or purchasing ingredients for the next time.
[0442] "Means for recognizing user emotions" refers to technology or devices that use sensors such as cameras and microphones to analyze the user's facial expressions and voice and determine their emotional state.
[0443] The "means for proposing the optimal menu to the user based on the recognized emotions" is a function for analyzing the user's emotional data and providing the user with a meal plan that is suitable for the user based on the results.
[0444] This invention is a system that allows users to efficiently select a menu that takes nutritional balance into consideration and easily purchase the necessary ingredients, and at the same time has the function of recognizing the user's emotions. This system is composed of the following elements.
[0445] Terminal
[0446] The terminal is a device that allows users to select menus and check the nutritional balance and ingredient list. This can be a smartphone, tablet, or PC. The terminal is also equipped with a camera and microphone as an input means for recognizing the user's emotions.
[0447] server
[0448] The server has the following functions:
[0449] A database that stores and manages menu information and nutritional data.
[0450] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[0451] A function that automatically generates a list of required ingredients and sends order data to the online store.
[0452] A function that receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[0453] Online store API
[0454] The online store's API is an external service that processes food orders based on the generated food list and handles delivery procedures.
[0455] Emotion Engine
[0456] The emotion engine uses a camera and microphone to analyze the user's facial expressions and tone of voice to recognize their emotions. The recognized emotion data is sent to the server and used for menu suggestions and feedback.
[0457] Program processing
[0458] The server retrieves a weekly menu list from the database and sends it to the device. The device displays the menu list, and the user selects a menu for each day of the week. At the same time, the emotion engine analyzes the user's facial expressions and voice, and sends the emotion data to the server.
[0459] The server suggests appropriate menus and assists in selection based on the user's emotional state. It retrieves nutritional information for each selected menu from a database and calculates the overall nutritional balance. It also generates data that visually displays the calculation results as a graph and sends it to the terminal. The terminal displays this graph to the user, and the emotion engine analyzes the user's reaction, and the server provides feedback based on that emotion.
[0460] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain and calculate the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, the emotion engine analyzes the user's facial expressions and voice. The server, upon receiving this emotional data, will suggest the next menu item to include a relaxing menu item if the user looks happy, or suggest a menu item to adjust the nutritional balance and replenish energy if the user looks stressed.
[0461] Example prompt sentence:
[0462] If the user smiles at the camera and says, "What should I eat tonight?", the emotion engine should recognize the relaxed state and suggest a menu that will have a relaxing effect.
[0463] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0464] Step 1:
[0465] The user uses the device to request a menu selection.
[0466] Input: User request (menu selection by day of the week)
[0467] Processing content: The terminal sends a request to the server, and the server retrieves a week's worth of menu lists from the database.
[0468] Output: Menu list
[0469] Step 2:
[0470] The terminal displays a menu list to the user, and the user selects the menu they desire.
[0471] Input: Menu list sent from the server
[0472] What happens: The device displays a menu list, and the user taps to select a menu for each day of the week.
[0473] Output: Selected menu information
[0474] Step 3:
[0475] The emotion engine captures the user's facial expressions and voice and analyzes their emotions.
[0476] Input: Camera images, audio data (user's facial expressions and voice)
[0477] What it does: The device uses the camera and microphone to capture the user's facial expressions and voice in real time, which are then analyzed by the emotion engine.
[0478] Output: Emotion data (e.g., relaxed, stressed, etc.)
[0479] Step 4:
[0480] The server suggests menus based on emotional data.
[0481] Input: User emotion data, selected menu information
[0482] What it does: The server analyzes the emotional data and reconstructs a list of recommended meals based on the user's emotional state.
[0483] Output: Suggested meal list based on emotions
[0484] Step 5:
[0485] The server calculates the nutritional balance of the selected menu and generates a graph.
[0486] Input: Selected menu information
[0487] Processing: The server retrieves nutritional information for each menu item from the database, calculates the overall nutritional balance, and then generates a graph for visual display.
[0488] Output: Nutritional balance graph
[0489] Step 6:
[0490] The device displays a nutritional balance graph to the user and captures the user's reactions.
[0491] Input: Nutritional balance graph
[0492] Processing details: The device displays the graph, and the emotion engine recaptures and analyzes the user's reactions (facial expressions and voice).
[0493] Output: User response data
[0494] Step 7:
[0495] The server automatically generates a list of necessary ingredients and sends it to the terminal.
[0496] Input: Selected menu information
[0497] Processing: The server obtains all the ingredient information required for the selected menu and automatically generates an ingredient list.
[0498] Output: Ingredients list
[0499] Step 8:
[0500] The device displays a list of ingredients to the user, allowing them to order with one click.
[0501] Input: Ingredients list
[0502] What happens: The device displays the generated list of ingredients to the user and provides a button to send the order to the online store with one click.
[0503] Output: User's order request
[0504] Step 9:
[0505] The server sends the order data through the online store API and starts the order process.
[0506] Input: User's order request
[0507] Processing: The server sends the order data to the online store's API and processes the order.
[0508] Output: Order completion status
[0509] Step 10:
[0510] The terminal displays the order completion status to the user, and the emotion engine analyzes the user's reaction.
[0511] Input: Order Completion Status
[0512] Processing details: The device displays a message indicating that the order has been completed, and the emotion engine analyzes the user's facial expressions and voice again, using this data to suggest the next menu item.
[0513] Output: Final user response data
[0514] 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.
[0515] 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.
[0516] 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.
[0517] [Second embodiment]
[0518] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0519] 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.
[0520] 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).
[0521] 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.
[0522] 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.
[0523] 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).
[0524] 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. 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.
[0525] 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.
[0526] 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.
[0527] 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.
[0528] In the smart glasses 214, 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.
[0529] 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."
[0530] The present invention provides a system that enables a user to efficiently plan a nutritionally balanced meal and easily purchase the ingredients necessary for that meal. An embodiment of the system will be described below in detail.
[0531] Overall system configuration
[0532] The system includes a terminal that accepts user input, a server that processes and manages data, and an API for an online store that supplies ingredients.
[0533] 1. Terminal
[0534] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[0535] 2. Server
[0536] A database that stores and manages menu information and nutritional data.
[0537] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[0538] A function that automatically generates a list of required ingredients and sends order data to the online store.
[0539] 3. Online Store API
[0540] A third-party service that processes food orders and arranges delivery.
[0541] Program processing
[0542] Menu selection
[0543] The server retrieves a weekly menu list from the database and sends it to the terminal. The user selects a menu for each day of the week from Monday to Sunday on the terminal and sends this information to the server.
[0544] Nutritional balance display
[0545] The server retrieves nutritional information for each selected menu from the database, calculates the overall nutritional balance, generates data for visually displaying the calculation results as a graph, and sends it to the terminal. The terminal then displays this graph to the user.
[0546] Ingredient list generation and display
[0547] The server retrieves all the ingredient information required for the selected menu from the database and automatically generates an ingredient list, which is then sent to the terminal, where the user can confirm the ingredients and place the order with one click.
[0548] Order ingredients online
[0549] When the user clicks the order button, the terminal sends a request to the server. The server sends the order data to the online store's API, and the order process begins. The order completion status is sent to the terminal, and a confirmation message is displayed to the user.
[0550] Specific examples
[0551] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server obtains and calculates the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated, and the user can place an order with one click. The order data is sent to the online store, and the ingredients are delivered.
[0552] This system allows users to efficiently and easily plan balanced meals and purchase the ingredients they need without waste, reducing the effort required for nutritional management and shopping, and contributing to reducing food waste.
[0553] The processing flow will be explained below.
[0554] Step 1:
[0555] A user logs in to the system using a terminal and accesses the menu selection page.
[0556] Step 2:
[0557] The server retrieves a week's worth of menu lists from the database and sends them to the terminal.
[0558] Step 3:
[0559] The terminal displays a menu list, and the user selects a menu for each day of the week from Monday to Sunday.
[0560] Step 4:
[0561] The terminal transmits the user's selection to the server.
[0562] Step 5:
[0563] Based on the selected menu, the server retrieves nutritional information (e.g., calories, protein, fat, vitamins, etc.) for each menu from the database.
[0564] Step 6:
[0565] The server calculates the overall nutritional balance of a week's worth of menus and generates graph data for visual display.
[0566] Step 7:
[0567] The server sends the generated graph data to the terminal.
[0568] Step 8:
[0569] The terminal displays a nutritional balance graph to the user, allowing the user to visually check the overall nutritional balance.
[0570] Step 9:
[0571] The server acquires all the ingredient information required for the selected menu from the database and automatically generates an ingredient list.
[0572] Step 10:
[0573] The server transmits the generated ingredient list to the terminal.
[0574] Step 11:
[0575] The terminal displays the ingredient list to the user and displays a "Bulk Order" button for confirmation.
[0576] Step 12:
[0577] User clicks the "Bulk Order" button.
[0578] Step 13:
[0579] The terminal sends a one-click ordering request to the server.
[0580] Step 14:
[0581] The server sends the order data via the online store's API and starts the food purchasing process.
[0582] Step 15:
[0583] The online store accepts the order and sends the order completion status to the server.
[0584] Step 16:
[0585] The server sends the order completion status to the terminal, and the terminal displays a confirmation message of the order completion to the user.
[0586] Step 17:
[0587] The server stores the user's menu selection history and purchase history in a database.
[0588] Example 1
[0589] 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."
[0590] In today's busy daily lives, users need a way to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients. However, calculating nutritional balance, listing ingredients, and ordering from online stores require time and effort. In addition, there is a lack of systems that can provide reference information for next menu selections and ingredient purchases based on past menu selections and purchase history, so automation and optimization are needed in this area.
[0591] 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.
[0592] In this invention, the server includes information device means for allowing the user to select a meal menu, computer means for calculating and visually displaying the nutritional balance based on the selected menu, data processing means for automatically generating an ingredient list required for the selected menu, network communication means for ordering ingredients online based on the generated ingredient list, and database means for storing past menu selections and purchase history for reference when selecting a menu or purchasing ingredients next time. This allows the user to efficiently and easily plan nutritionally balanced meals and purchase the necessary ingredients without waste.
[0593] "Information device means" refers to the terminal device used by the user to select a meal menu, and specifically includes interfaces such as smartphones, tablets, and personal computers.
[0594] "Calculator means" refers to hardware and software for calculating and visually displaying nutritional balance based on a menu selected by a user.
[0595] "Data processing means" refers to the hardware and software configuration within the system that has the function of automatically generating a list of ingredients required for the selected menu.
[0596] "Network communication means" refers to a function for communicating with an external service via the Internet in order to order ingredients online based on the generated ingredient list.
[0597] "Database means" refers to a database system that stores past menu selections and purchasing history and serves as a reference when selecting a menu or purchasing ingredients next time.
[0598] The present invention provides a system that enables a user to efficiently plan a nutritionally balanced meal and easily purchase the ingredients necessary for that meal. An embodiment of the system will be described below in detail.
[0599] System configuration
[0600] The system includes a terminal that accepts user input, a server that processes and manages data, and an API for an online store that supplies ingredients.
[0601] Terminal
[0602] A terminal is an information device that a user uses to select a meal plan and check the nutritional balance and ingredient list. Specifically, this includes devices such as smartphones, tablets, and personal computers. The terminal provides a user interface that allows users to easily operate it.
[0603] server
[0604] The server mainly has the following functions:
[0605] 1. Database management: Store and manage menu information and nutritional data.
[0606] 2. Nutrition calculation and graph generation: The system has a calculator that calculates the nutritional balance based on the menu selected by the user and generates data to visually display the results as a graph.
[0607] 3. Automatic generation of ingredient list: The system has a data processing means for automatically generating a list of ingredients required based on the selected menu.
[0608] 4. Online ordering: Includes network communication means for ordering ingredients online based on the generated ingredient list.
[0609] 5. Historical data management: A database is provided to store past menu selections and purchasing history, and to serve as a reference when selecting menus or purchasing ingredients next time.
[0610] Online store API
[0611] The online store's API is an external service that processes food orders and deliveries. It receives the order data generated by the server and processes the actual order.
[0612] Specific examples
[0613] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday on their device, the server retrieves the nutritional information for these dishes from the database and calculates the overall nutritional balance. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated and sent to the device. When the user presses the order button with one click, the server sends the order data to the online store's API, and the ingredients are delivered.
[0614] This system allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste, reducing the effort required for nutritional management and shopping, and contributing to reducing food waste.
[0615] Prompt Sentence Examples
[0616] This system allows users to efficiently plan nutritionally balanced meals and easily purchase the ingredients they need. First, select a weekly menu and check the nutritional balance. Then, generate a list of the ingredients you need and place an order from the online store.
[0617] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0618] Step 1: User selects a menu
[0619] The whole process starts when the user selects a menu for the week using a terminal.
[0620] Input: Multiple menu options displayed on the device
[0621] How it works: The user selects the menu they want for each day of the week from Monday to Sunday on their device.
[0622] Output: Selected menu data (menu name for each day of the week)
[0623] Step 2: Send the selected menu data to the server
[0624] Once the user has completed their selections, the data is sent to the server.
[0625] Input: Menu data selected by the user
[0626] How it works: The device compiles the user's selections and sends them to the server as an HTTP request.
[0627] Output: Menu data saved on the server
[0628] Step 3: Calculate your nutritional balance
[0629] The server calculates the nutritional balance based on the received menu data.
[0630] Input: Menu data and nutrition information in the database
[0631] How it works: The server retrieves the nutritional information contained in each menu from the database and calculates the overall nutritional balance.
[0632] Output: Nutritional balance calculation results
[0633] Step 4: Visual display of nutritional balance
[0634] Based on the calculation results, the server generates data that visually displays the nutritional balance and sends it to the terminal.
[0635] Input: Nutritional balance calculation result
[0636] Operation: The server generates the calculation results as graph data and sends it to the terminal. The terminal receives the data and displays it as a graph in the user interface.
[0637] Output: Nutritional balance graph displayed on the device
[0638] Step 5: Generate an ingredient list
[0639] After calculating the nutritional balance, the server automatically generates a list of necessary ingredients based on the selected menu.
[0640] Input: Menu data and ingredient information in the database
[0641] How it works: The server retrieves all the necessary ingredients from the database based on the menu and generates a list.
[0642] Output: Generated ingredient list
[0643] Step 6: View and review the ingredients list
[0644] The generated ingredient list is sent to the terminal and displayed for the user to check.
[0645] Input: Generated ingredient list
[0646] Operation: The server sends the ingredient list data to the device, which displays it on the user interface. The user can check the displayed ingredient list and make corrections or additions as necessary.
[0647] Output: Confirmed or revised ingredient list
[0648] Step 7: Order ingredients online
[0649] The online food ordering process begins when the user presses the order button.
[0650] Input: Confirmed or revised ingredient list
[0651] How it works: When a user clicks the "Order" button, the terminal sends an order request to the server. The server receives the request and sends the order data to the online store's API. It receives a response from the API confirming that the order was processed successfully.
[0652] Output: Order completion status and confirmation message to terminal
[0653] Through the above process, users can easily select a menu, check the nutritional balance, and order the necessary ingredients online, which is expected to improve daily meal management, improve nutritional balance, and reduce food waste.
[0654] (Application example 1)
[0655] 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."
[0656] The objective of this system is to provide a system that allows users to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients and completed dishes. Another objective is to provide a means for users to quickly respond when they are lacking in a particular nutrient. Furthermore, the system aims to achieve more effective dietary management by storing past menu selections and purchase history, which can be used as reference for the next menu selection or ingredient purchase.
[0657] 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.
[0658] In this invention, the server includes means for a user to select a meal menu, means for calculating nutritional balance based on the selected menu and visually displaying it as a graph, means for automatically generating a list of ingredients required for the selected menu, means for ordering ingredients and completed dishes online based on the generated ingredient list, means for saving past menu selections and purchase history to use as reference for the next menu selection or ingredient purchase, and means for displaying an alert if a specific nutrient is lacking and suggesting a balanced menu. This allows a user to efficiently and easily plan a balanced meal, purchase the necessary ingredients and completed dishes without waste, and quickly respond to a specific nutrient deficiency.
[0659] Below are definitions of important terms included in the claims, rewritten to fit the application example.
[0660] A "user" is a person who uses the system to select meal plans and manage nutritional balance.
[0661] A "menu" refers to the dishes and meal combinations that a user selects for their daily meals.
[0662] "Nutritional balance" refers to the overall distribution of nutrients such as calories, protein, lipids, vitamins, and minerals contained in each food or menu item.
[0663] "Visually displaying as a graph" means presenting the nutritional balance numerical data to the user in a visual format such as a graph or chart.
[0664] "Ingredient List" means a list of ingredients required based on the selected menu.
[0665] "Automatic generation" refers to the system automatically generating a specific deliverable with minimal user interaction.
[0666] "Ordering online" refers to the process of purchasing ingredients and finished dishes via the Internet.
[0667] "Past menu selection and purchase history" refers to a record of menus previously selected and ingredients previously purchased by the user.
[0668] "Displaying an alert" means presenting a message to warn or alert the user when a specific condition (e.g., a lack of a specific nutrient) is met.
[0669] "Suggesting a balanced menu" means that if the user's nutritional balance is unbalanced, the system will recommend an appropriate menu or meal content to correct it.
[0670] "Ingredients and completed dishes" refers to the necessary raw materials and cooked dishes that the user must procure based on the menu.
[0671] MODE FOR CARRYING OUT THE INVENTION
[0672] Overall system configuration
[0673] The present invention is implemented by a system that includes the following components: The system is designed to enable users to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients and completed dishes.
[0674] 1. Terminal
[0675] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[0676] 2. Server
[0677] A database that stores and manages menu information and nutritional data.
[0678] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[0679] A function that automatically generates a list of required ingredients and sends order data to the online store.
[0680] A function that saves past menu selections and purchase history, allowing you to use it as a reference when selecting your next menu or purchasing ingredients.
[0681] A function that displays an alert if you are lacking in certain nutrients and suggests balanced meal plans.
[0682] 3. Online Store API
[0683] A third-party service that processes food orders and arranges delivery.
[0684] Hardware and Software Used
[0685] Hardware: Smartphone
[0686] Software: Python, Matplotlib, requests
[0687] Explanation of program processing
[0688] The server calculates the nutritional balance based on the menu selected by the user and displays it as a visual graph. Specifically, it retrieves a list of menus for one week from the database, and the user selects each day. Next, it retrieves the nutritional information for the selected menu from the database and generates a graph of the calculation results. It also automatically generates a list of necessary ingredients and sends the order data to the online store. At this time, it displays an alert if a specific nutrient is lacking and suggests a balanced menu.
[0689] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server obtains and calculates the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated, and the user can place an order with one click. The order data is sent to the online store, and the ingredients and completed dishes are delivered.
[0690] Prompt Sentence Examples
[0691] "I want to plan nutritionally balanced meals and order the ingredients and complete dishes I need. I want to prepare teriyaki chicken on Monday, shogayaki pork on Tuesday, and stir-fried vegetables on Wednesday. Please create a program that calculates the nutritional balance, generates a list of ingredients I need, and places the delivery order."
[0692] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0693] Step 1:
[0694] The user selects a menu using the terminal.
[0695] Input: The user uses the device interface to select a weekly menu, for example, "Teriyaki Chicken" for Monday, "Ginger Pork" for Tuesday, and "Stir-fried Vegetables" for Wednesday.
[0696] Output: The selected menu is sent to the server.
[0697] Step 2:
[0698] The server calculates the nutritional balance based on the selected menu and generates data that can be visually displayed as a graph.
[0699] Input: The server retrieves nutritional information for each menu item from the database.
[0700] How it works: Accesses the database to extract the necessary nutritional information. Using Python's mathematical calculation library, calculates the nutritional balance based on the nutrient data for each menu item.
[0701] Output: Generates the calculation results as a graph and sends the data to the terminal for visual display.
[0702] Step 3:
[0703] The nutritional balance received by the terminal is visually displayed to the user as a graph.
[0704] Input: Nutritional balance graph data sent from the server.
[0705] Operation: A nutritional balance graph is drawn using Matplotlib and displayed on the terminal screen.
[0706] Output: A visual representation of the graph is provided for the user.
[0707] Step 4:
[0708] The server automatically generates a list of ingredients required for the selected menu.
[0709] Input: Selected menu data.
[0710] Operation: The server retrieves information about ingredients needed for each menu from the database and calculates the required quantities.
[0711] Output: Send the automatically generated ingredient list to the terminal.
[0712] Step 5:
[0713] The user is prompted to confirm the ingredient list displayed on the terminal.
[0714] Input: An automatically generated list of ingredients sent from the server.
[0715] Action: The device displays the ingredient list to the user and prompts for confirmation.
[0716] Output: A list of ingredients confirmed by the user.
[0717] Step 6:
[0718] Users can order ingredients and prepared meals online with one click.
[0719] Input: Confirmed ingredient list.
[0720] How it works: When the user clicks the order button, the terminal sends a request to the server.
[0721] Output: Online order data sent to the server.
[0722] Step 7:
[0723] The server sends the order data to the online store's API.
[0724] Input: Online order data submitted by the user.
[0725] How it works: The server sends the order data to the online store's API, and the order process begins.
[0726] Output: The online store processes the order and begins the shipping process.
[0727] Step 8:
[0728] Monitor the status of the order and display a confirmation message to the user when it is complete.
[0729] Input: Order completion notification from the online store API.
[0730] Operation: The server checks the order status and notifies the terminal that the order has been completed.
[0731] Output: A confirmation message displayed on the terminal.
[0732] Step 9:
[0733] The server stores past menu selections and purchase history, which can be used as a reference when selecting a menu or purchasing ingredients for the next time.
[0734] Input: User's menu selection and purchase history data.
[0735] How it works: The server stores this data in a database and provides it as reference information the next time you choose a menu or purchase ingredients.
[0736] Output: Updated user history data.
[0737] Step 10:
[0738] The server will alert you if you are lacking in certain nutrients and suggest balanced meals.
[0739] Input: Calculated nutritional balance data.
[0740] How it works: The server analyzes nutritional data, generates alerts if certain nutrients are lacking, and suggests appropriate meal plans.
[0741] Output: Alert message and suggested menu displayed on terminal.
[0742] 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.
[0743] The present invention aims to provide a system that allows users to efficiently select menus while taking nutritional balance into consideration and easily purchase the ingredients needed for those menus, and further aims to improve user satisfaction by combining it with an emotion engine that recognizes the user's emotions. An embodiment of the system will be described in detail below.
[0744] Overall system configuration
[0745] The system includes a terminal that accepts user input, a server that processes and manages data, an API for an online store that supplies ingredients, and an emotion engine that recognizes user emotions.
[0746] Terminal
[0747] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[0748] It includes input means (camera, microphone, etc.) for recognizing the user's emotions.
[0749] server
[0750] A database that stores and manages menu information and nutritional data.
[0751] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[0752] A function that automatically generates a list of required ingredients and sends order data to the online store.
[0753] A function that receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[0754] Online store API
[0755] A third-party service that processes food orders and arranges delivery.
[0756] Emotion Engine
[0757] A function that uses a camera and microphone to analyze the user's facial expressions and tone of voice and recognize the user's emotions.
[0758] The recognized emotion data is sent to a server and used for menu suggestions and feedback.
[0759] Program processing
[0760] Menu Selection and Emotion Recognition
[0761] The server retrieves a weekly menu list from the database and sends it to the device. The device displays the menu list, and the user selects a menu for each day of the week from Monday to Sunday. At the same time, the emotion engine analyzes the user's facial expressions and voice and sends the emotion data to the server. The server then suggests appropriate menus and assists in the selection of meals based on the user's emotional state.
[0762] Nutritional balance display and emotional feedback
[0763] The server retrieves nutritional information for each selected menu item from a database and calculates the overall nutritional balance. It then generates data to visually display the results as a graph and sends it to the device. The device then displays this graph to the user. At the same time, an emotion engine analyzes the user's reaction, and the server provides feedback based on that emotion.
[0764] Ingredient list generation and display
[0765] The server retrieves all the ingredient information required for the selected menu from the database and automatically generates an ingredient list. The generated ingredient list is sent to the terminal, where the user can confirm and place the order with one click. The emotion engine also analyzes the user's emotions when ordering and provides feedback as needed.
[0766] Order ingredients online
[0767] When the user clicks the order button, the device sends a request to the server. The server then sends the order data to the online store's API and begins the ordering process. The order completion status is sent to the device, and a confirmation message is displayed to the user. At the same time, the emotion engine analyzes the user's reaction and uses that data to suggest menu items for the next order and for the ordering process.
[0768] Specific examples
[0769] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain and calculate the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, the emotion engine analyzes the user's facial expressions and voice, and the server receives this emotional data. If the user looks happy, the next menu suggestion will include items with a relaxing effect; if the user looks stressed, the server will suggest a menu that adjusts the nutritional balance and replenishes energy.
[0770] This system allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste.In addition, an emotion engine provides suggestions and feedback optimized for the user's emotional state, improving satisfaction.
[0771] The processing flow will be explained below.
[0772] Step 1:
[0773] A user logs in to the system using a terminal and accesses the menu selection page.
[0774] Step 2:
[0775] The server retrieves a week's worth of menu lists from the database and sends them to the terminal.
[0776] Step 3:
[0777] The terminal displays a menu list, and the user selects a menu for each day of the week from Monday to Sunday.
[0778] Step 4:
[0779] The emotion engine analyzes the user's facial expressions and voice and sends the emotion data to the server.
[0780] Step 5:
[0781] The server reviews the user's menu selections based on the user's emotional state and suggests or adjusts the menu as needed.
[0782] Step 6:
[0783] The terminal confirms the user's selection or suggested revisions and transmits the finalized menu data to the server.
[0784] Step 7:
[0785] The server retrieves nutritional information (calories, protein, fat, vitamins, etc.) for each selected meal from a database.
[0786] Step 8:
[0787] The server calculates the overall nutritional balance of a week's worth of menus and generates graph data for visual display.
[0788] Step 9:
[0789] The server sends the generated graph data to the terminal.
[0790] Step 10:
[0791] The terminal displays a nutritional balance graph to the user.
[0792] Step 11:
[0793] The emotion engine analyzes the user's reaction and sends feedback based on the emotion to the server.
[0794] Step 12:
[0795] The server receives the emotional feedback data and adjusts the nutritional balance and menu suggestions as needed.
[0796] Step 13:
[0797] The server generates the final nutritional balance graph and ingredient list and sends them to the terminal.
[0798] Step 14:
[0799] The terminal displays the ingredient list to the user and displays a "Bulk Order" button for confirmation.
[0800] Step 15:
[0801] User clicks the "Bulk Order" button.
[0802] Step 16:
[0803] The terminal sends a one-click ordering request to the server.
[0804] Step 17:
[0805] The server sends the order data via the online store's API and starts the food purchasing process.
[0806] Step 18:
[0807] The online store accepts the order and sends the order completion status to the server.
[0808] Step 19:
[0809] The server sends the order completion status to the terminal, and the terminal displays a confirmation message of the order completion to the user.
[0810] Step 20:
[0811] The emotion engine analyzes the user's reactions and uses the emotional data to suggest the next menu and improve the ordering process.
[0812] Step 21:
[0813] The server stores the user's menu selection history and purchase history in a database.
[0814] Example 2
[0815] 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."
[0816] In conventional dietary management systems, calculation of nutritional balance and creation of ingredient lists are often done manually, placing a heavy burden on users. Furthermore, because meal selection does not take into account the user's emotional state, it is difficult to improve user satisfaction. Furthermore, the process of ordering ingredients online is cumbersome, making efficient dietary management difficult.
[0817] The specification process by the specification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for calculating and visually displaying nutritional balance based on a menu, means for analyzing the user's emotions using the device's camera and microphone and using the data to suggest an appropriate menu, means for automatically generating an ingredient list required for the selected menu, means for ordering ingredients online based on the generated ingredient list, and means for saving past menu selections and purchase history to use as reference for the next menu selection or ingredient purchase. This enables menu suggestions that take the user's emotions into consideration, as well as simple and efficient nutritional management and ingredient purchases.
[0818] The "means for selecting a meal menu" is a function that provides an interface for the user to select a meal menu for one week.
[0819] "Means for calculating and visually displaying nutritional balance" refers to a function that quantifies the balance of nutrients based on the selected menu and displays the results in a visually easy-to-understand format such as a graph or chart.
[0820] "Means for analyzing user emotions using the device's camera and microphone" refers to a function that uses the device's camera and microphone to capture the user's facial expressions and voice, and identifies the user's emotional state from that data.
[0821] The "means for suggesting an appropriate menu" is a function that recommends the optimal meal menu taking into consideration the user's emotional state and nutritional balance.
[0822] The "means for automatically generating an ingredient list" is a function that lists the ingredients required based on the selected menu and automatically generates a shopping list without the user having to manually enter them.
[0823] The "means for ordering ingredients online" is a function for using the generated ingredient list to send an order to an online store via the Internet and purchase ingredients.
[0824] "Means for saving past menu selections and purchase history" is a function that saves data related to the menus selected by the user and food purchases made so that the data can be referenced later.
[0825] The "means for ordering ingredients from the online store with one click" is a function that allows the user to place an order with the online store based on the ingredient list with just one click after checking.
[0826] "Means for visually displaying as a graph" refers to a function that graphically represents data such as nutritional balance and displays it in a way that is easy for users to understand.
[0827] The "means for generating a shopping list" is a function that lists the ingredients needed and displays them along with detailed information.
[0828] "Means of reflecting emotional data in the next menu suggestion" is a function that uses the analyzed emotional data to suggest the next menu or when purchasing ingredients.
[0829] "Means for providing feedback" refers to a function that returns appropriate information and advice based on the user's emotions and behavior.
[0830] This invention is a system that allows users to efficiently select meal plans while considering nutritional balance, and then order the necessary ingredients online based on those selections. This system also includes an emotion recognition function that analyzes the user's emotions and uses them to suggest meals, with the aim of increasing user satisfaction.
[0831] Overall system configuration
[0832] This system mainly consists of the following elements: terminal, server, emotion engine, and online store API.
[0833] Terminal
[0834] The terminals are devices such as smartphones, tablets, and PCs that users use to select menus and check the nutritional balance and ingredient list. The terminals are equipped with cameras and microphones to capture facial expressions and voice. These hardware devices are used to collect and analyze user emotional data.
[0835] server
[0836] The server is the central data processing and management center. It has the following functions:
[0837] 1. Database management: The server uses a database to manage menu information and nutritional data.
[0838] 2. Nutritional balance calculation: The server calculates the nutritional balance based on the selected menu and generates data to be displayed visually.
[0839] 3. Generate ingredient list: The server automatically generates the required ingredient list and sends the order data to the online store.
[0840] 4. Emotional data analysis: The server receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[0841] Emotion Engine
[0842] The emotion engine uses the device's camera and microphone to analyze the user's facial expressions and tone of voice to generate emotion data, which is then sent to a server and used to provide meal suggestions and feedback.
[0843] Online store API
[0844] The online store's API is an external service that receives order data from the server, processes food orders, and arranges delivery.
[0845] Specific processing of the program
[0846] The server retrieves a week's worth of menu lists from the database and sends them to the device. The device then calculates the nutritional balance based on the selected menu and displays the results visually as a graph to the user. It also uses the device's camera and microphone to analyze the user's emotions and sends that data to the server. Based on the received emotional data, the server suggests appropriate menus and assists the user in making food and drink choices.
[0847] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain the nutritional information for each menu and display the calculation results as a graph. Meanwhile, the emotion engine analyzes the user's facial expressions and voice, and suggests relaxing menus if the user seems happy, or menus to replenish energy if the user is feeling stressed.
[0848] Prompt Sentence Examples
[0849] "Please suggest a week's worth of nutritionally balanced meals."
[0850] "Generate a list of ingredients required for the menu selected by the user. Send this list to the online store's API as order data."
[0851] "Analyze the user's facial expressions and voice, and provide menu selection assistance and feedback based on emotion data."
[0852] The above is a description of an embodiment of the invention. This configuration allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste. In addition, the emotion engine provides suggestions and feedback optimized for the user's emotional state, improving satisfaction.
[0853] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0854] Step 1:
[0855] The server retrieves a weekly menu list from the database, which also contains nutritional information related to each menu, and sends it to the device. Specifically, the server queries the MySQL database, converts the menu data obtained into JSON format, and then sends it to the device via an HTTP request.
[0856] Input: Menu data in the database
[0857] Output: Menu list in JSON format
[0858] Step 2:
[0859] The terminal displays the menu list received from the server on the user interface. The terminal uses a front-end framework such as React.js to build a screen that allows users to check a week's worth of menus.
[0860] Input: Menu list in JSON format
[0861] Output: Menu displayed in the user interface
[0862] Step 3:
[0863] The user selects the menu for each day of the week from the menu list displayed on the device. Specifically, the user selects the desired menu by touch operation or mouse click, and the selected data is saved on the device. A JavaScript event listener monitors this operation and prepares to send the selected data to the server.
[0864] Input: User menu selection operation
[0865] Output: Selected menu data
[0866] Step 4:
[0867] The device sends the user's selection data to the server, which then sends the selection data to the server as an API request.
[0868] Input: Selected menu data
[0869] Output: Menu selection data sent to the server
[0870] Step 5:
[0871] The device uses a camera and microphone to capture the user's real-time video and audio. The emotion engine analyzes the captured video and audio to generate the user's emotion data. The emotion engine uses the Google Cloud Vision API or Microsoft Azure Emotion API.
[0872] Input: User video and audio
[0873] Output: Parsed emotion data
[0874] Step 6:
[0875] The device sends the generated emotion data to the server via an HTTP request.
[0876] Input: Parsed emotion data
[0877] Output: Emotion data sent to the server
[0878] Step 7:
[0879] The server retrieves and analyzes relevant menu items from the database based on the user's emotional data, such as menu items that have a relaxing effect or menu items that require energy. This process is carried out using data analysis libraries in Python and R.
[0880] Input: User emotion data
[0881] Output: A suitable menu list
[0882] Step 8:
[0883] The server generates a supplementary menu list based on the analysis results and sends it to the device. The generated menu list is sent in JSON format and displayed on the device.
[0884] Input: Appropriate menu list
[0885] Output: A secondary menu list sent to the terminal
[0886] Step 9:
[0887] The terminal presents the supplementary menu list received from the server to the user, helping the user to finalize the menu selection. The menu is displayed in a visually easy-to-understand manner so that the user can easily find a menu that satisfies them.
[0888] Input: supplementary menu list
[0889] Output: A supplementary menu displayed in the user interface
[0890] Step 10:
[0891] The server retrieves the nutritional information for each confirmed menu from the database and calculates the overall nutritional balance. This is done using a Python data analysis library (e.g., Pandas). Data is generated to visually display the calculation results as a graph and sent to the terminal.
[0892] Input: Confirmed menu data
[0893] Output: Nutritional balance graph data
[0894] Step 11:
[0895] The terminal displays the nutritional balance graph received from the server, allowing users to visually grasp their own nutritional balance. Graph drawing libraries such as D3.js are used on the front end.
[0896] Input: Nutritional balance graph data
[0897] Output: Nutritional balance graph displayed on the user interface
[0898] Step 12:
[0899] The emotion engine continues to analyze the user's reactions (facial expressions and voice) and sends the data to the server.
[0900] Input: User reaction video and audio
[0901] Output: Analyzed sentiment data
[0902] Step 13:
[0903] The server generates feedback based on the emotional data and sends it to the device, including, for example, relaxation suggestions or nutritional advice.
[0904] Input: Emotion data
[0905] Output: Generated feedback
[0906] Step 14:
[0907] The terminal displays the feedback received from the server to the user.
[0908] Input: Generated feedback
[0909] Output: Feedback displayed in the user interface
[0910] Step 15:
[0911] The server retrieves the information on ingredients required for the final menu from the database and automatically generates an ingredient list using a Python script, converts it into JSON format, and sends it to the terminal.
[0912] Input: Confirmed menu data
[0913] Output: Generated ingredient list
[0914] Step 16:
[0915] The terminal displays the generated ingredient list on the user interface for the user to review, and after reviewing, the user can order the ingredients from the online store with one click.
[0916] Input: Generated ingredient list
[0917] Output: A list of ingredients displayed in a user interface
[0918] Step 17:
[0919] When the user presses the order button, the terminal sends the order data to the server, which then sends the order data to the online store's API and starts the order process.
[0920] Input: Click on the order button
[0921] Output: Order request to online store
[0922] Step 18:
[0923] The server receives the order completion status from the online store and sends it to the terminal, which displays it to the user as a confirmation message.
[0924] Input: Order completion status from online store
[0925] Output: A confirmation message displayed in the user interface.
[0926] This is the specific flow of the program processing of this system. This allows users to efficiently plan meals that take nutritional balance into consideration and purchase the necessary ingredients without waste. In addition, the addition of feedback from the emotion engine increases satisfaction.
[0927] (Application example 2)
[0928] 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."
[0929] Conventional systems have insufficient support for users to consider nutritional balance when selecting menus. Furthermore, they only unilaterally suggest menus without considering the user's emotional state, which does not improve meal satisfaction. As a result, it has been difficult to reduce the stress and dissatisfaction users experience.
[0930] The specification processing by the specification 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 the user to select a meal menu, means for calculating and visually displaying nutritional balance based on the selected menu, means for automatically generating an ingredient list required for the selected menu, means for ordering ingredients online based on the generated ingredient list, means for saving past menu selections and purchase history and using it as reference for the next menu selection or ingredient purchase, means for recognizing the user's emotions, and means for suggesting an optimal menu to the user based on the recognized emotions. This enables the user to efficiently select a menu and purchase ingredients that take nutritional balance into consideration, and improves meal satisfaction through suggestions based on the user's emotions.
[0931] A "means for a user to select a meal plan" is a device or application that provides an interface or function for a user to visually select from multiple meal plans.
[0932] "Means for calculating and visually displaying nutritional balance based on the selected menu" is a function for retrieving nutrient information for the meal plan selected by the user from a database, calculating it, and displaying it graphically.
[0933] "Means for automatically generating a list of ingredients required for a selected menu" refers to a function that automatically creates a list of ingredients required for a menu selected by a user.
[0934] The "means for ordering ingredients online based on the generated ingredient list" is a function for placing an order with an ingredient sales service on the Internet using the generated ingredient list.
[0935] "A means of saving past menu selections and purchase history to use as reference when selecting a menu or purchasing ingredients for the next time" is a function that saves the user's history of menu selections and purchased ingredients in a database and allows them to use this information when selecting or purchasing ingredients for the next time.
[0936] "Means for recognizing user emotions" refers to technology or devices that use sensors such as cameras and microphones to analyze the user's facial expressions and voice and determine their emotional state.
[0937] The "means for proposing the optimal menu to the user based on the recognized emotions" is a function for analyzing the user's emotional data and providing the user with a meal plan that is suitable for the user based on the results.
[0938] This invention is a system that allows users to efficiently select a menu that takes nutritional balance into consideration and easily purchase the necessary ingredients, and at the same time has the function of recognizing the user's emotions. This system is composed of the following elements.
[0939] Terminal
[0940] The terminal is a device that allows users to select menus and check the nutritional balance and ingredient list. This can be a smartphone, tablet, or PC. The terminal is also equipped with a camera and microphone as an input means for recognizing the user's emotions.
[0941] server
[0942] The server has the following functions:
[0943] A database that stores and manages menu information and nutritional data.
[0944] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[0945] A function that automatically generates a list of required ingredients and sends order data to the online store.
[0946] A function that receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[0947] Online store API
[0948] The online store's API is an external service that processes food orders based on the generated food list and handles delivery procedures.
[0949] Emotion Engine
[0950] The emotion engine uses a camera and microphone to analyze the user's facial expressions and tone of voice to recognize their emotions. The recognized emotion data is sent to the server and used for menu suggestions and feedback.
[0951] Program processing
[0952] The server retrieves a weekly menu list from the database and sends it to the device. The device displays the menu list, and the user selects a menu for each day of the week. At the same time, the emotion engine analyzes the user's facial expressions and voice, and sends the emotion data to the server.
[0953] The server suggests appropriate menus and assists in selection based on the user's emotional state. It retrieves nutritional information for each selected menu from a database and calculates the overall nutritional balance. It also generates data that visually displays the calculation results as a graph and sends it to the terminal. The terminal displays this graph to the user, and the emotion engine analyzes the user's reaction, and the server provides feedback based on that emotion.
[0954] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain and calculate the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, the emotion engine analyzes the user's facial expressions and voice. The server, upon receiving this emotional data, will suggest the next menu item to include a relaxing menu item if the user looks happy, or suggest a menu item to adjust the nutritional balance and replenish energy if the user looks stressed.
[0955] Example prompt sentence:
[0956] If the user smiles at the camera and says, "What should I eat tonight?", the emotion engine should recognize the relaxed state and suggest a menu that will have a relaxing effect.
[0957] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0958] Step 1:
[0959] The user uses the device to request a menu selection.
[0960] Input: User request (menu selection by day of the week)
[0961] Processing content: The terminal sends a request to the server, and the server retrieves a week's worth of menu lists from the database.
[0962] Output: Menu list
[0963] Step 2:
[0964] The terminal displays a menu list to the user, and the user selects the menu they desire.
[0965] Input: Menu list sent from the server
[0966] What happens: The device displays a menu list, and the user taps to select a menu for each day of the week.
[0967] Output: Selected menu information
[0968] Step 3:
[0969] The emotion engine captures the user's facial expressions and voice and analyzes their emotions.
[0970] Input: Camera images, audio data (user's facial expressions and voice)
[0971] What it does: The device uses the camera and microphone to capture the user's facial expressions and voice in real time, which are then analyzed by the emotion engine.
[0972] Output: Emotion data (e.g., relaxed, stressed, etc.)
[0973] Step 4:
[0974] The server suggests menus based on emotional data.
[0975] Input: User emotion data, selected menu information
[0976] What it does: The server analyzes the emotional data and reconstructs a list of recommended meals based on the user's emotional state.
[0977] Output: Suggested meal list based on emotions
[0978] Step 5:
[0979] The server calculates the nutritional balance of the selected menu and generates a graph.
[0980] Input: Selected menu information
[0981] Processing: The server retrieves nutritional information for each menu item from the database, calculates the overall nutritional balance, and then generates a graph for visual display.
[0982] Output: Nutritional balance graph
[0983] Step 6:
[0984] The device displays a nutritional balance graph to the user and captures the user's reactions.
[0985] Input: Nutritional balance graph
[0986] Processing details: The device displays the graph, and the emotion engine recaptures and analyzes the user's reactions (facial expressions and voice).
[0987] Output: User response data
[0988] Step 7:
[0989] The server automatically generates a list of necessary ingredients and sends it to the terminal.
[0990] Input: Selected menu information
[0991] Processing: The server obtains all the ingredient information required for the selected menu and automatically generates an ingredient list.
[0992] Output: Ingredients list
[0993] Step 8:
[0994] The device displays a list of ingredients to the user, allowing them to order with one click.
[0995] Input: Ingredients list
[0996] What happens: The device displays the generated list of ingredients to the user and provides a button to send the order to the online store with one click.
[0997] Output: User's order request
[0998] Step 9:
[0999] The server sends the order data through the online store API and starts the order process.
[1000] Input: User's order request
[1001] Processing: The server sends the order data to the online store's API and processes the order.
[1002] Output: Order completion status
[1003] Step 10:
[1004] The terminal displays the order completion status to the user, and the emotion engine analyzes the user's reaction.
[1005] Input: Order Completion Status
[1006] Processing details: The device displays a message indicating that the order has been completed, and the emotion engine analyzes the user's facial expressions and voice again, using this data to suggest the next menu item.
[1007] Output: Final user response data
[1008] 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.
[1009] 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.
[1010] 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.
[1011] [Third embodiment]
[1012] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1013] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[1014] 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).
[1015] 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.
[1016] 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.
[1017] 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).
[1018] 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. 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.
[1019] 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.
[1020] 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.
[1021] 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.
[1022] 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.
[1023] 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."
[1024] The present invention provides a system that enables a user to efficiently plan a nutritionally balanced meal and easily purchase the ingredients necessary for that meal. An embodiment of the system will be described below in detail.
[1025] Overall system configuration
[1026] The system includes a terminal that accepts user input, a server that processes and manages data, and an API for an online store that supplies ingredients.
[1027] 1. Terminal
[1028] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[1029] 2. Server
[1030] A database that stores and manages menu information and nutritional data.
[1031] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[1032] A function that automatically generates a list of required ingredients and sends order data to the online store.
[1033] 3. Online Store API
[1034] A third-party service that processes food orders and arranges delivery.
[1035] Program processing
[1036] Menu selection
[1037] The server retrieves a weekly menu list from the database and sends it to the terminal. The user selects a menu for each day of the week from Monday to Sunday on the terminal and sends this information to the server.
[1038] Nutritional balance display
[1039] The server retrieves nutritional information for each selected menu from the database, calculates the overall nutritional balance, generates data for visually displaying the calculation results as a graph, and sends it to the terminal. The terminal then displays this graph to the user.
[1040] Ingredient list generation and display
[1041] The server retrieves all the ingredient information required for the selected menu from the database and automatically generates an ingredient list, which is then sent to the terminal, where the user can confirm the ingredients and place the order with one click.
[1042] Order ingredients online
[1043] When the user clicks the order button, the terminal sends a request to the server. The server sends the order data to the online store's API, and the order process begins. The order completion status is sent to the terminal, and a confirmation message is displayed to the user.
[1044] Specific examples
[1045] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server obtains and calculates the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated, and the user can place an order with one click. The order data is sent to the online store, and the ingredients are delivered.
[1046] This system allows users to efficiently and easily plan balanced meals and purchase the ingredients they need without waste, reducing the effort required for nutritional management and shopping, and contributing to reducing food waste.
[1047] The processing flow will be explained below.
[1048] Step 1:
[1049] A user logs in to the system using a terminal and accesses the menu selection page.
[1050] Step 2:
[1051] The server retrieves a week's worth of menu lists from the database and sends them to the terminal.
[1052] Step 3:
[1053] The terminal displays a menu list, and the user selects a menu for each day of the week from Monday to Sunday.
[1054] Step 4:
[1055] The terminal transmits the user's selection to the server.
[1056] Step 5:
[1057] Based on the selected menu, the server retrieves nutritional information (e.g., calories, protein, fat, vitamins, etc.) for each menu from the database.
[1058] Step 6:
[1059] The server calculates the overall nutritional balance of a week's worth of menus and generates graph data for visual display.
[1060] Step 7:
[1061] The server sends the generated graph data to the terminal.
[1062] Step 8:
[1063] The terminal displays a nutritional balance graph to the user, allowing the user to visually check the overall nutritional balance.
[1064] Step 9:
[1065] The server acquires all the ingredient information required for the selected menu from the database and automatically generates an ingredient list.
[1066] Step 10:
[1067] The server transmits the generated ingredient list to the terminal.
[1068] Step 11:
[1069] The terminal displays the ingredient list to the user and displays a "Bulk Order" button for confirmation.
[1070] Step 12:
[1071] User clicks the "Bulk Order" button.
[1072] Step 13:
[1073] The terminal sends a one-click ordering request to the server.
[1074] Step 14:
[1075] The server sends the order data via the online store's API and starts the food purchasing process.
[1076] Step 15:
[1077] The online store accepts the order and sends the order completion status to the server.
[1078] Step 16:
[1079] The server sends the order completion status to the terminal, and the terminal displays a confirmation message of the order completion to the user.
[1080] Step 17:
[1081] The server stores the user's menu selection history and purchase history in a database.
[1082] Example 1
[1083] 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."
[1084] In today's busy daily lives, users need a way to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients. However, calculating nutritional balance, listing ingredients, and ordering from online stores require time and effort. In addition, there is a lack of systems that can provide reference information for next menu selections and ingredient purchases based on past menu selections and purchase history, so automation and optimization are needed in this area.
[1085] 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.
[1086] In this invention, the server includes information device means for allowing the user to select a meal menu, computer means for calculating and visually displaying the nutritional balance based on the selected menu, data processing means for automatically generating an ingredient list required for the selected menu, network communication means for ordering ingredients online based on the generated ingredient list, and database means for storing past menu selections and purchase history for reference when selecting a menu or purchasing ingredients next time. This allows the user to efficiently and easily plan nutritionally balanced meals and purchase the necessary ingredients without waste.
[1087] "Information device means" refers to the terminal device used by the user to select a meal menu, and specifically includes interfaces such as smartphones, tablets, and personal computers.
[1088] "Calculator means" refers to hardware and software for calculating and visually displaying nutritional balance based on a menu selected by a user.
[1089] "Data processing means" refers to the hardware and software configuration within the system that has the function of automatically generating a list of ingredients required for the selected menu.
[1090] "Network communication means" refers to a function for communicating with an external service via the Internet in order to order ingredients online based on the generated ingredient list.
[1091] "Database means" refers to a database system that stores past menu selections and purchasing history and serves as a reference when selecting a menu or purchasing ingredients next time.
[1092] The present invention provides a system that enables a user to efficiently plan a nutritionally balanced meal and easily purchase the ingredients necessary for that meal. An embodiment of the system will be described below in detail.
[1093] System configuration
[1094] The system includes a terminal that accepts user input, a server that processes and manages data, and an API for an online store that supplies ingredients.
[1095] Terminal
[1096] A terminal is an information device that a user uses to select a meal plan and check the nutritional balance and ingredient list. Specifically, this includes devices such as smartphones, tablets, and personal computers. The terminal provides a user interface that allows users to easily operate it.
[1097] server
[1098] The server mainly has the following functions:
[1099] 1. Database management: Store and manage menu information and nutritional data.
[1100] 2. Nutrition calculation and graph generation: The system has a calculator that calculates the nutritional balance based on the menu selected by the user and generates data to visually display the results as a graph.
[1101] 3. Automatic generation of ingredient list: The system has a data processing means for automatically generating a list of ingredients required based on the selected menu.
[1102] 4. Online ordering: Includes network communication means for ordering ingredients online based on the generated ingredient list.
[1103] 5. Historical data management: A database is provided to store past menu selections and purchasing history, and to serve as a reference when selecting menus or purchasing ingredients next time.
[1104] Online store API
[1105] The online store's API is an external service that processes food orders and deliveries. It receives the order data generated by the server and processes the actual order.
[1106] Specific examples
[1107] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday on their device, the server retrieves the nutritional information for these dishes from the database and calculates the overall nutritional balance. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated and sent to the device. When the user presses the order button with one click, the server sends the order data to the online store's API, and the ingredients are delivered.
[1108] This system allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste, reducing the effort required for nutritional management and shopping, and contributing to reducing food waste.
[1109] Prompt Sentence Examples
[1110] This system allows users to efficiently plan nutritionally balanced meals and easily purchase the ingredients they need. First, select a weekly menu and check the nutritional balance. Then, generate a list of the ingredients you need and place an order from the online store.
[1111] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1112] Step 1: User selects a menu
[1113] The whole process starts when the user selects a menu for the week using a terminal.
[1114] Input: Multiple menu options displayed on the device
[1115] How it works: The user selects the menu they want for each day of the week from Monday to Sunday on their device.
[1116] Output: Selected menu data (menu name for each day of the week)
[1117] Step 2: Send the selected menu data to the server
[1118] Once the user has completed their selections, the data is sent to the server.
[1119] Input: Menu data selected by the user
[1120] How it works: The device compiles the user's selections and sends them to the server as an HTTP request.
[1121] Output: Menu data saved on the server
[1122] Step 3: Calculate your nutritional balance
[1123] The server calculates the nutritional balance based on the received menu data.
[1124] Input: Menu data and nutrition information in the database
[1125] How it works: The server retrieves the nutritional information contained in each menu from the database and calculates the overall nutritional balance.
[1126] Output: Nutritional balance calculation results
[1127] Step 4: Visual display of nutritional balance
[1128] Based on the calculation results, the server generates data that visually displays the nutritional balance and sends it to the terminal.
[1129] Input: Nutritional balance calculation result
[1130] Operation: The server generates the calculation results as graph data and sends it to the terminal. The terminal receives the data and displays it as a graph in the user interface.
[1131] Output: Nutritional balance graph displayed on the device
[1132] Step 5: Generate an ingredient list
[1133] After calculating the nutritional balance, the server automatically generates a list of necessary ingredients based on the selected menu.
[1134] Input: Menu data and ingredient information in the database
[1135] How it works: The server retrieves all the necessary ingredients from the database based on the menu and generates a list.
[1136] Output: Generated ingredient list
[1137] Step 6: View and review the ingredients list
[1138] The generated ingredient list is sent to the terminal and displayed for the user to check.
[1139] Input: Generated ingredient list
[1140] Operation: The server sends the ingredient list data to the device, which displays it on the user interface. The user can check the displayed ingredient list and make corrections or additions as necessary.
[1141] Output: Confirmed or revised ingredient list
[1142] Step 7: Order ingredients online
[1143] The online food ordering process begins when the user presses the order button.
[1144] Input: Confirmed or revised ingredient list
[1145] How it works: When a user clicks the "Order" button, the terminal sends an order request to the server. The server receives the request and sends the order data to the online store's API. It receives a response from the API confirming that the order was processed successfully.
[1146] Output: Order completion status and confirmation message to terminal
[1147] Through the above process, users can easily select a menu, check the nutritional balance, and order the necessary ingredients online, which is expected to improve daily meal management, improve nutritional balance, and reduce food waste.
[1148] (Application example 1)
[1149] 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."
[1150] The objective of this system is to provide a system that allows users to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients and completed dishes. Another objective is to provide a means for users to quickly respond when they are lacking in a particular nutrient. Furthermore, the system aims to achieve more effective dietary management by storing past menu selections and purchase history, which can be used as reference for the next menu selection or ingredient purchase.
[1151] 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.
[1152] In this invention, the server includes means for a user to select a meal menu, means for calculating nutritional balance based on the selected menu and visually displaying it as a graph, means for automatically generating a list of ingredients required for the selected menu, means for ordering ingredients and completed dishes online based on the generated ingredient list, means for saving past menu selections and purchase history to use as reference for the next menu selection or ingredient purchase, and means for displaying an alert if a specific nutrient is lacking and suggesting a balanced menu. This allows a user to efficiently and easily plan a balanced meal, purchase the necessary ingredients and completed dishes without waste, and quickly respond to a specific nutrient deficiency.
[1153] Below are definitions of important terms included in the claims, rewritten to fit the application example.
[1154] A "user" is a person who uses the system to select meal plans and manage nutritional balance.
[1155] A "menu" refers to the dishes and meal combinations that a user selects for their daily meals.
[1156] "Nutritional balance" refers to the overall distribution of nutrients such as calories, protein, lipids, vitamins, and minerals contained in each food or menu item.
[1157] "Visually displaying as a graph" means presenting the nutritional balance numerical data to the user in a visual format such as a graph or chart.
[1158] "Ingredient List" means a list of ingredients required based on the selected menu.
[1159] "Automatic generation" refers to the system automatically generating a specific deliverable with minimal user interaction.
[1160] "Ordering online" refers to the process of purchasing ingredients and finished dishes via the Internet.
[1161] "Past menu selection and purchase history" refers to a record of menus previously selected and ingredients previously purchased by the user.
[1162] "Displaying an alert" means presenting a message to warn or alert the user when a specific condition (e.g., a lack of a specific nutrient) is met.
[1163] "Suggesting a balanced menu" means that if the user's nutritional balance is unbalanced, the system will recommend an appropriate menu or meal content to correct it.
[1164] "Ingredients and completed dishes" refers to the necessary raw materials and cooked dishes that the user must procure based on the menu.
[1165] MODE FOR CARRYING OUT THE INVENTION
[1166] Overall system configuration
[1167] The present invention is implemented by a system that includes the following components: The system is designed to enable users to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients and completed dishes.
[1168] 1. Terminal
[1169] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[1170] 2. Server
[1171] A database that stores and manages menu information and nutritional data.
[1172] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[1173] A function that automatically generates a list of required ingredients and sends order data to the online store.
[1174] A function that saves past menu selections and purchase history, allowing you to use it as a reference when selecting your next menu or purchasing ingredients.
[1175] A function that displays an alert if you are lacking in certain nutrients and suggests balanced meal plans.
[1176] 3. Online Store API
[1177] A third-party service that processes food orders and arranges delivery.
[1178] Hardware and Software Used
[1179] Hardware: Smartphone
[1180] Software: Python, Matplotlib, requests
[1181] Explanation of program processing
[1182] The server calculates the nutritional balance based on the menu selected by the user and displays it as a visual graph. Specifically, it retrieves a list of menus for one week from the database, and the user selects each day. Next, it retrieves the nutritional information for the selected menu from the database and generates a graph of the calculation results. It also automatically generates a list of necessary ingredients and sends the order data to the online store. At this time, it displays an alert if a specific nutrient is lacking and suggests a balanced menu.
[1183] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server obtains and calculates the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated, and the user can place an order with one click. The order data is sent to the online store, and the ingredients and completed dishes are delivered.
[1184] Prompt Sentence Examples
[1185] "I want to plan nutritionally balanced meals and order the ingredients and complete dishes I need. I want to prepare teriyaki chicken on Monday, shogayaki pork on Tuesday, and stir-fried vegetables on Wednesday. Please create a program that calculates the nutritional balance, generates a list of ingredients I need, and places the delivery order."
[1186] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1187] Step 1:
[1188] The user selects a menu using the terminal.
[1189] Input: The user uses the device interface to select a weekly menu, for example, "Teriyaki Chicken" for Monday, "Ginger Pork" for Tuesday, and "Stir-fried Vegetables" for Wednesday.
[1190] Output: The selected menu is sent to the server.
[1191] Step 2:
[1192] The server calculates the nutritional balance based on the selected menu and generates data that can be visually displayed as a graph.
[1193] Input: The server retrieves nutritional information for each menu item from the database.
[1194] How it works: Accesses the database to extract the necessary nutritional information. Using Python's mathematical calculation library, calculates the nutritional balance based on the nutrient data for each menu item.
[1195] Output: Generates the calculation results as a graph and sends the data to the terminal for visual display.
[1196] Step 3:
[1197] The nutritional balance received by the terminal is visually displayed to the user as a graph.
[1198] Input: Nutritional balance graph data sent from the server.
[1199] Operation: A nutritional balance graph is drawn using Matplotlib and displayed on the terminal screen.
[1200] Output: A visual representation of the graph is provided for the user.
[1201] Step 4:
[1202] The server automatically generates a list of ingredients required for the selected menu.
[1203] Input: Selected menu data.
[1204] Operation: The server retrieves information about ingredients needed for each menu from the database and calculates the required quantities.
[1205] Output: Send the automatically generated ingredient list to the terminal.
[1206] Step 5:
[1207] The user is prompted to confirm the ingredient list displayed on the terminal.
[1208] Input: An automatically generated list of ingredients sent from the server.
[1209] Action: The device displays the ingredient list to the user and prompts for confirmation.
[1210] Output: A list of ingredients confirmed by the user.
[1211] Step 6:
[1212] Users can order ingredients and prepared meals online with one click.
[1213] Input: Confirmed ingredient list.
[1214] How it works: When the user clicks the order button, the terminal sends a request to the server.
[1215] Output: Online order data sent to the server.
[1216] Step 7:
[1217] The server sends the order data to the online store's API.
[1218] Input: Online order data submitted by the user.
[1219] How it works: The server sends the order data to the online store's API, and the order process begins.
[1220] Output: The online store processes the order and begins the shipping process.
[1221] Step 8:
[1222] Monitor the status of the order and display a confirmation message to the user when it is complete.
[1223] Input: Order completion notification from the online store API.
[1224] Operation: The server checks the order status and notifies the terminal that the order has been completed.
[1225] Output: A confirmation message displayed on the terminal.
[1226] Step 9:
[1227] The server stores past menu selections and purchase history, which can be used as a reference when selecting a menu or purchasing ingredients for the next time.
[1228] Input: User's menu selection and purchase history data.
[1229] How it works: The server stores this data in a database and provides it as reference information the next time you choose a menu or purchase ingredients.
[1230] Output: Updated user history data.
[1231] Step 10:
[1232] The server will alert you if you are lacking in certain nutrients and suggest balanced meals.
[1233] Input: Calculated nutritional balance data.
[1234] How it works: The server analyzes nutritional data, generates alerts if certain nutrients are lacking, and suggests appropriate meal plans.
[1235] Output: Alert message and suggested menu displayed on terminal.
[1236] 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.
[1237] The present invention aims to provide a system that allows users to efficiently select menus while taking nutritional balance into consideration and easily purchase the ingredients needed for those menus, and further aims to improve user satisfaction by combining it with an emotion engine that recognizes the user's emotions. An embodiment of the system will be described in detail below.
[1238] Overall system configuration
[1239] The system includes a terminal that accepts user input, a server that processes and manages data, an API for an online store that supplies ingredients, and an emotion engine that recognizes user emotions.
[1240] Terminal
[1241] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[1242] It includes input means (camera, microphone, etc.) for recognizing the user's emotions.
[1243] server
[1244] A database that stores and manages menu information and nutritional data.
[1245] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[1246] A function that automatically generates a list of required ingredients and sends order data to the online store.
[1247] A function that receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[1248] Online store API
[1249] A third-party service that processes food orders and arranges delivery.
[1250] Emotion Engine
[1251] A function that uses a camera and microphone to analyze the user's facial expressions and tone of voice and recognize the user's emotions.
[1252] The recognized emotion data is sent to a server and used for menu suggestions and feedback.
[1253] Program processing
[1254] Menu Selection and Emotion Recognition
[1255] The server retrieves a weekly menu list from the database and sends it to the device. The device displays the menu list, and the user selects a menu for each day of the week from Monday to Sunday. At the same time, the emotion engine analyzes the user's facial expressions and voice and sends the emotion data to the server. The server then suggests appropriate menus and assists in the selection of meals based on the user's emotional state.
[1256] Nutritional balance display and emotional feedback
[1257] The server retrieves nutritional information for each selected menu item from a database and calculates the overall nutritional balance. It then generates data to visually display the results as a graph and sends it to the device. The device then displays this graph to the user. At the same time, an emotion engine analyzes the user's reaction, and the server provides feedback based on that emotion.
[1258] Ingredient list generation and display
[1259] The server retrieves all the ingredient information required for the selected menu from the database and automatically generates an ingredient list. The generated ingredient list is sent to the terminal, where the user can confirm and place the order with one click. The emotion engine also analyzes the user's emotions when ordering and provides feedback as needed.
[1260] Order ingredients online
[1261] When the user clicks the order button, the device sends a request to the server. The server then sends the order data to the online store's API and begins the ordering process. The order completion status is sent to the device, and a confirmation message is displayed to the user. At the same time, the emotion engine analyzes the user's reaction and uses that data to suggest menu items for the next order and for the ordering process.
[1262] Specific examples
[1263] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain and calculate the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, the emotion engine analyzes the user's facial expressions and voice, and the server receives this emotional data. If the user looks happy, the next menu suggestion will include items with a relaxing effect; if the user looks stressed, the server will suggest a menu that adjusts the nutritional balance and replenishes energy.
[1264] This system allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste.In addition, an emotion engine provides suggestions and feedback optimized for the user's emotional state, improving satisfaction.
[1265] The processing flow will be explained below.
[1266] Step 1:
[1267] A user logs in to the system using a terminal and accesses the menu selection page.
[1268] Step 2:
[1269] The server retrieves a week's worth of menu lists from the database and sends them to the terminal.
[1270] Step 3:
[1271] The terminal displays a menu list, and the user selects a menu for each day of the week from Monday to Sunday.
[1272] Step 4:
[1273] The emotion engine analyzes the user's facial expressions and voice and sends the emotion data to the server.
[1274] Step 5:
[1275] The server reviews the user's menu selections based on the user's emotional state and suggests or adjusts the menu as needed.
[1276] Step 6:
[1277] The terminal confirms the user's selection or suggested revisions and transmits the finalized menu data to the server.
[1278] Step 7:
[1279] The server retrieves nutritional information (calories, protein, fat, vitamins, etc.) for each selected meal from a database.
[1280] Step 8:
[1281] The server calculates the overall nutritional balance of a week's worth of menus and generates graph data for visual display.
[1282] Step 9:
[1283] The server sends the generated graph data to the terminal.
[1284] Step 10:
[1285] The terminal displays a nutritional balance graph to the user.
[1286] Step 11:
[1287] The emotion engine analyzes the user's reaction and sends feedback based on the emotion to the server.
[1288] Step 12:
[1289] The server receives the emotional feedback data and adjusts the nutritional balance and menu suggestions as needed.
[1290] Step 13:
[1291] The server generates the final nutritional balance graph and ingredient list and sends them to the terminal.
[1292] Step 14:
[1293] The terminal displays the ingredient list to the user and displays a "Bulk Order" button for confirmation.
[1294] Step 15:
[1295] User clicks the "Bulk Order" button.
[1296] Step 16:
[1297] The terminal sends a one-click ordering request to the server.
[1298] Step 17:
[1299] The server sends the order data via the online store's API and starts the food purchasing process.
[1300] Step 18:
[1301] The online store accepts the order and sends the order completion status to the server.
[1302] Step 19:
[1303] The server sends the order completion status to the terminal, and the terminal displays a confirmation message of the order completion to the user.
[1304] Step 20:
[1305] The emotion engine analyzes the user's reactions and uses the emotional data to suggest the next menu and improve the ordering process.
[1306] Step 21:
[1307] The server stores the user's menu selection history and purchase history in a database.
[1308] Example 2
[1309] 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."
[1310] In conventional dietary management systems, calculation of nutritional balance and creation of ingredient lists are often done manually, placing a heavy burden on users. Furthermore, because meal selection does not take into account the user's emotional state, it is difficult to improve user satisfaction. Furthermore, the process of ordering ingredients online is cumbersome, making efficient dietary management difficult.
[1311] The specification process by the specification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for calculating and visually displaying nutritional balance based on a menu, means for analyzing the user's emotions using the device's camera and microphone and using the data to suggest an appropriate menu, means for automatically generating an ingredient list required for the selected menu, means for ordering ingredients online based on the generated ingredient list, and means for saving past menu selections and purchase history to use as reference for the next menu selection or ingredient purchase. This enables menu suggestions that take the user's emotions into consideration, as well as simple and efficient nutritional management and ingredient purchases.
[1312] The "means for selecting a meal menu" is a function that provides an interface for the user to select a meal menu for one week.
[1313] "Means for calculating and visually displaying nutritional balance" refers to a function that quantifies the balance of nutrients based on the selected menu and displays the results in a visually easy-to-understand format such as a graph or chart.
[1314] "Means for analyzing user emotions using the device's camera and microphone" refers to a function that uses the device's camera and microphone to capture the user's facial expressions and voice, and identifies the user's emotional state from that data.
[1315] The "means for suggesting an appropriate menu" is a function that recommends the optimal meal menu taking into consideration the user's emotional state and nutritional balance.
[1316] The "means for automatically generating an ingredient list" is a function that lists the ingredients required based on the selected menu and automatically generates a shopping list without the user having to manually enter them.
[1317] The "means for ordering ingredients online" is a function for using the generated ingredient list to send an order to an online store via the Internet and purchase ingredients.
[1318] "Means for saving past menu selections and purchase history" is a function that saves data related to the menus selected by the user and food purchases made so that the data can be referenced later.
[1319] The "means for ordering ingredients from the online store with one click" is a function that allows the user to place an order with the online store based on the ingredient list with just one click after checking.
[1320] "Means for visually displaying as a graph" refers to a function that graphically represents data such as nutritional balance and displays it in a way that is easy for users to understand.
[1321] The "means for generating a shopping list" is a function that lists the ingredients needed and displays them along with detailed information.
[1322] "Means of reflecting emotional data in the next menu suggestion" is a function that uses the analyzed emotional data to suggest the next menu or when purchasing ingredients.
[1323] "Means for providing feedback" refers to a function that returns appropriate information and advice based on the user's emotions and behavior.
[1324] This invention is a system that allows users to efficiently select meal plans while considering nutritional balance, and then order the necessary ingredients online based on those selections. This system also includes an emotion recognition function that analyzes the user's emotions and uses them to suggest meals, with the aim of increasing user satisfaction.
[1325] Overall system configuration
[1326] This system mainly consists of the following elements: terminal, server, emotion engine, and online store API.
[1327] Terminal
[1328] The terminals are devices such as smartphones, tablets, and PCs that users use to select menus and check the nutritional balance and ingredient list. The terminals are equipped with cameras and microphones to capture facial expressions and voice. These hardware devices are used to collect and analyze user emotional data.
[1329] server
[1330] The server is the central data processing and management center. It has the following functions:
[1331] 1. Database management: The server uses a database to manage menu information and nutritional data.
[1332] 2. Nutritional balance calculation: The server calculates the nutritional balance based on the selected menu and generates data to be displayed visually.
[1333] 3. Generate ingredient list: The server automatically generates the required ingredient list and sends the order data to the online store.
[1334] 4. Emotional data analysis: The server receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[1335] Emotion Engine
[1336] The emotion engine uses the device's camera and microphone to analyze the user's facial expressions and tone of voice to generate emotion data, which is then sent to a server and used to provide meal suggestions and feedback.
[1337] Online store API
[1338] The online store's API is an external service that receives order data from the server, processes food orders, and arranges delivery.
[1339] Specific processing of the program
[1340] The server retrieves a week's worth of menu lists from the database and sends them to the device. The device then calculates the nutritional balance based on the selected menu and displays the results visually as a graph to the user. It also uses the device's camera and microphone to analyze the user's emotions and sends that data to the server. Based on the received emotional data, the server suggests appropriate menus and assists the user in making food and drink choices.
[1341] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain the nutritional information for each menu and display the calculation results as a graph. Meanwhile, the emotion engine analyzes the user's facial expressions and voice, and suggests relaxing menus if the user seems happy, or menus to replenish energy if the user is feeling stressed.
[1342] Prompt Sentence Examples
[1343] "Please suggest a week's worth of nutritionally balanced meals."
[1344] "Generate a list of ingredients required for the menu selected by the user. Send this list to the online store's API as order data."
[1345] "Analyze the user's facial expressions and voice, and provide menu selection assistance and feedback based on emotion data."
[1346] The above is a description of an embodiment of the invention. This configuration allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste. In addition, the emotion engine provides suggestions and feedback optimized for the user's emotional state, improving satisfaction.
[1347] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1348] Step 1:
[1349] The server retrieves a weekly menu list from the database, which also contains nutritional information related to each menu, and sends it to the device. Specifically, the server queries the MySQL database, converts the menu data obtained into JSON format, and then sends it to the device via an HTTP request.
[1350] Input: Menu data in the database
[1351] Output: Menu list in JSON format
[1352] Step 2:
[1353] The terminal displays the menu list received from the server on the user interface. The terminal uses a front-end framework such as React.js to build a screen that allows users to check a week's worth of menus.
[1354] Input: Menu list in JSON format
[1355] Output: Menu displayed in the user interface
[1356] Step 3:
[1357] The user selects the menu for each day of the week from the menu list displayed on the device. Specifically, the user selects the desired menu by touch operation or mouse click, and the selected data is saved on the device. A JavaScript event listener monitors this operation and prepares to send the selected data to the server.
[1358] Input: User menu selection operation
[1359] Output: Selected menu data
[1360] Step 4:
[1361] The device sends the user's selection data to the server, which then sends the selection data to the server as an API request.
[1362] Input: Selected menu data
[1363] Output: Menu selection data sent to the server
[1364] Step 5:
[1365] The device uses a camera and microphone to capture the user's real-time video and audio. The emotion engine analyzes the captured video and audio to generate the user's emotion data. The emotion engine uses the Google Cloud Vision API or Microsoft Azure Emotion API.
[1366] Input: User video and audio
[1367] Output: Parsed emotion data
[1368] Step 6:
[1369] The device sends the generated emotion data to the server via an HTTP request.
[1370] Input: Parsed emotion data
[1371] Output: Emotion data sent to the server
[1372] Step 7:
[1373] The server retrieves and analyzes relevant menu items from the database based on the user's emotional data, such as menu items that have a relaxing effect or menu items that require energy. This process is carried out using data analysis libraries in Python and R.
[1374] Input: User emotion data
[1375] Output: A suitable menu list
[1376] Step 8:
[1377] The server generates a supplementary menu list based on the analysis results and sends it to the device. The generated menu list is sent in JSON format and displayed on the device.
[1378] Input: Appropriate menu list
[1379] Output: A secondary menu list sent to the terminal
[1380] Step 9:
[1381] The terminal presents the supplementary menu list received from the server to the user, helping the user to finalize the menu selection. The menu is displayed in a visually easy-to-understand manner so that the user can easily find a menu that satisfies them.
[1382] Input: supplementary menu list
[1383] Output: A supplementary menu displayed in the user interface
[1384] Step 10:
[1385] The server retrieves the nutritional information for each confirmed menu from the database and calculates the overall nutritional balance. This is done using a Python data analysis library (e.g., Pandas). Data is generated to visually display the calculation results as a graph and sent to the terminal.
[1386] Input: Confirmed menu data
[1387] Output: Nutritional balance graph data
[1388] Step 11:
[1389] The terminal displays the nutritional balance graph received from the server, allowing users to visually grasp their own nutritional balance. Graph drawing libraries such as D3.js are used on the front end.
[1390] Input: Nutritional balance graph data
[1391] Output: Nutritional balance graph displayed on the user interface
[1392] Step 12:
[1393] The emotion engine continues to analyze the user's reactions (facial expressions and voice) and sends the data to the server.
[1394] Input: User reaction video and audio
[1395] Output: Analyzed sentiment data
[1396] Step 13:
[1397] The server generates feedback based on the emotional data and sends it to the device, including, for example, relaxation suggestions or nutritional advice.
[1398] Input: Emotion data
[1399] Output: Generated feedback
[1400] Step 14:
[1401] The terminal displays the feedback received from the server to the user.
[1402] Input: Generated feedback
[1403] Output: Feedback displayed in the user interface
[1404] Step 15:
[1405] The server retrieves the information on ingredients required for the final menu from the database and automatically generates an ingredient list using a Python script, converts it into JSON format, and sends it to the terminal.
[1406] Input: Confirmed menu data
[1407] Output: Generated ingredient list
[1408] Step 16:
[1409] The terminal displays the generated ingredient list on the user interface for the user to review, and after reviewing, the user can order the ingredients from the online store with one click.
[1410] Input: Generated ingredient list
[1411] Output: A list of ingredients displayed in a user interface
[1412] Step 17:
[1413] When the user presses the order button, the terminal sends the order data to the server, which then sends the order data to the online store's API and starts the order process.
[1414] Input: Click on the order button
[1415] Output: Order request to online store
[1416] Step 18:
[1417] The server receives the order completion status from the online store and sends it to the terminal, which displays it to the user as a confirmation message.
[1418] Input: Order completion status from online store
[1419] Output: A confirmation message displayed in the user interface.
[1420] This is the specific flow of the program processing of this system. This allows users to efficiently plan meals that take nutritional balance into consideration and purchase the necessary ingredients without waste. In addition, the addition of feedback from the emotion engine increases satisfaction.
[1421] (Application example 2)
[1422] 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."
[1423] Conventional systems have insufficient support for users to consider nutritional balance when selecting menus. Furthermore, they only unilaterally suggest menus without considering the user's emotional state, which does not improve meal satisfaction. As a result, it has been difficult to reduce the stress and dissatisfaction users experience.
[1424] The specification processing by the specification 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 the user to select a meal menu, means for calculating and visually displaying nutritional balance based on the selected menu, means for automatically generating an ingredient list required for the selected menu, means for ordering ingredients online based on the generated ingredient list, means for saving past menu selections and purchase history and using it as reference for the next menu selection or ingredient purchase, means for recognizing the user's emotions, and means for suggesting an optimal menu to the user based on the recognized emotions. This enables the user to efficiently select a menu and purchase ingredients that take nutritional balance into consideration, and improves meal satisfaction through suggestions based on the user's emotions.
[1425] A "means for a user to select a meal plan" is a device or application that provides an interface or function for a user to visually select from multiple meal plans.
[1426] "Means for calculating and visually displaying nutritional balance based on the selected menu" is a function for retrieving nutrient information for the meal plan selected by the user from a database, calculating it, and displaying it graphically.
[1427] "Means for automatically generating a list of ingredients required for a selected menu" refers to a function that automatically creates a list of ingredients required for a menu selected by a user.
[1428] The "means for ordering ingredients online based on the generated ingredient list" is a function for placing an order with an ingredient sales service on the Internet using the generated ingredient list.
[1429] "A means of saving past menu selections and purchase history to use as reference when selecting a menu or purchasing ingredients for the next time" is a function that saves the user's history of menu selections and purchased ingredients in a database and allows them to use this information when selecting or purchasing ingredients for the next time.
[1430] "Means for recognizing user emotions" refers to technology or devices that use sensors such as cameras and microphones to analyze the user's facial expressions and voice and determine their emotional state.
[1431] The "means for proposing the optimal menu to the user based on the recognized emotions" is a function for analyzing the user's emotional data and providing the user with a meal plan that is suitable for the user based on the results.
[1432] This invention is a system that allows users to efficiently select a menu that takes nutritional balance into consideration and easily purchase the necessary ingredients, and at the same time has the function of recognizing the user's emotions. This system is composed of the following elements.
[1433] Terminal
[1434] The terminal is a device that allows users to select menus and check the nutritional balance and ingredient list. This can be a smartphone, tablet, or PC. The terminal is also equipped with a camera and microphone as an input means for recognizing the user's emotions.
[1435] server
[1436] The server has the following functions:
[1437] A database that stores and manages menu information and nutritional data.
[1438] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[1439] A function that automatically generates a list of required ingredients and sends order data to the online store.
[1440] A function that receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[1441] Online store API
[1442] The online store's API is an external service that processes food orders based on the generated food list and handles delivery procedures.
[1443] Emotion Engine
[1444] The emotion engine uses a camera and microphone to analyze the user's facial expressions and tone of voice to recognize their emotions. The recognized emotion data is sent to the server and used for menu suggestions and feedback.
[1445] Program processing
[1446] The server retrieves a weekly menu list from the database and sends it to the device. The device displays the menu list, and the user selects a menu for each day of the week. At the same time, the emotion engine analyzes the user's facial expressions and voice, and sends the emotion data to the server.
[1447] The server suggests appropriate menus and assists in selection based on the user's emotional state. It retrieves nutritional information for each selected menu from a database and calculates the overall nutritional balance. It also generates data that visually displays the calculation results as a graph and sends it to the terminal. The terminal displays this graph to the user, and the emotion engine analyzes the user's reaction, and the server provides feedback based on that emotion.
[1448] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain and calculate the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, the emotion engine analyzes the user's facial expressions and voice. The server, upon receiving this emotional data, will suggest the next menu item to include a relaxing menu item if the user looks happy, or suggest a menu item to adjust the nutritional balance and replenish energy if the user looks stressed.
[1449] Example prompt sentence:
[1450] If the user smiles at the camera and says, "What should I eat tonight?", the emotion engine should recognize the relaxed state and suggest a menu that will have a relaxing effect.
[1451] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1452] Step 1:
[1453] The user uses the device to request a menu selection.
[1454] Input: User request (menu selection by day of the week)
[1455] Processing content: The terminal sends a request to the server, and the server retrieves a week's worth of menu lists from the database.
[1456] Output: Menu list
[1457] Step 2:
[1458] The terminal displays a menu list to the user, and the user selects the menu they desire.
[1459] Input: Menu list sent from the server
[1460] What happens: The device displays a menu list, and the user taps to select a menu for each day of the week.
[1461] Output: Selected menu information
[1462] Step 3:
[1463] The emotion engine captures the user's facial expressions and voice and analyzes their emotions.
[1464] Input: Camera images, audio data (user's facial expressions and voice)
[1465] What it does: The device uses the camera and microphone to capture the user's facial expressions and voice in real time, which are then analyzed by the emotion engine.
[1466] Output: Emotion data (e.g., relaxed, stressed, etc.)
[1467] Step 4:
[1468] The server suggests menus based on emotional data.
[1469] Input: User emotion data, selected menu information
[1470] What it does: The server analyzes the emotional data and reconstructs a list of recommended meals based on the user's emotional state.
[1471] Output: Suggested meal list based on emotions
[1472] Step 5:
[1473] The server calculates the nutritional balance of the selected menu and generates a graph.
[1474] Input: Selected menu information
[1475] Processing: The server retrieves nutritional information for each menu item from the database, calculates the overall nutritional balance, and then generates a graph for visual display.
[1476] Output: Nutritional balance graph
[1477] Step 6:
[1478] The device displays a nutritional balance graph to the user and captures the user's reactions.
[1479] Input: Nutritional balance graph
[1480] Processing details: The device displays the graph, and the emotion engine recaptures and analyzes the user's reactions (facial expressions and voice).
[1481] Output: User response data
[1482] Step 7:
[1483] The server automatically generates a list of necessary ingredients and sends it to the terminal.
[1484] Input: Selected menu information
[1485] Processing: The server obtains all the ingredient information required for the selected menu and automatically generates an ingredient list.
[1486] Output: Ingredients list
[1487] Step 8:
[1488] The device displays a list of ingredients to the user, allowing them to order with one click.
[1489] Input: Ingredients list
[1490] What happens: The device displays the generated list of ingredients to the user and provides a button to send the order to the online store with one click.
[1491] Output: User's order request
[1492] Step 9:
[1493] The server sends the order data through the online store API and starts the order process.
[1494] Input: User's order request
[1495] Processing: The server sends the order data to the online store's API and processes the order.
[1496] Output: Order completion status
[1497] Step 10:
[1498] The terminal displays the order completion status to the user, and the emotion engine analyzes the user's reaction.
[1499] Input: Order Completion Status
[1500] Processing details: The device displays a message indicating that the order has been completed, and the emotion engine analyzes the user's facial expressions and voice again, using this data to suggest the next menu item.
[1501] Output: Final user response data
[1502] 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.
[1503] 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.
[1504] 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.
[1505] [Fourth embodiment]
[1506] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1507] 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.
[1508] 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).
[1509] 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.
[1510] 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.
[1511] 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).
[1512] 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. 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.
[1513] 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.
[1514] 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.
[1515] 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.
[1516] 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.
[1517] 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.
[1518] 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."
[1519] The present invention provides a system that enables a user to efficiently plan a nutritionally balanced meal and easily purchase the ingredients necessary for that meal. An embodiment of the system will be described below in detail.
[1520] Overall system configuration
[1521] The system includes a terminal that accepts user input, a server that processes and manages data, and an API for an online store that supplies ingredients.
[1522] 1. Terminal
[1523] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[1524] 2. Server
[1525] A database that stores and manages menu information and nutritional data.
[1526] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[1527] A function that automatically generates a list of required ingredients and sends order data to the online store.
[1528] 3. Online Store API
[1529] A third-party service that processes food orders and arranges delivery.
[1530] Program processing
[1531] Menu selection
[1532] The server retrieves a weekly menu list from the database and sends it to the terminal. The user selects a menu for each day of the week from Monday to Sunday on the terminal and sends this information to the server.
[1533] Nutritional balance display
[1534] The server retrieves nutritional information for each selected menu from the database, calculates the overall nutritional balance, generates data for visually displaying the calculation results as a graph, and sends it to the terminal. The terminal then displays this graph to the user.
[1535] Ingredient list generation and display
[1536] The server retrieves all the ingredient information required for the selected menu from the database and automatically generates an ingredient list, which is then sent to the terminal, where the user can confirm the ingredients and place the order with one click.
[1537] Order ingredients online
[1538] When the user clicks the order button, the terminal sends a request to the server. The server sends the order data to the online store's API, and the order process begins. The order completion status is sent to the terminal, and a confirmation message is displayed to the user.
[1539] Specific examples
[1540] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server obtains and calculates the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated, and the user can place an order with one click. The order data is sent to the online store, and the ingredients are delivered.
[1541] This system allows users to efficiently and easily plan balanced meals and purchase the ingredients they need without waste, reducing the effort required for nutritional management and shopping, and contributing to reducing food waste.
[1542] The processing flow will be explained below.
[1543] Step 1:
[1544] A user logs in to the system using a terminal and accesses the menu selection page.
[1545] Step 2:
[1546] The server retrieves a week's worth of menu lists from the database and sends them to the terminal.
[1547] Step 3:
[1548] The terminal displays a menu list, and the user selects a menu for each day of the week from Monday to Sunday.
[1549] Step 4:
[1550] The terminal transmits the user's selection to the server.
[1551] Step 5:
[1552] Based on the selected menu, the server retrieves nutritional information (e.g., calories, protein, fat, vitamins, etc.) for each menu from the database.
[1553] Step 6:
[1554] The server calculates the overall nutritional balance of a week's worth of menus and generates graph data for visual display.
[1555] Step 7:
[1556] The server sends the generated graph data to the terminal.
[1557] Step 8:
[1558] The terminal displays a nutritional balance graph to the user, allowing the user to visually check the overall nutritional balance.
[1559] Step 9:
[1560] The server acquires all the ingredient information required for the selected menu from the database and automatically generates an ingredient list.
[1561] Step 10:
[1562] The server transmits the generated ingredient list to the terminal.
[1563] Step 11:
[1564] The terminal displays the ingredient list to the user and displays a "Bulk Order" button for confirmation.
[1565] Step 12:
[1566] User clicks the "Bulk Order" button.
[1567] Step 13:
[1568] The terminal sends a one-click ordering request to the server.
[1569] Step 14:
[1570] The server sends the order data via the online store's API and starts the food purchasing process.
[1571] Step 15:
[1572] The online store accepts the order and sends the order completion status to the server.
[1573] Step 16:
[1574] The server sends the order completion status to the terminal, and the terminal displays a confirmation message of the order completion to the user.
[1575] Step 17:
[1576] The server stores the user's menu selection history and purchase history in a database.
[1577] Example 1
[1578] 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."
[1579] In today's busy daily lives, users need a way to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients. However, calculating nutritional balance, listing ingredients, and ordering from online stores require time and effort. In addition, there is a lack of systems that can provide reference information for next menu selections and ingredient purchases based on past menu selections and purchase history, so automation and optimization are needed in this area.
[1580] 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.
[1581] In this invention, the server includes information device means for allowing the user to select a meal menu, computer means for calculating and visually displaying the nutritional balance based on the selected menu, data processing means for automatically generating an ingredient list required for the selected menu, network communication means for ordering ingredients online based on the generated ingredient list, and database means for storing past menu selections and purchase history for reference when selecting a menu or purchasing ingredients next time. This allows the user to efficiently and easily plan nutritionally balanced meals and purchase the necessary ingredients without waste.
[1582] "Information device means" refers to the terminal device used by the user to select a meal menu, and specifically includes interfaces such as smartphones, tablets, and personal computers.
[1583] "Calculator means" refers to hardware and software for calculating and visually displaying nutritional balance based on a menu selected by a user.
[1584] "Data processing means" refers to the hardware and software configuration within the system that has the function of automatically generating a list of ingredients required for the selected menu.
[1585] "Network communication means" refers to a function for communicating with an external service via the Internet in order to order ingredients online based on the generated ingredient list.
[1586] "Database means" refers to a database system that stores past menu selections and purchasing history and serves as a reference when selecting a menu or purchasing ingredients next time.
[1587] The present invention provides a system that enables a user to efficiently plan a nutritionally balanced meal and easily purchase the ingredients necessary for that meal. An embodiment of the system will be described below in detail.
[1588] System configuration
[1589] The system includes a terminal that accepts user input, a server that processes and manages data, and an API for an online store that supplies ingredients.
[1590] Terminal
[1591] A terminal is an information device that a user uses to select a meal plan and check the nutritional balance and ingredient list. Specifically, this includes devices such as smartphones, tablets, and personal computers. The terminal provides a user interface that allows users to easily operate it.
[1592] server
[1593] The server mainly has the following functions:
[1594] 1. Database management: Store and manage menu information and nutritional data.
[1595] 2. Nutrition calculation and graph generation: The system has a calculator that calculates the nutritional balance based on the menu selected by the user and generates data to visually display the results as a graph.
[1596] 3. Automatic generation of ingredient list: The system has a data processing means for automatically generating a list of ingredients required based on the selected menu.
[1597] 4. Online ordering: Includes network communication means for ordering ingredients online based on the generated ingredient list.
[1598] 5. Historical data management: A database is provided to store past menu selections and purchasing history, and to serve as a reference when selecting menus or purchasing ingredients next time.
[1599] Online store API
[1600] The online store's API is an external service that processes food orders and deliveries. It receives the order data generated by the server and processes the actual order.
[1601] Specific examples
[1602] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday on their device, the server retrieves the nutritional information for these dishes from the database and calculates the overall nutritional balance. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated and sent to the device. When the user presses the order button with one click, the server sends the order data to the online store's API, and the ingredients are delivered.
[1603] This system allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste, reducing the effort required for nutritional management and shopping, and contributing to reducing food waste.
[1604] Prompt Sentence Examples
[1605] This system allows users to efficiently plan nutritionally balanced meals and easily purchase the ingredients they need. First, select a weekly menu and check the nutritional balance. Then, generate a list of the ingredients you need and place an order from the online store.
[1606] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1607] Step 1: User selects a menu
[1608] The whole process starts when the user selects a menu for the week using a terminal.
[1609] Input: Multiple menu options displayed on the device
[1610] How it works: The user selects the menu they want for each day of the week from Monday to Sunday on their device.
[1611] Output: Selected menu data (menu name for each day of the week)
[1612] Step 2: Send the selected menu data to the server
[1613] Once the user has completed their selections, the data is sent to the server.
[1614] Input: Menu data selected by the user
[1615] How it works: The device compiles the user's selections and sends them to the server as an HTTP request.
[1616] Output: Menu data saved on the server
[1617] Step 3: Calculate your nutritional balance
[1618] The server calculates the nutritional balance based on the received menu data.
[1619] Input: Menu data and nutrition information in the database
[1620] How it works: The server retrieves the nutritional information contained in each menu from the database and calculates the overall nutritional balance.
[1621] Output: Nutritional balance calculation results
[1622] Step 4: Visual display of nutritional balance
[1623] Based on the calculation results, the server generates data that visually displays the nutritional balance and sends it to the terminal.
[1624] Input: Nutritional balance calculation result
[1625] Operation: The server generates the calculation results as graph data and sends it to the terminal. The terminal receives the data and displays it as a graph in the user interface.
[1626] Output: Nutritional balance graph displayed on the device
[1627] Step 5: Generate an ingredient list
[1628] After calculating the nutritional balance, the server automatically generates a list of necessary ingredients based on the selected menu.
[1629] Input: Menu data and ingredient information in the database
[1630] How it works: The server retrieves all the necessary ingredients from the database based on the menu and generates a list.
[1631] Output: Generated ingredient list
[1632] Step 6: View and review the ingredients list
[1633] The generated ingredient list is sent to the terminal and displayed for the user to check.
[1634] Input: Generated ingredient list
[1635] Operation: The server sends the ingredient list data to the device, which displays it on the user interface. The user can check the displayed ingredient list and make corrections or additions as necessary.
[1636] Output: Confirmed or revised ingredient list
[1637] Step 7: Order ingredients online
[1638] The online food ordering process begins when the user presses the order button.
[1639] Input: Confirmed or revised ingredient list
[1640] How it works: When a user clicks the "Order" button, the terminal sends an order request to the server. The server receives the request and sends the order data to the online store's API. It receives a response from the API confirming that the order was processed successfully.
[1641] Output: Order completion status and confirmation message to terminal
[1642] Through the above process, users can easily select a menu, check the nutritional balance, and order the necessary ingredients online, which is expected to improve daily meal management, improve nutritional balance, and reduce food waste.
[1643] (Application example 1)
[1644] 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."
[1645] The objective of this system is to provide a system that allows users to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients and completed dishes. Another objective is to provide a means for users to quickly respond when they are lacking in a particular nutrient. Furthermore, the system aims to achieve more effective dietary management by storing past menu selections and purchase history, which can be used as reference for the next menu selection or ingredient purchase.
[1646] 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.
[1647] In this invention, the server includes means for a user to select a meal menu, means for calculating nutritional balance based on the selected menu and visually displaying it as a graph, means for automatically generating a list of ingredients required for the selected menu, means for ordering ingredients and completed dishes online based on the generated ingredient list, means for saving past menu selections and purchase history to use as reference for the next menu selection or ingredient purchase, and means for displaying an alert if a specific nutrient is lacking and suggesting a balanced menu. This allows a user to efficiently and easily plan a balanced meal, purchase the necessary ingredients and completed dishes without waste, and quickly respond to a specific nutrient deficiency.
[1648] Below are definitions of important terms included in the claims, rewritten to fit the application example.
[1649] A "user" is a person who uses the system to select meal plans and manage nutritional balance.
[1650] A "menu" refers to the dishes and meal combinations that a user selects for their daily meals.
[1651] "Nutritional balance" refers to the overall distribution of nutrients such as calories, protein, lipids, vitamins, and minerals contained in each food or menu item.
[1652] "Visually displaying as a graph" means presenting the nutritional balance numerical data to the user in a visual format such as a graph or chart.
[1653] "Ingredient List" means a list of ingredients required based on the selected menu.
[1654] "Automatic generation" refers to the system automatically generating a specific deliverable with minimal user interaction.
[1655] "Ordering online" refers to the process of purchasing ingredients and finished dishes via the Internet.
[1656] "Past menu selection and purchase history" refers to a record of menus previously selected and ingredients previously purchased by the user.
[1657] "Displaying an alert" means presenting a message to warn or alert the user when a specific condition (e.g., a lack of a specific nutrient) is met.
[1658] "Suggesting a balanced menu" means that if the user's nutritional balance is unbalanced, the system will recommend an appropriate menu or meal content to correct that.
[1659] "Ingredients and completed dishes" refers to the necessary raw materials and cooked dishes that the user must procure based on the menu.
[1660] MODE FOR CARRYING OUT THE INVENTION
[1661] Overall system configuration
[1662] The present invention is implemented by a system that includes the following components: The system is designed to enable users to efficiently plan nutritionally balanced meals and easily purchase the necessary ingredients and completed dishes.
[1663] 1. Terminal
[1664] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[1665] 2. Server
[1666] A database that stores and manages menu information and nutritional data.
[1667] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[1668] A function that automatically generates a list of required ingredients and sends order data to the online store.
[1669] A function that saves past menu selections and purchase history, allowing you to use it as a reference when selecting your next menu or purchasing ingredients.
[1670] A function that displays an alert if you are lacking in certain nutrients and suggests balanced meal plans.
[1671] 3. Online Store API
[1672] A third-party service that processes food orders and arranges delivery.
[1673] Hardware and Software Used
[1674] Hardware: Smartphone
[1675] Software: Python, Matplotlib, requests
[1676] Explanation of program processing
[1677] The server calculates the nutritional balance based on the menu selected by the user and displays it as a visual graph. Specifically, it retrieves a list of menus for one week from the database, and the user selects each day. Next, it retrieves the nutritional information for the selected menu from the database and generates a graph of the calculation results. It also automatically generates a list of necessary ingredients and sends the order data to the online store. At this time, it displays an alert if a specific nutrient is lacking and suggests a balanced menu.
[1678] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server obtains and calculates the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, a list of required ingredients (e.g., 500g of chicken, 300g of pork, cabbage, carrots, etc.) is automatically generated, and the user can place an order with one click. The order data is sent to the online store, and the ingredients and completed dishes are delivered.
[1679] Prompt Sentence Examples
[1680] "I want to plan nutritionally balanced meals and order the ingredients and complete dishes I need. I want to prepare teriyaki chicken on Monday, shogayaki pork on Tuesday, and stir-fried vegetables on Wednesday. Please create a program that calculates the nutritional balance, generates a list of ingredients I need, and places the delivery order."
[1681] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1682] Step 1:
[1683] The user selects a menu using the terminal.
[1684] Input: The user uses the device interface to select a weekly menu, for example, "Teriyaki Chicken" for Monday, "Ginger Pork" for Tuesday, and "Stir-fried Vegetables" for Wednesday.
[1685] Output: The selected menu is sent to the server.
[1686] Step 2:
[1687] The server calculates the nutritional balance based on the selected menu and generates data that can be visually displayed as a graph.
[1688] Input: The server retrieves the nutritional information for each menu item from the database.
[1689] How it works: Accesses the database to extract the necessary nutritional information. Using Python's mathematical calculation library, calculates the nutritional balance based on the nutrient data for each menu item.
[1690] Output: Generates the calculation results as a graph and sends the data to the terminal for visual display.
[1691] Step 3:
[1692] The nutritional balance received by the terminal is visually displayed to the user as a graph.
[1693] Input: Nutritional balance graph data sent from the server.
[1694] Operation: A nutritional balance graph is drawn using Matplotlib and displayed on the terminal screen.
[1695] Output: A visual representation of the graph is provided for the user.
[1696] Step 4:
[1697] The server automatically generates a list of ingredients required for the selected menu.
[1698] Input: Selected menu data.
[1699] Operation: The server retrieves information about ingredients needed for each menu from the database and calculates the required quantities.
[1700] Output: Send the automatically generated ingredient list to the terminal.
[1701] Step 5:
[1702] The user is prompted to confirm the ingredient list displayed on the terminal.
[1703] Input: An automatically generated list of ingredients sent from the server.
[1704] Action: The device displays the ingredient list to the user and prompts for confirmation.
[1705] Output: A list of ingredients confirmed by the user.
[1706] Step 6:
[1707] Users can order ingredients and prepared meals online with one click.
[1708] Input: Confirmed ingredient list.
[1709] How it works: When the user clicks the order button, the terminal sends a request to the server.
[1710] Output: Online order data sent to the server.
[1711] Step 7:
[1712] The server sends the order data to the online store's API.
[1713] Input: Online order data submitted by the user.
[1714] How it works: The server sends the order data to the online store's API, and the order process begins.
[1715] Output: The online store processes the order and begins the shipping process.
[1716] Step 8:
[1717] Monitor the status of the order and display a confirmation message to the user when it is complete.
[1718] Input: Order completion notification from the online store API.
[1719] Operation: The server checks the order status and notifies the terminal that the order has been completed.
[1720] Output: A confirmation message displayed on the terminal.
[1721] Step 9:
[1722] The server stores past menu selections and purchase history, which can be used as a reference when selecting a menu or purchasing ingredients for the next time.
[1723] Input: User's menu selection and purchase history data.
[1724] How it works: The server stores this data in a database and provides it as reference information the next time you choose a menu or purchase ingredients.
[1725] Output: Updated user history data.
[1726] Step 10:
[1727] The server will alert you if you are lacking in certain nutrients and suggest balanced meals.
[1728] Input: Calculated nutritional balance data.
[1729] How it works: The server analyzes nutritional data, generates alerts if certain nutrients are lacking, and suggests appropriate meal plans.
[1730] Output: Alert message and suggested menu displayed on terminal.
[1731] 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.
[1732] The present invention aims to provide a system that allows users to efficiently select menus while taking nutritional balance into consideration and easily purchase the ingredients needed for those menus, and further aims to improve user satisfaction by combining it with an emotion engine that recognizes the user's emotions. An embodiment of the system will be described in detail below.
[1733] Overall system configuration
[1734] The system includes a terminal that accepts user input, a server that processes and manages data, an API for an online store that supplies ingredients, and an emotion engine that recognizes user emotions.
[1735] Terminal
[1736] A device (smartphone, tablet, PC, etc.) that allows users to select menu items and check nutritional balance and ingredient lists.
[1737] It includes input means (camera, microphone, etc.) for recognizing the user's emotions.
[1738] server
[1739] A database that stores and manages menu information and nutritional data.
[1740] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[1741] A function that automatically generates a list of required ingredients and sends order data to the online store.
[1742] A function that receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[1743] Online store API
[1744] A third-party service that processes food orders and arranges delivery.
[1745] Emotion Engine
[1746] A function that uses a camera and microphone to analyze the user's facial expressions and tone of voice and recognize the user's emotions.
[1747] The recognized emotion data is sent to a server and used for menu suggestions and feedback.
[1748] Program processing
[1749] Menu Selection and Emotion Recognition
[1750] The server retrieves a weekly menu list from the database and sends it to the device. The device displays the menu list, and the user selects a menu for each day of the week from Monday to Sunday. At the same time, the emotion engine analyzes the user's facial expressions and voice and sends the emotion data to the server. The server then suggests appropriate menus and assists in the selection of meals based on the user's emotional state.
[1751] Nutritional balance display and emotional feedback
[1752] The server retrieves nutritional information for each selected menu item from a database and calculates the overall nutritional balance. It then generates data to visually display the results as a graph and sends it to the device. The device then displays this graph to the user. At the same time, an emotion engine analyzes the user's reaction, and the server provides feedback based on that emotion.
[1753] Ingredient list generation and display
[1754] The server retrieves all the ingredient information required for the selected menu from the database and automatically generates an ingredient list. The generated ingredient list is sent to the terminal, where the user can confirm and place the order with one click. The emotion engine also analyzes the user's emotions when ordering and provides feedback as needed.
[1755] Order ingredients online
[1756] When the user clicks the order button, the device sends a request to the server. The server then sends the order data to the online store's API and begins the ordering process. The order completion status is sent to the device, and a confirmation message is displayed to the user. At the same time, the emotion engine analyzes the user's reaction and uses that data to suggest menu items for the next order and for the ordering process.
[1757] Specific examples
[1758] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain and calculate the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, the emotion engine analyzes the user's facial expressions and voice, and the server receives this emotional data. If the user looks happy, the next menu suggestion will include items with a relaxing effect; if the user looks stressed, the server will suggest a menu that adjusts the nutritional balance and replenishes energy.
[1759] This system allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste.In addition, an emotion engine provides suggestions and feedback optimized for the user's emotional state, improving satisfaction.
[1760] The processing flow will be explained below.
[1761] Step 1:
[1762] A user logs in to the system using a terminal and accesses the menu selection page.
[1763] Step 2:
[1764] The server retrieves a week's worth of menu lists from the database and sends them to the terminal.
[1765] Step 3:
[1766] The terminal displays a menu list, and the user selects a menu for each day of the week from Monday to Sunday.
[1767] Step 4:
[1768] The emotion engine analyzes the user's facial expressions and voice and sends the emotion data to the server.
[1769] Step 5:
[1770] The server reviews the user's menu selections based on the user's emotional state and suggests or adjusts the menu as needed.
[1771] Step 6:
[1772] The terminal confirms the user's selection or suggested revisions and transmits the finalized menu data to the server.
[1773] Step 7:
[1774] The server retrieves nutritional information (calories, protein, fat, vitamins, etc.) for each selected meal from a database.
[1775] Step 8:
[1776] The server calculates the overall nutritional balance of a week's worth of menus and generates graph data for visual display.
[1777] Step 9:
[1778] The server sends the generated graph data to the terminal.
[1779] Step 10:
[1780] The terminal displays a nutritional balance graph to the user.
[1781] Step 11:
[1782] The emotion engine analyzes the user's reaction and sends feedback based on the emotion to the server.
[1783] Step 12:
[1784] The server receives the emotional feedback data and adjusts the nutritional balance and menu suggestions as needed.
[1785] Step 13:
[1786] The server generates the final nutritional balance graph and ingredient list and sends them to the terminal.
[1787] Step 14:
[1788] The terminal displays the ingredient list to the user and displays a "Bulk Order" button for confirmation.
[1789] Step 15:
[1790] User clicks the "Bulk Order" button.
[1791] Step 16:
[1792] The terminal sends a one-click ordering request to the server.
[1793] Step 17:
[1794] The server sends the order data via the online store's API and starts the food purchasing process.
[1795] Step 18:
[1796] The online store accepts the order and sends the order completion status to the server.
[1797] Step 19:
[1798] The server sends the order completion status to the terminal, and the terminal displays a confirmation message of the order completion to the user.
[1799] Step 20:
[1800] The emotion engine analyzes the user's reactions and uses the emotional data to suggest the next menu and improve the ordering process.
[1801] Step 21:
[1802] The server stores the user's menu selection history and purchase history in a database.
[1803] Example 2
[1804] 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."
[1805] In conventional dietary management systems, calculation of nutritional balance and creation of ingredient lists are often done manually, placing a heavy burden on users. Furthermore, because meal selection does not take into account the user's emotional state, it is difficult to improve user satisfaction. Furthermore, the process of ordering ingredients online is cumbersome, making efficient dietary management difficult.
[1806] The specification process by the specification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for calculating and visually displaying nutritional balance based on a menu, means for analyzing the user's emotions using the device's camera and microphone and using the data to suggest an appropriate menu, means for automatically generating an ingredient list required for the selected menu, means for ordering ingredients online based on the generated ingredient list, and means for saving past menu selections and purchase history to use as reference for the next menu selection or ingredient purchase. This enables menu suggestions that take the user's emotions into consideration, as well as simple and efficient nutritional management and ingredient purchases.
[1807] The "means for selecting a meal menu" is a function that provides an interface for the user to select a meal menu for one week.
[1808] "Means for calculating and visually displaying nutritional balance" refers to a function that quantifies the balance of nutrients based on the selected menu and displays the results in a visually easy-to-understand format such as a graph or chart.
[1809] "Means for analyzing user emotions using the device's camera and microphone" refers to a function that uses the device's camera and microphone to capture the user's facial expressions and voice, and identifies the user's emotional state from that data.
[1810] The "means for suggesting an appropriate menu" is a function that recommends the optimal meal menu taking into consideration the user's emotional state and nutritional balance.
[1811] The "means for automatically generating an ingredient list" is a function that lists the ingredients required based on the selected menu and automatically generates a shopping list without the user having to manually enter them.
[1812] The "means for ordering ingredients online" is a function for using the generated ingredient list to send an order to an online store via the Internet and purchase ingredients.
[1813] "Means for saving past menu selections and purchase history" is a function that saves data related to the menus selected by the user and food purchases made so that the data can be referenced later.
[1814] The "means for ordering ingredients from the online store with one click" is a function that allows the user to place an order with the online store based on the ingredient list with just one click after checking.
[1815] "Means for visually displaying as a graph" refers to a function that graphically represents data such as nutritional balance and displays it in a way that is easy for users to understand.
[1816] The "means for generating a shopping list" is a function that lists the ingredients needed and displays them along with detailed information.
[1817] "Means of reflecting emotional data in the next menu suggestion" is a function that uses the analyzed emotional data to suggest the next menu or when purchasing ingredients.
[1818] "Means for providing feedback" refers to a function that returns appropriate information and advice based on the user's emotions and behavior.
[1819] This invention is a system that allows users to efficiently select meal plans while considering nutritional balance, and then order the necessary ingredients online based on those selections. This system also includes an emotion recognition function that analyzes the user's emotions and uses them to suggest meals, with the aim of increasing user satisfaction.
[1820] Overall system configuration
[1821] This system mainly consists of the following elements: terminal, server, emotion engine, and online store API.
[1822] Terminal
[1823] The terminals are devices such as smartphones, tablets, and PCs that users use to select menus and check the nutritional balance and ingredient list. The terminals are equipped with cameras and microphones to capture facial expressions and voice. These hardware devices are used to collect and analyze user emotional data.
[1824] server
[1825] The server is the central data processing and management center. It has the following functions:
[1826] 1. Database management: The server uses a database to manage menu information and nutritional data.
[1827] 2. Nutritional balance calculation: The server calculates the nutritional balance based on the selected menu and generates data to be displayed visually.
[1828] 3. Generate ingredient list: The server automatically generates the required ingredient list and sends the order data to the online store.
[1829] 4. Emotional data analysis: The server receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[1830] Emotion Engine
[1831] The emotion engine uses the device's camera and microphone to analyze the user's facial expressions and tone of voice to generate emotion data, which is then sent to a server and used to provide meal suggestions and feedback.
[1832] Online store API
[1833] The online store's API is an external service that receives order data from the server, processes food orders, and arranges delivery.
[1834] Specific processing of the program
[1835] The server retrieves a week's worth of menu lists from the database and sends them to the device. The device then calculates the nutritional balance based on the selected menu and displays the results visually as a graph to the user. It also uses the device's camera and microphone to analyze the user's emotions and sends that data to the server. Based on the received emotional data, the server suggests appropriate menus and assists the user in making food and drink choices.
[1836] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain the nutritional information for each menu and display the calculation results as a graph. Meanwhile, the emotion engine analyzes the user's facial expressions and voice, and suggests relaxing menus if the user seems happy, or menus to replenish energy if the user is feeling stressed.
[1837] Prompt Sentence Examples
[1838] "Please suggest a week's worth of nutritionally balanced meals."
[1839] "Generate a list of ingredients required for the menu selected by the user. Send this list to the online store's API as order data."
[1840] "Analyze the user's facial expressions and voice, and provide menu selection assistance and feedback based on emotion data."
[1841] The above is a description of an embodiment of the invention. This configuration allows users to efficiently and easily plan balanced meals and purchase the necessary ingredients without waste. In addition, the emotion engine provides suggestions and feedback optimized for the user's emotional state, improving satisfaction.
[1842] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1843] Step 1:
[1844] The server retrieves a weekly menu list from the database, which also contains nutritional information related to each menu, and sends it to the device. Specifically, the server queries the MySQL database, converts the menu data obtained into JSON format, and then sends it to the device via an HTTP request.
[1845] Input: Menu data in the database
[1846] Output: Menu list in JSON format
[1847] Step 2:
[1848] The terminal displays the menu list received from the server on the user interface. The terminal uses a front-end framework such as React.js to build a screen that allows users to check a week's worth of menus.
[1849] Input: Menu list in JSON format
[1850] Output: Menu displayed in the user interface
[1851] Step 3:
[1852] The user selects the menu for each day of the week from the menu list displayed on the device. Specifically, the user selects the desired menu by touch operation or mouse click, and the selected data is saved on the device. A JavaScript event listener monitors this operation and prepares to send the selected data to the server.
[1853] Input: User menu selection operation
[1854] Output: Selected menu data
[1855] Step 4:
[1856] The device sends the user's selection data to the server, which then sends the selection data to the server as an API request.
[1857] Input: Selected menu data
[1858] Output: Menu selection data sent to the server
[1859] Step 5:
[1860] The device uses a camera and microphone to capture the user's real-time video and audio. The emotion engine analyzes the captured video and audio to generate the user's emotion data. The emotion engine uses the Google Cloud Vision API or Microsoft Azure Emotion API.
[1861] Input: User video and audio
[1862] Output: Parsed emotion data
[1863] Step 6:
[1864] The device sends the generated emotion data to the server via an HTTP request.
[1865] Input: Parsed emotion data
[1866] Output: Emotion data sent to the server
[1867] Step 7:
[1868] The server retrieves and analyzes relevant menu items from the database based on the user's emotional data, such as menu items that have a relaxing effect or menu items that require energy. This process is carried out using data analysis libraries in Python and R.
[1869] Input: User emotion data
[1870] Output: A suitable menu list
[1871] Step 8:
[1872] The server generates a supplementary menu list based on the analysis results and sends it to the device. The generated menu list is sent in JSON format and displayed on the device.
[1873] Input: Appropriate menu list
[1874] Output: A secondary menu list sent to the terminal
[1875] Step 9:
[1876] The terminal presents the supplementary menu list received from the server to the user, helping the user to finalize the menu selection. The menu is displayed in a visually easy-to-understand manner so that the user can easily find a menu that satisfies them.
[1877] Input: supplementary menu list
[1878] Output: A supplementary menu displayed in the user interface
[1879] Step 10:
[1880] The server retrieves the nutritional information for each confirmed menu from the database and calculates the overall nutritional balance. This is done using a Python data analysis library (e.g., Pandas). Data is generated to visually display the calculation results as a graph and sent to the terminal.
[1881] Input: Confirmed menu data
[1882] Output: Nutritional balance graph data
[1883] Step 11:
[1884] The terminal displays the nutritional balance graph received from the server, allowing users to visually grasp their own nutritional balance. Graph drawing libraries such as D3.js are used on the front end.
[1885] Input: Nutritional balance graph data
[1886] Output: Nutritional balance graph displayed on the user interface
[1887] Step 12:
[1888] The emotion engine continues to analyze the user's reactions (facial expressions and voice) and sends the data to the server.
[1889] Input: User reaction video and audio
[1890] Output: Analyzed sentiment data
[1891] Step 13:
[1892] The server generates feedback based on the emotional data and sends it to the device, including, for example, relaxation suggestions or nutritional advice.
[1893] Input: Emotion data
[1894] Output: Generated feedback
[1895] Step 14:
[1896] The terminal displays the feedback received from the server to the user.
[1897] Input: Generated feedback
[1898] Output: Feedback displayed in the user interface
[1899] Step 15:
[1900] The server retrieves the ingredient information required for the final menu from the database and automatically generates an ingredient list using a Python script, converts it into JSON format, and sends it to the terminal.
[1901] Input: Confirmed menu data
[1902] Output: Generated ingredient list
[1903] Step 16:
[1904] The terminal displays the generated ingredient list on the user interface for the user to review, and after reviewing, the user can order the ingredients from the online store with one click.
[1905] Input: Generated ingredient list
[1906] Output: A list of ingredients displayed in a user interface
[1907] Step 17:
[1908] When the user presses the order button, the terminal sends the order data to the server, which then sends the order data to the online store's API and starts the order process.
[1909] Input: Click on the order button
[1910] Output: Order request to online store
[1911] Step 18:
[1912] The server receives the order completion status from the online store and sends it to the terminal, which displays it to the user as a confirmation message.
[1913] Input: Order completion status from online store
[1914] Output: A confirmation message displayed in the user interface.
[1915] This is the specific flow of the program processing of this system. This allows users to efficiently plan meals that take nutritional balance into consideration and purchase the necessary ingredients without waste. In addition, the addition of feedback from the emotion engine increases satisfaction.
[1916] (Application example 2)
[1917] 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."
[1918] Conventional systems have insufficient support for users to consider nutritional balance when selecting menus. Furthermore, they only unilaterally suggest menus without considering the user's emotional state, which does not improve meal satisfaction. As a result, it has been difficult to reduce the stress and dissatisfaction users experience.
[1919] The specification processing by the specification 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 the user to select a meal menu, means for calculating and visually displaying nutritional balance based on the selected menu, means for automatically generating an ingredient list required for the selected menu, means for ordering ingredients online based on the generated ingredient list, means for saving past menu selections and purchase history and using it as reference for the next menu selection or ingredient purchase, means for recognizing the user's emotions, and means for suggesting an optimal menu to the user based on the recognized emotions. This enables the user to efficiently select a menu and purchase ingredients that take nutritional balance into consideration, and improves meal satisfaction through suggestions based on the user's emotions.
[1920] A "means for a user to select a meal plan" is a device or application that provides an interface or function for a user to visually select from multiple meal plans.
[1921] "Means for calculating and visually displaying nutritional balance based on the selected menu" is a function for retrieving nutrient information for the meal plan selected by the user from a database, calculating it, and displaying it graphically.
[1922] "Means for automatically generating a list of ingredients required for a selected menu" refers to a function that automatically creates a list of ingredients required for a menu selected by a user.
[1923] The "means for ordering ingredients online based on the generated ingredient list" is a function for placing an order with an ingredient sales service on the Internet using the generated ingredient list.
[1924] "A means of saving past menu selections and purchase history to use as reference when selecting a menu or purchasing ingredients for the next time" is a function that saves the user's history of menu selections and purchased ingredients in a database and allows them to use this information when selecting or purchasing ingredients for the next time.
[1925] "Means for recognizing user emotions" refers to technology or devices that use sensors such as cameras and microphones to analyze the user's facial expressions and voice and determine their emotional state.
[1926] The "means for proposing the optimal menu to the user based on the recognized emotions" is a function for analyzing the user's emotional data and providing the user with a meal plan that is suitable for the user based on the results.
[1927] This invention is a system that allows users to efficiently select a menu that takes nutritional balance into consideration and easily purchase the necessary ingredients, and at the same time has the function of recognizing the user's emotions. This system is composed of the following elements.
[1928] Terminal
[1929] The terminal is a device that allows users to select menus and check the nutritional balance and ingredient list. This can be a smartphone, tablet, or PC. The terminal is also equipped with a camera and microphone as an input means for recognizing the user's emotions.
[1930] server
[1931] The server has the following functions:
[1932] A database that stores and manages menu information and nutritional data.
[1933] A graph generation function that calculates and visually displays nutritional balance based on user selections.
[1934] A function that automatically generates a list of required ingredients and sends order data to the online store.
[1935] A function that receives data from the emotion engine and uses it to suggest menus, adjust nutritional balance, and provide feedback.
[1936] Online store API
[1937] The online store's API is an external service that processes food orders based on the generated food list and handles delivery procedures.
[1938] Emotion Engine
[1939] The emotion engine uses a camera and microphone to analyze the user's facial expressions and tone of voice to recognize their emotions. The recognized emotion data is sent to the server and used for menu suggestions and feedback.
[1940] Program processing
[1941] The server retrieves a weekly menu list from the database and sends it to the device. The device displays the menu list, and the user selects a menu for each day of the week. At the same time, the emotion engine analyzes the user's facial expressions and voice, and sends the emotion data to the server.
[1942] The server suggests appropriate menus and assists in selection based on the user's emotional state. It retrieves nutritional information for each selected menu from a database and calculates the overall nutritional balance. It also generates data that visually displays the calculation results as a graph and sends it to the terminal. The terminal displays this graph to the user, and the emotion engine analyzes the user's reaction, and the server provides feedback based on that emotion.
[1943] For example, if a user selects "Teriyaki Chicken" on Monday, "Ginger Pork" on Tuesday, and "Stir-fried Vegetables" on Wednesday, the server will obtain and calculate the nutritional information for each menu item. Based on the results, a nutritional balance graph is generated and sent to the device for visual display. At the same time, the emotion engine analyzes the user's facial expressions and voice. The server, upon receiving this emotional data, will suggest the next menu item to include a relaxing menu item if the user looks happy, or suggest a menu item to adjust the nutritional balance and replenish energy if the user looks stressed.
[1944] Example prompt sentence:
[1945] If the user smiles at the camera and says, "What should I eat tonight?", the emotion engine should recognize the relaxed state and suggest a menu that will have a relaxing effect.
[1946] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1947] Step 1:
[1948] The user uses the device to request a menu selection.
[1949] Input: User request (menu selection by day of the week)
[1950] Processing content: The terminal sends a request to the server, and the server retrieves a week's worth of menu lists from the database.
[1951] Output: Menu list
[1952] Step 2:
[1953] The terminal displays a menu list to the user, and the user selects the menu they desire.
[1954] Input: Menu list sent from the server
[1955] What happens: The device displays a menu list, and the user taps to select a menu for each day of the week.
[1956] Output: Selected menu information
[1957] Step 3:
[1958] The emotion engine captures the user's facial expressions and voice and analyzes their emotions.
[1959] Input: Camera images, audio data (user's facial expressions and voice)
[1960] What it does: The device uses the camera and microphone to capture the user's facial expressions and voice in real time, which are then analyzed by the emotion engine.
[1961] Output: Emotion data (e.g., relaxed, stressed, etc.)
[1962] Step 4:
[1963] The server suggests menus based on emotional data.
[1964] Input: User emotion data, selected menu information
[1965] What it does: The server analyzes the emotional data and reconstructs a list of recommended meals based on the user's emotional state.
[1966] Output: Suggested meal list based on emotions
[1967] Step 5:
[1968] The server calculates the nutritional balance of the selected menu and generates a graph.
[1969] Input: Selected menu information
[1970] Processing: The server retrieves nutritional information for each menu item from the database, calculates the overall nutritional balance, and then generates a graph for visual display.
[1971] Output: Nutritional balance graph
[1972] Step 6:
[1973] The device displays a nutritional balance graph to the user and captures the user's reactions.
[1974] Input: Nutritional balance graph
[1975] Processing details: The device displays the graph, and the emotion engine recaptures and analyzes the user's reactions (facial expressions and voice).
[1976] Output: User response data
[1977] Step 7:
[1978] The server automatically generates a list of necessary ingredients and sends it to the terminal.
[1979] Input: Selected menu information
[1980] Processing: The server obtains all the ingredient information required for the selected menu and automatically generates an ingredient list.
[1981] Output: Ingredients list
[1982] Step 8:
[1983] The device displays a list of ingredients to the user, allowing them to order with one click.
[1984] Input: Ingredients list
[1985] What happens: The device displays the generated list of ingredients to the user and provides a button to send the order to the online store with one click.
[1986] Output: User's order request
[1987] Step 9:
[1988] The server sends the order data through the online store API and starts the order process.
[1989] Input: User's order request
[1990] Processing: The server sends the order data to the online store's API and processes the order.
[1991] Output: Order completion status
[1992] Step 10:
[1993] The terminal displays the order completion status to the user, and the emotion engine analyzes the user's reaction.
[1994] Input: Order Completion Status
[1995] Processing details: The device displays a message indicating that the order has been completed, and the emotion engine analyzes the user's facial expressions and voice again, using this data to suggest the next menu item.
[1996] Output: Final user response data
[1997] 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.
[1998] 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.
[1999] 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.
[2000] 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.
[2001] 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.
[2002] 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.
[2003] 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).
[2004] 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.
[2005] 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."
[2006] 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.
[2007] 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).
[2008] 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.
[2009] 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.
[2010] 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.
[2011] 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.
[2012] 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.
[2013] 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.
[2014] 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.
[2015] 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.
[2016] 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.
[2017] 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.
[2018] The following is further disclosed regarding the above embodiment.
[2019] (Claim 1)
[2020] a means for a user to select a meal plan;
[2021] A means for calculating and visually displaying the nutritional balance based on the selected menu;
[2022] A means for automatically generating a list of ingredients required for the selected menu;
[2023] a means for ordering ingredients online based on the generated ingredient list;
[2024] A way to save your past menu selections and purchase history and use it as a reference when selecting your next menu or purchasing ingredients,
[2025] A system including:
[2026] (Claim 2)
[2027] a means for a user to select a meal plan;
[2028] a means for displaying a graph of nutritional balance based on the selected menu;
[2029] means for automatically generating a list of ingredients required for the selected menu;
[2030] A means for ordering ingredients from an online store with one click based on the generated ingredient list;
[2031] A system including:
[2032] (Claim 3)
[2033] A means for calculating the nutritional balance based on the selected menu and visually displaying it as a graph;
[2034] means for generating a shopping list listing all ingredients required for the selected meal along with detailed information;
[2035] a means for ordering ingredients from an online store based on the generated shopping list;
[2036] A system including:
[2037] "Example 1"
[2038] (Claim 1)
[2039] an information device means for a user to select a meal menu;
[2040] a computer means for calculating and visually displaying the nutritional balance based on the selected menu;
[2041] a data processing means for automatically generating a list of ingredients required for the selected menu;
[2042] a network communication means for ordering ingredients online based on the generated ingredient list;
[2043] A database to store past menu selections and purchase history and use it as a reference when selecting menus or purchasing ingredients next time.
[2044] A system including:
[2045] (Claim 2)
[2046] an information device means for a user to select a meal menu;
[2047] a computer means for displaying a graph of the nutritional balance based on the selected menu;
[2048] a data processing means for automatically generating a list of ingredients required for the selected menu;
[2049] a network communication means for ordering ingredients from an online store with one click based on the generated ingredient list;
[2050] A system including:
[2051] (Claim 3)
[2052] a computer means for calculating the nutritional balance based on the selected menu and visually displaying the calculated nutritional balance as a graph;
[2053] data processing means for generating a shopping list listing all ingredients required for the selected meal together with detailed information;
[2054] a network communication means for ordering ingredients from an online store based on the generated shopping list;
[2055] A system including:
[2056] "Application Example 1"
[2057] (Claim 1)
[2058] a means for a user to select a meal plan;
[2059] A means for calculating the nutritional balance based on the selected menu and visually displaying it as a graph;
[2060] A means for automatically generating a list of ingredients required for the selected menu;
[2061] a means for ordering ingredients and completed meals online based on the generated ingredient list;
[2062] A way to save your past menu selections and purchase history and use it as a reference when selecting your next menu or purchasing ingredients,
[2063] It will alert you if you are lacking certain nutrients and suggest balanced meals.
[2064] A system including:
[2065] (Claim 2)
[2066] a means for a user to select a meal plan;
[2067] a means for displaying a graph of nutritional balance based on the selected menu;
[2068] means for automatically generating a list of ingredients required for the selected menu;
[2069] A means to order ingredients and finished dishes from the online store with one click based on the generated ingredient list;
[2070] A way to save your past menu selections and purchase history and use it as a reference when selecting your next menu or purchasing ingredients,
[2071] 10. The system of claim 1, comprising:
[2072] (Claim 3)
[2073] A means for calculating the nutritional balance based on the selected menu and visually displaying it as a graph;
[2074] means for generating a shopping list listing all ingredients required for the selected meal along with detailed information;
[2075] a means for ordering ingredients and finished dishes from an online store based on the generated shopping list;
[2076] A way to save your past menu selections and purchase history and use it as a reference when selecting your next menu or purchasing ingredients,
[2077] It will alert you if you are lacking certain nutrients and suggest balanced meals.
[2078] 10. The system of claim 1, comprising:
[2079] "Example 2: Combining Emotion Engines"
[2080] (Claim 1)
[2081] a means for a user to select a meal plan;
[2082] A means for calculating and visually displaying the nutritional balance based on the selected menu;
[2083] A method for analyzing the user's emotions using the device's camera and microphone and using that data to suggest appropriate menus;
[2084] A means for automatically generating a list of ingredients required for the selected menu;
[2085] a means for ordering ingredients online based on the generated ingredient list;
[2086] A way to save your past menu selections and purchase history and use it as a reference when selecting your next menu or purchasing ingredients,
[2087] A system including:
[2088] (Claim 2)
[2089] a means for displaying a graph of nutritional balance based on the selected menu;
[2090] A means for ordering ingredients from an online store with one click based on the generated ingredient list;
[2091] A means for analyzing emotional data of a user when placing an order and providing feedback based on the emotional data;
[2092] 10. The system of claim 1.
[2093] (Claim 3)
[2094] A means for calculating the nutritional balance based on the selected menu and visually displaying it as a graph;
[2095] means for generating a shopping list listing all ingredients required for the selected meal along with detailed information;
[2096] A means for analyzing the user's facial expressions and voice using the device's camera and microphone, and reflecting the analysis results in the next menu proposal;
[2097] a means for ordering ingredients from an online store based on the generated shopping list;
[2098] 10. The system of claim 1.
[2099] "Application example 2 when combining emotion engines"
[2100] (Claim 1)
[2101] a means for a user to select a meal plan;
[2102] A means for calculating and visually displaying the nutritional balance based on the selected menu;
[2103] A means for automatically generating a list of ingredients required for the selected menu;
[2104] a means for ordering ingredients online based on the generated ingredient list;
[2105] A way to save your past menu selections and purchase history and use it as a reference when selecting your next menu or purchasing ingredients,
[2106] means for recognizing a user's emotion;
[2107] A means for suggesting an optimal menu to a user based on the recognized emotion;
[2108] A system including:
[2109] (Claim 2)
[2110] a means for a user to select a meal plan;
[2111] a means for displaying a graph of nutritional balance based on the selected menu;
[2112] means for automatically generating a list of ingredients required for the selected menu;
[2113] A means for ordering ingredients from an online store with one click based on the generated ingredient list;
[2114] A means for analyzing the user's emotions and reflecting the analysis results in the next menu proposal;
[2115] A system including:
[2116] (Claim 3)
[2117] A means for calculating the nutritional balance based on the selected menu and visually displaying it as a graph;
[2118] means for generating a shopping list listing all ingredients required for the selected meal along with detailed information;
[2119] a means for ordering ingredients from an online store based on the generated shopping list;
[2120] A means for recognizing emotions from a user's facial expressions and voice and adjusting a menu based on the emotions;
[2121] A system including: [Explanation of symbols]
[2122] 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 a user to select a meal plan; A means for calculating and visually displaying the nutritional balance based on the selected menu; A means for automatically generating a list of ingredients required for the selected menu; a means for ordering ingredients online based on the generated ingredient list; A way to save your past menu selections and purchase history and use it as a reference when selecting your next menu or purchasing ingredients, A system including:
2. a means for a user to select a meal plan; a means for displaying a graph of nutritional balance based on the selected menu; means for automatically generating a list of ingredients required for the selected menu; A means for ordering ingredients from an online store with one click based on the generated ingredient list; A system including:
3. A means for calculating the nutritional balance based on the selected menu and visually displaying it as a graph; means for generating a shopping list listing all ingredients required for the selected meal along with detailed information; a means for ordering ingredients from an online store based on the generated shopping list; A system including:
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A
Cited By
Low-color scratch-resistant articles with a multilayer optical film
US12625302B2