System

The system addresses meal planning stress by recommending restaurants and adjusting reservations based on user preferences, location, and real-time traffic, optimizing the dining experience.

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

Patent Information

Application Number
JP2024124079
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-30
Publication Date
2026-02-12

AI Technical Summary

Technical Problem

Existing systems fail to integrate factors like choosing the right restaurant, making reservations, and adjusting for traffic delays, leading to stress in meal planning for busy individuals.

Method used

A system that acquires user preferences, location information, and past usage history, calculates predicted arrival time, and adjusts reservation times based on real-time traffic conditions to recommend optimal restaurants and reservation times.

Benefits of technology

Significantly reduces stress in meal planning by providing automated restaurant recommendations and reservation adjustments tailored to the user's current location, preferences, and traffic conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026022562000001_ABST
    Figure 2026022562000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system comprising: means for obtaining a user's preferences, location information, and past usage history and recommending a restaurant; means for obtaining real-time traffic information and calculating a predicted arrival time of the user; and means for suggesting an adjustment to a reservation time based on the calculated predicted arrival time.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

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

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

[0004] For many people living busy lives today, planning meals on the go can be stressful. This stress is caused by factors such as choosing the right restaurant, the hassle of making reservations, and even delays in arrival due to traffic. No existing systems automatically integrate these factors to provide users with an optimal solution. The present invention aims to solve these problems and reduce the hassle and stress associated with meal planning for users. [Means for solving the problem]

[0005] The present invention includes a means for acquiring a user's preferences, location information, and past usage history and recommending restaurants. It also includes a means for acquiring real-time traffic information and calculating the user's predicted arrival time. This allows the optimal arrival time from the user's current location to the recommended restaurant to be calculated. It also includes a means for automatically adjusting and proposing an appropriate reservation time based on the calculated predicted arrival time. This allows the user to receive recommendations for the optimal restaurant, calculate an arrival time that takes traffic conditions into account, and automatically adjust an appropriate reservation time all at once, significantly reducing the stress associated with planning meals when going out.

[0006] "User preferences" refers to the preferences that a user has for particular types of meals or dishes.

[0007] "Location information" refers to geographical data that indicates the user's current location.

[0008] "Past usage history" refers to a record of restaurants that the user has used in the past and information about those restaurants.

[0009] "Real-time traffic information" refers to the latest data showing current traffic conditions.

[0010] "Estimated Time of Arrival (ETA)" is the calculated time when a user is expected to arrive at a destination.

[0011] "Means for recommending restaurants" refers to a technical method or system for selecting the most suitable restaurant for a user based on the user's preferences, location information, and past usage history.

[0012] "Means for obtaining traffic information" refers to the technical methods or systems for collecting up-to-date traffic conditions from external data sources.

[0013] The term "reservation time adjustment suggestion means" refers to a technical method or system for suggesting an optimal reservation time to a user based on the calculated predicted arrival time. [Brief explanation of the drawings]

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

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

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

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

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

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

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

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

[0022] [First embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0035] The system of the present invention is an automated restaurant recommendation and reservation system to assist users in meal planning for when they are out. The system utilizes the user's current location, preferences, past visit history, and real-time traffic information to recommend suitable restaurants and adjust / suggest reservation times based on the user's estimated time of arrival (ETA).

[0036] Specifically, the device first inputs or retrieves the user's current location, food preferences (e.g., Italian or Japanese cuisine), and restaurant history. This information is then sent from the device to the server as an API request.

[0037] Based on the received user information, the server retrieves restaurant information that matches the user's preferences from its internal database and filters out restaurants that the user has not visited before. This filtering includes an analysis of the user's food preferences and past history.

[0038] The server then uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, using Geographic Information System (GIS) techniques to calculate the ETA based on the user's travel distance and speed.

[0039] The server then calls the real-time traffic information API to obtain the current traffic conditions. Based on this information, it recalculates the ETA to each restaurant and updates the estimated arrival time, taking into account traffic delays such as congestion.

[0040] The server then calculates and proposes a new appointment time based on the updated ETA that allows the user ample time to arrive, for example by adding a 10-minute buffer to the calculated ETA.

[0041] Finally, the server compiles this information (recommended restaurant, predicted arrival time, new reservation time) and sends it to the terminal, which receives it and displays it to the user. This allows the user to receive a notification about the recommended restaurant and its reservation time, and easily complete the reservation.

[0042] Specific examples

[0043] For example, suppose a user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant.

[0044] 1. The user enters "Current location: Tokyo, Food preference: Italian, Past usage history: Restaurant A, Restaurant B" into the smartphone app.

[0045] 2. The device sends this information to the server.

[0046] 3. The server narrows down the search for "Italian restaurants" from the database and extracts restaurants C and D, which are not included in past history.

[0047] 4. The server calculates the distance to restaurant C and restaurant D and calculates the estimated arrival time (ETA) for each as 14:30 and 14:35, respectively.

[0048] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that this will delay the predicted arrival time by 5 minutes.

[0049] 6. The server recalculates and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0050] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0051] 8. The server sends this information to the terminal, which then displays the message, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0052] In this way, users can easily view the recommended restaurants and the best reservation times and complete the reservation.

[0053] The processing flow will be explained below.

[0054] Step 1:

[0055] The user logs into the app on their device and inputs their current location (obtained using the GPS function), food preferences (e.g., Italian), and past usage history (e.g., Restaurant A, Restaurant B).

[0056] Step 2:

[0057] The device sends the input information to the server as an API request, including the user's current location, food preferences, and past usage history.

[0058] Step 3:

[0059] Based on the user information received by the server, restaurant information that matches the user's preferences is retrieved from an internal database.

[0060] Step 4:

[0061] The server compares the restaurant information it has acquired with past usage history and filters out restaurants that the user has not visited before. For example, restaurants C and D remain as candidates.

[0062] Step 5:

[0063] The server uses the filtered restaurant location information (latitude and longitude) to calculate the distance from the user's current location to each restaurant using a geocode API or similar.

[0064] Step 6:

[0065] The server calculates the estimated time of arrival (ETA) for each restaurant using a hypothetical average travel speed (e.g., 40 km / h assuming travel by car). For example, the ETA for restaurant C is calculated as 14:30, and the ETA for restaurant D is calculated as 14:35.

[0066] Step 7:

[0067] The server calls a real-time traffic information API (for example, a traffic information service) and obtains current traffic information (such as traffic congestion).

[0068] Step 8:

[0069] The server recalculates the ETA for each restaurant based on the traffic information it obtains. For example, if the arrival time is delayed by 5 minutes due to traffic congestion, the ETA for Restaurant C will be updated to 14:35 and the ETA for Restaurant D will be updated to 14:40.

[0070] Step 9:

[0071] The server calculates new reservation times based on the updated ETA, allowing the user ample time to arrive. For example, add a 10-minute buffer to the recalculated ETA, setting the reservation times for Restaurant C at 14:45 and Restaurant D at 14:50.

[0072] Step 10:

[0073] The server sends information to the device, including the recommended restaurant information (name, address), the updated ETA, and the new reservation time.

[0074] Step 11:

[0075] The terminal displays the received information to the user, notifying them that "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0076] Step 12:

[0077] The user reviews the notification and confirms or modifies the booking if necessary, and completes the booking process if the booking can be confirmed directly within the system.

[0078] Example 1

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

[0080] In modern society, finding a suitable restaurant when going out can be difficult. Adjusting reservation times to accommodate traffic conditions and travel time can also be time-consuming. This can lead to users missing their reservation due to being unable to arrive on time. A system that can solve these problems and improve users' outing experiences is needed.

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

[0082] In this invention, the server includes means for acquiring a user's preferences, location information, and history information and recommending restaurants, means for acquiring real-time movement information and calculating a predicted arrival time of the user, means for suggesting adjustment of a reservation time based on the calculated predicted arrival time, and means for filtering restaurants that match the user's preferences and that the user has not visited in the past. This allows the user to quickly and easily find a suitable restaurant when going out, and allows the user to arrive on schedule by adjusting the reservation time according to traffic conditions.

[0083] "User preferences" refers to the preferences that a user has for a particular type of food or cuisine.

[0084] "Location information" is information that indicates the user's current geographical location. It is often expressed using latitude and longitude.

[0085] "History information" refers to records of restaurants that a user has visited in the past and the dates and times of those visits.

[0086] "Eating and drinking establishments" are establishments that serve food and beverages, including restaurants and cafes.

[0087] "Real-time travel information" is the latest data on current traffic conditions and travel times.

[0088] The "estimated arrival time" is the calculated time it will take for the user to arrive at the restaurant, which is the destination, from the user's current location.

[0089] "Adjusting reservation time" is the process of changing or suggesting a time that a user has reserved based on the user's situation and traffic information.

[0090] "Filtering" is the process of selecting data based on specific conditions and eliminating unnecessary data.

[0091] A "server" is a computer system that receives requests from users, processes them, and returns the results.

[0092] An "API request" is a request for data made through an application program interface.

[0093] The system of the present invention is an automated recommendation and reservation system for streamlining dining plans for users when out and about. The system utilizes the user's current location, preferences, history information, and real-time movement information to recommend appropriate restaurants and adjust / suggest reservation times based on the user's predicted arrival time.

[0094] Specifically, the device first obtains the user's current location, preferences (e.g., Italian or Japanese cuisine), and past visit history. This information is then sent from the device to the server as an API request. The HTTP communication protocol is used for this.

[0095] Based on the received user information, the server retrieves restaurant information that matches the user's preferences from its internal database and further filters out restaurants that the user has not visited before, thereby providing the user with new options.

[0096] The server then uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, using Geographic Information System (GIS) technology to calculate the ETA based on the user's travel distance and speed.

[0097] The server then calls a real-time travel information API to obtain current traffic conditions. Based on this information, the server recalculates the ETA to each restaurant and updates the estimated arrival time, taking into account traffic delays such as congestion. For example, the traffic information API provides data such as the current road congestion situation and predicted delay times.

[0098] The server then calculates and proposes a new appointment time based on the updated ETA, ensuring the user arrives on time by adding a certain buffer (e.g., 10 minutes) to the calculated ETA.

[0099] Finally, the server compiles this information (recommended restaurants, predicted arrival time, new reservation time) and sends it to the terminal. The terminal displays the received information to the user, allowing the user to check the recommended restaurants and the optimal reservation time and easily complete the reservation.

[0100] Specific examples

[0101] For example, if the user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant, the following will explain the situation.

[0102] 1. The user enters "Current location: Tokyo, Preference: Italian, Past history: Restaurant A, Restaurant B" into a smartphone app.

[0103] 2. The device sends this information to the server.

[0104] 3. The server narrows down the search results for "Italian restaurants" from the database and extracts Restaurants C and D, which are not included in the past history.

[0105] 4. The server calculates the distance to restaurant C and restaurant D and calculates the estimated arrival time (ETA) as 14:30 and 14:35, respectively.

[0106] 5. The server obtains the current traffic congestion situation using the traffic information API and confirms that the predicted arrival time will be delayed by 5 minutes.

[0107] 6. The server recalculates and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0108] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0109] 8. The server sends this information to the terminal, and the terminal displays, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0110] In this way, users can easily check the recommended restaurants and the best reservation times and complete the reservation.

[0111] Prompt Sentence Examples

[0112] Current location: Tokyo (latitude: 35.6895, longitude: 139.6917), preference: Italian, past history: Restaurant A, Restaurant B

[0113] keyword

[0114] Generative AI model, prompt sentence

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

[0116] Step 1:

[0117] Entering and retrieving user information

[0118] The user inputs their current location, preferences, and past history information into a smartphone app.

[0119] Input: User's current location (e.g., latitude 35.6895, longitude 139.6917), preferences (e.g., Italian), past history information (e.g., Restaurant A, Restaurant B)

[0120] Output: User information stored in the device's memory

[0121] What happens: A user opens the app, enters the required information, and clicks the submit button.

[0122] Step 2:

[0123] Sending user information

[0124] The device sends the acquired user information to the server as an API request.

[0125] Input: User information stored in the device's memory

[0126] Output: Data sent via API request to the server

[0127] Specific operation: The terminal generates an HTTP request and sends it to the server. The request format is as follows:

[0128] json

[0129] {

[0130] "location": {"latitude": 35.6895, "longitude": 139.6917},

[0131] "preferences": "Italian",

[0132] "history": ["Restaurant A", "Restaurant B"]

[0133] }

[0134] Step 3:

[0135] Filtering and retrieving restaurant information

[0136] The server queries an internal database to retrieve restaurant information that matches the user's preferences and filters out restaurants that the user has not visited before.

[0137] Input: User information sent to the server

[0138] Output: Filtered list of restaurants

[0139] Specific operation: The server executes an SQL query to extract restaurants in the "Italian" category and lists "Restaurant C" and "Restaurant D" that are not included in the historical information.

[0140] Step 4:

[0141] Estimated Time of Arrival (ETA) calculation

[0142] The server uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant.

[0143] Input: filtered list of restaurants, user's current location

[0144] Output: ETA for each restaurant

[0145] Specific operation: The server uses geographic information system (GIS) technology to calculate the ETA for each restaurant based on the travel distance and travel speed (e.g., Restaurant C's ETA is 14:30, Restaurant D's ETA is 14:35).

[0146] Step 5:

[0147] Get real-time traffic information and ETA updates

[0148] The server calls the real-time traffic information API to get the current traffic conditions and recalculate the ETA.

[0149] Input: ETA for each restaurant

[0150] Output: Updated ETA

[0151] Specific operation: The server calls the traffic information API and recalculates the ETA based on the traffic data obtained. For example, if there is a 5-minute delay, the ETA for Restaurant C is updated to 14:35 and the ETA for Restaurant D is updated to 14:40.

[0152] Step 6:

[0153] Calculating and suggesting new appointment times

[0154] The server calculates and proposes a new appointment time based on the updated ETA.

[0155] Input: Updated ETA

[0156] Output: Recommended new appointment time

[0157] What happens: The server adds a 10-minute buffer to each ETA and suggests reservation times of 14:45 at Restaurant C and 14:50 at Restaurant D.

[0158] Step 7:

[0159] Notification and display of results

[0160] The server sends the recommended restaurant, predicted arrival time and new reservation time to the terminal, which displays them to the user.

[0161] Inputs: Recommended restaurant, predicted arrival time, new reservation time

[0162] Output: What the user is notified and shown

[0163] Specific operation: The server compiles the information and sends it to the device. The device receives it and displays to the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0164] keyword:

[0165] Generative AI model, prompt sentence

[0166] (Application example 1)

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

[0168] Conventional restaurant recommendation systems have not provided sufficient convenience for users to find the best restaurant and make a reservation while on the go. They also lacked the functionality to optimize arrival times and reservation times by reflecting real-time traffic information. Furthermore, even when users on the go place a delivery order, efficient suggestions and adjustments to reservation times were not made, resulting in a decline in user satisfaction.

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

[0170] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending candidate information; means for acquiring real-time traffic information and calculating the user's predicted arrival time; means for suggesting adjusting the reservation time based on the calculated predicted arrival time; and means for the user to complete a delivery order on a digital device. This allows users to easily use the most suitable restaurant or delivery service even when they are out. Furthermore, optimizing the predicted arrival time and reservation time improves user convenience and satisfaction.

[0171] "User preferences" is information that indicates a user's tendency to prefer particular types of cuisine or restaurants.

[0172] "Location information" is data that indicates the geographic coordinates and address of the user's current location.

[0173] "Past usage history" refers to records of restaurants the user has previously visited and dishes they have ordered.

[0174] "Means for recommending candidate information" is a function that suggests appropriate restaurants and delivery services based on the user's preferences, location information, and past usage history.

[0175] "Real-time traffic information" refers to the most recent data showing current traffic conditions and congestion information.

[0176] The "means for calculating the predicted arrival time" is a function that calculates the time it takes to arrive at the destination based on the user's location information and real-time traffic information.

[0177] The "means for proposing adjustment of reservation time" is a function that proposes an appropriate reservation time that will allow the user to arrive smoothly based on the calculated predicted arrival time.

[0178] "Digital devices" refers to electronic devices such as smartphones, tablets, and personal computers.

[0179] A "means for completing a delivery order" is a feature that allows a user to order food and / or drinks for delivery using a digital device.

[0180] This invention provides a system that allows users to easily recommend restaurants and make reservations even when they are out. It is also used to optimize delivery orders. Specific embodiments are described below.

[0181] First, a user uses a digital device such as a smartphone to input information about their current location and food preferences into the application, which is then sent from the device to a server.

[0182] The server processes the transaction using the following methods:

[0183] 1. A means of obtaining user preferences, location information, and past usage history to recommend candidate information:

[0184] The server identifies candidate restaurants and delivery services from its internal database based on the user's preferences, location, and past usage history, filtering out new restaurants that the user has not used before.

[0185] 2. A means to obtain real-time traffic information and calculate the user's predicted arrival time:

[0186] For the candidate restaurants, the server calculates the estimated time of arrival (ETA) from the user's current location to each restaurant. This calculation uses GPS and GIS (geographic information system). In addition, it utilizes a real-time traffic information API to obtain current traffic conditions and recalculate the ETA based on this.

[0187] 3. A method to suggest adjustments to reservation times based on the calculated predicted arrival time:

[0188] The server then proposes a reservation time based on the recalculated ETA that allows the user to arrive with ample time to spare, for example, by adding a certain buffer time to the ETA.

[0189] 4. How users can complete delivery orders on digital devices:

[0190] It provides an interface for completing orders from recommended restaurants and delivery services via digital devices such as smartphones, allowing users to easily place delivery orders even when they are out and about.

[0191] For example, suppose a user is in Tokyo and is looking for Italian food. Here's an example of a specific prompt:

[0192] Current location: Tokyo, Food preference: Italian, Past usage history: Restaurant A and Restaurant B, Real-time traffic updates: Yes, Delivery options: Select, Recommended reservation time: Please suggest.

[0193] The server receives this prompt and uses the above methods to recommend the best restaurant and reservation time, and notifies the user. This allows users to easily find the best restaurant and make a reservation or delivery order at any time, even while they're out and about. Furthermore, by utilizing real-time traffic information, the system can optimize estimated arrival times and reservation times, improving user convenience and satisfaction.

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

[0195] Step 1:

[0196] The user launches the smartphone application and inputs their current location and food preferences. This involves using the GPS sensor to obtain location information, and then filling out a form to input the user's preferences (e.g., Italian food, Japanese food, etc.) and past usage history. This data is packaged in JSON format and sent from the device to the server as an API request.

[0197] Step 2:

[0198] The server analyzes the received API request and extracts the user's preferences, location, and past restaurant history. It then queries an internal database based on this information to retrieve matching restaurant candidates. It then filters out restaurants that the user has not visited before from the query results to generate a target list.

[0199] Step 3:

[0200] The server then obtains the location information of each restaurant based on the filtered list of candidate restaurants and calculates the estimated time of arrival (ETA) from the user's current location to each restaurant using a geographic information system (GIS) and routing algorithms to calculate the ETA based on the travel distance and estimated travel time.

[0201] Step 4:

[0202] The server calls the real-time traffic information API to retrieve current traffic data. This traffic information reflects the latest road conditions, including congestion and traffic disruptions. Based on the traffic information, the server recalculates the ETA to each candidate restaurant and updates it, taking traffic delays into account.

[0203] Step 5:

[0204] Based on the updated ETA, the server adjusts and suggests a reservation time that allows the user to arrive with ample time to spare. Specifically, the server sets a reservation time that adds a certain buffer time (e.g., 10 minutes) to the calculated ETA and recommends this to the user.

[0205] Step 6:

[0206] The server sends the recommended restaurants, along with the estimated arrival time and new reservation time, to the device. The device analyzes the received information and displays it to the user. Based on this information, the user can select the most suitable restaurant and confirm the reservation.

[0207] Step 7:

[0208] If the user desires delivery service, the server provides an option to complete a delivery order through the interface of the digital device. When the user selects a delivery order, the server retrieves delivery details, calculates estimated delivery time and fee information, and presents it to the user.

[0209] Step 8:

[0210] Finally, the reservation or delivery order is confirmed at the restaurant selected by the user, and the server sends a confirmation notification to the device. The device then authenticates and updates the user's order status in real time. This process allows users to easily make the best dining choice while on the go, and smoothly complete the reservation or delivery order.

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

[0212] The system of the present invention is an advanced automated restaurant recommendation and reservation system to assist users in planning meals when out. The system takes into account the user's current location, preferences, past usage history, real-time traffic information, and even the user's emotions to recommend the most suitable restaurant and suggest an appropriate reservation time.

[0213] First, the device inputs or acquires the user's current location information (obtained using the GPS function), food preferences (e.g., Italian food, Japanese food, etc.), and past usage history (e.g., Restaurant A, Restaurant B), and then activates an emotion engine to grasp the user's emotions. The emotion engine recognizes emotions from the user's voice and facial expressions, for example.

[0214] Once this information is collected, the device sends it to the server as an API request. The server then retrieves restaurant information that matches the user's preferences from its internal database based on the received user information and emotion data. The server then adjusts the recommendation level based on the user's emotion. For example, if the user is in the mood to relax, restaurants with a quiet and calm atmosphere will be prioritized.

[0215] The server filters restaurants that match your preferences but are not included in your past visits, including adjustments based on your visit history, preferences, and emotions.

[0216] Based on the filtered restaurant location information, the server uses a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, then calls a real-time traffic information API to obtain the current traffic conditions and recalculate the ETA taking the traffic information into account.

[0217] The server will suggest a new reservation time based on the recalculated ETA, taking into account the user's emotions. For example, if you are in a hurry, it will prioritize restaurants with a shorter arrival time.

[0218] Finally, the server sends the recommended restaurant information (name, address), updated ETA, and new reservation time to the terminal, which displays the information to the user. The user can confirm the selected restaurant and new reservation time and confirm the reservation if necessary.

[0219] Specific examples

[0220] For example, consider a scenario where a user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is searching for an Italian restaurant. Furthermore, the emotion engine determines that the user is feeling stressed.

[0221] 1. The user enters their current location, food preferences, and past usage history into the smartphone app. The emotion engine recognizes that the user is feeling stressed based on their facial expressions and voice.

[0222] 2. The device sends this data to the server.

[0223] 3. The server narrows down the Italian restaurants in the database and extracts Restaurant C and Restaurant D, which have a quiet and relaxing atmosphere.

[0224] 4. The server calculates the distance to restaurant C and restaurant D and calculates the ETAs to be 14:30 and 14:35, respectively.

[0225] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that the ETA will be delayed by 5 minutes.

[0226] 6. The server recalculates the ETAs and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0227] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0228] 8. The server sends this information to the terminal, and the terminal notifies the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0229] In this way, users are supported with recommendations and reservations for restaurants that are optimally tailored to their emotions.

[0230] The processing flow will be explained below.

[0231] Step 1:

[0232] The user logs into the app on their device and inputs their current location (obtained via GPS), food preferences (e.g., Italian), and past usage history (e.g., Restaurant A, Restaurant B). The emotion engine then activates, recognizing emotions (e.g., stress) from the user's facial expressions and voice.

[0233] Step 2:

[0234] The device sends an API request including the user's input data and emotion data to the server.

[0235] Step 3:

[0236] Based on the received user information and emotion data, the server retrieves restaurant information that matches the user's preferences from an internal database. For example, Italian restaurants are selected as candidates.

[0237] Step 4:

[0238] Based on the restaurant information acquired by the server, it compares it with the user's past usage history and filters out restaurants that the user has not visited before. For example, restaurants C and D remain as candidates.

[0239] Step 5:

[0240] The server considers the user's emotional data and prioritizes restaurants with a quiet and calm atmosphere if the user wants to relax. This determines the priority of the recommended restaurants.

[0241] Step 6:

[0242] The server uses the filtered restaurant location information (latitude and longitude) and uses a geocode API to calculate the distance from the user's current location to each restaurant.

[0243] Step 7:

[0244] The server calculates the estimated time of arrival (ETA) for each restaurant using a hypothetical average travel speed (e.g., 40 km / h assuming travel by car). For example, the ETA for restaurant C is calculated as 14:30, and the ETA for restaurant D is calculated as 14:35.

[0245] Step 8:

[0246] The server calls the real-time traffic information API to obtain current traffic information (traffic congestion, etc.).

[0247] Step 9:

[0248] The server recalculates the ETA for each restaurant based on the traffic information it obtains. For example, if the arrival time is delayed by 5 minutes due to traffic congestion, the ETA for Restaurant C will be updated to 14:35 and the ETA for Restaurant D will be updated to 14:40.

[0249] Step 10:

[0250] Based on the recalculated ETA, the server proposes a new reservation time that allows the user to arrive with enough time to make the reservation. For example, add a 10-minute buffer to the recalculated ETA, and set the reservation times for Restaurant C at 14:45 and Restaurant D at 14:50.

[0251] Step 11:

[0252] The server sends information to the terminal, including the suggested restaurant information (name, address), the updated ETA, and the new reservation time.

[0253] Step 12:

[0254] The terminal displays the received information to the user, notifying them that "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0255] Step 13:

[0256] The user reviews the notification and confirms or modifies the booking if necessary, and completes the booking process if the booking can be confirmed directly within the system.

[0257] Example 2

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

[0259] Conventional restaurant recommendation and reservation systems only recommend restaurants based on user preferences, location information, and past usage history, and are limited to calculating predicted arrival times using real-time traffic information. As a result, they are unable to make fine adjustments based on the user's emotions and moods, making it difficult to provide optimal reservation suggestions. They also lack the flexibility to respond to changes in traffic information.

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

[0261] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending restaurants, means for acquiring real-time traffic information and calculating the user's predicted arrival time, means for analyzing the acquired user's emotions and adjusting the recommendation level of the recommended restaurant, and means for recalculating the predicted arrival time based on the real-time traffic information and suggesting adjusting the reservation time. This makes it possible to recommend optimal restaurants and suggest reservations taking into account the user's emotions and the latest traffic information.

[0262] "User preferences" refer to the individual tastes and preferences that a user has for particular types of cuisine or restaurants.

[0263] "Location information" is data indicating the user's current location, and is latitude and longitude information obtained using the GPS function.

[0264] "Past usage history" refers to a record of restaurants the user has previously visited and services they have used.

[0265] "Real-time traffic information" refers to the latest data on current road conditions and traffic volume, obtained through the traffic information API.

[0266] The "means for adjusting the recommendation level of recommended restaurants" refers to a method or technology for changing the priority of restaurants recommended to a user based on the acquired emotional data of the user.

[0267] The "Estimated Arrival Time (ETA)" is the estimated time it will take for the user to arrive at the specified restaurant from their current location, and is calculated taking into account factors such as traffic conditions.

[0268] A "means for suggesting an adjustment to a reservation time" refers to a system or technology that suggests the optimal time for a user to make a restaurant reservation based on the calculated predicted arrival time.

[0269] The system of the present invention is an advanced system that automates restaurant recommendations and reservations to assist users in planning meals when out. This system takes into account the user's current location, preferences, past usage history, real-time traffic information, and even the user's emotions to recommend optimal restaurants and suggest appropriate reservation times. Specific embodiments of the present invention are described below.

[0270] First, the user launches the system's application using a device such as a smartphone or tablet. The device is equipped with a GPS function, which acquires the user's current location information (latitude and longitude) in real time. Next, the user enters their food preferences (e.g., Italian or Japanese cuisine) and past restaurant history (e.g., Restaurant A, Restaurant B) into the application.

[0271] Furthermore, this embodiment is equipped with an emotion engine, and the device uses a camera and microphone to collect data on the user's facial expressions and voice, allowing the emotion engine to analyze the user's emotions (e.g., relaxation, stress) and acquire that information.

[0272] The device sends the collected location information, food preferences, past usage history, and emotional data to the server as an API request. The server is equipped with a database and advanced algorithms for analyzing user information. Based on the received data, the server retrieves restaurant information that matches the user's preferences from its internal database. At that time, it adjusts the recommendation level based on the user's emotional data. For example, if the user is in the mood to relax, restaurants with a quiet and calm atmosphere will be prioritized.

[0273] The server then filters restaurants that match the user's preferences but are not included in the user's past visit history. This filtering includes adjustments based on the user's visit history, preferences, and emotions. Based on the filtered restaurant location information, the server utilizes a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant. It then calls a real-time traffic information API to obtain current traffic conditions and recalculate the ETA taking traffic information into account.

[0274] The server then proposes a new reservation time based on the recalculated ETA. The server also takes the user's feelings into consideration. For example, if the user is in a hurry, it will prioritize restaurants with a shorter arrival time. Finally, the server sends the recommended restaurant information (name, address), the updated ETA, and the new reservation time to the device, which then displays the information to the user. The user can then confirm the selected restaurant and the new reservation time, and confirm the reservation if necessary.

[0275] As a concrete example, the following shows a situation where the user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant, which further stresses the user.

[0276] 1. The user enters their current location, food preferences, and past usage history into the smartphone app. The emotion engine recognizes that the user is feeling stressed based on their facial expressions and voice.

[0277] 2. The device sends this data to the server.

[0278] 3. The server narrows down the Italian restaurants in the database and extracts Restaurant C and Restaurant D, which have a quiet and relaxing atmosphere.

[0279] 4. The server calculates the distance to restaurant C and restaurant D and calculates the ETAs to be 14:30 and 14:35, respectively.

[0280] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that the ETA will be delayed by 5 minutes.

[0281] 6. The server recalculates the ETAs and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0282] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0283] 8. The server sends this information to the terminal, and the terminal notifies the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0284] An example of a prompt is as follows:

[0285] "If a user is stressed and looking for a quiet Italian restaurant, suggest a restaurant reservation based on estimated arrival time and traffic information to their destination."

[0286] As described above, the system of the present invention makes it possible to recommend optimal restaurants and suggest reservations while taking into account the user's emotions and the latest traffic information.

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

[0288] Step 1: Enter and collect user data

[0289] Subject: User (Device)

[0290] Specific behavior:

[0291] The user launches the application using a device such as a smartphone or tablet. Current location information (latitude and longitude) is automatically obtained using the GPS function. The user also enters their food preferences (e.g., Italian or Japanese cuisine) and past restaurant history (e.g., Restaurant A, Restaurant B) into the application. The device's built-in camera and microphone are then activated to collect the user's facial expressions and voice data. The emotion engine analyzes this data and recognizes the user's emotions (e.g., relaxed, stressed).

[0292] Input: Current location information, food preferences, past usage history, facial expression data, voice data

[0293] Data processing: Obtaining starting position information and collecting and analyzing user-input data

[0294] Output: User data (location, food preferences, past usage history, emotional data)

[0295] Step 2: Send data to the server

[0296] Subject: Device

[0297] Specific behavior:

[0298] The device sends the collected location information, food preferences, past usage history, and emotional data to the server as a single API request, which also includes the user ID and a timestamp.

[0299] Input: User data (location, food preferences, past usage history, emotional data)

[0300] Data processing: Bulk transmission of user data

[0301] Output: API request (user data including user ID and timestamp)

[0302] Step 3: Analyze and filter user data

[0303] Subject: Server

[0304] Specific behavior:

[0305] The server analyzes the received user data and retrieves restaurant information that matches the user's preferences from an internal database. It then adjusts the recommendation level based on the user's emotional data. For example, if the user wants to relax, it will prioritize restaurants with a quiet and calm atmosphere. It also filters out restaurants that match the user's preferences but are not included in the user's past usage history.

[0306] Input: API request, internal database

[0307] Data processing: data analysis, database access, recommendation adjustment, filtering

[0308] Output: A list of matching restaurants

[0309] Step 4: Calculate the Estimated Time of Arrival (ETA)

[0310] Subject: Server

[0311] Specific behavior:

[0312] The server uses the filtered restaurant location information and utilizes GIS to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, then calls a real-time traffic information API to obtain the current traffic conditions and recalculate the ETA taking the traffic information into account.

[0313] Input: Matching restaurant list, user location, real-time traffic information API

[0314] Data processing: location information processing, ETA calculation, traffic information reflection

[0315] Output: Latest ETA list

[0316] Step 5: Propose an appointment time

[0317] Subject: Server

[0318] Specific behavior:

[0319] The server then proposes a new reservation time based on the recalculated ETA. This process also takes into account the user's emotional data. For example, if you are in a hurry, it will prioritize restaurants with a shorter arrival time. The proposed reservation time and restaurant information are compiled.

[0320] Input: Latest ETA list, matching restaurant list, sentiment data

[0321] Data processing: appointment time suggestions, information integration

[0322] Output: Recommended restaurant information, recommended reservation times

[0323] Step 6: Notify the user and confirm the reservation

[0324] Subject: Server

[0325] Specific behavior:

[0326] The server sends the recommended restaurant information (name, address), updated ETA, and suggested reservation time to the device. The device receives this and notifies the user. The user reviews the suggestions and, if appropriate, clicks the "Confirm Reservation" button to confirm the reservation.

[0327] Input: Recommended restaurant information, recommended reservation time

[0328] Data processing: information transmission, user interface display

[0329] Output: Reservation confirmation data

[0330] (Application example 2)

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

[0332] Currently, many food delivery services only consider the user's location and food preferences when making deliveries. However, the quality of the user experience can be improved if the system can select the most suitable delivery partner and restaurant by taking into account the user's emotional state and real-time traffic conditions. Furthermore, there is a need to improve the accuracy of predicted arrival times and adjust the user environment according to the user's emotional state, but current systems do not achieve this.

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

[0334] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending restaurants, means for acquiring real-time traffic information and calculating the user's predicted arrival time, means for suggesting adjustment of the reservation time based on the calculated predicted arrival time, means for recognizing the user's emotions and filtering recommended restaurants, and means for considering the user's mental state when suggesting an appropriate reservation time. This makes it possible to provide an optimal food delivery service that takes into account the user's emotional state and real-time traffic conditions.

[0335] "User preferences" refers to a user's tendency to prefer particular foods or types of cuisine, as well as particular restaurants or environments.

[0336] "Location information" is data that indicates a user's current location and previously visited locations obtained using GPS or other location measurement technologies.

[0337] "Past usage history" refers to records of restaurants the user has previously visited, menu items they have ordered, and services they have used.

[0338] "Real-time traffic information" refers to the latest data on current road conditions and traffic flow.

[0339] "Predicted arrival time" refers to the estimated travel time to your destination calculated based on your current location and real-time traffic information.

[0340] "Adjusting the reservation time" is the act of setting an appropriate reservation start time based on the estimated time until the user arrives.

[0341] "User emotion" refers to the user's current mental state detected from voice, facial expression, and other biometric information.

[0342] A "means for filtering suggested restaurants" is a method for narrowing down restaurant options based on a user's preferences, emotions, and past usage history.

[0343] "Suggesting an appropriate reservation time" refers to the act of recommending the most suitable reservation time in consideration of the user's estimated arrival time and emotions.

[0344] "Considering the state of mind" means tailoring services and recommendations to the user's current mental and emotional state.

[0345] This invention is a system that automates restaurant recommendations and reservations to assist users in meal planning while they are out or at home. This system comprehensively considers the user's location information, food preferences, past usage history, real-time traffic information, and user emotions to recommend optimal restaurants and adjust reservation times.

[0346] First, the user uses a device (such as a smartphone app) to input information such as their current location, preferences, and past usage history. The device also has an emotion engine that recognizes emotions from the user's voice and facial expressions. This information is sent to the server as an API request.

[0347] The server retrieves candidate restaurant information from an internal database based on the received user preferences, location information, and past usage history. The retrieved restaurant list is filtered based on the user's emotional state. Specifically, if the user is relaxed, restaurants with a quiet and calm atmosphere are prioritized.

[0348] Next, the server uses a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant. It then uses a real-time traffic information API to obtain current traffic conditions and recalculate the ETA. Based on the new ETA, the server suggests an appropriate reservation time.

[0349] As a specific example of processing, consider the case where the following prompt is entered:

[0350] (Example of a prompt)

[0351] user_location = {'latitude': 35.6895, 'longitude': 139.6917}

[0352] food_preference = 'Italian'

[0353] usage_history = ['Restaurant A', 'Restaurant B']

[0354] user_emotion = 'relaxed'

[0355] The server receives this information and first searches its internal database for Italian restaurants, filtering out restaurants the user has not used before. Since the user is relaxing, restaurants with quiet environments are recommended. It then uses GIS and traffic information APIs to calculate the ETA to each restaurant and suggests an appropriate reservation time.

[0356] The hardware and software used include a smartphone or tablet with emotion recognition capabilities on the client side, a real-time traffic information API, GIS, a database management system (DBMS) on the server side, and a web server (e.g., Nginx or Apache) to process API requests.

[0357] This configuration makes it possible to recommend optimal restaurants based on the user's preferences and emotions, and to suggest reservation times that take real-time traffic information into account.

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

[0359] Step 1:

[0360] Users use the device to input their current location, food preferences, and past usage history, and the device's emotion engine also acquires emotional information from the user's voice and facial expressions.

[0361] How it works: The user provides their location information on a smartphone app, selects whether they prefer Italian food, and inputs the restaurants they have visited in the past (e.g., Restaurant A, Restaurant B). The emotion engine then recognizes the user's emotion (e.g., relaxed).

[0362] Input: User's current location, food preferences, past usage history, emotional information

[0363] Output: API request format data (user information)

[0364] Step 2:

[0365] The device sends this information to the server as an API request.

[0366] Specific operation: The terminal compiles user information and sends it to the server.

[0367] Input: User information (current location, food preferences, usage history, emotions)

[0368] Output: API request received on the server side

[0369] Step 3:

[0370] The server retrieves candidate restaurant information from an internal database based on the received user preferences, location information, and past usage history.

[0371] What happens: The server executes a database query to retrieve a list of restaurants that match the preferences.

[0372] Input: User information

[0373] Output: List of candidate restaurants

[0374] Step 4:

[0375] The server filters recommended restaurants based on the user's emotional information.

[0376] Specific operation: The server filters restaurants that offer a quiet environment based on emotional information.

[0377] Input: List of candidate restaurants, user's emotional information

[0378] Output: Filtered list of restaurants

[0379] Step 5:

[0380] The server uses GIS to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant.

[0381] Specific operation: The server uses GIS to calculate the predicted arrival time and obtains the ETA for each restaurant.

[0382] Input: filtered restaurant list, current location

[0383] Output: ETA information for each restaurant

[0384] Step 6:

[0385] The server uses the real-time traffic information API to get the current traffic conditions and calculate the ETA again.

[0386] Specific operation: The server calls the traffic information API and recalculates the ETA to reflect traffic conditions.

