System

The system addresses the inefficiencies of current AI technologies by providing real-time seat availability and navigation assistance, enabling travelers to find and reserve suitable restaurants with ease.

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

Patent Information

Application Number
JP2024137074
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-16
Publication Date
2026-02-27

AI Technical Summary

Technical Problem

Current generative AI technologies fail to provide real-time seat availability predictions and online reservation guidance for travelers, making it difficult for them to choose restaurants efficiently and navigate without getting lost.

Method used

A system that includes input means for travel conditions, generation of suitable store information, prediction of seat availability, provision of reservation links, route calculation, and display of integrated information to users, utilizing AI algorithms and external services like Google Maps API.

Benefits of technology

Enables travelers to find restaurants that meet their criteria, predict seat availability, make reservations smoothly, and navigate efficiently, reducing stress during travel.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026033953000001_ABST
    Figure 2026033953000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system comprising: input means for inputting travel conditions from a user; generating means for generating store information suitable for the user based on the conditions from the input means; predicting means for predicting a vacant seat status for the generated store information; providing means for providing the predicted vacant seat status and link information of a reservation site to the user; and display means for integrating information obtained by the generating means, the predicting means, the providing means, and the route calculating means.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

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

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

[0004] In recent years, with the increase in travelers, choosing restaurants at travel destinations has become increasingly important. However, while current generative AI technology can provide restaurant information tailored to travelers' preferences, it is unable to adequately predict real-time seat availability or guide online reservations. As a result, efficient information provision for choosing restaurants while traveling is not realized, which is stressful for travelers. Furthermore, there is a need for a way for travelers to find restaurants without getting lost. [Means for solving the problem]

[0005] In order to solve the above problems, the present invention provides a system including the following steps.

[0006] 1. An input means is provided for users to input travel conditions.

[0007] 2. A generating means is provided for generating store information suitable for the user based on the conditions from the input means.

[0008] 3. A prediction means is provided to predict seat availability based on the generated store information.

[0009] 4. A means of providing users with predicted seat availability and link information to reservation sites has been established.

[0010] 5. A route calculation means is provided to calculate the shortest route from the user's current location to the store.

[0011] 6. A display means is provided for integrating the information obtained by the generating means, predicting means, providing means and route calculating means and displaying the information to the user.

[0012] This allows users to obtain real-time information on restaurants that meet their desired criteria, allowing them to visit and make reservations smoothly. Furthermore, by using navigation information, users can reach their destination without getting lost, achieving a stress-free travel experience.

[0013] A "user" is a traveler who uses this system to input travel conditions and obtain store information.

[0014] "Input means" refers to an interface that allows travelers to input travel conditions (area, cuisine, budget, customer demographics, date and time).

[0015] The "generation means" is a means for generating store information suitable for a user based on travel conditions acquired from the input means.

[0016] The "prediction method" is a method of predicting the seat availability at each store based on the generated store information using an AI algorithm or the like.

[0017] The "provision means" is a means for providing users with seat availability and reservation link information predicted by the prediction means.

[0018] The "route calculation means" is a means for calculating the shortest route from the user's current location to the selected store.

[0019] The "display means" is a means for integrating the information obtained by the generation means, prediction means, provision means and route calculation means and displaying the information to the user.

[0020] "Store information" is information about restaurants, cafes, and other eating and drinking establishments generated based on the user's travel conditions.

[0021] "Seat availability" is information predicting current or future seat availability at a particular store.

[0022] "Reservation site link information" is URL link information to the reservation page for stores that allow online reservations.

[0023] "Current location" refers to the real-time geographic location information at the time the user is using the system.

[0024] The "shortest route" is the most efficient route from the user's current location to the destination store. [Brief explanation of the drawings]

[0025] [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

[0026] 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.

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

[0028] 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).

[0029] 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.

[0030] 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.

[0031] 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.

[0032] 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."

[0033] [First embodiment]

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

[0035] 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.

[0036] 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).

[0037] 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.

[0038] 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.

[0039] 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.

[0040] 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.

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

[0042] 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.

[0043] 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.

[0044] 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.

[0045] 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."

[0046] The system of the present invention comprehensively supports travelers in finding suitable restaurants during their trip. An embodiment of this system will be described in detail below.

[0047] Overall system configuration

[0048] This system is mainly composed of the user's device, a server, and various API services. The server plays a central role in the system, generating store information based on user input, and calculating prediction, provision, and navigation information.

[0049] Input Method

[0050] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[0051] generation means

[0052] The server analyzes the user's travel conditions and uses AI to generate a list of store information that matches the conditions. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[0053] Prediction methods

[0054] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list. This algorithm is based on past reservation data and customer trend data, and makes highly accurate predictions of seat availability for specific dates and times.

[0055] Providing means

[0056] The server then provides the user with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the application.

[0057] Route calculation method

[0058] The server acquires the user's current location information and uses external navigation services such as Google® Maps API to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[0059] Display means

[0060] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, the user can select the most suitable store and smoothly visit and make a reservation.

[0061] Specific examples

[0062] Here's an example: Suppose a user enters travel conditions such as "Rome", "Italian", "under 30 euros", "couple", and "April 1st, 8:00 PM". The device sends this to the server in JSON format: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T20:00"}.

[0063] Based on this information, the server generates a list of restaurants such as "La Pergola" and "Roscioli." It predicts the seat availability of "La Pergola" at 50% and "Roscioli" at 20%. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[0064] Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola" and determines that it is a 15-minute walk.

[0065] Finally, the server combines this information and sends it to the device in the following format:

[0066] [

[0067] {

[0068] "name": "La Pergola",

[0069] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0070] "seating_prediction": 50,

[0071] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0072] "navigation_info": "15-minute walk"

[0073] },

[0074] {

[0075] "name": "Roscioli",

[0076] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0077] "seating_prediction": 20,

[0078] "booking_link": ""

[0079] }

[0080] ]

[0081] The terminal analyzes and displays this information, allowing the user to intuitively determine which restaurant is most suitable. In this way, the system can help travelers choose the best restaurant.

[0082] The processing flow will be explained below.

[0083] Step 1:

[0084] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) into the application on the terminal.

[0085] Step 2:

[0086] The terminal converts the input information into JSON format and sends it to the server.

[0087] Step 3:

[0088] The server analyzes the received JSON data and extracts each condition item entered by the user (area, cuisine, budget, customer demographic, date and time).

[0089] Step 4:

[0090] The server uses generation AI to generate an appropriate restaurant list based on the extracted conditions, searching and narrowing down the list of restaurants from multiple restaurant databases in the area.

[0091] Step 5:

[0092] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[0093] Step 6:

[0094] The server obtains reservation link information for restaurants that accept online reservations by using the API of an external reservation system. For example, it obtains the link by calling the OpenTable API.

[0095] Step 7:

[0096] To calculate the shortest route based on the user's current location, the server calls an external navigation service such as the Google Maps API and calculates the walking route to the store and travel time including transportation options.

[0097] Step 8:

[0098] The server generates final information by integrating the obtained store information, seat availability prediction, reservation link, and navigation information, and converts it into JSON format.

[0099] Step 9:

[0100] The server transmits the generated final information to the terminal.

[0101] Step 10:

[0102] The device analyzes the received information and displays it in a user-friendly format. Specifically, it displays information about each store in a list format, along with detailed information such as seat availability forecasts, reservation links, and the shortest route.

[0103] Step 11:

[0104] Users can select the most suitable store based on the displayed information and use online reservations and route guidance to smoothly visit the store.

[0105] Example 1

[0106] 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."

[0107] In the past, travelers had to search numerous websites and information sources to find the right restaurant at their travel destination, which required time and effort. Furthermore, they had to individually check reservation status and calculate the optimal route, which was inefficient. Furthermore, systems lacked the ability to accurately predict available seats using past reservation data or automatically generate restaurants that perfectly match the user's travel requirements. The present invention aims to solve these problems and provide a system that is highly convenient for travelers.

[0108] 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.

[0109] In this invention, the server includes an input means for inputting travel conditions from a user, a conversion means for converting the conditions from the input means into JSON format data and transmitting it, a generation means for generating store information suitable for the user using a generative AI model based on the conditions, a prediction means for predicting seat availability for the generated store information using past reservation data and customer count data, a provision means for providing the user with the predicted seat availability and reservation link information, a route calculation means for acquiring the user's current location information and calculating the shortest route to the store using an external navigation service, and a display means for integrating and displaying the information obtained by the generation means, prediction means, provision means, and route calculation means to the user. This enables travelers to consistently obtain appropriate store information, predict seat availability, make reservations, and navigate through a single application.

[0110] "Input means" refers to the means by which a user inputs travel conditions, and includes terminal applications such as smartphones and tablets.

[0111] The "conversion means" is a means for converting the travel conditions entered by the user into JSON format data and sending it to the server.

[0112] "Generation means" refers to a means of generating store information suitable for a user's travel conditions using a generative AI model.

[0113] A "generative AI model" is a model that uses artificial intelligence to generate results based on input conditions, such as OpenAI's (registered trademark) GPT-3 (registered trademark).

[0114] The "prediction means" is a means for predicting seat availability based on the generated store information and using past reservation data and customer number data.

[0115] The "means for providing" is a means for obtaining predicted seat availability and reservation link information and providing it to users.

[0116] The "route calculation means" is a means for acquiring the user's current location information and calculating the shortest route to the store using an external navigation service.

[0117] An "external navigation service" is an external service that provides route calculations and map information, such as the Google Maps API.

[0118] The "display means" is a means for analyzing the information sent from the server and displaying it in a format that is easy for the user to view.

[0119] "JSON format" is an abbreviation for JavaScript (registered trademark) Object Notation, and is a type of lightweight data exchange format.

[0120] This invention relates to a system that comprehensively supports travelers in finding suitable restaurants during their trip. This system is mainly composed of a user's device, a server, and various API services. The server, which plays a central role in the system, generates store information based on information input by the user and performs prediction, provision, and calculation of navigation information.

[0121] Input Method

[0122] Users input their travel conditions through a device application on a smartphone or tablet. These conditions include information such as area, cuisine, budget, customer demographics, and date and time. The information entered by the user is converted into JSON format within the application and sent to the server.

[0123] Conversion Method

[0124] The terminal converts the travel conditions entered by the user into JSON format data, for example, the following prompt is generated:

[0125] {

[0126] "area": ​​"Rome",

[0127] "genre": "Italian",

[0128] "budget": "30",

[0129] "audience": "couple",

[0130] "datetime": "2023-04-01T20:00"

[0131] }

[0132] The converted data is sent to the server using the HTTPS protocol.

[0133] generation means

[0134] The server analyzes the received JSON data and generates store information that matches the travel conditions using a generative AI model (e.g., OpenAI's GPT-3). Specific examples of prompt sentences are as follows:

[0135] Generate a list of Italian restaurants in Rome that fit the following conditions: budget is under 30 euros, suitable for couples, and available on April 1st at 20:00.

[0136] The generated store information includes basic information such as the store name, address, and contact information.

[0137] Prediction methods

[0138] Based on the generated store information, the server applies an AI algorithm to predict seat availability using past reservation data and customer visitor count data. The prediction results show the seat availability rate for each store. For example, the seat availability rate for "La Pergola" is predicted to be 50%, and for "Roscioli" it is predicted to be 20%.

[0139] Providing means

[0140] The server retrieves the estimated seat availability and provides the reservation link for restaurants that offer online reservations to the user. This allows the user to make a reservation directly from the application. For example, the reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation".

[0141] Route calculation method

[0142] The server obtains the user's current location information (e.g., latitude and longitude: 41.9028, 12.4964) and uses an external navigation service to calculate the shortest route to the selected store. Using Google Maps API or similar, the server obtains detailed navigation information, including travel times by foot and public transportation. As a specific example, the server calculates that the walking route to "La Pergola" is a 15-minute walk.

[0143] Display means

[0144] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, it displays information about each store in a list format, and integrates seat availability forecasts, reservation links, and navigation information. Based on this information, the user can select the appropriate store and make a reservation or visit smoothly.

[0145] Specific examples

[0146] Here is a specific example: Suppose a user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The device sends this information in JSON format to the server as follows:

[0147] {

[0148] "area": ​​"Rome",

[0149] "genre": "Italian",

[0150] "budget": "30",

[0151] "audience": "couple",

[0152] "datetime": "2023-04-01T20:00"

[0153] }

[0154] Based on this information, the server generates a list of restaurants such as "La Pergola" and "Roscioli," and obtains restaurant information using a generative AI model. The server predicts seat availability, finding that "La Pergola" has 50% availability and "Roscioli" has 20% availability. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[0155] Furthermore, the server calculates the walking route from the user's current location to "La Pergola" and calculates that it is a 15-minute walk. Finally, the server combines this information and sends it to the device in the following format:

[0156] [

[0157] {

[0158] "name": "La Pergola",

[0159] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0160] "seating_prediction": 50,

[0161] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0162] "navigation_info": "15-minute walk"

[0163] },

[0164] {

[0165] "name": "Roscioli",

[0166] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0167] "seating_prediction": 20,

[0168] "booking_link": ""

[0169] }

[0170] ]

[0171] The terminal analyzes this information and displays it to the user in a list format. In this way, the system can help travelers select the best restaurant.

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

[0173] Step 1:

[0174] Users input their travel requirements into an application on their smartphone or tablet. The information they input includes the area, cuisine, budget, customer demographic, and date and time. Specifically, users input information such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." This information becomes the input data for subsequent processing.

[0175] Step 2:

[0176] The device converts the travel conditions entered by the user into JSON format. For example, the conditions entered by the user, "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM," are converted into the following JSON format data:

[0177] json

[0178] {

[0179] "area": ​​"Rome",

[0180] "genre": "Italian",

[0181] "budget": "30",

[0182] "audience": "couple",

[0183] "datetime": "2023-04-01T20:00"

[0184] }

[0185] The converted data becomes output data to be sent to the server.

[0186] Step 3:

[0187] The server analyzes the JSON data received from the device. During this analysis, information such as area, cuisine genre, budget, customer demographic, and date and time is extracted into individual variables and organized into an appropriate format. Specifically, the JSON data is parsed and each piece of information is stored in an internally managed variable. This analyzed data becomes the input data for the next generation method.

[0188] Step 4:

[0189] The server uses a generative AI model (e.g., OpenAI's GPT-3) to generate store information that matches the conditions. Specific examples of prompt sentences are as follows:

[0190] Generate a list of Italian restaurants in Rome that fit the following conditions: budget is under 30 euros, suitable for couples, and available on April 1st at 20:00.

[0191] This prompt sentence is input into the generative AI model, and store information that matches the conditions (store name, address, contact information, etc.) is obtained as output data in list format.

[0192] Step 5:

[0193] Based on the generated store list, the server predicts seat availability using past reservation data and customer number data. This prediction applies an AI algorithm to calculate the seat availability rate for each store. For example, the seat availability rate for "La Pergola" is predicted to be 50%, and for "Roscioli" it is predicted to be 20%. These seat availability rates become the output data of the prediction method.

[0194] Step 6:

[0195] The server retrieves the predicted seat availability and a reservation link for restaurants that accept online reservations. For example, the reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation." This reservation link information is also retrieved as output data.

[0196] Step 7:

[0197] The server obtains the user's current location information (e.g., latitude and longitude: 41.9028, 12.4964) and uses an external navigation service (e.g., Google Maps API) to calculate the shortest route to the selected store. The calculation results are output as detailed navigation information, including travel times by foot and public transportation. For example, the walking route to "La Pergola" is calculated as a 15-minute walk.

[0198] Step 8:

[0199] The server integrates the generated store information, seat availability forecast, reservation link, and navigation information, and formats it to be displayed to the user. For example, the following integrated information is generated:

[0200] json

[0201] [

[0202] {

[0203] "name": "La Pergola",

[0204] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0205] "seating_prediction": 50,

[0206] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0207] "navigation_info": "15-minute walk"

[0208] },

[0209] {

[0210] "name": "Roscioli",

[0211] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0212] "seating_prediction": 20,

[0213] "booking_link": ""

[0214] }

[0215] ]

[0216] This integrated information becomes the output data to the terminal.

[0217] Step 9:

[0218] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, it displays information about each store in a list format, and integrates seat availability forecasts, reservation links, and navigation information. Based on this information, the user can select the appropriate store and make a reservation or visit smoothly.

[0219] (Application example 1)

[0220] 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."

[0221] When traveling in an autonomous vehicle, users lack the means to easily find suitable restaurants, make reservations, and enjoy efficient navigation. This problem is particularly evident in situations where a system is needed that can generate restaurant information appropriate for different conditions in different areas, predict availability, quickly make reservations, and provide navigation to the restaurant.

[0222] 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.

[0223] In this invention, the server includes an input means for inputting travel conditions from the user, a generation means for generating restaurant information suitable for the user based on the conditions from the input means, a prediction means for predicting seat availability for the generated restaurant information, a provision means for providing the user with the predicted seat availability and link information for reservation sites, a route calculation means for calculating the shortest route from the user's current location to the restaurant, and a means for linking with the vehicle's navigation system and providing navigation information to the restaurant using the vehicle's current location information. This enables users to easily find suitable restaurants, make reservations, and enjoy efficient navigation.

[0224] The "input means" is a means for the user to input travel conditions.

[0225] The "generation means" is a means for generating store information suitable for a user based on the conditions from the input means.

[0226] The "prediction means" is a means for predicting seat availability for the generated store information.

[0227] The "means of provision" is a means for providing users with predicted seat availability and link information to reservation sites.

[0228] The "route calculation means" is a means for calculating the shortest route from the user's current location to the store.

[0229] The "display means" is a means for integrating the information obtained by the generation means, prediction means, provision means and route calculation means and displaying the information to the user.

[0230] The "store narrowing down means" is a means for narrowing down a number of stores based on area information, food genre, budget, customer demographic, and date and time input by the user.

[0231] A "machine learning algorithm" is an algorithm used to predict seat availability based on past reservation data and customer count data for a specific date and time.

[0232] The "means for providing navigation information" is a means for linking with the vehicle's navigation system and providing navigation information to the store using the vehicle's current location information.

[0233] The system of the present invention is a restaurant search support system installed in an autonomous driving vehicle. The main components of this system are a user input means, a server, a vehicle navigation system, and various API services. An embodiment of this system will be described in detail below.

[0234] Overall system configuration

[0235] In this system, users input their travel conditions through the on-board display of their autonomous vehicle, and the server provides appropriate store information based on those conditions. Furthermore, the system predicts store availability, provides reservation links, and displays the shortest route from the vehicle's current location to the store on the navigation system.

[0236] Input Method

[0237] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through the in-car display. This input information is converted into JSON format and sent to the server.

[0238] generation means

[0239] The server analyzes the received travel conditions and uses a generative AI model to generate store information that matches the conditions. This store information includes basic information such as store name, address, contact information, and business hours.

[0240] Prediction methods

[0241] The server then applies a machine learning algorithm to predict seat availability at each restaurant based on the generated restaurant list. This algorithm uses past reservation data and customer visitor trends to accurately predict seat availability for a specific date and time.

[0242] Providing means

[0243] The server then provides the user with the predicted seat availability and, for stores that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the in-car display.

[0244] Route calculation method

[0245] The server uses the current location information obtained from the vehicle's GPS module to calculate the shortest route to the selected store using external navigation services such as Google Maps API. The calculation results are displayed on the vehicle's navigation system, providing the user with detailed navigation information.

[0246] Display means

[0247] The vehicle's navigation system receives the integrated information sent from the server and displays it in an easy-to-read format for the user. By displaying all necessary information, such as store information, seat availability forecasts, reservation links, and the shortest route, the user can smoothly select a store, visit, and make a reservation.

[0248] Specific examples

[0249] If a couple traveling in Rome is looking for an Italian restaurant, they might enter criteria like "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8pm." These criteria would be sent to the server in the form of text like this:

[0250] Area: Rome

[0251] Cuisine:Italian

[0252] Budget: Under 30 euros

[0253] Customers: Couples

[0254] Date and time: 2023-04-01 20:00

