system

The system addresses the challenge of generating accurate and timely suggestions by integrating user data analysis with external information sources, using machine learning and APIs, to enhance user convenience and satisfaction through efficient reservation confirmations.

JP2026062170APending Publication Date: 2026-04-09SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-09-30
Publication Date
2026-04-09

Smart Images

  • Figure 2026062170000001_ABST
    Figure 2026062170000001_ABST
Patent Text Reader

Abstract

We provide the system. [Solution] A means of receiving user requests, Based on the above requirements, means for collecting user preference information and past behavioral data, A means of applying a machine learning algorithm to analyze collected preference information and behavioral data, Based on the above analysis, means for generating the optimal suggestion for the user, A means of sending the generated proposal to the user's terminal, A means for presenting the generated suggestions to the user on the aforementioned terminal, A system that includes a means of confirming a reservation in conjunction with a reservation system, based on the user's selection.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0004] , , , ,

[0005] , , , , ,

[0003] , , ,

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

Background Art

[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a 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

[0006] A "user" refers to an individual who uses the system and is the entity that receives and selects suggestions.

[0007] A "terminal" is an electronic device used by a user to access a system, enter requests, or receive suggestions, and includes smartphones, tablets, and computers.

[0008] A "server" is a central system that performs multiple processes such as data collection, analysis, suggestion generation, and reservation coordination.

[0009] A "request" refers to a specific action or request that a user wants the system to perform.

[0010] "Preference information" refers to specific data about a user's preferences and interests, including past selection history and explicit preference settings.

[0011] "Past behavioral data" refers to data that records the actions and selection history that a user has previously performed within the system.

[0012] A "machine learning algorithm" refers to mathematical and statistical methods used to analyze data and make predictions or decisions, and in this invention, it is used to analyze user preferences and behavioral patterns.

[0013] "Suggestions" refer to recommendations and options that the server generates and provides to the user based on user preference information and behavioral data.

[0014] A "reservation system" refers to an external online platform or service used to manage reservations for restaurants, hotels, and other establishments.

[0015] "Collaboration" refers to the process by which a server communicates with an external reservation system to confirm a reservation. [Brief explanation of the drawing]

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

Mode for Carrying Out the Invention

[0017] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.

[0018] First, the terms used in the following description will be described.

[0019] In the following embodiments, a numbered processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of a plurality of arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of a plurality of types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.

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

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

[0022] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).

[0023] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."

[0024] [First Embodiment]

[0025] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.

[0026] As shown in Figure 1, the 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.

[0027] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

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

[0029] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and 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.

[0030] 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 perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0031] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.

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

[0033] As shown in Figure 2, in the data processing device 12, a specific processing 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" related to the technology of this 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 according to the specific processing program 56 executed on the RAM 30.

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

[0035] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

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

[0037] This invention is a system that generates optimal suggestions based on user requests and confirms reservations based on those suggestions. This system exchanges data between the user's terminal and the server, providing convenience to the user.

[0038] Overall system processing flow

[0039] User request received

[0040] Users can make requests (e.g., "Please suggest restaurants for tonight's dinner") via voice commands or text input through a device such as a smartphone or computer. These requests are then sent to the server after being analyzed via text or speech recognition within the device.

[0041] Data collection and analysis

[0042] The server receives a request and extracts the user's past behavioral data and preference information from the database. The extracted data is analyzed using machine learning algorithms. These algorithms include k-nearest neighbors (KNN), random forests, and neural networks, which are used to identify the user's preferences. This analysis generates suggestions that best suit the user's current needs.

[0043] Proposal generation and presentation to users

[0044] The server generates a list of restaurants best suited to the user based on the analysis results. This list includes detailed restaurant information (reviews, distance, availability) obtained using external APIs, such as Google® Maps API and Yelp API. The generated suggestions are sent to the device, where they are presented to the user for visual or audio review.

[0045] User selection and booking confirmation

[0046] The user selects their preferred restaurant from a suggested list (e.g., "Please reserve the second restaurant") and sends this selection to the server via their device. The server receives this selection and integrates with a partnered external reservation system (e.g., OpenTable API) to confirm the reservation. Once the reservation is confirmed, confirmation information is sent to the user's device. The device then notifies the user of this confirmation information.

[0047] Specific example

[0048] For example, suppose a user requests, "Please suggest restaurants for tonight's dinner." The device parses this request as text and sends it to the server. The server analyzes past behavioral data and decides to suggest three Italian restaurants. Detailed information about these restaurants is obtained via an external API and sent to the user's device as a suggestion list. When the user selects the second restaurant and requests a reservation, the selection is sent to the server, which confirms the reservation through a partnered reservation system. Finally, reservation confirmation information is sent to the user's device, and the device notifies the user of this confirmation.

[0049] Through the above process, users can easily utilize a consistent process from suggestion to reservation execution. This system achieves both time savings and increased user satisfaction.

[0050] The following describes the processing flow.

[0051] Step 1:

[0052] The user uses the terminal to enter a request (e.g., "Please suggest restaurants for dinner tonight"). Input methods include voice commands and text input.

[0053] Step 2:

[0054] The terminal interprets the user's request through text analysis or speech recognition and generates request data in text format.

[0055] Step 3:

[0056] The terminal sends the generated request data to the server. This transmission is performed using the HTTPS protocol.

[0057] Step 4:

[0058] The server receives the request data sent from the terminal. Based on the received request data, it identifies the user's ID.

[0059] Step 5:

[0060] The server extracts past behavioral data and preference information from the database based on the user's ID. SQL queries are used for this data extraction.

[0061] Step 6:

[0062] The server analyzes the extracted data using machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network). This identifies user preferences and patterns.

[0063] Step 7:

[0064] The server interacts with external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed information (reviews, distance, availability) of candidate restaurants based on the analysis results.

[0065] Step 8:

[0066] The server generates a list of optimal suggestions based on the acquired restaurant information. This list is then organized through ranking and filtering.

[0067] Step 9:

[0068] The server encodes the generated suggestion list in JSON format and sends it to the terminal. The HTTPS protocol is used for transmission.

[0069] Step 10:

[0070] The terminal decodes the received suggestion list and presents it to the user visually or audibly. The presentation method will utilize a GUI widget or similar.

[0071] Step 11:

[0072] The user selects their preferred restaurant from the suggested list (e.g., "Please book the second restaurant").

[0073] Step 12:

[0074] The terminal sends the user's selection to the server. This transmission also uses the HTTPS protocol.

[0075] Step 13:

[0076] The server analyzes the received selection data and, in conjunction with a partnered external reservation system (e.g., OpenTable API), sends a request to confirm the reservation for the specified restaurant.

[0077] Step 14:

[0078] The server receives reservation confirmation information from an external reservation system and generates data indicating that the reservation has been confirmed.

[0079] Step 15:

[0080] The server encodes the reservation confirmation information in JSON format and sends it to the terminal. The HTTPS protocol is used again for transmission.

[0081] Step 16:

[0082] The terminal decodes the received reservation confirmation information and notifies the user. Notification methods include push notifications and GUI displays.

[0083] This series of steps allows users to easily receive optimal suggestions and complete the entire booking process in one go.

[0084] (Example 1)

[0085] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."

[0086] Traditional systems sometimes struggled to quickly generate appropriate suggestions based on user requests and smoothly confirm reservations. Furthermore, they often failed to fully utilize user preferences and past behavioral data, resulting in an inability to provide optimal suggestions. Additionally, insufficient integration with external information sources led to reduced accuracy and convenience in user suggestions.

[0087] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0088] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, means for applying machine learning algorithms to analyze the collected preference information and behavioral data, means for obtaining detailed suggestion information from external sources, means for transmitting the generated suggestion to the user's terminal, and means for coordinating with a reservation system based on the user's selection to confirm the reservation. This makes it possible to quickly generate optimal suggestions based on the user's past data and efficiently confirm reservations.

[0089] "Means for receiving user requests" refers to the hardware and software used to receive voice commands or text requests entered by users and transmit them to the server.

[0090] "Means for collecting user preference information and past behavioral data" refers to a function that collects the user's past choices and behavioral history from a database or similar source and uses it for analysis.

[0091] "Methods for applying machine learning algorithms" refers to the process of analyzing collected data and extracting patterns and trends using algorithms such as k-nearest neighbors, random forests, and neural networks.

[0092] "Means of obtaining detailed information about a proposal from external sources" refers to communication functions for obtaining detailed information such as restaurant reviews, distance, and availability from internet services and data providers (e.g., map APIs and review sites).

[0093] "Means for sending generated suggestions to the user's terminal" refers to the communication technology and protocol used by the server to send suggestions generated based on the analysis results to the user's terminal.

[0094] "A means of linking with a reservation system based on user selection and confirming a reservation" refers to a function that, based on the suggestions selected by the user, links with an external reservation system to make a reservation and obtains confirmation information for that reservation.

[0095] "Means of processing using text analysis or speech recognition" refers to technologies for analyzing and recognizing speech or text input by a user and converting it into a format that can be processed by a computer.

[0096] This invention is a system that generates optimal suggestions based on user requests and confirms reservations based on those suggestions. This system primarily exchanges data between the user's terminal and the server, providing convenience to the user.

[0097] Users submit their requests (e.g., "Please suggest restaurants for dinner tonight") via voice commands or text input through devices such as smartphones or personal computers. These requests are then sent to the server after undergoing text analysis and speech recognition within the device. A general-purpose speech recognition API can be used for speech recognition software, and a natural language processing engine can be used for text analysis.

[0098] The server analyzes the received request and extracts the user's past behavioral data and preference information from the database. This extracted data is then analyzed using machine learning algorithms. These algorithms include k-nearest neighbors (KNN), random forests, and neural networks. Machine learning libraries such as scikit-learn and TENSORFLOW® are used. This analysis generates suggestions that best suit the user's current requests.

[0099] Next, the server retrieves detailed information about the suggestion from external sources. Typically, this is done using external APIs (e.g., map APIs or review site APIs). For example, it might use HTTP requests to retrieve detailed information such as the distance, reviews, and availability of the restaurant selected from the device, obtaining the data in JSON format. Based on this information, the server then generates a list of more suitable restaurants.

[0100] The generated suggestions are sent from the server to the user's device. The device then presents these suggestions to the user visually or audibly. Text-to-speech APIs can be used as the speech synthesis technology, allowing the user to select from a displayed list or audio guidance.

[0101] When a user selects a desired suggestion and requests, for example, "Please book the second restaurant," that information is sent from the terminal to the server. The server receives this information, interacts with an external reservation system (e.g., a reservation management API), and confirms the reservation. The server retrieves the reservation confirmation information and sends it back to the user's terminal. The user's terminal then notifies the user of this information using a notification mechanism. Typically, push notifications are used.

[0102] To give a concrete example, if a user requests "Please suggest restaurants for tonight's dinner," the device analyzes this request and sends it to the server. The server uses the KNN algorithm to analyze past behavioral data and decides to suggest three Italian restaurants. It retrieves detailed information from an external API and sends the suggestion list to the device. When the user selects the second restaurant and requests a reservation, the server uses a reservation management API to confirm the reservation, sends that information to the device, and notifies the user via push notification.

[0103] An example of a prompt message would be, "Please suggest restaurants for tonight's dinner. Then, select from the list of suggestions and confirm the reservation." This allows the generative AI model to make appropriate suggestions and facilitates the selection and reservation process.

[0104] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0105] Step 1:

[0106] The user enters voice commands or text into their device, such as a smartphone or computer.

[0107] Input: "Please suggest a restaurant for tonight's dinner."

[0108] The device converts this input audio into text using speech recognition software (e.g., a speech recognition API).

[0109] Output: Recognized text data

[0110] Step 2:

[0111] The terminal uses a text analysis engine (e.g., a natural language processing engine) to analyze the recognized text data and extract the request content.

[0112] Input: Recognized text data

[0113] Data processing: Analyze text data using natural language processing and extract the content as a "restaurant proposal request."

[0114] Output: Extracted request details ("Restaurant Proposal Request")

[0115] Step 3:

[0116] The terminal sends the analyzed request to the server.

[0117] Input: Extracted request content

[0118] Data processing: Format the request content as an HTTP request and send it to the server.

[0119] Output: HTTP request containing the request details

[0120] Step 4:

[0121] The server receives the request and extracts user preference information and past behavioral data from the database.

[0122] Input: Request details ("Restaurant Proposal Request")

[0123] Data processing: Use SQL queries to extract users' past selection history and preference information from the database.

[0124] Output: Extracted preference information and behavioral data

[0125] Step 5:

[0126] The server analyzes the extracted preference and behavioral data using machine learning algorithms (e.g., KNN, Random Forest, Neural Network).

[0127] Input: Preference information and behavioral data

[0128] Data processing: Execute machine learning algorithms to generate suggestions best suited to the user's current requirements.

[0129] Output: Generated proposal data

[0130] Step 6:

[0131] The server retrieves detailed information about the proposal (e.g., reviews, distance, availability) from external sources.

[0132] Input: Generated proposal data

[0133] Data Calculation: Use HTTP requests to retrieve detailed information about suggestions from map APIs and review site APIs.

[0134] Output: A list of proposals containing detailed information.

[0135] Step 7:

[0136] The server sends the generated list of suggestions to the user's terminal.

[0137] Input: Proposal list containing detailed information

[0138] Data processing: Format the suggestion list as an HTTP response and send it to the terminal.

[0139] Output: HTTP response containing the suggestion list

[0140] Step 8:

[0141] The device displays the submitted list of suggestions to the user.

[0142] Input: HTTP response containing a list of suggestions

[0143] Specific actions: Display text on the screen or provide voice guidance using speech synthesis technology (e.g., Text-to-Speech API).

[0144] Output: List of suggestions presented to the user

[0145] Step 9:

[0146] The user selects their preferred suggestion from the presented list and enters their selection into the device.

[0147] Input: "I'd like you to make a reservation for the second restaurant."

[0148] The terminal sends this input to the server.

[0149] Output: HTTP request containing the selected items

[0150] Step 10:

[0151] The server receives the selected information and confirms the reservation in conjunction with an external reservation system.

[0152] Input: Selection

[0153] Data processing: Use HTTP requests to interact with the reservation management API and confirm reservations.

[0154] Output: Reservation confirmation information

[0155] Step 11:

[0156] The server sends reservation confirmation information to the user's device.

[0157] Input: Reservation confirmation information

[0158] Data processing: Format reservation confirmation information into an HTTP response and send it to the terminal.

[0159] Output: HTTP response containing reservation confirmation information

[0160] Step 12:

[0161] The device notifies the user of the received reservation confirmation information.

[0162] Input: HTTP response containing reservation confirmation information

[0163] Specific action: Notify the user using a notification mechanism (e.g., push notifications).

[0164] Output: Reservation confirmation information notified to the user

[0165] (Application Example 1)

[0166] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."

[0167] Traditional food delivery services have struggled to provide timely and accurate recommendations tailored to user needs and preferences. Furthermore, users faced the challenge of choosing a suitable restaurant from numerous options, resulting in a complex reservation process.

[0168] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0169] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, means for applying machine learning algorithms to analyze the collected preference information and behavioral data, means for sending generated suggestions to the user's terminal, means for converting user requests from voice commands into text data using a speech recognition library, means for analyzing user preferences using k-nearest neighbors, random forest, and neural networks as data analysis algorithms, means for collecting information to provide multiple suggestions using an external API, means for presenting suggestions to the user using a smartphone and receiving the user's selection, and means for confirming the reservation in cooperation with a reservation system based on the user's selection and notifying the user of confirmation information. This makes it possible to quickly and accurately provide optimal suggestions based on user requests in a food delivery service, and the process up to reservation confirmation becomes simple and convenient.

[0170] A "user" is someone who uses a system to input requests and receive suggestions.

[0171] A "request" refers to a user's request or preference, such as "Please suggest a delivery option for tonight's dinner."

[0172] "Preference information" refers to data that shows a user's past choices, behaviors, and preferences.

[0173] "Past behavioral data" refers to the history of actions and choices a user has made in the past.

[0174] A "speech recognition library" is a software component used to convert voice commands into text data.

[0175] A "machine learning algorithm" is an algorithm that analyzes preference information and past behavioral data to identify user preferences.

[0176] The "k-nearest neighbors" algorithm is an algorithm that performs analysis based on the k data points closest to the user's data point.

[0177] A "random forest" is a machine learning algorithm that uses multiple decision trees to make predictions.

[0178] A "neural network" is an algorithm that analyzes data through multiple layers of artificial neurons to perform classification and prediction.

[0179] An "external API" is an interface for connecting with external systems and services.

[0180] A "suggestion" is a set of options or recommendations that a system generates and presents based on user requests.

[0181] A "terminal" refers to a device used by a user to operate a system, specifically a mobile device such as a smartphone.

[0182] A "reservation system" is an external system used to reserve or confirm the suggested options.

[0183] "Confirmation information" refers to detailed information that is notified to the user when a reservation is confirmed.

[0184] This invention is a system for generating optimal suggestions and confirming reservations based on user requests. This system facilitates data exchange between the user's terminal and the server, providing convenience to the user.

[0185] The hardware used to implement this system includes smartphones and servers. Smartphones are devices that allow users to input requests via voice or text and receive suggestions. Servers are computers that collect and analyze data, generate suggestions, and confirm reservations.

[0186] The software used includes speech recognition libraries (e.g., SpeechRecognition), server-side frameworks (e.g., Flask), data analysis algorithms (e.g., scikit-learn, TensorFlow), libraries for API calls (e.g., requests), and frameworks for building user interfaces (e.g., React Native).

[0187] Specifically, the server implements this system as follows:

[0188] When a user enters a request by voice using their smartphone, a speech recognition library converts the voice into text data. This text data is then sent to the server.

[0189] The server collects user preference information and past behavioral data based on the received text data. This data is then analyzed using data analysis algorithms (k-nearest neighbors, random forest, neural network).

[0190] Based on the analysis results, the server generates multiple restaurant suggestions using external APIs (e.g., Yelp API, Google Maps API). These suggestions are sent to the user's smartphone and displayed visually.

[0191] The user selects their desired restaurant from a suggested list and sends the selection to the server via their smartphone. The server then integrates with a reservation system (e.g., OpenTable API) based on the selection and confirms the reservation. The final reservation confirmation information is sent from the server to the user's smartphone and notified to them.

[0192] This allows users to easily navigate the process from consistent suggestions to booking confirmation. Consider the following specific example.

[0193] As a concrete example, suppose a user requests, "Please recommend a restaurant for tonight's dinner delivery." This prompt is converted into text by a speech recognition library and sent to the server. The server analyzes past behavioral data and suggests several suitable restaurants. When the user selects one and requests a reservation, the reservation is confirmed, and final confirmation information is sent to their smartphone.

[0194] In this way, the system of the present invention can provide food delivery services smoothly and efficiently.

[0195] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0196] Step 1:

[0197] The user enters their request by voice using their smartphone. This input might be something like, "Can you recommend a restaurant for tonight's dinner delivery?" This voice data becomes the input data.

[0198] Step 2:

[0199] When a smartphone receives voice input, it uses a speech recognition library (e.g., SpeechRecognition) to convert the voice data into text data. This converted text data is then output and sent to the server.

[0200] Step 3:

[0201] The server receives text data sent from the smartphone. This text data becomes the input data. The server analyzes this text data to understand the user's request.

[0202] Step 4:

[0203] The server collects user preference information and past behavioral data from the database based on user requests. This collected preference information and past behavioral data becomes the input data.

[0204] Step 5:

[0205] The server uses collected preference information and historical behavioral data to apply machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network) to analyze user preferences. The analyzed data is then output.

[0206] Step 6:

[0207] Based on the analysis results, the server uses external APIs (e.g., Yelp API, Google Maps API) to retrieve information about multiple restaurants. This retrieved restaurant information becomes input data and is organized into a suggestion list.

[0208] Step 7:

[0209] The server sends the generated list of suggestions to the smartphone. This list of suggestions becomes the output data and is displayed on the smartphone.

[0210] Step 8:

[0211] The user selects their desired restaurant from a list of suggestions displayed on their smartphone. The user's selection becomes the input data.

[0212] Step 9:

[0213] The smartphone sends the user's selections to the server. These selections become the input data.

[0214] Step 10:

[0215] The server, based on the user's selections, interacts with a reservation system (e.g., OpenTable API) to confirm the reservation. This confirmed reservation information becomes the output data.

[0216] Step 11:

[0217] The server sends the confirmed reservation information to the smartphone. This reservation confirmation information becomes output data and is displayed to the user as a notification on their smartphone.

[0218] Through the steps described above, the entire process from user request to proposal generation, selection, and booking confirmation is seamlessly realized.

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