[0387] Input: Initial ETA information, real-time traffic information

[0388] Output: Updated ETA information

[0389] Step 7:

[0390] The server will suggest an appropriate reservation time based on the recalculated ETA.

[0391] Specific operation: The server sets and proposes a reservation start time based on the updated ETA.

[0392] Input: Updated ETA information

[0393] Output: Proposed appointment time

[0394] Step 8:

[0395] Finally, the server sends the recommended restaurant information, the new ETA, and the proposed reservation time to the terminal, which displays them to the user.

[0396] Specific operation: The server sends information to the terminal, and the terminal notifies the user.

[0397] Inputs: Restaurant information, new ETA, suggested reservation time

[0398] Output: Information displayed on the user's device

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

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

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

[0402] [Second embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0415] The system of the present invention is an automated restaurant recommendation and reservation system to assist users in meal planning for when they are out. The system utilizes the user's current location, preferences, past visit history, and real-time traffic information to recommend suitable restaurants and adjust / suggest reservation times based on the user's estimated time of arrival (ETA).

[0416] Specifically, the device first inputs or retrieves the user's current location, food preferences (e.g., Italian or Japanese cuisine), and restaurant history. This information is then sent from the device to the server as an API request.

[0417] Based on the received user information, the server retrieves restaurant information that matches the user's preferences from its internal database and filters out restaurants that the user has not visited before. This filtering includes an analysis of the user's food preferences and past history.

[0418] The server then uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, using Geographic Information System (GIS) techniques to calculate the ETA based on the user's travel distance and speed.

[0419] The server then calls the real-time traffic information API to obtain the current traffic conditions. Based on this information, it recalculates the ETA to each restaurant and updates the estimated arrival time, taking into account traffic delays such as congestion.

[0420] The server then calculates and proposes a new appointment time based on the updated ETA that allows the user ample time to arrive, for example by adding a 10-minute buffer to the calculated ETA.

[0421] Finally, the server compiles this information (recommended restaurant, predicted arrival time, new reservation time) and sends it to the terminal, which receives it and displays it to the user. This allows the user to receive a notification about the recommended restaurant and its reservation time, and easily complete the reservation.

[0422] Specific examples

[0423] For example, suppose a user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant.

[0424] 1. The user enters "Current location: Tokyo, Food preference: Italian, Past usage history: Restaurant A, Restaurant B" into the smartphone app.

[0425] 2. The device sends this information to the server.

[0426] 3. The server narrows down the search for "Italian restaurants" from the database and extracts restaurants C and D, which are not included in past history.

[0427] 4. The server calculates the distance to restaurant C and restaurant D and calculates the estimated arrival time (ETA) for each as 14:30 and 14:35, respectively.

[0428] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that this will delay the predicted arrival time by 5 minutes.

[0429] 6. The server recalculates and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0430] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0431] 8. The server sends this information to the terminal, which then displays the message, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0432] In this way, users can easily view the recommended restaurants and the best reservation times and complete the reservation.

[0433] The processing flow will be explained below.

[0434] Step 1:

[0435] The user logs into the app on their device and inputs their current location (obtained using the GPS function), food preferences (e.g., Italian), and past usage history (e.g., Restaurant A, Restaurant B).

[0436] Step 2:

[0437] The device sends the input information to the server as an API request, including the user's current location, food preferences, and past usage history.

[0438] Step 3:

[0439] Based on the user information received by the server, restaurant information that matches the user's preferences is retrieved from an internal database.

[0440] Step 4:

[0441] The server compares the restaurant information it has acquired with past usage history and filters out restaurants that the user has not visited before. For example, restaurants C and D remain as candidates.

[0442] Step 5:

[0443] The server uses the filtered restaurant location information (latitude and longitude) to calculate the distance from the user's current location to each restaurant using a geocode API or similar.

[0444] Step 6:

[0445] The server calculates the estimated time of arrival (ETA) for each restaurant using a hypothetical average travel speed (e.g., 40 km / h assuming travel by car). For example, the ETA for restaurant C is calculated as 14:30, and the ETA for restaurant D is calculated as 14:35.

[0446] Step 7:

[0447] The server calls a real-time traffic information API (for example, a traffic information service) and obtains current traffic information (such as traffic congestion).

[0448] Step 8:

[0449] The server recalculates the ETA for each restaurant based on the traffic information it obtains. For example, if the arrival time is delayed by 5 minutes due to traffic congestion, the ETA for Restaurant C will be updated to 14:35 and the ETA for Restaurant D will be updated to 14:40.

[0450] Step 9:

[0451] The server calculates new reservation times based on the updated ETA, allowing the user ample time to arrive. For example, add a 10-minute buffer to the recalculated ETA, setting the reservation times for Restaurant C at 14:45 and Restaurant D at 14:50.

[0452] Step 10:

[0453] The server sends information to the device, including the recommended restaurant information (name, address), the updated ETA, and the new reservation time.

[0454] Step 11:

[0455] The terminal displays the received information to the user, notifying them that "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0456] Step 12:

[0457] The user reviews the notification and confirms or modifies the booking if necessary, and completes the booking process if the booking can be confirmed directly within the system.

[0458] Example 1

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

[0460] In modern society, finding a suitable restaurant when going out can be difficult. Adjusting reservation times to accommodate traffic conditions and travel time can also be time-consuming. This can lead to users missing their reservation due to being unable to arrive on time. A system that can solve these problems and improve users' outing experiences is needed.

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

[0462] In this invention, the server includes means for acquiring a user's preferences, location information, and history information and recommending restaurants, means for acquiring real-time movement information and calculating a predicted arrival time of the user, means for suggesting adjustment of a reservation time based on the calculated predicted arrival time, and means for filtering restaurants that match the user's preferences and that the user has not visited in the past. This allows the user to quickly and easily find a suitable restaurant when going out, and allows the user to arrive on schedule by adjusting the reservation time according to traffic conditions.

[0463] "User preferences" refers to the preferences that a user has for a particular type of food or cuisine.

[0464] "Location information" is information that indicates the user's current geographical location. It is often expressed using latitude and longitude.

[0465] "History information" refers to records of restaurants that a user has visited in the past and the dates and times of those visits.

[0466] "Eating and drinking establishments" are establishments that serve food and beverages, including restaurants and cafes.

[0467] "Real-time travel information" is the latest data on current traffic conditions and travel times.

[0468] The "estimated arrival time" is the calculated time it will take for the user to arrive at the restaurant, which is the destination, from the user's current location.

[0469] "Adjusting reservation time" is the process of changing or suggesting a time that a user has reserved based on the user's situation and traffic information.

[0470] "Filtering" is the process of selecting data based on specific conditions and eliminating unnecessary data.

[0471] A "server" is a computer system that receives requests from users, processes them, and returns the results.

[0472] An "API request" is a request for data made through an application program interface.

[0473] The system of the present invention is an automated recommendation and reservation system for streamlining dining plans for users when out and about. The system utilizes the user's current location, preferences, history information, and real-time movement information to recommend appropriate restaurants and adjust / suggest reservation times based on the user's predicted arrival time.

[0474] Specifically, the device first obtains the user's current location, preferences (e.g., Italian or Japanese cuisine), and past visit history. This information is then sent from the device to the server as an API request. The HTTP communication protocol is used for this.

[0475] Based on the received user information, the server retrieves restaurant information that matches the user's preferences from its internal database and further filters out restaurants that the user has not visited before, thereby providing the user with new options.

[0476] The server then uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, using Geographic Information System (GIS) technology to calculate the ETA based on the user's travel distance and speed.

[0477] The server then calls a real-time travel information API to obtain current traffic conditions. Based on this information, the server recalculates the ETA to each restaurant and updates the estimated arrival time, taking into account traffic delays such as congestion. For example, the traffic information API provides data such as the current road congestion situation and predicted delay times.

[0478] The server then calculates and proposes a new appointment time based on the updated ETA, ensuring the user arrives on time by adding a certain buffer (e.g., 10 minutes) to the calculated ETA.

[0479] Finally, the server compiles this information (recommended restaurants, predicted arrival time, new reservation time) and sends it to the terminal. The terminal displays the received information to the user, allowing the user to check the recommended restaurants and the optimal reservation time and easily complete the reservation.

[0480] Specific examples

[0481] For example, if the user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant, the following will explain the situation.

[0482] 1. The user enters "Current location: Tokyo, Preference: Italian, Past history: Restaurant A, Restaurant B" into a smartphone app.

[0483] 2. The device sends this information to the server.

[0484] 3. The server narrows down the search results for "Italian restaurants" from the database and extracts Restaurants C and D, which are not included in the past history.

[0485] 4. The server calculates the distance to restaurant C and restaurant D and calculates the estimated arrival time (ETA) as 14:30 and 14:35, respectively.

[0486] 5. The server obtains the current traffic congestion situation using the traffic information API and confirms that the predicted arrival time will be delayed by 5 minutes.

[0487] 6. The server recalculates and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0488] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0489] 8. The server sends this information to the terminal, and the terminal displays, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0490] In this way, users can easily check the recommended restaurants and the best reservation times and complete the reservation.

[0491] Prompt Sentence Examples

[0492] Current location: Tokyo (latitude: 35.6895, longitude: 139.6917), preference: Italian, past history: Restaurant A, Restaurant B

[0493] keyword

[0494] Generative AI model, prompt sentence

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

[0496] Step 1:

[0497] Entering and retrieving user information

[0498] The user inputs their current location, preferences, and past history information into a smartphone app.

[0499] Input: User's current location (e.g., latitude 35.6895, longitude 139.6917), preferences (e.g., Italian), past history information (e.g., Restaurant A, Restaurant B)

[0500] Output: User information stored in the device's memory

[0501] What happens: A user opens the app, enters the required information, and clicks the submit button.

[0502] Step 2:

[0503] Sending user information

[0504] The device sends the acquired user information to the server as an API request.

[0505] Input: User information stored in the device's memory

[0506] Output: Data sent via API request to the server

[0507] Specific operation: The terminal generates an HTTP request and sends it to the server. The request format is as follows:

[0508] json

[0509] {

[0510] "location": {"latitude": 35.6895, "longitude": 139.6917},

[0511] "preferences": "Italian",

[0512] "history": ["Restaurant A", "Restaurant B"]

[0513] }

[0514] Step 3:

[0515] Filtering and retrieving restaurant information

[0516] The server queries an internal database to retrieve restaurant information that matches the user's preferences and filters out restaurants that the user has not visited before.

[0517] Input: User information sent to the server

[0518] Output: Filtered list of restaurants

[0519] Specific operation: The server executes an SQL query to extract restaurants in the "Italian" category and lists "Restaurant C" and "Restaurant D" that are not included in the historical information.

[0520] Step 4:

[0521] Estimated Time of Arrival (ETA) calculation

[0522] The server uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant.

[0523] Input: filtered list of restaurants, user's current location

[0524] Output: ETA for each restaurant

[0525] Specific operation: The server uses geographic information system (GIS) technology to calculate the ETA for each restaurant based on the travel distance and travel speed (e.g., Restaurant C's ETA is 14:30, Restaurant D's ETA is 14:35).

[0526] Step 5:

[0527] Get real-time traffic information and ETA updates

[0528] The server calls the real-time traffic information API to get the current traffic conditions and recalculate the ETA.

[0529] Input: ETA for each restaurant

[0530] Output: Updated ETA

[0531] Specific operation: The server calls the traffic information API and recalculates the ETA based on the traffic data obtained. For example, if there is a 5-minute delay, the ETA for Restaurant C is updated to 14:35 and the ETA for Restaurant D is updated to 14:40.

[0532] Step 6:

[0533] Calculating and suggesting new appointment times

[0534] The server calculates and proposes a new appointment time based on the updated ETA.

[0535] Input: Updated ETA

[0536] Output: Recommended new appointment time

[0537] What happens: The server adds a 10-minute buffer to each ETA and suggests reservation times of 14:45 at Restaurant C and 14:50 at Restaurant D.

[0538] Step 7:

[0539] Notification and display of results

[0540] The server sends the recommended restaurant, predicted arrival time and new reservation time to the terminal, which displays them to the user.

[0541] Inputs: Recommended restaurant, predicted arrival time, new reservation time

[0542] Output: What the user is notified and shown

[0543] Specific operation: The server compiles the information and sends it to the device. The device receives it and displays to the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0544] keyword:

[0545] Generative AI model, prompt sentence

[0546] (Application example 1)

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

[0548] Conventional restaurant recommendation systems have not provided sufficient convenience for users to find the best restaurant and make a reservation while on the go. They also lacked the functionality to optimize arrival times and reservation times by reflecting real-time traffic information. Furthermore, even when users on the go place a delivery order, efficient suggestions and adjustments to reservation times were not made, resulting in a decline in user satisfaction.

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

[0550] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending candidate information; means for acquiring real-time traffic information and calculating the user's predicted arrival time; means for suggesting adjusting the reservation time based on the calculated predicted arrival time; and means for the user to complete a delivery order on a digital device. This allows users to easily use the most suitable restaurant or delivery service even when they are out. Furthermore, optimizing the predicted arrival time and reservation time improves user convenience and satisfaction.

[0551] "User preferences" is information that indicates a user's tendency to prefer particular types of cuisine or restaurants.

[0552] "Location information" is data that indicates the geographic coordinates and address of the user's current location.

[0553] "Past usage history" refers to records of restaurants the user has previously visited and dishes they have ordered.

[0554] "Means for recommending candidate information" is a function that suggests appropriate restaurants and delivery services based on the user's preferences, location information, and past usage history.

[0555] "Real-time traffic information" refers to the most recent data showing current traffic conditions and congestion information.

[0556] The "means for calculating the predicted arrival time" is a function that calculates the time it takes to arrive at the destination based on the user's location information and real-time traffic information.

[0557] The "means for proposing adjustment of reservation time" is a function that proposes an appropriate reservation time that will allow the user to arrive smoothly based on the calculated predicted arrival time.

[0558] "Digital devices" refers to electronic devices such as smartphones, tablets, and personal computers.

[0559] A "means for completing a delivery order" is a feature that allows a user to order food and / or drinks for delivery using a digital device.

[0560] This invention provides a system that allows users to easily recommend restaurants and make reservations even when they are out. It is also used to optimize delivery orders. Specific embodiments are described below.

[0561] First, a user uses a digital device such as a smartphone to input information about their current location and food preferences into the application, which is then sent from the device to a server.

[0562] The server processes the transaction using the following methods:

[0563] 1. A means of obtaining user preferences, location information, and past usage history to recommend candidate information:

[0564] The server identifies candidate restaurants and delivery services from its internal database based on the user's preferences, location, and past usage history, filtering out new restaurants that the user has not used before.

[0565] 2. A means to obtain real-time traffic information and calculate the user's predicted arrival time:

[0566] For the candidate restaurants, the server calculates the estimated time of arrival (ETA) from the user's current location to each restaurant. This calculation uses GPS and GIS (geographic information system). In addition, it utilizes a real-time traffic information API to obtain current traffic conditions and recalculate the ETA based on this.

[0567] 3. A method to suggest adjustments to reservation times based on the calculated predicted arrival time:

[0568] The server then proposes a reservation time based on the recalculated ETA that allows the user to arrive with ample time to spare, for example, by adding a certain buffer time to the ETA.

[0569] 4. How users can complete delivery orders on digital devices:

[0570] It provides an interface for completing orders from recommended restaurants and delivery services via digital devices such as smartphones, allowing users to easily place delivery orders even when they are out and about.

[0571] For example, suppose a user is in Tokyo and is looking for Italian food. Here's an example of a specific prompt:

[0572] Current location: Tokyo, Food preference: Italian, Past usage history: Restaurant A and Restaurant B, Real-time traffic updates: Yes, Delivery options: Select, Recommended reservation time: Please suggest.

[0573] The server receives this prompt and uses the above methods to recommend the best restaurant and reservation time, and notifies the user. This allows users to easily find the best restaurant and make a reservation or delivery order at any time, even while they're out and about. Furthermore, by utilizing real-time traffic information, the system can optimize estimated arrival times and reservation times, improving user convenience and satisfaction.

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

[0575] Step 1:

[0576] The user launches the smartphone application and inputs their current location and food preferences. This involves using the GPS sensor to obtain location information, and then filling out a form to input the user's preferences (e.g., Italian food, Japanese food, etc.) and past usage history. This data is packaged in JSON format and sent from the device to the server as an API request.

[0577] Step 2:

[0578] The server analyzes the received API request and extracts the user's preferences, location, and past restaurant history. It then queries an internal database based on this information to retrieve matching restaurant candidates. It then filters out restaurants that the user has not visited before from the query results to generate a target list.

[0579] Step 3:

[0580] The server then obtains the location information of each restaurant based on the filtered list of candidate restaurants and calculates the estimated time of arrival (ETA) from the user's current location to each restaurant using a geographic information system (GIS) and routing algorithms to calculate the ETA based on the travel distance and estimated travel time.

[0581] Step 4:

[0582] The server calls the real-time traffic information API to retrieve current traffic data. This traffic information reflects the latest road conditions, including congestion and traffic disruptions. Based on the traffic information, the server recalculates the ETA to each candidate restaurant and updates it, taking traffic delays into account.

[0583] Step 5:

[0584] Based on the updated ETA, the server adjusts and suggests a reservation time that allows the user to arrive with ample time to spare. Specifically, the server sets a reservation time that adds a certain buffer time (e.g., 10 minutes) to the calculated ETA and recommends this to the user.

[0585] Step 6:

[0586] The server sends the recommended restaurants, along with the estimated arrival time and new reservation time, to the device. The device analyzes the received information and displays it to the user. Based on this information, the user can select the most suitable restaurant and confirm the reservation.

[0587] Step 7:

[0588] If the user desires delivery service, the server provides an option to complete a delivery order through the interface of the digital device. When the user selects a delivery order, the server retrieves delivery details, calculates estimated delivery time and fee information, and presents it to the user.

[0589] Step 8:

[0590] Finally, the reservation or delivery order is confirmed at the restaurant selected by the user, and the server sends a confirmation notification to the device. The device then authenticates and updates the user's order status in real time. This process allows users to easily make the best dining choice while on the go, and smoothly complete the reservation or delivery order.

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

[0592] The system of the present invention is an advanced automated restaurant recommendation and reservation system to assist users in planning meals when out. The system takes into account the user's current location, preferences, past usage history, real-time traffic information, and even the user's emotions to recommend the most suitable restaurant and suggest an appropriate reservation time.

[0593] First, the device inputs or acquires the user's current location information (obtained using the GPS function), food preferences (e.g., Italian food, Japanese food, etc.), and past usage history (e.g., Restaurant A, Restaurant B), and then activates an emotion engine to grasp the user's emotions. The emotion engine recognizes emotions from the user's voice and facial expressions, for example.

[0594] Once this information is collected, the device sends it to the server as an API request. The server then retrieves restaurant information that matches the user's preferences from its internal database based on the received user information and emotion data. The server then adjusts the recommendation level based on the user's emotion. For example, if the user is in the mood to relax, restaurants with a quiet and calm atmosphere will be prioritized.

[0595] The server filters restaurants that match your preferences but are not included in your past visits, including adjustments based on your visit history, preferences, and emotions.

[0596] Based on the filtered restaurant location information, the server uses a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, then calls a real-time traffic information API to obtain the current traffic conditions and recalculate the ETA taking the traffic information into account.