[0255] Based on this information, the server uses an AI model to generate a list of restaurants, predict seat availability, and integrates reservation links and navigation information to display on the in-car display.

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

[0257] Step 1:

[0258] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) through the in-car display. The input information is converted into JSON format. This input information may include, for example, "Area: Rome," "Cuisine: Italian," "Budget: Under 30 euros," "Customer demographic: Couples," and "Date and time: 2023-04-01 20:00." The input is sent to the server.

[0259] Step 2:

[0260] The server analyzes the received travel conditions in JSON format. Using a generative AI model, it generates store information that matches the entered conditions. This process extracts relevant store information (store name, address, contact information, business hours, etc.) from the database and creates a list. Specifically, this includes store information such as "La Pergola" and "Roscioli."

[0261] Step 3:

[0262] The server then applies machine learning algorithms to predict seat availability based on the generated restaurant information. Using past reservation data and customer count data for specific dates and times, it can obtain information such as "La Pergola's predicted seat availability rate is 50%" and "Roscioli's predicted seat availability rate is 20%."

[0263] Step 4:

[0264] The server retrieves link information for reservation sites for restaurants that can accept reservations along with predicted seat availability information. It calls the API of an online reservation site and obtains, for example, "La Pergola reservation link: https: / / example.com / la-pergola-reservation." It also adds this link to the restaurant information.

[0265] Step 5:

[0266] The server obtains the vehicle's current location information from the vehicle's GPS module and uses navigation services such as Google Maps API to calculate the shortest route from the current location to the selected store. Specifically, it generates navigation information such as "It's a 15-minute walk from your current location to La Pergola."

[0267] Step 6:

[0268] The server combines the generated store information, seat availability predictions, reservation links, and navigation information and sends them to the in-vehicle display, allowing the user to find the appropriate store at a glance.

[0269] Step 7:

[0270] The in-car display displays the integrated store information in an easy-to-read format for the user, such as "Store name: La Pergola," "Estimated occupancy rate: 50%," "Reservation link: https: / / example.com / la-pergola-reservation," and "Navigation information: 15 minutes' walk."

[0271] Step 8:

[0272] The user selects a store based on the displayed information, clicks the reservation link if necessary, and makes a reservation. The autonomous vehicle then heads to the selected store according to the navigation information.

[0273] 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.

[0274] The system of the present invention comprehensively assists travelers in finding suitable restaurants during their trip, and further combines an emotion engine that recognizes the user's emotions. An embodiment of this system will be described in detail below.

[0275] Overall system configuration

[0276] This system is mainly composed of the user's device, a server, an emotion engine, and various API services. The server plays a central role in the system, generating store information based on user input, and calculating predictions, provision, and navigation information, and further customizing the system according to the user's emotions using the emotion engine.

[0277] Input Method

[0278] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[0279] emotion recognition means

[0280] When a user enters travel conditions into the device, the emotion engine uses the device's camera and microphone to analyze the user's facial expressions and voice. The emotion engine uses this data to identify the user's current emotional state. For example, if the user is smiling, the emotion of "joy" is recognized.

[0281] generation means

[0282] The server analyzes the received user's travel conditions and the emotion information from the emotion engine, and generates store information suitable for the user based on this. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[0283] Emotion-based customization methods

[0284] The server customizes the store information it provides based on the user's emotional state as determined by the emotion engine. For example, if the emotion of "sadness" is recognized, stores with a calm atmosphere will be prioritized.

[0285] Prediction methods

[0286] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[0287] Providing means

[0288] The server then provides the user with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the application.

[0289] Route calculation method

[0290] The server obtains the user's current location information and uses external navigation services such as Google Maps API to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[0291] Display means

[0292] The terminal receives the integrated information sent from the server and displays it in an easy-to-read format for the user. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, the user can select the most suitable store and smoothly visit and make a reservation.

[0293] Specific examples

[0294] Here's a concrete example: A user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The emotion engine recognizes the emotion "joy" using the camera and microphone. The device sends this to the server in JSON format as { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T20:00", "emotion": "joy"}.

[0295] The server generates a list of restaurants, such as "La Pergola" and "Roscioli," based on the travel conditions and emotional state. The server predicts the seat availability of "La Pergola" at 50% and "Roscioli" at 20%. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[0296] Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola" and determines that it is a 15-minute walk.

[0297] Finally, the server combines this information and sends it to the device in the following format:

[0298] [

[0299] {

[0300] "name": "La Pergola",

[0301] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0302] "seating_prediction": 50,

[0303] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0304] "navigation_info": "15-minute walk"

[0305] },

[0306] {

[0307] "name": "Roscioli",

[0308] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0309] "seating_prediction": 20,

[0310] "booking_link": ""

[0311] }

[0312] ]

[0313] The device analyzes and displays this information, allowing the user to intuitively determine which restaurant is most suitable. In this way, the system can further customize and support travelers in choosing the best restaurant based on their emotional information.

[0314] The processing flow will be explained below.

[0315] Step 1:

[0316] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) into the terminal application. The camera and microphone also operate to collect the user's emotional state (facial expressions and voice).

[0317] Step 2:

[0318] The device converts the entered travel conditions into JSON format and sends the collected emotion data to the server.

[0319] Step 3:

[0320] The server analyzes the received JSON data and extracts each condition item entered by the user (area, cuisine genre, budget, customer demographic, date and time) and emotional data.

[0321] Step 4:

[0322] The emotion engine analyzes the extracted emotion data to identify the user's current emotional state, such as "joy," "sadness," or "anger," using facial expression recognition or voice analysis, for example.

[0323] Step 5:

[0324] The server uses generative AI to generate a list of appropriate store information based on the extracted travel conditions and the identified emotional state. For example, stores with a bright atmosphere are prioritized for "joy," while stores with a calm atmosphere are prioritized for "sadness."

[0325] Step 6:

[0326] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, and predicts seat availability for a specific date and time based on past reservation data and customer trends.

[0327] Step 7:

[0328] The server obtains reservation link information for restaurants that accept online reservations using an external reservation system API. For example, it calls the OpenTable API to obtain the reservation link.

[0329] Step 8:

[0330] To calculate the shortest route based on the user's current location, the server calls an external navigation service such as the Google Maps API and calculates the walking route to the store and travel time including transportation options.

[0331] Step 9:

[0332] The server generates final information by integrating the obtained store information, seat availability prediction, reservation link, and navigation information, and converts it into JSON format.

[0333] Step 10:

[0334] The server transmits the generated final information to the terminal.

[0335] Step 11:

[0336] The device analyzes the received information and displays it in a user-friendly format. Specifically, information about each store is displayed in a list format, along with detailed information such as seat availability forecasts, reservation links, and the shortest route.

[0337] Step 12:

[0338] Users can select the most suitable store based on the displayed information and use online reservations and route guidance to smoothly visit the store.

[0339] Example 2

[0340] 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."

[0341] Conventional travel support systems simply provide information without considering the user's emotional state when searching for suitable restaurants during a trip. As a result, users may not be fully satisfied. Furthermore, they lack real-time seat availability and intuitive route guidance, making them difficult to describe as user-friendly systems. The present invention aims to solve these problems and provide a system that provides optimal restaurant information while taking the user's emotional state into consideration.

[0342] 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.

[0343] In this invention, the server includes input means for inputting travel conditions from a user, generation means for generating store information suitable for the user based on the conditions from the input means, emotion recognition means for analyzing the user's facial expressions and voice and identifying their emotional state, customization means for customizing the store information based on their emotional state, prediction means for predicting seat availability based on the generated store information, provision means for providing the user with the predicted seat availability and link information for reservation sites, route calculation means for calculating the shortest route from the user's current location to the store, and display means for integrating and displaying to the user the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means. This enables optimal store selection and navigation that comprehensively considers the user's travel conditions and emotional state.

[0344] "User" refers to a person who uses the system to input travel conditions and obtain optimal restaurant information.

[0345] "Travel conditions" refers collectively to elements such as area, cuisine, budget, customer demographic, date and time entered by the user.

[0346] "Input means" refers to a device or software that provides an interface for users to input travel conditions.

[0347] The "generation means" refers to the function of the server that generates store information suitable for the user based on the travel conditions acquired from the input means.

[0348] "Emotion recognition means" refers to software or hardware that analyzes a user's facial expressions and voice to identify their emotional state.

[0349] The "customization means" refers to a function of the server for providing appropriate store information based on the emotional state identified by the emotion recognition means.

[0350] The "prediction means" refers to the function of the server for predicting seat availability based on the store information generated by the generation means.

[0351] "Provision means" refers to the server's function of providing users with predicted seat availability and link information to reservation sites.

[0352] "Route calculation means" refers to the server's function for calculating the shortest route from the user's current location to the store.

[0353] "Display means" refers to a device or software for integrating and displaying to the user the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means.

[0354] "Store information" refers to information including the restaurant's name, address, contact information, seat availability, reservation link, etc.

[0355] "Availability" refers to information indicating the availability of seats at the store on the specified date and time.

[0356] "Reservation Link" means a web link for making a reservation for a store online.

[0357] "Emotional state" refers to the psychological state identified by the user's facial expression and voice.

[0358] The system of the present invention comprehensively supports travelers in finding suitable restaurants during their trip, and further combines an emotion engine that recognizes the user's emotions. An embodiment of the system of the present invention will be described in detail.

[0359] This system is mainly composed of the user's device, a server, an emotion recognition engine, and various API services. The server plays a central role in the system, generating store information based on user input, predicting, providing, and calculating navigation information, and further customizing the system according to the user's emotions using the emotion recognition engine.

[0360] Hardware and software used

[0361] Device: A smartphone or tablet used by a user. These devices have built-in cameras and microphones and are used for emotion recognition.

[0362] Emotion recognition engine: Software that analyzes a user's facial expressions and voice to identify their emotional state. Machine learning algorithms are used for emotion recognition.

[0363] Server: Receives requests and accesses databases to process information. AI algorithms are used to predict seat availability, and Google Maps API is used to calculate routes.

[0364] System Operation

[0365] Users input their travel conditions (area, cuisine, budget, customer demographic, date and time) through a smartphone or tablet application. When they do so, the emotion recognition engine uses the device's camera and microphone to analyze the user's facial expressions and voice to identify their emotional state.

[0366] As a concrete example, consider the case where a user inputs travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM," and the emotion engine recognizes the emotion of "joy" using the camera and microphone. The device then sends this in JSON format to the server.

[0367] The server analyzes the received travel conditions and emotion information and generates information on suitable stores within the area. The store information includes a list of restaurants and cafes in the area as well as basic information such as the name, address, and contact information of each store.

[0368] Furthermore, the server customizes the store information it provides based on the user's emotional state as determined by the emotion recognition engine. For example, if the emotion "sadness" is recognized, stores with a calm atmosphere will be prioritized.

[0369] The server applies an AI algorithm to predict seat availability at each store based on the generated store list. It then obtains the predicted seat availability and reservation link information for stores that offer online reservations, and provides this information to the user. This allows the user to make reservations directly through the application. The server also uses the Google Maps API to calculate the shortest route from the user's current location to the selected store.

[0370] Finally, the integrated information is sent to the device and displayed to the user. For example, a list containing the store names "La Pergola" and "Roscioli" is displayed with all necessary information integrated, such as seat availability forecast, reservation links, and the shortest route. Based on this information, the user can smoothly select the best store and visit / reserve.

[0371] Prompt Sentence Examples

[0372] "I'd like to make a reservation for a couple at a restaurant in Rome that serves Italian food for under 30 euros on April 1st at 8pm. The user emotion is identified as 'happiness'. Please provide specific restaurant information, estimated seat availability, a reservation link, and transportation information."

[0373] By inputting this prompt, the generative AI model can suggest optimal restaurants based on specific travel conditions and emotional information.

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

[0375] Step 1:

[0376] The user uses a smartphone or tablet to enter travel conditions (area, cuisine, budget, customer demographic, date and time). Specifically, the user enters "Area: Rome," "Cuisine: Italian," "Budget: Under 30 euros," "Customer demographic: Couples," and "Date and time: April 1st, 8:00 PM" within the application. The entered information is displayed in the application for the user to review.

[0377] Input: Travel conditions entered by the user

[0378] Output: Travel condition data entered

[0379] Step 2:

[0380] The device converts the entered travel conditions into JSON format and sends it to the server. Specifically, it converts it into the following format: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "Couple", "datetime": "2023-04-01T20:00"}. The converted data is sent to the server via an HTTP POST request.

[0381] Input: Travel condition data entered

[0382] Output: JSON format travel condition data

[0383] Step 3:

[0384] The device uses a camera and microphone to collect the user's facial expressions and voice and sends them to an emotion recognition engine. The emotion recognition engine analyzes this data to identify the user's emotional state. Specifically, the camera recognizes the user's face and analyzes their facial expressions in real time, while the microphone collects and analyzes their voice. The emotion recognition engine identifies emotions such as "happiness" or "sadness" and sends the results in JSON format to the server.

[0385] Input: User's facial expression data and voice data

[0386] Output: JSON data of identified emotional states

[0387] Step 4:

[0388] The server analyzes the received travel conditions and emotional information and generates a list of appropriate restaurants. Specifically, it accesses a database and extracts restaurant information that matches the specified area and genre. For example, restaurants such as "La Pergola" and "Roscioli" are listed based on the criteria "Rome," "Italian," "under 30 euros," and "couples." If the emotional information is "joy," restaurants with more positive reviews are prioritized in the list.

[0389] Input: JSON format travel condition data, emotional state data

[0390] Output: Generated store information list

[0391] Step 5:

[0392] The server customizes the store information based on the emotional state identified by the emotion recognition engine. For example, if the user's emotion is "sadness," quiet and relaxing stores are prioritized in the list. The customized store list is then updated again.

[0393] Input: JSON data of identified emotional states, generated store information list

[0394] Output: Customized store information list

[0395] Step 6:

[0396] The server applies an AI algorithm to predict the seating availability of each restaurant in the generated restaurant list. Specifically, it predicts the seating availability rate for a specific date and time based on past reservation data and customer trends. For example, the seating availability rate for "La Pergola" is estimated to be 50% and for "Roscioli" to be 20%.

[0397] Input: Customized store information list

[0398] Output: List of restaurants with availability

[0399] Step 7:

[0400] The server obtains reservation link information for stores that allow online reservations and provides it to the user. For example, the server obtains the reservation link for "La Pergola" as https: / / booking.com / la-pergola and adds the reservation link.

[0401] Input: List of store information including availability

[0402] Output: List of store information including reservation links

[0403] Step 8:

[0404] The server uses the Google Maps API to calculate the shortest route from the user's current location to the selected store. Specifically, it calculates the route by sending a request to the Google Maps API using the user's current location information (latitude and longitude). For example, it calculates the walking route from the current location (41.9028, 12.4964) to "La Pergola" as 15 minutes.

[0405] Input: List of store information including reservation links, user's current location information

[0406] Output: Integrated store information list including shortest route information

[0407] Step 9:

[0408] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, information about "La Pergola" such as the name, address, predicted seat availability, reservation link, and 15-minute walk are displayed in a list format. Based on this information, the user can select the appropriate store and make a visit or reservation.

[0409] Input: Integrated store information list including shortest route information

[0410] Output: Unified store information displayed to the user

[0411] Through the above steps, the user can comprehensively consider their travel conditions and emotional state, select the most suitable store, and use it comfortably.

[0412] (Application example 2)

[0413] 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."

[0414] Conventional systems lack customization based on user emotions when helping travelers find suitable restaurants during their trips, resulting in low user satisfaction. Furthermore, when predicting available seats, providing reservation links, or calculating the shortest route, it is difficult to determine which restaurant information best suits the user's current emotions.

[0415] The specification processing by the specification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes an input means for inputting travel conditions from a user, a generation means for generating store information suitable for the user based on the conditions from the input means, a prediction means for predicting seat availability for the generated store information, a provision means for providing the user with the predicted seat availability and reservation link information, a route calculation means for calculating the shortest route from the user's current location to the store, an emotion recognition means for analyzing the user's emotions, a customization means for customizing the store information to be provided according to the user's emotional state, and a display means for integrating and displaying the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means to the user. This makes it possible to provide optimal store information according to the user's emotions in real time, resulting in high user satisfaction.

[0416] "Input means" refers to a device or interface that allows a user to input travel conditions.

[0417] The "generation means" is a device or algorithm that generates store information suitable for the user based on the conditions received from the input means.

[0418] The "prediction means" is a device or algorithm for predicting seat availability based on the generated store information.

[0419] "Providing means" refers to a device or algorithm that provides predicted seat availability and reservation link information to users.

[0420] The "route calculation means" is a device or algorithm that calculates the shortest route from the user's current location to the store.

[0421] "Emotion recognition means" refers to devices or algorithms for analyzing a user's emotions.

[0422] "Customization means" refers to devices or algorithms that adjust the store information provided according to the user's emotional state and provide the user with the most appropriate information.

[0423] The "display means" is a device or interface that integrates the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means and displays it to the user.

[0424] This invention is a system for travelers to find the best restaurants during their trip, and has a customization function using an emotion engine. Below, we will explain the program processing of this system and specific embodiments.

[0425] Overall system configuration

[0426] This system is primarily composed of the user's device, a server, an emotion engine, and various API services. The server, which plays a central role in the system, generates store information based on information input by the user and performs predictions, provision, and calculations of navigation information. It also uses the emotion engine to realize customization according to the user's emotions.

[0427] Input Method

[0428] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[0429] emotion recognition means

[0430] When a user enters travel information into the device, the emotion engine uses the device's camera and microphone to analyze the user's facial expressions and voice. Based on this data, the emotion engine identifies the user's current emotional state; for example, if the user is smiling, it will recognize the emotion of "joy."

[0431] generation means

[0432] The server analyzes the user's travel conditions and the emotion information from the emotion engine, and generates store information appropriate for the user based on this. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[0433] Prediction methods

[0434] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[0435] Providing means

[0436] The server then provides users with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing them to make reservations directly through the application.

[0437] Route calculation method

[0438] The server acquires the user's current location information and uses an external navigation service to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[0439] Display means

[0440] The terminal receives the integrated information sent from the server and displays it in an easy-to-read format for the user. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, users can select the most suitable store and smoothly visit and make a reservation.

[0441] Specific examples

[0442] Let's say a user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The emotion engine recognizes the emotion "joy" using the camera and microphone. The device sends this to the server in JSON format as { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T8:00 PM", "emotion": "joy"}. The server generates a list of restaurants such as "La Pergola" and "Roscioli" based on the travel conditions and emotional state. The server predicts seat availability and finds that "La Pergola" is 50% full and "Roscioli" is 20% full. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation." Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola," estimating it to be a 15-minute walk. Finally, the server combines this information and sends it to the device in the following format:

[0443] [

[0444] {

[0445] "name": "La Pergola",

[0446] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0447] "seating_prediction": 50,

[0448] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0449] "navigation_info": "15-minute walk"

[0450] },

[0451] {

[0452] "name": "Roscioli",

[0453] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0454] "seating_prediction": 20,

[0455] "booking_link": ""

[0456] }

[0457] ]

[0458] In this way, the system can further customize and support travelers in choosing the best restaurant based on emotional information.

[0459] Prompt Sentence Examples

[0460] "User is looking for Italian food in Rome. The emotion is joy. Please suggest restaurants with a bright and fun atmosphere. Also provide seating availability forecast and walking directions."

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

[0462] Step 1:

[0463] Users input their travel requirements through a device application on a smartphone or tablet. The information they input includes the area, cuisine, budget, customer demographic, and date and time. This information is converted into JSON format and sent to the server. Examples of input data include: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "Couples", "datetime": "2023-04-01T20:00"}. Based on the data entered here, the basic data for generating appropriate store information is established in the next step.

[0464] Step 2:

[0465] When a user enters travel conditions into a device, the emotion engine, which acts as an emotion recognition means, analyzes the user's facial expressions and voice using the device's camera and microphone. The emotion engine uses this data to identify the user's current emotional state and adds that emotional information to the travel conditions. For example, the emotion of "joy" is recognized from facial expressions and voice. In this case, the emotional information is added as follows: { "emotion": "joy"}. This lays the foundation for providing appropriate store information based on the user's emotional state.