[0220] This invention is a system that generates optimal suggestions based on user requests and even executes reservations based on those suggestions. This system also incorporates an emotion engine that recognizes the user's emotions and creates suggestions that take those emotions into account.

[0221] Overall system processing flow

[0222] User request received

[0223] The user uses a terminal to enter a request (e.g., "Please suggest a restaurant for dinner tonight"). Input methods include voice commands and text input.

[0224] Data collection and analysis

[0225] The server receives the request and extracts the user's past behavioral data and preference information from the database. The extracted data is analyzed using machine learning algorithms (e.g., k-nearest neighbors (KNN), random forest, neural network). This analysis identifies the user's preferences and behavioral patterns.

[0226] Emotion recognition by an emotion engine

[0227] The device analyzes the user's voice patterns and facial expressions using an emotion engine. This analysis determines the user's emotional state (e.g., stressed, relaxed). The emotion engine identifies emotions using speech recognition and image analysis technologies.

[0228] Proposal generation and presentation to users

[0229] The server integrates the results of analysis of preference information and behavioral data, as well as the results of the emotion engine analysis, to generate a list of restaurants best suited to the user. It uses external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed restaurant information (reviews, distance, availability). Based on this information, it makes suggestions appropriate to the user's emotional state (e.g., recommending quiet restaurants if the user is seeking relaxation). The generated suggestions are sent to the device and presented visually or audibly.

[0230] User selection and booking confirmation

[0231] The user selects their desired restaurant from the presented list (e.g., "Please reserve the second restaurant"). The selection is sent to the server via the device. The server receives the selection data and confirms the reservation in conjunction with a partnered external reservation system (e.g., OpenTable API). Once the reservation is confirmed, confirmation information is sent to the user's device. The device then notifies the user of the confirmation information.

[0232] Specific example

[0233] For example, suppose a user requests, "Please suggest a restaurant for tonight's dinner." The terminal analyzes this request as text, and also uses an emotion engine to analyze the user's voice patterns and facial expressions. The server performs analysis based on past behavioral data and preference information. If the emotion engine's analysis indicates that "the user is feeling stressed," the server integrates the results and suggests three quiet, relaxing Italian restaurants. Detailed information about these restaurants is obtained via an external API and sent to the user's terminal as a suggestion list. If the user chooses the second restaurant and requests a reservation, the selection is sent to the server, which confirms the reservation through a partnered reservation system. Finally, reservation confirmation information is sent to the user's terminal, and the terminal notifies the user of this confirmation.

[0234] This entire process allows users to receive optimal suggestions tailored to their emotional state and consistently execute the booking process. This system further enhances user convenience and satisfaction.

[0235] The following describes the processing flow.

[0236] Step 1:

[0237] The user uses a terminal to enter a request (e.g., "Please suggest a restaurant for dinner tonight"). Input methods include voice commands and text input.

[0238] Step 2:

[0239] The device interprets user requests through text analysis or speech recognition and generates request data in text format. It also acquires data for analyzing the user's voice patterns and facial expressions using an emotion engine.

[0240] Step 3:

[0241] The device sends the generated request data and sentiment data to the server. This transmission is performed using the HTTPS protocol.

[0242] Step 4:

[0243] The server receives request data and sentiment data sent from the terminal. Based on the received request data, it identifies the user's ID.

[0244] Step 5:

[0245] The server extracts past behavioral data and preference information from the database based on the user's ID. SQL queries are used for this data extraction.

[0246] Step 6:

[0247] The server analyzes the extracted data using machine learning algorithms (e.g., k-nearest neighbors (KNN), random forest, neural network). This identifies user preferences and behavioral patterns.

[0248] Step 7:

[0249] The server inputs emotional data into the emotion engine and analyzes the user's current emotional state (e.g., stressed, relaxed). The emotion engine analyzes audio and image data to determine the emotion.

[0250] Step 8:

[0251] The server integrates the results of analysis of preference information, behavioral data, and emotion engine analysis to generate a list of restaurants best suited to the user. It uses external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed restaurant information (reviews, distance, availability). Based on the analysis results, for example, if the user is looking to relax, it will prioritize selecting quiet restaurants.

[0252] Step 9:

[0253] The server encodes the generated suggestion list in JSON format and sends it to the terminal. The HTTPS protocol is used for transmission.

[0254] Step 10:

[0255] The terminal decodes the received suggestion list and presents it to the user visually or audibly. Presentation methods include GUI widgets and audio output.

[0256] Step 11:

[0257] The user selects their preferred restaurant from the presented list (e.g., "Please make a reservation for the second restaurant").

[0258] Step 12:

[0259] The terminal sends the user's selection to the server. This transmission uses the HTTPS protocol.

[0260] Step 13:

[0261] The server analyzes the received selection data and, in conjunction with a partnered external reservation system (e.g., OpenTable API), sends a request to confirm the reservation for the specified restaurant.

[0262] Step 14:

[0263] The server receives reservation confirmation information from an external reservation system and generates data indicating that the reservation has been confirmed.

[0264] Step 15:

[0265] The server encodes the reservation confirmation information in JSON format and sends it to the terminal. The HTTPS protocol is used again for transmission.

[0266] Step 16:

[0267] The terminal decodes the received reservation confirmation information and notifies the user. Notification methods include push notifications and GUI displays.

[0268] This series of steps allows users to receive optimal suggestions tailored to their emotional state and consistently proceed with making a reservation.

[0269] (Example 2)

[0270] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".

[0271] Modern consumers often feel a great burden when making the best choice from a wide range of options. In particular, when deciding on a place to eat or other outings, they need to consider their preferences and emotional state. However, conventional systems struggle to provide suggestions that appropriately reflect the user's preferences and emotions, leading to decreased user convenience and satisfaction.

[0272] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0273] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, and means for applying machine learning algorithms to analyze the collected preference information and behavioral data. This makes it possible to provide optimal suggestions that reflect the user's preferences and emotional state.

[0274] Furthermore, the server includes means for generating optimal suggestions for the user based on analysis, means for sending the generated suggestions to the user's terminal, means for presenting the generated suggestions to the user on the terminal, means for coordinating with the reservation system based on the user's selection to confirm the reservation, and emotion recognition means for analyzing the user's voice patterns and facial expressions to determine their emotional state. This enables the consistent provision of suggestions and reservations based on the user's requests, thereby improving user convenience and satisfaction.

[0275] A "user" is a person who uses this system, and is responsible for inputting requests, receiving suggestions, and making selections.

[0276] A "terminal" is a device used by a user to input requests or receive suggestions, and includes electronic devices such as smartphones and tablets.

[0277] A "server" is a central processing unit that handles user requests, collects and analyzes data, generates suggestions, and confirms reservations.

[0278] A "request receiving means" is a device or software for receiving and analyzing requests from a user.

[0279] "Preference information" refers to data that indicates a user's preferences, such as their favorite foods or past choices.

[0280] "Behavioral data" refers to data that shows a user's past actions and choices.

[0281] "Collection means" refers to devices or software used to gather necessary information from databases or external information sources.

[0282] A "machine learning algorithm" is an algorithm that uses collected data to find patterns and analyze user preferences and behavior.

[0283] The "proposal generation means" is a device or software for proposing an optimal restaurant or service based on the user's preference information and emotional state.

[0284] The "transmission means" is a device or software for sending the generated proposal to the user's terminal.

[0285] The "presentation means" is a device or software for visually or audibly presenting the proposal on the user's terminal.

[0286] The "reservation confirmation means" is a device or software for communicating with an external reservation system and confirming the reservation based on the content selected by the user.

[0287] The "emotion recognition means" is a device or software for analyzing the user's voice pattern and expression to determine the emotional state.

[0288] The present invention relates to a system that generates an optimal proposal based on the user's request and executes a reservation based thereon. This system also incorporates an emotion engine that recognizes the user's emotion and creates a proposal taking it into account.

[0289] Overall description of the program processing

[0290] The system mainly operates through three parties: the server, the terminal, and the user. The server is a high-performance server for data processing (e.g., cloud-based computing service), and the terminal is a device (e.g., smartphone, tablet) for the user to input requests and receive proposals. For the emotion engine, APIs with voice recognition and image analysis technologies (e.g., emotion recognition APIs of cloud services) are used. Machine learning algorithms (e.g., scikit-learn, TensorFlow) are included in data analysis.

[0291] Details of data processing and data calculation

[0292] User request received

[0293] The user enters their request using a terminal. For example, they might enter a voice command such as, "Please suggest restaurants for dinner tonight." This request is converted into text data using speech recognition technology (e.g., a speech-to-text service) on the terminal and sent to the server.

[0294] Data collection and analysis

[0295] When the server receives a user request, it extracts the user's past behavioral data and preference information from a database (e.g., a relational database). Based on the extracted data, it performs analysis using machine learning algorithms (e.g., KNN, Random Forest). This identifies the user's preferences and behavioral patterns.

[0296] Emotion recognition by an emotion engine

[0297] The device analyzes the user's voice patterns and facial expressions using an emotion engine (e.g., emotion recognition API, image analysis API). By analyzing the voice and image data, it identifies the user's emotional state. This information is also sent to the server.

[0298] Proposal generation and presentation to users

[0299] The server integrates the results of preference and behavioral data analysis, as well as the results of the emotion engine analysis, to generate optimal suggestions. It uses external APIs (e.g., map services and review services) to obtain detailed information about the restaurants and services to suggest. Based on this information, it generates user-appropriate suggestions and sends them to the device. The device presents the suggestions to the user visually or audibly.

[0300] User selection and booking confirmation

[0301] The user selects the desired option from the presented proposals and requests a reservation. The selected content is sent to the server via the terminal. The server coordinates with the reservation system (e.g., reservation service API) to finalize the reservation. The confirmation information is sent to the terminal, and the terminal notifies the user.

[0302] Specific example

[0303] For example, when the user makes a voice request saying "I want you to propose a restaurant for tonight's dinner", the system operates as follows.

[0304] 1. Terminal: Convert the voice command to text and send it to the server.

[0305] 2. Server: Retrieve the user's past behavior data and preference information, and analyze it using machine learning algorithms.

[0306] 3. Terminal: Analyze the user's voice pattern and expression using the emotion engine.

[0307] 4. Server: Integrate the preference information, behavior data, and emotional state, and propose the optimal restaurant using an external API.

[0308] 5. Terminal: Present the proposal saying "There are three relaxing Italian restaurants: 1. Pizzeria A, 2. Ristorante B, 3. Trattoria C".

[0309] 6. User: "I want to reserve the second restaurant"

[0310] ; 7. Server: Finalize the reservation using the reservation service API.

[0311] 8. Terminal: Notify the user of the reservation confirmation information.

[0312] Examples of prompt sentences

[0313] User: "I want you to propose a restaurant for tonight's dinner"

[0314] Device: (Analyzes speech and text)

[0315] Server: (Integrates past behavioral data, preference information, and user sentiment data to select the optimal restaurant.)

[0316] Terminal: "There are three Italian restaurants where you can relax: 1. Pizzeria A, 2. Ristorante B, 3. Trattoria C"

[0317] User: "I'd like you to make a reservation for the second restaurant."

[0318] Server: (Confirms reservation through the reservation system)

[0319] Terminal: "Your reservation for Ristorante B has been confirmed. Reservation confirmation details are as follows."

[0320] This system allows users to receive optimal suggestions tailored to their emotional state and consistently execute the booking process. The configuration enhances user convenience and satisfaction.

[0321] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0322] Program processing flow

[0323] Step 1: Receiving the user's request

[0324] The user enters their request using the terminal. For example, they might enter a voice command such as, "Please suggest a restaurant for dinner tonight." The terminal uses speech recognition technology (voice conversion service) to convert this voice command into text data.

[0325] Input: User voice command

[0326] Processing: Converts speech to text using speech recognition technology.

[0327] Output: Text data (request details)

[0328] Step 2: Submit the request

[0329] The terminal sends the user's request, converted into text data, to the server. A secure communication protocol is used for transmission.

[0330] Input: Text data (request details)

[0331] Processing: Enclose text data in packets and send them to the server over the network.

[0332] Output: Request data reaches the server.

[0333] Step 3: Collection of preference information and behavioral data

[0334] When the server receives the request data, it executes queries from the database to collect data on the user's past behavior and preferences.

[0335] Input: Request data

[0336] Process: Query the database to retrieve the necessary data.

[0337] Output: User preference information and behavioral data

[0338] Step 4: Data Analysis

[0339] The server uses collected preference and behavioral data to apply machine learning algorithms (e.g., KNN, Random Forest) to analyze user preferences and behavioral patterns.

[0340] Input: Preference information and behavioral data

[0341] Processing: Apply machine learning algorithms to analyze the data.

[0342] Output: Identification results of user preference patterns

[0343] Step 5: Analysis of emotional state

[0344] The device analyzes the user's voice patterns and facial expressions using an emotion recognition API to determine their emotional state. This allows it to determine whether the user is stressed or relaxed.

[0345] Input: User voice data and facial expression data

[0346] Processing: Analyze emotional state using emotion recognition API.

[0347] Output: Identification of emotional state (e.g., stressed state)

[0348] Step 6: Proposal Generation

[0349] The server integrates the analysis results and generates recommendations for the most suitable restaurants for the user. It uses external APIs (e.g., map services and review services) to retrieve detailed restaurant information.

[0350] Input: Analysis results of user preference patterns and emotional states

[0351] Processing: Use an external API to retrieve detailed information and generate optimal suggestions.

[0352] Output: Suggested restaurant list

[0353] Step 7: Presenting the Proposal

[0354] The terminal presents the restaurant list sent from the server to the user visually or audibly.

[0355] Input: Suggested restaurant list

[0356] Processing: Display or announce the restaurant list.

[0357] Output: Presentation to the user

[0358] Step 8: User Selection

[0359] The user selects their desired restaurant from the presented list. The selection is sent to the server via the device.

[0360] Input: Suggested restaurant list

[0361] Process: The user selects their desired restaurant and sends the selection information to the server.

[0362] Output: Selection data reaches the server.

[0363] Step 9: Confirm your reservation

[0364] The server receives the selection data and confirms the reservation through a partner reservation system (e.g., a reservation service API). The reservation confirmation information is then sent to the terminal.

[0365] Input: User's selected data

[0366] Processing: Confirm the reservation using the reservation service API and send confirmation information to the device.

[0367] Output: Reservation confirmation information

[0368] Step 10: Booking confirmation notification

[0369] The device notifies the user of reservation confirmation information. The confirmation information is presented visually or audibly.

[0370] Input: Reservation confirmation information

[0371] Processing: Display or voice confirmation information.

[0372] Output: Notification to the user

[0373] (Application Example 2)

[0374] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."

[0375] Traditional food delivery services often offered only simple recommendations without considering the user's preferences or emotional state. As a result, users often struggled to receive optimal suggestions tailored to their emotional needs. There is a growing demand for services that consider emotional needs, such as suggesting meals that promote relaxation or meals that help relieve stress.

[0376] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a user request, means for collecting user preference information and past behavioral data based on the request, means for applying a machine learning algorithm to analyze the collected preference information and behavioral data, means for processing the user's voice signal and image data to analyze their emotional state, means for generating the most suitable suggestions for the user based on the analysis and emotional state analysis, means for transmitting the generated suggestions to the user's terminal, means for presenting the generated suggestions to the user at the terminal, and means for coordinating with a reservation system and confirming the reservation based on the user's selection. This makes it possible to provide a food delivery service that takes the user's emotional state into consideration.

[0377] "Means for receiving user requests"

[0378] This refers to a device or software that receives requests from a user, either as text or voice input.

[0379] "Means for collecting user preference information and past behavioral data"

[0380] This refers to a device or software that stores data such as a user's past order history, ratings, and preferences, and allows them to retrieve and use that data.

[0381] "Means for applying machine learning algorithms to analyze collected preference information and behavioral data."

[0382] This refers to devices and programs that utilize machine learning techniques to analyze user preferences and behavioral patterns using collected data.

[0383] "Means for processing user audio signals and image data to analyze emotional state."

[0384] This technology analyzes a user's voice patterns and facial expression data to identify their emotional state at that time (e.g., stress, tension, relaxation, etc.).

[0385] "A means of generating optimal suggestions for users."

[0386] This refers to devices and software that create the most appropriate options and suggestions for the user based on the results of data analysis and sentiment analysis.

[0387] "A means of sending the generated suggestions to the user's device."

[0388] This refers to a technology for sending generated suggestions as data to the user's device (e.g., smartphone, tablet).

[0389] "A means of presenting generated suggestions to the user."

[0390] This refers to a device or software that displays or notifies the user of suggested content visually or audibly on their device.

[0391] "A means of confirming reservations by linking with the reservation system."

[0392] This refers to the devices and software used to confirm reservations through a partner reservation system based on the options selected by the user based on the proposed content.

[0393] This invention provides a system that makes optimal food delivery service recommendations based on the user's emotional state and preferences, and then handles the entire process, from initial recommendation to order confirmation. This system is realized through collaboration with the user's terminal, a server, and an external API.

[0394] The user's device can be a smartphone or tablet. The user uses this device to input requests via voice or text, such as "I'm hungry" or "Please suggest a meal to relieve stress." The device receives these requests and sends them to the server.

[0395] When the server receives a user request, it first collects user preference information and past behavioral data from a database. This database stores, for example, past order history, ratings, and preferences. Next, the collected data is analyzed using machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network).

[0396] Simultaneously, the device transmits the user's voice signals and image data to an emotion engine, which analyzes the user's emotional state. This emotion engine identifies the user's emotional state (e.g., stress, relaxation) from voice patterns and facial expressions.

[0397] By integrating this preference data and sentiment analysis results, the server generates the most suitable recommendations for the user. When generating recommendations, it uses external APIs (e.g., Google Places API, Tabelog API) to obtain detailed information about restaurants and dishes, and constructs the recommendations based on that information.

[0398] Once a suggestion is generated, its contents are sent to the user's device. The user's device presents the suggestion to the user visually or audibly. When the user selects a desired suggestion from the list and confirms the order, the selection is sent to the server. The server uses a partnered reservation system (e.g., a food delivery service API) to execute the order. Finally, order confirmation information is sent to the user's device, and the user is notified of the confirmation.

[0399] For example, if a user enters the voice command, "I'm hungry. Do you have any recommendations?", the device converts this voice into text and sends it to the server. Based on past data and the results of the emotion engine's analysis, the server generates suggestions that will help the user relax (for example, a quiet sushi restaurant), retrieves detailed information (e.g., reviews, distance, rating) via an external API, and sends it to the user's device. Once the user selects the sushi restaurant and confirms their order, the order is placed through the reservation system, and a final confirmation is sent to the user's device.

[0400] Through the above process, the present invention realizes the provision of a food delivery service that takes into account the emotional state of the user.

[0401] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0402] Step 1:

[0403] Receive user requests.

[0404] The user uses a device such as a smartphone or tablet to input a request via voice or text (e.g., "I'm hungry," "Please suggest a meal to relieve stress"). The device receives this request and sends it to the server as text.

[0405] Step 2:

[0406] We collect preference information and past behavioral data.

[0407] Based on the received request, the server collects user preference information and past behavioral data from the database. This includes past order history, ratings, and preferences. The collected data is retrieved from a database stored on the server.

[0408] Step 3:

[0409] Application of machine learning algorithms.

[0410] The server applies machine learning algorithms based on collected preference and behavioral data. Specifically, it uses the dataset to train models (e.g., k-nearest neighbors, random forest, neural network) and analyzes user preferences and behavioral patterns. This analysis identifies the user's current preferences.

[0411] Step 4:

[0412] Analysis of emotional states.

[0413] The device collects the user's voice signals and image data and sends them to the emotion engine. The emotion engine identifies the user's emotional state (e.g., stressed, relaxed) from voice patterns and facial expressions. It obtains an output of the emotional state from the voice and image data inputs.

[0414] Step 5:

[0415] Generating optimal proposals.

[0416] The server integrates analyzed preference data and emotional states to generate optimal suggestions for the user. During suggestion generation, it uses external APIs (e.g., Google Places API, Tabelog API) to retrieve detailed information about restaurants and dishes (reviews, distance, ratings, etc.) and uses this information to construct the suggestions. Beneath the database lies an algorithm that integrates emotional states and preference information to generate optimal suggestions.

[0417] Step 6:

[0418] Sending and presenting proposals.

[0419] The generated suggestions are sent from the server to the user's terminal. The terminal presents the received suggestions to the user visually or audibly. The user selects their preferred option from the list of presented suggestions. This allows the user to review and select the most suitable suggestion.

[0420] Step 7:

[0421] Confirmation and execution of the reservation.

[0422] Once the user selects from the suggested list and confirms their order, the selection is sent to the server. The server then works with a partner reservation system (e.g., a food delivery service API) to execute the order. Finally, order confirmation information is sent to the user's device, and the user is notified of the order status.