[0597] The server will suggest a new reservation time based on the recalculated ETA, taking into account the user's emotions. For example, if you are in a hurry, it will prioritize restaurants with a shorter arrival time.

[0598] Finally, the server sends the recommended restaurant information (name, address), updated ETA, and new reservation time to the terminal, which displays the information to the user. The user can confirm the selected restaurant and new reservation time and confirm the reservation if necessary.

[0599] Specific examples

[0600] For example, consider a scenario where a user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is searching for an Italian restaurant. Furthermore, the emotion engine determines that the user is feeling stressed.

[0601] 1. The user enters their current location, food preferences, and past usage history into the smartphone app. The emotion engine recognizes that the user is feeling stressed based on their facial expressions and voice.

[0602] 2. The device sends this data to the server.

[0603] 3. The server narrows down the Italian restaurants in the database and extracts Restaurant C and Restaurant D, which have a quiet and relaxing atmosphere.

[0604] 4. The server calculates the distance to restaurant C and restaurant D and calculates the ETAs to be 14:30 and 14:35, respectively.

[0605] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that the ETA will be delayed by 5 minutes.

[0606] 6. The server recalculates the ETAs and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0607] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0608] 8. The server sends this information to the terminal, and the terminal notifies the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0609] In this way, users are supported with recommendations and reservations for restaurants that are optimally tailored to their emotions.

[0610] The processing flow will be explained below.

[0611] Step 1:

[0612] The user logs into the app on their device and inputs their current location (obtained via GPS), food preferences (e.g., Italian), and past usage history (e.g., Restaurant A, Restaurant B). The emotion engine then activates, recognizing emotions (e.g., stress) from the user's facial expressions and voice.

[0613] Step 2:

[0614] The device sends an API request including the user's input data and emotion data to the server.

[0615] Step 3:

[0616] Based on the received user information and emotion data, the server retrieves restaurant information that matches the user's preferences from an internal database. For example, Italian restaurants are selected as candidates.

[0617] Step 4:

[0618] Based on the restaurant information acquired by the server, it compares it with the user's past usage history and filters out restaurants that the user has not visited before. For example, restaurants C and D remain as candidates.

[0619] Step 5:

[0620] The server considers the user's emotional data and prioritizes restaurants with a quiet and calm atmosphere if the user wants to relax. This determines the priority of the recommended restaurants.

[0621] Step 6:

[0622] The server uses the filtered restaurant location information (latitude and longitude) and uses a geocode API to calculate the distance from the user's current location to each restaurant.

[0623] Step 7:

[0624] The server calculates the estimated time of arrival (ETA) for each restaurant using a hypothetical average travel speed (e.g., 40 km / h assuming travel by car). For example, the ETA for restaurant C is calculated as 14:30, and the ETA for restaurant D is calculated as 14:35.

[0625] Step 8:

[0626] The server calls the real-time traffic information API to obtain current traffic information (traffic congestion, etc.).

[0627] Step 9:

[0628] The server recalculates the ETA for each restaurant based on the traffic information it obtains. For example, if the arrival time is delayed by 5 minutes due to traffic congestion, the ETA for Restaurant C will be updated to 14:35 and the ETA for Restaurant D will be updated to 14:40.

[0629] Step 10:

[0630] Based on the recalculated ETA, the server proposes a new reservation time that allows the user to arrive with enough time to make the reservation. For example, add a 10-minute buffer to the recalculated ETA, and set the reservation times for Restaurant C at 14:45 and Restaurant D at 14:50.

[0631] Step 11:

[0632] The server sends information to the terminal, including the suggested restaurant information (name, address), the updated ETA, and the new reservation time.

[0633] Step 12:

[0634] The terminal displays the received information to the user, notifying them that "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0635] Step 13:

[0636] The user reviews the notification and confirms or modifies the booking if necessary, and completes the booking process if the booking can be confirmed directly within the system.

[0637] Example 2

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

[0639] Conventional restaurant recommendation and reservation systems only recommend restaurants based on user preferences, location information, and past usage history, and are limited to calculating predicted arrival times using real-time traffic information. As a result, they are unable to make fine adjustments based on the user's emotions and moods, making it difficult to provide optimal reservation suggestions. They also lack the flexibility to respond to changes in traffic information.

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

[0641] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending restaurants, means for acquiring real-time traffic information and calculating the user's predicted arrival time, means for analyzing the acquired user's emotions and adjusting the recommendation level of the recommended restaurant, and means for recalculating the predicted arrival time based on the real-time traffic information and suggesting adjusting the reservation time. This makes it possible to recommend optimal restaurants and suggest reservations taking into account the user's emotions and the latest traffic information.

[0642] "User preferences" refer to the individual tastes and preferences that a user has for particular types of cuisine or restaurants.

[0643] "Location information" is data indicating the user's current location, and is latitude and longitude information obtained using the GPS function.

[0644] "Past usage history" refers to a record of restaurants the user has previously visited and services they have used.

[0645] "Real-time traffic information" refers to the latest data on current road conditions and traffic volume, obtained through the traffic information API.

[0646] The "means for adjusting the recommendation level of recommended restaurants" refers to a method or technology for changing the priority of restaurants recommended to a user based on the acquired emotional data of the user.

[0647] The "Estimated Arrival Time (ETA)" is the estimated time it will take for the user to arrive at the specified restaurant from their current location, and is calculated taking into account factors such as traffic conditions.

[0648] A "means for suggesting an adjustment to a reservation time" refers to a system or technology that suggests the optimal time for a user to make a restaurant reservation based on the calculated predicted arrival time.

[0649] The system of the present invention is an advanced system that automates restaurant recommendations and reservations to assist users in planning meals when out. This system takes into account the user's current location, preferences, past usage history, real-time traffic information, and even the user's emotions to recommend optimal restaurants and suggest appropriate reservation times. Specific embodiments of the present invention are described below.

[0650] First, the user launches the system's application using a device such as a smartphone or tablet. The device is equipped with a GPS function, which acquires the user's current location information (latitude and longitude) in real time. Next, the user enters their food preferences (e.g., Italian or Japanese cuisine) and past restaurant history (e.g., Restaurant A, Restaurant B) into the application.

[0651] Furthermore, this embodiment is equipped with an emotion engine, and the device uses a camera and microphone to collect data on the user's facial expressions and voice, allowing the emotion engine to analyze the user's emotions (e.g., relaxation, stress) and acquire that information.

[0652] The device sends the collected location information, food preferences, past usage history, and emotional data to the server as an API request. The server is equipped with a database and advanced algorithms for analyzing user information. Based on the received data, the server retrieves restaurant information that matches the user's preferences from its internal database. At that time, it adjusts the recommendation level based on the user's emotional data. For example, if the user is in the mood to relax, restaurants with a quiet and calm atmosphere will be prioritized.

[0653] The server then filters restaurants that match the user's preferences but are not included in the user's past visit history. This filtering includes adjustments based on the user's visit history, preferences, and emotions. Based on the filtered restaurant location information, the server utilizes a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant. It then calls a real-time traffic information API to obtain current traffic conditions and recalculate the ETA taking traffic information into account.

[0654] The server then proposes a new reservation time based on the recalculated ETA. The server also takes the user's feelings into consideration. For example, if the user is in a hurry, it will prioritize restaurants with a shorter arrival time. Finally, the server sends the recommended restaurant information (name, address), the updated ETA, and the new reservation time to the device, which then displays the information to the user. The user can then confirm the selected restaurant and the new reservation time, and confirm the reservation if necessary.

[0655] As a concrete example, the following shows a situation where the user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant, which further stresses the user.

[0656] 1. The user enters their current location, food preferences, and past usage history into the smartphone app. The emotion engine recognizes that the user is feeling stressed based on their facial expressions and voice.

[0657] 2. The device sends this data to the server.

[0658] 3. The server narrows down the Italian restaurants in the database and extracts Restaurant C and Restaurant D, which have a quiet and relaxing atmosphere.

[0659] 4. The server calculates the distance to restaurant C and restaurant D and calculates the ETAs to be 14:30 and 14:35, respectively.

[0660] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that the ETA will be delayed by 5 minutes.

[0661] 6. The server recalculates the ETAs and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0662] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0663] 8. The server sends this information to the terminal, and the terminal notifies the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0664] An example of a prompt is as follows:

[0665] "If a user is stressed and looking for a quiet Italian restaurant, suggest a restaurant reservation based on estimated arrival time and traffic information to their destination."

[0666] As described above, the system of the present invention makes it possible to recommend optimal restaurants and suggest reservations while taking into account the user's emotions and the latest traffic information.

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

[0668] Step 1: Enter and collect user data

[0669] Subject: User (Device)

[0670] Specific behavior:

[0671] The user launches the application using a device such as a smartphone or tablet. Current location information (latitude and longitude) is automatically obtained using the GPS function. The user also enters their food preferences (e.g., Italian or Japanese cuisine) and past restaurant history (e.g., Restaurant A, Restaurant B) into the application. The device's built-in camera and microphone are then activated to collect the user's facial expressions and voice data. The emotion engine analyzes this data and recognizes the user's emotions (e.g., relaxed, stressed).

[0672] Input: Current location information, food preferences, past usage history, facial expression data, voice data

[0673] Data processing: Obtaining starting position information and collecting and analyzing user-input data

[0674] Output: User data (location, food preferences, past usage history, emotional data)

[0675] Step 2: Send data to the server

[0676] Subject: Device

[0677] Specific behavior:

[0678] The device sends the collected location information, food preferences, past usage history, and emotional data to the server as a single API request, which also includes the user ID and a timestamp.

[0679] Input: User data (location, food preferences, past usage history, emotional data)

[0680] Data processing: Bulk transmission of user data

[0681] Output: API request (user data including user ID and timestamp)

[0682] Step 3: Analyze and filter user data

[0683] Subject: Server

[0684] Specific behavior:

[0685] The server analyzes the received user data and retrieves restaurant information that matches the user's preferences from an internal database. It then adjusts the recommendation level based on the user's emotional data. For example, if the user wants to relax, it will prioritize restaurants with a quiet and calm atmosphere. It also filters out restaurants that match the user's preferences but are not included in the user's past usage history.

[0686] Input: API request, internal database

[0687] Data processing: data analysis, database access, recommendation adjustment, filtering

[0688] Output: A list of matching restaurants

[0689] Step 4: Calculate the Estimated Time of Arrival (ETA)

[0690] Subject: Server

[0691] Specific behavior:

[0692] The server uses the filtered restaurant location information and utilizes GIS to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, then calls a real-time traffic information API to obtain the current traffic conditions and recalculate the ETA taking the traffic information into account.

[0693] Input: Matching restaurant list, user location, real-time traffic information API

[0694] Data processing: location information processing, ETA calculation, traffic information reflection

[0695] Output: Latest ETA list

[0696] Step 5: Propose an appointment time

[0697] Subject: Server

[0698] Specific behavior:

[0699] The server then proposes a new reservation time based on the recalculated ETA. This process also takes into account the user's emotional data. For example, if you are in a hurry, it will prioritize restaurants with a shorter arrival time. The proposed reservation time and restaurant information are compiled.

[0700] Input: Latest ETA list, matching restaurant list, sentiment data

[0701] Data processing: appointment time suggestions, information integration

[0702] Output: Recommended restaurant information, recommended reservation times

[0703] Step 6: Notify the user and confirm the reservation

[0704] Subject: Server

[0705] Specific behavior:

[0706] The server sends the recommended restaurant information (name, address), updated ETA, and suggested reservation time to the device. The device receives this and notifies the user. The user reviews the suggestions and, if appropriate, clicks the "Confirm Reservation" button to confirm the reservation.

[0707] Input: Recommended restaurant information, recommended reservation time

[0708] Data processing: information transmission, user interface display

[0709] Output: Reservation confirmation data

[0710] (Application example 2)

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

[0712] Currently, many food delivery services only consider the user's location and food preferences when making deliveries. However, the quality of the user experience can be improved if the system can select the most suitable delivery partner and restaurant by taking into account the user's emotional state and real-time traffic conditions. Furthermore, there is a need to improve the accuracy of predicted arrival times and adjust the user environment according to the user's emotional state, but current systems do not achieve this.

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

[0714] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending restaurants, means for acquiring real-time traffic information and calculating the user's predicted arrival time, means for suggesting adjustment of the reservation time based on the calculated predicted arrival time, means for recognizing the user's emotions and filtering recommended restaurants, and means for considering the user's mental state when suggesting an appropriate reservation time. This makes it possible to provide an optimal food delivery service that takes into account the user's emotional state and real-time traffic conditions.

[0715] "User preferences" refers to a user's tendency to prefer particular foods or types of cuisine, as well as particular restaurants or environments.

[0716] "Location information" is data that indicates a user's current location and previously visited locations obtained using GPS or other location measurement technologies.

[0717] "Past usage history" refers to records of restaurants the user has previously visited, menu items they have ordered, and services they have used.

[0718] "Real-time traffic information" refers to the latest data on current road conditions and traffic flow.

[0719] "Predicted arrival time" refers to the estimated travel time to your destination calculated based on your current location and real-time traffic information.

[0720] "Adjusting the reservation time" is the act of setting an appropriate reservation start time based on the estimated time until the user arrives.

[0721] "User emotion" refers to the user's current mental state detected from voice, facial expression, and other biometric information.

[0722] A "means for filtering suggested restaurants" is a method for narrowing down restaurant options based on a user's preferences, emotions, and past usage history.

[0723] "Suggesting an appropriate reservation time" refers to the act of recommending the most suitable reservation time in consideration of the user's estimated arrival time and emotions.

[0724] "Considering the state of mind" means tailoring services and recommendations to the user's current mental and emotional state.

[0725] This invention is a system that automates restaurant recommendations and reservations to assist users in meal planning while they are out or at home. This system comprehensively considers the user's location information, food preferences, past usage history, real-time traffic information, and user emotions to recommend optimal restaurants and adjust reservation times.

[0726] First, the user uses a device (such as a smartphone app) to input information such as their current location, preferences, and past usage history. The device also has an emotion engine that recognizes emotions from the user's voice and facial expressions. This information is sent to the server as an API request.

[0727] The server retrieves candidate restaurant information from an internal database based on the received user preferences, location information, and past usage history. The retrieved restaurant list is filtered based on the user's emotional state. Specifically, if the user is relaxed, restaurants with a quiet and calm atmosphere are prioritized.

[0728] Next, the server uses a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant. It then uses a real-time traffic information API to obtain current traffic conditions and recalculate the ETA. Based on the new ETA, the server suggests an appropriate reservation time.

[0729] As a specific example of processing, consider the case where the following prompt is entered:

[0730] (Example of a prompt)

[0731] user_location = {'latitude': 35.6895, 'longitude': 139.6917}

[0732] food_preference = 'Italian'

[0733] usage_history = ['Restaurant A', 'Restaurant B']

[0734] user_emotion = 'relaxed'

[0735] The server receives this information and first searches its internal database for Italian restaurants, filtering out restaurants the user has not used before. Since the user is relaxing, restaurants with quiet environments are recommended. It then uses GIS and traffic information APIs to calculate the ETA to each restaurant and suggests an appropriate reservation time.

[0736] The hardware and software used include a smartphone or tablet with emotion recognition capabilities on the client side, a real-time traffic information API, GIS, a database management system (DBMS) on the server side, and a web server (e.g., Nginx or Apache) to process API requests.

[0737] This configuration makes it possible to recommend optimal restaurants based on the user's preferences and emotions, and to suggest reservation times that take real-time traffic information into account.

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

[0739] Step 1:

[0740] Users use the device to input their current location, food preferences, and past usage history, and the device's emotion engine also acquires emotional information from the user's voice and facial expressions.

[0741] How it works: The user provides their location information on a smartphone app, selects whether they prefer Italian food, and inputs the restaurants they have visited in the past (e.g., Restaurant A, Restaurant B). The emotion engine then recognizes the user's emotion (e.g., relaxed).

[0742] Input: User's current location, food preferences, past usage history, emotional information

[0743] Output: API request format data (user information)

[0744] Step 2:

[0745] The device sends this information to the server as an API request.

[0746] Specific operation: The terminal compiles user information and sends it to the server.

[0747] Input: User information (current location, food preferences, usage history, emotions)

[0748] Output: API request received on the server side

[0749] Step 3:

[0750] The server retrieves candidate restaurant information from an internal database based on the received user preferences, location information, and past usage history.

[0751] What happens: The server executes a database query to retrieve a list of restaurants that match the preferences.

[0752] Input: User information

[0753] Output: List of candidate restaurants

[0754] Step 4:

[0755] The server filters recommended restaurants based on the user's emotional information.

[0756] Specific operation: The server filters restaurants that offer a quiet environment based on emotional information.

[0757] Input: List of candidate restaurants, user's emotional information

[0758] Output: Filtered list of restaurants

[0759] Step 5:

[0760] The server uses GIS to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant.

[0761] Specific operation: The server uses GIS to calculate the predicted arrival time and obtains the ETA for each restaurant.

[0762] Input: filtered restaurant list, current location

[0763] Output: ETA information for each restaurant

[0764] Step 6:

[0765] The server uses the real-time traffic information API to get the current traffic conditions and calculate the ETA again.

[0766] Specific operation: The server calls the traffic information API and recalculates the ETA to reflect traffic conditions.

[0767] Input: Initial ETA information, real-time traffic information

[0768] Output: Updated ETA information

[0769] Step 7:

[0770] The server will suggest an appropriate reservation time based on the recalculated ETA.

[0771] Specific operation: The server sets and proposes a reservation start time based on the updated ETA.

[0772] Input: Updated ETA information

[0773] Output: Proposed appointment time

[0774] Step 8:

[0775] Finally, the server sends the recommended restaurant information, the new ETA, and the proposed reservation time to the terminal, which displays them to the user.

[0776] Specific operation: The server sends information to the terminal, and the terminal notifies the user.

[0777] Inputs: Restaurant information, new ETA, suggested reservation time

[0778] Output: Information displayed on the user's device

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

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

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

[0782] [Third embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0795] The system of the present invention is an automated restaurant recommendation and reservation system to assist users in meal planning for when they are out. The system utilizes the user's current location, preferences, past visit history, and real-time traffic information to recommend suitable restaurants and adjust / suggest reservation times based on the user's estimated time of arrival (ETA).

[0796] Specifically, the device first inputs or retrieves the user's current location, food preferences (e.g., Italian or Japanese cuisine), and restaurant history. This information is then sent from the device to the server as an API request.

[0797] Based on the received user information, the server retrieves restaurant information that matches the user's preferences from its internal database and filters out restaurants that the user has not visited before. This filtering includes an analysis of the user's food preferences and past history.

[0798] The server then uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, using Geographic Information System (GIS) techniques to calculate the ETA based on the user's travel distance and speed.

[0799] The server then calls the real-time traffic information API to obtain the current traffic conditions. Based on this information, it recalculates the ETA to each restaurant and updates the estimated arrival time, taking into account traffic delays such as congestion.

[0800] The server then calculates and proposes a new appointment time based on the updated ETA that allows the user ample time to arrive, for example by adding a 10-minute buffer to the calculated ETA.

[0801] Finally, the server compiles this information (recommended restaurant, predicted arrival time, new reservation time) and sends it to the terminal, which receives it and displays it to the user. This allows the user to receive a notification about the recommended restaurant and its reservation time, and easily complete the reservation.