[0466] Step 3:

[0467] The server receives travel conditions and emotion information and generates restaurant information suitable for the user based on this information. Specifically, it narrows down the list of restaurants and cafes that match the area, cuisine genre, budget, customer demographic, and date and time. In this process, it obtains restaurant data using an external restaurant information API. For example, the obtained restaurant information looks like this: [{ "name": "La Pergola", "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy", "seating_prediction": null, "booking_link": null}].

[0468] Step 4:

[0469] Based on the generated store information, the server uses a prediction method to predict the seating availability of each store. A machine learning algorithm is applied based on past reservation data and customer count data for a specific date and time to obtain a prediction result. For example, the following prediction result can be obtained: { "name": "La Pergola", "seating_prediction": "50%"}. This allows you to understand the seating availability of each store on a specific date and time.

[0470] Step 5:

[0471] The server provides the seat availability prediction results and reservation link information. For restaurants that accept online reservations, the server obtains and adds the link information of the reservation site. For example, the following link information is added: { "name": "La Pergola", "booking_link": "https: / / opentable.com / la-pergola-reservation"}. This allows users to make reservations directly through the application.

[0472] Step 6:

[0473] The server obtains the user's current location information and uses an external navigation service (e.g., Google Maps API) to calculate the shortest route to the selected store. The calculation result is provided as navigation information, for example, as follows: { "name": "La Pergola", "navigation_info": "15-minute walk"}. This allows the user to reach their destination efficiently.

[0474] Step 7:

[0475] The device receives the integrated information sent from the server and displays it in an easy-to-read format for the user. Specifically, it not only displays information about each restaurant in a list format, but also integrates all necessary information, such as seating availability predictions, reservation links, and the shortest route. For example, it might be displayed in the following format: [{ "name": "La Pergola", "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy", "seating_prediction": "50%", "booking_link": "https: / / opentable.com / la-pergola-reservation", "navigation_info": "15-minute walk"}]. Based on this information, users can select the best restaurant and smoothly visit and make a reservation.

[0476] 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.

[0477] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (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.

[0478] 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.

[0479] [Second embodiment]

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

[0481] 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.

[0482] 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).

[0483] 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.

[0484] 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.

[0485] 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).

[0486] 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.

[0487] 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.

[0488] 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.

[0489] 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.

[0490] 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.

[0491] 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."

[0492] The system of the present invention comprehensively supports travelers in finding suitable restaurants during their trip. An embodiment of this system will be described in detail below.

[0493] Overall system configuration

[0494] This system is mainly composed of the user's device, a server, and various API services. The server plays a central role in the system, generating store information based on user input, and calculating prediction, provision, and navigation information.

[0495] Input Method

[0496] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[0497] generation means

[0498] The server analyzes the user's travel conditions and uses AI to generate a list of store information that matches the conditions. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[0499] Prediction methods

[0500] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list. This algorithm is based on past reservation data and customer trend data, and makes highly accurate predictions of seat availability for specific dates and times.

[0501] Providing means

[0502] The server then provides the user with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the application.

[0503] Route calculation method

[0504] The server obtains the user's current location information and uses external navigation services such as Google Maps API to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[0505] Display means

[0506] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, the user can select the most suitable store and smoothly visit and make a reservation.

[0507] Specific examples

[0508] Here's an example: Suppose a user enters travel conditions such as "Rome", "Italian", "under 30 euros", "couple", and "April 1st, 8:00 PM". The device sends this to the server in JSON format: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T20:00"}.

[0509] Based on this information, the server generates a list of restaurants such as "La Pergola" and "Roscioli." It predicts the seat availability of "La Pergola" at 50% and "Roscioli" at 20%. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[0510] Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola" and determines that it is a 15-minute walk.

[0511] Finally, the server combines this information and sends it to the device in the following format:

[0512] [

[0513] {

[0514] "name": "La Pergola",

[0515] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0516] "seating_prediction": 50,

[0517] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0518] "navigation_info": "15-minute walk"

[0519] },

[0520] {

[0521] "name": "Roscioli",

[0522] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0523] "seating_prediction": 20,

[0524] "booking_link": ""

[0525] }

[0526] ]

[0527] The terminal analyzes and displays this information, allowing the user to intuitively determine which restaurant is most suitable. In this way, the system can help travelers choose the best restaurant.

[0528] The processing flow will be explained below.

[0529] Step 1:

[0530] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) into the application on the terminal.

[0531] Step 2:

[0532] The terminal converts the input information into JSON format and sends it to the server.

[0533] Step 3:

[0534] The server analyzes the received JSON data and extracts each condition item entered by the user (area, cuisine, budget, customer demographic, date and time).

[0535] Step 4:

[0536] The server uses generation AI to generate an appropriate restaurant list based on the extracted conditions, searching and narrowing down the list of restaurants from multiple restaurant databases in the area.

[0537] Step 5:

[0538] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[0539] Step 6:

[0540] The server obtains reservation link information for restaurants that accept online reservations by using the API of an external reservation system. For example, it obtains the link by calling the OpenTable API.

[0541] Step 7:

[0542] To calculate the shortest route based on the user's current location, the server calls an external navigation service such as the Google Maps API and calculates the walking route to the store and travel time including transportation options.

[0543] Step 8:

[0544] The server generates final information by integrating the obtained store information, seat availability prediction, reservation link, and navigation information, and converts it into JSON format.

[0545] Step 9:

[0546] The server transmits the generated final information to the terminal.

[0547] Step 10:

[0548] The device analyzes the received information and displays it in a user-friendly format. Specifically, it displays information about each store in a list format, along with detailed information such as seat availability forecasts, reservation links, and the shortest route.

[0549] Step 11:

[0550] Users can select the most suitable store based on the displayed information and use online reservations and route guidance to smoothly visit the store.

[0551] Example 1

[0552] 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."

[0553] In the past, travelers had to search numerous websites and information sources to find the right restaurant at their travel destination, which required time and effort. Furthermore, they had to individually check reservation status and calculate the optimal route, which was inefficient. Furthermore, systems lacked the ability to accurately predict available seats using past reservation data or automatically generate restaurants that perfectly match the user's travel requirements. The present invention aims to solve these problems and provide a system that is highly convenient for travelers.

[0554] 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.

[0555] In this invention, the server includes an input means for inputting travel conditions from a user, a conversion means for converting the conditions from the input means into JSON format data and transmitting it, a generation means for generating store information suitable for the user using a generative AI model based on the conditions, a prediction means for predicting seat availability for the generated store information using past reservation data and customer count data, a provision means for providing the user with the predicted seat availability and reservation link information, a route calculation means for acquiring the user's current location information and calculating the shortest route to the store using an external navigation service, and a display means for integrating and displaying the information obtained by the generation means, prediction means, provision means, and route calculation means to the user. This enables travelers to consistently obtain appropriate store information, predict seat availability, make reservations, and navigate through a single application.

[0556] "Input means" refers to the means by which a user inputs travel conditions, and includes terminal applications such as smartphones and tablets.

[0557] The "conversion means" is a means for converting the travel conditions entered by the user into JSON format data and sending it to the server.

[0558] "Generation means" refers to a means of generating store information suitable for a user's travel conditions using a generative AI model.

[0559] A "generative AI model" is a model that uses artificial intelligence to generate results based on input conditions, such as OpenAI's GPT-3.

[0560] The "prediction means" is a means for predicting seat availability based on the generated store information and using past reservation data and customer number data.

[0561] The "means for providing" is a means for obtaining predicted seat availability and reservation link information and providing it to users.

[0562] The "route calculation means" is a means for acquiring the user's current location information and calculating the shortest route to the store using an external navigation service.

[0563] An "external navigation service" is an external service that provides route calculations and map information, such as the Google Maps API.

[0564] The "display means" is a means for analyzing the information sent from the server and displaying it in a format that is easy for the user to view.

[0565] "JSON format" is an abbreviation for JavaScript Object Notation and is a lightweight data exchange format.

[0566] This invention relates to a system that comprehensively supports travelers in finding suitable restaurants during their trip. This system is mainly composed of a user's device, a server, and various API services. The server, which plays a central role in the system, generates store information based on information input by the user and performs prediction, provision, and calculation of navigation information.

[0567] Input Method

[0568] Users input their travel conditions through a device application on a smartphone or tablet. These conditions include information such as area, cuisine, budget, customer demographics, and date and time. The information entered by the user is converted into JSON format within the application and sent to the server.

[0569] Conversion Method

[0570] The terminal converts the travel conditions entered by the user into JSON format data, for example, the following prompt is generated:

[0571] {

[0572] "area": ​​"Rome",

[0573] "genre": "Italian",

[0574] "budget": "30",

[0575] "audience": "couple",

[0576] "datetime": "2023-04-01T20:00"

[0577] }

[0578] The converted data is sent to the server using the HTTPS protocol.

[0579] generation means

[0580] The server analyzes the received JSON data and generates store information that matches the travel conditions using a generative AI model (e.g., OpenAI's GPT-3). Specific examples of prompt sentences are as follows:

[0581] Generate a list of Italian restaurants in Rome that fit the following conditions: budget is under 30 euros, suitable for couples, and available on April 1st at 20:00.

[0582] The generated store information includes basic information such as the store name, address, and contact information.

[0583] Prediction methods

[0584] Based on the generated store information, the server applies an AI algorithm to predict seat availability using past reservation data and customer visitor count data. The prediction results show the seat availability rate for each store. For example, the seat availability rate for "La Pergola" is predicted to be 50%, and for "Roscioli" it is predicted to be 20%.

[0585] Providing means

[0586] The server retrieves the estimated seat availability and provides the reservation link for restaurants that offer online reservations to the user. This allows the user to make a reservation directly from the application. For example, the reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation".

[0587] Route calculation method

[0588] The server obtains the user's current location information (e.g., latitude and longitude: 41.9028, 12.4964) and uses an external navigation service to calculate the shortest route to the selected store. Using Google Maps API or similar, the server obtains detailed navigation information, including travel times by foot and public transportation. As a specific example, the server calculates that the walking route to "La Pergola" is a 15-minute walk.

[0589] Display means

[0590] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, it displays information about each store in a list format, and integrates seat availability forecasts, reservation links, and navigation information. Based on this information, the user can select the appropriate store and make a reservation or visit smoothly.

[0591] Specific examples

[0592] Here is a specific example: Suppose a user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The device sends this information in JSON format to the server as follows:

[0593] {

[0594] "area": ​​"Rome",

[0595] "genre": "Italian",

[0596] "budget": "30",

[0597] "audience": "couple",

[0598] "datetime": "2023-04-01T20:00"

[0599] }

[0600] Based on this information, the server generates a list of restaurants such as "La Pergola" and "Roscioli," and obtains restaurant information using a generative AI model. The server predicts seat availability, finding that "La Pergola" has 50% availability and "Roscioli" has 20% availability. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[0601] Furthermore, the server calculates the walking route from the user's current location to "La Pergola" and calculates that it is a 15-minute walk. Finally, the server combines this information and sends it to the device in the following format:

[0602] [

[0603] {

[0604] "name": "La Pergola",

[0605] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0606] "seating_prediction": 50,

[0607] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0608] "navigation_info": "15-minute walk"

[0609] },

[0610] {

[0611] "name": "Roscioli",

[0612] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0613] "seating_prediction": 20,

[0614] "booking_link": ""

[0615] }

[0616] ]

[0617] The terminal analyzes this information and displays it to the user in a list format. In this way, the system can help travelers select the best restaurant.

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

[0619] Step 1:

[0620] Users input their travel requirements into an application on their smartphone or tablet. The information they input includes the area, cuisine, budget, customer demographic, and date and time. Specifically, users input information such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." This information becomes the input data for subsequent processing.

[0621] Step 2:

[0622] The device converts the travel conditions entered by the user into JSON format. For example, the conditions entered by the user, "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM," are converted into the following JSON format data:

[0623] json

[0624] {

[0625] "area": ​​"Rome",

[0626] "genre": "Italian",

[0627] "budget": "30",

[0628] "audience": "couple",

[0629] "datetime": "2023-04-01T20:00"

[0630] }

[0631] The converted data becomes output data to be sent to the server.

[0632] Step 3:

[0633] The server analyzes the JSON data received from the device. During this analysis, information such as area, cuisine genre, budget, customer demographic, and date and time is extracted into individual variables and organized into an appropriate format. Specifically, the JSON data is parsed and each piece of information is stored in an internally managed variable. This analyzed data becomes the input data for the next generation method.

[0634] Step 4:

[0635] The server uses a generative AI model (e.g., OpenAI's GPT-3) to generate store information that matches the conditions. Specific examples of prompt sentences are as follows:

[0636] Generate a list of Italian restaurants in Rome that fit the following conditions: budget is under 30 euros, suitable for couples, and available on April 1st at 20:00.

[0637] This prompt sentence is input into the generative AI model, and store information that matches the conditions (store name, address, contact information, etc.) is obtained as output data in list format.

[0638] Step 5:

[0639] Based on the generated store list, the server predicts seat availability using past reservation data and customer number data. This prediction applies an AI algorithm to calculate the seat availability rate for each store. For example, the seat availability rate for "La Pergola" is predicted to be 50%, and for "Roscioli" it is predicted to be 20%. These seat availability rates become the output data of the prediction method.

[0640] Step 6:

[0641] The server retrieves the predicted seat availability and a reservation link for restaurants that accept online reservations. For example, the reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation." This reservation link information is also retrieved as output data.

[0642] Step 7:

[0643] The server obtains the user's current location information (e.g., latitude and longitude: 41.9028, 12.4964) and uses an external navigation service (e.g., Google Maps API) to calculate the shortest route to the selected store. The calculation results are output as detailed navigation information, including travel times by foot and public transportation. For example, the walking route to "La Pergola" is calculated as a 15-minute walk.

[0644] Step 8:

[0645] The server integrates the generated store information, seat availability forecast, reservation link, and navigation information, and formats it to be displayed to the user. For example, the following integrated information is generated:

[0646] json

[0647] [

[0648] {

[0649] "name": "La Pergola",

[0650] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0651] "seating_prediction": 50,

[0652] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0653] "navigation_info": "15-minute walk"

[0654] },

[0655] {

[0656] "name": "Roscioli",

[0657] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0658] "seating_prediction": 20,

[0659] "booking_link": ""

[0660] }

[0661] ]

[0662] This integrated information becomes the output data to the terminal.

[0663] Step 9:

[0664] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, it displays information about each store in a list format, and integrates seat availability forecasts, reservation links, and navigation information. Based on this information, the user can select the appropriate store and make a reservation or visit smoothly.

[0665] (Application example 1)

[0666] 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."

[0667] When traveling in an autonomous vehicle, users lack the means to easily find suitable restaurants, make reservations, and enjoy efficient navigation. This problem is particularly evident in situations where a system is needed that can generate restaurant information appropriate for different conditions in different areas, predict availability, quickly make reservations, and provide navigation to the restaurant.

[0668] 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.

[0669] In this invention, the server includes an input means for inputting travel conditions from the user, a generation means for generating restaurant information suitable for the user based on the conditions from the input means, a prediction means for predicting seat availability for the generated restaurant information, a provision means for providing the user with the predicted seat availability and link information for reservation sites, a route calculation means for calculating the shortest route from the user's current location to the restaurant, and a means for linking with the vehicle's navigation system and providing navigation information to the restaurant using the vehicle's current location information. This enables users to easily find suitable restaurants, make reservations, and enjoy efficient navigation.

[0670] The "input means" is a means for the user to input travel conditions.

[0671] The "generation means" is a means for generating store information suitable for a user based on the conditions from the input means.

[0672] The "prediction means" is a means for predicting seat availability for the generated store information.

[0673] The "means of provision" is a means for providing users with predicted seat availability and link information to reservation sites.

[0674] The "route calculation means" is a means for calculating the shortest route from the user's current location to the store.

[0675] The "display means" is a means for integrating the information obtained by the generation means, prediction means, provision means and route calculation means and displaying the information to the user.

[0676] The "store narrowing down means" is a means for narrowing down a number of stores based on area information, food genre, budget, customer demographic, and date and time input by the user.

[0677] A "machine learning algorithm" is an algorithm used to predict seat availability based on past reservation data and customer count data for a specific date and time.

[0678] The "means for providing navigation information" is a means for linking with the vehicle's navigation system and providing navigation information to the store using the vehicle's current location information.

[0679] The system of the present invention is a restaurant search support system installed in an autonomous driving vehicle. The main components of this system are a user input means, a server, a vehicle navigation system, and various API services. An embodiment of this system will be described in detail below.

[0680] Overall system configuration

[0681] In this system, users input their travel conditions through the on-board display of their autonomous vehicle, and the server provides appropriate store information based on those conditions. Furthermore, the system predicts store availability, provides reservation links, and displays the shortest route from the vehicle's current location to the store on the navigation system.

[0682] Input Method

[0683] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through the in-car display. This input information is converted into JSON format and sent to the server.

[0684] generation means

[0685] The server analyzes the received travel conditions and uses a generative AI model to generate store information that matches the conditions. This store information includes basic information such as store name, address, contact information, and business hours.

[0686] Prediction methods

[0687] The server then applies a machine learning algorithm to predict seat availability at each restaurant based on the generated restaurant list. This algorithm uses past reservation data and customer visitor trends to accurately predict seat availability for a specific date and time.

[0688] Providing means

[0689] The server then provides the user with the predicted seat availability and, for stores that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the in-car display.

[0690] Route calculation method

[0691] The server uses the current location information obtained from the vehicle's GPS module to calculate the shortest route to the selected store using external navigation services such as Google Maps API. The calculation results are displayed on the vehicle's navigation system, providing the user with detailed navigation information.

[0692] Display means

[0693] The vehicle's navigation system receives the integrated information sent from the server and displays it in an easy-to-read format for the user. By displaying all necessary information, such as store information, seat availability forecasts, reservation links, and the shortest route, the user can smoothly select a store, visit, and make a reservation.

[0694] Specific examples

[0695] If a couple traveling in Rome is looking for an Italian restaurant, they might enter criteria like "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8pm." These criteria would be sent to the server in the form of text like this:

[0696] Area: Rome

[0697] Cuisine:Italian

[0698] Budget: Under 30 euros

[0699] Customers: Couples

[0700] Date and time: 2023-04-01 20:00

[0701] Based on this information, the server uses an AI model to generate a list of restaurants, predict seat availability, and integrates reservation links and navigation information to display on the in-car display.

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

[0703] Step 1:

[0704] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) through the in-car display. The input information is converted into JSON format. This input information may include, for example, "Area: Rome," "Cuisine: Italian," "Budget: Under 30 euros," "Customer demographic: Couples," and "Date and time: 2023-04-01 20:00." The input is sent to the server.

[0705] Step 2:

[0706] The server analyzes the received travel conditions in JSON format. Using a generative AI model, it generates store information that matches the entered conditions. This process extracts relevant store information (store name, address, contact information, business hours, etc.) from the database and creates a list. Specifically, this includes store information such as "La Pergola" and "Roscioli."

[0707] Step 3:

[0708] The server then applies machine learning algorithms to predict seat availability based on the generated restaurant information. Using past reservation data and customer count data for specific dates and times, it can obtain information such as "La Pergola's predicted seat availability rate is 50%" and "Roscioli's predicted seat availability rate is 20%."

[0709] Step 4:

[0710] The server retrieves link information for reservation sites for restaurants that can accept reservations along with predicted seat availability information. It calls the API of an online reservation site and obtains, for example, "La Pergola reservation link: https: / / example.com / la-pergola-reservation." It also adds this link to the restaurant information.

[0711] Step 5:

[0712] The server obtains the vehicle's current location information from the vehicle's GPS module and uses navigation services such as Google Maps API to calculate the shortest route from the current location to the selected store. Specifically, it generates navigation information such as "It's a 15-minute walk from your current location to La Pergola."

[0713] Step 6:

[0714] The server combines the generated store information, seat availability predictions, reservation links, and navigation information and sends them to the in-vehicle display, allowing the user to find the appropriate store at a glance.

[0715] Step 7:

[0716] The in-car display displays the integrated store information in an easy-to-read format for the user, such as "Store name: La Pergola," "Estimated occupancy rate: 50%," "Reservation link: https: / / example.com / la-pergola-reservation," and "Navigation information: 15 minutes' walk."

[0717] Step 8:

[0718] The user selects a store based on the displayed information, clicks the reservation link if necessary, and makes a reservation. The autonomous vehicle then heads to the selected store according to the navigation information.

[0719] 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.

[0720] The system of the present invention comprehensively assists travelers in finding suitable restaurants during their trip, and further combines an emotion engine that recognizes the user's emotions. An embodiment of this system will be described in detail below.

[0721] Overall system configuration

[0722] This system is mainly composed of the user's device, a server, an emotion engine, and various API services. The server plays a central role in the system, generating store information based on user input, and calculating predictions, provision, and navigation information, and further customizing the system according to the user's emotions using the emotion engine.

[0723] Input Method

[0724] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[0725] emotion recognition means

[0726] When a user enters travel conditions into the device, the emotion engine uses the device's camera and microphone to analyze the user's facial expressions and voice. The emotion engine uses this data to identify the user's current emotional state. For example, if the user is smiling, the emotion of "joy" is recognized.

[0727] generation means

[0728] The server analyzes the received user's travel conditions and the emotion information from the emotion engine, and generates store information suitable for the user based on this. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[0729] Emotion-based customization methods

[0730] The server customizes the store information it provides based on the user's emotional state as determined by the emotion engine. For example, if the emotion of "sadness" is recognized, stores with a calm atmosphere will be prioritized.

[0731] Prediction methods

[0732] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[0733] Providing means

[0734] The server then provides the user with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the application.

[0735] Route calculation method

[0736] The server obtains the user's current location information and uses external navigation services such as Google Maps API to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[0737] Display means

[0738] The terminal receives the integrated information sent from the server and displays it in an easy-to-read format for the user. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, the user can select the most suitable store and smoothly visit and make a reservation.

[0739] Specific examples

[0740] Here's a concrete example: A user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The emotion engine recognizes the emotion "joy" using the camera and microphone. The device sends this to the server in JSON format as { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T20:00", "emotion": "joy"}.

[0741] The server generates a list of restaurants, such as "La Pergola" and "Roscioli," based on the travel conditions and emotional state. The server predicts the seat availability of "La Pergola" at 50% and "Roscioli" at 20%. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[0742] Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola" and determines that it is a 15-minute walk.

[0743] Finally, the server combines this information and sends it to the device in the following format:

[0744] [

[0745] {

[0746] "name": "La Pergola",

[0747] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0748] "seating_prediction": 50,

[0749] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0750] "navigation_info": "15-minute walk"

[0751] },

[0752] {

[0753] "name": "Roscioli",

[0754] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0755] "seating_prediction": 20,

[0756] "booking_link": ""

[0757] }

[0758] ]

[0759] The device analyzes and displays this information, allowing the user to intuitively determine which restaurant is most suitable. In this way, the system can further customize and support travelers in choosing the best restaurant based on their emotional information.

[0760] The processing flow will be explained below.

[0761] Step 1:

[0762] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) into the terminal application. The camera and microphone also operate to collect the user's emotional state (facial expressions and voice).

[0763] Step 2:

[0764] The device converts the entered travel conditions into JSON format and sends the collected emotion data to the server.

[0765] Step 3:

[0766] The server analyzes the received JSON data and extracts each condition item entered by the user (area, cuisine genre, budget, customer demographic, date and time) and emotional data.

[0767] Step 4:

[0768] The emotion engine analyzes the extracted emotion data to identify the user's current emotional state, such as "joy," "sadness," or "anger," using facial expression recognition or voice analysis, for example.

[0769] Step 5:

[0770] The server uses generative AI to generate a list of appropriate store information based on the extracted travel conditions and the identified emotional state. For example, stores with a bright atmosphere are prioritized for "joy," while stores with a calm atmosphere are prioritized for "sadness."

[0771] Step 6:

[0772] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, and predicts seat availability for a specific date and time based on past reservation data and customer trends.

[0773] Step 7:

[0774] The server obtains reservation link information for restaurants that accept online reservations using an external reservation system API. For example, it calls the OpenTable API to obtain the reservation link.

[0775] Step 8:

[0776] To calculate the shortest route based on the user's current location, the server calls an external navigation service such as the Google Maps API and calculates the walking route to the store and travel time including transportation options.

[0777] Step 9:

[0778] The server generates final information by integrating the obtained store information, seat availability prediction, reservation link, and navigation information, and converts it into JSON format.

[0779] Step 10:

[0780] The server transmits the generated final information to the terminal.

[0781] Step 11:

[0782] The device analyzes the received information and displays it in a user-friendly format. Specifically, information about each store is displayed in a list format, along with detailed information such as seat availability forecasts, reservation links, and the shortest route.

[0783] Step 12:

[0784] Users can select the most suitable store based on the displayed information and use online reservations and route guidance to smoothly visit the store.

[0785] Example 2

[0786] 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."

[0787] Conventional travel support systems simply provide information without considering the user's emotional state when searching for suitable restaurants during a trip. As a result, users may not be fully satisfied. Furthermore, they lack real-time seat availability and intuitive route guidance, making them difficult to describe as user-friendly systems. The present invention aims to solve these problems and provide a system that provides optimal restaurant information while taking the user's emotional state into consideration.

[0788] 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.

[0789] In this invention, the server includes input means for inputting travel conditions from a user, generation means for generating store information suitable for the user based on the conditions from the input means, emotion recognition means for analyzing the user's facial expressions and voice and identifying their emotional state, customization means for customizing the store information based on their emotional state, prediction means for predicting seat availability based on the generated store information, provision means for providing the user with the predicted seat availability and link information for reservation sites, route calculation means for calculating the shortest route from the user's current location to the store, and display means for integrating and displaying to the user the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means. This enables optimal store selection and navigation that comprehensively considers the user's travel conditions and emotional state.

[0790] "User" refers to a person who uses the system to input travel conditions and obtain optimal restaurant information.

[0791] "Travel conditions" refers collectively to elements such as area, cuisine, budget, customer demographic, date and time entered by the user.

[0792] "Input means" refers to a device or software that provides an interface for users to input travel conditions.

[0793] The "generation means" refers to the function of the server that generates store information suitable for the user based on the travel conditions acquired from the input means.

[0794] "Emotion recognition means" refers to software or hardware that analyzes a user's facial expressions and voice to identify their emotional state.

[0795] The "customization means" refers to a function of the server for providing appropriate store information based on the emotional state identified by the emotion recognition means.

[0796] The "prediction means" refers to the function of the server for predicting seat availability based on the store information generated by the generation means.

[0797] "Provision means" refers to the server's function of providing users with predicted seat availability and link information to reservation sites.

[0798] "Route calculation means" refers to the server's function for calculating the shortest route from the user's current location to the store.

[0799] "Display means" refers to a device or software for integrating and displaying to the user the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means.

[0800] "Store information" refers to information including the restaurant's name, address, contact information, seat availability, reservation link, etc.

[0801] "Availability" refers to information indicating the availability of seats at the store on the specified date and time.

[0802] "Reservation Link" means a web link for making a reservation for a store online.

[0803] "Emotional state" refers to the psychological state identified by the user's facial expression and voice.

[0804] The system of the present invention comprehensively supports travelers in finding suitable restaurants during their trip, and further combines an emotion engine that recognizes the user's emotions. An embodiment of the system of the present invention will be described in detail.

[0805] This system is mainly composed of the user's device, a server, an emotion recognition engine, and various API services. The server plays a central role in the system, generating store information based on user input, predicting, providing, and calculating navigation information, and further customizing the system according to the user's emotions using the emotion recognition engine.

[0806] Hardware and software used

[0807] Device: A smartphone or tablet used by a user. These devices have built-in cameras and microphones and are used for emotion recognition.

[0808] Emotion recognition engine: Software that analyzes a user's facial expressions and voice to identify their emotional state. Machine learning algorithms are used for emotion recognition.

[0809] Server: Receives requests and accesses databases to process information. AI algorithms are used to predict seat availability, and Google Maps API is used to calculate routes.

[0810] System Operation

[0811] Users input their travel conditions (area, cuisine, budget, customer demographic, date and time) through a smartphone or tablet application. When they do so, the emotion recognition engine uses the device's camera and microphone to analyze the user's facial expressions and voice to identify their emotional state.

[0812] As a concrete example, consider the case where a user inputs travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM," and the emotion engine recognizes the emotion of "joy" using the camera and microphone. The device then sends this in JSON format to the server.

[0813] The server analyzes the received travel conditions and emotion information and generates information on suitable stores within the area. The store information includes a list of restaurants and cafes in the area as well as basic information such as the name, address, and contact information of each store.

[0814] Furthermore, the server customizes the store information it provides based on the user's emotional state as determined by the emotion recognition engine. For example, if the emotion "sadness" is recognized, stores with a calm atmosphere will be prioritized.

[0815] The server applies an AI algorithm to predict seat availability at each store based on the generated store list. It then obtains the predicted seat availability and reservation link information for stores that offer online reservations, and provides this information to the user. This allows the user to make reservations directly through the application. The server also uses the Google Maps API to calculate the shortest route from the user's current location to the selected store.

[0816] Finally, the integrated information is sent to the device and displayed to the user. For example, a list containing the store names "La Pergola" and "Roscioli" is displayed with all necessary information integrated, such as seat availability forecast, reservation links, and the shortest route. Based on this information, the user can smoothly select the best store and visit / reserve.

[0817] Prompt Sentence Examples

[0818] "I'd like to make a reservation for a couple at a restaurant in Rome that serves Italian food for under 30 euros on April 1st at 8pm. The user emotion is identified as 'happiness'. Please provide specific restaurant information, estimated seat availability, a reservation link, and transportation information."

[0819] By inputting this prompt, the generative AI model can suggest optimal restaurants based on specific travel conditions and emotional information.

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

[0821] Step 1:

[0822] The user uses a smartphone or tablet to enter travel conditions (area, cuisine, budget, customer demographic, date and time). Specifically, the user enters "Area: Rome," "Cuisine: Italian," "Budget: Under 30 euros," "Customer demographic: Couples," and "Date and time: April 1st, 8:00 PM" within the application. The entered information is displayed in the application for the user to review.

[0823] Input: Travel conditions entered by the user

[0824] Output: Travel condition data entered

[0825] Step 2:

[0826] The device converts the entered travel conditions into JSON format and sends it to the server. Specifically, it converts it into the following format: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "Couple", "datetime": "2023-04-01T20:00"}. The converted data is sent to the server via an HTTP POST request.

[0827] Input: Travel condition data entered

[0828] Output: JSON format travel condition data

[0829] Step 3:

[0830] The device uses a camera and microphone to collect the user's facial expressions and voice and sends them to an emotion recognition engine. The emotion recognition engine analyzes this data to identify the user's emotional state. Specifically, the camera recognizes the user's face and analyzes their facial expressions in real time, while the microphone collects and analyzes their voice. The emotion recognition engine identifies emotions such as "happiness" or "sadness" and sends the results in JSON format to the server.

[0831] Input: User's facial expression data and voice data

[0832] Output: JSON data of identified emotional states

[0833] Step 4:

[0834] The server analyzes the received travel conditions and emotional information and generates a list of appropriate restaurants. Specifically, it accesses a database and extracts restaurant information that matches the specified area and genre. For example, restaurants such as "La Pergola" and "Roscioli" are listed based on the criteria "Rome," "Italian," "under 30 euros," and "couples." If the emotional information is "joy," restaurants with more positive reviews are prioritized in the list.

[0835] Input: JSON format travel condition data, emotional state data

[0836] Output: Generated store information list

[0837] Step 5:

[0838] The server customizes the store information based on the emotional state identified by the emotion recognition engine. For example, if the user's emotion is "sadness," quiet and relaxing stores are prioritized in the list. The customized store list is then updated again.

[0839] Input: JSON data of identified emotional states, generated store information list

[0840] Output: Customized store information list

[0841] Step 6:

[0842] The server applies an AI algorithm to predict the seating availability of each restaurant in the generated restaurant list. Specifically, it predicts the seating availability rate for a specific date and time based on past reservation data and customer trends. For example, the seating availability rate for "La Pergola" is estimated to be 50% and for "Roscioli" to be 20%.

[0843] Input: Customized store information list

[0844] Output: List of restaurants with availability

[0845] Step 7:

[0846] The server obtains reservation link information for stores that allow online reservations and provides it to the user. For example, the server obtains the reservation link for "La Pergola" as https: / / booking.com / la-pergola and adds the reservation link.

[0847] Input: List of store information including availability

[0848] Output: List of store information including reservation links

[0849] Step 8:

[0850] The server uses the Google Maps API to calculate the shortest route from the user's current location to the selected store. Specifically, it calculates the route by sending a request to the Google Maps API using the user's current location information (latitude and longitude). For example, it calculates the walking route from the current location (41.9028, 12.4964) to "La Pergola" as 15 minutes.

[0851] Input: List of store information including reservation links, user's current location information

[0852] Output: Integrated store information list including shortest route information

[0853] Step 9:

[0854] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, information about "La Pergola" such as the name, address, predicted seat availability, reservation link, and 15-minute walk are displayed in a list format. Based on this information, the user can select the appropriate store and make a visit or reservation.

[0855] Input: Integrated store information list including shortest route information

[0856] Output: Unified store information displayed to the user

[0857] Through the above steps, the user can comprehensively consider their travel conditions and emotional state, select the most suitable store, and use it comfortably.

[0858] (Application example 2)

[0859] 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."

[0860] Conventional systems lack customization based on user emotions when helping travelers find suitable restaurants during their trips, resulting in low user satisfaction. Furthermore, when predicting available seats, providing reservation links, or calculating the shortest route, it is difficult to determine which restaurant information best suits the user's current emotions.

[0861] The specification processing by the specification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes an input means for inputting travel conditions from a user, a generation means for generating store information suitable for the user based on the conditions from the input means, a prediction means for predicting seat availability for the generated store information, a provision means for providing the user with the predicted seat availability and reservation link information, a route calculation means for calculating the shortest route from the user's current location to the store, an emotion recognition means for analyzing the user's emotions, a customization means for customizing the store information to be provided according to the user's emotional state, and a display means for integrating and displaying the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means to the user. This makes it possible to provide optimal store information according to the user's emotions in real time, resulting in high user satisfaction.

[0862] "Input means" refers to a device or interface that allows a user to input travel conditions.

[0863] The "generation means" is a device or algorithm that generates store information suitable for the user based on the conditions received from the input means.

[0864] The "prediction means" is a device or algorithm for predicting seat availability based on the generated store information.

[0865] "Providing means" refers to a device or algorithm that provides predicted seat availability and reservation link information to users.

[0866] The "route calculation means" is a device or algorithm that calculates the shortest route from the user's current location to the store.

[0867] "Emotion recognition means" refers to devices or algorithms for analyzing a user's emotions.

[0868] "Customization means" refers to devices or algorithms that adjust the store information provided according to the user's emotional state and provide the user with the most appropriate information.

[0869] The "display means" is a device or interface that integrates the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means and displays it to the user.

[0870] This invention is a system for travelers to find the best restaurants during their trip, and has a customization function using an emotion engine. Below, we will explain the program processing of this system and specific embodiments.

[0871] Overall system configuration

[0872] This system is primarily composed of the user's device, a server, an emotion engine, and various API services. The server, which plays a central role in the system, generates store information based on information input by the user and performs predictions, provision, and calculations of navigation information. It also uses the emotion engine to realize customization according to the user's emotions.

[0873] Input Method

[0874] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[0875] emotion recognition means

[0876] When a user enters travel information into the device, the emotion engine uses the device's camera and microphone to analyze the user's facial expressions and voice. Based on this data, the emotion engine identifies the user's current emotional state; for example, if the user is smiling, it will recognize the emotion of "joy."

[0877] generation means

[0878] The server analyzes the user's travel conditions and the emotion information from the emotion engine, and generates store information appropriate for the user based on this. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[0879] Prediction methods

[0880] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[0881] Providing means

[0882] The server then provides users with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing them to make reservations directly through the application.

[0883] Route calculation method

[0884] The server acquires the user's current location information and uses an external navigation service to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[0885] Display means

[0886] The terminal receives the integrated information sent from the server and displays it in an easy-to-read format for the user. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, users can select the most suitable store and smoothly visit and make a reservation.

[0887] Specific examples

[0888] Let's say a user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The emotion engine recognizes the emotion "joy" using the camera and microphone. The device sends this to the server in JSON format as { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T8:00 PM", "emotion": "joy"}. The server generates a list of restaurants such as "La Pergola" and "Roscioli" based on the travel conditions and emotional state. The server predicts seat availability and finds that "La Pergola" is 50% full and "Roscioli" is 20% full. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation." Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola," estimating it to be a 15-minute walk. Finally, the server combines this information and sends it to the device in the following format:

[0889] [

[0890] {

[0891] "name": "La Pergola",

[0892] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0893] "seating_prediction": 50,

[0894] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0895] "navigation_info": "15-minute walk"

[0896] },

[0897] {

[0898] "name": "Roscioli",

[0899] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0900] "seating_prediction": 20,

[0901] "booking_link": ""

[0902] }

[0903] ]

[0904] In this way, the system can further customize and support travelers in choosing the best restaurant based on emotional information.

[0905] Prompt Sentence Examples

[0906] "User is looking for Italian food in Rome. The emotion is joy. Please suggest restaurants with a bright and fun atmosphere. Also provide seating availability forecast and walking directions."

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

[0908] Step 1:

[0909] Users input their travel requirements through a device application on a smartphone or tablet. The information they input includes the area, cuisine, budget, customer demographic, and date and time. This information is converted into JSON format and sent to the server. Examples of input data include: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "Couples", "datetime": "2023-04-01T20:00"}. Based on the data entered here, the basic data for generating appropriate store information is established in the next step.

[0910] Step 2:

[0911] When a user enters travel conditions into a device, the emotion engine, which acts as an emotion recognition means, analyzes the user's facial expressions and voice using the device's camera and microphone. The emotion engine uses this data to identify the user's current emotional state and adds that emotional information to the travel conditions. For example, the emotion of "joy" is recognized from facial expressions and voice. In this case, the emotional information is added as follows: { "emotion": "joy"}. This lays the foundation for providing appropriate store information based on the user's emotional state.

[0912] Step 3:

[0913] The server receives travel conditions and emotion information and generates restaurant information suitable for the user based on this information. Specifically, it narrows down the list of restaurants and cafes that match the area, cuisine genre, budget, customer demographic, and date and time. In this process, it obtains restaurant data using an external restaurant information API. For example, the obtained restaurant information looks like this: [{ "name": "La Pergola", "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy", "seating_prediction": null, "booking_link": null}].

[0914] Step 4:

[0915] Based on the generated store information, the server uses a prediction method to predict the seating availability of each store. A machine learning algorithm is applied based on past reservation data and customer count data for a specific date and time to obtain a prediction result. For example, the following prediction result can be obtained: { "name": "La Pergola", "seating_prediction": "50%"}. This allows you to understand the seating availability of each store on a specific date and time.

[0916] Step 5:

[0917] The server provides the seat availability prediction results and reservation link information. For restaurants that accept online reservations, the server obtains and adds the link information of the reservation site. For example, the following link information is added: { "name": "La Pergola", "booking_link": "https: / / opentable.com / la-pergola-reservation"}. This allows users to make reservations directly through the application.

[0918] Step 6:

[0919] The server obtains the user's current location information and uses an external navigation service (e.g., Google Maps API) to calculate the shortest route to the selected store. The calculation result is provided as navigation information, for example, as follows: { "name": "La Pergola", "navigation_info": "15-minute walk"}. This allows the user to reach their destination efficiently.

[0920] Step 7:

[0921] The device receives the integrated information sent from the server and displays it in an easy-to-read format for the user. Specifically, it not only displays information about each restaurant in a list format, but also integrates all necessary information, such as seating availability predictions, reservation links, and the shortest route. For example, it might be displayed in the following format: [{ "name": "La Pergola", "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy", "seating_prediction": "50%", "booking_link": "https: / / opentable.com / la-pergola-reservation", "navigation_info": "15-minute walk"}]. Based on this information, users can select the best restaurant and smoothly visit and make a reservation.

[0922] 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.

[0923] 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.

[0924] 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.

[0925] [Third embodiment]

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

[0927] 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.

[0928] 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).

[0929] 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.

[0930] 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.

[0931] 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).

[0932] 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.

[0933] 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.

[0934] 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.

[0935] 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.

[0936] 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.

[0937] 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."

[0938] The system of the present invention comprehensively supports travelers in finding suitable restaurants during their trip. An embodiment of this system will be described in detail below.

[0939] Overall system configuration

[0940] This system is mainly composed of the user's device, a server, and various API services. The server plays a central role in the system, generating store information based on user input, and calculating prediction, provision, and navigation information.

[0941] Input Method

[0942] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[0943] generation means

[0944] The server analyzes the user's travel conditions and uses AI to generate a list of store information that matches the conditions. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[0945] Prediction methods

[0946] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list. This algorithm is based on past reservation data and customer trend data, and makes highly accurate predictions of seat availability for specific dates and times.

[0947] Providing means

[0948] The server then provides the user with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the application.

[0949] Route calculation method

[0950] The server obtains the user's current location information and uses external navigation services such as Google Maps API to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[0951] Display means

[0952] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, the user can select the most suitable store and smoothly visit and make a reservation.

[0953] Specific examples

[0954] Here's an example: Suppose a user enters travel conditions such as "Rome", "Italian", "under 30 euros", "couple", and "April 1st, 8:00 PM". The device sends this to the server in JSON format: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T20:00"}.

[0955] Based on this information, the server generates a list of restaurants such as "La Pergola" and "Roscioli." It predicts the seat availability of "La Pergola" at 50% and "Roscioli" at 20%. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[0956] Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola" and determines that it is a 15-minute walk.

[0957] Finally, the server combines this information and sends it to the device in the following format:

[0958] [

[0959] {

[0960] "name": "La Pergola",

[0961] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[0962] "seating_prediction": 50,

[0963] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[0964] "navigation_info": "15-minute walk"

[0965] },

[0966] {

[0967] "name": "Roscioli",

[0968] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[0969] "seating_prediction": 20,

[0970] "booking_link": ""

[0971] }

[0972] ]

[0973] The terminal analyzes and displays this information, allowing the user to intuitively determine which restaurant is most suitable. In this way, the system can help travelers choose the best restaurant.

[0974] The processing flow will be explained below.

[0975] Step 1:

[0976] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) into the application on the terminal.

[0977] Step 2:

[0978] The terminal converts the input information into JSON format and sends it to the server.

[0979] Step 3:

[0980] The server analyzes the received JSON data and extracts each condition item entered by the user (area, cuisine, budget, customer demographic, date and time).

[0981] Step 4:

[0982] The server uses generation AI to generate an appropriate restaurant list based on the extracted conditions, searching and narrowing down the list of restaurants from multiple restaurant databases in the area.

[0983] Step 5:

[0984] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[0985] Step 6:

[0986] The server obtains reservation link information for restaurants that accept online reservations by using the API of an external reservation system. For example, it obtains the link by calling the OpenTable API.

[0987] Step 7:

[0988] To calculate the shortest route based on the user's current location, the server calls an external navigation service such as the Google Maps API and calculates the walking route to the store and travel time including transportation options.

[0989] Step 8:

[0990] The server generates final information by integrating the obtained store information, seat availability prediction, reservation link, and navigation information, and converts it into JSON format.

[0991] Step 9:

[0992] The server transmits the generated final information to the terminal.

[0993] Step 10:

[0994] The device analyzes the received information and displays it in a user-friendly format. Specifically, it displays information about each store in a list format, along with detailed information such as seat availability forecasts, reservation links, and the shortest route.

[0995] Step 11:

[0996] Users can select the most suitable store based on the displayed information and use online reservations and route guidance to smoothly visit the store.

[0997] Example 1

[0998] 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."

[0999] In the past, travelers had to search numerous websites and information sources to find the right restaurant at their travel destination, which required time and effort. Furthermore, they had to individually check reservation status and calculate the optimal route, which was inefficient. Furthermore, systems lacked the ability to accurately predict available seats using past reservation data or automatically generate restaurants that perfectly match the user's travel requirements. The present invention aims to solve these problems and provide a system that is highly convenient for travelers.

[1000] 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.

[1001] In this invention, the server includes an input means for inputting travel conditions from a user, a conversion means for converting the conditions from the input means into JSON format data and transmitting it, a generation means for generating store information suitable for the user using a generative AI model based on the conditions, a prediction means for predicting seat availability for the generated store information using past reservation data and customer count data, a provision means for providing the user with the predicted seat availability and reservation link information, a route calculation means for acquiring the user's current location information and calculating the shortest route to the store using an external navigation service, and a display means for integrating and displaying the information obtained by the generation means, prediction means, provision means, and route calculation means to the user. This enables travelers to consistently obtain appropriate store information, predict seat availability, make reservations, and navigate through a single application.

[1002] "Input means" refers to the means by which a user inputs travel conditions, and includes terminal applications such as smartphones and tablets.

[1003] The "conversion means" is a means for converting the travel conditions entered by the user into JSON format data and sending it to the server.

[1004] "Generation means" refers to a means of generating store information suitable for a user's travel conditions using a generative AI model.

[1005] A "generative AI model" is a model that uses artificial intelligence to generate results based on input conditions, such as OpenAI's GPT-3.

[1006] The "prediction means" is a means for predicting seat availability based on the generated store information and using past reservation data and customer number data.

[1007] The "means for providing" is a means for obtaining predicted seat availability and reservation link information and providing it to users.

[1008] The "route calculation means" is a means for acquiring the user's current location information and calculating the shortest route to the store using an external navigation service.

[1009] An "external navigation service" is an external service that provides route calculations and map information, such as the Google Maps API.

[1010] The "display means" is a means for analyzing the information sent from the server and displaying it in a format that is easy for the user to view.

[1011] "JSON format" is an abbreviation for JavaScript Object Notation and is a lightweight data exchange format.

[1012] This invention relates to a system that comprehensively supports travelers in finding suitable restaurants during their trip. This system is mainly composed of a user's device, a server, and various API services. The server, which plays a central role in the system, generates store information based on information input by the user and performs prediction, provision, and calculation of navigation information.

[1013] Input Method

[1014] Users input their travel conditions through a device application on a smartphone or tablet. These conditions include information such as area, cuisine, budget, customer demographics, and date and time. The information entered by the user is converted into JSON format within the application and sent to the server.

[1015] Conversion Method

[1016] The terminal converts the travel conditions entered by the user into JSON format data, for example, the following prompt is generated:

[1017] {

[1018] "area": ​​"Rome",

[1019] "genre": "Italian",

[1020] "budget": "30",

[1021] "audience": "couple",

[1022] "datetime": "2023-04-01T20:00"

[1023] }

[1024] The converted data is sent to the server using the HTTPS protocol.

[1025] generation means

[1026] The server analyzes the received JSON data and generates store information that matches the travel conditions using a generative AI model (e.g., OpenAI's GPT-3). Specific examples of prompt sentences are as follows:

[1027] Generate a list of Italian restaurants in Rome that fit the following conditions: budget is under 30 euros, suitable for couples, and available on April 1st at 20:00.

[1028] The generated store information includes basic information such as the store name, address, and contact information.

[1029] Prediction methods

[1030] Based on the generated store information, the server applies an AI algorithm to predict seat availability using past reservation data and customer visitor count data. The prediction results show the seat availability rate for each store. For example, the seat availability rate for "La Pergola" is predicted to be 50%, and for "Roscioli" it is predicted to be 20%.

[1031] Providing means

[1032] The server retrieves the estimated seat availability and provides the reservation link for restaurants that offer online reservations to the user. This allows the user to make a reservation directly from the application. For example, the reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation".

[1033] Route calculation method

[1034] The server obtains the user's current location information (e.g., latitude and longitude: 41.9028, 12.4964) and uses an external navigation service to calculate the shortest route to the selected store. Using Google Maps API or similar, the server obtains detailed navigation information, including travel times by foot and public transportation. As a specific example, the server calculates that the walking route to "La Pergola" is a 15-minute walk.

[1035] Display means

[1036] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, it displays information about each store in a list format, and integrates seat availability forecasts, reservation links, and navigation information. Based on this information, the user can select the appropriate store and make a reservation or visit smoothly.

[1037] Specific examples

[1038] Here is a specific example: Suppose a user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The device sends this information in JSON format to the server as follows:

[1039] {

[1040] "area": ​​"Rome",

[1041] "genre": "Italian",

[1042] "budget": "30",

[1043] "audience": "couple",

[1044] "datetime": "2023-04-01T20:00"

[1045] }

[1046] Based on this information, the server generates a list of restaurants such as "La Pergola" and "Roscioli," and obtains restaurant information using a generative AI model. The server predicts seat availability, finding that "La Pergola" has 50% availability and "Roscioli" has 20% availability. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[1047] Furthermore, the server calculates the walking route from the user's current location to "La Pergola" and calculates that it is a 15-minute walk. Finally, the server combines this information and sends it to the device in the following format:

[1048] [

[1049] {

[1050] "name": "La Pergola",

[1051] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[1052] "seating_prediction": 50,

[1053] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[1054] "navigation_info": "15-minute walk"

[1055] },

[1056] {

[1057] "name": "Roscioli",

[1058] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[1059] "seating_prediction": 20,

[1060] "booking_link": ""

[1061] }

[1062] ]

[1063] The terminal analyzes this information and displays it to the user in a list format. In this way, the system can help travelers select the best restaurant.

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

[1065] Step 1:

[1066] Users input their travel requirements into an application on their smartphone or tablet. The information they input includes the area, cuisine, budget, customer demographic, and date and time. Specifically, users input information such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." This information becomes the input data for subsequent processing.

[1067] Step 2:

[1068] The device converts the travel conditions entered by the user into JSON format. For example, the conditions entered by the user, "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM," are converted into the following JSON format data:

[1069] json

[1070] {

[1071] "area": ​​"Rome",

[1072] "genre": "Italian",

[1073] "budget": "30",

[1074] "audience": "couple",

[1075] "datetime": "2023-04-01T20:00"

[1076] }

[1077] The converted data becomes output data to be sent to the server.

[1078] Step 3:

[1079] The server analyzes the JSON data received from the device. During this analysis, information such as area, cuisine genre, budget, customer demographic, and date and time is extracted into individual variables and organized into an appropriate format. Specifically, the JSON data is parsed and each piece of information is stored in an internally managed variable. This analyzed data becomes the input data for the next generation method.

[1080] Step 4:

[1081] The server uses a generative AI model (e.g., OpenAI's GPT-3) to generate store information that matches the conditions. Specific examples of prompt sentences are as follows:

[1082] Generate a list of Italian restaurants in Rome that fit the following conditions: budget is under 30 euros, suitable for couples, and available on April 1st at 20:00.

[1083] This prompt sentence is input into the generative AI model, and store information that matches the conditions (store name, address, contact information, etc.) is obtained as output data in list format.

[1084] Step 5:

[1085] Based on the generated store list, the server predicts seat availability using past reservation data and customer number data. This prediction applies an AI algorithm to calculate the seat availability rate for each store. For example, the seat availability rate for "La Pergola" is predicted to be 50%, and for "Roscioli" it is predicted to be 20%. These seat availability rates become the output data of the prediction method.

[1086] Step 6:

[1087] The server retrieves the predicted seat availability and a reservation link for restaurants that accept online reservations. For example, the reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation." This reservation link information is also retrieved as output data.

[1088] Step 7:

[1089] The server obtains the user's current location information (e.g., latitude and longitude: 41.9028, 12.4964) and uses an external navigation service (e.g., Google Maps API) to calculate the shortest route to the selected store. The calculation results are output as detailed navigation information, including travel times by foot and public transportation. For example, the walking route to "La Pergola" is calculated as a 15-minute walk.

[1090] Step 8:

[1091] The server integrates the generated store information, seat availability forecast, reservation link, and navigation information, and formats it to be displayed to the user. For example, the following integrated information is generated:

[1092] json

[1093] [

[1094] {

[1095] "name": "La Pergola",

[1096] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[1097] "seating_prediction": 50,

[1098] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[1099] "navigation_info": "15-minute walk"

[1100] },

[1101] {

[1102] "name": "Roscioli",

[1103] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[1104] "seating_prediction": 20,

[1105] "booking_link": ""

[1106] }

[1107] ]

[1108] This integrated information becomes the output data to the terminal.

[1109] Step 9:

[1110] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, it displays information about each store in a list format, and integrates seat availability forecasts, reservation links, and navigation information. Based on this information, the user can select the appropriate store and make a reservation or visit smoothly.

[1111] (Application example 1)

[1112] 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."

[1113] When traveling in an autonomous vehicle, users lack the means to easily find suitable restaurants, make reservations, and enjoy efficient navigation. This problem is particularly evident in situations where a system is needed that can generate restaurant information appropriate for different conditions in different areas, predict availability, quickly make reservations, and provide navigation to the restaurant.

[1114] 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.

[1115] In this invention, the server includes an input means for inputting travel conditions from the user, a generation means for generating restaurant information suitable for the user based on the conditions from the input means, a prediction means for predicting seat availability for the generated restaurant information, a provision means for providing the user with the predicted seat availability and link information for reservation sites, a route calculation means for calculating the shortest route from the user's current location to the restaurant, and a means for linking with the vehicle's navigation system and providing navigation information to the restaurant using the vehicle's current location information. This enables users to easily find suitable restaurants, make reservations, and enjoy efficient navigation.

[1116] The "input means" is a means for the user to input travel conditions.

[1117] The "generation means" is a means for generating store information suitable for a user based on the conditions from the input means.

[1118] The "prediction means" is a means for predicting seat availability for the generated store information.

[1119] The "means of provision" is a means for providing users with predicted seat availability and link information to reservation sites.

[1120] The "route calculation means" is a means for calculating the shortest route from the user's current location to the store.

[1121] The "display means" is a means for integrating the information obtained by the generation means, prediction means, provision means and route calculation means and displaying the information to the user.

[1122] The "store narrowing down means" is a means for narrowing down a number of stores based on area information, food genre, budget, customer demographic, and date and time input by the user.

[1123] A "machine learning algorithm" is an algorithm used to predict seat availability based on past reservation data and customer count data for a specific date and time.

[1124] The "means for providing navigation information" is a means for linking with the vehicle's navigation system and providing navigation information to the store using the vehicle's current location information.

[1125] The system of the present invention is a restaurant search support system installed in an autonomous driving vehicle. The main components of this system are a user input means, a server, a vehicle navigation system, and various API services. An embodiment of this system will be described in detail below.

[1126] Overall system configuration

[1127] In this system, users input their travel conditions through the on-board display of their autonomous vehicle, and the server provides appropriate store information based on those conditions. Furthermore, the system predicts store availability, provides reservation links, and displays the shortest route from the vehicle's current location to the store on the navigation system.

[1128] Input Method

[1129] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through the in-car display. This input information is converted into JSON format and sent to the server.

[1130] generation means

[1131] The server analyzes the received travel conditions and uses a generative AI model to generate store information that matches the conditions. This store information includes basic information such as store name, address, contact information, and business hours.

[1132] Prediction methods

[1133] The server then applies a machine learning algorithm to predict seat availability at each restaurant based on the generated restaurant list. This algorithm uses past reservation data and customer visitor trends to accurately predict seat availability for a specific date and time.

[1134] Providing means

[1135] The server then provides the user with the predicted seat availability and, for stores that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the in-car display.

[1136] Route calculation method

[1137] The server uses the current location information obtained from the vehicle's GPS module to calculate the shortest route to the selected store using external navigation services such as Google Maps API. The calculation results are displayed on the vehicle's navigation system, providing the user with detailed navigation information.

[1138] Display means

[1139] The vehicle's navigation system receives the integrated information sent from the server and displays it in an easy-to-read format for the user. By displaying all necessary information, such as store information, seat availability forecasts, reservation links, and the shortest route, the user can smoothly select a store, visit, and make a reservation.

[1140] Specific examples

[1141] If a couple traveling in Rome is looking for an Italian restaurant, they might enter criteria like "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8pm." These criteria would be sent to the server in the form of text like this:

[1142] Area: Rome

[1143] Cuisine:Italian

[1144] Budget: Under 30 euros

[1145] Customers: Couples

[1146] Date and time: 2023-04-01 20:00

[1147] Based on this information, the server uses an AI model to generate a list of restaurants, predict seat availability, and integrates reservation links and navigation information to display on the in-car display.

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

[1149] Step 1:

[1150] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) through the in-car display. The input information is converted into JSON format. This input information may include, for example, "Area: Rome," "Cuisine: Italian," "Budget: Under 30 euros," "Customer demographic: Couples," and "Date and time: 2023-04-01 20:00." The input is sent to the server.

[1151] Step 2:

[1152] The server analyzes the received travel conditions in JSON format. Using a generative AI model, it generates store information that matches the entered conditions. This process extracts relevant store information (store name, address, contact information, business hours, etc.) from the database and creates a list. Specifically, this includes store information such as "La Pergola" and "Roscioli."

[1153] Step 3:

[1154] The server then applies machine learning algorithms to predict seat availability based on the generated restaurant information. Using past reservation data and customer count data for specific dates and times, it can obtain information such as "La Pergola's predicted seat availability rate is 50%" and "Roscioli's predicted seat availability rate is 20%."

[1155] Step 4:

[1156] The server retrieves link information for reservation sites for restaurants that can accept reservations along with predicted seat availability information. It calls the API of an online reservation site and obtains, for example, "La Pergola reservation link: https: / / example.com / la-pergola-reservation." It also adds this link to the restaurant information.

[1157] Step 5:

[1158] The server obtains the vehicle's current location information from the vehicle's GPS module and uses navigation services such as Google Maps API to calculate the shortest route from the current location to the selected store. Specifically, it generates navigation information such as "It's a 15-minute walk from your current location to La Pergola."

[1159] Step 6:

[1160] The server combines the generated store information, seat availability predictions, reservation links, and navigation information and sends them to the in-vehicle display, allowing the user to find the appropriate store at a glance.

[1161] Step 7:

[1162] The in-car display displays the integrated store information in an easy-to-read format for the user, such as "Store name: La Pergola," "Estimated occupancy rate: 50%," "Reservation link: https: / / example.com / la-pergola-reservation," and "Navigation information: 15 minutes' walk."

[1163] Step 8:

[1164] The user selects a store based on the displayed information, clicks the reservation link if necessary, and makes a reservation. The autonomous vehicle then heads to the selected store according to the navigation information.

[1165] 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.

[1166] The system of the present invention comprehensively assists travelers in finding suitable restaurants during their trip, and further combines an emotion engine that recognizes the user's emotions. An embodiment of this system will be described in detail below.

[1167] Overall system configuration

[1168] This system is mainly composed of the user's device, a server, an emotion engine, and various API services. The server plays a central role in the system, generating store information based on user input, and calculating predictions, provision, and navigation information, and further customizing the system according to the user's emotions using the emotion engine.

[1169] Input Method

[1170] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[1171] emotion recognition means

[1172] When a user enters travel conditions into the device, the emotion engine uses the device's camera and microphone to analyze the user's facial expressions and voice. The emotion engine uses this data to identify the user's current emotional state. For example, if the user is smiling, the emotion of "joy" is recognized.

[1173] generation means

[1174] The server analyzes the received user's travel conditions and the emotion information from the emotion engine, and generates store information suitable for the user based on this. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[1175] Emotion-based customization methods

[1176] The server customizes the store information it provides based on the user's emotional state as determined by the emotion engine. For example, if the emotion of "sadness" is recognized, stores with a calm atmosphere will be prioritized.

[1177] Prediction methods

[1178] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[1179] Providing means

[1180] The server then provides the user with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the application.

[1181] Route calculation method

[1182] The server obtains the user's current location information and uses external navigation services such as Google Maps API to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[1183] Display means

[1184] The terminal receives the integrated information sent from the server and displays it in an easy-to-read format for the user. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, the user can select the most suitable store and smoothly visit and make a reservation.

[1185] Specific examples

[1186] Here's a concrete example: A user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The emotion engine recognizes the emotion "joy" using the camera and microphone. The device sends this to the server in JSON format as { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T20:00", "emotion": "joy"}.

[1187] The server generates a list of restaurants, such as "La Pergola" and "Roscioli," based on the travel conditions and emotional state. The server predicts the seat availability of "La Pergola" at 50% and "Roscioli" at 20%. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[1188] Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola" and determines that it is a 15-minute walk.

[1189] Finally, the server combines this information and sends it to the device in the following format:

[1190] [

[1191] {

[1192] "name": "La Pergola",

[1193] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[1194] "seating_prediction": 50,

[1195] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[1196] "navigation_info": "15-minute walk"

[1197] },

[1198] {

[1199] "name": "Roscioli",

[1200] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[1201] "seating_prediction": 20,

[1202] "booking_link": ""

[1203] }

[1204] ]

[1205] The device analyzes and displays this information, allowing the user to intuitively determine which restaurant is most suitable. In this way, the system can further customize and support travelers in choosing the best restaurant based on their emotional information.

[1206] The processing flow will be explained below.

[1207] Step 1:

[1208] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) into the terminal application. The camera and microphone also operate to collect the user's emotional state (facial expressions and voice).