[0423] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating 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.

[0424] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0425] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.

[0426] [Second Embodiment]

[0427] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.

[0428] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0429] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

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

[0431] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

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

[0433] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[0434] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[0435] The specific processing program 56 is an example of a "program" relating to the technology of this 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.

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

[0437] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0438] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. 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".

[0439] This invention is a system that generates optimal suggestions based on user requests and confirms reservations based on those suggestions. This system exchanges data between the user's terminal and the server, providing convenience to the user.

[0440] Overall system processing flow

[0441] User request received

[0442] Users can make requests (e.g., "Please suggest restaurants for tonight's dinner") via voice commands or text input through a device such as a smartphone or computer. These requests are then sent to the server after being analyzed via text or speech recognition within the device.

[0443] Data collection and analysis

[0444] The server receives a request and extracts the user's past behavioral data and preference information from the database. The extracted data is analyzed using machine learning algorithms. These algorithms include k-nearest neighbors (KNN), random forests, and neural networks, which are used to identify the user's preferences. This analysis generates suggestions that best suit the user's current needs.

[0445] Proposal generation and presentation to users

[0446] The server generates a list of restaurants best suited to the user based on the analysis results. This list includes detailed restaurant information (reviews, distance, availability) obtained using external APIs, such as the Google Maps API or the Yelp API. The generated suggestions are sent to the device, where they are presented to the user for visual or audio review.

[0447] User selection and booking confirmation

[0448] The user selects their preferred restaurant from a suggested list (e.g., "Please reserve the second restaurant") and sends this selection to the server via their device. The server receives this selection and integrates with a partnered external reservation system (e.g., OpenTable API) to confirm the reservation. Once the reservation is confirmed, confirmation information is sent to the user's device. The device then notifies the user of this confirmation information.

[0449] Specific example

[0450] For example, suppose a user requests, "Please suggest restaurants for tonight's dinner." The device parses this request as text and sends it to the server. The server analyzes past behavioral data and decides to suggest three Italian restaurants. Detailed information about these restaurants is obtained via an external API and sent to the user's device as a suggestion list. When the user selects the second restaurant and requests a reservation, the selection is sent to the server, which confirms the reservation through a partnered reservation system. Finally, reservation confirmation information is sent to the user's device, and the device notifies the user of this confirmation.

[0451] Through the above process, users can easily utilize a consistent process from suggestion to reservation execution. This system achieves both time savings and increased user satisfaction.

[0452] The following describes the processing flow.

[0453] Step 1:

[0454] The user uses the terminal to enter a request (e.g., "Please suggest restaurants for dinner tonight"). Input methods include voice commands and text input.

[0455] Step 2:

[0456] The terminal interprets the user's request through text analysis or speech recognition and generates request data in text format.

[0457] Step 3:

[0458] The terminal sends the generated request data to the server. This transmission is performed using the HTTPS protocol.

[0459] Step 4:

[0460] The server receives the request data sent from the terminal. Based on the received request data, it identifies the user's ID.

[0461] Step 5:

[0462] The server extracts past behavioral data and preference information from the database based on the user's ID. SQL queries are used for this data extraction.

[0463] Step 6:

[0464] The server analyzes the extracted data using machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network). This identifies user preferences and patterns.

[0465] Step 7:

[0466] The server interacts with external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed information (reviews, distance, availability) of candidate restaurants based on the analysis results.

[0467] Step 8:

[0468] The server generates a list of optimal suggestions based on the acquired restaurant information. This list is then organized through ranking and filtering.

[0469] Step 9:

[0470] The server encodes the generated suggestion list in JSON format and sends it to the terminal. The HTTPS protocol is used for transmission.

[0471] Step 10:

[0472] The terminal decodes the received suggestion list and presents it to the user visually or audibly. The presentation method will utilize a GUI widget or similar.

[0473] Step 11:

[0474] The user selects their preferred restaurant from the suggested list (e.g., "Please book the second restaurant").

[0475] Step 12:

[0476] The terminal sends the user's selection to the server. This transmission also uses the HTTPS protocol.

[0477] Step 13:

[0478] The server analyzes the received selection data and, in conjunction with a partnered external reservation system (e.g., OpenTable API), sends a request to confirm the reservation for the specified restaurant.

[0479] Step 14:

[0480] The server receives reservation confirmation information from an external reservation system and generates data indicating that the reservation has been confirmed.

[0481] Step 15:

[0482] The server encodes the reservation confirmation information in JSON format and sends it to the terminal. The HTTPS protocol is used again for transmission.

[0483] Step 16:

[0484] The terminal decodes the received reservation confirmation information and notifies the user. Notification methods include push notifications and GUI displays.

[0485] This series of steps allows users to easily receive optimal suggestions and complete the entire booking process in one go.

[0486] (Example 1)

[0487] Next, we will describe Example 1. 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."

[0488] Traditional systems sometimes struggled to quickly generate appropriate suggestions based on user requests and smoothly confirm reservations. Furthermore, they often failed to fully utilize user preferences and past behavioral data, resulting in an inability to provide optimal suggestions. Additionally, insufficient integration with external information sources led to reduced accuracy and convenience in user suggestions.

[0489] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0490] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, means for applying machine learning algorithms to analyze the collected preference information and behavioral data, means for obtaining detailed suggestion information from external sources, means for transmitting the generated suggestion to the user's terminal, and means for coordinating with a reservation system based on the user's selection to confirm the reservation. This makes it possible to quickly generate optimal suggestions based on the user's past data and efficiently confirm reservations.

[0491] "Means for receiving user requests" refers to the hardware and software used to receive voice commands or text requests entered by users and transmit them to the server.

[0492] "Means for collecting user preference information and past behavioral data" refers to a function that collects the user's past choices and behavioral history from a database or similar source and uses it for analysis.

[0493] "Methods for applying machine learning algorithms" refers to the process of analyzing collected data and extracting patterns and trends using algorithms such as k-nearest neighbors, random forests, and neural networks.

[0494] "Means of obtaining detailed information about a proposal from external sources" refers to communication functions for obtaining detailed information such as restaurant reviews, distance, and availability from internet services and data providers (e.g., map APIs and review sites).

[0495] "Means for sending generated suggestions to the user's terminal" refers to the communication technology and protocol used by the server to send suggestions generated based on the analysis results to the user's terminal.

[0496] "A means of linking with a reservation system based on user selection and confirming a reservation" refers to a function that, based on the suggestions selected by the user, links with an external reservation system to make a reservation and obtains confirmation information for that reservation.

[0497] "Means of processing using text analysis or speech recognition" refers to technologies for analyzing and recognizing speech or text input by a user and converting it into a format that can be processed by a computer.

[0498] This invention is a system that generates optimal suggestions based on user requests and confirms reservations based on those suggestions. This system primarily exchanges data between the user's terminal and the server, providing convenience to the user.

[0499] Users submit their requests (e.g., "Please suggest restaurants for dinner tonight") via voice commands or text input through devices such as smartphones or personal computers. These requests are then sent to the server after undergoing text analysis and speech recognition within the device. A general-purpose speech recognition API can be used for speech recognition software, and a natural language processing engine can be used for text analysis.

[0500] The server analyzes the received request and extracts the user's past behavioral data and preference information from the database. This extracted data is then analyzed using machine learning algorithms. These algorithms include k-nearest neighbors (KNN), random forests, and neural networks. Machine learning libraries such as scikit-learn and TensorFlow are used. This analysis generates suggestions that best suit the user's current requests.

[0501] Next, the server retrieves detailed information about the suggestion from external sources. Typically, this is done using external APIs (e.g., map APIs or review site APIs). For example, it might use HTTP requests to retrieve detailed information such as the distance, reviews, and availability of the restaurant selected from the device, obtaining the data in JSON format. Based on this information, the server then generates a list of more suitable restaurants.

[0502] The generated suggestions are sent from the server to the user's device. The device then presents these suggestions to the user visually or audibly. Text-to-speech APIs can be used as the speech synthesis technology, allowing the user to select from a displayed list or audio guidance.

[0503] When a user selects a desired suggestion and requests, for example, "Please book the second restaurant," that information is sent from the terminal to the server. The server receives this information, interacts with an external reservation system (e.g., a reservation management API), and confirms the reservation. The server retrieves the reservation confirmation information and sends it back to the user's terminal. The user's terminal then notifies the user of this information using a notification mechanism. Typically, push notifications are used.

[0504] To give a concrete example, if a user requests "Please suggest restaurants for tonight's dinner," the device analyzes this request and sends it to the server. The server uses the KNN algorithm to analyze past behavioral data and decides to suggest three Italian restaurants. It retrieves detailed information from an external API and sends the suggestion list to the device. When the user selects the second restaurant and requests a reservation, the server uses a reservation management API to confirm the reservation, sends that information to the device, and notifies the user via push notification.

[0505] An example of a prompt message would be, "Please suggest restaurants for tonight's dinner. Then, select from the list of suggestions and confirm the reservation." This allows the generative AI model to make appropriate suggestions and facilitates the selection and reservation process.

[0506] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0507] Step 1:

[0508] The user enters voice commands or text into their device, such as a smartphone or computer.

[0509] Input: "Please suggest a restaurant for tonight's dinner."

[0510] The device converts this input audio into text using speech recognition software (e.g., a speech recognition API).

[0511] Output: Recognized text data

[0512] Step 2:

[0513] The terminal uses a text analysis engine (e.g., a natural language processing engine) to analyze the recognized text data and extract the request content.

[0514] Input: Recognized text data

[0515] Data processing: Analyze text data using natural language processing and extract the content as a "restaurant proposal request."

[0516] Output: Extracted request details ("Restaurant Proposal Request")

[0517] Step 3:

[0518] The terminal sends the analyzed request to the server.

[0519] Input: Extracted request content

[0520] Data processing: Format the request content as an HTTP request and send it to the server.

[0521] Output: HTTP request containing the request details

[0522] Step 4:

[0523] The server receives the request and extracts user preference information and past behavioral data from the database.

[0524] Input: Request details ("Restaurant Proposal Request")

[0525] Data processing: Use SQL queries to extract users' past selection history and preference information from the database.

[0526] Output: Extracted preference information and behavioral data

[0527] Step 5:

[0528] The server analyzes the extracted preference and behavioral data using machine learning algorithms (e.g., KNN, Random Forest, Neural Network).

[0529] Input: Preference information and behavioral data

[0530] Data processing: Execute machine learning algorithms to generate suggestions best suited to the user's current requirements.

[0531] Output: Generated proposal data

[0532] Step 6:

[0533] The server retrieves detailed information about the proposal (e.g., reviews, distance, availability) from external sources.

[0534] Input: Generated proposal data

[0535] Data Calculation: Use HTTP requests to retrieve detailed information about suggestions from map APIs and review site APIs.

[0536] Output: A list of proposals containing detailed information.

[0537] Step 7:

[0538] The server sends the generated list of suggestions to the user's terminal.

[0539] Input: Proposal list containing detailed information

[0540] Data processing: Format the suggestion list as an HTTP response and send it to the terminal.

[0541] Output: HTTP response containing the suggestion list

[0542] Step 8:

[0543] The device displays the submitted list of suggestions to the user.

[0544] Input: HTTP response containing a list of suggestions

[0545] Specific actions: Display text on the screen or provide voice guidance using speech synthesis technology (e.g., Text-to-Speech API).

[0546] Output: List of suggestions presented to the user

[0547] Step 9:

[0548] The user selects their preferred suggestion from the presented list and enters their selection into the device.

[0549] Input: "I'd like you to make a reservation for the second restaurant."

[0550] The terminal sends this input to the server.

[0551] Output: HTTP request containing the selected items

[0552] Step 10:

[0553] The server receives the selected information and confirms the reservation in conjunction with an external reservation system.

[0554] Input: Selection

[0555] Data processing: Use HTTP requests to interact with the reservation management API and confirm reservations.

[0556] Output: Reservation confirmation information

[0557] Step 11:

[0558] The server sends reservation confirmation information to the user's device.

[0559] Input: Reservation confirmation information

[0560] Data processing: Format reservation confirmation information into an HTTP response and send it to the terminal.

[0561] Output: HTTP response containing reservation confirmation information

[0562] Step 12:

[0563] The device notifies the user of the received reservation confirmation information.

[0564] Input: HTTP response containing reservation confirmation information

[0565] Specific action: Notify the user using a notification mechanism (e.g., push notifications).

[0566] Output: Reservation confirmation information notified to the user

[0567] (Application Example 1)

[0568] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."

[0569] Traditional food delivery services have struggled to provide timely and accurate recommendations tailored to user needs and preferences. Furthermore, users faced the challenge of choosing a suitable restaurant from numerous options, resulting in a complex reservation process.

[0570] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0571] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, means for applying machine learning algorithms to analyze the collected preference information and behavioral data, means for sending generated suggestions to the user's terminal, means for converting user requests from voice commands into text data using a speech recognition library, means for analyzing user preferences using k-nearest neighbors, random forest, and neural networks as data analysis algorithms, means for collecting information to provide multiple suggestions using an external API, means for presenting suggestions to the user using a smartphone and receiving the user's selection, and means for confirming the reservation in cooperation with a reservation system based on the user's selection and notifying the user of confirmation information. This makes it possible to quickly and accurately provide optimal suggestions based on user requests in a food delivery service, and the process up to reservation confirmation becomes simple and convenient.

[0572] A "user" is someone who uses a system to input requests and receive suggestions.

[0573] A "request" refers to a user's request or preference, such as "Please suggest a delivery option for tonight's dinner."

[0574] "Preference information" refers to data that shows a user's past choices, behaviors, and preferences.

[0575] "Past behavioral data" refers to the history of actions and choices a user has made in the past.

[0576] A "speech recognition library" is a software component used to convert voice commands into text data.

[0577] A "machine learning algorithm" is an algorithm that analyzes preference information and past behavioral data to identify user preferences.

[0578] The "k-nearest neighbors" algorithm is an algorithm that performs analysis based on the k data points closest to the user's data point.

[0579] A "random forest" is a machine learning algorithm that uses multiple decision trees to make predictions.

[0580] A "neural network" is an algorithm that analyzes data through multiple layers of artificial neurons to perform classification and prediction.

[0581] An "external API" is an interface for connecting with external systems and services.

[0582] A "suggestion" is a set of options or recommendations that a system generates and presents based on user requests.

[0583] A "terminal" refers to a device used by a user to operate a system, specifically a mobile device such as a smartphone.

[0584] A "reservation system" is an external system used to reserve or confirm the suggested options.

[0585] "Confirmation information" refers to detailed information that is notified to the user when a reservation is confirmed.

[0586] This invention is a system for generating optimal suggestions and confirming reservations based on user requests. This system facilitates data exchange between the user's terminal and the server, providing convenience to the user.

[0587] The hardware used to implement this system includes smartphones and servers. Smartphones are devices that allow users to input requests via voice or text and receive suggestions. Servers are computers that collect and analyze data, generate suggestions, and confirm reservations.

[0588] The software used includes speech recognition libraries (e.g., SpeechRecognition), server-side frameworks (e.g., Flask), data analysis algorithms (e.g., scikit-learn, TensorFlow), libraries for API calls (e.g., requests), and frameworks for building user interfaces (e.g., React Native).

[0589] Specifically, the server implements this system as follows:

[0590] When a user enters a request by voice using their smartphone, a speech recognition library converts the voice into text data. This text data is then sent to the server.

[0591] The server collects user preference information and past behavioral data based on the received text data. This data is then analyzed using data analysis algorithms (k-nearest neighbors, random forest, neural network).

[0592] Based on the analysis results, the server generates multiple restaurant suggestions using external APIs (e.g., Yelp API, Google Maps API). These suggestions are sent to the user's smartphone and displayed visually.

[0593] The user selects their desired restaurant from a suggested list and sends the selection to the server via their smartphone. The server then integrates with a reservation system (e.g., OpenTable API) based on the selection and confirms the reservation. The final reservation confirmation information is sent from the server to the user's smartphone and notified to them.

[0594] This allows users to easily navigate the process from consistent suggestions to booking confirmation. Consider the following specific example.

[0595] As a concrete example, suppose a user requests, "Please recommend a restaurant for tonight's dinner delivery." This prompt is converted into text by a speech recognition library and sent to the server. The server analyzes past behavioral data and suggests several suitable restaurants. When the user selects one and requests a reservation, the reservation is confirmed, and final confirmation information is sent to their smartphone.

[0596] In this way, the system of the present invention can provide food delivery services smoothly and efficiently.

[0597] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0598] Step 1:

[0599] The user enters their request by voice using their smartphone. This input might be something like, "Can you recommend a restaurant for tonight's dinner delivery?" This voice data becomes the input data.

[0600] Step 2:

[0601] When a smartphone receives voice input, it uses a speech recognition library (e.g., SpeechRecognition) to convert the voice data into text data. This converted text data is then output and sent to the server.

[0602] Step 3:

[0603] The server receives text data sent from the smartphone. This text data becomes the input data. The server analyzes this text data to understand the user's request.

[0604] Step 4:

[0605] The server collects user preference information and past behavioral data from the database based on user requests. This collected preference information and past behavioral data becomes the input data.

[0606] Step 5:

[0607] The server uses collected preference information and historical behavioral data to apply machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network) to analyze user preferences. The analyzed data is then output.

[0608] Step 6:

[0609] Based on the analysis results, the server uses external APIs (e.g., Yelp API, Google Maps API) to retrieve information about multiple restaurants. This retrieved restaurant information becomes input data and is organized into a suggestion list.

[0610] Step 7:

[0611] The server sends the generated list of suggestions to the smartphone. This list of suggestions becomes the output data and is displayed on the smartphone.

[0612] Step 8:

[0613] The user selects their desired restaurant from a list of suggestions displayed on their smartphone. The user's selection becomes the input data.

[0614] Step 9:

[0615] The smartphone sends the user's selections to the server. These selections become the input data.

[0616] Step 10:

[0617] The server, based on the user's selections, interacts with a reservation system (e.g., OpenTable API) to confirm the reservation. This confirmed reservation information becomes the output data.

[0618] Step 11:

[0619] The server sends the confirmed reservation information to the smartphone. This reservation confirmation information becomes output data and is displayed to the user as a notification on their smartphone.

[0620] Through the steps described above, the entire process from user request to proposal generation, selection, and booking confirmation is seamlessly realized.

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

[0622] This invention is a system that generates optimal suggestions based on user requests and even executes reservations based on those suggestions. This system also incorporates an emotion engine that recognizes the user's emotions and creates suggestions that take those emotions into account.

[0623] Overall system processing flow

[0624] User request received

[0625] The user uses a terminal to enter a request (e.g., "Please suggest a restaurant for dinner tonight"). Input methods include voice commands and text input.

[0626] Data collection and analysis

[0627] The server receives the request and extracts the user's past behavioral data and preference information from the database. The extracted data is analyzed using machine learning algorithms (e.g., k-nearest neighbors (KNN), random forest, neural network). This analysis identifies the user's preferences and behavioral patterns.

[0628] Emotion recognition by an emotion engine

[0629] The device analyzes the user's voice patterns and facial expressions using an emotion engine. This analysis determines the user's emotional state (e.g., stressed, relaxed). The emotion engine identifies emotions using speech recognition and image analysis technologies.

[0630] Proposal generation and presentation to users

[0631] The server integrates the results of analysis of preference information and behavioral data, as well as the results of the emotion engine analysis, to generate a list of restaurants best suited to the user. It uses external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed restaurant information (reviews, distance, availability). Based on this information, it makes suggestions appropriate to the user's emotional state (e.g., recommending quiet restaurants if the user is seeking relaxation). The generated suggestions are sent to the device and presented visually or audibly.

[0632] User selection and booking confirmation

[0633] The user selects their desired restaurant from the presented list (e.g., "Please reserve the second restaurant"). The selection is sent to the server via the device. The server receives the selection data and confirms the reservation in conjunction with a partnered external reservation system (e.g., OpenTable API). Once the reservation is confirmed, confirmation information is sent to the user's device. The device then notifies the user of the confirmation information.

[0634] Specific example

[0635] For example, suppose a user requests, "Please suggest a restaurant for tonight's dinner." The terminal analyzes this request as text, and also uses an emotion engine to analyze the user's voice patterns and facial expressions. The server performs analysis based on past behavioral data and preference information. If the emotion engine's analysis indicates that "the user is feeling stressed," the server integrates the results and suggests three quiet, relaxing Italian restaurants. Detailed information about these restaurants is obtained via an external API and sent to the user's terminal as a suggestion list. If the user chooses the second restaurant and requests a reservation, the selection is sent to the server, which confirms the reservation through a partnered reservation system. Finally, reservation confirmation information is sent to the user's terminal, and the terminal notifies the user of this confirmation.