[0802] Specific examples

[0803] For example, suppose a user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant.

[0804] 1. The user enters "Current location: Tokyo, Food preference: Italian, Past usage history: Restaurant A, Restaurant B" into the smartphone app.

[0805] 2. The device sends this information to the server.

[0806] 3. The server narrows down the search for "Italian restaurants" from the database and extracts restaurants C and D, which are not included in past history.

[0807] 4. The server calculates the distance to restaurant C and restaurant D and calculates the estimated arrival time (ETA) for each as 14:30 and 14:35, respectively.

[0808] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that this will delay the predicted arrival time by 5 minutes.

[0809] 6. The server recalculates and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0810] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0811] 8. The server sends this information to the terminal, which then displays the message, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0812] In this way, users can easily view the recommended restaurants and the best reservation times and complete the reservation.

[0813] The processing flow will be explained below.

[0814] Step 1:

[0815] The user logs into the app on their device and inputs their current location (obtained using the GPS function), food preferences (e.g., Italian), and past usage history (e.g., Restaurant A, Restaurant B).

[0816] Step 2:

[0817] The device sends the input information to the server as an API request, including the user's current location, food preferences, and past usage history.

[0818] Step 3:

[0819] Based on the user information received by the server, restaurant information that matches the user's preferences is retrieved from an internal database.

[0820] Step 4:

[0821] The server compares the restaurant information it has acquired with past usage history and filters out restaurants that the user has not visited before. For example, restaurants C and D remain as candidates.

[0822] Step 5:

[0823] The server uses the filtered restaurant location information (latitude and longitude) to calculate the distance from the user's current location to each restaurant using a geocode API or similar.

[0824] Step 6:

[0825] The server calculates the estimated time of arrival (ETA) for each restaurant using a hypothetical average travel speed (e.g., 40 km / h assuming travel by car). For example, the ETA for restaurant C is calculated as 14:30, and the ETA for restaurant D is calculated as 14:35.

[0826] Step 7:

[0827] The server calls a real-time traffic information API (for example, a traffic information service) and obtains current traffic information (such as traffic congestion).

[0828] Step 8:

[0829] The server recalculates the ETA for each restaurant based on the traffic information it obtains. For example, if the arrival time is delayed by 5 minutes due to traffic congestion, the ETA for Restaurant C will be updated to 14:35 and the ETA for Restaurant D will be updated to 14:40.

[0830] Step 9:

[0831] The server calculates new reservation times based on the updated ETA, allowing the user ample time to arrive. For example, add a 10-minute buffer to the recalculated ETA, setting the reservation times for Restaurant C at 14:45 and Restaurant D at 14:50.

[0832] Step 10:

[0833] The server sends information to the device, including the recommended restaurant information (name, address), the updated ETA, and the new reservation time.

[0834] Step 11:

[0835] The terminal displays the received information to the user, notifying them that "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0836] Step 12:

[0837] The user reviews the notification and confirms or modifies the booking if necessary, and completes the booking process if the booking can be confirmed directly within the system.

[0838] Example 1

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

[0840] In modern society, finding a suitable restaurant when going out can be difficult. Adjusting reservation times to accommodate traffic conditions and travel time can also be time-consuming. This can lead to users missing their reservation due to being unable to arrive on time. A system that can solve these problems and improve users' outing experiences is needed.

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

[0842] In this invention, the server includes means for acquiring a user's preferences, location information, and history information and recommending restaurants, means for acquiring real-time movement information and calculating a predicted arrival time of the user, means for suggesting adjustment of a reservation time based on the calculated predicted arrival time, and means for filtering restaurants that match the user's preferences and that the user has not visited in the past. This allows the user to quickly and easily find a suitable restaurant when going out, and allows the user to arrive on schedule by adjusting the reservation time according to traffic conditions.

[0843] "User preferences" refers to the preferences that a user has for a particular type of food or cuisine.

[0844] "Location information" is information that indicates the user's current geographical location. It is often expressed using latitude and longitude.

[0845] "History information" refers to records of restaurants that a user has visited in the past and the dates and times of those visits.

[0846] "Eating and drinking establishments" are establishments that serve food and beverages, including restaurants and cafes.

[0847] "Real-time travel information" is the latest data on current traffic conditions and travel times.

[0848] The "estimated arrival time" is the calculated time it will take for the user to arrive at the restaurant, which is the destination, from the user's current location.

[0849] "Adjusting reservation time" is the process of changing or suggesting a time that a user has reserved based on the user's situation and traffic information.

[0850] "Filtering" is the process of selecting data based on specific conditions and eliminating unnecessary data.

[0851] A "server" is a computer system that receives requests from users, processes them, and returns the results.

[0852] An "API request" is a request for data made through an application program interface.

[0853] The system of the present invention is an automated recommendation and reservation system for streamlining dining plans for users when out and about. The system utilizes the user's current location, preferences, history information, and real-time movement information to recommend appropriate restaurants and adjust / suggest reservation times based on the user's predicted arrival time.

[0854] Specifically, the device first obtains the user's current location, preferences (e.g., Italian or Japanese cuisine), and past visit history. This information is then sent from the device to the server as an API request. The HTTP communication protocol is used for this.

[0855] Based on the received user information, the server retrieves restaurant information that matches the user's preferences from its internal database and further filters out restaurants that the user has not visited before, thereby providing the user with new options.

[0856] The server then uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, using Geographic Information System (GIS) technology to calculate the ETA based on the user's travel distance and speed.

[0857] The server then calls a real-time travel information API to obtain current traffic conditions. Based on this information, the server recalculates the ETA to each restaurant and updates the estimated arrival time, taking into account traffic delays such as congestion. For example, the traffic information API provides data such as the current road congestion situation and predicted delay times.

[0858] The server then calculates and proposes a new appointment time based on the updated ETA, ensuring the user arrives on time by adding a certain buffer (e.g., 10 minutes) to the calculated ETA.

[0859] Finally, the server compiles this information (recommended restaurants, predicted arrival time, new reservation time) and sends it to the terminal. The terminal displays the received information to the user, allowing the user to check the recommended restaurants and the optimal reservation time and easily complete the reservation.

[0860] Specific examples

[0861] For example, if the user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant, the following will explain the situation.

[0862] 1. The user enters "Current location: Tokyo, Preference: Italian, Past history: Restaurant A, Restaurant B" into a smartphone app.

[0863] 2. The device sends this information to the server.

[0864] 3. The server narrows down the search results for "Italian restaurants" from the database and extracts Restaurants C and D, which are not included in the past history.

[0865] 4. The server calculates the distance to restaurant C and restaurant D and calculates the estimated arrival time (ETA) as 14:30 and 14:35, respectively.

[0866] 5. The server obtains the current traffic congestion situation using the traffic information API and confirms that the predicted arrival time will be delayed by 5 minutes.

[0867] 6. The server recalculates and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0868] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0869] 8. The server sends this information to the terminal, and the terminal displays, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0870] In this way, users can easily check the recommended restaurants and the best reservation times and complete the reservation.

[0871] Prompt Sentence Examples

[0872] Current location: Tokyo (latitude: 35.6895, longitude: 139.6917), preference: Italian, past history: Restaurant A, Restaurant B

[0873] keyword

[0874] Generative AI model, prompt sentence

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

[0876] Step 1:

[0877] Entering and retrieving user information

[0878] The user inputs their current location, preferences, and past history information into a smartphone app.

[0879] Input: User's current location (e.g., latitude 35.6895, longitude 139.6917), preferences (e.g., Italian), past history information (e.g., Restaurant A, Restaurant B)

[0880] Output: User information stored in the device's memory

[0881] What happens: A user opens the app, enters the required information, and clicks the submit button.

[0882] Step 2:

[0883] Sending user information

[0884] The device sends the acquired user information to the server as an API request.

[0885] Input: User information stored in the device's memory

[0886] Output: Data sent via API request to the server

[0887] Specific operation: The terminal generates an HTTP request and sends it to the server. The request format is as follows:

[0888] json

[0889] {

[0890] "location": {"latitude": 35.6895, "longitude": 139.6917},

[0891] "preferences": "Italian",

[0892] "history": ["Restaurant A", "Restaurant B"]

[0893] }

[0894] Step 3:

[0895] Filtering and retrieving restaurant information

[0896] The server queries an internal database to retrieve restaurant information that matches the user's preferences and filters out restaurants that the user has not visited before.

[0897] Input: User information sent to the server

[0898] Output: Filtered list of restaurants

[0899] Specific operation: The server executes an SQL query to extract restaurants in the "Italian" category and lists "Restaurant C" and "Restaurant D" that are not included in the historical information.

[0900] Step 4:

[0901] Estimated Time of Arrival (ETA) calculation

[0902] The server uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant.

[0903] Input: filtered list of restaurants, user's current location

[0904] Output: ETA for each restaurant

[0905] Specific operation: The server uses geographic information system (GIS) technology to calculate the ETA for each restaurant based on the travel distance and travel speed (e.g., Restaurant C's ETA is 14:30, Restaurant D's ETA is 14:35).

[0906] Step 5:

[0907] Get real-time traffic information and ETA updates

[0908] The server calls the real-time traffic information API to get the current traffic conditions and recalculate the ETA.

[0909] Input: ETA for each restaurant

[0910] Output: Updated ETA

[0911] Specific operation: The server calls the traffic information API and recalculates the ETA based on the traffic data obtained. For example, if there is a 5-minute delay, the ETA for Restaurant C is updated to 14:35 and the ETA for Restaurant D is updated to 14:40.

[0912] Step 6:

[0913] Calculating and suggesting new appointment times

[0914] The server calculates and proposes a new appointment time based on the updated ETA.

[0915] Input: Updated ETA

[0916] Output: Recommended new appointment time

[0917] What happens: The server adds a 10-minute buffer to each ETA and suggests reservation times of 14:45 at Restaurant C and 14:50 at Restaurant D.

[0918] Step 7:

[0919] Notification and display of results

[0920] The server sends the recommended restaurant, predicted arrival time and new reservation time to the terminal, which displays them to the user.

[0921] Inputs: Recommended restaurant, predicted arrival time, new reservation time

[0922] Output: What the user is notified and shown

[0923] Specific operation: The server compiles the information and sends it to the device. The device receives it and displays to the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0924] keyword:

[0925] Generative AI model, prompt sentence

[0926] (Application example 1)

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

[0928] Conventional restaurant recommendation systems have not provided sufficient convenience for users to find the best restaurant and make a reservation while on the go. They also lacked the functionality to optimize arrival times and reservation times by reflecting real-time traffic information. Furthermore, even when users on the go place a delivery order, efficient suggestions and adjustments to reservation times were not made, resulting in a decline in user satisfaction.

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

[0930] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending candidate information; means for acquiring real-time traffic information and calculating the user's predicted arrival time; means for suggesting adjusting the reservation time based on the calculated predicted arrival time; and means for the user to complete a delivery order on a digital device. This allows users to easily use the most suitable restaurant or delivery service even when they are out. Furthermore, optimizing the predicted arrival time and reservation time improves user convenience and satisfaction.

[0931] "User preferences" is information that indicates a user's tendency to prefer particular types of cuisine or restaurants.

[0932] "Location information" is data that indicates the geographic coordinates and address of the user's current location.

[0933] "Past usage history" refers to records of restaurants the user has previously visited and dishes they have ordered.

[0934] "Means for recommending candidate information" is a function that suggests appropriate restaurants and delivery services based on the user's preferences, location information, and past usage history.

[0935] "Real-time traffic information" refers to the most recent data showing current traffic conditions and congestion information.

[0936] The "means for calculating the predicted arrival time" is a function that calculates the time it takes to arrive at the destination based on the user's location information and real-time traffic information.

[0937] The "means for proposing adjustment of reservation time" is a function that proposes an appropriate reservation time that will allow the user to arrive smoothly based on the calculated predicted arrival time.

[0938] "Digital devices" refers to electronic devices such as smartphones, tablets, and personal computers.

[0939] A "means for completing a delivery order" is a feature that allows a user to order food and / or drinks for delivery using a digital device.

[0940] This invention provides a system that allows users to easily recommend restaurants and make reservations even when they are out. It is also used to optimize delivery orders. Specific embodiments are described below.

[0941] First, a user uses a digital device such as a smartphone to input information about their current location and food preferences into the application, which is then sent from the device to a server.

[0942] The server processes the transaction using the following methods:

[0943] 1. A means of obtaining user preferences, location information, and past usage history to recommend candidate information:

[0944] The server identifies candidate restaurants and delivery services from its internal database based on the user's preferences, location, and past usage history, filtering out new restaurants that the user has not used before.

[0945] 2. A means to obtain real-time traffic information and calculate the user's predicted arrival time:

[0946] For the candidate restaurants, the server calculates the estimated time of arrival (ETA) from the user's current location to each restaurant. This calculation uses GPS and GIS (geographic information system). In addition, it utilizes a real-time traffic information API to obtain current traffic conditions and recalculate the ETA based on this.

[0947] 3. A method to suggest adjustments to reservation times based on the calculated predicted arrival time:

[0948] The server then proposes a reservation time based on the recalculated ETA that allows the user to arrive with ample time to spare, for example, by adding a certain buffer time to the ETA.

[0949] 4. How users can complete delivery orders on digital devices:

[0950] It provides an interface for completing orders from recommended restaurants and delivery services via digital devices such as smartphones, allowing users to easily place delivery orders even when they are out and about.

[0951] For example, suppose a user is in Tokyo and is looking for Italian food. Here's an example of a specific prompt:

[0952] Current location: Tokyo, Food preference: Italian, Past usage history: Restaurant A and Restaurant B, Real-time traffic updates: Yes, Delivery options: Select, Recommended reservation time: Please suggest.

[0953] The server receives this prompt and uses the above methods to recommend the best restaurant and reservation time, and notifies the user. This allows users to easily find the best restaurant and make a reservation or delivery order at any time, even while they're out and about. Furthermore, by utilizing real-time traffic information, the system can optimize estimated arrival times and reservation times, improving user convenience and satisfaction.

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

[0955] Step 1:

[0956] The user launches the smartphone application and inputs their current location and food preferences. This involves using the GPS sensor to obtain location information, and then filling out a form to input the user's preferences (e.g., Italian food, Japanese food, etc.) and past usage history. This data is packaged in JSON format and sent from the device to the server as an API request.

[0957] Step 2:

[0958] The server analyzes the received API request and extracts the user's preferences, location, and past restaurant history. It then queries an internal database based on this information to retrieve matching restaurant candidates. It then filters out restaurants that the user has not visited before from the query results to generate a target list.

[0959] Step 3:

[0960] The server then obtains the location information of each restaurant based on the filtered list of candidate restaurants and calculates the estimated time of arrival (ETA) from the user's current location to each restaurant using a geographic information system (GIS) and routing algorithms to calculate the ETA based on the travel distance and estimated travel time.

[0961] Step 4:

[0962] The server calls the real-time traffic information API to retrieve current traffic data. This traffic information reflects the latest road conditions, including congestion and traffic disruptions. Based on the traffic information, the server recalculates the ETA to each candidate restaurant and updates it, taking traffic delays into account.

[0963] Step 5:

[0964] Based on the updated ETA, the server adjusts and suggests a reservation time that allows the user to arrive with ample time to spare. Specifically, the server sets a reservation time that adds a certain buffer time (e.g., 10 minutes) to the calculated ETA and recommends this to the user.

[0965] Step 6:

[0966] The server sends the recommended restaurants, along with the estimated arrival time and new reservation time, to the device. The device analyzes the received information and displays it to the user. Based on this information, the user can select the most suitable restaurant and confirm the reservation.

[0967] Step 7:

[0968] If the user desires delivery service, the server provides an option to complete a delivery order through the interface of the digital device. When the user selects a delivery order, the server retrieves delivery details, calculates estimated delivery time and fee information, and presents it to the user.

[0969] Step 8:

[0970] Finally, the reservation or delivery order is confirmed at the restaurant selected by the user, and the server sends a confirmation notification to the device. The device then authenticates and updates the user's order status in real time. This process allows users to easily make the best dining choice while on the go, and smoothly complete the reservation or delivery order.

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

[0972] The system of the present invention is an advanced automated restaurant recommendation and reservation system to assist users in planning meals when out. The system takes into account the user's current location, preferences, past usage history, real-time traffic information, and even the user's emotions to recommend the most suitable restaurant and suggest an appropriate reservation time.

[0973] First, the device inputs or acquires the user's current location information (obtained using the GPS function), food preferences (e.g., Italian food, Japanese food, etc.), and past usage history (e.g., Restaurant A, Restaurant B), and then activates an emotion engine to grasp the user's emotions. The emotion engine recognizes emotions from the user's voice and facial expressions, for example.

[0974] Once this information is collected, the device sends it to the server as an API request. The server then retrieves restaurant information that matches the user's preferences from its internal database based on the received user information and emotion data. The server then adjusts the recommendation level based on the user's emotion. For example, if the user is in the mood to relax, restaurants with a quiet and calm atmosphere will be prioritized.

[0975] The server filters restaurants that match your preferences but are not included in your past visits, including adjustments based on your visit history, preferences, and emotions.

[0976] Based on the filtered restaurant location information, the server uses a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, then calls a real-time traffic information API to obtain the current traffic conditions and recalculate the ETA taking the traffic information into account.

[0977] The server will suggest a new reservation time based on the recalculated ETA, taking into account the user's emotions. For example, if you are in a hurry, it will prioritize restaurants with a shorter arrival time.

[0978] Finally, the server sends the recommended restaurant information (name, address), updated ETA, and new reservation time to the terminal, which displays the information to the user. The user can confirm the selected restaurant and new reservation time and confirm the reservation if necessary.

[0979] Specific examples

[0980] For example, consider a scenario where a user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is searching for an Italian restaurant. Furthermore, the emotion engine determines that the user is feeling stressed.

[0981] 1. The user enters their current location, food preferences, and past usage history into the smartphone app. The emotion engine recognizes that the user is feeling stressed based on their facial expressions and voice.

[0982] 2. The device sends this data to the server.

[0983] 3. The server narrows down the Italian restaurants in the database and extracts Restaurant C and Restaurant D, which have a quiet and relaxing atmosphere.

[0984] 4. The server calculates the distance to restaurant C and restaurant D and calculates the ETAs to be 14:30 and 14:35, respectively.

[0985] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that the ETA will be delayed by 5 minutes.

[0986] 6. The server recalculates the ETAs and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[0987] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[0988] 8. The server sends this information to the terminal, and the terminal notifies the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[0989] In this way, users are supported with recommendations and reservations for restaurants that are optimally tailored to their emotions.

[0990] The processing flow will be explained below.

[0991] Step 1:

[0992] The user logs into the app on their device and inputs their current location (obtained via GPS), food preferences (e.g., Italian), and past usage history (e.g., Restaurant A, Restaurant B). The emotion engine then activates, recognizing emotions (e.g., stress) from the user's facial expressions and voice.

[0993] Step 2:

[0994] The device sends an API request including the user's input data and emotion data to the server.

[0995] Step 3:

[0996] Based on the received user information and emotion data, the server retrieves restaurant information that matches the user's preferences from an internal database. For example, Italian restaurants are selected as candidates.

[0997] Step 4:

[0998] Based on the restaurant information acquired by the server, it compares it with the user's past usage history and filters out restaurants that the user has not visited before. For example, restaurants C and D remain as candidates.

[0999] Step 5:

[1000] The server considers the user's emotional data and prioritizes restaurants with a quiet and calm atmosphere if the user wants to relax. This determines the priority of the recommended restaurants.

[1001] Step 6:

[1002] The server uses the filtered restaurant location information (latitude and longitude) and uses a geocode API to calculate the distance from the user's current location to each restaurant.

[1003] Step 7:

[1004] The server calculates the estimated time of arrival (ETA) for each restaurant using a hypothetical average travel speed (e.g., 40 km / h assuming travel by car). For example, the ETA for restaurant C is calculated as 14:30, and the ETA for restaurant D is calculated as 14:35.

[1005] Step 8:

[1006] The server calls the real-time traffic information API to obtain current traffic information (traffic congestion, etc.).

[1007] Step 9:

[1008] The server recalculates the ETA for each restaurant based on the traffic information it obtains. For example, if the arrival time is delayed by 5 minutes due to traffic congestion, the ETA for Restaurant C will be updated to 14:35 and the ETA for Restaurant D will be updated to 14:40.

[1009] Step 10:

[1010] Based on the recalculated ETA, the server proposes a new reservation time that allows the user to arrive with enough time to make the reservation. For example, add a 10-minute buffer to the recalculated ETA, and set the reservation times for Restaurant C at 14:45 and Restaurant D at 14:50.

[1011] Step 11:

[1012] The server sends information to the terminal, including the suggested restaurant information (name, address), the updated ETA, and the new reservation time.

[1013] Step 12:

[1014] The terminal displays the received information to the user, notifying them that "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[1015] Step 13:

[1016] The user reviews the notification and confirms or modifies the booking if necessary, and completes the booking process if the booking can be confirmed directly within the system.

[1017] Example 2

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

[1019] Conventional restaurant recommendation and reservation systems only recommend restaurants based on user preferences, location information, and past usage history, and are limited to calculating predicted arrival times using real-time traffic information. As a result, they are unable to make fine adjustments based on the user's emotions and moods, making it difficult to provide optimal reservation suggestions. They also lack the flexibility to respond to changes in traffic information.

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

[1021] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending restaurants, means for acquiring real-time traffic information and calculating the user's predicted arrival time, means for analyzing the acquired user's emotions and adjusting the recommendation level of the recommended restaurant, and means for recalculating the predicted arrival time based on the real-time traffic information and suggesting adjusting the reservation time. This makes it possible to recommend optimal restaurants and suggest reservations taking into account the user's emotions and the latest traffic information.

[1022] "User preferences" refer to the individual tastes and preferences that a user has for particular types of cuisine or restaurants.

[1023] "Location information" is data indicating the user's current location, and is latitude and longitude information obtained using the GPS function.

[1024] "Past usage history" refers to a record of restaurants the user has previously visited and services they have used.

[1025] "Real-time traffic information" refers to the latest data on current road conditions and traffic volume, obtained through the traffic information API.

[1026] The "means for adjusting the recommendation level of recommended restaurants" refers to a method or technology for changing the priority of restaurants recommended to a user based on the acquired emotional data of the user.

[1027] The "Estimated Arrival Time (ETA)" is the estimated time it will take for the user to arrive at the specified restaurant from their current location, and is calculated taking into account factors such as traffic conditions.

[1028] A "means for suggesting an adjustment to a reservation time" refers to a system or technology that suggests the optimal time for a user to make a restaurant reservation based on the calculated predicted arrival time.

[1029] The system of the present invention is an advanced system that automates restaurant recommendations and reservations to assist users in planning meals when out. This system takes into account the user's current location, preferences, past usage history, real-time traffic information, and even the user's emotions to recommend optimal restaurants and suggest appropriate reservation times. Specific embodiments of the present invention are described below.

[1030] First, the user launches the system's application using a device such as a smartphone or tablet. The device is equipped with a GPS function, which acquires the user's current location information (latitude and longitude) in real time. Next, the user enters their food preferences (e.g., Italian or Japanese cuisine) and past restaurant history (e.g., Restaurant A, Restaurant B) into the application.

[1031] Furthermore, this embodiment is equipped with an emotion engine, and the device uses a camera and microphone to collect data on the user's facial expressions and voice, allowing the emotion engine to analyze the user's emotions (e.g., relaxation, stress) and acquire that information.

[1032] The device sends the collected location information, food preferences, past usage history, and emotional data to the server as an API request. The server is equipped with a database and advanced algorithms for analyzing user information. Based on the received data, the server retrieves restaurant information that matches the user's preferences from its internal database. At that time, it adjusts the recommendation level based on the user's emotional data. For example, if the user is in the mood to relax, restaurants with a quiet and calm atmosphere will be prioritized.

[1033] The server then filters restaurants that match the user's preferences but are not included in the user's past visit history. This filtering includes adjustments based on the user's visit history, preferences, and emotions. Based on the filtered restaurant location information, the server utilizes a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant. It then calls a real-time traffic information API to obtain current traffic conditions and recalculate the ETA taking traffic information into account.

[1034] The server then proposes a new reservation time based on the recalculated ETA. The server also takes the user's feelings into consideration. For example, if the user is in a hurry, it will prioritize restaurants with a shorter arrival time. Finally, the server sends the recommended restaurant information (name, address), the updated ETA, and the new reservation time to the device, which then displays the information to the user. The user can then confirm the selected restaurant and the new reservation time, and confirm the reservation if necessary.

[1035] As a concrete example, the following shows a situation where the user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant, which further stresses the user.

[1036] 1. The user enters their current location, food preferences, and past usage history into the smartphone app. The emotion engine recognizes that the user is feeling stressed based on their facial expressions and voice.

[1037] 2. The device sends this data to the server.

[1038] 3. The server narrows down the Italian restaurants in the database and extracts Restaurant C and Restaurant D, which have a quiet and relaxing atmosphere.

[1039] 4. The server calculates the distance to restaurant C and restaurant D and calculates the ETAs to be 14:30 and 14:35, respectively.

[1040] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that the ETA will be delayed by 5 minutes.

[1041] 6. The server recalculates the ETAs and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[1042] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[1043] 8. The server sends this information to the terminal, and the terminal notifies the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[1044] An example of a prompt is as follows:

[1045] "If a user is stressed and looking for a quiet Italian restaurant, suggest a restaurant reservation based on estimated arrival time and traffic information to their destination."

[1046] As described above, the system of the present invention makes it possible to recommend optimal restaurants and suggest reservations while taking into account the user's emotions and the latest traffic information.

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

[1048] Step 1: Enter and collect user data

[1049] Subject: User (Device)

[1050] Specific behavior:

[1051] The user launches the application using a device such as a smartphone or tablet. Current location information (latitude and longitude) is automatically obtained using the GPS function. The user also enters their food preferences (e.g., Italian or Japanese cuisine) and past restaurant history (e.g., Restaurant A, Restaurant B) into the application. The device's built-in camera and microphone are then activated to collect the user's facial expressions and voice data. The emotion engine analyzes this data and recognizes the user's emotions (e.g., relaxed, stressed).

[1052] Input: Current location information, food preferences, past usage history, facial expression data, voice data

[1053] Data processing: Obtaining starting position information and collecting and analyzing user-input data

[1054] Output: User data (location, food preferences, past usage history, emotional data)

[1055] Step 2: Send data to the server

[1056] Subject: Device

[1057] Specific behavior:

[1058] The device sends the collected location information, food preferences, past usage history, and emotional data to the server as a single API request, which also includes the user ID and a timestamp.

[1059] Input: User data (location, food preferences, past usage history, emotional data)

[1060] Data processing: Bulk transmission of user data

[1061] Output: API request (user data including user ID and timestamp)

[1062] Step 3: Analyze and filter user data

[1063] Subject: Server

[1064] Specific behavior:

[1065] The server analyzes the received user data and retrieves restaurant information that matches the user's preferences from an internal database. It then adjusts the recommendation level based on the user's emotional data. For example, if the user wants to relax, it will prioritize restaurants with a quiet and calm atmosphere. It also filters out restaurants that match the user's preferences but are not included in the user's past usage history.

[1066] Input: API request, internal database

[1067] Data processing: data analysis, database access, recommendation adjustment, filtering

[1068] Output: A list of matching restaurants

[1069] Step 4: Calculate the Estimated Time of Arrival (ETA)

[1070] Subject: Server

[1071] Specific behavior:

[1072] The server uses the filtered restaurant location information and utilizes GIS to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, then calls a real-time traffic information API to obtain the current traffic conditions and recalculate the ETA taking the traffic information into account.

[1073] Input: Matching restaurant list, user location, real-time traffic information API

[1074] Data processing: location information processing, ETA calculation, traffic information reflection

[1075] Output: Latest ETA list

[1076] Step 5: Propose an appointment time

[1077] Subject: Server

[1078] Specific behavior:

[1079] The server then proposes a new reservation time based on the recalculated ETA. This process also takes into account the user's emotional data. For example, if you are in a hurry, it will prioritize restaurants with a shorter arrival time. The proposed reservation time and restaurant information are compiled.

[1080] Input: Latest ETA list, matching restaurant list, sentiment data

[1081] Data processing: appointment time suggestions, information integration

[1082] Output: Recommended restaurant information, recommended reservation times

[1083] Step 6: Notify the user and confirm the reservation

[1084] Subject: Server

[1085] Specific behavior:

[1086] The server sends the recommended restaurant information (name, address), updated ETA, and suggested reservation time to the device. The device receives this and notifies the user. The user reviews the suggestions and, if appropriate, clicks the "Confirm Reservation" button to confirm the reservation.

[1087] Input: Recommended restaurant information, recommended reservation time

[1088] Data processing: information transmission, user interface display

[1089] Output: Reservation confirmation data

[1090] (Application example 2)

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

[1092] Currently, many food delivery services only consider the user's location and food preferences when making deliveries. However, the quality of the user experience can be improved if the system can select the most suitable delivery partner and restaurant by taking into account the user's emotional state and real-time traffic conditions. Furthermore, there is a need to improve the accuracy of predicted arrival times and adjust the user environment according to the user's emotional state, but current systems do not achieve this.

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

[1094] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending restaurants, means for acquiring real-time traffic information and calculating the user's predicted arrival time, means for suggesting adjustment of the reservation time based on the calculated predicted arrival time, means for recognizing the user's emotions and filtering recommended restaurants, and means for considering the user's mental state when suggesting an appropriate reservation time. This makes it possible to provide an optimal food delivery service that takes into account the user's emotional state and real-time traffic conditions.

[1095] "User preferences" refers to a user's tendency to prefer particular foods or types of cuisine, as well as particular restaurants or environments.

[1096] "Location information" is data that indicates a user's current location and previously visited locations obtained using GPS or other location measurement technologies.

[1097] "Past usage history" refers to records of restaurants the user has previously visited, menu items they have ordered, and services they have used.

[1098] "Real-time traffic information" refers to the latest data on current road conditions and traffic flow.

[1099] "Predicted arrival time" refers to the estimated travel time to your destination calculated based on your current location and real-time traffic information.

[1100] "Adjusting the reservation time" is the act of setting an appropriate reservation start time based on the estimated time until the user arrives.

[1101] "User emotion" refers to the user's current mental state detected from voice, facial expression, and other biometric information.

[1102] A "means for filtering suggested restaurants" is a method for narrowing down restaurant options based on a user's preferences, emotions, and past usage history.

[1103] "Suggesting an appropriate reservation time" refers to the act of recommending the most suitable reservation time in consideration of the user's estimated arrival time and emotions.

[1104] "Considering the state of mind" means tailoring services and recommendations to the user's current mental and emotional state.

[1105] This invention is a system that automates restaurant recommendations and reservations to assist users in meal planning while they are out or at home. This system comprehensively considers the user's location information, food preferences, past usage history, real-time traffic information, and user emotions to recommend optimal restaurants and adjust reservation times.

[1106] First, the user uses a device (such as a smartphone app) to input information such as their current location, preferences, and past usage history. The device also has an emotion engine that recognizes emotions from the user's voice and facial expressions. This information is sent to the server as an API request.

[1107] The server retrieves candidate restaurant information from an internal database based on the received user preferences, location information, and past usage history. The retrieved restaurant list is filtered based on the user's emotional state. Specifically, if the user is relaxed, restaurants with a quiet and calm atmosphere are prioritized.

[1108] Next, the server uses a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant. It then uses a real-time traffic information API to obtain current traffic conditions and recalculate the ETA. Based on the new ETA, the server suggests an appropriate reservation time.

[1109] As a specific example of processing, consider the case where the following prompt is entered:

[1110] (Example of a prompt)

[1111] user_location = {'latitude': 35.6895, 'longitude': 139.6917}

[1112] food_preference = 'Italian'

[1113] usage_history = ['Restaurant A', 'Restaurant B']

[1114] user_emotion = 'relaxed'

[1115] The server receives this information and first searches its internal database for Italian restaurants, filtering out restaurants the user has not used before. Since the user is relaxing, restaurants with quiet environments are recommended. It then uses GIS and traffic information APIs to calculate the ETA to each restaurant and suggests an appropriate reservation time.

[1116] The hardware and software used include a smartphone or tablet with emotion recognition capabilities on the client side, a real-time traffic information API, GIS, a database management system (DBMS) on the server side, and a web server (e.g., Nginx or Apache) to process API requests.

[1117] This configuration makes it possible to recommend optimal restaurants based on the user's preferences and emotions, and to suggest reservation times that take real-time traffic information into account.

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

[1119] Step 1:

[1120] Users use the device to input their current location, food preferences, and past usage history, and the device's emotion engine also acquires emotional information from the user's voice and facial expressions.

[1121] How it works: The user provides their location information on a smartphone app, selects whether they prefer Italian food, and inputs the restaurants they have visited in the past (e.g., Restaurant A, Restaurant B). The emotion engine then recognizes the user's emotion (e.g., relaxed).

[1122] Input: User's current location, food preferences, past usage history, emotional information

[1123] Output: API request format data (user information)

[1124] Step 2:

[1125] The device sends this information to the server as an API request.

[1126] Specific operation: The terminal compiles user information and sends it to the server.

[1127] Input: User information (current location, food preferences, usage history, emotions)

[1128] Output: API request received on the server side

[1129] Step 3:

[1130] The server retrieves candidate restaurant information from an internal database based on the received user preferences, location information, and past usage history.

[1131] What happens: The server executes a database query to retrieve a list of restaurants that match the preferences.

[1132] Input: User information

[1133] Output: List of candidate restaurants

[1134] Step 4:

[1135] The server filters recommended restaurants based on the user's emotional information.

[1136] Specific operation: The server filters restaurants that offer a quiet environment based on emotional information.

[1137] Input: List of candidate restaurants, user's emotional information

[1138] Output: Filtered list of restaurants

[1139] Step 5:

[1140] The server uses GIS to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant.

[1141] Specific operation: The server uses GIS to calculate the predicted arrival time and obtains the ETA for each restaurant.

[1142] Input: filtered restaurant list, current location

[1143] Output: ETA information for each restaurant

[1144] Step 6:

[1145] The server uses the real-time traffic information API to get the current traffic conditions and calculate the ETA again.

[1146] Specific operation: The server calls the traffic information API and recalculates the ETA to reflect traffic conditions.

[1147] Input: Initial ETA information, real-time traffic information

[1148] Output: Updated ETA information

[1149] Step 7:

[1150] The server will suggest an appropriate reservation time based on the recalculated ETA.

[1151] Specific operation: The server sets and proposes a reservation start time based on the updated ETA.

[1152] Input: Updated ETA information

[1153] Output: Proposed appointment time

[1154] Step 8:

[1155] Finally, the server sends the recommended restaurant information, the new ETA, and the proposed reservation time to the terminal, which displays them to the user.

[1156] Specific operation: The server sends information to the terminal, and the terminal notifies the user.

[1157] Inputs: Restaurant information, new ETA, suggested reservation time

[1158] Output: Information displayed on the user's device

[1159] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

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

[1161] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.

[1162] [Fourth embodiment]

[1163] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[1164] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

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

[1166] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.

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

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

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

[1170] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.

[1171] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

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

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

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

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

[1176] The system of the present invention is an automated restaurant recommendation and reservation system to assist users in meal planning for when they are out. The system utilizes the user's current location, preferences, past visit history, and real-time traffic information to recommend suitable restaurants and adjust / suggest reservation times based on the user's estimated time of arrival (ETA).

[1177] Specifically, the device first inputs or retrieves the user's current location, food preferences (e.g., Italian or Japanese cuisine), and restaurant history. This information is then sent from the device to the server as an API request.

[1178] Based on the received user information, the server retrieves restaurant information that matches the user's preferences from its internal database and filters out restaurants that the user has not visited before. This filtering includes an analysis of the user's food preferences and past history.

[1179] The server then uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, using Geographic Information System (GIS) techniques to calculate the ETA based on the user's travel distance and speed.

[1180] The server then calls the real-time traffic information API to obtain the current traffic conditions. Based on this information, it recalculates the ETA to each restaurant and updates the estimated arrival time, taking into account traffic delays such as congestion.

[1181] The server then calculates and proposes a new appointment time based on the updated ETA that allows the user ample time to arrive, for example by adding a 10-minute buffer to the calculated ETA.

[1182] Finally, the server compiles this information (recommended restaurant, predicted arrival time, new reservation time) and sends it to the terminal, which receives it and displays it to the user. This allows the user to receive a notification about the recommended restaurant and its reservation time, and easily complete the reservation.

[1183] Specific examples

[1184] For example, suppose a user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant.

[1185] 1. The user enters "Current location: Tokyo, Food preference: Italian, Past usage history: Restaurant A, Restaurant B" into the smartphone app.

[1186] 2. The device sends this information to the server.

[1187] 3. The server narrows down the search for "Italian restaurants" from the database and extracts restaurants C and D, which are not included in past history.

[1188] 4. The server calculates the distance to restaurant C and restaurant D and calculates the estimated arrival time (ETA) for each as 14:30 and 14:35, respectively.

[1189] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that this will delay the predicted arrival time by 5 minutes.

[1190] 6. The server recalculates and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[1191] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[1192] 8. The server sends this information to the terminal, which then displays the message, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[1193] In this way, users can easily view the recommended restaurants and the best reservation times and complete the reservation.

[1194] The processing flow will be explained below.

[1195] Step 1:

[1196] The user logs into the app on their device and inputs their current location (obtained using the GPS function), food preferences (e.g., Italian), and past usage history (e.g., Restaurant A, Restaurant B).

[1197] Step 2:

[1198] The device sends the input information to the server as an API request, including the user's current location, food preferences, and past usage history.

[1199] Step 3:

[1200] Based on the user information received by the server, restaurant information that matches the user's preferences is retrieved from an internal database.

[1201] Step 4:

[1202] The server compares the restaurant information it has acquired with past usage history and filters out restaurants that the user has not visited before. For example, restaurants C and D remain as candidates.

[1203] Step 5:

[1204] The server uses the filtered restaurant location information (latitude and longitude) to calculate the distance from the user's current location to each restaurant using a geocode API or similar.

[1205] Step 6:

[1206] The server calculates the estimated time of arrival (ETA) for each restaurant using a hypothetical average travel speed (e.g., 40 km / h assuming travel by car). For example, the ETA for restaurant C is calculated as 14:30, and the ETA for restaurant D is calculated as 14:35.

[1207] Step 7:

[1208] The server calls a real-time traffic information API (for example, a traffic information service) and obtains current traffic information (such as traffic congestion).

[1209] Step 8:

[1210] The server recalculates the ETA for each restaurant based on the traffic information it obtains. For example, if the arrival time is delayed by 5 minutes due to traffic congestion, the ETA for Restaurant C will be updated to 14:35 and the ETA for Restaurant D will be updated to 14:40.

[1211] Step 9:

[1212] The server calculates new reservation times based on the updated ETA, allowing the user ample time to arrive. For example, add a 10-minute buffer to the recalculated ETA, setting the reservation times for Restaurant C at 14:45 and Restaurant D at 14:50.

[1213] Step 10:

[1214] The server sends information to the device, including the recommended restaurant information (name, address), the updated ETA, and the new reservation time.

[1215] Step 11:

[1216] The terminal displays the received information to the user, notifying them that "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[1217] Step 12:

[1218] The user reviews the notification and confirms or modifies the booking if necessary, and completes the booking process if the booking can be confirmed directly within the system.

[1219] Example 1

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

[1221] In modern society, finding a suitable restaurant when going out can be difficult. Adjusting reservation times to accommodate traffic conditions and travel time can also be time-consuming. This can lead to users missing their reservation due to being unable to arrive on time. A system that can solve these problems and improve users' outing experiences is needed.

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

[1223] In this invention, the server includes means for acquiring a user's preferences, location information, and history information and recommending restaurants, means for acquiring real-time movement information and calculating a predicted arrival time of the user, means for suggesting adjustment of a reservation time based on the calculated predicted arrival time, and means for filtering restaurants that match the user's preferences and that the user has not visited in the past. This allows the user to quickly and easily find a suitable restaurant when going out, and allows the user to arrive on schedule by adjusting the reservation time according to traffic conditions.

[1224] "User preferences" refers to the preferences that a user has for a particular type of food or cuisine.

[1225] "Location information" is information that indicates the user's current geographical location. It is often expressed using latitude and longitude.

[1226] "History information" refers to records of restaurants that a user has visited in the past and the dates and times of those visits.

[1227] "Eating and drinking establishments" are establishments that serve food and beverages, including restaurants and cafes.

[1228] "Real-time travel information" is the latest data on current traffic conditions and travel times.

[1229] The "estimated arrival time" is the calculated time it will take for the user to arrive at the restaurant, which is the destination, from the user's current location.

[1230] "Adjusting reservation time" is the process of changing or suggesting a time that a user has reserved based on the user's situation and traffic information.

[1231] "Filtering" is the process of selecting data based on specific conditions and eliminating unnecessary data.

[1232] A "server" is a computer system that receives requests from users, processes them, and returns the results.

[1233] An "API request" is a request for data made through an application program interface.

[1234] The system of the present invention is an automated recommendation and reservation system for streamlining dining plans for users when out and about. The system utilizes the user's current location, preferences, history information, and real-time movement information to recommend appropriate restaurants and adjust / suggest reservation times based on the user's predicted arrival time.

[1235] Specifically, the device first obtains the user's current location, preferences (e.g., Italian or Japanese cuisine), and past visit history. This information is then sent from the device to the server as an API request. The HTTP communication protocol is used for this.

[1236] Based on the received user information, the server retrieves restaurant information that matches the user's preferences from its internal database and further filters out restaurants that the user has not visited before, thereby providing the user with new options.

[1237] The server then uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, using Geographic Information System (GIS) technology to calculate the ETA based on the user's travel distance and speed.

[1238] The server then calls a real-time travel information API to obtain current traffic conditions. Based on this information, the server recalculates the ETA to each restaurant and updates the estimated arrival time, taking into account traffic delays such as congestion. For example, the traffic information API provides data such as the current road congestion situation and predicted delay times.

[1239] The server then calculates and proposes a new appointment time based on the updated ETA, ensuring the user arrives on time by adding a certain buffer (e.g., 10 minutes) to the calculated ETA.

[1240] Finally, the server compiles this information (recommended restaurants, predicted arrival time, new reservation time) and sends it to the terminal. The terminal displays the received information to the user, allowing the user to check the recommended restaurants and the optimal reservation time and easily complete the reservation.

[1241] Specific examples

[1242] For example, if the user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant, the following will explain the situation.

[1243] 1. The user enters "Current location: Tokyo, Preference: Italian, Past history: Restaurant A, Restaurant B" into a smartphone app.

[1244] 2. The device sends this information to the server.

[1245] 3. The server narrows down the search results for "Italian restaurants" from the database and extracts Restaurants C and D, which are not included in the past history.

[1246] 4. The server calculates the distance to restaurant C and restaurant D and calculates the estimated arrival time (ETA) as 14:30 and 14:35, respectively.

[1247] 5. The server obtains the current traffic congestion situation using the traffic information API and confirms that the predicted arrival time will be delayed by 5 minutes.

[1248] 6. The server recalculates and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[1249] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[1250] 8. The server sends this information to the terminal, and the terminal displays, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[1251] In this way, users can easily check the recommended restaurants and the best reservation times and complete the reservation.

[1252] Prompt Sentence Examples

[1253] Current location: Tokyo (latitude: 35.6895, longitude: 139.6917), preference: Italian, past history: Restaurant A, Restaurant B

[1254] keyword

[1255] Generative AI model, prompt sentence

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

[1257] Step 1:

[1258] Entering and retrieving user information

[1259] The user inputs their current location, preferences, and past history information into a smartphone app.

[1260] Input: User's current location (e.g., latitude 35.6895, longitude 139.6917), preferences (e.g., Italian), past history information (e.g., Restaurant A, Restaurant B)

[1261] Output: User information stored in the device's memory

[1262] What happens: A user opens the app, enters the required information, and clicks the submit button.

[1263] Step 2:

[1264] Sending user information

[1265] The device sends the acquired user information to the server as an API request.

[1266] Input: User information stored in the device's memory

[1267] Output: Data sent via API request to the server

[1268] Specific operation: The terminal generates an HTTP request and sends it to the server. The request format is as follows:

[1269] json

[1270] {

[1271] "location": {"latitude": 35.6895, "longitude": 139.6917},

[1272] "preferences": "Italian",

[1273] "history": ["Restaurant A", "Restaurant B"]

[1274] }

[1275] Step 3:

[1276] Filtering and retrieving restaurant information

[1277] The server queries an internal database to retrieve restaurant information that matches the user's preferences and filters out restaurants that the user has not visited before.

[1278] Input: User information sent to the server

[1279] Output: Filtered list of restaurants

[1280] Specific operation: The server executes an SQL query to extract restaurants in the "Italian" category and lists "Restaurant C" and "Restaurant D" that are not included in the historical information.

[1281] Step 4:

[1282] Estimated Time of Arrival (ETA) calculation

[1283] The server uses the filtered restaurant location information to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant.

[1284] Input: filtered list of restaurants, user's current location

[1285] Output: ETA for each restaurant

[1286] Specific operation: The server uses geographic information system (GIS) technology to calculate the ETA for each restaurant based on the travel distance and travel speed (e.g., Restaurant C's ETA is 14:30, Restaurant D's ETA is 14:35).

[1287] Step 5:

[1288] Get real-time traffic information and ETA updates

[1289] The server calls the real-time traffic information API to get the current traffic conditions and recalculate the ETA.

[1290] Input: ETA for each restaurant

[1291] Output: Updated ETA

[1292] Specific operation: The server calls the traffic information API and recalculates the ETA based on the traffic data obtained. For example, if there is a 5-minute delay, the ETA for Restaurant C is updated to 14:35 and the ETA for Restaurant D is updated to 14:40.

[1293] Step 6:

[1294] Calculating and suggesting new appointment times

[1295] The server calculates and proposes a new appointment time based on the updated ETA.

[1296] Input: Updated ETA

[1297] Output: Recommended new appointment time

[1298] What happens: The server adds a 10-minute buffer to each ETA and suggests reservation times of 14:45 at Restaurant C and 14:50 at Restaurant D.

[1299] Step 7:

[1300] Notification and display of results

[1301] The server sends the recommended restaurant, predicted arrival time and new reservation time to the terminal, which displays them to the user.

[1302] Inputs: Recommended restaurant, predicted arrival time, new reservation time

[1303] Output: What the user is notified and shown

[1304] Specific operation: The server compiles the information and sends it to the device. The device receives it and displays to the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[1305] keyword:

[1306] Generative AI model, prompt sentence

[1307] (Application example 1)

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

[1309] Conventional restaurant recommendation systems have not provided sufficient convenience for users to find the best restaurant and make a reservation while on the go. They also lacked the functionality to optimize arrival times and reservation times by reflecting real-time traffic information. Furthermore, even when users on the go place a delivery order, efficient suggestions and adjustments to reservation times were not made, resulting in a decline in user satisfaction.

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

[1311] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending candidate information; means for acquiring real-time traffic information and calculating the user's predicted arrival time; means for suggesting adjusting the reservation time based on the calculated predicted arrival time; and means for the user to complete a delivery order on a digital device. This allows users to easily use the most suitable restaurant or delivery service even when they are out. Furthermore, optimizing the predicted arrival time and reservation time improves user convenience and satisfaction.

[1312] "User preferences" is information that indicates a user's tendency to prefer particular types of cuisine or restaurants.

[1313] "Location information" is data that indicates the geographic coordinates and address of the user's current location.

[1314] "Past usage history" refers to records of restaurants the user has previously visited and dishes they have ordered.

[1315] "Means for recommending candidate information" is a function that suggests appropriate restaurants and delivery services based on the user's preferences, location information, and past usage history.

[1316] "Real-time traffic information" refers to the most recent data showing current traffic conditions and congestion information.

[1317] The "means for calculating the predicted arrival time" is a function that calculates the time it takes to arrive at the destination based on the user's location information and real-time traffic information.

[1318] The "means for proposing adjustment of reservation time" is a function that proposes an appropriate reservation time that will allow the user to arrive smoothly based on the calculated predicted arrival time.

[1319] "Digital devices" refers to electronic devices such as smartphones, tablets, and personal computers.

[1320] A "means for completing a delivery order" is a feature that allows a user to order food and / or drinks for delivery using a digital device.

[1321] This invention provides a system that allows users to easily recommend restaurants and make reservations even when they are out. It is also used to optimize delivery orders. Specific embodiments are described below.

[1322] First, a user uses a digital device such as a smartphone to input information about their current location and food preferences into the application, which is then sent from the device to a server.

[1323] The server processes the transaction using the following methods:

[1324] 1. A means of obtaining user preferences, location information, and past usage history to recommend candidate information:

[1325] The server identifies candidate restaurants and delivery services from its internal database based on the user's preferences, location, and past usage history, filtering out new restaurants that the user has not used before.

[1326] 2. A means to obtain real-time traffic information and calculate the user's predicted arrival time:

[1327] For the candidate restaurants, the server calculates the estimated time of arrival (ETA) from the user's current location to each restaurant. This calculation uses GPS and GIS (geographic information system). In addition, it utilizes a real-time traffic information API to obtain current traffic conditions and recalculate the ETA based on this.

[1328] 3. A method to suggest adjustments to reservation times based on the calculated predicted arrival time:

[1329] The server then proposes a reservation time based on the recalculated ETA that allows the user to arrive with ample time to spare, for example, by adding a certain buffer time to the ETA.

[1330] 4. How users can complete delivery orders on digital devices:

[1331] It provides an interface for completing orders from recommended restaurants and delivery services via digital devices such as smartphones, allowing users to easily place delivery orders even when they are out and about.

[1332] For example, suppose a user is in Tokyo and is looking for Italian food. Here's an example of a specific prompt:

[1333] Current location: Tokyo, Food preference: Italian, Past usage history: Restaurant A and Restaurant B, Real-time traffic updates: Yes, Delivery options: Select, Recommended reservation time: Please suggest.

[1334] The server receives this prompt and uses the above methods to recommend the best restaurant and reservation time, and notifies the user. This allows users to easily find the best restaurant and make a reservation or delivery order at any time, even while they're out and about. Furthermore, by utilizing real-time traffic information, the system can optimize estimated arrival times and reservation times, improving user convenience and satisfaction.

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

[1336] Step 1:

[1337] The user launches the smartphone application and inputs their current location and food preferences. This involves using the GPS sensor to obtain location information, and then filling out a form to input the user's preferences (e.g., Italian food, Japanese food, etc.) and past usage history. This data is packaged in JSON format and sent from the device to the server as an API request.

[1338] Step 2:

[1339] The server analyzes the received API request and extracts the user's preferences, location, and past restaurant history. It then queries an internal database based on this information to retrieve matching restaurant candidates. It then filters out restaurants that the user has not visited before from the query results to generate a target list.

[1340] Step 3:

[1341] The server then obtains the location information of each restaurant based on the filtered list of candidate restaurants and calculates the estimated time of arrival (ETA) from the user's current location to each restaurant using a geographic information system (GIS) and routing algorithms to calculate the ETA based on the travel distance and estimated travel time.

[1342] Step 4:

[1343] The server calls the real-time traffic information API to retrieve current traffic data. This traffic information reflects the latest road conditions, including congestion and traffic disruptions. Based on the traffic information, the server recalculates the ETA to each candidate restaurant and updates it, taking traffic delays into account.

[1344] Step 5:

[1345] Based on the updated ETA, the server adjusts and suggests a reservation time that allows the user to arrive with ample time to spare. Specifically, the server sets a reservation time that adds a certain buffer time (e.g., 10 minutes) to the calculated ETA and recommends this to the user.

[1346] Step 6:

[1347] The server sends the recommended restaurants, along with the estimated arrival time and new reservation time, to the device. The device analyzes the received information and displays it to the user. Based on this information, the user can select the most suitable restaurant and confirm the reservation.

[1348] Step 7:

[1349] If the user desires delivery service, the server provides an option to complete a delivery order through the interface of the digital device. When the user selects a delivery order, the server retrieves delivery details, calculates estimated delivery time and fee information, and presents it to the user.

[1350] Step 8:

[1351] Finally, the reservation or delivery order is confirmed at the restaurant selected by the user, and the server sends a confirmation notification to the device. The device then authenticates and updates the user's order status in real time. This process allows users to easily make the best dining choice while on the go, and smoothly complete the reservation or delivery order.

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

[1353] The system of the present invention is an advanced automated restaurant recommendation and reservation system to assist users in planning meals when out. The system takes into account the user's current location, preferences, past usage history, real-time traffic information, and even the user's emotions to recommend the most suitable restaurant and suggest an appropriate reservation time.

[1354] First, the device inputs or acquires the user's current location information (obtained using the GPS function), food preferences (e.g., Italian food, Japanese food, etc.), and past usage history (e.g., Restaurant A, Restaurant B), and then activates an emotion engine to grasp the user's emotions. The emotion engine recognizes emotions from the user's voice and facial expressions, for example.

[1355] Once this information is collected, the device sends it to the server as an API request. The server then retrieves restaurant information that matches the user's preferences from its internal database based on the received user information and emotion data. The server then adjusts the recommendation level based on the user's emotion. For example, if the user is in the mood to relax, restaurants with a quiet and calm atmosphere will be prioritized.

[1356] The server filters restaurants that match your preferences but are not included in your past visits, including adjustments based on your visit history, preferences, and emotions.

[1357] Based on the filtered restaurant location information, the server uses a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, then calls a real-time traffic information API to obtain the current traffic conditions and recalculate the ETA taking the traffic information into account.

[1358] The server will suggest a new reservation time based on the recalculated ETA, taking into account the user's emotions. For example, if you are in a hurry, it will prioritize restaurants with a shorter arrival time.

[1359] Finally, the server sends the recommended restaurant information (name, address), updated ETA, and new reservation time to the terminal, which displays the information to the user. The user can confirm the selected restaurant and new reservation time and confirm the reservation if necessary.

[1360] Specific examples

[1361] For example, consider a scenario where a user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is searching for an Italian restaurant. Furthermore, the emotion engine determines that the user is feeling stressed.

[1362] 1. The user enters their current location, food preferences, and past usage history into the smartphone app. The emotion engine recognizes that the user is feeling stressed based on their facial expressions and voice.

[1363] 2. The device sends this data to the server.

[1364] 3. The server narrows down the Italian restaurants in the database and extracts Restaurant C and Restaurant D, which have a quiet and relaxing atmosphere.

[1365] 4. The server calculates the distance to restaurant C and restaurant D and calculates the ETAs to be 14:30 and 14:35, respectively.

[1366] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that the ETA will be delayed by 5 minutes.

[1367] 6. The server recalculates the ETAs and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[1368] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[1369] 8. The server sends this information to the terminal, and the terminal notifies the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[1370] In this way, users are supported with recommendations and reservations for restaurants that are optimally tailored to their emotions.

[1371] The processing flow will be explained below.

[1372] Step 1:

[1373] The user logs into the app on their device and inputs their current location (obtained via GPS), food preferences (e.g., Italian), and past usage history (e.g., Restaurant A, Restaurant B). The emotion engine then activates, recognizing emotions (e.g., stress) from the user's facial expressions and voice.

[1374] Step 2:

[1375] The device sends an API request including the user's input data and emotion data to the server.

[1376] Step 3:

[1377] Based on the received user information and emotion data, the server retrieves restaurant information that matches the user's preferences from an internal database. For example, Italian restaurants are selected as candidates.

[1378] Step 4:

[1379] Based on the restaurant information acquired by the server, it compares it with the user's past usage history and filters out restaurants that the user has not visited before. For example, restaurants C and D remain as candidates.

[1380] Step 5:

[1381] The server considers the user's emotional data and prioritizes restaurants with a quiet and calm atmosphere if the user wants to relax. This determines the priority of the recommended restaurants.

[1382] Step 6:

[1383] The server uses the filtered restaurant location information (latitude and longitude) and uses a geocode API to calculate the distance from the user's current location to each restaurant.

[1384] Step 7:

[1385] The server calculates the estimated time of arrival (ETA) for each restaurant using a hypothetical average travel speed (e.g., 40 km / h assuming travel by car). For example, the ETA for restaurant C is calculated as 14:30, and the ETA for restaurant D is calculated as 14:35.

[1386] Step 8:

[1387] The server calls the real-time traffic information API to obtain current traffic information (traffic congestion, etc.).

[1388] Step 9:

[1389] The server recalculates the ETA for each restaurant based on the traffic information it obtains. For example, if the arrival time is delayed by 5 minutes due to traffic congestion, the ETA for Restaurant C will be updated to 14:35 and the ETA for Restaurant D will be updated to 14:40.

[1390] Step 10:

[1391] Based on the recalculated ETA, the server proposes a new reservation time that allows the user to arrive with enough time to make the reservation. For example, add a 10-minute buffer to the recalculated ETA, and set the reservation times for Restaurant C at 14:45 and Restaurant D at 14:50.

[1392] Step 11:

[1393] The server sends information to the terminal, including the suggested restaurant information (name, address), the updated ETA, and the new reservation time.

[1394] Step 12:

[1395] The terminal displays the received information to the user, notifying them that "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[1396] Step 13:

[1397] The user reviews the notification and confirms or modifies the booking if necessary, and completes the booking process if the booking can be confirmed directly within the system.

[1398] Example 2

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

[1400] Conventional restaurant recommendation and reservation systems only recommend restaurants based on user preferences, location information, and past usage history, and are limited to calculating predicted arrival times using real-time traffic information. As a result, they are unable to make fine adjustments based on the user's emotions and moods, making it difficult to provide optimal reservation suggestions. They also lack the flexibility to respond to changes in traffic information.

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