[1209] Step 2:

[1210] The device converts the entered travel conditions into JSON format and sends the collected emotion data to the server.

[1211] Step 3:

[1212] The server analyzes the received JSON data and extracts each condition item entered by the user (area, cuisine genre, budget, customer demographic, date and time) and emotional data.

[1213] Step 4:

[1214] The emotion engine analyzes the extracted emotion data to identify the user's current emotional state, such as "joy," "sadness," or "anger," using facial expression recognition or voice analysis, for example.

[1215] Step 5:

[1216] The server uses generative AI to generate a list of appropriate store information based on the extracted travel conditions and the identified emotional state. For example, stores with a bright atmosphere are prioritized for "joy," while stores with a calm atmosphere are prioritized for "sadness."

[1217] Step 6:

[1218] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, and predicts seat availability for a specific date and time based on past reservation data and customer trends.

[1219] Step 7:

[1220] The server obtains reservation link information for restaurants that accept online reservations using an external reservation system API. For example, it calls the OpenTable API to obtain the reservation link.

[1221] Step 8:

[1222] To calculate the shortest route based on the user's current location, the server calls an external navigation service such as the Google Maps API and calculates the walking route to the store and travel time including transportation options.

[1223] Step 9:

[1224] The server generates final information by integrating the obtained store information, seat availability prediction, reservation link, and navigation information, and converts it into JSON format.

[1225] Step 10:

[1226] The server transmits the generated final information to the terminal.

[1227] Step 11:

[1228] The device analyzes the received information and displays it in a user-friendly format. Specifically, information about each store is displayed in a list format, along with detailed information such as seat availability forecasts, reservation links, and the shortest route.

[1229] Step 12:

[1230] Users can select the most suitable store based on the displayed information and use online reservations and route guidance to smoothly visit the store.

[1231] Example 2

[1232] 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."

[1233] Conventional travel support systems simply provide information without considering the user's emotional state when searching for suitable restaurants during a trip. As a result, users may not be fully satisfied. Furthermore, they lack real-time seat availability and intuitive route guidance, making them difficult to describe as user-friendly systems. The present invention aims to solve these problems and provide a system that provides optimal restaurant information while taking the user's emotional state into consideration.

[1234] 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.

[1235] In this invention, the server includes input means for inputting travel conditions from a user, generation means for generating store information suitable for the user based on the conditions from the input means, emotion recognition means for analyzing the user's facial expressions and voice and identifying their emotional state, customization means for customizing the store information based on their emotional state, prediction means for predicting seat availability based on the generated store information, provision means for providing the user with the predicted seat availability and link information for reservation sites, route calculation means for calculating the shortest route from the user's current location to the store, and display means for integrating and displaying to the user the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means. This enables optimal store selection and navigation that comprehensively considers the user's travel conditions and emotional state.

[1236] "User" refers to a person who uses the system to input travel conditions and obtain optimal restaurant information.

[1237] "Travel conditions" refers collectively to elements such as area, cuisine, budget, customer demographic, date and time entered by the user.

[1238] "Input means" refers to a device or software that provides an interface for users to input travel conditions.

[1239] The "generation means" refers to the function of the server that generates store information suitable for the user based on the travel conditions acquired from the input means.

[1240] "Emotion recognition means" refers to software or hardware that analyzes a user's facial expressions and voice to identify their emotional state.

[1241] The "customization means" refers to a function of the server for providing appropriate store information based on the emotional state identified by the emotion recognition means.

[1242] The "prediction means" refers to the function of the server for predicting seat availability based on the store information generated by the generation means.

[1243] "Provision means" refers to the server's function of providing users with predicted seat availability and link information to reservation sites.

[1244] "Route calculation means" refers to the server's function for calculating the shortest route from the user's current location to the store.

[1245] "Display means" refers to a device or software for integrating and displaying to the user the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means.

[1246] "Store information" refers to information including the restaurant's name, address, contact information, seat availability, reservation link, etc.

[1247] "Availability" refers to information indicating the availability of seats at the store on the specified date and time.

[1248] "Reservation Link" means a web link for making a reservation for a store online.

[1249] "Emotional state" refers to the psychological state identified by the user's facial expression and voice.

[1250] The system of the present invention comprehensively supports travelers in finding suitable restaurants during their trip, and further combines an emotion engine that recognizes the user's emotions. An embodiment of the system of the present invention will be described in detail.

[1251] This system is mainly composed of the user's device, a server, an emotion recognition engine, and various API services. The server plays a central role in the system, generating store information based on user input, predicting, providing, and calculating navigation information, and further customizing the system according to the user's emotions using the emotion recognition engine.

[1252] Hardware and software used

[1253] Device: A smartphone or tablet used by a user. These devices have built-in cameras and microphones and are used for emotion recognition.

[1254] Emotion recognition engine: Software that analyzes a user's facial expressions and voice to identify their emotional state. Machine learning algorithms are used for emotion recognition.

[1255] Server: Receives requests and accesses databases to process information. AI algorithms are used to predict seat availability, and Google Maps API is used to calculate routes.

[1256] System Operation

[1257] Users input their travel conditions (area, cuisine, budget, customer demographic, date and time) through a smartphone or tablet application. When they do so, the emotion recognition engine uses the device's camera and microphone to analyze the user's facial expressions and voice to identify their emotional state.

[1258] As a concrete example, consider the case where a user inputs travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM," and the emotion engine recognizes the emotion of "joy" using the camera and microphone. The device then sends this in JSON format to the server.

[1259] The server analyzes the received travel conditions and emotion information and generates information on suitable stores within the area. The store information includes a list of restaurants and cafes in the area as well as basic information such as the name, address, and contact information of each store.

[1260] Furthermore, the server customizes the store information it provides based on the user's emotional state as determined by the emotion recognition engine. For example, if the emotion "sadness" is recognized, stores with a calm atmosphere will be prioritized.

[1261] The server applies an AI algorithm to predict seat availability at each store based on the generated store list. It then obtains the predicted seat availability and reservation link information for stores that offer online reservations, and provides this information to the user. This allows the user to make reservations directly through the application. The server also uses the Google Maps API to calculate the shortest route from the user's current location to the selected store.

[1262] Finally, the integrated information is sent to the device and displayed to the user. For example, a list containing the store names "La Pergola" and "Roscioli" is displayed with all necessary information integrated, such as seat availability forecast, reservation links, and the shortest route. Based on this information, the user can smoothly select the best store and visit / reserve.

[1263] Prompt Sentence Examples

[1264] "I'd like to make a reservation for a couple at a restaurant in Rome that serves Italian food for under 30 euros on April 1st at 8pm. The user emotion is identified as 'happiness'. Please provide specific restaurant information, estimated seat availability, a reservation link, and transportation information."

[1265] By inputting this prompt, the generative AI model can suggest optimal restaurants based on specific travel conditions and emotional information.

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

[1267] Step 1:

[1268] The user uses a smartphone or tablet to enter travel conditions (area, cuisine, budget, customer demographic, date and time). Specifically, the user enters "Area: Rome," "Cuisine: Italian," "Budget: Under 30 euros," "Customer demographic: Couples," and "Date and time: April 1st, 8:00 PM" within the application. The entered information is displayed in the application for the user to review.

[1269] Input: Travel conditions entered by the user

[1270] Output: Travel condition data entered

[1271] Step 2:

[1272] The device converts the entered travel conditions into JSON format and sends it to the server. Specifically, it converts it into the following format: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "Couple", "datetime": "2023-04-01T20:00"}. The converted data is sent to the server via an HTTP POST request.

[1273] Input: Travel condition data entered

[1274] Output: JSON format travel condition data

[1275] Step 3:

[1276] The device uses a camera and microphone to collect the user's facial expressions and voice and sends them to an emotion recognition engine. The emotion recognition engine analyzes this data to identify the user's emotional state. Specifically, the camera recognizes the user's face and analyzes their facial expressions in real time, while the microphone collects and analyzes their voice. The emotion recognition engine identifies emotions such as "happiness" or "sadness" and sends the results in JSON format to the server.

[1277] Input: User's facial expression data and voice data

[1278] Output: JSON data of identified emotional states

[1279] Step 4:

[1280] The server analyzes the received travel conditions and emotional information and generates a list of appropriate restaurants. Specifically, it accesses a database and extracts restaurant information that matches the specified area and genre. For example, restaurants such as "La Pergola" and "Roscioli" are listed based on the criteria "Rome," "Italian," "under 30 euros," and "couples." If the emotional information is "joy," restaurants with more positive reviews are prioritized in the list.

[1281] Input: JSON format travel condition data, emotional state data

[1282] Output: Generated store information list

[1283] Step 5:

[1284] The server customizes the store information based on the emotional state identified by the emotion recognition engine. For example, if the user's emotion is "sadness," quiet and relaxing stores are prioritized in the list. The customized store list is then updated again.

[1285] Input: JSON data of identified emotional states, generated store information list

[1286] Output: Customized store information list

[1287] Step 6:

[1288] The server applies an AI algorithm to predict the seating availability of each restaurant in the generated restaurant list. Specifically, it predicts the seating availability rate for a specific date and time based on past reservation data and customer trends. For example, the seating availability rate for "La Pergola" is estimated to be 50% and for "Roscioli" to be 20%.

[1289] Input: Customized store information list

[1290] Output: List of restaurants with availability

[1291] Step 7:

[1292] The server obtains reservation link information for stores that allow online reservations and provides it to the user. For example, the server obtains the reservation link for "La Pergola" as https: / / booking.com / la-pergola and adds the reservation link.

[1293] Input: List of store information including availability

[1294] Output: List of store information including reservation links

[1295] Step 8:

[1296] The server uses the Google Maps API to calculate the shortest route from the user's current location to the selected store. Specifically, it calculates the route by sending a request to the Google Maps API using the user's current location information (latitude and longitude). For example, it calculates the walking route from the current location (41.9028, 12.4964) to "La Pergola" as 15 minutes.

[1297] Input: List of store information including reservation links, user's current location information

[1298] Output: Integrated store information list including shortest route information

[1299] Step 9:

[1300] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, information about "La Pergola" such as the name, address, predicted seat availability, reservation link, and 15-minute walk are displayed in a list format. Based on this information, the user can select the appropriate store and make a visit or reservation.

[1301] Input: Integrated store information list including shortest route information

[1302] Output: Unified store information displayed to the user

[1303] Through the above steps, the user can comprehensively consider their travel conditions and emotional state, select the most suitable store, and use it comfortably.

[1304] (Application example 2)

[1305] 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."

[1306] Conventional systems lack customization based on user emotions when helping travelers find suitable restaurants during their trips, resulting in low user satisfaction. Furthermore, when predicting available seats, providing reservation links, or calculating the shortest route, it is difficult to determine which restaurant information best suits the user's current emotions.

[1307] The specification processing by the specification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes an input means for inputting travel conditions from a user, a generation means for generating store information suitable for the user based on the conditions from the input means, a prediction means for predicting seat availability for the generated store information, a provision means for providing the user with the predicted seat availability and reservation link information, a route calculation means for calculating the shortest route from the user's current location to the store, an emotion recognition means for analyzing the user's emotions, a customization means for customizing the store information to be provided according to the user's emotional state, and a display means for integrating and displaying the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means to the user. This makes it possible to provide optimal store information according to the user's emotions in real time, resulting in high user satisfaction.

[1308] "Input means" refers to a device or interface that allows a user to input travel conditions.

[1309] The "generation means" is a device or algorithm that generates store information suitable for the user based on the conditions received from the input means.

[1310] The "prediction means" is a device or algorithm for predicting seat availability based on the generated store information.

[1311] "Providing means" refers to a device or algorithm that provides predicted seat availability and reservation link information to users.

[1312] The "route calculation means" is a device or algorithm that calculates the shortest route from the user's current location to the store.

[1313] "Emotion recognition means" refers to devices or algorithms for analyzing a user's emotions.

[1314] "Customization means" refers to devices or algorithms that adjust the store information provided according to the user's emotional state and provide the user with the most appropriate information.

[1315] The "display means" is a device or interface that integrates the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means and displays it to the user.

[1316] This invention is a system for travelers to find the best restaurants during their trip, and has a customization function using an emotion engine. Below, we will explain the program processing of this system and specific embodiments.

[1317] Overall system configuration

[1318] This system is primarily composed of the user's device, a server, an emotion engine, and various API services. The server, which plays a central role in the system, generates store information based on information input by the user and performs predictions, provision, and calculations of navigation information. It also uses the emotion engine to realize customization according to the user's emotions.

[1319] Input Method

[1320] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[1321] emotion recognition means

[1322] When a user enters travel information into the device, the emotion engine uses the device's camera and microphone to analyze the user's facial expressions and voice. Based on this data, the emotion engine identifies the user's current emotional state; for example, if the user is smiling, it will recognize the emotion of "joy."

[1323] generation means

[1324] The server analyzes the user's travel conditions and the emotion information from the emotion engine, and generates store information appropriate for the user based on this. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[1325] Prediction methods

[1326] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[1327] Providing means

[1328] The server then provides users with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing them to make reservations directly through the application.

[1329] Route calculation method

[1330] The server acquires the user's current location information and uses an external navigation service to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[1331] Display means

[1332] The terminal receives the integrated information sent from the server and displays it in an easy-to-read format for the user. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, users can select the most suitable store and smoothly visit and make a reservation.

[1333] Specific examples

[1334] Let's say a user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The emotion engine recognizes the emotion "joy" using the camera and microphone. The device sends this to the server in JSON format as { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T8:00 PM", "emotion": "joy"}. The server generates a list of restaurants such as "La Pergola" and "Roscioli" based on the travel conditions and emotional state. The server predicts seat availability and finds that "La Pergola" is 50% full and "Roscioli" is 20% full. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation." Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola," estimating it to be a 15-minute walk. Finally, the server combines this information and sends it to the device in the following format:

[1335] [

[1336] {

[1337] "name": "La Pergola",

[1338] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[1339] "seating_prediction": 50,

[1340] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[1341] "navigation_info": "15-minute walk"

[1342] },

[1343] {

[1344] "name": "Roscioli",

[1345] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[1346] "seating_prediction": 20,

[1347] "booking_link": ""

[1348] }

[1349] ]

[1350] In this way, the system can further customize and support travelers in choosing the best restaurant based on emotional information.

[1351] Prompt Sentence Examples

[1352] "User is looking for Italian food in Rome. The emotion is joy. Please suggest restaurants with a bright and fun atmosphere. Also provide seating availability forecast and walking directions."

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

[1354] Step 1:

[1355] Users input their travel requirements through a device application on a smartphone or tablet. The information they input includes the area, cuisine, budget, customer demographic, and date and time. This information is converted into JSON format and sent to the server. Examples of input data include: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "Couples", "datetime": "2023-04-01T20:00"}. Based on the data entered here, the basic data for generating appropriate store information is established in the next step.

[1356] Step 2:

[1357] When a user enters travel conditions into a device, the emotion engine, which acts as an emotion recognition means, analyzes the user's facial expressions and voice using the device's camera and microphone. The emotion engine uses this data to identify the user's current emotional state and adds that emotional information to the travel conditions. For example, the emotion of "joy" is recognized from facial expressions and voice. In this case, the emotional information is added as follows: { "emotion": "joy"}. This lays the foundation for providing appropriate store information based on the user's emotional state.

[1358] Step 3:

[1359] The server receives travel conditions and emotion information and generates restaurant information suitable for the user based on this information. Specifically, it narrows down the list of restaurants and cafes that match the area, cuisine genre, budget, customer demographic, and date and time. In this process, it obtains restaurant data using an external restaurant information API. For example, the obtained restaurant information looks like this: [{ "name": "La Pergola", "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy", "seating_prediction": null, "booking_link": null}].

[1360] Step 4:

[1361] Based on the generated store information, the server uses a prediction method to predict the seating availability of each store. A machine learning algorithm is applied based on past reservation data and customer count data for a specific date and time to obtain a prediction result. For example, the following prediction result can be obtained: { "name": "La Pergola", "seating_prediction": "50%"}. This allows you to understand the seating availability of each store on a specific date and time.

[1362] Step 5:

[1363] The server provides the seat availability prediction results and reservation link information. For restaurants that accept online reservations, the server obtains and adds the link information of the reservation site. For example, the following link information is added: { "name": "La Pergola", "booking_link": "https: / / opentable.com / la-pergola-reservation"}. This allows users to make reservations directly through the application.

[1364] Step 6:

[1365] The server obtains the user's current location information and uses an external navigation service (e.g., Google Maps API) to calculate the shortest route to the selected store. The calculation result is provided as navigation information, for example, as follows: { "name": "La Pergola", "navigation_info": "15-minute walk"}. This allows the user to reach their destination efficiently.

[1366] Step 7:

[1367] The device receives the integrated information sent from the server and displays it in an easy-to-read format for the user. Specifically, it not only displays information about each restaurant in a list format, but also integrates all necessary information, such as seating availability predictions, reservation links, and the shortest route. For example, it might be displayed in the following format: [{ "name": "La Pergola", "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy", "seating_prediction": "50%", "booking_link": "https: / / opentable.com / la-pergola-reservation", "navigation_info": "15-minute walk"}]. Based on this information, users can select the best restaurant and smoothly visit and make a reservation.

[1368] 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.

[1369] 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.

[1370] 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.

[1371] [Fourth embodiment]

[1372] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[1373] 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.

[1374] 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).

[1375] 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.

[1376] 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.

[1377] 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).

[1378] 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.

[1379] 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.

[1380] 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.

[1381] 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.

[1382] 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.

[1383] 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.

[1384] 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."

[1385] The system of the present invention comprehensively supports travelers in finding suitable restaurants during their trip. An embodiment of this system will be described in detail below.

[1386] Overall system configuration

[1387] This system is mainly composed of the user's device, a server, and various API services. The server plays a central role in the system, generating store information based on user input, and calculating prediction, provision, and navigation information.

[1388] Input Method

[1389] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[1390] generation means

[1391] The server analyzes the user's travel conditions and uses AI to generate a list of store information that matches the conditions. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[1392] Prediction methods

[1393] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list. This algorithm is based on past reservation data and customer trend data, and makes highly accurate predictions of seat availability for specific dates and times.

[1394] Providing means

[1395] The server then provides the user with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the application.

[1396] Route calculation method