[0636] This entire process allows users to receive optimal suggestions tailored to their emotional state and consistently execute the booking process. This system further enhances user convenience and satisfaction.

[0637] The following describes the processing flow.

[0638] Step 1:

[0639] The user uses a terminal to enter a request (e.g., "Please suggest a restaurant for dinner tonight"). Input methods include voice commands and text input.

[0640] Step 2:

[0641] The device interprets user requests through text analysis or speech recognition and generates request data in text format. It also acquires data for analyzing the user's voice patterns and facial expressions using an emotion engine.

[0642] Step 3:

[0643] The device sends the generated request data and sentiment data to the server. This transmission is performed using the HTTPS protocol.

[0644] Step 4:

[0645] The server receives request data and sentiment data sent from the terminal. Based on the received request data, it identifies the user's ID.

[0646] Step 5:

[0647] The server extracts past behavioral data and preference information from the database based on the user's ID. SQL queries are used for this data extraction.

[0648] Step 6:

[0649] The server analyzes the extracted data using machine learning algorithms (e.g., k-nearest neighbors (KNN), random forest, neural network). This identifies user preferences and behavioral patterns.

[0650] Step 7:

[0651] The server inputs emotional data into the emotion engine and analyzes the user's current emotional state (e.g., stressed, relaxed). The emotion engine analyzes audio and image data to determine the emotion.

[0652] Step 8:

[0653] The server integrates the results of analysis of preference information, behavioral data, and emotion engine analysis to generate a list of restaurants best suited to the user. It uses external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed restaurant information (reviews, distance, availability). Based on the analysis results, for example, if the user is looking to relax, it will prioritize selecting quiet restaurants.

[0654] Step 9:

[0655] The server encodes the generated suggestion list in JSON format and sends it to the terminal. The HTTPS protocol is used for transmission.

[0656] Step 10:

[0657] The terminal decodes the received suggestion list and presents it to the user visually or audibly. Presentation methods include GUI widgets and audio output.

[0658] Step 11:

[0659] The user selects their preferred restaurant from the presented list (e.g., "Please make a reservation for the second restaurant").

[0660] Step 12:

[0661] The terminal sends the user's selection to the server. This transmission uses the HTTPS protocol.

[0662] Step 13:

[0663] The server analyzes the received selection data and, in conjunction with a partnered external reservation system (e.g., OpenTable API), sends a request to confirm the reservation for the specified restaurant.

[0664] Step 14:

[0665] The server receives reservation confirmation information from an external reservation system and generates data indicating that the reservation has been confirmed.

[0666] Step 15:

[0667] The server encodes the reservation confirmation information in JSON format and sends it to the terminal. The HTTPS protocol is used again for transmission.

[0668] Step 16:

[0669] The terminal decodes the received reservation confirmation information and notifies the user. Notification methods include push notifications and GUI displays.

[0670] This series of steps allows users to receive optimal suggestions tailored to their emotional state and consistently proceed with making a reservation.

[0671] (Example 2)

[0672] Next, we will describe Example 2. 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".

[0673] Modern consumers often feel a great burden when making the best choice from a wide range of options. In particular, when deciding on a place to eat or other outings, they need to consider their preferences and emotional state. However, conventional systems struggle to provide suggestions that appropriately reflect the user's preferences and emotions, leading to decreased user convenience and satisfaction.

[0674] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0675] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, and means for applying machine learning algorithms to analyze the collected preference information and behavioral data. This makes it possible to provide optimal suggestions that reflect the user's preferences and emotional state.

[0676] Furthermore, the server includes means for generating optimal suggestions for the user based on analysis, means for sending the generated suggestions to the user's terminal, means for presenting the generated suggestions to the user on the terminal, means for coordinating with the reservation system based on the user's selection to confirm the reservation, and emotion recognition means for analyzing the user's voice patterns and facial expressions to determine their emotional state. This enables the consistent provision of suggestions and reservations based on the user's requests, thereby improving user convenience and satisfaction.

[0677] A "user" is a person who uses this system, and is responsible for inputting requests, receiving suggestions, and making selections.

[0678] A "terminal" is a device used by a user to input requests or receive suggestions, and includes electronic devices such as smartphones and tablets.

[0679] A "server" is a central processing unit that handles user requests, collects and analyzes data, generates suggestions, and confirms reservations.

[0680] A "request receiving means" is a device or software for receiving and analyzing requests from a user.

[0681] "Preference information" refers to data that indicates a user's preferences, such as their favorite foods or past choices.

[0682] "Behavioral data" refers to data that shows a user's past actions and choices.

[0683] "Collection means" refers to devices or software used to gather necessary information from databases or external information sources.

[0684] A "machine learning algorithm" is an algorithm that uses collected data to find patterns and analyze user preferences and behavior.

[0685] A "proposal generation means" is a device or software that suggests the most suitable restaurant or service based on the user's preference information and emotional state.

[0686] "Transmission means" refers to a device or software for sending the generated proposal to the user's terminal.

[0687] "Presentation means" refers to a device or software for displaying a proposal visually or audibly on a user's terminal.

[0688] A "reservation confirmation method" refers to a device or software that confirms a reservation by linking with an external reservation system based on the user's selections.

[0689] "Emotion recognition means" refers to a device or software that analyzes a user's voice patterns and facial expressions to determine their emotional state.

[0690] This invention relates to a system that generates optimal suggestions based on user requests and even executes reservations based on those suggestions. This system also incorporates an emotion engine that recognizes the user's emotions and creates suggestions that take those emotions into account.

[0691] Overall description of the program's processing

[0692] The system primarily operates through three parties: a server, a terminal, and a user. The server is a high-performance data processing server (e.g., a cloud-based computing service), and the terminal is a device (e.g., a smartphone or tablet) where the user inputs requests and receives suggestions. The emotion engine uses APIs with speech recognition and image analysis technologies (e.g., an emotion recognition API from a cloud service). Data analysis includes machine learning algorithms (e.g., scikit-learn, TensorFlow).

[0693] Details of data processing and data calculations

[0694] User request received

[0695] The user enters their request using a terminal. For example, they might enter a voice command such as, "Please suggest restaurants for dinner tonight." This request is converted into text data using speech recognition technology (e.g., a speech-to-text service) on the terminal and sent to the server.

[0696] Data collection and analysis

[0697] When the server receives a user request, it extracts the user's past behavioral data and preference information from a database (e.g., a relational database). Based on the extracted data, it performs analysis using machine learning algorithms (e.g., KNN, Random Forest). This identifies the user's preferences and behavioral patterns.

[0698] Emotion recognition by an emotion engine

[0699] The device analyzes the user's voice patterns and facial expressions using an emotion engine (e.g., emotion recognition API, image analysis API). By analyzing the voice and image data, it identifies the user's emotional state. This information is also sent to the server.

[0700] Proposal generation and presentation to users

[0701] The server integrates the results of preference and behavioral data analysis, as well as the results of the emotion engine analysis, to generate optimal suggestions. It uses external APIs (e.g., map services and review services) to obtain detailed information about the restaurants and services to suggest. Based on this information, it generates user-appropriate suggestions and sends them to the device. The device presents the suggestions to the user visually or audibly.

[0702] User selection and booking confirmation

[0703] The user selects their preferred option from the presented suggestions and requests a reservation. The selection is sent to the server via the terminal. The server integrates with the reservation system (e.g., reservation service API) and confirms the reservation. Confirmation information is sent to the terminal, which then notifies the user.

[0704] Specific example

[0705] For example, if a user makes a voice request saying, "Please suggest a restaurant for tonight's dinner," the system will operate as follows:

[0706] 1. Terminal: Converts voice commands to text and sends them to the server.

[0707] 2. Server: Acquires past user behavior data and preference information, and analyzes it using machine learning algorithms.

[0708] 3. Terminal: Uses an emotion engine to analyze the user's voice patterns and facial expressions.

[0709] 4. Server: Integrates preference information, behavioral data, and emotional state, and uses external APIs to suggest the most suitable restaurant.

[0710] 5. Terminal: Presents the following suggestion: "There are three Italian restaurants where you can relax: 1. Pizzeria A, 2. Ristorante B, 3. Trattoria C."

[0711] 6. User: "I'd like you to make a reservation for the second restaurant."

[0712] 7. Server: Confirm the reservation using the reservation service API.

[0713] 8. Terminal: Notifies the user of reservation confirmation information.

[0714] Example of a prompt

[0715] User: "I'd like some restaurant recommendations for tonight's dinner."

[0716] Device: (Analyzes speech and text)

[0717] Server: (Integrates past behavioral data, preference information, and user sentiment data to select the optimal restaurant.)

[0718] Terminal: "There are three Italian restaurants where you can relax: 1. Pizzeria A, 2. Ristorante B, 3. Trattoria C"

[0719] User: "I'd like you to make a reservation for the second restaurant."

[0720] Server: (Confirms reservation through the reservation system)

[0721] Terminal: "Your reservation for Ristorante B has been confirmed. Reservation confirmation details are as follows."

[0722] This system allows users to receive optimal suggestions tailored to their emotional state and consistently execute the booking process. The configuration enhances user convenience and satisfaction.

[0723] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0724] Program processing flow

[0725] Step 1: Receiving the user's request

[0726] The user enters their request using the terminal. For example, they might enter a voice command such as, "Please suggest a restaurant for dinner tonight." The terminal uses speech recognition technology (voice conversion service) to convert this voice command into text data.

[0727] Input: User voice command

[0728] Processing: Converts speech to text using speech recognition technology.

[0729] Output: Text data (request details)

[0730] Step 2: Submit the request

[0731] The terminal sends the user's request, converted into text data, to the server. A secure communication protocol is used for transmission.

[0732] Input: Text data (request details)

[0733] Processing: Enclose text data in packets and send them to the server over the network.

[0734] Output: Request data reaches the server.

[0735] Step 3: Collection of preference information and behavioral data

[0736] When the server receives the request data, it executes queries from the database to collect data on the user's past behavior and preferences.

[0737] Input: Request data

[0738] Process: Query the database to retrieve the necessary data.

[0739] Output: User preference information and behavioral data

[0740] Step 4: Data Analysis

[0741] The server uses collected preference and behavioral data to apply machine learning algorithms (e.g., KNN, Random Forest) to analyze user preferences and behavioral patterns.

[0742] Input: Preference information and behavioral data

[0743] Processing: Apply machine learning algorithms to analyze the data.

[0744] Output: Identification results of user preference patterns

[0745] Step 5: Analysis of emotional state

[0746] The device analyzes the user's voice patterns and facial expressions using an emotion recognition API to determine their emotional state. This allows it to determine whether the user is stressed or relaxed.

[0747] Input: User voice data and facial expression data

[0748] Processing: Analyze emotional state using emotion recognition API.

[0749] Output: Identification of emotional state (e.g., stressed state)

[0750] Step 6: Proposal Generation

[0751] The server integrates the analysis results and generates restaurant recommendations best suited to the user. It uses external APIs (e.g., map services and review services) to retrieve detailed restaurant information.

[0752] Input: Analysis results of user preference patterns and emotional states

[0753] Processing: Use an external API to retrieve detailed information and generate optimal suggestions.

[0754] Output: Suggested restaurant list

[0755] Step 7: Presenting the Proposal

[0756] The terminal presents the restaurant list sent from the server to the user visually or audibly.

[0757] Input: Suggested restaurant list

[0758] Processing: Display or announce the restaurant list.

[0759] Output: Presentation to the user

[0760] Step 8: User Selection

[0761] The user selects their desired restaurant from the presented list. The selection is sent to the server via the device.

[0762] Input: Suggested restaurant list

[0763] Process: The user selects their desired restaurant and sends the selection information to the server.

[0764] Output: Selection data reaches the server.

[0765] Step 9: Confirm your reservation

[0766] The server receives the selection data and confirms the reservation through a partner reservation system (e.g., a reservation service API). The reservation confirmation information is then sent to the terminal.

[0767] Input: User's selected data

[0768] Processing: Confirm the reservation using the reservation service API and send confirmation information to the device.

[0769] Output: Reservation confirmation information

[0770] Step 10: Booking confirmation notification

[0771] The device notifies the user of reservation confirmation information. The confirmation information is presented visually or audibly.

[0772] Input: Reservation confirmation information

[0773] Processing: Display or voice confirmation information.

[0774] Output: Notification to the user

[0775] (Application Example 2)

[0776] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."

[0777] Traditional food delivery services often offered only simple recommendations without considering the user's preferences or emotional state. As a result, users often struggled to receive optimal suggestions tailored to their emotional needs. There is a growing demand for services that consider emotional needs, such as suggesting meals that promote relaxation or meals that help relieve stress.

[0778] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a user request, means for collecting user preference information and past behavioral data based on the request, means for applying a machine learning algorithm to analyze the collected preference information and behavioral data, means for processing the user's voice signal and image data to analyze their emotional state, means for generating the most suitable suggestions for the user based on the analysis and emotional state analysis, means for transmitting the generated suggestions to the user's terminal, means for presenting the generated suggestions to the user at the terminal, and means for coordinating with a reservation system and confirming the reservation based on the user's selection. This makes it possible to provide a food delivery service that takes the user's emotional state into consideration.

[0779] "Means for receiving user requests"

[0780] This refers to a device or software that receives requests from a user, either as text or voice input.

[0781] "Means for collecting user preference information and past behavioral data"

[0782] This refers to a device or software that stores and retrieves data such as a user's past order history, ratings, and preferences.

[0783] "Means for applying machine learning algorithms to analyze collected preference information and behavioral data."

[0784] This refers to devices and programs that utilize machine learning techniques to analyze user preferences and behavioral patterns using collected data.

[0785] "Means for processing user audio signals and image data to analyze emotional state."

[0786] This technology analyzes a user's voice patterns and facial expression data to identify their emotional state at that time (e.g., stress, tension, relaxation, etc.).

[0787] "A means of generating optimal suggestions for users."

[0788] This refers to devices and software that create the most appropriate options and suggestions for the user based on the results of data analysis and sentiment analysis.

[0789] "A means of sending the generated suggestions to the user's device."

[0790] This refers to a technology for sending generated suggestions as data to the user's device (e.g., smartphone, tablet).

[0791] "A means of presenting generated suggestions to the user."

[0792] This refers to a device or software that displays or notifies the user of suggested content visually or audibly on their device.

[0793] "A means of confirming reservations by linking with the reservation system."

[0794] This refers to the devices and software used to confirm reservations through a partner reservation system based on the options selected by the user based on the proposed content.

[0795] This invention provides a system that makes optimal food delivery service recommendations based on the user's emotional state and preferences, and then handles the entire process, from initial recommendation to order confirmation. This system is realized through collaboration with the user's terminal, a server, and an external API.

[0796] The user's device can be a smartphone or tablet. The user uses this device to input requests via voice or text, such as "I'm hungry" or "Please suggest a meal to relieve stress." The device receives these requests and sends them to the server.

[0797] When the server receives a user request, it first collects user preference information and past behavioral data from a database. This database stores, for example, past order history, ratings, and preferences. Next, the collected data is analyzed using machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network).

[0798] Simultaneously, the device transmits the user's voice signals and image data to an emotion engine, which analyzes the user's emotional state. This emotion engine identifies the user's emotional state (e.g., stress, relaxation) from voice patterns and facial expressions.

[0799] By integrating this preference data and sentiment analysis results, the server generates the most suitable recommendations for the user. When generating recommendations, it uses external APIs (e.g., Google Places API, Tabelog API) to obtain detailed information about restaurants and dishes, and constructs the recommendations based on that information.

[0800] Once a suggestion is generated, its contents are sent to the user's device. The user's device presents the suggestion to the user visually or audibly. When the user selects a desired suggestion from the list and confirms the order, the selection is sent to the server. The server uses a partnered reservation system (e.g., a food delivery service API) to execute the order. Finally, order confirmation information is sent to the user's device, and the user is notified of the confirmation.

[0801] For example, if a user enters the voice command, "I'm hungry. Do you have any recommendations?", the device converts this voice into text and sends it to the server. Based on past data and the results of the emotion engine's analysis, the server generates suggestions that will help the user relax (for example, a quiet sushi restaurant), retrieves detailed information (e.g., reviews, distance, rating) via an external API, and sends it to the user's device. Once the user selects the sushi restaurant and confirms their order, the order is placed through the reservation system, and a final confirmation is sent to the user's device.

[0802] Through the above process, the present invention realizes the provision of a food delivery service that takes into account the emotional state of the user.

[0803] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0804] Step 1:

[0805] Receive user requests.

[0806] The user uses a device such as a smartphone or tablet to input a request via voice or text (e.g., "I'm hungry," "Please suggest a meal to relieve stress"). The device receives this request and sends it to the server as text.

[0807] Step 2:

[0808] We collect preference information and past behavioral data.

[0809] Based on the received request, the server collects user preference information and past behavioral data from the database. This includes past order history, ratings, and preferences. The collected data is retrieved from a database stored on the server.

[0810] Step 3:

[0811] Application of machine learning algorithms.

[0812] The server applies machine learning algorithms based on collected preference and behavioral data. Specifically, it uses the dataset to train models (e.g., k-nearest neighbors, random forest, neural network) and analyzes user preferences and behavioral patterns. This analysis identifies the user's current preferences.

[0813] Step 4:

[0814] Analysis of emotional states.

[0815] The device collects the user's voice signals and image data and sends them to the emotion engine. The emotion engine identifies the user's emotional state (e.g., stressed, relaxed) from voice patterns and facial expressions. It obtains an output of the emotional state from the voice and image data inputs.

[0816] Step 5:

[0817] Generating optimal proposals.

[0818] The server integrates analyzed preference data and emotional states to generate optimal suggestions for the user. During suggestion generation, it uses external APIs (e.g., Google Places API, Tabelog API) to retrieve detailed information about restaurants and dishes (reviews, distance, ratings, etc.) and uses this information to construct the suggestions. Beneath the database lies an algorithm that integrates emotional states and preference information to generate optimal suggestions.

[0819] Step 6:

[0820] Sending and presenting proposals.

[0821] The generated suggestions are sent from the server to the user's terminal. The terminal presents the received suggestions to the user visually or audibly. The user selects their preferred option from the list of presented suggestions. This allows the user to review and select the most suitable suggestion.

[0822] Step 7:

[0823] Confirmation and execution of the reservation.

[0824] Once the user selects from the suggested list and confirms their order, the selection is sent to the server. The server then works with a partner reservation system (e.g., a food delivery service API) to execute the order. Finally, order confirmation information is sent to the user's device, and the user is notified of the order status.

[0825] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[0826] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0827] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.

[0828] [Third Embodiment]

[0829] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.

[0830] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.

[0831] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

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

[0833] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

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

[0835] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[0836] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[0837] The specific processing program 56 is an example of a "program" relating to the technology of this 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.

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

[0839] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0840] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".

[0841] This invention is a system that generates optimal suggestions based on user requests and confirms reservations based on those suggestions. This system exchanges data between the user's terminal and the server, providing convenience to the user.

[0842] Overall system processing flow

[0843] User request received

[0844] Users can make requests (e.g., "Please suggest restaurants for tonight's dinner") via voice commands or text input through a device such as a smartphone or computer. These requests are then sent to the server after being analyzed via text or speech recognition within the device.

[0845] Data collection and analysis

[0846] The server receives a request and extracts the user's past behavioral data and preference information from the database. The extracted data is analyzed using machine learning algorithms. These algorithms include k-nearest neighbors (KNN), random forests, and neural networks, which are used to identify the user's preferences. This analysis generates suggestions that best suit the user's current needs.

[0847] Proposal generation and presentation to users

[0848] The server generates a list of restaurants best suited to the user based on the analysis results. This list includes detailed restaurant information (reviews, distance, availability) obtained using external APIs, such as the Google Maps API or the Yelp API. The generated suggestions are sent to the device, where they are presented to the user for visual or audio review.

[0849] User selection and booking confirmation

[0850] The user selects their preferred restaurant from a suggested list (e.g., "Please reserve the second restaurant") and sends this selection to the server via their device. The server receives this selection and integrates with a partnered external reservation system (e.g., OpenTable API) to confirm the reservation. Once the reservation is confirmed, confirmation information is sent to the user's device. The device then notifies the user of this confirmation information.

[0851] Specific example

[0852] For example, suppose a user requests, "Please suggest restaurants for tonight's dinner." The device parses this request as text and sends it to the server. The server analyzes past behavioral data and decides to suggest three Italian restaurants. Detailed information about these restaurants is obtained via an external API and sent to the user's device as a suggestion list. When the user selects the second restaurant and requests a reservation, the selection is sent to the server, which confirms the reservation through a partnered reservation system. Finally, reservation confirmation information is sent to the user's device, and the device notifies the user of this confirmation.

[0853] Through the above process, users can easily utilize a consistent process from suggestion to reservation execution. This system achieves both time savings and increased user satisfaction.