[1402] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending restaurants, means for acquiring real-time traffic information and calculating the user's predicted arrival time, means for analyzing the acquired user's emotions and adjusting the recommendation level of the recommended restaurant, and means for recalculating the predicted arrival time based on the real-time traffic information and suggesting adjusting the reservation time. This makes it possible to recommend optimal restaurants and suggest reservations taking into account the user's emotions and the latest traffic information.

[1403] "User preferences" refer to the individual tastes and preferences that a user has for particular types of cuisine or restaurants.

[1404] "Location information" is data indicating the user's current location, and is latitude and longitude information obtained using the GPS function.

[1405] "Past usage history" refers to a record of restaurants the user has previously visited and services they have used.

[1406] "Real-time traffic information" refers to the latest data on current road conditions and traffic volume, obtained through the traffic information API.

[1407] The "means for adjusting the recommendation level of recommended restaurants" refers to a method or technology for changing the priority of restaurants recommended to a user based on the acquired emotional data of the user.

[1408] The "Estimated Arrival Time (ETA)" is the estimated time it will take for the user to arrive at the specified restaurant from their current location, and is calculated taking into account factors such as traffic conditions.

[1409] A "means for suggesting an adjustment to a reservation time" refers to a system or technology that suggests the optimal time for a user to make a restaurant reservation based on the calculated predicted arrival time.

[1410] The system of the present invention is an advanced system that automates restaurant recommendations and reservations to assist users in planning meals when out. This system takes into account the user's current location, preferences, past usage history, real-time traffic information, and even the user's emotions to recommend optimal restaurants and suggest appropriate reservation times. Specific embodiments of the present invention are described below.

[1411] First, the user launches the system's application using a device such as a smartphone or tablet. The device is equipped with a GPS function, which acquires the user's current location information (latitude and longitude) in real time. Next, the user enters their food preferences (e.g., Italian or Japanese cuisine) and past restaurant history (e.g., Restaurant A, Restaurant B) into the application.

[1412] Furthermore, this embodiment is equipped with an emotion engine, and the device uses a camera and microphone to collect data on the user's facial expressions and voice, allowing the emotion engine to analyze the user's emotions (e.g., relaxation, stress) and acquire that information.

[1413] The device sends the collected location information, food preferences, past usage history, and emotional data to the server as an API request. The server is equipped with a database and advanced algorithms for analyzing user information. Based on the received data, the server retrieves restaurant information that matches the user's preferences from its internal database. At that time, it adjusts the recommendation level based on the user's emotional data. For example, if the user is in the mood to relax, restaurants with a quiet and calm atmosphere will be prioritized.

[1414] The server then filters restaurants that match the user's preferences but are not included in the user's past visit history. This filtering includes adjustments based on the user's visit history, preferences, and emotions. Based on the filtered restaurant location information, the server utilizes a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant. It then calls a real-time traffic information API to obtain current traffic conditions and recalculate the ETA taking traffic information into account.

[1415] The server then proposes a new reservation time based on the recalculated ETA. The server also takes the user's feelings into consideration. For example, if the user is in a hurry, it will prioritize restaurants with a shorter arrival time. Finally, the server sends the recommended restaurant information (name, address), the updated ETA, and the new reservation time to the device, which then displays the information to the user. The user can then confirm the selected restaurant and the new reservation time, and confirm the reservation if necessary.

[1416] As a concrete example, the following shows a situation where the user is currently in Tokyo (latitude: 35.6895, longitude: 139.6917) and is looking for an Italian restaurant, which further stresses the user.

[1417] 1. The user enters their current location, food preferences, and past usage history into the smartphone app. The emotion engine recognizes that the user is feeling stressed based on their facial expressions and voice.

[1418] 2. The device sends this data to the server.

[1419] 3. The server narrows down the Italian restaurants in the database and extracts Restaurant C and Restaurant D, which have a quiet and relaxing atmosphere.

[1420] 4. The server calculates the distance to restaurant C and restaurant D and calculates the ETAs to be 14:30 and 14:35, respectively.

[1421] 5. The server obtains the current traffic congestion situation using the traffic information API and determines that the ETA will be delayed by 5 minutes.

[1422] 6. The server recalculates the ETAs and updates Restaurant C's ETA to 14:35 and Restaurant D's ETA to 14:40.

[1423] 7. The server suggests making reservations at Restaurant C for 14:45 and Restaurant D for 14:50.

[1424] 8. The server sends this information to the terminal, and the terminal notifies the user, "The recommended restaurant is Restaurant C. The estimated arrival time is 14:35. The new reservation time is 14:45."

[1425] An example of a prompt is as follows:

[1426] "If a user is stressed and looking for a quiet Italian restaurant, suggest a restaurant reservation based on estimated arrival time and traffic information to their destination."

[1427] As described above, the system of the present invention makes it possible to recommend optimal restaurants and suggest reservations while taking into account the user's emotions and the latest traffic information.

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

[1429] Step 1: Enter and collect user data

[1430] Subject: User (Device)

[1431] Specific behavior:

[1432] The user launches the application using a device such as a smartphone or tablet. Current location information (latitude and longitude) is automatically obtained using the GPS function. The user also enters their food preferences (e.g., Italian or Japanese cuisine) and past restaurant history (e.g., Restaurant A, Restaurant B) into the application. The device's built-in camera and microphone are then activated to collect the user's facial expressions and voice data. The emotion engine analyzes this data and recognizes the user's emotions (e.g., relaxed, stressed).

[1433] Input: Current location information, food preferences, past usage history, facial expression data, voice data

[1434] Data processing: Obtaining starting position information and collecting and analyzing user-input data

[1435] Output: User data (location, food preferences, past usage history, emotional data)

[1436] Step 2: Send data to the server

[1437] Subject: Device

[1438] Specific behavior:

[1439] The device sends the collected location information, food preferences, past usage history, and emotional data to the server as a single API request, which also includes the user ID and a timestamp.

[1440] Input: User data (location, food preferences, past usage history, emotional data)

[1441] Data processing: Bulk transmission of user data

[1442] Output: API request (user data including user ID and timestamp)

[1443] Step 3: Analyze and filter user data

[1444] Subject: Server

[1445] Specific behavior:

[1446] The server analyzes the received user data and retrieves restaurant information that matches the user's preferences from an internal database. It then adjusts the recommendation level based on the user's emotional data. For example, if the user wants to relax, it will prioritize restaurants with a quiet and calm atmosphere. It also filters out restaurants that match the user's preferences but are not included in the user's past usage history.

[1447] Input: API request, internal database

[1448] Data processing: data analysis, database access, recommendation adjustment, filtering

[1449] Output: A list of matching restaurants

[1450] Step 4: Calculate the Estimated Time of Arrival (ETA)

[1451] Subject: Server

[1452] Specific behavior:

[1453] The server uses the filtered restaurant location information and utilizes GIS to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant, then calls a real-time traffic information API to obtain the current traffic conditions and recalculate the ETA taking the traffic information into account.

[1454] Input: Matching restaurant list, user location, real-time traffic information API

[1455] Data processing: location information processing, ETA calculation, traffic information reflection

[1456] Output: Latest ETA list

[1457] Step 5: Propose an appointment time

[1458] Subject: Server

[1459] Specific behavior:

[1460] The server then proposes a new reservation time based on the recalculated ETA. This process also takes into account the user's emotional data. For example, if you are in a hurry, it will prioritize restaurants with a shorter arrival time. The proposed reservation time and restaurant information are compiled.

[1461] Input: Latest ETA list, matching restaurant list, sentiment data

[1462] Data processing: appointment time suggestions, information integration

[1463] Output: Recommended restaurant information, recommended reservation times

[1464] Step 6: Notify the user and confirm the reservation

[1465] Subject: Server

[1466] Specific behavior:

[1467] The server sends the recommended restaurant information (name, address), updated ETA, and suggested reservation time to the device. The device receives this and notifies the user. The user reviews the suggestions and, if appropriate, clicks the "Confirm Reservation" button to confirm the reservation.

[1468] Input: Recommended restaurant information, recommended reservation time

[1469] Data processing: information transmission, user interface display

[1470] Output: Reservation confirmation data

[1471] (Application example 2)

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

[1473] Currently, many food delivery services only consider the user's location and food preferences when making deliveries. However, the quality of the user experience can be improved if the system can select the most suitable delivery partner and restaurant by taking into account the user's emotional state and real-time traffic conditions. Furthermore, there is a need to improve the accuracy of predicted arrival times and adjust the user environment according to the user's emotional state, but current systems do not achieve this.

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

[1475] In this invention, the server includes means for acquiring a user's preferences, location information, and past usage history and recommending restaurants, means for acquiring real-time traffic information and calculating the user's predicted arrival time, means for suggesting adjustment of the reservation time based on the calculated predicted arrival time, means for recognizing the user's emotions and filtering recommended restaurants, and means for considering the user's mental state when suggesting an appropriate reservation time. This makes it possible to provide an optimal food delivery service that takes into account the user's emotional state and real-time traffic conditions.

[1476] "User preferences" refers to a user's tendency to prefer particular foods or types of cuisine, as well as particular restaurants or environments.

[1477] "Location information" is data that indicates a user's current location and previously visited locations obtained using GPS or other location measurement technologies.

[1478] "Past usage history" refers to records of restaurants the user has previously visited, menu items they have ordered, and services they have used.

[1479] "Real-time traffic information" refers to the latest data on current road conditions and traffic flow.

[1480] "Predicted arrival time" refers to the estimated travel time to your destination calculated based on your current location and real-time traffic information.

[1481] "Adjusting the reservation time" is the act of setting an appropriate reservation start time based on the estimated time until the user arrives.

[1482] "User emotion" refers to the user's current mental state detected from voice, facial expression, and other biometric information.

[1483] A "means for filtering suggested restaurants" is a method for narrowing down restaurant options based on a user's preferences, emotions, and past usage history.

[1484] "Suggesting an appropriate reservation time" refers to the act of recommending the most suitable reservation time in consideration of the user's estimated arrival time and emotions.

[1485] "Considering the state of mind" means tailoring services and recommendations to the user's current mental and emotional state.

[1486] This invention is a system that automates restaurant recommendations and reservations to assist users in meal planning while they are out or at home. This system comprehensively considers the user's location information, food preferences, past usage history, real-time traffic information, and user emotions to recommend optimal restaurants and adjust reservation times.

[1487] First, the user uses a device (such as a smartphone app) to input information such as their current location, preferences, and past usage history. The device also has an emotion engine that recognizes emotions from the user's voice and facial expressions. This information is sent to the server as an API request.

[1488] The server retrieves candidate restaurant information from an internal database based on the received user preferences, location information, and past usage history. The retrieved restaurant list is filtered based on the user's emotional state. Specifically, if the user is relaxed, restaurants with a quiet and calm atmosphere are prioritized.

[1489] Next, the server uses a geographic information system (GIS) to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant. It then uses a real-time traffic information API to obtain current traffic conditions and recalculate the ETA. Based on the new ETA, the server suggests an appropriate reservation time.

[1490] As a specific example of processing, consider the case where the following prompt is entered:

[1491] (Example of a prompt)

[1492] user_location = {'latitude': 35.6895, 'longitude': 139.6917}

[1493] food_preference = 'Italian'

[1494] usage_history = ['Restaurant A', 'Restaurant B']

[1495] user_emotion = 'relaxed'

[1496] The server receives this information and first searches its internal database for Italian restaurants, filtering out restaurants the user has not used before. Since the user is relaxing, restaurants with quiet environments are recommended. It then uses GIS and traffic information APIs to calculate the ETA to each restaurant and suggests an appropriate reservation time.

[1497] The hardware and software used include a smartphone or tablet with emotion recognition capabilities on the client side, a real-time traffic information API, GIS, a database management system (DBMS) on the server side, and a web server (e.g., Nginx or Apache) to process API requests.

[1498] This configuration makes it possible to recommend optimal restaurants based on the user's preferences and emotions, and to suggest reservation times that take real-time traffic information into account.

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

[1500] Step 1:

[1501] Users use the device to input their current location, food preferences, and past usage history, and the device's emotion engine also acquires emotional information from the user's voice and facial expressions.

[1502] How it works: The user provides their location information on a smartphone app, selects whether they prefer Italian food, and inputs the restaurants they have visited in the past (e.g., Restaurant A, Restaurant B). The emotion engine then recognizes the user's emotion (e.g., relaxed).

[1503] Input: User's current location, food preferences, past usage history, emotional information

[1504] Output: API request format data (user information)

[1505] Step 2:

[1506] The device sends this information to the server as an API request.

[1507] Specific operation: The terminal compiles user information and sends it to the server.

[1508] Input: User information (current location, food preferences, usage history, emotions)

[1509] Output: API request received on the server side

[1510] Step 3:

[1511] The server retrieves candidate restaurant information from an internal database based on the received user preferences, location information, and past usage history.

[1512] What happens: The server executes a database query to retrieve a list of restaurants that match the preferences.

[1513] Input: User information

[1514] Output: List of candidate restaurants

[1515] Step 4:

[1516] The server filters recommended restaurants based on the user's emotional information.

[1517] Specific operation: The server filters restaurants that offer a quiet environment based on emotional information.

[1518] Input: List of candidate restaurants, user's emotional information

[1519] Output: Filtered list of restaurants

[1520] Step 5:

[1521] The server uses GIS to calculate the estimated time of arrival (ETA) from the user's current location to each restaurant.

[1522] Specific operation: The server uses GIS to calculate the predicted arrival time and obtains the ETA for each restaurant.

[1523] Input: filtered restaurant list, current location

[1524] Output: ETA information for each restaurant

[1525] Step 6:

[1526] The server uses the real-time traffic information API to get the current traffic conditions and calculate the ETA again.

[1527] Specific operation: The server calls the traffic information API and recalculates the ETA to reflect traffic conditions.

[1528] Input: Initial ETA information, real-time traffic information

[1529] Output: Updated ETA information

[1530] Step 7:

[1531] The server will suggest an appropriate reservation time based on the recalculated ETA.

[1532] Specific operation: The server sets and proposes a reservation start time based on the updated ETA.

[1533] Input: Updated ETA information

[1534] Output: Proposed appointment time

[1535] Step 8:

[1536] Finally, the server sends the recommended restaurant information, the new ETA, and the proposed reservation time to the terminal, which displays them to the user.

[1537] Specific operation: The server sends information to the terminal, and the terminal notifies the user.

[1538] Inputs: Restaurant information, new ETA, suggested reservation time

[1539] Output: Information displayed on the user's device

[1540] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.

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

[1542] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.

[1543] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[1544] FIG. 9 illustrates an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and behaviors arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.

[1545] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.

[1546] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).

[1547] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.

[1548] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."

[1549] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values ​​indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.

[1550] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).

[1551] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.

[1552] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.

[1553] 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.

[1554] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.

[1555] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.

[1556] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.

[1557] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.

[1558] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.

[1559] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.

[1560] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.

[1561] The following is further disclosed regarding the above embodiment.

[1562] (Claim 1)

[1563] A means for obtaining user preferences, location information, and past usage history and recommending restaurants;

[1564] means for obtaining real-time traffic information and calculating a predicted arrival time of a user;

[1565] means for suggesting an adjustment to the appointment time based on the calculated predicted arrival time;

[1566] A system including:

[1567] (Claim 2)

[1568] 10. The system of claim 1, further comprising means for filtering candidate restaurants based on the acquired user preferences, location information, and past usage history.

[1569] (Claim 3)

[1570] 10. The system of claim 1, further comprising: means for recalculating predicted arrival times for each of a plurality of candidate restaurants based on the acquired real-time traffic information.

[1571] "Example 1"

[1572] (Claim 1)

[1573] A means for acquiring user preferences, location information, and history information and recommending restaurants;

[1574] means for acquiring real-time movement information and calculating a predicted arrival time of a user;

[1575] means for suggesting an adjustment to the appointment time based on the calculated predicted arrival time;

[1576] A means for filtering restaurants that match the user's preferences and that the user has not visited in the past;

[1577] A system including:

[1578] (Claim 2)

[1579] 2. The system according to claim 1, further comprising means for filtering candidate restaurants based on the acquired user preferences, location information, and history information.

[1580] (Claim 3)

[1581] 2. The system according to claim 1, further comprising means for recalculating predicted arrival times for each of a plurality of candidate restaurants based on the acquired real-time movement information.

[1582] "Application Example 1"

[1583] (Claim 1)

[1584] A means for acquiring user preferences, location information, and past usage history and recommending candidate information;

[1585] means for obtaining real-time traffic information and calculating a predicted arrival time of a user;

[1586] means for suggesting an adjustment to the appointment time based on the calculated predicted arrival time;

[1587] means for a user to complete a delivery order on a digital device;

[1588] A system including:

[1589] (Claim 2)

[1590] 10. The system of claim 1, further comprising means for filtering candidate information based on the acquired user preferences, location information, and past usage history.

[1591] (Claim 3)

[1592] 10. The system according to claim 1, further comprising means for recalculating predicted arrival times for each of the filtered candidates based on the acquired real-time traffic information.

[1593] "Example 2: Combining Emotion Engines"

[1594] (Claim 1)

[1595] A means for obtaining user preferences, location information, and past usage history and recommending restaurants;

[1596] means for obtaining real-time traffic information and calculating a predicted arrival time of a user;

[1597] A means for analyzing the acquired user sentiment and adjusting the recommendation level of the recommended restaurant;

[1598] means for recalculating the predicted arrival time based on real-time traffic information and suggesting adjustments to the reservation time;

[1599] A system including:

[1600] (Claim 2)

[1601] 10. The system of claim 1, further comprising means for filtering candidate restaurants based on the acquired user preferences, location information, emotions, and past usage history.

[1602] (Claim 3)

[1603] 10. The system of claim 1, further comprising: means for recalculating predicted arrival times for each of a plurality of candidate restaurants based on the acquired real-time traffic information.

[1604] "Application example 2 when combining emotion engines"

[1605] (Claim 1)

[1606] A means for acquiring user preferences, location information, and past usage history and recommending restaurants;

[1607] means for obtaining real-time traffic information and calculating a predicted arrival time of a user;

[1608] means for suggesting an adjustment to the appointment time based on the calculated predicted arrival time;

[1609] A means for recognizing user emotions and filtering recommended restaurants;

[1610] means for taking into account the user's state of mind when suggesting an appropriate appointment time;

[1611] A system including:

[1612] (Claim 2)

[1613] 2. The system according to claim 1, further comprising means for filtering candidate restaurants based on the acquired user preferences, location information, and past usage history.

[1614] (Claim 3)

[1615] 2. The system according to claim 1, further comprising means for recalculating a predicted arrival time for each of a plurality of candidate restaurants based on the acquired real-time traffic information. [Explanation of symbols]

[1616] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>

Claims

1. A means for obtaining user preferences, location information, and past usage history and recommending restaurants; means for obtaining real-time traffic information and calculating a predicted arrival time of a user; means for suggesting an adjustment to the appointment time based on the calculated predicted arrival time; A system including:

2. The system of claim 1 , further comprising means for filtering candidate restaurants based on the acquired user preferences, location information, and past usage history.

3. The system of claim 1 further comprising means for recalculating predicted arrival times for each of a plurality of candidate restaurants based on the acquired real-time traffic information.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A