[1397] The server obtains the user's current location information and uses external navigation services such as Google Maps API to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[1398] Display means

[1399] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, the user can select the most suitable store and smoothly visit and make a reservation.

[1400] Specific examples

[1401] Here's an example: Suppose a user enters travel conditions such as "Rome", "Italian", "under 30 euros", "couple", and "April 1st, 8:00 PM". The device sends this to the server in JSON format: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T20:00"}.

[1402] Based on this information, the server generates a list of restaurants such as "La Pergola" and "Roscioli." It predicts the seat availability of "La Pergola" at 50% and "Roscioli" at 20%. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[1403] Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola" and determines that it is a 15-minute walk.

[1404] Finally, the server combines this information and sends it to the device in the following format:

[1405] [

[1406] {

[1407] "name": "La Pergola",

[1408] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[1409] "seating_prediction": 50,

[1410] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[1411] "navigation_info": "15-minute walk"

[1412] },

[1413] {

[1414] "name": "Roscioli",

[1415] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[1416] "seating_prediction": 20,

[1417] "booking_link": ""

[1418] }

[1419] ]

[1420] The terminal analyzes and displays this information, allowing the user to intuitively determine which restaurant is most suitable. In this way, the system can help travelers choose the best restaurant.

[1421] The processing flow will be explained below.

[1422] Step 1:

[1423] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) into the application on the terminal.

[1424] Step 2:

[1425] The terminal converts the input information into JSON format and sends it to the server.

[1426] Step 3:

[1427] The server analyzes the received JSON data and extracts each condition item entered by the user (area, cuisine, budget, customer demographic, date and time).

[1428] Step 4:

[1429] The server uses generation AI to generate an appropriate restaurant list based on the extracted conditions, searching and narrowing down the list of restaurants from multiple restaurant databases in the area.

[1430] Step 5:

[1431] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[1432] Step 6:

[1433] The server obtains reservation link information for restaurants that accept online reservations by using the API of an external reservation system. For example, it obtains the link by calling the OpenTable API.

[1434] Step 7:

[1435] To calculate the shortest route based on the user's current location, the server calls an external navigation service such as the Google Maps API and calculates the walking route to the store and travel time including transportation options.

[1436] Step 8:

[1437] The server generates final information by integrating the obtained store information, seat availability prediction, reservation link, and navigation information, and converts it into JSON format.

[1438] Step 9:

[1439] The server transmits the generated final information to the terminal.

[1440] Step 10:

[1441] The device analyzes the received information and displays it in a user-friendly format. Specifically, it displays information about each store in a list format, along with detailed information such as seat availability forecasts, reservation links, and the shortest route.

[1442] Step 11:

[1443] Users can select the most suitable store based on the displayed information and use online reservations and route guidance to smoothly visit the store.

[1444] Example 1

[1445] 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."

[1446] In the past, travelers had to search numerous websites and information sources to find the right restaurant at their travel destination, which required time and effort. Furthermore, they had to individually check reservation status and calculate the optimal route, which was inefficient. Furthermore, systems lacked the ability to accurately predict available seats using past reservation data or automatically generate restaurants that perfectly match the user's travel requirements. The present invention aims to solve these problems and provide a system that is highly convenient for travelers.

[1447] 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.

[1448] In this invention, the server includes an input means for inputting travel conditions from a user, a conversion means for converting the conditions from the input means into JSON format data and transmitting it, a generation means for generating store information suitable for the user using a generative AI model based on the conditions, a prediction means for predicting seat availability for the generated store information using past reservation data and customer count data, a provision means for providing the user with the predicted seat availability and reservation link information, a route calculation means for acquiring the user's current location information and calculating the shortest route to the store using an external navigation service, and a display means for integrating and displaying the information obtained by the generation means, prediction means, provision means, and route calculation means to the user. This enables travelers to consistently obtain appropriate store information, predict seat availability, make reservations, and navigate through a single application.

[1449] "Input means" refers to the means by which a user inputs travel conditions, and includes terminal applications such as smartphones and tablets.

[1450] The "conversion means" is a means for converting the travel conditions entered by the user into JSON format data and sending it to the server.

[1451] "Generation means" refers to a means of generating store information suitable for a user's travel conditions using a generative AI model.

[1452] A "generative AI model" is a model that uses artificial intelligence to generate results based on input conditions, such as OpenAI's GPT-3.

[1453] The "prediction means" is a means for predicting seat availability based on the generated store information and using past reservation data and customer number data.

[1454] The "means for providing" is a means for obtaining predicted seat availability and reservation link information and providing it to users.

[1455] The "route calculation means" is a means for acquiring the user's current location information and calculating the shortest route to the store using an external navigation service.

[1456] An "external navigation service" is an external service that provides route calculations and map information, such as the Google Maps API.

[1457] The "display means" is a means for analyzing the information sent from the server and displaying it in a format that is easy for the user to view.

[1458] "JSON format" is an abbreviation for JavaScript Object Notation and is a lightweight data exchange format.

[1459] This invention relates to a system that comprehensively supports travelers in finding suitable restaurants during their trip. This system is mainly composed of a user's device, a server, and various API services. The server, which plays a central role in the system, generates store information based on information input by the user and performs prediction, provision, and calculation of navigation information.

[1460] Input Method

[1461] Users input their travel conditions through a device application on a smartphone or tablet. These conditions include information such as area, cuisine, budget, customer demographics, and date and time. The information entered by the user is converted into JSON format within the application and sent to the server.

[1462] Conversion Method

[1463] The terminal converts the travel conditions entered by the user into JSON format data, for example, the following prompt is generated:

[1464] {

[1465] "area": ​​"Rome",

[1466] "genre": "Italian",

[1467] "budget": "30",

[1468] "audience": "couple",

[1469] "datetime": "2023-04-01T20:00"

[1470] }

[1471] The converted data is sent to the server using the HTTPS protocol.

[1472] generation means

[1473] The server analyzes the received JSON data and generates store information that matches the travel conditions using a generative AI model (e.g., OpenAI's GPT-3). Specific examples of prompt sentences are as follows:

[1474] Generate a list of Italian restaurants in Rome that fit the following conditions: budget is under 30 euros, suitable for couples, and available on April 1st at 20:00.

[1475] The generated store information includes basic information such as the store name, address, and contact information.

[1476] Prediction methods

[1477] Based on the generated store information, the server applies an AI algorithm to predict seat availability using past reservation data and customer visitor count data. The prediction results show the seat availability rate for each store. For example, the seat availability rate for "La Pergola" is predicted to be 50%, and for "Roscioli" it is predicted to be 20%.

[1478] Providing means

[1479] The server retrieves the estimated seat availability and provides the reservation link for restaurants that offer online reservations to the user. This allows the user to make a reservation directly from the application. For example, the reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation".

[1480] Route calculation method

[1481] The server obtains the user's current location information (e.g., latitude and longitude: 41.9028, 12.4964) and uses an external navigation service to calculate the shortest route to the selected store. Using Google Maps API or similar, the server obtains detailed navigation information, including travel times by foot and public transportation. As a specific example, the server calculates that the walking route to "La Pergola" is a 15-minute walk.

[1482] Display means

[1483] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, it displays information about each store in a list format, and integrates seat availability forecasts, reservation links, and navigation information. Based on this information, the user can select the appropriate store and make a reservation or visit smoothly.

[1484] Specific examples

[1485] Here is a specific example: Suppose a user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The device sends this information in JSON format to the server as follows:

[1486] {

[1487] "area": ​​"Rome",

[1488] "genre": "Italian",

[1489] "budget": "30",

[1490] "audience": "couple",

[1491] "datetime": "2023-04-01T20:00"

[1492] }

[1493] Based on this information, the server generates a list of restaurants such as "La Pergola" and "Roscioli," and obtains restaurant information using a generative AI model. The server predicts seat availability, finding that "La Pergola" has 50% availability and "Roscioli" has 20% availability. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[1494] Furthermore, the server calculates the walking route from the user's current location to "La Pergola" and calculates that it is a 15-minute walk. Finally, the server combines this information and sends it to the device in the following format:

[1495] [

[1496] {

[1497] "name": "La Pergola",

[1498] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[1499] "seating_prediction": 50,

[1500] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[1501] "navigation_info": "15-minute walk"

[1502] },

[1503] {

[1504] "name": "Roscioli",

[1505] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[1506] "seating_prediction": 20,

[1507] "booking_link": ""

[1508] }

[1509] ]

[1510] The terminal analyzes this information and displays it to the user in a list format. In this way, the system can help travelers select the best restaurant.

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

[1512] Step 1:

[1513] Users input their travel requirements into an application on their smartphone or tablet. The information they input includes the area, cuisine, budget, customer demographic, and date and time. Specifically, users input information such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." This information becomes the input data for subsequent processing.

[1514] Step 2:

[1515] The device converts the travel conditions entered by the user into JSON format. For example, the conditions entered by the user, "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM," are converted into the following JSON format data:

[1516] json

[1517] {

[1518] "area": ​​"Rome",

[1519] "genre": "Italian",

[1520] "budget": "30",

[1521] "audience": "couple",

[1522] "datetime": "2023-04-01T20:00"

[1523] }

[1524] The converted data becomes output data to be sent to the server.

[1525] Step 3:

[1526] The server analyzes the JSON data received from the device. During this analysis, information such as area, cuisine genre, budget, customer demographic, and date and time is extracted into individual variables and organized into an appropriate format. Specifically, the JSON data is parsed and each piece of information is stored in an internally managed variable. This analyzed data becomes the input data for the next generation method.

[1527] Step 4:

[1528] The server uses a generative AI model (e.g., OpenAI's GPT-3) to generate store information that matches the conditions. Specific examples of prompt sentences are as follows:

[1529] Generate a list of Italian restaurants in Rome that fit the following conditions: budget is under 30 euros, suitable for couples, and available on April 1st at 20:00.

[1530] This prompt sentence is input into the generative AI model, and store information that matches the conditions (store name, address, contact information, etc.) is obtained as output data in list format.

[1531] Step 5:

[1532] Based on the generated store list, the server predicts seat availability using past reservation data and customer number data. This prediction applies an AI algorithm to calculate the seat availability rate for each store. For example, the seat availability rate for "La Pergola" is predicted to be 50%, and for "Roscioli" it is predicted to be 20%. These seat availability rates become the output data of the prediction method.

[1533] Step 6:

[1534] The server retrieves the predicted seat availability and a reservation link for restaurants that accept online reservations. For example, the reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation." This reservation link information is also retrieved as output data.

[1535] Step 7:

[1536] The server obtains the user's current location information (e.g., latitude and longitude: 41.9028, 12.4964) and uses an external navigation service (e.g., Google Maps API) to calculate the shortest route to the selected store. The calculation results are output as detailed navigation information, including travel times by foot and public transportation. For example, the walking route to "La Pergola" is calculated as a 15-minute walk.

[1537] Step 8:

[1538] The server integrates the generated store information, seat availability forecast, reservation link, and navigation information, and formats it to be displayed to the user. For example, the following integrated information is generated:

[1539] json

[1540] [

[1541] {

[1542] "name": "La Pergola",

[1543] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[1544] "seating_prediction": 50,

[1545] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[1546] "navigation_info": "15-minute walk"

[1547] },

[1548] {

[1549] "name": "Roscioli",

[1550] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[1551] "seating_prediction": 20,

[1552] "booking_link": ""

[1553] }

[1554] ]

[1555] This integrated information becomes the output data to the terminal.

[1556] Step 9:

[1557] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, it displays information about each store in a list format, and integrates seat availability forecasts, reservation links, and navigation information. Based on this information, the user can select the appropriate store and make a reservation or visit smoothly.

[1558] (Application example 1)

[1559] 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."

[1560] When traveling in an autonomous vehicle, users lack the means to easily find suitable restaurants, make reservations, and enjoy efficient navigation. This problem is particularly evident in situations where a system is needed that can generate restaurant information appropriate for different conditions in different areas, predict availability, quickly make reservations, and provide navigation to the restaurant.

[1561] 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.

[1562] In this invention, the server includes an input means for inputting travel conditions from the user, a generation means for generating restaurant information suitable for the user based on the conditions from the input means, a prediction means for predicting seat availability for the generated restaurant information, a provision means for providing the user with the predicted seat availability and link information for reservation sites, a route calculation means for calculating the shortest route from the user's current location to the restaurant, and a means for linking with the vehicle's navigation system and providing navigation information to the restaurant using the vehicle's current location information. This enables users to easily find suitable restaurants, make reservations, and enjoy efficient navigation.

[1563] The "input means" is a means for the user to input travel conditions.

[1564] The "generation means" is a means for generating store information suitable for a user based on the conditions from the input means.

[1565] The "prediction means" is a means for predicting seat availability for the generated store information.

[1566] The "means of provision" is a means for providing users with predicted seat availability and link information to reservation sites.

[1567] The "route calculation means" is a means for calculating the shortest route from the user's current location to the store.

[1568] The "display means" is a means for integrating the information obtained by the generation means, prediction means, provision means and route calculation means and displaying the information to the user.

[1569] The "store narrowing down means" is a means for narrowing down a number of stores based on area information, food genre, budget, customer demographic, and date and time input by the user.

[1570] A "machine learning algorithm" is an algorithm used to predict seat availability based on past reservation data and customer count data for a specific date and time.

[1571] The "means for providing navigation information" is a means for linking with the vehicle's navigation system and providing navigation information to the store using the vehicle's current location information.

[1572] The system of the present invention is a restaurant search support system installed in an autonomous driving vehicle. The main components of this system are a user input means, a server, a vehicle navigation system, and various API services. An embodiment of this system will be described in detail below.

[1573] Overall system configuration

[1574] In this system, users input their travel conditions through the on-board display of their autonomous vehicle, and the server provides appropriate store information based on those conditions. Furthermore, the system predicts store availability, provides reservation links, and displays the shortest route from the vehicle's current location to the store on the navigation system.

[1575] Input Method

[1576] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through the in-car display. This input information is converted into JSON format and sent to the server.

[1577] generation means

[1578] The server analyzes the received travel conditions and uses a generative AI model to generate store information that matches the conditions. This store information includes basic information such as store name, address, contact information, and business hours.

[1579] Prediction methods

[1580] The server then applies a machine learning algorithm to predict seat availability at each restaurant based on the generated restaurant list. This algorithm uses past reservation data and customer visitor trends to accurately predict seat availability for a specific date and time.

[1581] Providing means

[1582] The server then provides the user with the predicted seat availability and, for stores that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the in-car display.

[1583] Route calculation method

[1584] The server uses the current location information obtained from the vehicle's GPS module to calculate the shortest route to the selected store using external navigation services such as Google Maps API. The calculation results are displayed on the vehicle's navigation system, providing the user with detailed navigation information.

[1585] Display means

[1586] The vehicle's navigation system receives the integrated information sent from the server and displays it in an easy-to-read format for the user. By displaying all necessary information, such as store information, seat availability forecasts, reservation links, and the shortest route, the user can smoothly select a store, visit, and make a reservation.

[1587] Specific examples

[1588] If a couple traveling in Rome is looking for an Italian restaurant, they might enter criteria like "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8pm." These criteria would be sent to the server in the form of text like this:

[1589] Area: Rome

[1590] Cuisine:Italian

[1591] Budget: Under 30 euros

[1592] Customers: Couples

[1593] Date and time: 2023-04-01 20:00

[1594] Based on this information, the server uses an AI model to generate a list of restaurants, predict seat availability, and integrates reservation links and navigation information to display on the in-car display.

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

[1596] Step 1:

[1597] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) through the in-car display. The input information is converted into JSON format. This input information may include, for example, "Area: Rome," "Cuisine: Italian," "Budget: Under 30 euros," "Customer demographic: Couples," and "Date and time: 2023-04-01 20:00." The input is sent to the server.

[1598] Step 2:

[1599] The server analyzes the received travel conditions in JSON format. Using a generative AI model, it generates store information that matches the entered conditions. This process extracts relevant store information (store name, address, contact information, business hours, etc.) from the database and creates a list. Specifically, this includes store information such as "La Pergola" and "Roscioli."

[1600] Step 3:

[1601] The server then applies machine learning algorithms to predict seat availability based on the generated restaurant information. Using past reservation data and customer count data for specific dates and times, it can obtain information such as "La Pergola's predicted seat availability rate is 50%" and "Roscioli's predicted seat availability rate is 20%."

[1602] Step 4:

[1603] The server retrieves link information for reservation sites for restaurants that can accept reservations along with predicted seat availability information. It calls the API of an online reservation site and obtains, for example, "La Pergola reservation link: https: / / example.com / la-pergola-reservation." It also adds this link to the restaurant information.

[1604] Step 5:

[1605] The server obtains the vehicle's current location information from the vehicle's GPS module and uses navigation services such as Google Maps API to calculate the shortest route from the current location to the selected store. Specifically, it generates navigation information such as "It's a 15-minute walk from your current location to La Pergola."

[1606] Step 6:

[1607] The server combines the generated store information, seat availability predictions, reservation links, and navigation information and sends them to the in-vehicle display, allowing the user to find the appropriate store at a glance.

[1608] Step 7:

[1609] The in-car display displays the integrated store information in an easy-to-read format for the user, such as "Store name: La Pergola," "Estimated occupancy rate: 50%," "Reservation link: https: / / example.com / la-pergola-reservation," and "Navigation information: 15 minutes' walk."

[1610] Step 8:

[1611] The user selects a store based on the displayed information, clicks the reservation link if necessary, and makes a reservation. The autonomous vehicle then heads to the selected store according to the navigation information.

[1612] 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.

[1613] The system of the present invention comprehensively assists travelers in finding suitable restaurants during their trip, and further combines an emotion engine that recognizes the user's emotions. An embodiment of this system will be described in detail below.

[1614] Overall system configuration

[1615] This system is mainly composed of the user's device, a server, an emotion engine, and various API services. The server plays a central role in the system, generating store information based on user input, and calculating predictions, provision, and navigation information, and further customizing the system according to the user's emotions using the emotion engine.

[1616] Input Method

[1617] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[1618] emotion recognition means

[1619] When a user enters travel conditions into the device, the emotion engine uses the device's camera and microphone to analyze the user's facial expressions and voice. The emotion engine uses this data to identify the user's current emotional state. For example, if the user is smiling, the emotion of "joy" is recognized.

[1620] generation means

[1621] The server analyzes the received user's travel conditions and the emotion information from the emotion engine, and generates store information suitable for the user based on this. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[1622] Emotion-based customization methods

[1623] The server customizes the store information it provides based on the user's emotional state as determined by the emotion engine. For example, if the emotion of "sadness" is recognized, stores with a calm atmosphere will be prioritized.

[1624] Prediction methods

[1625] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[1626] Providing means

[1627] The server then provides the user with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing the user to make a reservation directly through the application.

[1628] Route calculation method

[1629] The server obtains the user's current location information and uses external navigation services such as Google Maps API to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[1630] Display means

[1631] The terminal receives the integrated information sent from the server and displays it in an easy-to-read format for the user. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, the user can select the most suitable store and smoothly visit and make a reservation.

[1632] Specific examples

[1633] Here's a concrete example: A user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The emotion engine recognizes the emotion "joy" using the camera and microphone. The device sends this to the server in JSON format as { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T20:00", "emotion": "joy"}.

[1634] The server generates a list of restaurants, such as "La Pergola" and "Roscioli," based on the travel conditions and emotional state. The server predicts the seat availability of "La Pergola" at 50% and "Roscioli" at 20%. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation."

[1635] Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola" and determines that it is a 15-minute walk.

[1636] Finally, the server combines this information and sends it to the device in the following format:

[1637] [

[1638] {

[1639] "name": "La Pergola",

[1640] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[1641] "seating_prediction": 50,

[1642] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[1643] "navigation_info": "15-minute walk"

[1644] },

[1645] {

[1646] "name": "Roscioli",

[1647] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[1648] "seating_prediction": 20,

[1649] "booking_link": ""

[1650] }

[1651] ]

[1652] The device analyzes and displays this information, allowing the user to intuitively determine which restaurant is most suitable. In this way, the system can further customize and support travelers in choosing the best restaurant based on their emotional information.

[1653] The processing flow will be explained below.

[1654] Step 1:

[1655] The user inputs travel conditions (area, cuisine, budget, customer demographic, date and time) into the terminal application. The camera and microphone also operate to collect the user's emotional state (facial expressions and voice).

[1656] Step 2:

[1657] The device converts the entered travel conditions into JSON format and sends the collected emotion data to the server.

[1658] Step 3:

[1659] The server analyzes the received JSON data and extracts each condition item entered by the user (area, cuisine genre, budget, customer demographic, date and time) and emotional data.

[1660] Step 4:

[1661] The emotion engine analyzes the extracted emotion data to identify the user's current emotional state, such as "joy," "sadness," or "anger," using facial expression recognition or voice analysis, for example.

[1662] Step 5:

[1663] The server uses generative AI to generate a list of appropriate store information based on the extracted travel conditions and the identified emotional state. For example, stores with a bright atmosphere are prioritized for "joy," while stores with a calm atmosphere are prioritized for "sadness."

[1664] Step 6:

[1665] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, and predicts seat availability for a specific date and time based on past reservation data and customer trends.

[1666] Step 7:

[1667] The server obtains reservation link information for restaurants that accept online reservations using an external reservation system API. For example, it calls the OpenTable API to obtain the reservation link.

[1668] Step 8:

[1669] To calculate the shortest route based on the user's current location, the server calls an external navigation service such as the Google Maps API and calculates the walking route to the store and travel time including transportation options.

[1670] Step 9:

[1671] The server generates final information by integrating the obtained store information, seat availability prediction, reservation link, and navigation information, and converts it into JSON format.

[1672] Step 10:

[1673] The server transmits the generated final information to the terminal.

[1674] Step 11:

[1675] The device analyzes the received information and displays it in a user-friendly format. Specifically, information about each store is displayed in a list format, along with detailed information such as seat availability forecasts, reservation links, and the shortest route.

[1676] Step 12:

[1677] Users can select the most suitable store based on the displayed information and use online reservations and route guidance to smoothly visit the store.

[1678] Example 2

[1679] 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."

[1680] Conventional travel support systems simply provide information without considering the user's emotional state when searching for suitable restaurants during a trip. As a result, users may not be fully satisfied. Furthermore, they lack real-time seat availability and intuitive route guidance, making them difficult to describe as user-friendly systems. The present invention aims to solve these problems and provide a system that provides optimal restaurant information while taking the user's emotional state into consideration.

[1681] 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.

[1682] In this invention, the server includes input means for inputting travel conditions from a user, generation means for generating store information suitable for the user based on the conditions from the input means, emotion recognition means for analyzing the user's facial expressions and voice and identifying their emotional state, customization means for customizing the store information based on their emotional state, prediction means for predicting seat availability based on the generated store information, provision means for providing the user with the predicted seat availability and link information for reservation sites, route calculation means for calculating the shortest route from the user's current location to the store, and display means for integrating and displaying to the user the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means. This enables optimal store selection and navigation that comprehensively considers the user's travel conditions and emotional state.

[1683] "User" refers to a person who uses the system to input travel conditions and obtain optimal restaurant information.

[1684] "Travel conditions" refers collectively to elements such as area, cuisine, budget, customer demographic, date and time entered by the user.

[1685] "Input means" refers to a device or software that provides an interface for users to input travel conditions.

[1686] The "generation means" refers to the function of the server that generates store information suitable for the user based on the travel conditions acquired from the input means.

[1687] "Emotion recognition means" refers to software or hardware that analyzes a user's facial expressions and voice to identify their emotional state.

[1688] The "customization means" refers to a function of the server for providing appropriate store information based on the emotional state identified by the emotion recognition means.

[1689] The "prediction means" refers to the function of the server for predicting seat availability based on the store information generated by the generation means.

[1690] "Provision means" refers to the server's function of providing users with predicted seat availability and link information to reservation sites.

[1691] "Route calculation means" refers to the server's function for calculating the shortest route from the user's current location to the store.

[1692] "Display means" refers to a device or software for integrating and displaying to the user the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means.

[1693] "Store information" refers to information including the restaurant's name, address, contact information, seat availability, reservation link, etc.

[1694] "Availability" refers to information indicating the availability of seats at the store on the specified date and time.

[1695] "Reservation Link" means a web link for making a reservation for a store online.

[1696] "Emotional state" refers to the psychological state identified by the user's facial expression and voice.

[1697] The system of the present invention comprehensively supports travelers in finding suitable restaurants during their trip, and further combines an emotion engine that recognizes the user's emotions. An embodiment of the system of the present invention will be described in detail.

[1698] This system is mainly composed of the user's device, a server, an emotion recognition engine, and various API services. The server plays a central role in the system, generating store information based on user input, predicting, providing, and calculating navigation information, and further customizing the system according to the user's emotions using the emotion recognition engine.

[1699] Hardware and software used

[1700] Device: A smartphone or tablet used by a user. These devices have built-in cameras and microphones and are used for emotion recognition.

[1701] Emotion recognition engine: Software that analyzes a user's facial expressions and voice to identify their emotional state. Machine learning algorithms are used for emotion recognition.

[1702] Server: Receives requests and accesses databases to process information. AI algorithms are used to predict seat availability, and Google Maps API is used to calculate routes.

[1703] System Operation

[1704] Users input their travel conditions (area, cuisine, budget, customer demographic, date and time) through a smartphone or tablet application. When they do so, the emotion recognition engine uses the device's camera and microphone to analyze the user's facial expressions and voice to identify their emotional state.

[1705] As a concrete example, consider the case where a user inputs travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM," and the emotion engine recognizes the emotion of "joy" using the camera and microphone. The device then sends this in JSON format to the server.

[1706] The server analyzes the received travel conditions and emotion information and generates information on suitable stores within the area. The store information includes a list of restaurants and cafes in the area as well as basic information such as the name, address, and contact information of each store.

[1707] Furthermore, the server customizes the store information it provides based on the user's emotional state as determined by the emotion recognition engine. For example, if the emotion "sadness" is recognized, stores with a calm atmosphere will be prioritized.

[1708] The server applies an AI algorithm to predict seat availability at each store based on the generated store list. It then obtains the predicted seat availability and reservation link information for stores that offer online reservations, and provides this information to the user. This allows the user to make reservations directly through the application. The server also uses the Google Maps API to calculate the shortest route from the user's current location to the selected store.

[1709] Finally, the integrated information is sent to the device and displayed to the user. For example, a list containing the store names "La Pergola" and "Roscioli" is displayed with all necessary information integrated, such as seat availability forecast, reservation links, and the shortest route. Based on this information, the user can smoothly select the best store and visit / reserve.

[1710] Prompt Sentence Examples

[1711] "I'd like to make a reservation for a couple at a restaurant in Rome that serves Italian food for under 30 euros on April 1st at 8pm. The user emotion is identified as 'happiness'. Please provide specific restaurant information, estimated seat availability, a reservation link, and transportation information."

[1712] By inputting this prompt, the generative AI model can suggest optimal restaurants based on specific travel conditions and emotional information.

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

[1714] Step 1:

[1715] The user uses a smartphone or tablet to enter travel conditions (area, cuisine, budget, customer demographic, date and time). Specifically, the user enters "Area: Rome," "Cuisine: Italian," "Budget: Under 30 euros," "Customer demographic: Couples," and "Date and time: April 1st, 8:00 PM" within the application. The entered information is displayed in the application for the user to review.

[1716] Input: Travel conditions entered by the user

[1717] Output: Travel condition data entered

[1718] Step 2:

[1719] The device converts the entered travel conditions into JSON format and sends it to the server. Specifically, it converts it into the following format: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "Couple", "datetime": "2023-04-01T20:00"}. The converted data is sent to the server via an HTTP POST request.