[0854] The following describes the processing flow.

[0855] Step 1:

[0856] The user uses the terminal to enter a request (e.g., "Please suggest restaurants for dinner tonight"). Input methods include voice commands and text input.

[0857] Step 2:

[0858] The terminal interprets the user's request through text analysis or speech recognition and generates request data in text format.

[0859] Step 3:

[0860] The terminal sends the generated request data to the server. This transmission is performed using the HTTPS protocol.

[0861] Step 4:

[0862] The server receives the request data sent from the terminal. Based on the received request data, it identifies the user's ID.

[0863] Step 5:

[0864] The server extracts past behavioral data and preference information from the database based on the user's ID. SQL queries are used for this data extraction.

[0865] Step 6:

[0866] The server analyzes the extracted data using machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network). This identifies user preferences and patterns.

[0867] Step 7:

[0868] The server interacts with external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed information (reviews, distance, availability) of candidate restaurants based on the analysis results.

[0869] Step 8:

[0870] The server generates a list of optimal suggestions based on the acquired restaurant information. This list is then organized through ranking and filtering.

[0871] Step 9:

[0872] The server encodes the generated suggestion list in JSON format and sends it to the terminal. The HTTPS protocol is used for transmission.

[0873] Step 10:

[0874] The terminal decodes the received suggestion list and presents it to the user visually or audibly. The presentation method will utilize a GUI widget or similar.

[0875] Step 11:

[0876] The user selects their preferred restaurant from the suggested list (e.g., "Please book the second restaurant").

[0877] Step 12:

[0878] The terminal sends the user's selection to the server. This transmission also uses the HTTPS protocol.

[0879] Step 13:

[0880] The server analyzes the received selection data and, in conjunction with a partnered external reservation system (e.g., OpenTable API), sends a request to confirm the reservation for the specified restaurant.

[0881] Step 14:

[0882] The server receives reservation confirmation information from an external reservation system and generates data indicating that the reservation has been confirmed.

[0883] Step 15:

[0884] The server encodes the reservation confirmation information in JSON format and sends it to the terminal. The HTTPS protocol is used again for transmission.

[0885] Step 16:

[0886] The terminal decodes the received reservation confirmation information and notifies the user. Notification methods include push notifications and GUI displays.

[0887] This series of steps allows users to easily receive optimal suggestions and complete the entire booking process in one go.

[0888] (Example 1)

[0889] Next, we will describe Example 1. 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."

[0890] Traditional systems sometimes struggled to quickly generate appropriate suggestions based on user requests and smoothly confirm reservations. Furthermore, they often failed to fully utilize user preferences and past behavioral data, resulting in an inability to provide optimal suggestions. Additionally, insufficient integration with external information sources led to reduced accuracy and convenience in user suggestions.

[0891] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0892] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, means for applying machine learning algorithms to analyze the collected preference information and behavioral data, means for obtaining detailed suggestion information from external sources, means for transmitting the generated suggestion to the user's terminal, and means for coordinating with a reservation system based on the user's selection to confirm the reservation. This makes it possible to quickly generate optimal suggestions based on the user's past data and efficiently confirm reservations.

[0893] "Means for receiving user requests" refers to the hardware and software used to receive voice commands or text requests entered by users and transmit them to the server.

[0894] "Means for collecting user preference information and past behavioral data" refers to a function that collects the user's past choices and behavioral history from a database or similar source and uses it for analysis.

[0895] "Methods for applying machine learning algorithms" refers to the process of analyzing collected data and extracting patterns and trends using algorithms such as k-nearest neighbors, random forests, and neural networks.

[0896] "Means of obtaining detailed information about a proposal from external sources" refers to communication functions for obtaining detailed information such as restaurant reviews, distance, and availability from internet services and data providers (e.g., map APIs and review sites).

[0897] "Means for sending generated suggestions to the user's terminal" refers to the communication technology and protocol used by the server to send suggestions generated based on the analysis results to the user's terminal.

[0898] "A means of linking with a reservation system based on user selection and confirming a reservation" refers to a function that, based on the suggestions selected by the user, links with an external reservation system to make a reservation and obtains confirmation information for that reservation.

[0899] "Means of processing using text analysis or speech recognition" refers to technologies for analyzing and recognizing speech or text input by a user and converting it into a format that can be processed by a computer.

[0900] This invention is a system that generates optimal suggestions based on user requests and confirms reservations based on those suggestions. This system primarily exchanges data between the user's terminal and the server, providing convenience to the user.

[0901] Users submit their requests (e.g., "Please suggest restaurants for dinner tonight") via voice commands or text input through devices such as smartphones or personal computers. These requests are then sent to the server after undergoing text analysis and speech recognition within the device. A general-purpose speech recognition API can be used for speech recognition software, and a natural language processing engine can be used for text analysis.

[0902] The server analyzes the received request and extracts the user's past behavioral data and preference information from the database. This extracted data is then analyzed using machine learning algorithms. These algorithms include k-nearest neighbors (KNN), random forests, and neural networks. Machine learning libraries such as scikit-learn and TensorFlow are used. This analysis generates suggestions that best suit the user's current requests.

[0903] Next, the server retrieves detailed information about the suggestion from external sources. Typically, this is done using external APIs (e.g., map APIs or review site APIs). For example, it might use HTTP requests to retrieve detailed information such as the distance, reviews, and availability of the restaurant selected from the device, obtaining the data in JSON format. Based on this information, the server then generates a list of more suitable restaurants.

[0904] The generated suggestions are sent from the server to the user's device. The device then presents these suggestions to the user visually or audibly. Text-to-speech APIs can be used as the speech synthesis technology, allowing the user to select from a displayed list or audio guidance.

[0905] When a user selects a desired suggestion and requests, for example, "Please book the second restaurant," that information is sent from the terminal to the server. The server receives this information, interacts with an external reservation system (e.g., a reservation management API), and confirms the reservation. The server retrieves the reservation confirmation information and sends it back to the user's terminal. The user's terminal then notifies the user of this information using a notification mechanism. Typically, push notifications are used.

[0906] To give a concrete example, if a user requests "Please suggest restaurants for tonight's dinner," the device analyzes this request and sends it to the server. The server uses the KNN algorithm to analyze past behavioral data and decides to suggest three Italian restaurants. It retrieves detailed information from an external API and sends the suggestion list to the device. When the user selects the second restaurant and requests a reservation, the server uses a reservation management API to confirm the reservation, sends that information to the device, and notifies the user via push notification.

[0907] An example of a prompt message would be, "Please suggest restaurants for tonight's dinner. Then, select from the list of suggestions and confirm the reservation." This allows the generative AI model to make appropriate suggestions and facilitates the selection and reservation process.

[0908] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0909] Step 1:

[0910] The user enters voice commands or text into their device, such as a smartphone or computer.

[0911] Input: "Please suggest a restaurant for tonight's dinner."

[0912] The device converts this input audio into text using speech recognition software (e.g., a speech recognition API).

[0913] Output: Recognized text data

[0914] Step 2:

[0915] The terminal uses a text analysis engine (e.g., a natural language processing engine) to analyze the recognized text data and extract the request content.

[0916] Input: Recognized text data

[0917] Data processing: Analyze text data using natural language processing and extract the content as a "restaurant proposal request."

[0918] Output: Extracted request details ("Restaurant Proposal Request")

[0919] Step 3:

[0920] The terminal sends the analyzed request to the server.

[0921] Input: Extracted request content

[0922] Data processing: Format the request content as an HTTP request and send it to the server.

[0923] Output: HTTP request containing the request details

[0924] Step 4:

[0925] The server receives the request and extracts user preference information and past behavioral data from the database.

[0926] Input: Request details ("Restaurant Proposal Request")

[0927] Data processing: Use SQL queries to extract users' past selection history and preference information from the database.

[0928] Output: Extracted preference information and behavioral data

[0929] Step 5:

[0930] The server analyzes the extracted preference and behavioral data using machine learning algorithms (e.g., KNN, Random Forest, Neural Network).

[0931] Input: Preference information and behavioral data

[0932] Data processing: Execute machine learning algorithms to generate suggestions best suited to the user's current requirements.

[0933] Output: Generated proposal data

[0934] Step 6:

[0935] The server retrieves detailed information about the proposal (e.g., reviews, distance, availability) from external sources.

[0936] Input: Generated proposal data

[0937] Data Calculation: Use HTTP requests to retrieve detailed information about suggestions from map APIs and review site APIs.

[0938] Output: A list of proposals containing detailed information.

[0939] Step 7:

[0940] The server sends the generated list of suggestions to the user's terminal.

[0941] Input: Proposal list containing detailed information

[0942] Data processing: Format the suggestion list as an HTTP response and send it to the terminal.

[0943] Output: HTTP response containing the suggestion list

[0944] Step 8:

[0945] The device displays the submitted list of suggestions to the user.

[0946] Input: HTTP response containing a list of suggestions

[0947] Specific actions: Display text on the screen or provide voice guidance using speech synthesis technology (e.g., Text-to-Speech API).

[0948] Output: List of suggestions presented to the user

[0949] Step 9:

[0950] The user selects their preferred suggestion from the presented list and enters their selection into the device.

[0951] Input: "I'd like you to make a reservation for the second restaurant."

[0952] The terminal sends this input to the server.

[0953] Output: HTTP request containing the selected items

[0954] Step 10:

[0955] The server receives the selected information and confirms the reservation in conjunction with an external reservation system.

[0956] Input: Selection

[0957] Data processing: Use HTTP requests to interact with the reservation management API and confirm reservations.

[0958] Output: Reservation confirmation information

[0959] Step 11:

[0960] The server sends reservation confirmation information to the user's device.

[0961] Input: Reservation confirmation information

[0962] Data processing: Format reservation confirmation information into an HTTP response and send it to the terminal.

[0963] Output: HTTP response containing reservation confirmation information

[0964] Step 12:

[0965] The device notifies the user of the received reservation confirmation information.

[0966] Input: HTTP response containing reservation confirmation information

[0967] Specific action: Notify the user using a notification mechanism (e.g., push notifications).

[0968] Output: Reservation confirmation information notified to the user

[0969] (Application Example 1)

[0970] Next, we will explain Application Example 1. In the following explanation, 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."

[0971] Traditional food delivery services have struggled to provide timely and accurate recommendations tailored to user needs and preferences. Furthermore, users faced the challenge of choosing a suitable restaurant from numerous options, resulting in a complex reservation process.

[0972] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0973] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, means for applying machine learning algorithms to analyze the collected preference information and behavioral data, means for sending generated suggestions to the user's terminal, means for converting user requests from voice commands into text data using a speech recognition library, means for analyzing user preferences using k-nearest neighbors, random forest, and neural networks as data analysis algorithms, means for collecting information to provide multiple suggestions using an external API, means for presenting suggestions to the user using a smartphone and receiving the user's selection, and means for confirming the reservation in cooperation with a reservation system based on the user's selection and notifying the user of confirmation information. This makes it possible to quickly and accurately provide optimal suggestions based on user requests in a food delivery service, and the process up to reservation confirmation becomes simple and convenient.

[0974] A "user" is someone who uses a system to input requests and receive suggestions.

[0975] A "request" refers to a user's request or preference, such as "Please suggest a delivery option for tonight's dinner."

[0976] "Preference information" refers to data that shows a user's past choices, behaviors, and preferences.

[0977] "Past behavioral data" refers to the history of actions and choices a user has made in the past.

[0978] A "speech recognition library" is a software component used to convert voice commands into text data.

[0979] A "machine learning algorithm" is an algorithm that analyzes preference information and past behavioral data to identify user preferences.

[0980] The "k-nearest neighbors" algorithm is an algorithm that performs analysis based on the k data points closest to the user's data point.

[0981] A "random forest" is a machine learning algorithm that uses multiple decision trees to make predictions.

[0982] A "neural network" is an algorithm that analyzes data through multiple layers of artificial neurons to perform classification and prediction.

[0983] An "external API" is an interface for connecting with external systems and services.

[0984] A "suggestion" is a set of options or recommendations that a system generates and presents based on user requests.

[0985] A "terminal" refers to a device used by a user to operate a system, specifically a mobile device such as a smartphone.

[0986] A "reservation system" is an external system used to reserve or confirm the suggested options.

[0987] "Confirmation information" refers to detailed information that is notified to the user when a reservation is confirmed.

[0988] This invention is a system for generating optimal suggestions and confirming reservations based on user requests. This system facilitates data exchange between the user's terminal and the server, providing convenience to the user.

[0989] The hardware used to implement this system includes smartphones and servers. Smartphones are devices that allow users to input requests via voice or text and receive suggestions. Servers are computers that collect and analyze data, generate suggestions, and confirm reservations.

[0990] The software used includes speech recognition libraries (e.g., SpeechRecognition), server-side frameworks (e.g., Flask), data analysis algorithms (e.g., scikit-learn, TensorFlow), libraries for API calls (e.g., requests), and frameworks for building user interfaces (e.g., React Native).

[0991] Specifically, the server implements this system as follows:

[0992] When a user enters a request by voice using their smartphone, a speech recognition library converts the voice into text data. This text data is then sent to the server.

[0993] The server collects user preference information and past behavioral data based on the received text data. This data is then analyzed using data analysis algorithms (k-nearest neighbors, random forest, neural network).

[0994] Based on the analysis results, the server generates multiple restaurant suggestions using external APIs (e.g., Yelp API, Google Maps API). These suggestions are sent to the user's smartphone and displayed visually.

[0995] The user selects their desired restaurant from a suggested list and sends the selection to the server via their smartphone. The server then integrates with a reservation system (e.g., OpenTable API) based on the selection and confirms the reservation. The final reservation confirmation information is sent from the server to the user's smartphone and notified to them.

[0996] This allows users to easily navigate the process from consistent suggestions to booking confirmation. Consider the following specific example.

[0997] As a concrete example, suppose a user requests, "Please recommend a restaurant for tonight's dinner delivery." This prompt is converted into text by a speech recognition library and sent to the server. The server analyzes past behavioral data and suggests several suitable restaurants. When the user selects one and requests a reservation, the reservation is confirmed, and final confirmation information is sent to their smartphone.

[0998] In this way, the system of the present invention can provide food delivery services smoothly and efficiently.

[0999] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[1000] Step 1:

[1001] The user enters their request by voice using their smartphone. This input might be something like, "Can you recommend a restaurant for tonight's dinner delivery?" This voice data becomes the input data.

[1002] Step 2:

[1003] When a smartphone receives voice input, it uses a speech recognition library (e.g., SpeechRecognition) to convert the voice data into text data. This converted text data is then output and sent to the server.

[1004] Step 3:

[1005] The server receives text data sent from the smartphone. This text data becomes the input data. The server analyzes this text data to understand the user's request.

[1006] Step 4:

[1007] The server collects user preference information and past behavioral data from the database based on user requests. This collected preference information and past behavioral data becomes the input data.

[1008] Step 5:

[1009] The server uses collected preference information and historical behavioral data to apply machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network) to analyze user preferences. The analyzed data is then output.

[1010] Step 6:

[1011] Based on the analysis results, the server uses external APIs (e.g., Yelp API, Google Maps API) to retrieve information about multiple restaurants. This retrieved restaurant information becomes input data and is organized into a suggestion list.

[1012] Step 7:

[1013] The server sends the generated list of suggestions to the smartphone. This list of suggestions becomes the output data and is displayed on the smartphone.

[1014] Step 8:

[1015] The user selects their desired restaurant from a list of suggestions displayed on their smartphone. The user's selection becomes the input data.

[1016] Step 9:

[1017] The smartphone sends the user's selections to the server. These selections become the input data.

[1018] Step 10:

[1019] The server, based on the user's selections, interacts with a reservation system (e.g., OpenTable API) to confirm the reservation. This confirmed reservation information becomes the output data.

[1020] Step 11:

[1021] The server sends the confirmed reservation information to the smartphone. This reservation confirmation information becomes output data and is displayed to the user as a notification on their smartphone.

[1022] Through the steps described above, the entire process from user request to proposal generation, selection, and booking confirmation is seamlessly realized.

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

[1024] This invention is a system that generates optimal suggestions based on user requests and even executes reservations based on those suggestions. This system also incorporates an emotion engine that recognizes the user's emotions and creates suggestions that take those emotions into account.

[1025] Overall system processing flow

[1026] User request received

[1027] The user uses a terminal to enter a request (e.g., "Please suggest a restaurant for dinner tonight"). Input methods include voice commands and text input.

[1028] Data collection and analysis

[1029] The server receives the request and extracts the user's past behavioral data and preference information from the database. The extracted data is analyzed using machine learning algorithms (e.g., k-nearest neighbors (KNN), random forest, neural network). This analysis identifies the user's preferences and behavioral patterns.

[1030] Emotion recognition by an emotion engine

[1031] The device analyzes the user's voice patterns and facial expressions using an emotion engine. This analysis determines the user's emotional state (e.g., stressed, relaxed). The emotion engine identifies emotions using speech recognition and image analysis technologies.

[1032] Proposal generation and presentation to users

[1033] The server integrates the results of analysis of preference information and behavioral data, as well as the results of the emotion engine analysis, to generate a list of restaurants best suited to the user. It uses external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed restaurant information (reviews, distance, availability). Based on this information, it makes suggestions appropriate to the user's emotional state (e.g., recommending quiet restaurants if the user is seeking relaxation). The generated suggestions are sent to the device and presented visually or audibly.

[1034] User selection and booking confirmation

[1035] The user selects their desired restaurant from the presented list (e.g., "Please reserve the second restaurant"). The selection is sent to the server via the device. The server receives the selection data and confirms the reservation in conjunction with a partnered external reservation system (e.g., OpenTable API). Once the reservation is confirmed, confirmation information is sent to the user's device. The device then notifies the user of the confirmation information.

[1036] Specific example

[1037] For example, suppose a user requests, "Please suggest a restaurant for tonight's dinner." The terminal analyzes this request as text, and also uses an emotion engine to analyze the user's voice patterns and facial expressions. The server performs analysis based on past behavioral data and preference information. If the emotion engine's analysis indicates that "the user is feeling stressed," the server integrates the results and suggests three quiet, relaxing Italian restaurants. Detailed information about these restaurants is obtained via an external API and sent to the user's terminal as a suggestion list. If the user chooses the second restaurant and requests a reservation, the selection is sent to the server, which confirms the reservation through a partnered reservation system. Finally, reservation confirmation information is sent to the user's terminal, and the terminal notifies the user of this confirmation.

[1038] This entire process allows users to receive optimal suggestions tailored to their emotional state and consistently execute the booking process. This system further enhances user convenience and satisfaction.

[1039] The following describes the processing flow.

[1040] Step 1:

[1041] The user uses a terminal to enter a request (e.g., "Please suggest a restaurant for dinner tonight"). Input methods include voice commands and text input.

[1042] Step 2:

[1043] The device interprets user requests through text analysis or speech recognition and generates request data in text format. It also acquires data for analyzing the user's voice patterns and facial expressions using an emotion engine.

[1044] Step 3:

[1045] The device sends the generated request data and sentiment data to the server. This transmission is performed using the HTTPS protocol.

[1046] Step 4:

[1047] The server receives request data and sentiment data sent from the terminal. Based on the received request data, it identifies the user's ID.

[1048] Step 5:

[1049] The server extracts past behavioral data and preference information from the database based on the user's ID. SQL queries are used for this data extraction.

[1050] Step 6:

[1051] The server analyzes the extracted data using machine learning algorithms (e.g., k-nearest neighbors (KNN), random forest, neural network). This identifies user preferences and behavioral patterns.

[1052] Step 7:

[1053] The server inputs emotional data into the emotion engine and analyzes the user's current emotional state (e.g., stressed, relaxed). The emotion engine analyzes audio and image data to determine the emotion.

[1054] Step 8:

[1055] The server integrates the results of analysis of preference information, behavioral data, and emotion engine analysis to generate a list of restaurants best suited to the user. It uses external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed restaurant information (reviews, distance, availability). Based on the analysis results, for example, if the user is looking to relax, it will prioritize selecting quiet restaurants.

[1056] Step 9:

[1057] The server encodes the generated suggestion list in JSON format and sends it to the terminal. The HTTPS protocol is used for transmission.

[1058] Step 10:

[1059] The terminal decodes the received suggestion list and presents it to the user visually or audibly. Presentation methods include GUI widgets and audio output.

[1060] Step 11:

[1061] The user selects their preferred restaurant from the presented list (e.g., "Please make a reservation for the second restaurant").

[1062] Step 12:

[1063] The terminal sends the user's selection to the server. This transmission uses the HTTPS protocol.

[1064] Step 13:

[1065] The server analyzes the received selection data and, in conjunction with a partnered external reservation system (e.g., OpenTable API), sends a request to confirm the reservation for the specified restaurant.

[1066] Step 14:

[1067] The server receives reservation confirmation information from an external reservation system and generates data indicating that the reservation has been confirmed.

[1068] Step 15:

[1069] The server encodes the reservation confirmation information in JSON format and sends it to the terminal. The HTTPS protocol is used again for transmission.

[1070] Step 16:

[1071] The terminal decodes the received reservation confirmation information and notifies the user. Notification methods include push notifications and GUI displays.

[1072] This series of steps allows users to receive optimal suggestions tailored to their emotional state and consistently proceed with making a reservation.

[1073] (Example 2)

[1074] Next, we will describe Example 2. 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."

[1075] Modern consumers often feel a great burden when making the best choice from a wide range of options. In particular, when deciding on a place to eat or other outings, they need to consider their preferences and emotional state. However, conventional systems struggle to provide suggestions that appropriately reflect the user's preferences and emotions, leading to decreased user convenience and satisfaction.

[1076] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[1077] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, and means for applying machine learning algorithms to analyze the collected preference information and behavioral data. This makes it possible to provide optimal suggestions that reflect the user's preferences and emotional state.

[1078] Furthermore, the server includes means for generating optimal suggestions for the user based on analysis, means for sending the generated suggestions to the user's terminal, means for presenting the generated suggestions to the user on the terminal, means for coordinating with the reservation system based on the user's selection to confirm the reservation, and emotion recognition means for analyzing the user's voice patterns and facial expressions to determine their emotional state. This enables the consistent provision of suggestions and reservations based on the user's requests, thereby improving user convenience and satisfaction.

[1079] A "user" is a person who uses this system, and is responsible for inputting requests, receiving suggestions, and making selections.

[1080] A "terminal" is a device used by a user to input requests or receive suggestions, and includes electronic devices such as smartphones and tablets.

[1081] A "server" is a central processing unit that handles user requests, collects and analyzes data, generates suggestions, and confirms reservations.

[1082] A "request receiving means" is a device or software for receiving and analyzing requests from a user.

[1083] "Preference information" refers to data that indicates a user's preferences, such as their favorite foods or past choices.

[1084] "Behavioral data" refers to data that shows a user's past actions and choices.

[1085] "Collection means" refers to devices or software used to gather necessary information from databases or external information sources.

[1086] A "machine learning algorithm" is an algorithm that uses collected data to find patterns and analyze user preferences and behavior.

[1087] A "proposal generation means" is a device or software that suggests the most suitable restaurant or service based on the user's preference information and emotional state.

[1088] "Transmission means" refers to a device or software for sending the generated proposal to the user's terminal.

[1089] "Presentation means" refers to a device or software for displaying a proposal visually or audibly on a user's terminal.

[1090] A "reservation confirmation method" refers to a device or software that confirms a reservation by linking with an external reservation system based on the user's selections.

[1091] "Emotion recognition means" refers to a device or software that analyzes a user's voice patterns and facial expressions to determine their emotional state.

[1092] This invention relates to a system that generates optimal suggestions based on user requests and even executes reservations based on those suggestions. This system also incorporates an emotion engine that recognizes the user's emotions and creates suggestions that take those emotions into account.

[1093] Overall description of the program's processing

[1094] The system primarily operates through three parties: a server, a terminal, and a user. The server is a high-performance data processing server (e.g., a cloud-based computing service), and the terminal is a device (e.g., a smartphone or tablet) where the user inputs requests and receives suggestions. The emotion engine uses APIs with speech recognition and image analysis technologies (e.g., an emotion recognition API from a cloud service). Data analysis includes machine learning algorithms (e.g., scikit-learn, TensorFlow).

[1095] Details of data processing and data calculations

[1096] User request received

[1097] The user enters their request using a terminal. For example, they might enter a voice command such as, "Please suggest restaurants for dinner tonight." This request is converted into text data using speech recognition technology (e.g., a speech-to-text service) on the terminal and sent to the server.

[1098] Data collection and analysis

[1099] When the server receives a user request, it extracts the user's past behavioral data and preference information from a database (e.g., a relational database). Based on the extracted data, it performs analysis using machine learning algorithms (e.g., KNN, Random Forest). This identifies the user's preferences and behavioral patterns.

[1100] Emotion recognition by an emotion engine

[1101] The device analyzes the user's voice patterns and facial expressions using an emotion engine (e.g., emotion recognition API, image analysis API). By analyzing the voice and image data, it identifies the user's emotional state. This information is also sent to the server.

[1102] Proposal generation and presentation to users

[1103] The server integrates the results of preference and behavioral data analysis, as well as the results of the emotion engine analysis, to generate optimal suggestions. It uses external APIs (e.g., map services and review services) to obtain detailed information about the restaurants and services to suggest. Based on this information, it generates user-appropriate suggestions and sends them to the device. The device presents the suggestions to the user visually or audibly.

[1104] User selection and booking confirmation

[1105] The user selects their preferred option from the presented suggestions and requests a reservation. The selection is sent to the server via the terminal. The server integrates with the reservation system (e.g., reservation service API) and confirms the reservation. Confirmation information is sent to the terminal, which then notifies the user.

[1106] Specific example

[1107] For example, if a user makes a voice request saying, "Please suggest a restaurant for tonight's dinner," the system will operate as follows:

[1108] 1. Terminal: Converts voice commands to text and sends them to the server.

[1109] 2. Server: Acquires past user behavior data and preference information, and analyzes it using machine learning algorithms.

[1110] 3. Terminal: Uses an emotion engine to analyze the user's voice patterns and facial expressions.

[1111] 4. Server: Integrates preference information, behavioral data, and emotional state, and uses external APIs to suggest the most suitable restaurant.

[1112] 5. Terminal: Presents the following suggestion: "There are three Italian restaurants where you can relax: 1. Pizzeria A, 2. Ristorante B, 3. Trattoria C."

[1113] 6. User: "I'd like you to make a reservation for the second restaurant."

[1114] 7. Server: Confirm the reservation using the reservation service API.

[1115] 8. Terminal: Notifies the user of reservation confirmation information.

[1116] Example of a prompt

[1117] User: "I'd like some restaurant recommendations for tonight's dinner."

[1118] Device: (Analyzes speech and text)

[1119] Server: (Integrates past behavioral data, preference information, and user sentiment data to select the optimal restaurant.)

[1120] Terminal: "There are three Italian restaurants where you can relax: 1. Pizzeria A, 2. Ristorante B, 3. Trattoria C"

[1121] User: "I'd like you to make a reservation for the second restaurant."

[1122] Server: (Confirms reservation through the reservation system)

[1123] Terminal: "Your reservation for Ristorante B has been confirmed. Reservation confirmation details are as follows."

[1124] This system allows users to receive optimal suggestions tailored to their emotional state and consistently execute the booking process. The configuration enhances user convenience and satisfaction.

[1125] The flow of the specific processing in Example 2 will be explained using Figure 13.

[1126] Program processing flow

[1127] Step 1: Receiving the user's request

[1128] The user enters their request using the terminal. For example, they might enter a voice command such as, "Please suggest a restaurant for dinner tonight." The terminal uses speech recognition technology (voice conversion service) to convert this voice command into text data.

[1129] Input: User voice command

[1130] Processing: Converts speech to text using speech recognition technology.

[1131] Output: Text data (request details)

[1132] Step 2: Submit the request

[1133] The terminal sends the user's request, converted into text data, to the server. A secure communication protocol is used for transmission.

[1134] Input: Text data (request details)

[1135] Processing: Enclose text data in packets and send them to the server over the network.

[1136] Output: Request data reaches the server.

[1137] Step 3: Collection of preference information and behavioral data

[1138] When the server receives the request data, it executes queries from the database to collect data on the user's past behavior and preferences.

[1139] Input: Request data

[1140] Process: Query the database to retrieve the necessary data.

[1141] Output: User preference information and behavioral data

[1142] Step 4: Data Analysis

[1143] The server uses collected preference and behavioral data to apply machine learning algorithms (e.g., KNN, Random Forest) to analyze user preferences and behavioral patterns.

[1144] Input: Preference information and behavioral data

[1145] Processing: Apply machine learning algorithms to analyze the data.

[1146] Output: Identification results of user preference patterns

[1147] Step 5: Analysis of emotional state

[1148] The device analyzes the user's voice patterns and facial expressions using an emotion recognition API to determine their emotional state. This allows it to determine whether the user is stressed or relaxed.

[1149] Input: User voice data and facial expression data

[1150] Processing: Analyze emotional state using emotion recognition API.

[1151] Output: Identification of emotional state (e.g., stressed state)

[1152] Step 6: Proposal Generation

[1153] The server integrates the analysis results and generates restaurant recommendations best suited to the user. It uses external APIs (e.g., map services and review services) to retrieve detailed restaurant information.

[1154] Input: Analysis results of user preference patterns and emotional states

[1155] Processing: Use an external API to retrieve detailed information and generate optimal suggestions.

[1156] Output: Suggested restaurant list

[1157] Step 7: Presenting the Proposal

[1158] The terminal presents the restaurant list sent from the server to the user visually or audibly.

[1159] Input: Suggested restaurant list

[1160] Processing: Display or announce the restaurant list.

[1161] Output: Presentation to the user

[1162] Step 8: User Selection

[1163] The user selects their desired restaurant from the presented list. The selection is sent to the server via the device.

[1164] Input: Suggested restaurant list

[1165] Process: The user selects their desired restaurant and sends the selection information to the server.

[1166] Output: Selection data reaches the server.

[1167] Step 9: Confirm your reservation

[1168] The server receives the selection data and confirms the reservation through a partner reservation system (e.g., a reservation service API). The reservation confirmation information is then sent to the terminal.

[1169] Input: User's selected data

[1170] Processing: Confirm the reservation using the reservation service API and send confirmation information to the device.

[1171] Output: Reservation confirmation information

[1172] Step 10: Booking confirmation notification

[1173] The device notifies the user of reservation confirmation information. The confirmation information is presented visually or audibly.

[1174] Input: Reservation confirmation information

[1175] Processing: Display or voice confirmation information.

[1176] Output: Notification to the user

[1177] (Application Example 2)

[1178] Next, we will explain application example 2. In the following explanation, 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."

[1179] Traditional food delivery services often offered only simple recommendations without considering the user's preferences or emotional state. As a result, users often struggled to receive optimal suggestions tailored to their emotional needs. There is a growing demand for services that consider emotional needs, such as suggesting meals that promote relaxation or meals that help relieve stress.

[1180] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a user request, means for collecting user preference information and past behavioral data based on the request, means for applying a machine learning algorithm to analyze the collected preference information and behavioral data, means for processing the user's voice signal and image data to analyze their emotional state, means for generating the most suitable suggestions for the user based on the analysis and emotional state analysis, means for transmitting the generated suggestions to the user's terminal, means for presenting the generated suggestions to the user at the terminal, and means for coordinating with a reservation system and confirming the reservation based on the user's selection. This makes it possible to provide a food delivery service that takes the user's emotional state into consideration.

[1181] "Means for receiving user requests"

[1182] This refers to a device or software that receives requests from a user, either as text or voice input.

[1183] "Means for collecting user preference information and past behavioral data"

[1184] This refers to a device or software that stores and retrieves data such as a user's past order history, ratings, and preferences.

[1185] "Means for applying machine learning algorithms to analyze collected preference information and behavioral data."

[1186] This refers to devices and programs that utilize machine learning techniques to analyze user preferences and behavioral patterns using collected data.

[1187] "Means for processing user audio signals and image data to analyze emotional state."

[1188] This technology analyzes a user's voice patterns and facial expression data to identify their emotional state at that time (e.g., stress, tension, relaxation, etc.).

[1189] "A means of generating optimal suggestions for users."

[1190] This refers to devices and software that create the most appropriate options and suggestions for the user based on the results of data analysis and sentiment analysis.

[1191] "A means of sending the generated suggestions to the user's device."

[1192] This refers to a technology for sending generated suggestions as data to the user's device (e.g., smartphone, tablet).

[1193] "A means of presenting generated suggestions to the user."

[1194] This refers to a device or software that displays or notifies the user of suggested content visually or audibly on their device.

[1195] "A means of confirming reservations by linking with the reservation system."

[1196] This refers to the devices and software used to confirm reservations through a partner reservation system based on the options selected by the user based on the proposed content.

[1197] This invention provides a system that makes optimal food delivery service recommendations based on the user's emotional state and preferences, and then handles the entire process, from initial recommendation to order confirmation. This system is realized through collaboration with the user's terminal, a server, and an external API.

[1198] The user's device can be a smartphone or tablet. The user uses this device to input requests via voice or text, such as "I'm hungry" or "Please suggest a meal to relieve stress." The device receives these requests and sends them to the server.

[1199] When the server receives a user request, it first collects user preference information and past behavioral data from a database. This database stores, for example, past order history, ratings, and preferences. Next, the collected data is analyzed using machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network).

[1200] Simultaneously, the device transmits the user's voice signals and image data to an emotion engine, which analyzes the user's emotional state. This emotion engine identifies the user's emotional state (e.g., stress, relaxation) from voice patterns and facial expressions.

[1201] By integrating this preference data and sentiment analysis results, the server generates the most suitable recommendations for the user. When generating recommendations, it uses external APIs (e.g., Google Places API, Tabelog API) to obtain detailed information about restaurants and dishes, and constructs the recommendations based on that information.

[1202] Once a suggestion is generated, its contents are sent to the user's device. The user's device presents the suggestion to the user visually or audibly. When the user selects a desired suggestion from the list and confirms the order, the selection is sent to the server. The server uses a partnered reservation system (e.g., a food delivery service API) to execute the order. Finally, order confirmation information is sent to the user's device, and the user is notified of the confirmation.

[1203] For example, if a user enters the voice command, "I'm hungry. Do you have any recommendations?", the device converts this voice into text and sends it to the server. Based on past data and the results of the emotion engine's analysis, the server generates suggestions that will help the user relax (for example, a quiet sushi restaurant), retrieves detailed information (e.g., reviews, distance, rating) via an external API, and sends it to the user's device. Once the user selects the sushi restaurant and confirms their order, the order is placed through the reservation system, and a final confirmation is sent to the user's device.

[1204] Through the above process, the present invention realizes the provision of a food delivery service that takes into account the emotional state of the user.

[1205] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[1206] Step 1:

[1207] Receive user requests.

[1208] The user uses a device such as a smartphone or tablet to input a request via voice or text (e.g., "I'm hungry," "Please suggest a meal to relieve stress"). The device receives this request and sends it to the server as text.

[1209] Step 2:

[1210] We collect preference information and past behavioral data.

[1211] Based on the received request, the server collects user preference information and past behavioral data from the database. This includes past order history, ratings, and preferences. The collected data is retrieved from a database stored on the server.

[1212] Step 3:

[1213] Application of machine learning algorithms.

[1214] The server applies machine learning algorithms based on collected preference and behavioral data. Specifically, it uses the dataset to train models (e.g., k-nearest neighbors, random forest, neural network) and analyzes user preferences and behavioral patterns. This analysis identifies the user's current preferences.

[1215] Step 4:

[1216] Analysis of emotional states.

[1217] The device collects the user's voice signals and image data and sends them to the emotion engine. The emotion engine identifies the user's emotional state (e.g., stressed, relaxed) from voice patterns and facial expressions. It obtains an output of the emotional state from the voice and image data inputs.

[1218] Step 5:

[1219] Generating optimal proposals.

[1220] The server integrates analyzed preference data and emotional states to generate optimal suggestions for the user. During suggestion generation, it uses external APIs (e.g., Google Places API, Tabelog API) to retrieve detailed information about restaurants and dishes (reviews, distance, ratings, etc.) and uses this information to construct the suggestions. Beneath the database lies an algorithm that integrates emotional states and preference information to generate optimal suggestions.

[1221] Step 6:

[1222] Sending and presenting proposals.

[1223] The generated suggestions are sent from the server to the user's terminal. The terminal presents the received suggestions to the user visually or audibly. The user selects their preferred option from the list of presented suggestions. This allows the user to review and select the most suitable suggestion.

[1224] Step 7:

[1225] Confirmation and execution of the reservation.

[1226] Once the user selects from the suggested list and confirms their order, the selection is sent to the server. The server then works with a partner reservation system (e.g., a food delivery service API) to execute the order. Finally, order confirmation information is sent to the user's device, and the user is notified of the order status.

[1227] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[1228] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1229] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.

[1230] [Fourth Embodiment]

[1231] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.

[1232] As shown in Figure 7, the 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.

[1233] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[1234] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.

[1235] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

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

[1237] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[1238] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive 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 robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.

[1239] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[1240] The specific processing program 56 is an example of a "program" relating to the technology of this 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.

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

[1242] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[1243] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1244] This invention is a system that generates optimal suggestions based on user requests and confirms reservations based on those suggestions. This system exchanges data between the user's terminal and the server, providing convenience to the user.

[1245] Overall system processing flow

[1246] User request received

[1247] Users can make requests (e.g., "Please suggest restaurants for tonight's dinner") via voice commands or text input through a device such as a smartphone or computer. These requests are then sent to the server after being analyzed via text or speech recognition within the device.

[1248] Data collection and analysis

[1249] The server receives a request and extracts the user's past behavioral data and preference information from the database. The extracted data is analyzed using machine learning algorithms. These algorithms include k-nearest neighbors (KNN), random forests, and neural networks, which are used to identify the user's preferences. This analysis generates suggestions that best suit the user's current needs.

[1250] Proposal generation and presentation to users

[1251] The server generates a list of restaurants best suited to the user based on the analysis results. This list includes detailed restaurant information (reviews, distance, availability) obtained using external APIs, such as the Google Maps API or the Yelp API. The generated suggestions are sent to the device, where they are presented to the user for visual or audio review.

[1252] User selection and booking confirmation

[1253] The user selects their preferred restaurant from a suggested list (e.g., "Please reserve the second restaurant") and sends this selection to the server via their device. The server receives this selection and integrates with a partnered external reservation system (e.g., OpenTable API) to confirm the reservation. Once the reservation is confirmed, confirmation information is sent to the user's device. The device then notifies the user of this confirmation information.

[1254] Specific example

[1255] For example, suppose a user requests, "Please suggest restaurants for tonight's dinner." The device parses this request as text and sends it to the server. The server analyzes past behavioral data and decides to suggest three Italian restaurants. Detailed information about these restaurants is obtained via an external API and sent to the user's device as a suggestion list. When the user selects the second restaurant and requests a reservation, the selection is sent to the server, which confirms the reservation through a partnered reservation system. Finally, reservation confirmation information is sent to the user's device, and the device notifies the user of this confirmation.

[1256] Through the above process, users can easily utilize a consistent process from suggestion to reservation execution. This system achieves both time savings and increased user satisfaction.

[1257] The following describes the processing flow.

[1258] Step 1:

[1259] The user uses the terminal to enter a request (e.g., "Please suggest restaurants for dinner tonight"). Input methods include voice commands and text input.

[1260] Step 2:

[1261] The terminal interprets the user's request through text analysis or speech recognition and generates request data in text format.

[1262] Step 3:

[1263] The terminal sends the generated request data to the server. This transmission is performed using the HTTPS protocol.

[1264] Step 4:

[1265] The server receives the request data sent from the terminal. Based on the received request data, it identifies the user's ID.

[1266] Step 5:

[1267] The server extracts past behavioral data and preference information from the database based on the user's ID. SQL queries are used for this data extraction.

[1268] Step 6:

[1269] The server analyzes the extracted data using machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network). This identifies user preferences and patterns.

[1270] Step 7:

[1271] The server interacts with external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed information (reviews, distance, availability) of candidate restaurants based on the analysis results.

[1272] Step 8:

[1273] The server generates a list of optimal suggestions based on the acquired restaurant information. This list is then organized through ranking and filtering.

[1274] Step 9:

[1275] The server encodes the generated suggestion list in JSON format and sends it to the terminal. The HTTPS protocol is used for transmission.

[1276] Step 10:

[1277] The terminal decodes the received suggestion list and presents it to the user visually or audibly. The presentation method will utilize a GUI widget or similar.

[1278] Step 11:

[1279] The user selects their preferred restaurant from the suggested list (e.g., "Please book the second restaurant").

[1280] Step 12:

[1281] The terminal sends the user's selection to the server. This transmission also uses the HTTPS protocol.

[1282] Step 13:

[1283] The server analyzes the received selection data and, in conjunction with a partnered external reservation system (e.g., OpenTable API), sends a request to confirm the reservation for the specified restaurant.

[1284] Step 14:

[1285] The server receives reservation confirmation information from an external reservation system and generates data indicating that the reservation has been confirmed.

[1286] Step 15:

[1287] The server encodes the reservation confirmation information in JSON format and sends it to the terminal. The HTTPS protocol is used again for transmission.