[1720] Input: Travel condition data entered

[1721] Output: JSON format travel condition data

[1722] Step 3:

[1723] The device uses a camera and microphone to collect the user's facial expressions and voice and sends them to an emotion recognition engine. The emotion recognition engine analyzes this data to identify the user's emotional state. Specifically, the camera recognizes the user's face and analyzes their facial expressions in real time, while the microphone collects and analyzes their voice. The emotion recognition engine identifies emotions such as "happiness" or "sadness" and sends the results in JSON format to the server.

[1724] Input: User's facial expression data and voice data

[1725] Output: JSON data of identified emotional states

[1726] Step 4:

[1727] The server analyzes the received travel conditions and emotional information and generates a list of appropriate restaurants. Specifically, it accesses a database and extracts restaurant information that matches the specified area and genre. For example, restaurants such as "La Pergola" and "Roscioli" are listed based on the criteria "Rome," "Italian," "under 30 euros," and "couples." If the emotional information is "joy," restaurants with more positive reviews are prioritized in the list.

[1728] Input: JSON format travel condition data, emotional state data

[1729] Output: Generated store information list

[1730] Step 5:

[1731] The server customizes the store information based on the emotional state identified by the emotion recognition engine. For example, if the user's emotion is "sadness," quiet and relaxing stores are prioritized in the list. The customized store list is then updated again.

[1732] Input: JSON data of identified emotional states, generated store information list

[1733] Output: Customized store information list

[1734] Step 6:

[1735] The server applies an AI algorithm to predict the seating availability of each restaurant in the generated restaurant list. Specifically, it predicts the seating availability rate for a specific date and time based on past reservation data and customer trends. For example, the seating availability rate for "La Pergola" is estimated to be 50% and for "Roscioli" to be 20%.

[1736] Input: Customized store information list

[1737] Output: List of restaurants with availability

[1738] Step 7:

[1739] The server obtains reservation link information for stores that allow online reservations and provides it to the user. For example, the server obtains the reservation link for "La Pergola" as https: / / booking.com / la-pergola and adds the reservation link.

[1740] Input: List of store information including availability

[1741] Output: List of store information including reservation links

[1742] Step 8:

[1743] The server uses the Google Maps API to calculate the shortest route from the user's current location to the selected store. Specifically, it calculates the route by sending a request to the Google Maps API using the user's current location information (latitude and longitude). For example, it calculates the walking route from the current location (41.9028, 12.4964) to "La Pergola" as 15 minutes.

[1744] Input: List of store information including reservation links, user's current location information

[1745] Output: Integrated store information list including shortest route information

[1746] Step 9:

[1747] The terminal receives the integrated information sent from the server and displays it in a format that is easy for the user to view. Specifically, information about "La Pergola" such as the name, address, predicted seat availability, reservation link, and 15-minute walk are displayed in a list format. Based on this information, the user can select the appropriate store and make a visit or reservation.

[1748] Input: Integrated store information list including shortest route information

[1749] Output: Unified store information displayed to the user

[1750] Through the above steps, the user can comprehensively consider their travel conditions and emotional state, select the most suitable store, and use it comfortably.

[1751] (Application example 2)

[1752] 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."

[1753] Conventional systems lack customization based on user emotions when helping travelers find suitable restaurants during their trips, resulting in low user satisfaction. Furthermore, when predicting available seats, providing reservation links, or calculating the shortest route, it is difficult to determine which restaurant information best suits the user's current emotions.

[1754] The specification processing by the specification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes an input means for inputting travel conditions from a user, a generation means for generating store information suitable for the user based on the conditions from the input means, a prediction means for predicting seat availability for the generated store information, a provision means for providing the user with the predicted seat availability and reservation link information, a route calculation means for calculating the shortest route from the user's current location to the store, an emotion recognition means for analyzing the user's emotions, a customization means for customizing the store information to be provided according to the user's emotional state, and a display means for integrating and displaying the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means to the user. This makes it possible to provide optimal store information according to the user's emotions in real time, resulting in high user satisfaction.

[1755] "Input means" refers to a device or interface that allows a user to input travel conditions.

[1756] The "generation means" is a device or algorithm that generates store information suitable for the user based on the conditions received from the input means.

[1757] The "prediction means" is a device or algorithm for predicting seat availability based on the generated store information.

[1758] "Providing means" refers to a device or algorithm that provides predicted seat availability and reservation link information to users.

[1759] The "route calculation means" is a device or algorithm that calculates the shortest route from the user's current location to the store.

[1760] "Emotion recognition means" refers to devices or algorithms for analyzing a user's emotions.

[1761] "Customization means" refers to devices or algorithms that adjust the store information provided according to the user's emotional state and provide the user with the most appropriate information.

[1762] The "display means" is a device or interface that integrates the information obtained by the generation means, prediction means, provision means, route calculation means, emotion recognition means, and customization means and displays it to the user.

[1763] This invention is a system for travelers to find the best restaurants during their trip, and has a customization function using an emotion engine. Below, we will explain the program processing of this system and specific embodiments.

[1764] Overall system configuration

[1765] This system is primarily composed of the user's device, a server, an emotion engine, and various API services. The server, which plays a central role in the system, generates store information based on information input by the user and performs predictions, provision, and calculations of navigation information. It also uses the emotion engine to realize customization according to the user's emotions.

[1766] Input Method

[1767] Users input travel conditions such as area, cuisine, budget, customer demographic, date and time through a device application on a smartphone or tablet. This input information is converted into JSON format within the application and sent to the server.

[1768] emotion recognition means

[1769] When a user enters travel information into the device, the emotion engine uses the device's camera and microphone to analyze the user's facial expressions and voice. Based on this data, the emotion engine identifies the user's current emotional state; for example, if the user is smiling, it will recognize the emotion of "joy."

[1770] generation means

[1771] The server analyzes the user's travel conditions and the emotion information from the emotion engine, and generates store information appropriate for the user based on this. The store information includes a list of restaurants and cafes in the area as well as basic information about each store (such as name, address, and contact information).

[1772] Prediction methods

[1773] The server then applies an AI algorithm to predict seat availability at each store based on the generated store list, using past reservation data and customer trends to obtain seat availability predictions for a specific date and time.

[1774] Providing means

[1775] The server then provides users with the predicted seat availability and, for restaurants that allow online reservations, a link to the reservation site, allowing them to make reservations directly through the application.

[1776] Route calculation method

[1777] The server acquires the user's current location information and uses an external navigation service to calculate the shortest route to the selected store. The calculation results are provided as detailed navigation information that takes into account factors such as walking time and the use of public transportation.

[1778] Display means

[1779] The terminal receives the integrated information sent from the server and displays it in an easy-to-read format for the user. For example, instead of just displaying information about each store in list format, it also displays all necessary information such as predicted seat availability, reservation links, and the shortest route in an integrated format. Based on this information, users can select the most suitable store and smoothly visit and make a reservation.

[1780] Specific examples

[1781] Let's say a user enters travel conditions such as "Rome," "Italian," "under 30 euros," "couple," and "April 1st, 8:00 PM." The emotion engine recognizes the emotion "joy" using the camera and microphone. The device sends this to the server in JSON format as { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "couple", "datetime": "2023-04-01T8:00 PM", "emotion": "joy"}. The server generates a list of restaurants such as "La Pergola" and "Roscioli" based on the travel conditions and emotional state. The server predicts seat availability and finds that "La Pergola" is 50% full and "Roscioli" is 20% full. The reservation link for "La Pergola" is "https: / / opentable.com / la-pergola-reservation." Furthermore, the server calculates the walking route from the user's current location (e.g., latitude and longitude: 41.9028, 12.4964) to "La Pergola," estimating it to be a 15-minute walk. Finally, the server combines this information and sends it to the device in the following format:

[1782] [

[1783] {

[1784] "name": "La Pergola",

[1785] "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy",

[1786] "seating_prediction": 50,

[1787] "booking_link": "https: / / opentable.com / la-pergola-reservation",

[1788] "navigation_info": "15-minute walk"

[1789] },

[1790] {

[1791] "name": "Roscioli",

[1792] "address": "Via dei Giubbonari, 21, 00186 Roma RM, Italy",

[1793] "seating_prediction": 20,

[1794] "booking_link": ""

[1795] }

[1796] ]

[1797] In this way, the system can further customize and support travelers in choosing the best restaurant based on emotional information.

[1798] Prompt Sentence Examples

[1799] "User is looking for Italian food in Rome. The emotion is joy. Please suggest restaurants with a bright and fun atmosphere. Also provide seating availability forecast and walking directions."

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

[1801] Step 1:

[1802] Users input their travel requirements through a device application on a smartphone or tablet. The information they input includes the area, cuisine, budget, customer demographic, and date and time. This information is converted into JSON format and sent to the server. Examples of input data include: { "area": ​​"Rome", "genre": "Italian", "budget": "30", "audience": "Couples", "datetime": "2023-04-01T20:00"}. Based on the data entered here, the basic data for generating appropriate store information is established in the next step.

[1803] Step 2:

[1804] When a user enters travel conditions into a device, the emotion engine, which acts as an emotion recognition means, analyzes the user's facial expressions and voice using the device's camera and microphone. The emotion engine uses this data to identify the user's current emotional state and adds that emotional information to the travel conditions. For example, the emotion of "joy" is recognized from facial expressions and voice. In this case, the emotional information is added as follows: { "emotion": "joy"}. This lays the foundation for providing appropriate store information based on the user's emotional state.

[1805] Step 3:

[1806] The server receives travel conditions and emotion information and generates restaurant information suitable for the user based on this information. Specifically, it narrows down the list of restaurants and cafes that match the area, cuisine genre, budget, customer demographic, and date and time. In this process, it obtains restaurant data using an external restaurant information API. For example, the obtained restaurant information looks like this: [{ "name": "La Pergola", "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy", "seating_prediction": null, "booking_link": null}].

[1807] Step 4:

[1808] Based on the generated store information, the server uses a prediction method to predict the seating availability of each store. A machine learning algorithm is applied based on past reservation data and customer count data for a specific date and time to obtain a prediction result. For example, the following prediction result can be obtained: { "name": "La Pergola", "seating_prediction": "50%"}. This allows you to understand the seating availability of each store on a specific date and time.

[1809] Step 5:

[1810] The server provides the seat availability prediction results and reservation link information. For restaurants that accept online reservations, the server obtains and adds the link information of the reservation site. For example, the following link information is added: { "name": "La Pergola", "booking_link": "https: / / opentable.com / la-pergola-reservation"}. This allows users to make reservations directly through the application.

[1811] Step 6:

[1812] The server obtains the user's current location information and uses an external navigation service (e.g., Google Maps API) to calculate the shortest route to the selected store. The calculation result is provided as navigation information, for example, as follows: { "name": "La Pergola", "navigation_info": "15-minute walk"}. This allows the user to reach their destination efficiently.

[1813] Step 7:

[1814] The device receives the integrated information sent from the server and displays it in an easy-to-read format for the user. Specifically, it not only displays information about each restaurant in a list format, but also integrates all necessary information, such as seating availability predictions, reservation links, and the shortest route. For example, it might be displayed in the following format: [{ "name": "La Pergola", "address": "Via Alberto Cadlolo, 101, 00136 Roma RM, Italy", "seating_prediction": "50%", "booking_link": "https: / / opentable.com / la-pergola-reservation", "navigation_info": "15-minute walk"}]. Based on this information, users can select the best restaurant and smoothly visit and make a reservation.

[1815] 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.

[1816] 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.

[1817] 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 robot 414.

[1818] 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.

[1819] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.

[1820] 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.

[1821] 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).

[1822] 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.

[1823] 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."

[1824] 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.

[1825] 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).

[1826] 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...

Claims

1. an input means for a user to input travel conditions; a generating means for generating store information suitable for a user based on the conditions input by the input means; A prediction means for predicting seat availability based on the generated store information; A means for providing users with predicted seat availability and link information to reservation sites; a route calculation means for calculating the shortest route from the user's current location to the store; a display means for integrating the information obtained by the generating means, the predicting means, the providing means, and the route calculating means and displaying the information to the user; A system including:

2. 2. The system according to claim 1, further comprising store narrowing means for narrowing down a plurality of stores based on area information, food genre, budget, customer demographics, and date and time input by a user.

3. The system according to claim 1 , further comprising a prediction means that uses a machine learning algorithm to predict seat availability based on past reservation data and customer number data for a specific date and time.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A