[1288] Step 16:

[1289] The terminal decodes the received reservation confirmation information and notifies the user. Notification methods include push notifications and GUI displays.

[1290] This series of steps allows users to easily receive optimal suggestions and complete the entire booking process in one go.

[1291] (Example 1)

[1292] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1293] Traditional systems sometimes struggled to quickly generate appropriate suggestions based on user requests and smoothly confirm reservations. Furthermore, they often failed to fully utilize user preferences and past behavioral data, resulting in an inability to provide optimal suggestions. Additionally, insufficient integration with external information sources led to reduced accuracy and convenience in user suggestions.

[1294] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[1295] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, means for applying machine learning algorithms to analyze the collected preference information and behavioral data, means for obtaining detailed suggestion information from external sources, means for transmitting the generated suggestion to the user's terminal, and means for coordinating with a reservation system based on the user's selection to confirm the reservation. This makes it possible to quickly generate optimal suggestions based on the user's past data and efficiently confirm reservations.

[1296] "Means for receiving user requests" refers to the hardware and software used to receive voice commands or text requests entered by users and transmit them to the server.

[1297] "Means for collecting user preference information and past behavioral data" refers to a function that collects the user's past choices and behavioral history from a database or similar source and uses it for analysis.

[1298] "Methods for applying machine learning algorithms" refers to the process of analyzing collected data and extracting patterns and trends using algorithms such as k-nearest neighbors, random forests, and neural networks.

[1299] "Means of obtaining detailed information about a proposal from external sources" refers to communication functions for obtaining detailed information such as restaurant reviews, distance, and availability from internet services and data providers (e.g., map APIs and review sites).

[1300] "Means for sending generated suggestions to the user's terminal" refers to the communication technology and protocol used by the server to send suggestions generated based on the analysis results to the user's terminal.

[1301] "A means of linking with a reservation system based on user selection and confirming a reservation" refers to a function that, based on the suggestions selected by the user, links with an external reservation system to make a reservation and obtains confirmation information for that reservation.

[1302] "Means of processing using text analysis or speech recognition" refers to technologies for analyzing and recognizing speech or text input by a user and converting it into a format that can be processed by a computer.

[1303] This invention is a system that generates optimal suggestions based on user requests and confirms reservations based on those suggestions. This system primarily exchanges data between the user's terminal and the server, providing convenience to the user.

[1304] Users submit their requests (e.g., "Please suggest restaurants for dinner tonight") via voice commands or text input through devices such as smartphones or personal computers. These requests are then sent to the server after undergoing text analysis and speech recognition within the device. A general-purpose speech recognition API can be used for speech recognition software, and a natural language processing engine can be used for text analysis.

[1305] The server analyzes the received request and extracts the user's past behavioral data and preference information from the database. This extracted data is then analyzed using machine learning algorithms. These algorithms include k-nearest neighbors (KNN), random forests, and neural networks. Machine learning libraries such as scikit-learn and TensorFlow are used. This analysis generates suggestions that best suit the user's current requests.

[1306] Next, the server retrieves detailed information about the suggestion from external sources. Typically, this is done using external APIs (e.g., map APIs or review site APIs). For example, it might use HTTP requests to retrieve detailed information such as the distance, reviews, and availability of the restaurant selected from the device, obtaining the data in JSON format. Based on this information, the server then generates a list of more suitable restaurants.

[1307] The generated suggestions are sent from the server to the user's device. The device then presents these suggestions to the user visually or audibly. Text-to-speech APIs can be used as the speech synthesis technology, allowing the user to select from a displayed list or audio guidance.

[1308] When a user selects a desired suggestion and requests, for example, "Please book the second restaurant," that information is sent from the terminal to the server. The server receives this information, interacts with an external reservation system (e.g., a reservation management API), and confirms the reservation. The server retrieves the reservation confirmation information and sends it back to the user's terminal. The user's terminal then notifies the user of this information using a notification mechanism. Typically, push notifications are used.

[1309] To give a concrete example, if a user requests "Please suggest restaurants for tonight's dinner," the device analyzes this request and sends it to the server. The server uses the KNN algorithm to analyze past behavioral data and decides to suggest three Italian restaurants. It retrieves detailed information from an external API and sends the suggestion list to the device. When the user selects the second restaurant and requests a reservation, the server uses a reservation management API to confirm the reservation, sends that information to the device, and notifies the user via push notification.

[1310] An example of a prompt message would be, "Please suggest restaurants for tonight's dinner. Then, select from the list of suggestions and confirm the reservation." This allows the generative AI model to make appropriate suggestions and facilitates the selection and reservation process.

[1311] The flow of the specific processing in Example 1 will be explained using Figure 11.

[1312] Step 1:

[1313] The user enters voice commands or text into their device, such as a smartphone or computer.

[1314] Input: "Please suggest a restaurant for tonight's dinner."

[1315] The device converts this input audio into text using speech recognition software (e.g., a speech recognition API).

[1316] Output: Recognized text data

[1317] Step 2:

[1318] The terminal uses a text analysis engine (e.g., a natural language processing engine) to analyze the recognized text data and extract the request content.

[1319] Input: Recognized text data

[1320] Data processing: Analyze text data using natural language processing and extract the content as a "restaurant proposal request."

[1321] Output: Extracted request details ("Restaurant Proposal Request")

[1322] Step 3:

[1323] The terminal sends the analyzed request to the server.

[1324] Input: Extracted request content

[1325] Data processing: Format the request content as an HTTP request and send it to the server.

[1326] Output: HTTP request containing the request details

[1327] Step 4:

[1328] The server receives the request and extracts user preference information and past behavioral data from the database.

[1329] Input: Request details ("Restaurant Proposal Request")

[1330] Data processing: Use SQL queries to extract users' past selection history and preference information from the database.

[1331] Output: Extracted preference information and behavioral data

[1332] Step 5:

[1333] The server analyzes the extracted preference and behavioral data using machine learning algorithms (e.g., KNN, Random Forest, Neural Network).

[1334] Input: Preference information and behavioral data

[1335] Data processing: Execute machine learning algorithms to generate suggestions best suited to the user's current requirements.

[1336] Output: Generated proposal data

[1337] Step 6:

[1338] The server retrieves detailed information about the proposal (e.g., reviews, distance, availability) from external sources.

[1339] Input: Generated proposal data

[1340] Data Calculation: Use HTTP requests to retrieve detailed information about suggestions from map APIs and review site APIs.

[1341] Output: A list of proposals containing detailed information.

[1342] Step 7:

[1343] The server sends the generated list of suggestions to the user's terminal.

[1344] Input: Proposal list containing detailed information

[1345] Data processing: Format the suggestion list as an HTTP response and send it to the terminal.

[1346] Output: HTTP response containing the suggestion list

[1347] Step 8:

[1348] The device displays the submitted list of suggestions to the user.

[1349] Input: HTTP response containing a list of suggestions

[1350] Specific actions: Display text on the screen or provide voice guidance using speech synthesis technology (e.g., Text-to-Speech API).

[1351] Output: List of suggestions presented to the user

[1352] Step 9:

[1353] The user selects their preferred suggestion from the presented list and enters their selection into the device.

[1354] Input: "I'd like you to make a reservation for the second restaurant."

[1355] The terminal sends this input to the server.

[1356] Output: HTTP request containing the selected items

[1357] Step 10:

[1358] The server receives the selected information and confirms the reservation in conjunction with an external reservation system.

[1359] Input: Selection

[1360] Data processing: Use HTTP requests to interact with the reservation management API and confirm reservations.

[1361] Output: Reservation confirmation information

[1362] Step 11:

[1363] The server sends reservation confirmation information to the user's device.

[1364] Input: Reservation confirmation information

[1365] Data processing: Format reservation confirmation information into an HTTP response and send it to the terminal.

[1366] Output: HTTP response containing reservation confirmation information

[1367] Step 12:

[1368] The device notifies the user of the received reservation confirmation information.

[1369] Input: HTTP response containing reservation confirmation information

[1370] Specific action: Notify the user using a notification mechanism (e.g., push notifications).

[1371] Output: Reservation confirmation information notified to the user

[1372] (Application Example 1)

[1373] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1374] Traditional food delivery services have struggled to provide timely and accurate recommendations tailored to user needs and preferences. Furthermore, users faced the challenge of choosing a suitable restaurant from numerous options, resulting in a complex reservation process.

[1375] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[1376] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, means for applying machine learning algorithms to analyze the collected preference information and behavioral data, means for sending generated suggestions to the user's terminal, means for converting user requests from voice commands into text data using a speech recognition library, means for analyzing user preferences using k-nearest neighbors, random forest, and neural networks as data analysis algorithms, means for collecting information to provide multiple suggestions using an external API, means for presenting suggestions to the user using a smartphone and receiving the user's selection, and means for confirming the reservation in cooperation with a reservation system based on the user's selection and notifying the user of confirmation information. This makes it possible to quickly and accurately provide optimal suggestions based on user requests in a food delivery service, and the process up to reservation confirmation becomes simple and convenient.

[1377] A "user" is someone who uses a system to input requests and receive suggestions.

[1378] A "request" refers to a user's request or preference, such as "Please suggest a delivery option for tonight's dinner."

[1379] "Preference information" refers to data that shows a user's past choices, behaviors, and preferences.

[1380] "Past behavioral data" refers to the history of actions and choices a user has made in the past.

[1381] A "speech recognition library" is a software component used to convert voice commands into text data.

[1382] A "machine learning algorithm" is an algorithm that analyzes preference information and past behavioral data to identify user preferences.

[1383] The "k-nearest neighbors" algorithm is an algorithm that performs analysis based on the k data points closest to the user's data point.

[1384] A "random forest" is a machine learning algorithm that uses multiple decision trees to make predictions.

[1385] A "neural network" is an algorithm that analyzes data through multiple layers of artificial neurons to perform classification and prediction.

[1386] An "external API" is an interface for connecting with external systems and services.

[1387] A "suggestion" is a set of options or recommendations that a system generates and presents based on user requests.

[1388] A "terminal" refers to a device used by a user to operate a system, specifically a mobile device such as a smartphone.

[1389] A "reservation system" is an external system used to reserve or confirm the suggested options.

[1390] "Confirmation information" refers to detailed information that is notified to the user when a reservation is confirmed.

[1391] This invention is a system for generating optimal suggestions and confirming reservations based on user requests. This system facilitates data exchange between the user's terminal and the server, providing convenience to the user.

[1392] The hardware used to implement this system includes smartphones and servers. Smartphones are devices that allow users to input requests via voice or text and receive suggestions. Servers are computers that collect and analyze data, generate suggestions, and confirm reservations.

[1393] The software used includes speech recognition libraries (e.g., SpeechRecognition), server-side frameworks (e.g., Flask), data analysis algorithms (e.g., scikit-learn, TensorFlow), libraries for API calls (e.g., requests), and frameworks for building user interfaces (e.g., React Native).

[1394] Specifically, the server implements this system as follows:

[1395] When a user enters a request by voice using their smartphone, a speech recognition library converts the voice into text data. This text data is then sent to the server.

[1396] The server collects user preference information and past behavioral data based on the received text data. This data is then analyzed using data analysis algorithms (k-nearest neighbors, random forest, neural network).

[1397] Based on the analysis results, the server generates multiple restaurant suggestions using external APIs (e.g., Yelp API, Google Maps API). These suggestions are sent to the user's smartphone and displayed visually.

[1398] The user selects their desired restaurant from a suggested list and sends the selection to the server via their smartphone. The server then integrates with a reservation system (e.g., OpenTable API) based on the selection and confirms the reservation. The final reservation confirmation information is sent from the server to the user's smartphone and notified to them.

[1399] This allows users to easily navigate the process from consistent suggestions to booking confirmation. Consider the following specific example.

[1400] As a concrete example, suppose a user requests, "Please recommend a restaurant for tonight's dinner delivery." This prompt is converted into text by a speech recognition library and sent to the server. The server analyzes past behavioral data and suggests several suitable restaurants. When the user selects one and requests a reservation, the reservation is confirmed, and final confirmation information is sent to their smartphone.

[1401] In this way, the system of the present invention can provide food delivery services smoothly and efficiently.

[1402] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[1403] Step 1:

[1404] The user enters their request by voice using their smartphone. This input might be something like, "Can you recommend a restaurant for tonight's dinner delivery?" This voice data becomes the input data.

[1405] Step 2:

[1406] When a smartphone receives voice input, it uses a speech recognition library (e.g., SpeechRecognition) to convert the voice data into text data. This converted text data is then output and sent to the server.

[1407] Step 3:

[1408] The server receives text data sent from the smartphone. This text data becomes the input data. The server analyzes this text data to understand the user's request.

[1409] Step 4:

[1410] The server collects user preference information and past behavioral data from the database based on user requests. This collected preference information and past behavioral data becomes the input data.

[1411] Step 5:

[1412] The server uses collected preference information and historical behavioral data to apply machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network) to analyze user preferences. The analyzed data is then output.

[1413] Step 6:

[1414] Based on the analysis results, the server uses external APIs (e.g., Yelp API, Google Maps API) to retrieve information about multiple restaurants. This retrieved restaurant information becomes input data and is organized into a suggestion list.

[1415] Step 7:

[1416] The server sends the generated list of suggestions to the smartphone. This list of suggestions becomes the output data and is displayed on the smartphone.

[1417] Step 8:

[1418] The user selects their desired restaurant from a list of suggestions displayed on their smartphone. The user's selection becomes the input data.

[1419] Step 9:

[1420] The smartphone sends the user's selections to the server. These selections become the input data.

[1421] Step 10:

[1422] The server, based on the user's selections, interacts with a reservation system (e.g., OpenTable API) to confirm the reservation. This confirmed reservation information becomes the output data.

[1423] Step 11:

[1424] The server sends the confirmed reservation information to the smartphone. This reservation confirmation information becomes output data and is displayed to the user as a notification on their smartphone.

[1425] Through the steps described above, the entire process from user request to proposal generation, selection, and booking confirmation is seamlessly realized.

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

[1427] This invention is a system that generates optimal suggestions based on user requests and even executes reservations based on those suggestions. This system also incorporates an emotion engine that recognizes the user's emotions and creates suggestions that take those emotions into account.

[1428] Overall system processing flow

[1429] User request received

[1430] The user uses a terminal to enter a request (e.g., "Please suggest a restaurant for dinner tonight"). Input methods include voice commands and text input.

[1431] Data collection and analysis

[1432] The server receives the request and extracts the user's past behavioral data and preference information from the database. The extracted data is analyzed using machine learning algorithms (e.g., k-nearest neighbors (KNN), random forest, neural network). This analysis identifies the user's preferences and behavioral patterns.

[1433] Emotion recognition by an emotion engine

[1434] The device analyzes the user's voice patterns and facial expressions using an emotion engine. This analysis determines the user's emotional state (e.g., stressed, relaxed). The emotion engine identifies emotions using speech recognition and image analysis technologies.

[1435] Proposal generation and presentation to users

[1436] The server integrates the results of analysis of preference information and behavioral data, as well as the results of the emotion engine analysis, to generate a list of restaurants best suited to the user. It uses external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed restaurant information (reviews, distance, availability). Based on this information, it makes suggestions appropriate to the user's emotional state (e.g., recommending quiet restaurants if the user is seeking relaxation). The generated suggestions are sent to the device and presented visually or audibly.

[1437] User selection and booking confirmation

[1438] The user selects their desired restaurant from the presented list (e.g., "Please reserve the second restaurant"). The selection is sent to the server via the device. The server receives the selection data and confirms the reservation in conjunction with a partnered external reservation system (e.g., OpenTable API). Once the reservation is confirmed, confirmation information is sent to the user's device. The device then notifies the user of the confirmation information.

[1439] Specific example

[1440] For example, suppose a user requests, "Please suggest a restaurant for tonight's dinner." The terminal analyzes this request as text, and also uses an emotion engine to analyze the user's voice patterns and facial expressions. The server performs analysis based on past behavioral data and preference information. If the emotion engine's analysis indicates that "the user is feeling stressed," the server integrates the results and suggests three quiet, relaxing Italian restaurants. Detailed information about these restaurants is obtained via an external API and sent to the user's terminal as a suggestion list. If the user chooses the second restaurant and requests a reservation, the selection is sent to the server, which confirms the reservation through a partnered reservation system. Finally, reservation confirmation information is sent to the user's terminal, and the terminal notifies the user of this confirmation.

[1441] This entire process allows users to receive optimal suggestions tailored to their emotional state and consistently execute the booking process. This system further enhances user convenience and satisfaction.

[1442] The following describes the processing flow.

[1443] Step 1:

[1444] The user uses a terminal to enter a request (e.g., "Please suggest a restaurant for dinner tonight"). Input methods include voice commands and text input.

[1445] Step 2:

[1446] The device interprets user requests through text analysis or speech recognition and generates request data in text format. It also acquires data for analyzing the user's voice patterns and facial expressions using an emotion engine.

[1447] Step 3:

[1448] The device sends the generated request data and sentiment data to the server. This transmission is performed using the HTTPS protocol.

[1449] Step 4:

[1450] The server receives request data and sentiment data sent from the terminal. Based on the received request data, it identifies the user's ID.

[1451] Step 5:

[1452] The server extracts past behavioral data and preference information from the database based on the user's ID. SQL queries are used for this data extraction.

[1453] Step 6:

[1454] The server analyzes the extracted data using machine learning algorithms (e.g., k-nearest neighbors (KNN), random forest, neural network). This identifies user preferences and behavioral patterns.

[1455] Step 7:

[1456] The server inputs emotional data into the emotion engine and analyzes the user's current emotional state (e.g., stressed, relaxed). The emotion engine analyzes audio and image data to determine the emotion.

[1457] Step 8:

[1458] The server integrates the results of analysis of preference information, behavioral data, and emotion engine analysis to generate a list of restaurants best suited to the user. It uses external APIs (e.g., Google Maps API, Yelp API) to retrieve detailed restaurant information (reviews, distance, availability). Based on the analysis results, for example, if the user is looking to relax, it will prioritize selecting quiet restaurants.

[1459] Step 9:

[1460] The server encodes the generated suggestion list in JSON format and sends it to the terminal. The HTTPS protocol is used for transmission.

[1461] Step 10:

[1462] The terminal decodes the received suggestion list and presents it to the user visually or audibly. Presentation methods include GUI widgets and audio output.

[1463] Step 11:

[1464] The user selects their preferred restaurant from the presented list (e.g., "Please make a reservation for the second restaurant").

[1465] Step 12:

[1466] The terminal sends the user's selection to the server. This transmission uses the HTTPS protocol.

[1467] Step 13:

[1468] The server analyzes the received selection data and, in conjunction with a partnered external reservation system (e.g., OpenTable API), sends a request to confirm the reservation for the specified restaurant.

[1469] Step 14:

[1470] The server receives reservation confirmation information from an external reservation system and generates data indicating that the reservation has been confirmed.

[1471] Step 15:

[1472] The server encodes the reservation confirmation information in JSON format and sends it to the terminal. The HTTPS protocol is used again for transmission.

[1473] Step 16:

[1474] The terminal decodes the received reservation confirmation information and notifies the user. Notification methods include push notifications and GUI displays.

[1475] This series of steps allows users to receive optimal suggestions tailored to their emotional state and consistently proceed with making a reservation.

[1476] (Example 2)

[1477] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1478] Modern consumers often feel a great burden when making the best choice from a wide range of options. In particular, when deciding on a place to eat or other outings, they need to consider their preferences and emotional state. However, conventional systems struggle to provide suggestions that appropriately reflect the user's preferences and emotions, leading to decreased user convenience and satisfaction.

[1479] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[1480] In this invention, the server includes means for receiving user requests, means for collecting user preference information and past behavioral data, and means for applying machine learning algorithms to analyze the collected preference information and behavioral data. This makes it possible to provide optimal suggestions that reflect the user's preferences and emotional state.

[1481] Furthermore, the server includes means for generating optimal suggestions for the user based on analysis, means for sending the generated suggestions to the user's terminal, means for presenting the generated suggestions to the user on the terminal, means for coordinating with the reservation system based on the user's selection to confirm the reservation, and emotion recognition means for analyzing the user's voice patterns and facial expressions to determine their emotional state. This enables the consistent provision of suggestions and reservations based on the user's requests, thereby improving user convenience and satisfaction.

[1482] A "user" is a person who uses this system, and is responsible for inputting requests, receiving suggestions, and making selections.

[1483] A "terminal" is a device used by a user to input requests or receive suggestions, and includes electronic devices such as smartphones and tablets.

[1484] A "server" is a central processing unit that handles user requests, collects and analyzes data, generates suggestions, and confirms reservations.

[1485] A "request receiving means" is a device or software for receiving and analyzing requests from a user.

[1486] "Preference information" refers to data that indicates a user's preferences, such as their favorite foods or past choices.

[1487] "Behavioral data" refers to data that shows a user's past actions and choices.

[1488] "Collection means" refers to devices or software used to gather necessary information from databases or external information sources.

[1489] A "machine learning algorithm" is an algorithm that uses collected data to find patterns and analyze user preferences and behavior.

[1490] A "proposal generation means" is a device or software that suggests the most suitable restaurant or service based on the user's preference information and emotional state.

[1491] "Transmission means" refers to a device or software for sending the generated proposal to the user's terminal.

[1492] "Presentation means" refers to a device or software for displaying a proposal visually or audibly on a user's terminal.

[1493] A "reservation confirmation method" refers to a device or software that confirms a reservation by linking with an external reservation system based on the user's selections.

[1494] "Emotion recognition means" refers to a device or software that analyzes a user's voice patterns and facial expressions to determine their emotional state.

[1495] This invention relates to a system that generates optimal suggestions based on user requests and even executes reservations based on those suggestions. This system also incorporates an emotion engine that recognizes the user's emotions and creates suggestions that take those emotions into account.

[1496] Overall description of the program's processing

[1497] The system primarily operates through three parties: a server, a terminal, and a user. The server is a high-performance data processing server (e.g., a cloud-based computing service), and the terminal is a device (e.g., a smartphone or tablet) where the user inputs requests and receives suggestions. The emotion engine uses APIs with speech recognition and image analysis technologies (e.g., an emotion recognition API from a cloud service). Data analysis includes machine learning algorithms (e.g., scikit-learn, TensorFlow).

[1498] Details of data processing and data calculations

[1499] User request received

[1500] The user enters their request using a terminal. For example, they might enter a voice command such as, "Please suggest restaurants for dinner tonight." This request is converted into text data using speech recognition technology (e.g., a speech-to-text service) on the terminal and sent to the server.

[1501] Data collection and analysis

[1502] When the server receives a user request, it extracts the user's past behavioral data and preference information from a database (e.g., a relational database). Based on the extracted data, it performs analysis using machine learning algorithms (e.g., KNN, Random Forest). This identifies the user's preferences and behavioral patterns.

[1503] Emotion recognition by an emotion engine

[1504] The device analyzes the user's voice patterns and facial expressions using an emotion engine (e.g., emotion recognition API, image analysis API). By analyzing the voice and image data, it identifies the user's emotional state. This information is also sent to the server.

[1505] Proposal generation and presentation to users

[1506] The server integrates the results of preference and behavioral data analysis, as well as the results of the emotion engine analysis, to generate optimal suggestions. It uses external APIs (e.g., map services and review services) to obtain detailed information about the restaurants and services to suggest. Based on this information, it generates user-appropriate suggestions and sends them to the device. The device presents the suggestions to the user visually or audibly.

[1507] User selection and booking confirmation

[1508] The user selects their preferred option from the presented suggestions and requests a reservation. The selection is sent to the server via the terminal. The server integrates with the reservation system (e.g., reservation service API) and confirms the reservation. Confirmation information is sent to the terminal, which then notifies the user.

[1509] Specific example

[1510] For example, if a user makes a voice request saying, "Please suggest a restaurant for tonight's dinner," the system will operate as follows:

[1511] 1. Terminal: Converts voice commands to text and sends them to the server.

[1512] 2. Server: Acquires past user behavior data and preference information, and analyzes it using machine learning algorithms.

[1513] 3. Terminal: Uses an emotion engine to analyze the user's voice patterns and facial expressions.

[1514] 4. Server: Integrates preference information, behavioral data, and emotional state, and uses external APIs to suggest the most suitable restaurant.

[1515] 5. Terminal: Presents the following suggestion: "There are three Italian restaurants where you can relax: 1. Pizzeria A, 2. Ristorante B, 3. Trattoria C."

[1516] 6. User: "I'd like you to make a reservation for the second restaurant."

[1517] 7. Server: Confirm the reservation using the reservation service API.

[1518] 8. Terminal: Notifies the user of reservation confirmation information.

[1519] Example of a prompt

[1520] User: "I'd like some restaurant recommendations for tonight's dinner."

[1521] Device: (Analyzes speech and text)

[1522] Server: (Integrates past behavioral data, preference information, and user sentiment data to select the optimal restaurant.)

[1523] Terminal: "There are three Italian restaurants where you can relax: 1. Pizzeria A, 2. Ristorante B, 3. Trattoria C"

[1524] User: "I'd like you to make a reservation for the second restaurant."

[1525] Server: (Confirms reservation through the reservation system)

[1526] Terminal: "Your reservation for Ristorante B has been confirmed. Reservation confirmation details are as follows."

[1527] This system allows users to receive optimal suggestions tailored to their emotional state and consistently execute the booking process. The configuration enhances user convenience and satisfaction.

[1528] The flow of the specific processing in Example 2 will be explained using Figure 13.

[1529] Program processing flow

[1530] Step 1: Receiving the user's request

[1531] The user enters their request using the terminal. For example, they might enter a voice command such as, "Please suggest a restaurant for dinner tonight." The terminal uses speech recognition technology (voice conversion service) to convert this voice command into text data.

[1532] Input: User voice command

[1533] Processing: Converts speech to text using speech recognition technology.

[1534] Output: Text data (request details)

[1535] Step 2: Submit the request

[1536] The terminal sends the user's request, converted into text data, to the server. A secure communication protocol is used for transmission.

[1537] Input: Text data (request details)

[1538] Processing: Enclose text data in packets and send them to the server over the network.

[1539] Output: Request data reaches the server.

[1540] Step 3: Collection of preference information and behavioral data

[1541] When the server receives the request data, it executes queries from the database to collect data on the user's past behavior and preferences.

[1542] Input: Request data

[1543] Process: Query the database to retrieve the necessary data.

[1544] Output: User preference information and behavioral data

[1545] Step 4: Data Analysis

[1546] The server uses collected preference and behavioral data to apply machine learning algorithms (e.g., KNN, Random Forest) to analyze user preferences and behavioral patterns.

[1547] Input: Preference information and behavioral data

[1548] Processing: Apply machine learning algorithms to analyze the data.

[1549] Output: Identification results of user preference patterns

[1550] Step 5: Analysis of emotional state

[1551] The device analyzes the user's voice patterns and facial expressions using an emotion recognition API to determine their emotional state. This allows it to determine whether the user is stressed or relaxed.

[1552] Input: User voice data and facial expression data

[1553] Processing: Analyze emotional state using emotion recognition API.

[1554] Output: Identification of emotional state (e.g., stressed state)

[1555] Step 6: Proposal Generation

[1556] The server integrates the analysis results and generates restaurant recommendations best suited to the user. It uses external APIs (e.g., map services and review services) to retrieve detailed restaurant information.

[1557] Input: Analysis results of user preference patterns and emotional states

[1558] Processing: Use an external API to retrieve detailed information and generate optimal suggestions.

[1559] Output: Suggested restaurant list

[1560] Step 7: Presenting the Proposal

[1561] The terminal presents the restaurant list sent from the server to the user visually or audibly.

[1562] Input: Suggested restaurant list

[1563] Processing: Display or announce the restaurant list.

[1564] Output: Presentation to the user

[1565] Step 8: User Selection

[1566] The user selects their desired restaurant from the presented list. The selection is sent to the server via the device.

[1567] Input: Suggested restaurant list

[1568] Process: The user selects their desired restaurant and sends the selection information to the server.

[1569] Output: Selection data reaches the server.

[1570] Step 9: Confirm your reservation

[1571] The server receives the selection data and confirms the reservation through a partner reservation system (e.g., a reservation service API). The reservation confirmation information is then sent to the terminal.

[1572] Input: User's selected data

[1573] Processing: Confirm the reservation using the reservation service API and send confirmation information to the device.

[1574] Output: Reservation confirmation information

[1575] Step 10: Booking confirmation notification

[1576] The device notifies the user of reservation confirmation information. The confirmation information is presented visually or audibly.

[1577] Input: Reservation confirmation information

[1578] Processing: Display or voice confirmation information.

[1579] Output: Notification to the user

[1580] (Application Example 2)

[1581] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1582] Traditional food delivery services often offered only simple recommendations without considering the user's preferences or emotional state. As a result, users often struggled to receive optimal suggestions tailored to their emotional needs. There is a growing demand for services that consider emotional needs, such as suggesting meals that promote relaxation or meals that help relieve stress.

[1583] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a user request, means for collecting user preference information and past behavioral data based on the request, means for applying a machine learning algorithm to analyze the collected preference information and behavioral data, means for processing the user's voice signal and image data to analyze their emotional state, means for generating the most suitable suggestions for the user based on the analysis and emotional state analysis, means for transmitting the generated suggestions to the user's terminal, means for presenting the generated suggestions to the user at the terminal, and means for coordinating with a reservation system and confirming the reservation based on the user's selection. This makes it possible to provide a food delivery service that takes the user's emotional state into consideration.

[1584] "Means for receiving user requests"

[1585] This refers to a device or software that receives requests from a user, either as text or voice input.

[1586] "Means for collecting user preference information and past behavioral data"

[1587] This refers to a device or software that stores and retrieves data such as a user's past order history, ratings, and preferences.

[1588] "Means for applying machine learning algorithms to analyze collected preference information and behavioral data."

[1589] This refers to devices and programs that utilize machine learning techniques to analyze user preferences and behavioral patterns using collected data.

[1590] "Means for processing user audio signals and image data to analyze emotional state."

[1591] This technology analyzes a user's voice patterns and facial expression data to identify their emotional state at that time (e.g., stress, tension, relaxation, etc.).

[1592] "A means of generating optimal suggestions for users."

[1593] This refers to devices and software that create the most appropriate options and suggestions for the user based on the results of data analysis and sentiment analysis.

[1594] "A means of sending the generated suggestions to the user's device."

[1595] This refers to a technology for sending generated suggestions as data to the user's device (e.g., smartphone, tablet).

[1596] "A means of presenting generated suggestions to the user."

[1597] This refers to a device or software that displays or notifies the user of suggested content visually or audibly on their device.

[1598] "A means of confirming reservations by linking with the reservation system."

[1599] This refers to the devices and software used to confirm reservations through a partner reservation system based on the options selected by the user based on the proposed content.

[1600] This invention provides a system that makes optimal food delivery service recommendations based on the user's emotional state and preferences, and then handles the entire process, from initial recommendation to order confirmation. This system is realized through collaboration with the user's terminal, a server, and an external API.

[1601] The user's device can be a smartphone or tablet. The user uses this device to input requests via voice or text, such as "I'm hungry" or "Please suggest a meal to relieve stress." The device receives these requests and sends them to the server.

[1602] When the server receives a user request, it first collects user preference information and past behavioral data from a database. This database stores, for example, past order history, ratings, and preferences. Next, the collected data is analyzed using machine learning algorithms (e.g., k-nearest neighbors, random forest, neural network).

[1603] Simultaneously, the device transmits the user's voice signals and image data to an emotion engine, which analyzes the user's emotional state. This emotion engine identifies the user's emotional state (e.g., stress, relaxation) from voice patterns and facial expressions.

[1604] By integrating this preference data and sentiment analysis results, the server generates the most suitable recommendations for the user. When generating recommendations, it uses external APIs (e.g., Google Places API, Tabelog API) to obtain detailed information about restaurants and dishes, and constructs the recommendations based on that information.

[1605] Once a suggestion is generated, its contents are sent to the user's device. The user's device presents the suggestion to the user visually or audibly. When the user selects a desired suggestion from the list and confirms the order, the selection is sent to the server. The server uses a partnered reservation system (e.g., a food delivery service API) to execute the order. Finally, order confirmation information is sent to the user's device, and the user is notified of the confirmation.

[1606] For example, if a user enters the voice command, "I'm hungry. Do you have any recommendations?", the device converts this voice into text and sends it to the server. Based on past data and the results of the emotion engine's analysis, the server generates suggestions that will help the user relax (for example, a quiet sushi restaurant), retrieves detailed information (e.g., reviews, distance, rating) via an external API, and sends it to the user's device. Once the user selects the sushi restaurant and confirms their order, the order is placed through the reservation system, and a final confirmation is sent to the user's device.

[1607] Through the above process, the present invention realizes the provision of a food delivery service that takes into account the emotional state of the user.

[1608] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[1609] Step 1:

[1610] Receive user requests.

[1611] The user uses a device such as a smartphone or tablet to input a request via voice or text (e.g., "I'm hungry," "Please suggest a meal to relieve stress"). The device receives this request and sends it to the server as text.

[1612] Step 2:

[1613] We collect preference information and past behavioral data.

[1614] Based on the received request, the server collects user preference information and past behavioral data from the database. This includes past order history, ratings, and preferences. The collected data is retrieved from a database stored on the server.

[1615] Step 3:

[1616] Application of machine learning algorithms.

[1617] The server applies machine learning algorithms based on collected preference and behavioral data. Specifically, it uses the dataset to train models (e.g., k-nearest neighbors, random forest, neural network) and analyzes user preferences and behavioral patterns. This analysis identifies the user's current preferences.

[1618] Step 4:

[1619] Analysis of emotional states.

[1620] The device collects the user's voice signals and image data and sends them to the emotion engine. The emotion engine identifies the user's emotional state (e.g., stressed, relaxed) from voice patterns and facial expressions. It obtains an output of the emotional state from the voice and image data inputs.

[1621] Step 5:

[1622] Generating optimal proposals.

[1623] The server integrates analyzed preference data and emotional states to generate optimal suggestions for the user. During suggestion generation, it uses external APIs (e.g., Google Places API, Tabelog API) to retrieve detailed information about restaurants and dishes (reviews, distance, ratings, etc.) and uses this information to construct the suggestions. Beneath the database lies an algorithm that integrates emotional states and preference information to generate optimal suggestions.

[1624] Step 6:

[1625] Sending and presenting proposals.

[1626] The generated suggestions are sent from the server to the user's terminal. The terminal presents the received suggestions to the user visually or audibly. The user selects their preferred option from the list of presented suggestions. This allows the user to review and select the most suitable suggestion.

[1627] Step 7:

[1628] Confirmation and execution of the reservation.

[1629] Once the user selects from the suggested list and confirms their order, the selection is sent to the server. The server then works with a partner reservation system (e.g., a food delivery service API) to execute the order. Finally, order confirmation information is sent to the user's device, and the user is notified of the order status.

[1630] 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 controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[1631] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1632] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.

[1633] Furthermore, the emotion identification model 59, acting 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 a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[1634] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.

[1635] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.

[1636] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.

[1637] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.

[1638] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is 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 the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."

[1639] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values ​​representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.

[1640] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.

[1641] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.

[1642] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.

[1643] 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.

[1644] Furthermore, it is not necessary to store the entirety 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 the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.

[1645] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.

[1646] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of 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). Alternatively, the hardware resource that performs a specific process may consist of a single processor.

[1647] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.

[1648] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.

[1649] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.

[1650] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.

[1651] The following is further disclosed regarding the embodiments described above.

[1652] (Claim 1)

[1653] A means of receiving user requests,

[1654] Based on the above requirements, means for collecting user preference information and past behavioral data,

[1655] A means of applying a machine learning algorithm to analyze collected preference information and behavioral data,

[1656] Based on the above analysis, means for generating the optimal suggestion for the user,

[1657] A means of sending the generated proposal to the user's terminal,

[1658] A means for presenting the generated suggestions to the user on the aforementioned terminal,

[1659] A system that includes a means of confirming a reservation in conjunction with a reservation system, based on the user's selection.

[1660] (Claim 2)

[1661] The system according to claim 1, further comprising means for processing user requests using text analysis or speech recognition.

[1662] (Claim 3)

[1663] The system according to claim 1, comprising means of using one of the following as a machine learning algorithm: k-nearest neighbors, random forest, and neural network, to identify user preferences.

[1664] "Example 1"

[1665] (Claim 1)

[1666] A means of receiving user requests,

[1667] Based on the above requirements, means for collecting user preference information and past behavioral data,

[1668] A means of applying a machine learning algorithm to analyze collected preference information and behavioral data,

[1669] Based on the above analysis, means for generating the optimal suggestion for the user,

[1670] Means of obtaining detailed information about the proposal from external sources,

[1671] A means of sending the generated proposal to the user's terminal,

[1672] A means for presenting the generated suggestions to the user on the aforementioned terminal,

[1673] A system that includes a means of confirming a reservation in conjunction with a reservation system, based on the user's selection.

[1674] (Claim 2)

[1675] The system according to claim 1, further comprising means for processing user requests using text analysis or speech recognition.

[1676] (Claim 3)

[1677] The system according to claim 1, comprising means of using one of the following as a machine learning algorithm: k-nearest neighbors, random forest, and neural network, to identify user preferences.

[1678] "Application Example 1"

[1679] (Claim 1)

[1680] A means of receiving user requests,

[1681] Based on the above requirements, means for collecting user preference information and past behavioral data,

[1682] A means of applying a machine learning algorithm to analyze collected preference information and behavioral data,

[1683] Based on the above analysis, means for generating the optimal suggestion for the user,

[1684] A means of sending the generated proposal to the user's terminal,

[1685] A means for presenting the generated suggestions to the user on the aforementioned terminal,

[1686] A means of confirming a reservation by linking with the reservation system based on the user's selection,

[1687] A means of converting user requests from voice commands into text data using a speech recognition library,

[1688] As data analysis algorithms, we use k-nearest neighbors, random forests, and neural networks to analyze user preferences.

[1689] A means of collecting information that provides multiple suggestions using an external API,

[1690] A means of presenting suggestions to the user using a smartphone and receiving their selection,

[1691] A means of confirming a reservation and notifying the user of confirmation information by linking with the reservation system based on the user's selection,

[1692] A system that includes this.

[1693] (Claim 2)

[1694] The system according to claim 1, further comprising means for processing user requests using text analysis or speech recognition.

[1695] (Claim 3)

[1696] The system according to claim 1, comprising means of using one of the following as a machine learning algorithm: k-nearest neighbors, random forest, and neural network, to identify user preferences.

[1697] "Example 2 of combining an emotion engine"

[1698] (Claim 1)

[1699] A means of receiving user requests,

[1700] Based on the above requirements, means for collecting user preference information and past behavioral data,

[1701] A means of applying a machine learning algorithm to analyze collected preference information and behavioral data,

[1702] Based on the above analysis, means for generating the optimal suggestion for the user,

[1703] A means of sending the generated proposal to the user's terminal,

[1704] A means for presenting the generated suggestions to the user on the aforementioned terminal,

[1705] A means of confirming a reservation by linking with the reservation system based on the user's selection,

[1706] A system that includes emotion recognition means to analyze the user's voice patterns and facial expressions to determine their emotional state.

[1707] (Claim 2)

[1708] The system according to claim 1, further comprising means for processing user requests using text analysis or speech recognition, and means for obtaining detailed information using an external API.

[1709] (Claim 3)

[1710] The system according to claim 1, comprising means of using one of the following as a machine learning algorithm: k-nearest neighbors, random forest, and neural network, to identify user preferences.

[1711] "Application example 2 when combining with an emotional engine"

[1712] (Claim 1)

[1713] A means of receiving user requests,

[1714] Based on the above requirements, means for collecting user preference information and past behavioral data,

[1715] A means of applying a machine learning algorithm to analyze collected preference information and behavioral data,

[1716] A means for processing a user's voice signal and image data to analyze their emotional state,

[1717] A means for generating optimal suggestions for the user based on the aforementioned analysis and emotional state analysis,

[1718] A means of sending the generated proposal to the user's terminal,

[1719] A means for presenting the generated suggestions to the user on the aforementioned terminal,

[1720] A system that includes a means of confirming a reservation in conjunction with a reservation system, based on the user's selection.

[1721] (Claim 2)

[1722] The system according to claim 1, further comprising means for processing user requests using text analysis or speech recognition.

[1723] (Claim 3)

[1724] The system according to claim 1, comprising means of using one of the following as a machine learning algorithm: k-nearest neighbors, random forest, and neural network, to identify user preferences. [Explanation of Symbols]

[1725] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>

Claims

1. A means of receiving user requests, Based on the above requirements, means for collecting user preference information and past behavioral data, A means of applying a machine learning algorithm to analyze collected preference information and behavioral data, Based on the above analysis, means for generating the optimal suggestion for the user, A means of sending the generated proposal to the user's terminal, A means for presenting the generated suggestions to the user on the aforementioned terminal, A system that includes a means of confirming a reservation in conjunction with a reservation system, based on the user's selection.

2. The system according to claim 1, further comprising means for processing user requests using text analysis or speech recognition.

3. The system according to claim 1, comprising means of using one of the following as a machine learning algorithm: k-nearest neighbors, random forest, and neural network, to identify user preferences.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A