System
The system addresses the inefficiency of finding holiday activities by analyzing user inputs, searching databases, and generating personalized plans, thereby reducing planning time and ensuring a fulfilling holiday experience.
Patent Information
- Application Number
- JP2024115252
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-18
- Publication Date
- 2026-01-29
AI Technical Summary
Conventional systems fail to suggest optimal holiday activities and spots based on user hobbies and interests, requiring users to spend time searching and planning independently, which is inefficient and often results in mismatched recommendations.
A system that receives user input, analyzes hobbies and interests, searches a database for matching activities and spots, evaluates the degree of matching, and provides a list of optimal holiday plans tailored to the user's preferences.
Significantly reduces the time and effort required to plan a holiday by suggesting activities and spots that align with the user's hobbies and preferences, providing a personalized and fulfilling experience.
Smart Images

Figure 2026014255000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Conventional systems were unable to suggest optimal ways to spend their holidays based on the user's hobbies and interests, and users had to spend time searching for information and making plans themselves. In particular, it is not easy to find activities and spots that suit you from the vast amount of information available, and it takes a lot of time and effort. For this reason, there is a demand for a system that can quickly and easily suggest ways to spend your holidays that suit the user's hobbies and preferences. [Means for solving the problem]
[0005] The present invention provides a system that includes a means for receiving user input information, analyzing the received user information, and extracting hobbies and interests. It also includes a means for searching a database for optimal activities and spots based on the extracted hobbies and interests, and a means for evaluating the degree of matching from the search results. Based on the evaluated degree of matching, a list of optimal activities and spots is generated and provided to the user, providing a system that efficiently suggests ways to spend a holiday that match the user's hobbies and preferences.
[0006] "User Information" refers to information entered by the User, such as hobbies, favorite activities, and places of interest.
[0007] "Analysis" refers to the process of extracting hobbies and interests based on received user information and reconstructing them.
[0008] "Database" refers to a repository of information such as tourist attractions, event information, and activity information.
[0009] "Search" refers to the process of finding items in a database that match the user's hobbies and interests.
[0010] "Matching degree" refers to an evaluation standard that indicates how closely the user's hobbies and interests match the information in the database.
[0011] A "candidate list" refers to a list of the best activities and spots selected based on the user's hobbies and preferences.
[0012] "Providing" refers to the process of presenting the generated candidate list in a form that can be used by the user.
[0013] "System" refers to the entire configuration of devices or software that executes a series of processes to receive, analyze, search, evaluate matches, and generate and provide candidate lists of user information. [Brief explanation of the drawings]
[0014] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0015] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0016] First, the terms used in the following description will be explained.
[0017] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0018] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0019] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0020] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0021] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0022] [First embodiment]
[0023] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0024] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0025] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0026] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0027] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0028] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0029] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0030] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0031] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0032] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0033] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0034] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0035] The present invention relates to a system for proposing optimal ways to spend holidays that match a user's hobbies and preferences. The specific configuration and operation of this system will be described below.
[0036] First, a user launches an application on their device and enters information about their hobbies, favorite activities, points of interest, etc. For example, a user might enter the following information:
[0037] Hobbies: Hiking, visiting cafes, visiting art galleries
[0038] Favorite activities: Nature observation, photography
[0039] Places of interest: parks, museums, markets
[0040] The device receives this user information, converts it into a format such as JSON, and sends it to the server.
[0041] The server analyzes the received user information and extracts important key information (hobbies, favorite activities, places of interest, etc.) The server then queries the database to find relevant tourist attractions, event information, and activity information.
[0042] The server receives the search results and compares them with the user's interests and tastes to calculate the degree of matching. For example, parks where you can hike or places where you can observe nature will be rated as highly matching.
[0043] The server then selects spots and activities that match the best and generates a list of specific plan options, such as observing nature and taking photos in a park, visiting art galleries at a museum, or visiting cafes.
[0044] Finally, the server sends the generated list of options to the device, which displays it to the user in an organized format, including detailed information about each option (location, activities, recommended duration, etc.).
[0045] This system allows users to easily find the perfect holiday plan that suits their tastes and preferences, significantly reducing the time and effort required for planning.
[0046] As a concrete example, if the user is interested in "hiking," "nature watching," and "parks," the server generates the following candidate list:
[0047] 1. Recommended Plan 1: Nature Observation in the Park
[0048] Location: XX Park
[0049] Activities: Nature observation, photography
[0050] Hours: 10:00~12:00
[0051] 2. Recommended Plan 2: Market Tour and Lunch at a Cafe
[0052] Location: XX Market, XX Cafe
[0053] Activities: Shopping, lunch at a cafe
[0054] Hours: 12:00~14:00
[0055] 3. Recommended plan 3: Visiting art galleries at museums
[0056] Location: XX Museum
[0057] Activities: Art gallery visits
[0058] Hours: 14:00~16:00
[0059] Based on this example, users can spend a fulfilling holiday according to their desired activities and spots. Through this series of processes, we provide a system that allows users to easily obtain the optimal plan.
[0060] The processing flow will be explained below.
[0061] Step 1:
[0062] The user launches the application. The user fills in a form with information about their hobbies, favorite activities, and places of interest. For example, the user might enter hobbies such as "hiking," "cafe hopping," and "visiting art galleries."
[0063] Step 2:
[0064] The device converts the entered user information into JSON format, then sends an HTTP POST request to the server, sending the JSON-formatted user information.
[0065] Step 3:
[0066] The server analyzes the received user information. The server analyzes the JSON format data and extracts key information about hobbies and interests. For example, it extracts information such as "hiking," "nature observation," and "parks."
[0067] Step 4:
[0068] The server queries the database, searching for relevant tourist attractions and activities based on the user's hobbies and interests, such as parks and nature viewing spots.
[0069] Step 5:
[0070] The server receives the information retrieved from the database and compares it with the user information to calculate the degree of matching. The server evaluates the degree of matching for each spot and activity. For example, it verifies that Park A allows nature observation and photography.
[0071] Step 6:
[0072] The server generates a list of spots and activities with the highest matching potential based on the evaluation results, including detailed information about each candidate (location, activity content, recommended time, etc.).
[0073] Step 7:
[0074] The server sends the generated candidate list to the terminal as an HTTP response, which the terminal receives.
[0075] Step 8:
[0076] The device analyzes the received list of options and displays it in a user-friendly format, including the title of each option and detailed information (location, activity, time slot, etc.).
[0077] Example 1
[0078] 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."
[0079] In recent years, users have been faced with the challenge of spending a fulfilling holiday, requiring a great deal of time and effort to find the perfect way to spend the day based on their hobbies and preferences. Collecting information using the internet and various devices, then sifting through that information to select the best activities and spots, is particularly tedious. Furthermore, the information obtained often does not perfectly match the user's preferences, making it difficult to plan a fulfilling holiday.
[0080] 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.
[0081] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means for searching a database for optimal activities and spots based on the extracted hobbies and preferences, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, means for providing the generated candidate list to the user, and means for inputting the provided information as prompt sentences into the generative AI model. This allows users to easily find the optimal holiday plan based on their hobbies and preferences, significantly reducing the time and effort required for planning.
[0082] 1. "Means for receiving user input information" refers to functions or devices that receive data entered by a user and convert it into a format that can be processed within the system.
[0083] 2. "Means for analyzing received user input information and extracting the user's hobbies and interests" refers to a function or method for analyzing information input by the user and performing processing to identify the user's hobbies and interests from that information.
[0084] 3. "Means for searching a database for optimal activities and spots based on extracted hobbies and preferences" refers to a function or method for searching a database for related activities and spots based on the user's hobbies and preferences.
[0085] 4. "Means for evaluating the degree of matching from search results and generating a list of suitable candidate activities and spots" refers to a function or method for evaluating search results obtained from a database and selecting from among them the activities and spots that best match the user's interests and preferences.
[0086] 5. "Means for providing the generated candidate list to the user" refers to a function or method for presenting the generated candidate list of activities or spots to the user in a visual or other form.
[0087] 6. "Means for inputting provided information into a generative AI model as a prompt sentence" refers to a function or method for converting information provided by a user into an appropriate prompt sentence format and inputting it into a generative AI model.
[0088] This invention is a system that proposes optimal holiday plans that match the user's tastes and preferences. The specific configuration and operation of this system will be described below.
[0089] First, the user launches the application on their device and enters information about their hobbies, favorite activities, and places of interest, such as "hiking," "cafe hopping," or "visiting museums."
[0090] The terminal uses Python's json library to receive the information entered by the user and convert it to JSON format, then the terminal uses Python's requests library to send an HTTP request to the server with the converted JSON formatted data.
[0091] The server receives the HTTP request and parses the JSON data to get the user information, using the Python json library. The server then extracts important key information from the user information (hobbies, favorite activities, places of interest).
[0092] Based on the extracted key information, the server sends an SQL query to a database (e.g., MySQL) to search for related tourist spots, event information, and activity information. After receiving the search results, the server compares the data with the user's interests and preferences and calculates the degree of match. This comparison is performed using the Python numpy library.
[0093] The server then selects spots and activities with high matching scores and generates a list of specific plan candidates, converts the list into JSON format, and sends it to the device as an HTTP response.
[0094] The device parses the received candidate list and displays it in a user-friendly format using HTML and JavaScript.
[0095] As a concrete example, suppose a user types the following into a terminal application:
[0096] Hobbies: Hiking
[0097] Favorite activity: Observing nature
[0098] Places of interest: Parks
[0099] The device converts this information into JSON format and sends it to the server, which parses it and sends an SQL query to the database like this:
[0100] sql
[0101] SELECT FROM activities WHERE type='hiking' OR type='nature watching' OR location='park';
[0102] Based on the results from the database, the server generates a candidate list like this:
[0103] 1. Recommended Plan 1: Nature Observation in the Park
[0104] Location: XX Park
[0105] Activities: Nature observation, photography
[0106] Hours: 10:00~12:00
[0107] 2. Recommended Plan 2: Market Tour and Lunch at a Cafe
[0108] Location: XX Market, XX Cafe
[0109] Activities: Shopping, lunch at a cafe
[0110] Hours: 12:00~14:00
[0111] 3. Recommended plan 3: Visiting art galleries at museums
[0112] Location: XX Museum
[0113] Activities: Art gallery visits
[0114] Hours: 14:00~16:00
[0115] Finally, the user can view the list of options via their device and choose the plan that best suits them. The generated list of options is then input as a prompt to the generative AI model. For example, the following prompt can be used:
[0116] User Input:
[0117] Hobbies: Hiking
[0118] Favorite activity: Observing nature
[0119] Places of interest: Parks
[0120] Please suggest a holiday plan that suits the above criteria.
[0121] This system allows users to easily find the perfect holiday plan based on their hobbies and preferences, significantly reducing the time and effort required for planning.
[0122] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0123] Step 1:
[0124] The user launches the application on their device and enters information such as hobbies, favorite activities, and places of interest.
[0125] Input: Hobbies, activities, and spot information entered by the user into the device
[0126] Output: User input information stored on the device
[0127] Specifically, the user inputs information such as "hiking," "nature observation," and "park."
[0128] Step 2:
[0129] The terminal receives the entered user information and converts it into JSON format.
[0130] Input: Information entered by the user
[0131] Output: User information converted to JSON format
[0132] Specifically, the device uses Python's json library to convert the data into JSON format.
[0133] Step 3:
[0134] The terminal sends the converted JSON data to the server as an HTTP request.
[0135] Input: User information in JSON format
[0136] Output: HTTP request sent to the server
[0137] Specifically, the device uses Python's requests library to send JSON data to the server.
[0138] Step 4:
[0139] The server receives the HTTP request and parses the JSON data to obtain the user information.
[0140] Input: JSON data sent as an HTTP request
[0141] Output: Parsed user information
[0142] Specifically, the server parses the JSON data using Python's json library.
[0143] Step 5:
[0144] The server extracts important key information from the user information, such as hobbies, favorite activities, and places of interest.
[0145] Input: Parsed user information
[0146] Output: Extracted key information (hobbies, activities, locations)
[0147] Specifically, the server sequentially analyzes the user information and extracts the necessary key information.
[0148] Step 6:
[0149] The server sends an SQL query to the database based on the extracted key information to search for related tourist spots, event information, and activity information.
[0150] Input: Extracted key information
[0151] Output: Search results for tourist attractions, event information, and activity information
[0152] Specifically, the server executes the appropriate SQL queries against the MySQL database.
[0153] Step 7:
[0154] The server compares the received search results with the user's interests and tastes, and calculates the degree of matching for each result.
[0155] Input: Search results received from the database
[0156] Output: The calculated matching score for each result
[0157] Specifically, the server calculates the degree of matching using Python's numpy library.
[0158] Step 8:
[0159] The server picks out spots and activities that are highly likely to match and generates a list of specific plan candidates.
[0160] Input: Search results with calculated matching scores
[0161] Output: Specific plans as a list of candidates
[0162] Specifically, the server selects spots and activities based on certain criteria and creates a candidate list.
[0163] Step 9:
[0164] The server converts the generated candidate list into JSON format and sends it to the terminal as an HTTP response.
[0165] Input: Generated candidate list
[0166] Output: A list of candidates in JSON format sent as an HTTP response.
[0167] Specifically, the server uses Python's json library to convert the candidate list into JSON format and generate an HTTP response.
[0168] Step 10:
[0169] The terminal analyzes the received candidate list and displays it in a format that is easy for the user to view.
[0170] Input: JSON format candidate list received as an HTTP response
[0171] Output: A user-friendly list of suggestions
[0172] Specifically, the device uses HTML and JavaScript to display the contents of the candidate list to the user.
[0173] This series of steps allows users to easily find the perfect holiday plan based on their interests and preferences.
[0174] (Application example 1)
[0175] 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."
[0176] Conventional food delivery systems lacked the functionality to provide delivery options tailored to users' hobbies and interests, and were limited to simply delivering meals. As a result, users were unable to receive comprehensive recommendations for optimal ways of spending time and activities based on their hobbies and preferences, resulting in a decline in convenience and satisfaction.
[0177] 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.
[0178] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means for searching a database for optimal activities, spots, and delivery services based on the extracted hobbies and preferences, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities, spots, and delivery services, and means for providing the generated candidate list to the user. This allows the user to receive an integrated recommendation of activities, spots, and related food delivery services that best match their hobbies and preferences.
[0179] "User input information" is information that indicates the user's hobbies, favorite activities, places of interest, favorite types of cuisine, etc.
[0180] "Analysis" is the process of examining the received user input in detail and extracting important elements and keywords.
[0181] "Hobbies and preferences" refers to a user's specific interests and preferences, especially preferences for activities and places.
[0182] "Database" means a collection of information that systematically stores information about related activities, places, and food delivery services.
[0183] "Search" is the process of finding information within a database that matches the user's interests and preferences.
[0184] "Matching degree" is an index that evaluates the degree of match between a user's hobbies and interests and the activities, spots, and distribution services in the database.
[0185] "Evaluation" is the process of selecting the best candidates for the user based on the information in the search results.
[0186] A "candidate list" is a list of activities, places, and streaming services that best match a user's interests and preferences.
[0187] "Providing" is the act of visually or informationally showing the generated candidate list to the user.
[0188] "Delivery service" refers to the function of providing products and services that users want, such as food delivery.
[0189] The system of this invention aims to enable users to find the best activities, spots, and delivery services using their smartphones or other devices. Users input their hobbies, favorite activities, places of interest, and favorite types of cuisine through a dedicated application.
[0190] The system is structured as follows: First, the user's device receives input information, converts it into a format such as JSON, and sends it to the server. This information includes the user's hobbies, favorite activities, places of interest, and favorite types of cuisine.
[0191] The server analyzes the received user information and extracts important keywords from it. Based on the extracted keywords, it searches a database for related activities, spots, and food delivery services. This information is searched using a query language such as SQL.
[0192] The server, which receives the search results, compares them with the user's interests and tastes and calculates the degree of matching. The degree of matching is an evaluation index for selecting candidates that best match the user's preferences. The server then generates a list of candidates for activities, spots, and streaming services with high matching degrees.
[0193] Once the candidate list is generated, the server provides it to the user's device, which displays it in an organized format and includes detailed information about each activity or spot (such as location, activity content, recommended time, and delivery options).
[0194] For example, if a user inputs that they are interested in "cafe hopping," "espresso," and enjoy "nature watching," the system will generate the following list of suggestions:
[0195] 1. Recommended Plan 1: Nature Observation and Cafe Hopping
[0196] Location: Nearby park
[0197] Activities: Nature watching, photography, and espresso at the park's cafe
[0198] 2. Recommended Plan 2: Espresso Delivery
[0199] Delivery service: Espresso delivery from partner cafes
[0200] Activity: Enjoy espresso at home
[0201] Additionally, the system provides prompts to input to the generative AI model, such as:
[0202] "Please describe a system that suggests the best way to spend a holiday based on a user's hobbies and interests. In particular, please describe the process for suggesting the best plan for a user who is interested in cafe hopping, nature watching, and espresso."
[0203] In this way, users can easily find activities that match their interests and preferences, as well as the best food delivery services, through the system.
[0204] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0205] Step 1:
[0206] When the user's device starts up, the application displays an interface for entering the user's hobbies, favorite activities, places of interest, and favorite types of cuisine. The user enters their information through this interface. The entered information is converted into a standard format such as JSON and sent to the server. The input of this step is the user's hobbies and preferences, and the output is JSON format data.
[0207] Step 2:
[0208] The server parses the JSON data received from the user's device using a JSON parser to extract important information such as the user's hobbies, favorite activities, points of interest, and favorite cuisine. The input of this step is the received JSON data, and the output is the extracted information about the user's hobbies and preferences.
[0209] Step 3:
[0210] The server sends a query to the database based on the extracted user's interests. The query is written in a query language such as SQL, and the database is searched based on the query. The search targets related activities, spots, and food delivery services. The input of this step is the extracted user information and the query, and the output is related information retrieved from the database.
[0211] Step 4:
[0212] The server calculates the degree of matching between the user's interests and preferences based on the information retrieved from the database. This calculation uses a quantitative algorithm to evaluate the degree of matching between each activity, spot, and food delivery service. The input of this step is the information retrieved from the database, and the output is the degree of matching between each option.
[0213] Step 5:
[0214] The server generates a candidate list from activities, spots, and food delivery services with high matching scores. The generated candidate list includes detailed information about each activity and spot, such as location, activity content, recommended time, and delivery options. The input of this step is the result of the matching score calculation, and the output is the candidate list.
[0215] Step 6:
[0216] The server sends the generated candidate list to the user's device. The user's device displays the received candidate list in an easy-to-read format. The display format can be a list format or a popup with detailed information. The input of this step is the candidate list, and the output is the visual display information provided to the user.
[0217] Step 7:
[0218] The user selects the best activities, places to visit, and food delivery options based on the provided list of options. The user's selection is fed back to the server through the application and used for future suggestions. The input of this step is the user's selected options, and the output is the feedback data.
[0219] 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.
[0220] This invention combines an emotion engine with a system that proposes optimal holiday plans based on the user's hobbies and preferences. The specific configuration and operation of this system will be described below.
[0221] First, a user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The emotion engine then recognizes the user's current emotional state. For example, if a user inputs hobbies such as "hiking," "cafe-hopping," and "visiting art galleries," the emotion engine may recognize the user's emotions as "excited," "relaxed," or "curious."
[0222] The device receives this user information and emotion information, converts it into a format such as JSON, and sends it to the server.
[0223] The server analyzes the received user information and emotional information. It extracts key information about the user's hobbies and interests (e.g., "hiking," "nature observation," "parks") and takes into account the user's current emotions based on the emotional state recognized by the emotion engine. For example, if the user wants to relax, it will suggest plans for a quiet park or museum, while if the user is excited, it will suggest plans for an active hike or sports.
[0224] The server sends queries to the database to search for relevant tourist attractions and activity information. After receiving the search results, the server compares the data with the user's hobbies, interests, and emotional state to calculate the degree of matching. For example, if the server determines using the emotion engine data that the user is currently seeking relaxation, it will rate relaxing activities as a high match.
[0225] Next, the server generates a list of spots and activities with the highest matching score based on the evaluation results, along with detailed information about each candidate (location, activity content, recommended time, etc.).
[0226] Finally, the server sends the generated candidate list to the device via an HTTP response. The device receives this response, parses it, and displays it in a user-friendly format. The candidate list includes the title of each plan and detailed information (location, activity content, time slot, etc.).
[0227] This system allows users to easily find the perfect holiday plan based on their preferences and current emotional state, significantly reducing the time and effort required for planning.
[0228] As a concrete example, if the user is interested in "hiking," "nature observation," and "parks," and is currently feeling like relaxing, the server will generate the following candidate list:
[0229] 1. Recommended Plan 1: Relax in the Park
[0230] Location: Quiet Park A
[0231] Activities: Nature observation, relaxing walks
[0232] Hours: 10:00~12:00
[0233] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[0234] Location: Market B, Cafe C
[0235] Activities: Shopping, relaxing lunch at a cafe
[0236] Hours: 12:00~14:00
[0237] 3. Recommended plan 3: Visiting art galleries at museums
[0238] Location: Museum D
[0239] Activities: Quiet viewing of art galleries
[0240] Hours: 14:00~16:00
[0241] Based on this example, users can get a relaxing holiday plan that matches their emotional state, providing a more fulfilling and mentally satisfying way to spend their holidays.
[0242] The processing flow will be explained below.
[0243] Step 1:
[0244] The user launches the application. The user enters information about their hobbies, favorite activities, and places of interest into an input form. For example, the user enters hobbies such as "hiking," "cafe hopping," and "visiting art galleries."
[0245] Step 2:
[0246] The emotion engine recognizes the user's current emotional state in real time, for example by analyzing the user's facial expressions and voice to identify emotions such as "relaxed" or "excited."
[0247] Step 3:
[0248] The device converts the input user information and recognized emotion information into JSON format, and then sends this JSON data to the server via an HTTP POST request.
[0249] Step 4:
[0250] The server analyzes the received user information and emotional information. The server parses the JSON format data, extracts key information about hobbies and interests (e.g., "hiking," "nature observation," "parks," etc.), and also takes into account the emotional state recognized by the emotion engine.
[0251] Step 5:
[0252] The server queries the database to find relevant tourist spots and activities. The server retrieves specific spots and activities based on the user's interests and emotional state. For example, "Park A," "Museum B," etc.
[0253] Step 6:
[0254] The server compares the information retrieved from the database with the user's information and calculates the degree of matching. The server uses data from the emotion engine to make an evaluation that reflects the user's current emotional state. For example, a user seeking a relaxing experience might be rated as highly matching a "quiet park."
[0255] Step 7:
[0256] Based on the evaluation results, the server generates a list of spots and activities with the highest matching potential. The server then compiles the list of candidates and detailed information about each activity into an easy-to-read list. For example, "nature observation and photography in a park" or "visiting an art gallery at a museum."
[0257] Step 8:
[0258] The server sends the generated candidate list to the terminal as an HTTP response, and the terminal receives and analyzes the response.
[0259] Step 9:
[0260] The device receives a list of options and displays it in an easy-to-read format for the user. The list includes the title of each plan and detailed information (location, activity content, recommended time, etc.). For example, "Nature observation and relaxation at Park A," or "Shopping and lunch at Market B and Cafe C."
[0261] Through the above process, the user can quickly and easily find holiday plans that best suit their tastes and current emotional state.
[0262] Example 2
[0263] 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."
[0264] Conventional systems provide activity suggestions based on a user's hobbies and preferences, but are unable to provide optimal suggestions that take into account the user's current emotional state. Furthermore, planning requires a significant amount of time and effort, placing a significant burden on users. Furthermore, the limited number of plan options offered results in insufficient user satisfaction.
[0265] 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.
[0266] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and emotional state and extracting the user's hobbies, preferences, and emotional state, means for searching a database for optimal activities and spots based on the extracted hobbies, preferences, and emotional state, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, and means for providing the generated candidate list to the user. This allows the server to propose optimal holiday plans based on the user's hobbies, preferences, and current emotional state, thereby reducing the time and effort required for planning.
[0267] "User" means an individual who uses the System to find activities and travel plans.
[0268] "Input information" refers to information such as hobbies, interests, and current emotional state that a user provides to the system.
[0269] "Emotional state" refers to the psychological state the user is feeling, and includes information such as "I want to relax" or "I'm excited."
[0270] "Hobbies and tastes" refers to the activities and interests that users prefer.
[0271] "Activity" refers to a specific action or event suggested to a User through the System.
[0272] "Spots" refer to specific locations or tourist attractions suggested to users.
[0273] "Search means" refers to an algorithm or program that searches a database for relevant activities and spots based on the user's interests, tastes and emotional state.
[0274] "Matching degree" refers to an index that evaluates the degree of compatibility with the user's hobbies and emotional state.
[0275] "Candidate List" refers to a list of optimal activities and spots generated by the server to provide to the user.
[0276] This invention is a system that proposes optimal holiday plans based on a user's hobbies, preferences, and current emotional state. The system consists of a terminal that receives and analyzes user input information, and a server that searches, evaluates, and provides activities and spots based on the analysis results.
[0277] User information input and data submission
[0278] First, the user launches the application on a device such as a smartphone or PC and inputs information such as hobbies, favorite activities, and places of interest, as well as their current emotional state. For example, the user inputs hobby information such as "hiking," "cafe hopping," and "visiting art galleries," and emotional information such as "I want to relax."
[0279] The device receives this input information, converts it into a format such as JSON, and sends it to the server. For example, data like "{ 'Hobbies': ['Hiking', 'Café Hopping', 'Art Gallery Visiting'], 'Emotions': 'Relaxing'}" is generated.
[0280] Data analysis and search on the server
[0281] The server receives the data sent from the device and analyzes the user's hobbies, interests, and emotional state. During the analysis, key information such as "hiking," "nature observation," and "park" is extracted, and the user's emotional state (e.g., "relaxation") is also taken into account.
[0282] The server then queries the database for relevant tourist attractions and activities, returning information such as "quiet parks," "markets," and "museums."
[0283] Calculating matching scores and generating candidate lists
[0284] The server compares the received data with the user's hobbies, interests, and emotional state, and calculates the degree of matching using the emotion engine data. For example, if it is determined that the user is "seeking relaxation," activities such as quiet parks and museums will be rated highly as a match.
[0285] Based on the evaluation results, a list of spots and activities with the highest matching score is generated. The generated list of candidates includes detailed information about each candidate (location, content, recommended time, etc.). Examples of plans include:
[0286] 1. Recommended Plan 1: Relax in the Park
[0287] Location: Quiet park
[0288] Activities: Nature observation, relaxing walks
[0289] Hours: 10:00~12:00
[0290] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[0291] Location: Market, Cafe
[0292] Activities: Shopping, relaxing lunch at a cafe
[0293] Hours: 12:00~14:00
[0294] 3. Recommended plan 3: Visiting art galleries at museums
[0295] Location: Museum
[0296] Activities: Quiet viewing of art galleries
[0297] Hours: 14:00~16:00
[0298] Providing a candidate list
[0299] Finally, the server sends the generated candidate list to the device via an HTTP response. The device receives this response, parses it, and displays it in a format that is easy for the user to view. The user can view the title and detailed information of each plan (location, activity content, time slot, etc.) through the application.
[0300] Prompt Sentence Examples
[0301] "I'm in the mood to relax and I'm interested in hiking and nature observation. Please suggest some recommended activity plans for me right now."
[0302] This system allows users to easily find the perfect holiday plan based on their preferences and current emotional state, significantly reducing the time and effort required for planning.
[0303] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0304] Step 1:
[0305] A user launches an application on a device and inputs their hobbies, favorite activities, points of interest, and current emotional state.
[0306] Input: Hobbies (e.g., "Hiking," "Café Hopping," "Visiting Art Galleries"), Emotional State (e.g., "I Want to Relax")
[0307] Output: Input screen displayed on the terminal
[0308] Step 2:
[0309] The terminal receives the user's input information and converts it into JSON format.
[0310] Input: User-entered information about hobbies and emotional states
[0311] Data processing: Converting to JSON format (e.g., "{ 'Hobbies': ['Hiking', 'Café hopping', 'Visiting art galleries'], 'Emotions': 'Relaxing'}")
[0312] Output: JSON data
[0313] Step 3:
[0314] The device sends the generated JSON data to the server.
[0315] Input: JSON data
[0316] Data calculation: Data transmission processing
[0317] Output: User input sent to the server
[0318] Step 4:
[0319] The server analyzes the JSON data received from the device and extracts the user's hobbies, interests, and emotional state.
[0320] Input: Received JSON data
[0321] Data calculation: JSON data analysis (extracting interests and emotional states)
[0322] Output: Extracted hobby and emotion information (e.g., "Hobbies: hiking, nature observation, parks; Emotion: relaxing")
[0323] Step 5:
[0324] The server uses the extracted information to send queries to a database to search for related activities and spots.
[0325] Input: Extracted hobbies and emotions
[0326] Data calculation: Generate and submit a database search query (e.g., "SELECT FROM Spots WHERE Hobbies IN ('Hiking', 'Nature Observation', 'Parks')").
[0327] Output: Spot and activity information returned from the database
[0328] Step 6:
[0329] The server compares the received data with the user's hobbies, interests, and emotional state to calculate the degree of matching.
[0330] Input: Spot and activity information received from the database
[0331] Data calculation: Calculation of matching degree (e.g., "Evaluate the compatibility between users seeking relaxation and each spot")
[0332] Output: Matching evaluation result
[0333] Step 7:
[0334] Based on the evaluation results, the server generates a list of candidate spots and activities with the highest matching potential.
[0335] Input: Matching evaluation result
[0336] Data processing: generating candidate lists (e.g., "creating a list of the best activities and spots")
[0337] Output: A list of suggestions (e.g., "Relaxing in the park, having lunch at a quiet cafe, and looking at art at a museum")
[0338] Step 8:
[0339] The server sends the generated candidate list to the terminal as an HTTP response.
[0340] Input: Suggestion list
[0341] Data operations: generating and sending HTTP responses
[0342] Output: Candidate list sent to terminal
[0343] Step 9:
[0344] The terminal receives the response, analyzes it, and displays it in a user-friendly format.
[0345] Input: Candidate list received from the server
[0346] Data processing: Parsing the response and converting it to a display format
[0347] Output: A list of options to be displayed to the user (e.g., "Plan 1: Relax in the park, Plan 2: Lunch at a cafe, Plan 3: View art at a museum")
[0348] (Application example 2)
[0349] 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."
[0350] Conventional systems primarily suggest activities and spots based on a user's hobbies and preferences, but do not take into account the user's current emotional state. As a result, appropriate suggestions that match the user's current mood and emotions are not provided, leading to a decrease in satisfaction. Furthermore, there is a demand for systems that not only suggest activities and spots but also recommend related products and services at the same time. However, no systems exist that can provide these comprehensive services. The present invention aims to solve these problems and provide a system that suggests optimal activities and spots based on a user's hobbies, preferences, and emotional state, and recommends related products and services.
[0351] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means including an emotion engine for analyzing the user's current emotional state, means for searching a database for optimal activities and spots based on the extracted hobbies and preferences and the analyzed emotional state, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, means for providing the generated candidate list to the user, and means for recommending products and services based on the candidate list. This makes it possible to not only suggest activities and spots that are suited to the user's hobbies, preferences, and emotional state, but also to simultaneously recommend related products and services.
[0352] "User input information" refers to information such as hobbies, favorite activities, and places of interest that a user provides to the system.
[0353] "Hobbies and tastes" refers to the tendencies and characteristics of activities, places, themes, etc. that a user is interested in.
[0354] An "emotion engine" is a technology that analyzes a user's current emotional state and acquires that emotional information.
[0355] A "database" is an information management system that stores information on activities, spots, and related products and services.
[0356] "Matching degree" is an index that evaluates how well the suggested activities and spots match the user's hobbies, tastes, and emotional state.
[0357] A "candidate list" is a list that compiles detailed information about the most suitable activities and spots from the search results.
[0358] "Product and service recommendation" refers to suggesting related products and services based on a user's tastes, preferences and emotional state.
[0359] The present invention relates to a system that suggests optimal activities and spots based on a user's hobbies, preferences, and current emotional state, and also recommends related products and services.
[0360] The process begins when a user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The device receives this user information, and the emotion engine recognizes the user's current emotional state. For example, if a user inputs hobbies such as "hiking," "cafe hopping," and "visiting art galleries," the emotion engine may recognize the user's emotions as "excited," "relaxed," or "curious."
[0361] The device receives this user information and emotion information, converts it into a format such as JSON, and sends it to the server. The server then analyzes the received user information and emotion information. It extracts key information related to the user's hobbies and interests (e.g., "hiking," "nature observation," "parks") and takes into account the user's current emotions based on the emotional state recognized by the emotion engine. For example, if the user wants to relax, plans for a quiet park or museum will be suggested, while if the user is excited, plans for an active hike or sports will be suggested.
[0362] The server then queries the database to find relevant tourist attractions and activities. After receiving the search results, the server compares them with the user's hobbies, interests, and emotional state to calculate the degree of matching. Furthermore, if the server determines that the user is currently seeking relaxation using the emotion engine data, it will rate relaxing activities as a high match.
[0363] The server then generates a list of spots and activities with the highest matching potential based on the evaluation results. This list also includes detailed information about each candidate (location, activity content, recommended time, etc.). Finally, the server sends the generated candidate list to the device as an HTTP response. The device receives this response, analyzes it, and displays it in a format that is easy for the user to view.
[0364] As a concrete example, if the user is interested in "hiking," "nature observation," and "parks," and is currently feeling like relaxing, the server can generate the following candidate list:
[0365] 1. Recommended Plan 1: Relax in the Park
[0366] Location: Quiet park
[0367] Activities: Nature observation, relaxing walks
[0368] Recommended time: 10:00~12:00
[0369] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[0370] Location: Market, Cafe
[0371] Activities: Shopping, relaxing lunch at a cafe
[0372] Recommended time: 12:00~14:00
[0373] 3. Recommended plan 3: Visiting art galleries at museums
[0374] Location: Museum
[0375] Activities: Art gallery visits
[0376] Recommended time: 14:00~16:00
[0377] Additionally, recommendations for related products and services are provided, such as aroma oils, yoga mats, and relaxation music for users who want to relax.
[0378] An example of a prompt to input to a generative AI model is, "Based on the user's emotional state, suggest products and activities that will help them relax."
[0379] The hardware required includes a user device such as a smartphone or smart glasses, a server, and an emotion analysis engine. The software includes an algorithm for matching analysis results with a database and an API for processing HTTP responses.
[0380] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0381] Step 1:
[0382] A user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The input information is received by the device as the user's hobbies and preferences. In this example, we assume the user inputs information such as "hiking," "cafe hopping," and "visiting art galleries." The input data is saved in text format and used for subsequent analysis.
[0383] Step 2:
[0384] The device analyzes the received user input information and uses an emotion engine to recognize the user's current emotional state. For example, the emotion engine analyzes emotional states such as "excitement," "relaxation," and "curiosity." The input data is categorized into hobbies, preferences, and emotional states and converted into a format such as JSON.
[0385] Step 3:
[0386] The device converts the analyzed user information and emotion information into JSON format and sends it to the server. The server receives this JSON data and temporarily stores it as data for processing. The input data is compared with the user database to extract the necessary information.
[0387] Step 4:
[0388] The server analyzes the received user's hobby and preference information and emotional state, and searches a database for the most suitable activities and spots. Based on the user's interests and current emotional state, the server searches for quiet spots for users who want to relax, and active spots for users who are excited. The server uses user information in JSON format as input data and retrieves relevant information through database queries.
[0389] Step 5:
[0390] The server evaluates the degree of matching from the search results and generates a list of candidate activities and spots that best suit the user's interests, tastes, and emotional state. Using spot information retrieved from the database and the user's interests, tastes, and emotional state as input, the algorithm calculates the degree of matching. The generated list includes detailed information (location, activity content, recommended time, etc.).
[0391] Step 6:
[0392] The server sends the generated candidate list to the terminal as an HTTP response. The terminal receives this response, parses it into a user-friendly format, and displays it. The input data is the generated candidate list, and a user-friendly list is created as the output.
[0393] Step 7:
[0394] The device then recommends related products and services based on the candidate list. In this process, aroma oils and yoga mats are recommended to users seeking relaxation. The input data is the generated candidate list, and the output is a list of recommended products and services.
[0395] As a concrete example, a prompt sentence to be input to the generative AI model would be, "Based on the user's emotional state, suggest products and activities that will help them relax."
[0396] 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.
[0397] 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.
[0398] 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.
[0399] [Second embodiment]
[0400] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0401] 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.
[0402] 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).
[0403] 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.
[0404] 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.
[0405] 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).
[0406] 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.
[0407] 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.
[0408] 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.
[0409] 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.
[0410] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0411] 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."
[0412] The present invention relates to a system for proposing optimal ways to spend holidays that match a user's hobbies and preferences. The specific configuration and operation of this system will be described below.
[0413] First, a user launches an application on their device and enters information about their hobbies, favorite activities, points of interest, etc. For example, a user might enter the following information:
[0414] Hobbies: Hiking, visiting cafes, visiting art galleries
[0415] Favorite activities: Nature observation, photography
[0416] Places of interest: parks, museums, markets
[0417] The device receives this user information, converts it into a format such as JSON, and sends it to the server.
[0418] The server analyzes the received user information and extracts important key information (hobbies, favorite activities, places of interest, etc.) The server then queries the database to find relevant tourist attractions, event information, and activity information.
[0419] The server receives the search results and compares them with the user's interests and tastes to calculate the degree of matching. For example, parks where you can hike or places where you can observe nature will be rated as highly matching.
[0420] The server then selects spots and activities that match the best and generates a list of specific plan options, such as observing nature and taking photos in a park, visiting art galleries at a museum, or visiting cafes.
[0421] Finally, the server sends the generated list of options to the device, which displays it to the user in an organized format, including detailed information about each option (location, activities, recommended duration, etc.).
[0422] This system allows users to easily find the perfect holiday plan that suits their tastes and preferences, significantly reducing the time and effort required for planning.
[0423] As a concrete example, if the user is interested in "hiking," "nature watching," and "parks," the server generates the following candidate list:
[0424] 1. Recommended Plan 1: Nature Observation in the Park
[0425] Location: XX Park
[0426] Activities: Nature observation, photography
[0427] Hours: 10:00~12:00
[0428] 2. Recommended Plan 2: Market Tour and Lunch at a Cafe
[0429] Location: XX Market, XX Cafe
[0430] Activities: Shopping, lunch at a cafe
[0431] Hours: 12:00~14:00
[0432] 3. Recommended plan 3: Visiting art galleries at museums
[0433] Location: XX Museum
[0434] Activities: Art gallery visits
[0435] Hours: 14:00~16:00
[0436] Based on this example, users can spend a fulfilling holiday according to their desired activities and spots. Through this series of processes, we provide a system that allows users to easily obtain the optimal plan.
[0437] The processing flow will be explained below.
[0438] Step 1:
[0439] The user launches the application. The user fills in a form with information about their hobbies, favorite activities, and places of interest. For example, the user might enter hobbies such as "hiking," "cafe hopping," and "visiting art galleries."
[0440] Step 2:
[0441] The device converts the entered user information into JSON format, then sends an HTTP POST request to the server, sending the JSON-formatted user information.
[0442] Step 3:
[0443] The server analyzes the received user information. The server analyzes the JSON format data and extracts key information about hobbies and interests. For example, it extracts information such as "hiking," "nature observation," and "parks."
[0444] Step 4:
[0445] The server queries the database, searching for relevant tourist attractions and activities based on the user's hobbies and interests, such as parks and nature viewing spots.
[0446] Step 5:
[0447] The server receives the information retrieved from the database and compares it with the user information to calculate the degree of matching. The server evaluates the degree of matching for each spot and activity. For example, it verifies that Park A allows nature observation and photography.
[0448] Step 6:
[0449] The server generates a list of spots and activities with the highest matching potential based on the evaluation results, including detailed information about each candidate (location, activity content, recommended time, etc.).
[0450] Step 7:
[0451] The server sends the generated candidate list to the terminal as an HTTP response, which the terminal receives.
[0452] Step 8:
[0453] The device analyzes the received list of options and displays it in a user-friendly format, including the title of each option and detailed information (location, activity, time slot, etc.).
[0454] Example 1
[0455] 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."
[0456] In recent years, users have been faced with the challenge of spending a fulfilling holiday, requiring a great deal of time and effort to find the perfect way to spend the day based on their hobbies and preferences. Collecting information using the internet and various devices, then sifting through that information to select the best activities and spots, is particularly tedious. Furthermore, the information obtained often does not perfectly match the user's preferences, making it difficult to plan a fulfilling holiday.
[0457] 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.
[0458] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means for searching a database for optimal activities and spots based on the extracted hobbies and preferences, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, means for providing the generated candidate list to the user, and means for inputting the provided information as prompt sentences into the generative AI model. This allows users to easily find the optimal holiday plan based on their hobbies and preferences, significantly reducing the time and effort required for planning.
[0459] 1. "Means for receiving user input information" refers to functions or devices that receive data entered by a user and convert it into a format that can be processed within the system.
[0460] 2. "Means for analyzing received user input information and extracting the user's hobbies and interests" refers to a function or method for analyzing information input by the user and performing processing to identify the user's hobbies and interests from that information.
[0461] 3. "Means for searching a database for optimal activities and spots based on extracted hobbies and preferences" refers to a function or method for searching a database for related activities and spots based on the user's hobbies and preferences.
[0462] 4. "Means for evaluating the degree of matching from search results and generating a list of suitable candidate activities and spots" refers to a function or method for evaluating search results obtained from a database and selecting from among them the activities and spots that best match the user's interests and preferences.
[0463] 5. "Means for providing the generated candidate list to the user" refers to a function or method for presenting the generated candidate list of activities or spots to the user in a visual or other form.
[0464] 6. "Means for inputting provided information into a generative AI model as a prompt sentence" refers to a function or method for converting information provided by a user into an appropriate prompt sentence format and inputting it into a generative AI model.
[0465] This invention is a system that proposes optimal holiday plans that match the user's tastes and preferences. The specific configuration and operation of this system will be described below.
[0466] First, the user launches the application on their device and enters information about their hobbies, favorite activities, and places of interest, such as "hiking," "cafe hopping," or "visiting museums."
[0467] The terminal uses Python's json library to receive the information entered by the user and convert it to JSON format, then the terminal uses Python's requests library to send an HTTP request to the server with the converted JSON formatted data.
[0468] The server receives the HTTP request and parses the JSON data to get the user information, using the Python json library. The server then extracts important key information from the user information (hobbies, favorite activities, places of interest).
[0469] Based on the extracted key information, the server sends an SQL query to a database (e.g., MySQL) to search for related tourist spots, event information, and activity information. After receiving the search results, the server compares the data with the user's interests and preferences and calculates the degree of match. This comparison is performed using the Python numpy library.
[0470] The server then selects spots and activities with high matching scores and generates a list of specific plan candidates, converts the list into JSON format, and sends it to the device as an HTTP response.
[0471] The device parses the received candidate list and displays it in a user-friendly format using HTML and JavaScript.
[0472] As a concrete example, suppose a user types the following into a terminal application:
[0473] Hobbies: Hiking
[0474] Favorite activity: Observing nature
[0475] Places of interest: Parks
[0476] The device converts this information into JSON format and sends it to the server, which parses it and sends an SQL query to the database like this:
[0477] sql
[0478] SELECT FROM activities WHERE type='hiking' OR type='nature watching' OR location='park';
[0479] Based on the results from the database, the server generates a candidate list like this:
[0480] 1. Recommended Plan 1: Nature Observation in the Park
[0481] Location: XX Park
[0482] Activities: Nature observation, photography
[0483] Hours: 10:00~12:00
[0484] 2. Recommended Plan 2: Market Tour and Lunch at a Cafe
[0485] Location: XX Market, XX Cafe
[0486] Activities: Shopping, lunch at a cafe
[0487] Hours: 12:00~14:00
[0488] 3. Recommended plan 3: Visiting art galleries at museums
[0489] Location: XX Museum
[0490] Activities: Art gallery visits
[0491] Hours: 14:00~16:00
[0492] Finally, the user can view the list of options via their device and choose the plan that best suits them. The generated list of options is then input as a prompt to the generative AI model. For example, the following prompt can be used:
[0493] User Input:
[0494] Hobbies: Hiking
[0495] Favorite activity: Observing nature
[0496] Places of interest: Parks
[0497] Please suggest a holiday plan that suits the above criteria.
[0498] This system allows users to easily find the perfect holiday plan based on their hobbies and preferences, significantly reducing the time and effort required for planning.
[0499] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0500] Step 1:
[0501] The user launches the application on their device and enters information such as hobbies, favorite activities, and places of interest.
[0502] Input: Hobbies, activities, and spot information entered by the user into the device
[0503] Output: User input information stored on the device
[0504] Specifically, the user inputs information such as "hiking," "nature observation," and "park."
[0505] Step 2:
[0506] The terminal receives the entered user information and converts it into JSON format.
[0507] Input: Information entered by the user
[0508] Output: User information converted to JSON format
[0509] Specifically, the device uses Python's json library to convert the data into JSON format.
[0510] Step 3:
[0511] The terminal sends the converted JSON data to the server as an HTTP request.
[0512] Input: User information in JSON format
[0513] Output: HTTP request sent to the server
[0514] Specifically, the device uses Python's requests library to send JSON data to the server.
[0515] Step 4:
[0516] The server receives the HTTP request and parses the JSON data to obtain the user information.
[0517] Input: JSON data sent as an HTTP request
[0518] Output: Parsed user information
[0519] Specifically, the server parses the JSON data using Python's json library.
[0520] Step 5:
[0521] The server extracts important key information from the user information, such as hobbies, favorite activities, and places of interest.
[0522] Input: Parsed user information
[0523] Output: Extracted key information (hobbies, activities, locations)
[0524] Specifically, the server sequentially analyzes the user information and extracts the necessary key information.
[0525] Step 6:
[0526] The server sends an SQL query to the database based on the extracted key information to search for related tourist spots, event information, and activity information.
[0527] Input: Extracted key information
[0528] Output: Search results for tourist attractions, event information, and activity information
[0529] Specifically, the server executes the appropriate SQL queries against the MySQL database.
[0530] Step 7:
[0531] The server compares the received search results with the user's interests and tastes, and calculates the degree of matching for each result.
[0532] Input: Search results received from the database
[0533] Output: The calculated matching score for each result
[0534] Specifically, the server calculates the degree of matching using Python's numpy library.
[0535] Step 8:
[0536] The server picks out spots and activities that are highly likely to match and generates a list of specific plan candidates.
[0537] Input: Search results with calculated matching scores
[0538] Output: Specific plans as a list of candidates
[0539] Specifically, the server selects spots and activities based on certain criteria and creates a candidate list.
[0540] Step 9:
[0541] The server converts the generated candidate list into JSON format and sends it to the terminal as an HTTP response.
[0542] Input: Generated candidate list
[0543] Output: A list of candidates in JSON format sent as an HTTP response.
[0544] Specifically, the server uses Python's json library to convert the candidate list into JSON format and generate an HTTP response.
[0545] Step 10:
[0546] The terminal analyzes the received candidate list and displays it in a format that is easy for the user to view.
[0547] Input: JSON format candidate list received as an HTTP response
[0548] Output: A user-friendly list of suggestions
[0549] Specifically, the device uses HTML and JavaScript to display the contents of the candidate list to the user.
[0550] This series of steps allows users to easily find the perfect holiday plan based on their interests and preferences.
[0551] (Application example 1)
[0552] 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."
[0553] Conventional food delivery systems lacked the functionality to provide delivery options tailored to users' hobbies and interests, and were limited to simply delivering meals. As a result, users were unable to receive comprehensive recommendations for optimal ways of spending time and activities based on their hobbies and preferences, resulting in a decline in convenience and satisfaction.
[0554] 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.
[0555] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means for searching a database for optimal activities, spots, and delivery services based on the extracted hobbies and preferences, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities, spots, and delivery services, and means for providing the generated candidate list to the user. This allows the user to receive an integrated recommendation of activities, spots, and related food delivery services that best match their hobbies and preferences.
[0556] "User input information" is information that indicates the user's hobbies, favorite activities, places of interest, favorite types of cuisine, etc.
[0557] "Analysis" is the process of examining the received user input in detail and extracting important elements and keywords.
[0558] "Hobbies and preferences" refers to a user's specific interests and preferences, especially preferences for activities and places.
[0559] "Database" means a collection of information that systematically stores information about related activities, places, and food delivery services.
[0560] "Search" is the process of finding information within a database that matches the user's interests and preferences.
[0561] "Matching degree" is an index that evaluates the degree of match between a user's hobbies and interests and the activities, spots, and distribution services in the database.
[0562] "Evaluation" is the process of selecting the best candidates for the user based on the information in the search results.
[0563] A "candidate list" is a list of activities, places, and streaming services that best match a user's interests and preferences.
[0564] "Providing" is the act of visually or informationally showing the generated candidate list to the user.
[0565] "Delivery service" refers to the function of providing products and services that users want, such as food delivery.
[0566] The system of this invention aims to enable users to find the best activities, spots, and delivery services using their smartphones or other devices. Users input their hobbies, favorite activities, places of interest, and favorite types of cuisine through a dedicated application.
[0567] The system is structured as follows: First, the user's device receives input information, converts it into a format such as JSON, and sends it to the server. This information includes the user's hobbies, favorite activities, places of interest, and favorite types of cuisine.
[0568] The server analyzes the received user information and extracts important keywords from it. Based on the extracted keywords, it searches a database for related activities, spots, and food delivery services. This information is searched using a query language such as SQL.
[0569] The server, which receives the search results, compares them with the user's interests and tastes and calculates the degree of matching. The degree of matching is an evaluation index for selecting candidates that best match the user's preferences. The server then generates a list of candidates for activities, spots, and streaming services with high matching degrees.
[0570] Once the candidate list is generated, the server provides it to the user's device, which displays it in an organized format and includes detailed information about each activity or spot (such as location, activity content, recommended time, and delivery options).
[0571] For example, if a user inputs that they are interested in "cafe hopping," "espresso," and enjoy "nature watching," the system will generate the following list of suggestions:
[0572] 1. Recommended Plan 1: Nature Observation and Cafe Hopping
[0573] Location: Nearby park
[0574] Activities: Nature watching, photography, and espresso at the park's cafe
[0575] 2. Recommended Plan 2: Espresso Delivery
[0576] Delivery service: Espresso delivery from partner cafes
[0577] Activity: Enjoy espresso at home
[0578] Additionally, the system provides prompts to input to the generative AI model, such as:
[0579] "Please describe a system that suggests the best way to spend a holiday based on a user's hobbies and interests. In particular, please describe the process for suggesting the best plan for a user who is interested in cafe hopping, nature watching, and espresso."
[0580] In this way, users can easily find activities that match their interests and preferences, as well as the best food delivery services, through the system.
[0581] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0582] Step 1:
[0583] When the user's device starts up, the application displays an interface for entering the user's hobbies, favorite activities, places of interest, and favorite types of cuisine. The user enters their information through this interface. The entered information is converted into a standard format such as JSON and sent to the server. The input of this step is the user's hobbies and preferences, and the output is JSON format data.
[0584] Step 2:
[0585] The server parses the JSON data received from the user's device using a JSON parser to extract important information such as the user's hobbies, favorite activities, points of interest, and favorite cuisine. The input of this step is the received JSON data, and the output is the extracted information about the user's hobbies and preferences.
[0586] Step 3:
[0587] The server sends a query to the database based on the extracted user's interests. The query is written in a query language such as SQL, and the database is searched based on the query. The search targets related activities, spots, and food delivery services. The input of this step is the extracted user information and the query, and the output is related information retrieved from the database.
[0588] Step 4:
[0589] The server calculates the degree of matching between the user's interests and preferences based on the information retrieved from the database. This calculation uses a quantitative algorithm to evaluate the degree of matching between each activity, spot, and food delivery service. The input of this step is the information retrieved from the database, and the output is the degree of matching between each option.
[0590] Step 5:
[0591] The server generates a candidate list from activities, spots, and food delivery services with high matching scores. The generated candidate list includes detailed information about each activity and spot, such as location, activity content, recommended time, and delivery options. The input of this step is the result of the matching score calculation, and the output is the candidate list.
[0592] Step 6:
[0593] The server sends the generated candidate list to the user's device. The user's device displays the received candidate list in an easy-to-read format. The display format can be a list format or a popup with detailed information. The input of this step is the candidate list, and the output is the visual display information provided to the user.
[0594] Step 7:
[0595] The user selects the best activities, places to visit, and food delivery options based on the provided list of options. The user's selection is fed back to the server through the application and used for future suggestions. The input of this step is the user's selected options, and the output is the feedback data.
[0596] 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.
[0597] This invention combines an emotion engine with a system that proposes optimal holiday plans based on the user's hobbies and preferences. The specific configuration and operation of this system will be described below.
[0598] First, a user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The emotion engine then recognizes the user's current emotional state. For example, if a user inputs hobbies such as "hiking," "cafe-hopping," and "visiting art galleries," the emotion engine may recognize the user's emotions as "excited," "relaxed," or "curious."
[0599] The device receives this user information and emotion information, converts it into a format such as JSON, and sends it to the server.
[0600] The server analyzes the received user information and emotional information. It extracts key information about the user's hobbies and interests (e.g., "hiking," "nature observation," "parks") and takes into account the user's current emotions based on the emotional state recognized by the emotion engine. For example, if the user wants to relax, it will suggest plans for a quiet park or museum, while if the user is excited, it will suggest plans for an active hike or sports.
[0601] The server sends queries to the database to search for relevant tourist attractions and activity information. After receiving the search results, the server compares the data with the user's hobbies, interests, and emotional state to calculate the degree of matching. For example, if the server determines using the emotion engine data that the user is currently seeking relaxation, it will rate relaxing activities as a high match.
[0602] Next, the server generates a list of spots and activities with the highest matching score based on the evaluation results, along with detailed information about each candidate (location, activity content, recommended time, etc.).
[0603] Finally, the server sends the generated candidate list to the device via an HTTP response. The device receives this response, parses it, and displays it in a user-friendly format. The candidate list includes the title of each plan and detailed information (location, activity content, time slot, etc.).
[0604] This system allows users to easily find the perfect holiday plan based on their preferences and current emotional state, significantly reducing the time and effort required for planning.
[0605] As a concrete example, if the user is interested in "hiking," "nature observation," and "parks," and is currently feeling like relaxing, the server will generate the following candidate list:
[0606] 1. Recommended Plan 1: Relax in the Park
[0607] Location: Quiet Park A
[0608] Activities: Nature observation, relaxing walks
[0609] Hours: 10:00~12:00
[0610] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[0611] Location: Market B, Cafe C
[0612] Activities: Shopping, relaxing lunch at a cafe
[0613] Hours: 12:00~14:00
[0614] 3. Recommended plan 3: Visiting art galleries at museums
[0615] Location: Museum D
[0616] Activities: Quiet viewing of art galleries
[0617] Hours: 14:00~16:00
[0618] Based on this example, users can get a relaxing holiday plan that matches their emotional state, providing a more fulfilling and mentally satisfying way to spend their holidays.
[0619] The processing flow will be explained below.
[0620] Step 1:
[0621] The user launches the application. The user enters information about their hobbies, favorite activities, and places of interest into an input form. For example, the user enters hobbies such as "hiking," "cafe hopping," and "visiting art galleries."
[0622] Step 2:
[0623] The emotion engine recognizes the user's current emotional state in real time, for example by analyzing the user's facial expressions and voice to identify emotions such as "relaxed" or "excited."
[0624] Step 3:
[0625] The device converts the input user information and recognized emotion information into JSON format, and then sends this JSON data to the server via an HTTP POST request.
[0626] Step 4:
[0627] The server analyzes the received user information and emotional information. The server parses the JSON format data, extracts key information about hobbies and interests (e.g., "hiking," "nature observation," "parks," etc.), and also takes into account the emotional state recognized by the emotion engine.
[0628] Step 5:
[0629] The server queries the database to find relevant tourist spots and activities. The server retrieves specific spots and activities based on the user's interests and emotional state. For example, "Park A," "Museum B," etc.
[0630] Step 6:
[0631] The server compares the information retrieved from the database with the user's information and calculates the degree of matching. The server uses data from the emotion engine to make an evaluation that reflects the user's current emotional state. For example, a user seeking a relaxing experience might be rated as highly matching a "quiet park."
[0632] Step 7:
[0633] Based on the evaluation results, the server generates a list of spots and activities with the highest matching potential. The server then compiles the list of candidates and detailed information about each activity into an easy-to-read list. For example, "nature observation and photography in a park" or "visiting an art gallery at a museum."
[0634] Step 8:
[0635] The server sends the generated candidate list to the terminal as an HTTP response, and the terminal receives and analyzes the response.
[0636] Step 9:
[0637] The device receives a list of options and displays it in an easy-to-read format for the user. The list includes the title of each plan and detailed information (location, activity content, recommended time, etc.). For example, "Nature observation and relaxation at Park A," or "Shopping and lunch at Market B and Cafe C."
[0638] Through the above process, the user can quickly and easily find holiday plans that best suit their tastes and current emotional state.
[0639] Example 2
[0640] 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."
[0641] Conventional systems provide activity suggestions based on a user's hobbies and preferences, but are unable to provide optimal suggestions that take into account the user's current emotional state. Furthermore, planning requires a significant amount of time and effort, placing a significant burden on users. Furthermore, the limited number of plan options offered results in insufficient user satisfaction.
[0642] 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.
[0643] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and emotional state and extracting the user's hobbies, preferences, and emotional state, means for searching a database for optimal activities and spots based on the extracted hobbies, preferences, and emotional state, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, and means for providing the generated candidate list to the user. This allows the server to propose optimal holiday plans based on the user's hobbies, preferences, and current emotional state, thereby reducing the time and effort required for planning.
[0644] "User" means an individual who uses the System to find activities and travel plans.
[0645] "Input information" refers to information such as hobbies, interests, and current emotional state that a user provides to the system.
[0646] "Emotional state" refers to the psychological state the user is feeling, and includes information such as "I want to relax" or "I'm excited."
[0647] "Hobbies and tastes" refers to the activities and interests that users prefer.
[0648] "Activity" refers to a specific action or event suggested to a User through the System.
[0649] "Spots" refer to specific locations or tourist attractions suggested to users.
[0650] "Search means" refers to an algorithm or program that searches a database for relevant activities and spots based on the user's interests, tastes and emotional state.
[0651] "Matching degree" refers to an index that evaluates the degree of compatibility with the user's hobbies and emotional state.
[0652] "Candidate List" refers to a list of optimal activities and spots generated by the server to provide to the user.
[0653] This invention is a system that proposes optimal holiday plans based on a user's hobbies, preferences, and current emotional state. The system consists of a terminal that receives and analyzes user input information, and a server that searches, evaluates, and provides activities and spots based on the analysis results.
[0654] User information input and data submission
[0655] First, the user launches the application on a device such as a smartphone or PC and inputs information such as hobbies, favorite activities, and places of interest, as well as their current emotional state. For example, the user inputs hobby information such as "hiking," "cafe hopping," and "visiting art galleries," and emotional information such as "I want to relax."
[0656] The device receives this input information, converts it into a format such as JSON, and sends it to the server. For example, data like "{ 'Hobbies': ['Hiking', 'Café Hopping', 'Art Gallery Visiting'], 'Emotions': 'Relaxing'}" is generated.
[0657] Data analysis and search on the server
[0658] The server receives the data sent from the device and analyzes the user's hobbies, interests, and emotional state. During the analysis, key information such as "hiking," "nature observation," and "park" is extracted, and the user's emotional state (e.g., "relaxation") is also taken into account.
[0659] The server then queries the database for relevant tourist attractions and activities, returning information such as "quiet parks," "markets," and "museums."
[0660] Calculating matching scores and generating candidate lists
[0661] The server compares the received data with the user's hobbies, interests, and emotional state, and calculates the degree of matching using the emotion engine data. For example, if it is determined that the user is "seeking relaxation," activities such as quiet parks and museums will be rated highly as a match.
[0662] Based on the evaluation results, a list of spots and activities with the highest matching score is generated. The generated list of candidates includes detailed information about each candidate (location, content, recommended time, etc.). Examples of plans include:
[0663] 1. Recommended Plan 1: Relax in the Park
[0664] Location: Quiet park
[0665] Activities: Nature observation, relaxing walks
[0666] Hours: 10:00~12:00
[0667] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[0668] Location: Market, Cafe
[0669] Activities: Shopping, relaxing lunch at a cafe
[0670] Hours: 12:00~14:00
[0671] 3. Recommended plan 3: Visiting art galleries at museums
[0672] Location: Museum
[0673] Activities: Quiet viewing of art galleries
[0674] Hours: 14:00~16:00
[0675] Providing a candidate list
[0676] Finally, the server sends the generated candidate list to the device via an HTTP response. The device receives this response, parses it, and displays it in a format that is easy for the user to view. The user can view the title and detailed information of each plan (location, activity content, time slot, etc.) through the application.
[0677] Prompt Sentence Examples
[0678] "I'm in the mood to relax and I'm interested in hiking and nature observation. Please suggest some recommended activity plans for me right now."
[0679] This system allows users to easily find the perfect holiday plan based on their preferences and current emotional state, significantly reducing the time and effort required for planning.
[0680] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0681] Step 1:
[0682] A user launches an application on a device and inputs their hobbies, favorite activities, points of interest, and current emotional state.
[0683] Input: Hobbies (e.g., "Hiking," "Café Hopping," "Visiting Art Galleries"), Emotional State (e.g., "I Want to Relax")
[0684] Output: Input screen displayed on the terminal
[0685] Step 2:
[0686] The terminal receives the user's input information and converts it into JSON format.
[0687] Input: User-entered information about hobbies and emotional states
[0688] Data processing: Converting to JSON format (e.g., "{ 'Hobbies': ['Hiking', 'Café hopping', 'Visiting art galleries'], 'Emotions': 'Relaxing'}")
[0689] Output: JSON data
[0690] Step 3:
[0691] The device sends the generated JSON data to the server.
[0692] Input: JSON data
[0693] Data calculation: Data transmission processing
[0694] Output: User input sent to the server
[0695] Step 4:
[0696] The server analyzes the JSON data received from the device and extracts the user's hobbies, interests, and emotional state.
[0697] Input: Received JSON data
[0698] Data calculation: JSON data analysis (extracting interests and emotional states)
[0699] Output: Extracted hobby and emotion information (e.g., "Hobbies: hiking, nature observation, parks; Emotion: relaxing")
[0700] Step 5:
[0701] The server uses the extracted information to send queries to a database to search for related activities and spots.
[0702] Input: Extracted hobbies and emotions
[0703] Data calculation: Generate and submit a database search query (e.g., "SELECT FROM Spots WHERE Hobbies IN ('Hiking', 'Nature Observation', 'Parks')").
[0704] Output: Spot and activity information returned from the database
[0705] Step 6:
[0706] The server compares the received data with the user's hobbies, interests, and emotional state to calculate the degree of matching.
[0707] Input: Spot and activity information received from the database
[0708] Data calculation: Calculation of matching degree (e.g., "Evaluate the compatibility between users seeking relaxation and each spot")
[0709] Output: Matching evaluation result
[0710] Step 7:
[0711] Based on the evaluation results, the server generates a list of candidate spots and activities with the highest matching potential.
[0712] Input: Matching evaluation result
[0713] Data processing: generating candidate lists (e.g., "creating a list of the best activities and spots")
[0714] Output: A list of suggestions (e.g., "Relaxing in the park, having lunch at a quiet cafe, and looking at art at a museum")
[0715] Step 8:
[0716] The server sends the generated candidate list to the terminal as an HTTP response.
[0717] Input: Suggestion list
[0718] Data operations: generating and sending HTTP responses
[0719] Output: Candidate list sent to terminal
[0720] Step 9:
[0721] The terminal receives the response, analyzes it, and displays it in a user-friendly format.
[0722] Input: Candidate list received from the server
[0723] Data processing: Parsing the response and converting it to a display format
[0724] Output: A list of options to be displayed to the user (e.g., "Plan 1: Relax in the park, Plan 2: Lunch at a cafe, Plan 3: View art at a museum")
[0725] (Application example 2)
[0726] 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."
[0727] Conventional systems primarily suggest activities and spots based on a user's hobbies and preferences, but do not take into account the user's current emotional state. As a result, appropriate suggestions that match the user's current mood and emotions are not provided, leading to a decrease in satisfaction. Furthermore, there is a demand for systems that not only suggest activities and spots but also recommend related products and services at the same time. However, no systems exist that can provide these comprehensive services. The present invention aims to solve these problems and provide a system that suggests optimal activities and spots based on a user's hobbies, preferences, and emotional state, and recommends related products and services.
[0728] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means including an emotion engine for analyzing the user's current emotional state, means for searching a database for optimal activities and spots based on the extracted hobbies and preferences and the analyzed emotional state, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, means for providing the generated candidate list to the user, and means for recommending products and services based on the candidate list. This makes it possible to not only suggest activities and spots that are suited to the user's hobbies, preferences, and emotional state, but also to simultaneously recommend related products and services.
[0729] "User input information" refers to information such as hobbies, favorite activities, and places of interest that a user provides to the system.
[0730] "Hobbies and tastes" refers to the tendencies and characteristics of activities, places, themes, etc. that a user is interested in.
[0731] An "emotion engine" is a technology that analyzes a user's current emotional state and acquires that emotional information.
[0732] A "database" is an information management system that stores information on activities, spots, and related products and services.
[0733] "Matching degree" is an index that evaluates how well the suggested activities and spots match the user's hobbies, tastes, and emotional state.
[0734] A "candidate list" is a list that compiles detailed information about the most suitable activities and spots from the search results.
[0735] "Product and service recommendation" refers to suggesting related products and services based on a user's tastes, preferences and emotional state.
[0736] The present invention relates to a system that suggests optimal activities and spots based on a user's hobbies, preferences, and current emotional state, and also recommends related products and services.
[0737] The process begins when a user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The device receives this user information, and the emotion engine recognizes the user's current emotional state. For example, if a user inputs hobbies such as "hiking," "cafe hopping," and "visiting art galleries," the emotion engine may recognize the user's emotions as "excited," "relaxed," or "curious."
[0738] The device receives this user information and emotion information, converts it into a format such as JSON, and sends it to the server. The server then analyzes the received user information and emotion information. It extracts key information related to the user's hobbies and interests (e.g., "hiking," "nature observation," "parks") and takes into account the user's current emotions based on the emotional state recognized by the emotion engine. For example, if the user wants to relax, plans for a quiet park or museum will be suggested, while if the user is excited, plans for an active hike or sports will be suggested.
[0739] The server then queries the database to find relevant tourist attractions and activities. After receiving the search results, the server compares them with the user's hobbies, interests, and emotional state to calculate the degree of matching. Furthermore, if the server determines that the user is currently seeking relaxation using the emotion engine data, it will rate relaxing activities as a high match.
[0740] The server then generates a list of spots and activities with the highest matching potential based on the evaluation results. This list also includes detailed information about each candidate (location, activity content, recommended time, etc.). Finally, the server sends the generated candidate list to the device as an HTTP response. The device receives this response, analyzes it, and displays it in a format that is easy for the user to view.
[0741] As a concrete example, if the user is interested in "hiking," "nature observation," and "parks," and is currently feeling like relaxing, the server can generate the following candidate list:
[0742] 1. Recommended Plan 1: Relax in the Park
[0743] Location: Quiet park
[0744] Activities: Nature observation, relaxing walks
[0745] Recommended time: 10:00~12:00
[0746] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[0747] Location: Market, Cafe
[0748] Activities: Shopping, relaxing lunch at a cafe
[0749] Recommended time: 12:00~14:00
[0750] 3. Recommended plan 3: Visiting art galleries at museums
[0751] Location: Museum
[0752] Activities: Art gallery visits
[0753] Recommended time: 14:00~16:00
[0754] Additionally, recommendations for related products and services are provided, such as aroma oils, yoga mats, and relaxation music for users who want to relax.
[0755] An example of a prompt to input to a generative AI model is, "Based on the user's emotional state, suggest products and activities that will help them relax."
[0756] The hardware required includes a user device such as a smartphone or smart glasses, a server, and an emotion analysis engine. The software includes an algorithm for matching analysis results with a database and an API for processing HTTP responses.
[0757] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0758] Step 1:
[0759] A user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The input information is received by the device as the user's hobbies and preferences. In this example, we assume the user inputs information such as "hiking," "cafe hopping," and "visiting art galleries." The input data is saved in text format and used for subsequent analysis.
[0760] Step 2:
[0761] The device analyzes the received user input information and uses an emotion engine to recognize the user's current emotional state. For example, the emotion engine analyzes emotional states such as "excitement," "relaxation," and "curiosity." The input data is categorized into hobbies, preferences, and emotional states and converted into a format such as JSON.
[0762] Step 3:
[0763] The device converts the analyzed user information and emotion information into JSON format and sends it to the server. The server receives this JSON data and temporarily stores it as data for processing. The input data is compared with the user database to extract the necessary information.
[0764] Step 4:
[0765] The server analyzes the received user's hobby and preference information and emotional state, and searches a database for the most suitable activities and spots. Based on the user's interests and current emotional state, the server searches for quiet spots for users who want to relax, and active spots for users who are excited. The server uses user information in JSON format as input data and retrieves relevant information through database queries.
[0766] Step 5:
[0767] The server evaluates the degree of matching from the search results and generates a list of candidate activities and spots that best suit the user's interests, tastes, and emotional state. Using spot information retrieved from the database and the user's interests, tastes, and emotional state as input, the algorithm calculates the degree of matching. The generated list includes detailed information (location, activity content, recommended time, etc.).
[0768] Step 6:
[0769] The server sends the generated candidate list to the terminal as an HTTP response. The terminal receives this response, parses it into a user-friendly format, and displays it. The input data is the generated candidate list, and a user-friendly list is created as the output.
[0770] Step 7:
[0771] The device then recommends related products and services based on the candidate list. In this process, aroma oils and yoga mats are recommended to users seeking relaxation. The input data is the generated candidate list, and the output is a list of recommended products and services.
[0772] As a concrete example, a prompt sentence to be input to the generative AI model would be, "Based on the user's emotional state, suggest products and activities that will help them relax."
[0773] 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.
[0774] 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.
[0775] 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.
[0776] [Third embodiment]
[0777] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0778] 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.
[0779] 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).
[0780] 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.
[0781] 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.
[0782] 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).
[0783] 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.
[0784] 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.
[0785] 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.
[0786] 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.
[0787] 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.
[0788] 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."
[0789] The present invention relates to a system for proposing optimal ways to spend holidays that match a user's hobbies and preferences. The specific configuration and operation of this system will be described below.
[0790] First, a user launches an application on their device and enters information about their hobbies, favorite activities, points of interest, etc. For example, a user might enter the following information:
[0791] Hobbies: Hiking, visiting cafes, visiting art galleries
[0792] Favorite activities: Nature observation, photography
[0793] Places of interest: parks, museums, markets
[0794] The device receives this user information, converts it into a format such as JSON, and sends it to the server.
[0795] The server analyzes the received user information and extracts important key information (hobbies, favorite activities, places of interest, etc.) The server then queries the database to find relevant tourist attractions, event information, and activity information.
[0796] The server receives the search results and compares them with the user's interests and tastes to calculate the degree of matching. For example, parks where you can hike or places where you can observe nature will be rated as highly matching.
[0797] The server then selects spots and activities that match the best and generates a list of specific plan options, such as observing nature and taking photos in a park, visiting art galleries at a museum, or visiting cafes.
[0798] Finally, the server sends the generated list of options to the device, which displays it to the user in an organized format, including detailed information about each option (location, activities, recommended duration, etc.).
[0799] This system allows users to easily find the perfect holiday plan that suits their tastes and preferences, significantly reducing the time and effort required for planning.
[0800] As a concrete example, if the user is interested in "hiking," "nature watching," and "parks," the server generates the following candidate list:
[0801] 1. Recommended Plan 1: Nature Observation in the Park
[0802] Location: XX Park
[0803] Activities: Nature observation, photography
[0804] Hours: 10:00~12:00
[0805] 2. Recommended Plan 2: Market Tour and Lunch at a Cafe
[0806] Location: XX Market, XX Cafe
[0807] Activities: Shopping, lunch at a cafe
[0808] Hours: 12:00~14:00
[0809] 3. Recommended plan 3: Visiting art galleries at museums
[0810] Location: XX Museum
[0811] Activities: Art gallery visits
[0812] Hours: 14:00~16:00
[0813] Based on this example, users can spend a fulfilling holiday according to their desired activities and spots. Through this series of processes, we provide a system that allows users to easily obtain the optimal plan.
[0814] The processing flow will be explained below.
[0815] Step 1:
[0816] The user launches the application. The user fills in a form with information about their hobbies, favorite activities, and places of interest. For example, the user might enter hobbies such as "hiking," "cafe hopping," and "visiting art galleries."
[0817] Step 2:
[0818] The device converts the entered user information into JSON format, then sends an HTTP POST request to the server, sending the JSON-formatted user information.
[0819] Step 3:
[0820] The server analyzes the received user information. The server analyzes the JSON format data and extracts key information about hobbies and interests. For example, it extracts information such as "hiking," "nature observation," and "parks."
[0821] Step 4:
[0822] The server queries the database, searching for relevant tourist attractions and activities based on the user's hobbies and interests, such as parks and nature viewing spots.
[0823] Step 5:
[0824] The server receives the information retrieved from the database and compares it with the user information to calculate the degree of matching. The server evaluates the degree of matching for each spot and activity. For example, it verifies that Park A allows nature observation and photography.
[0825] Step 6:
[0826] The server generates a list of spots and activities with the highest matching potential based on the evaluation results, including detailed information about each candidate (location, activity content, recommended time, etc.).
[0827] Step 7:
[0828] The server sends the generated candidate list to the terminal as an HTTP response, which the terminal receives.
[0829] Step 8:
[0830] The device analyzes the received list of options and displays it in a user-friendly format, including the title of each option and detailed information (location, activity, time slot, etc.).
[0831] Example 1
[0832] 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."
[0833] In recent years, users have been faced with the challenge of spending a fulfilling holiday, requiring a great deal of time and effort to find the perfect way to spend the day based on their hobbies and preferences. Collecting information using the internet and various devices, then sifting through that information to select the best activities and spots, is particularly tedious. Furthermore, the information obtained often does not perfectly match the user's preferences, making it difficult to plan a fulfilling holiday.
[0834] 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.
[0835] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means for searching a database for optimal activities and spots based on the extracted hobbies and preferences, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, means for providing the generated candidate list to the user, and means for inputting the provided information as prompt sentences into the generative AI model. This allows users to easily find the optimal holiday plan based on their hobbies and preferences, significantly reducing the time and effort required for planning.
[0836] 1. "Means for receiving user input information" refers to functions or devices that receive data entered by a user and convert it into a format that can be processed within the system.
[0837] 2. "Means for analyzing received user input information and extracting the user's hobbies and interests" refers to a function or method for analyzing information input by the user and performing processing to identify the user's hobbies and interests from that information.
[0838] 3. "Means for searching a database for optimal activities and spots based on extracted hobbies and preferences" refers to a function or method for searching a database for related activities and spots based on the user's hobbies and preferences.
[0839] 4. "Means for evaluating the degree of matching from search results and generating a list of suitable candidate activities and spots" refers to a function or method for evaluating search results obtained from a database and selecting from among them the activities and spots that best match the user's interests and preferences.
[0840] 5. "Means for providing the generated candidate list to the user" refers to a function or method for presenting the generated candidate list of activities or spots to the user in a visual or other form.
[0841] 6. "Means for inputting provided information into a generative AI model as a prompt sentence" refers to a function or method for converting information provided by a user into an appropriate prompt sentence format and inputting it into a generative AI model.
[0842] This invention is a system that proposes optimal holiday plans that match the user's tastes and preferences. The specific configuration and operation of this system will be described below.
[0843] First, the user launches the application on their device and enters information about their hobbies, favorite activities, and places of interest, such as "hiking," "cafe hopping," or "visiting museums."
[0844] The terminal uses Python's json library to receive the information entered by the user and convert it to JSON format, then the terminal uses Python's requests library to send an HTTP request to the server with the converted JSON formatted data.
[0845] The server receives the HTTP request and parses the JSON data to get the user information, using the Python json library. The server then extracts important key information from the user information (hobbies, favorite activities, places of interest).
[0846] Based on the extracted key information, the server sends an SQL query to a database (e.g., MySQL) to search for related tourist spots, event information, and activity information. After receiving the search results, the server compares the data with the user's interests and preferences and calculates the degree of match. This comparison is performed using the Python numpy library.
[0847] The server then selects spots and activities with high matching scores and generates a list of specific plan candidates, converts the list into JSON format, and sends it to the device as an HTTP response.
[0848] The device parses the received candidate list and displays it in a user-friendly format using HTML and JavaScript.
[0849] As a concrete example, suppose a user types the following into a terminal application:
[0850] Hobbies: Hiking
[0851] Favorite activity: Observing nature
[0852] Places of interest: Parks
[0853] The device converts this information into JSON format and sends it to the server, which parses it and sends an SQL query to the database like this:
[0854] sql
[0855] SELECT FROM activities WHERE type='hiking' OR type='nature watching' OR location='park';
[0856] Based on the results from the database, the server generates a candidate list like this:
[0857] 1. Recommended Plan 1: Nature Observation in the Park
[0858] Location: XX Park
[0859] Activities: Nature observation, photography
[0860] Hours: 10:00~12:00
[0861] 2. Recommended Plan 2: Market Tour and Lunch at a Cafe
[0862] Location: XX Market, XX Cafe
[0863] Activities: Shopping, lunch at a cafe
[0864] Hours: 12:00~14:00
[0865] 3. Recommended plan 3: Visiting art galleries at museums
[0866] Location: XX Museum
[0867] Activities: Art gallery visits
[0868] Hours: 14:00~16:00
[0869] Finally, the user can view the list of options via their device and choose the plan that best suits them. The generated list of options is then input as a prompt to the generative AI model. For example, the following prompt can be used:
[0870] User Input:
[0871] Hobbies: Hiking
[0872] Favorite activity: Observing nature
[0873] Places of interest: Parks
[0874] Please suggest a holiday plan that suits the above criteria.
[0875] This system allows users to easily find the perfect holiday plan based on their hobbies and preferences, significantly reducing the time and effort required for planning.
[0876] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0877] Step 1:
[0878] The user launches the application on their device and enters information such as hobbies, favorite activities, and places of interest.
[0879] Input: Hobbies, activities, and spot information entered by the user into the device
[0880] Output: User input information stored on the device
[0881] Specifically, the user inputs information such as "hiking," "nature observation," and "park."
[0882] Step 2:
[0883] The terminal receives the entered user information and converts it into JSON format.
[0884] Input: Information entered by the user
[0885] Output: User information converted to JSON format
[0886] Specifically, the device uses Python's json library to convert the data into JSON format.
[0887] Step 3:
[0888] The terminal sends the converted JSON data to the server as an HTTP request.
[0889] Input: User information in JSON format
[0890] Output: HTTP request sent to the server
[0891] Specifically, the device uses Python's requests library to send JSON data to the server.
[0892] Step 4:
[0893] The server receives the HTTP request and parses the JSON data to obtain the user information.
[0894] Input: JSON data sent as an HTTP request
[0895] Output: Parsed user information
[0896] Specifically, the server parses the JSON data using Python's json library.
[0897] Step 5:
[0898] The server extracts important key information from the user information, such as hobbies, favorite activities, and places of interest.
[0899] Input: Parsed user information
[0900] Output: Extracted key information (hobbies, activities, locations)
[0901] Specifically, the server sequentially analyzes the user information and extracts the necessary key information.
[0902] Step 6:
[0903] The server sends an SQL query to the database based on the extracted key information to search for related tourist spots, event information, and activity information.
[0904] Input: Extracted key information
[0905] Output: Search results for tourist attractions, event information, and activity information
[0906] Specifically, the server executes the appropriate SQL queries against the MySQL database.
[0907] Step 7:
[0908] The server compares the received search results with the user's interests and tastes, and calculates the degree of matching for each result.
[0909] Input: Search results received from the database
[0910] Output: The calculated matching score for each result
[0911] Specifically, the server calculates the degree of matching using Python's numpy library.
[0912] Step 8:
[0913] The server picks out spots and activities that are highly likely to match and generates a list of specific plan candidates.
[0914] Input: Search results with calculated matching scores
[0915] Output: Specific plans as a list of candidates
[0916] Specifically, the server selects spots and activities based on certain criteria and creates a candidate list.
[0917] Step 9:
[0918] The server converts the generated candidate list into JSON format and sends it to the terminal as an HTTP response.
[0919] Input: Generated candidate list
[0920] Output: A list of candidates in JSON format sent as an HTTP response.
[0921] Specifically, the server uses Python's json library to convert the candidate list into JSON format and generate an HTTP response.
[0922] Step 10:
[0923] The terminal analyzes the received candidate list and displays it in a format that is easy for the user to view.
[0924] Input: JSON format candidate list received as an HTTP response
[0925] Output: A user-friendly list of suggestions
[0926] Specifically, the device uses HTML and JavaScript to display the contents of the candidate list to the user.
[0927] This series of steps allows users to easily find the perfect holiday plan based on their interests and preferences.
[0928] (Application example 1)
[0929] 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."
[0930] Conventional food delivery systems lacked the functionality to provide delivery options tailored to users' hobbies and interests, and were limited to simply delivering meals. As a result, users were unable to receive comprehensive recommendations for optimal ways of spending time and activities based on their hobbies and preferences, resulting in a decline in convenience and satisfaction.
[0931] 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.
[0932] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means for searching a database for optimal activities, spots, and delivery services based on the extracted hobbies and preferences, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities, spots, and delivery services, and means for providing the generated candidate list to the user. This allows the user to receive an integrated recommendation of activities, spots, and related food delivery services that best match their hobbies and preferences.
[0933] "User input information" is information that indicates the user's hobbies, favorite activities, places of interest, favorite types of cuisine, etc.
[0934] "Analysis" is the process of examining the received user input in detail and extracting important elements and keywords.
[0935] "Hobbies and preferences" refers to a user's specific interests and preferences, especially preferences for activities and places.
[0936] "Database" means a collection of information that systematically stores information about related activities, places, and food delivery services.
[0937] "Search" is the process of finding information within a database that matches the user's interests and preferences.
[0938] "Matching degree" is an index that evaluates the degree of match between a user's hobbies and interests and the activities, spots, and distribution services in the database.
[0939] "Evaluation" is the process of selecting the best candidates for the user based on the information in the search results.
[0940] A "candidate list" is a list of activities, places, and streaming services that best match a user's interests and preferences.
[0941] "Providing" is the act of visually or informationally showing the generated candidate list to the user.
[0942] "Delivery service" refers to the function of providing products and services that users want, such as food delivery.
[0943] The system of this invention aims to enable users to find the best activities, spots, and delivery services using their smartphones or other devices. Users input their hobbies, favorite activities, places of interest, and favorite types of cuisine through a dedicated application.
[0944] The system is structured as follows: First, the user's device receives input information, converts it into a format such as JSON, and sends it to the server. This information includes the user's hobbies, favorite activities, places of interest, and favorite types of cuisine.
[0945] The server analyzes the received user information and extracts important keywords from it. Based on the extracted keywords, it searches a database for related activities, spots, and food delivery services. This information is searched using a query language such as SQL.
[0946] The server, which receives the search results, compares them with the user's interests and tastes and calculates the degree of matching. The degree of matching is an evaluation index for selecting candidates that best match the user's preferences. The server then generates a list of candidates for activities, spots, and streaming services with high matching degrees.
[0947] Once the candidate list is generated, the server provides it to the user's device, which displays it in an organized format and includes detailed information about each activity or spot (such as location, activity content, recommended time, and delivery options).
[0948] For example, if a user inputs that they are interested in "cafe hopping," "espresso," and enjoy "nature watching," the system will generate the following list of suggestions:
[0949] 1. Recommended Plan 1: Nature Observation and Cafe Hopping
[0950] Location: Nearby park
[0951] Activities: Nature watching, photography, and espresso at the park's cafe
[0952] 2. Recommended Plan 2: Espresso Delivery
[0953] Delivery service: Espresso delivery from partner cafes
[0954] Activity: Enjoy espresso at home
[0955] Additionally, the system provides prompts to input to the generative AI model, such as:
[0956] "Please describe a system that suggests the best way to spend a holiday based on a user's hobbies and interests. In particular, please describe the process for suggesting the best plan for a user who is interested in cafe hopping, nature watching, and espresso."
[0957] In this way, users can easily find activities that match their interests and preferences, as well as the best food delivery services, through the system.
[0958] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0959] Step 1:
[0960] When the user's device starts up, the application displays an interface for entering the user's hobbies, favorite activities, places of interest, and favorite types of cuisine. The user enters their information through this interface. The entered information is converted into a standard format such as JSON and sent to the server. The input of this step is the user's hobbies and preferences, and the output is JSON format data.
[0961] Step 2:
[0962] The server parses the JSON data received from the user's device using a JSON parser to extract important information such as the user's hobbies, favorite activities, points of interest, and favorite cuisine. The input of this step is the received JSON data, and the output is the extracted information about the user's hobbies and preferences.
[0963] Step 3:
[0964] The server sends a query to the database based on the extracted user's interests. The query is written in a query language such as SQL, and the database is searched based on the query. The search targets related activities, spots, and food delivery services. The input of this step is the extracted user information and the query, and the output is related information retrieved from the database.
[0965] Step 4:
[0966] The server calculates the degree of matching between the user's interests and preferences based on the information retrieved from the database. This calculation uses a quantitative algorithm to evaluate the degree of matching between each activity, spot, and food delivery service. The input of this step is the information retrieved from the database, and the output is the degree of matching between each option.
[0967] Step 5:
[0968] The server generates a candidate list from activities, spots, and food delivery services with high matching scores. The generated candidate list includes detailed information about each activity and spot, such as location, activity content, recommended time, and delivery options. The input of this step is the result of the matching score calculation, and the output is the candidate list.
[0969] Step 6:
[0970] The server sends the generated candidate list to the user's device. The user's device displays the received candidate list in an easy-to-read format. The display format can be a list format or a popup with detailed information. The input of this step is the candidate list, and the output is the visual display information provided to the user.
[0971] Step 7:
[0972] The user selects the best activities, places to visit, and food delivery options based on the provided list of options. The user's selection is fed back to the server through the application and used for future suggestions. The input of this step is the user's selected options, and the output is the feedback data.
[0973] 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.
[0974] This invention combines an emotion engine with a system that proposes optimal holiday plans based on the user's hobbies and preferences. The specific configuration and operation of this system will be described below.
[0975] First, a user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The emotion engine then recognizes the user's current emotional state. For example, if a user inputs hobbies such as "hiking," "cafe-hopping," and "visiting art galleries," the emotion engine may recognize the user's emotions as "excited," "relaxed," or "curious."
[0976] The device receives this user information and emotion information, converts it into a format such as JSON, and sends it to the server.
[0977] The server analyzes the received user information and emotional information. It extracts key information about the user's hobbies and interests (e.g., "hiking," "nature observation," "parks") and takes into account the user's current emotions based on the emotional state recognized by the emotion engine. For example, if the user wants to relax, it will suggest plans for a quiet park or museum, while if the user is excited, it will suggest plans for an active hike or sports.
[0978] The server sends queries to the database to search for relevant tourist attractions and activity information. After receiving the search results, the server compares the data with the user's hobbies, interests, and emotional state to calculate the degree of matching. For example, if the server determines using the emotion engine data that the user is currently seeking relaxation, it will rate relaxing activities as a high match.
[0979] Next, the server generates a list of spots and activities with the highest matching score based on the evaluation results, along with detailed information about each candidate (location, activity content, recommended time, etc.).
[0980] Finally, the server sends the generated candidate list to the device via an HTTP response. The device receives this response, parses it, and displays it in a user-friendly format. The candidate list includes the title of each plan and detailed information (location, activity content, time slot, etc.).
[0981] This system allows users to easily find the perfect holiday plan based on their preferences and current emotional state, significantly reducing the time and effort required for planning.
[0982] As a concrete example, if the user is interested in "hiking," "nature observation," and "parks," and is currently feeling like relaxing, the server will generate the following candidate list:
[0983] 1. Recommended Plan 1: Relax in the Park
[0984] Location: Quiet Park A
[0985] Activities: Nature observation, relaxing walks
[0986] Hours: 10:00~12:00
[0987] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[0988] Location: Market B, Cafe C
[0989] Activities: Shopping, relaxing lunch at a cafe
[0990] Hours: 12:00~14:00
[0991] 3. Recommended plan 3: Visiting art galleries at museums
[0992] Location: Museum D
[0993] Activities: Quiet viewing of art galleries
[0994] Hours: 14:00~16:00
[0995] Based on this example, users can get a relaxing holiday plan that matches their emotional state, providing a more fulfilling and mentally satisfying way to spend their holidays.
[0996] The processing flow will be explained below.
[0997] Step 1:
[0998] The user launches the application. The user enters information about their hobbies, favorite activities, and places of interest into an input form. For example, the user enters hobbies such as "hiking," "cafe hopping," and "visiting art galleries."
[0999] Step 2:
[1000] The emotion engine recognizes the user's current emotional state in real time, for example by analyzing the user's facial expressions and voice to identify emotions such as "relaxed" or "excited."
[1001] Step 3:
[1002] The device converts the input user information and recognized emotion information into JSON format, and then sends this JSON data to the server via an HTTP POST request.
[1003] Step 4:
[1004] The server analyzes the received user information and emotional information. The server parses the JSON format data, extracts key information about hobbies and interests (e.g., "hiking," "nature observation," "parks," etc.), and also takes into account the emotional state recognized by the emotion engine.
[1005] Step 5:
[1006] The server queries the database to find relevant tourist spots and activities. The server retrieves specific spots and activities based on the user's interests and emotional state. For example, "Park A," "Museum B," etc.
[1007] Step 6:
[1008] The server compares the information retrieved from the database with the user's information and calculates the degree of matching. The server uses data from the emotion engine to make an evaluation that reflects the user's current emotional state. For example, a user seeking a relaxing experience might be rated as highly matching a "quiet park."
[1009] Step 7:
[1010] Based on the evaluation results, the server generates a list of spots and activities with the highest matching potential. The server then compiles the list of candidates and detailed information about each activity into an easy-to-read list. For example, "nature observation and photography in a park" or "visiting an art gallery at a museum."
[1011] Step 8:
[1012] The server sends the generated candidate list to the terminal as an HTTP response, and the terminal receives and analyzes the response.
[1013] Step 9:
[1014] The device receives a list of options and displays it in an easy-to-read format for the user. The list includes the title of each plan and detailed information (location, activity content, recommended time, etc.). For example, "Nature observation and relaxation at Park A," or "Shopping and lunch at Market B and Cafe C."
[1015] Through the above process, the user can quickly and easily find holiday plans that best suit their tastes and current emotional state.
[1016] Example 2
[1017] 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."
[1018] Conventional systems provide activity suggestions based on a user's hobbies and preferences, but are unable to provide optimal suggestions that take into account the user's current emotional state. Furthermore, planning requires a significant amount of time and effort, placing a significant burden on users. Furthermore, the limited number of plan options offered results in insufficient user satisfaction.
[1019] 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.
[1020] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and emotional state and extracting the user's hobbies, preferences, and emotional state, means for searching a database for optimal activities and spots based on the extracted hobbies, preferences, and emotional state, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, and means for providing the generated candidate list to the user. This allows the server to propose optimal holiday plans based on the user's hobbies, preferences, and current emotional state, thereby reducing the time and effort required for planning.
[1021] "User" means an individual who uses the System to find activities and travel plans.
[1022] "Input information" refers to information such as hobbies, interests, and current emotional state that a user provides to the system.
[1023] "Emotional state" refers to the psychological state the user is feeling, and includes information such as "I want to relax" or "I'm excited."
[1024] "Hobbies and tastes" refers to the activities and interests that users prefer.
[1025] "Activity" refers to a specific action or event suggested to a User through the System.
[1026] "Spots" refer to specific locations or tourist attractions suggested to users.
[1027] "Search means" refers to an algorithm or program that searches a database for relevant activities and spots based on the user's interests, tastes and emotional state.
[1028] "Matching degree" refers to an index that evaluates the degree of compatibility with the user's hobbies and emotional state.
[1029] "Candidate List" refers to a list of optimal activities and spots generated by the server to provide to the user.
[1030] This invention is a system that proposes optimal holiday plans based on a user's hobbies, preferences, and current emotional state. The system consists of a terminal that receives and analyzes user input information, and a server that searches, evaluates, and provides activities and spots based on the analysis results.
[1031] User information input and data submission
[1032] First, the user launches the application on a device such as a smartphone or PC and inputs information such as hobbies, favorite activities, and places of interest, as well as their current emotional state. For example, the user inputs hobby information such as "hiking," "cafe hopping," and "visiting art galleries," and emotional information such as "I want to relax."
[1033] The device receives this input information, converts it into a format such as JSON, and sends it to the server. For example, data like "{ 'Hobbies': ['Hiking', 'Café Hopping', 'Art Gallery Visiting'], 'Emotions': 'Relaxing'}" is generated.
[1034] Data analysis and search on the server
[1035] The server receives the data sent from the device and analyzes the user's hobbies, interests, and emotional state. During the analysis, key information such as "hiking," "nature observation," and "park" is extracted, and the user's emotional state (e.g., "relaxation") is also taken into account.
[1036] The server then queries the database for relevant tourist attractions and activities, returning information such as "quiet parks," "markets," and "museums."
[1037] Calculating matching scores and generating candidate lists
[1038] The server compares the received data with the user's hobbies, interests, and emotional state, and calculates the degree of matching using the emotion engine data. For example, if it is determined that the user is "seeking relaxation," activities such as quiet parks and museums will be rated highly as a match.
[1039] Based on the evaluation results, a list of spots and activities with the highest matching score is generated. The generated list of candidates includes detailed information about each candidate (location, content, recommended time, etc.). Examples of plans include:
[1040] 1. Recommended Plan 1: Relax in the Park
[1041] Location: Quiet park
[1042] Activities: Nature observation, relaxing walks
[1043] Hours: 10:00~12:00
[1044] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[1045] Location: Market, Cafe
[1046] Activities: Shopping, relaxing lunch at a cafe
[1047] Hours: 12:00~14:00
[1048] 3. Recommended plan 3: Visiting art galleries at museums
[1049] Location: Museum
[1050] Activities: Quiet viewing of art galleries
[1051] Hours: 14:00~16:00
[1052] Providing a candidate list
[1053] Finally, the server sends the generated candidate list to the device via an HTTP response. The device receives this response, parses it, and displays it in a format that is easy for the user to view. The user can view the title and detailed information of each plan (location, activity content, time slot, etc.) through the application.
[1054] Prompt Sentence Examples
[1055] "I'm in the mood to relax and I'm interested in hiking and nature observation. Please suggest some recommended activity plans for me right now."
[1056] This system allows users to easily find the perfect holiday plan based on their preferences and current emotional state, significantly reducing the time and effort required for planning.
[1057] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1058] Step 1:
[1059] A user launches an application on a device and inputs their hobbies, favorite activities, points of interest, and current emotional state.
[1060] Input: Hobbies (e.g., "Hiking," "Café Hopping," "Visiting Art Galleries"), Emotional State (e.g., "I Want to Relax")
[1061] Output: Input screen displayed on the terminal
[1062] Step 2:
[1063] The terminal receives the user's input information and converts it into JSON format.
[1064] Input: User-entered information about hobbies and emotional states
[1065] Data processing: Converting to JSON format (e.g., "{ 'Hobbies': ['Hiking', 'Café hopping', 'Visiting art galleries'], 'Emotions': 'Relaxing'}")
[1066] Output: JSON data
[1067] Step 3:
[1068] The device sends the generated JSON data to the server.
[1069] Input: JSON data
[1070] Data calculation: Data transmission processing
[1071] Output: User input sent to the server
[1072] Step 4:
[1073] The server analyzes the JSON data received from the device and extracts the user's hobbies, interests, and emotional state.
[1074] Input: Received JSON data
[1075] Data calculation: JSON data analysis (extracting interests and emotional states)
[1076] Output: Extracted hobby and emotion information (e.g., "Hobbies: hiking, nature observation, parks; Emotion: relaxing")
[1077] Step 5:
[1078] The server uses the extracted information to send queries to a database to search for related activities and spots.
[1079] Input: Extracted hobbies and emotions
[1080] Data calculation: Generate and submit a database search query (e.g., "SELECT FROM Spots WHERE Hobbies IN ('Hiking', 'Nature Observation', 'Parks')").
[1081] Output: Spot and activity information returned from the database
[1082] Step 6:
[1083] The server compares the received data with the user's hobbies, interests, and emotional state to calculate the degree of matching.
[1084] Input: Spot and activity information received from the database
[1085] Data calculation: Calculation of matching degree (e.g., "Evaluate the compatibility between users seeking relaxation and each spot")
[1086] Output: Matching evaluation result
[1087] Step 7:
[1088] Based on the evaluation results, the server generates a list of candidate spots and activities with the highest matching potential.
[1089] Input: Matching evaluation result
[1090] Data processing: generating candidate lists (e.g., "creating a list of the best activities and spots")
[1091] Output: A list of suggestions (e.g., "Relaxing in the park, having lunch at a quiet cafe, and looking at art at a museum")
[1092] Step 8:
[1093] The server sends the generated candidate list to the terminal as an HTTP response.
[1094] Input: Suggestion list
[1095] Data operations: generating and sending HTTP responses
[1096] Output: Candidate list sent to terminal
[1097] Step 9:
[1098] The terminal receives the response, analyzes it, and displays it in a user-friendly format.
[1099] Input: Candidate list received from the server
[1100] Data processing: Parsing the response and converting it to a display format
[1101] Output: A list of options to be displayed to the user (e.g., "Plan 1: Relax in the park, Plan 2: Lunch at a cafe, Plan 3: View art at a museum")
[1102] (Application example 2)
[1103] 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."
[1104] Conventional systems primarily suggest activities and spots based on a user's hobbies and preferences, but do not take into account the user's current emotional state. As a result, appropriate suggestions that match the user's current mood and emotions are not provided, leading to a decrease in satisfaction. Furthermore, there is a demand for systems that not only suggest activities and spots but also recommend related products and services at the same time. However, no systems exist that can provide these comprehensive services. The present invention aims to solve these problems and provide a system that suggests optimal activities and spots based on a user's hobbies, preferences, and emotional state, and recommends related products and services.
[1105] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means including an emotion engine for analyzing the user's current emotional state, means for searching a database for optimal activities and spots based on the extracted hobbies and preferences and the analyzed emotional state, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, means for providing the generated candidate list to the user, and means for recommending products and services based on the candidate list. This makes it possible to not only suggest activities and spots that are suited to the user's hobbies, preferences, and emotional state, but also to simultaneously recommend related products and services.
[1106] "User input information" refers to information such as hobbies, favorite activities, and places of interest that a user provides to the system.
[1107] "Hobbies and tastes" refers to the tendencies and characteristics of activities, places, themes, etc. that a user is interested in.
[1108] An "emotion engine" is a technology that analyzes a user's current emotional state and acquires that emotional information.
[1109] A "database" is an information management system that stores information on activities, spots, and related products and services.
[1110] "Matching degree" is an index that evaluates how well the suggested activities and spots match the user's hobbies, tastes, and emotional state.
[1111] A "candidate list" is a list that compiles detailed information about the most suitable activities and spots from the search results.
[1112] "Product and service recommendation" refers to suggesting related products and services based on a user's tastes, preferences and emotional state.
[1113] The present invention relates to a system that suggests optimal activities and spots based on a user's hobbies, preferences, and current emotional state, and also recommends related products and services.
[1114] The process begins when a user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The device receives this user information, and the emotion engine recognizes the user's current emotional state. For example, if a user inputs hobbies such as "hiking," "cafe hopping," and "visiting art galleries," the emotion engine may recognize the user's emotions as "excited," "relaxed," or "curious."
[1115] The device receives this user information and emotion information, converts it into a format such as JSON, and sends it to the server. The server then analyzes the received user information and emotion information. It extracts key information related to the user's hobbies and interests (e.g., "hiking," "nature observation," "parks") and takes into account the user's current emotions based on the emotional state recognized by the emotion engine. For example, if the user wants to relax, plans for a quiet park or museum will be suggested, while if the user is excited, plans for an active hike or sports will be suggested.
[1116] The server then queries the database to find relevant tourist attractions and activities. After receiving the search results, the server compares them with the user's hobbies, interests, and emotional state to calculate the degree of matching. Furthermore, if the server determines that the user is currently seeking relaxation using the emotion engine data, it will rate relaxing activities as a high match.
[1117] The server then generates a list of spots and activities with the highest matching potential based on the evaluation results. This list also includes detailed information about each candidate (location, activity content, recommended time, etc.). Finally, the server sends the generated candidate list to the device as an HTTP response. The device receives this response, analyzes it, and displays it in a format that is easy for the user to view.
[1118] As a concrete example, if the user is interested in "hiking," "nature observation," and "parks," and is currently feeling like relaxing, the server can generate the following candidate list:
[1119] 1. Recommended Plan 1: Relax in the Park
[1120] Location: Quiet park
[1121] Activities: Nature observation, relaxing walks
[1122] Recommended time: 10:00~12:00
[1123] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[1124] Location: Market, Cafe
[1125] Activities: Shopping, relaxing lunch at a cafe
[1126] Recommended time: 12:00~14:00
[1127] 3. Recommended plan 3: Visiting art galleries at museums
[1128] Location: Museum
[1129] Activities: Art gallery visits
[1130] Recommended time: 14:00~16:00
[1131] Additionally, recommendations for related products and services are provided, such as aroma oils, yoga mats, and relaxation music for users who want to relax.
[1132] An example of a prompt to input to a generative AI model is, "Based on the user's emotional state, suggest products and activities that will help them relax."
[1133] The hardware required includes a user device such as a smartphone or smart glasses, a server, and an emotion analysis engine. The software includes an algorithm for matching analysis results with a database and an API for processing HTTP responses.
[1134] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1135] Step 1:
[1136] A user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The input information is received by the device as the user's hobbies and preferences. In this example, we assume the user inputs information such as "hiking," "cafe hopping," and "visiting art galleries." The input data is saved in text format and used for subsequent analysis.
[1137] Step 2:
[1138] The device analyzes the received user input information and uses an emotion engine to recognize the user's current emotional state. For example, the emotion engine analyzes emotional states such as "excitement," "relaxation," and "curiosity." The input data is categorized into hobbies, preferences, and emotional states and converted into a format such as JSON.
[1139] Step 3:
[1140] The device converts the analyzed user information and emotion information into JSON format and sends it to the server. The server receives this JSON data and temporarily stores it as data for processing. The input data is compared with the user database to extract the necessary information.
[1141] Step 4:
[1142] The server analyzes the received user's hobby and preference information and emotional state, and searches a database for the most suitable activities and spots. Based on the user's interests and current emotional state, the server searches for quiet spots for users who want to relax, and active spots for users who are excited. The server uses user information in JSON format as input data and retrieves relevant information through database queries.
[1143] Step 5:
[1144] The server evaluates the degree of matching from the search results and generates a list of candidate activities and spots that best suit the user's interests, tastes, and emotional state. Using spot information retrieved from the database and the user's interests, tastes, and emotional state as input, the algorithm calculates the degree of matching. The generated list includes detailed information (location, activity content, recommended time, etc.).
[1145] Step 6:
[1146] The server sends the generated candidate list to the terminal as an HTTP response. The terminal receives this response, parses it into a user-friendly format, and displays it. The input data is the generated candidate list, and a user-friendly list is created as the output.
[1147] Step 7:
[1148] The device then recommends related products and services based on the candidate list. In this process, aroma oils and yoga mats are recommended to users seeking relaxation. The input data is the generated candidate list, and the output is a list of recommended products and services.
[1149] As a concrete example, a prompt sentence to be input to the generative AI model would be, "Based on the user's emotional state, suggest products and activities that will help them relax."
[1150] 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.
[1151] 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.
[1152] 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.
[1153] [Fourth embodiment]
[1154] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1155] 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.
[1156] 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).
[1157] 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.
[1158] 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.
[1159] 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).
[1160] 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.
[1161] 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.
[1162] 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.
[1163] 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.
[1164] 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.
[1165] 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.
[1166] 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."
[1167] The present invention relates to a system for proposing optimal ways to spend holidays that match a user's hobbies and preferences. The specific configuration and operation of this system will be described below.
[1168] First, a user launches an application on their device and enters information about their hobbies, favorite activities, points of interest, etc. For example, a user might enter the following information:
[1169] Hobbies: Hiking, visiting cafes, visiting art galleries
[1170] Favorite activities: Nature observation, photography
[1171] Places of interest: parks, museums, markets
[1172] The device receives this user information, converts it into a format such as JSON, and sends it to the server.
[1173] The server analyzes the received user information and extracts important key information (hobbies, favorite activities, places of interest, etc.) The server then queries the database to find relevant tourist attractions, event information, and activity information.
[1174] The server receives the search results and compares them with the user's interests and tastes to calculate the degree of matching. For example, parks where you can hike or places where you can observe nature will be rated as highly matching.
[1175] The server then selects spots and activities that match the best and generates a list of specific plan options, such as observing nature and taking photos in a park, visiting art galleries at a museum, or visiting cafes.
[1176] Finally, the server sends the generated list of options to the device, which displays it to the user in an organized format, including detailed information about each option (location, activities, recommended duration, etc.).
[1177] This system allows users to easily find the perfect holiday plan that suits their tastes and preferences, significantly reducing the time and effort required for planning.
[1178] As a concrete example, if the user is interested in "hiking," "nature watching," and "parks," the server generates the following candidate list:
[1179] 1. Recommended Plan 1: Nature Observation in the Park
[1180] Location: XX Park
[1181] Activities: Nature observation, photography
[1182] Hours: 10:00~12:00
[1183] 2. Recommended Plan 2: Market Tour and Lunch at a Cafe
[1184] Location: XX Market, XX Cafe
[1185] Activities: Shopping, lunch at a cafe
[1186] Hours: 12:00~14:00
[1187] 3. Recommended plan 3: Visiting art galleries at museums
[1188] Location: XX Museum
[1189] Activities: Art gallery visits
[1190] Hours: 14:00~16:00
[1191] Based on this example, users can spend a fulfilling holiday according to their desired activities and spots. Through this series of processes, we provide a system that allows users to easily obtain the optimal plan.
[1192] The processing flow will be explained below.
[1193] Step 1:
[1194] The user launches the application. The user fills in a form with information about their hobbies, favorite activities, and places of interest. For example, the user might enter hobbies such as "hiking," "cafe hopping," and "visiting art galleries."
[1195] Step 2:
[1196] The device converts the entered user information into JSON format, then sends an HTTP POST request to the server, sending the JSON-formatted user information.
[1197] Step 3:
[1198] The server analyzes the received user information. The server analyzes the JSON format data and extracts key information about hobbies and interests. For example, it extracts information such as "hiking," "nature observation," and "parks."
[1199] Step 4:
[1200] The server queries the database, searching for relevant tourist attractions and activities based on the user's hobbies and interests, such as parks and nature viewing spots.
[1201] Step 5:
[1202] The server receives the information retrieved from the database and compares it with the user information to calculate the degree of matching. The server evaluates the degree of matching for each spot and activity. For example, it verifies that Park A allows nature observation and photography.
[1203] Step 6:
[1204] The server generates a list of spots and activities with the highest matching potential based on the evaluation results, including detailed information about each candidate (location, activity content, recommended time, etc.).
[1205] Step 7:
[1206] The server sends the generated candidate list to the terminal as an HTTP response, which the terminal receives.
[1207] Step 8:
[1208] The device analyzes the received list of options and displays it in a user-friendly format, including the title of each option and detailed information (location, activity, time slot, etc.).
[1209] Example 1
[1210] 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."
[1211] In recent years, users have been faced with the challenge of spending a fulfilling holiday, requiring a great deal of time and effort to find the perfect way to spend the day based on their hobbies and preferences. Collecting information using the internet and various devices, then sifting through that information to select the best activities and spots, is particularly tedious. Furthermore, the information obtained often does not perfectly match the user's preferences, making it difficult to plan a fulfilling holiday.
[1212] 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.
[1213] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means for searching a database for optimal activities and spots based on the extracted hobbies and preferences, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, means for providing the generated candidate list to the user, and means for inputting the provided information as prompt sentences into the generative AI model. This allows users to easily find the optimal holiday plan based on their hobbies and preferences, significantly reducing the time and effort required for planning.
[1214] 1. "Means for receiving user input information" refers to functions or devices that receive data entered by a user and convert it into a format that can be processed within the system.
[1215] 2. "Means for analyzing received user input information and extracting the user's hobbies and interests" refers to a function or method for analyzing information input by the user and performing processing to identify the user's hobbies and interests from that information.
[1216] 3. "Means for searching a database for optimal activities and spots based on extracted hobbies and preferences" refers to a function or method for searching a database for related activities and spots based on the user's hobbies and preferences.
[1217] 4. "Means for evaluating the degree of matching from search results and generating a list of suitable candidate activities and spots" refers to a function or method for evaluating search results obtained from a database and selecting from among them the activities and spots that best match the user's interests and preferences.
[1218] 5. "Means for providing the generated candidate list to the user" refers to a function or method for presenting the generated candidate list of activities or spots to the user in a visual or other form.
[1219] 6. "Means for inputting provided information into a generative AI model as a prompt sentence" refers to a function or method for converting information provided by a user into an appropriate prompt sentence format and inputting it into a generative AI model.
[1220] This invention is a system that proposes optimal holiday plans that match the user's tastes and preferences. The specific configuration and operation of this system will be described below.
[1221] First, the user launches the application on their device and enters information about their hobbies, favorite activities, and places of interest, such as "hiking," "cafe hopping," or "visiting museums."
[1222] The terminal uses Python's json library to receive the information entered by the user and convert it to JSON format, then the terminal uses Python's requests library to send an HTTP request to the server with the converted JSON formatted data.
[1223] The server receives the HTTP request and parses the JSON data to get the user information, using the Python json library. The server then extracts important key information from the user information (hobbies, favorite activities, places of interest).
[1224] Based on the extracted key information, the server sends an SQL query to a database (e.g., MySQL) to search for related tourist spots, event information, and activity information. After receiving the search results, the server compares the data with the user's interests and preferences and calculates the degree of match. This comparison is performed using the Python numpy library.
[1225] The server then selects spots and activities with high matching scores and generates a list of specific plan candidates, converts the list into JSON format, and sends it to the device as an HTTP response.
[1226] The device parses the received candidate list and displays it in a user-friendly format using HTML and JavaScript.
[1227] As a concrete example, suppose a user types the following into a terminal application:
[1228] Hobbies: Hiking
[1229] Favorite activity: Observing nature
[1230] Places of interest: Parks
[1231] The device converts this information into JSON format and sends it to the server, which parses it and sends an SQL query to the database like this:
[1232] sql
[1233] SELECT FROM activities WHERE type='hiking' OR type='nature watching' OR location='park';
[1234] Based on the results from the database, the server generates a candidate list like this:
[1235] 1. Recommended Plan 1: Nature Observation in the Park
[1236] Location: XX Park
[1237] Activities: Nature observation, photography
[1238] Hours: 10:00~12:00
[1239] 2. Recommended Plan 2: Market Tour and Lunch at a Cafe
[1240] Location: XX Market, XX Cafe
[1241] Activities: Shopping, lunch at a cafe
[1242] Hours: 12:00~14:00
[1243] 3. Recommended plan 3: Visiting art galleries at museums
[1244] Location: XX Museum
[1245] Activities: Art gallery visits
[1246] Hours: 14:00~16:00
[1247] Finally, the user can view the list of options via their device and choose the plan that best suits them. The generated list of options is then input as a prompt to the generative AI model. For example, the following prompt can be used:
[1248] User Input:
[1249] Hobbies: Hiking
[1250] Favorite activity: Observing nature
[1251] Places of interest: Parks
[1252] Please suggest a holiday plan that suits the above criteria.
[1253] This system allows users to easily find the perfect holiday plan based on their hobbies and preferences, significantly reducing the time and effort required for planning.
[1254] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1255] Step 1:
[1256] The user launches the application on their device and enters information such as hobbies, favorite activities, and places of interest.
[1257] Input: Hobbies, activities, and spot information entered by the user into the device
[1258] Output: User input information stored on the device
[1259] Specifically, the user inputs information such as "hiking," "nature observation," and "park."
[1260] Step 2:
[1261] The terminal receives the entered user information and converts it into JSON format.
[1262] Input: Information entered by the user
[1263] Output: User information converted to JSON format
[1264] Specifically, the device uses Python's json library to convert the data into JSON format.
[1265] Step 3:
[1266] The terminal sends the converted JSON data to the server as an HTTP request.
[1267] Input: User information in JSON format
[1268] Output: HTTP request sent to the server
[1269] Specifically, the device uses Python's requests library to send JSON data to the server.
[1270] Step 4:
[1271] The server receives the HTTP request and parses the JSON data to obtain the user information.
[1272] Input: JSON data sent as an HTTP request
[1273] Output: Parsed user information
[1274] Specifically, the server parses the JSON data using Python's json library.
[1275] Step 5:
[1276] The server extracts important key information from the user information, such as hobbies, favorite activities, and places of interest.
[1277] Input: Parsed user information
[1278] Output: Extracted key information (hobbies, activities, locations)
[1279] Specifically, the server sequentially analyzes the user information and extracts the necessary key information.
[1280] Step 6:
[1281] The server sends an SQL query to the database based on the extracted key information to search for related tourist spots, event information, and activity information.
[1282] Input: Extracted key information
[1283] Output: Search results for tourist attractions, event information, and activity information
[1284] Specifically, the server executes the appropriate SQL queries against the MySQL database.
[1285] Step 7:
[1286] The server compares the received search results with the user's interests and tastes, and calculates the degree of matching for each result.
[1287] Input: Search results received from the database
[1288] Output: The calculated matching score for each result
[1289] Specifically, the server calculates the degree of matching using Python's numpy library.
[1290] Step 8:
[1291] The server picks out spots and activities that are highly likely to match and generates a list of specific plan candidates.
[1292] Input: Search results with calculated matching scores
[1293] Output: Specific plans as a list of candidates
[1294] Specifically, the server selects spots and activities based on certain criteria and creates a candidate list.
[1295] Step 9:
[1296] The server converts the generated candidate list into JSON format and sends it to the terminal as an HTTP response.
[1297] Input: Generated candidate list
[1298] Output: A list of candidates in JSON format sent as an HTTP response.
[1299] Specifically, the server uses Python's json library to convert the candidate list into JSON format and generate an HTTP response.
[1300] Step 10:
[1301] The terminal analyzes the received candidate list and displays it in a format that is easy for the user to view.
[1302] Input: JSON format candidate list received as an HTTP response
[1303] Output: A user-friendly list of suggestions
[1304] Specifically, the device uses HTML and JavaScript to display the contents of the candidate list to the user.
[1305] This series of steps allows users to easily find the perfect holiday plan based on their interests and preferences.
[1306] (Application example 1)
[1307] 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."
[1308] Conventional food delivery systems lacked the functionality to provide delivery options tailored to users' hobbies and interests, and were limited to simply delivering meals. As a result, users were unable to receive comprehensive recommendations for optimal ways of spending time and activities based on their hobbies and preferences, resulting in a decline in convenience and satisfaction.
[1309] 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.
[1310] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means for searching a database for optimal activities, spots, and delivery services based on the extracted hobbies and preferences, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities, spots, and delivery services, and means for providing the generated candidate list to the user. This allows the user to receive an integrated recommendation of activities, spots, and related food delivery services that best match their hobbies and preferences.
[1311] "User input information" is information that indicates the user's hobbies, favorite activities, places of interest, favorite types of cuisine, etc.
[1312] "Analysis" is the process of examining the received user input in detail and extracting important elements and keywords.
[1313] "Hobbies and preferences" refers to a user's specific interests and preferences, especially preferences for activities and places.
[1314] "Database" means a collection of information that systematically stores information about related activities, places, and food delivery services.
[1315] "Search" is the process of finding information within a database that matches the user's interests and preferences.
[1316] "Matching degree" is an index that evaluates the degree of match between a user's hobbies and interests and the activities, spots, and distribution services in the database.
[1317] "Evaluation" is the process of selecting the best candidates for the user based on the information in the search results.
[1318] A "candidate list" is a list of activities, places, and streaming services that best match a user's interests and preferences.
[1319] "Providing" is the act of visually or informationally showing the generated candidate list to the user.
[1320] "Delivery service" refers to the function of providing products and services that users want, such as food delivery.
[1321] The system of this invention aims to enable users to find the best activities, spots, and delivery services using their smartphones or other devices. Users input their hobbies, favorite activities, places of interest, and favorite types of cuisine through a dedicated application.
[1322] The system is structured as follows: First, the user's device receives input information, converts it into a format such as JSON, and sends it to the server. This information includes the user's hobbies, favorite activities, places of interest, and favorite types of cuisine.
[1323] The server analyzes the received user information and extracts important keywords from it. Based on the extracted keywords, it searches a database for related activities, spots, and food delivery services. This information is searched using a query language such as SQL.
[1324] The server, which receives the search results, compares them with the user's interests and tastes and calculates the degree of matching. The degree of matching is an evaluation index for selecting candidates that best match the user's preferences. The server then generates a list of candidates for activities, spots, and streaming services with high matching degrees.
[1325] Once the candidate list is generated, the server provides it to the user's device, which displays it in an organized format and includes detailed information about each activity or spot (such as location, activity content, recommended time, and delivery options).
[1326] For example, if a user inputs that they are interested in "cafe hopping," "espresso," and enjoy "nature watching," the system will generate the following list of suggestions:
[1327] 1. Recommended Plan 1: Nature Observation and Cafe Hopping
[1328] Location: Nearby park
[1329] Activities: Nature watching, photography, and espresso at the park's cafe
[1330] 2. Recommended Plan 2: Espresso Delivery
[1331] Delivery service: Espresso delivery from partner cafes
[1332] Activity: Enjoy espresso at home
[1333] Additionally, the system provides prompts to input to the generative AI model, such as:
[1334] "Please describe a system that suggests the best way to spend a holiday based on a user's hobbies and interests. In particular, please describe the process for suggesting the best plan for a user who is interested in cafe hopping, nature watching, and espresso."
[1335] In this way, users can easily find activities that match their interests and preferences, as well as the best food delivery services, through the system.
[1336] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1337] Step 1:
[1338] When the user's device starts up, the application displays an interface for entering the user's hobbies, favorite activities, places of interest, and favorite types of cuisine. The user enters their information through this interface. The entered information is converted into a standard format such as JSON and sent to the server. The input of this step is the user's hobbies and preferences, and the output is JSON format data.
[1339] Step 2:
[1340] The server parses the JSON data received from the user's device using a JSON parser to extract important information such as the user's hobbies, favorite activities, points of interest, and favorite cuisine. The input of this step is the received JSON data, and the output is the extracted information about the user's hobbies and preferences.
[1341] Step 3:
[1342] The server sends a query to the database based on the extracted user's interests. The query is written in a query language such as SQL, and the database is searched based on the query. The search targets related activities, spots, and food delivery services. The input of this step is the extracted user information and the query, and the output is related information retrieved from the database.
[1343] Step 4:
[1344] The server calculates the degree of matching between the user's interests and preferences based on the information retrieved from the database. This calculation uses a quantitative algorithm to evaluate the degree of matching between each activity, spot, and food delivery service. The input of this step is the information retrieved from the database, and the output is the degree of matching between each option.
[1345] Step 5:
[1346] The server generates a candidate list from activities, spots, and food delivery services with high matching scores. The generated candidate list includes detailed information about each activity and spot, such as location, activity content, recommended time, and delivery options. The input of this step is the result of the matching score calculation, and the output is the candidate list.
[1347] Step 6:
[1348] The server sends the generated candidate list to the user's device. The user's device displays the received candidate list in an easy-to-read format. The display format can be a list format or a popup with detailed information. The input of this step is the candidate list, and the output is the visual display information provided to the user.
[1349] Step 7:
[1350] The user selects the best activities, places to visit, and food delivery options based on the provided list of options. The user's selection is fed back to the server through the application and used for future suggestions. The input of this step is the user's selected options, and the output is the feedback data.
[1351] 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.
[1352] This invention combines an emotion engine with a system that proposes optimal holiday plans based on the user's hobbies and preferences. The specific configuration and operation of this system will be described below.
[1353] First, a user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The emotion engine then recognizes the user's current emotional state. For example, if a user inputs hobbies such as "hiking," "cafe-hopping," and "visiting art galleries," the emotion engine may recognize the user's emotions as "excited," "relaxed," or "curious."
[1354] The device receives this user information and emotion information, converts it into a format such as JSON, and sends it to the server.
[1355] The server analyzes the received user information and emotional information. It extracts key information about the user's hobbies and interests (e.g., "hiking," "nature observation," "parks") and takes into account the user's current emotions based on the emotional state recognized by the emotion engine. For example, if the user wants to relax, it will suggest plans for a quiet park or museum, while if the user is excited, it will suggest plans for an active hike or sports.
[1356] The server sends queries to the database to search for relevant tourist attractions and activity information. After receiving the search results, the server compares the data with the user's hobbies, interests, and emotional state to calculate the degree of matching. For example, if the server determines using the emotion engine data that the user is currently seeking relaxation, it will rate relaxing activities as a high match.
[1357] Next, the server generates a list of spots and activities with the highest matching score based on the evaluation results, along with detailed information about each candidate (location, activity content, recommended time, etc.).
[1358] Finally, the server sends the generated candidate list to the device via an HTTP response. The device receives this response, parses it, and displays it in a user-friendly format. The candidate list includes the title of each plan and detailed information (location, activity content, time slot, etc.).
[1359] This system allows users to easily find the perfect holiday plan based on their preferences and current emotional state, significantly reducing the time and effort required for planning.
[1360] As a concrete example, if the user is interested in "hiking," "nature observation," and "parks," and is currently feeling like relaxing, the server will generate the following candidate list:
[1361] 1. Recommended Plan 1: Relax in the Park
[1362] Location: Quiet Park A
[1363] Activities: Nature observation, relaxing walks
[1364] Hours: 10:00~12:00
[1365] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[1366] Location: Market B, Cafe C
[1367] Activities: Shopping, relaxing lunch at a cafe
[1368] Hours: 12:00~14:00
[1369] 3. Recommended plan 3: Visiting art galleries at museums
[1370] Location: Museum D
[1371] Activities: Quiet viewing of art galleries
[1372] Hours: 14:00~16:00
[1373] Based on this example, users can get a relaxing holiday plan that matches their emotional state, providing a more fulfilling and mentally satisfying way to spend their holidays.
[1374] The processing flow will be explained below.
[1375] Step 1:
[1376] The user launches the application. The user enters information about their hobbies, favorite activities, and places of interest into an input form. For example, the user enters hobbies such as "hiking," "cafe hopping," and "visiting art galleries."
[1377] Step 2:
[1378] The emotion engine recognizes the user's current emotional state in real time, for example by analyzing the user's facial expressions and voice to identify emotions such as "relaxed" or "excited."
[1379] Step 3:
[1380] The device converts the input user information and recognized emotion information into JSON format, and then sends this JSON data to the server via an HTTP POST request.
[1381] Step 4:
[1382] The server analyzes the received user information and emotional information. The server parses the JSON format data, extracts key information about hobbies and interests (e.g., "hiking," "nature observation," "parks," etc.), and also takes into account the emotional state recognized by the emotion engine.
[1383] Step 5:
[1384] The server queries the database to find relevant tourist spots and activities. The server retrieves specific spots and activities based on the user's interests and emotional state. For example, "Park A," "Museum B," etc.
[1385] Step 6:
[1386] The server compares the information retrieved from the database with the user's information and calculates the degree of matching. The server uses data from the emotion engine to make an evaluation that reflects the user's current emotional state. For example, a user seeking a relaxing experience might be rated as highly matching a "quiet park."
[1387] Step 7:
[1388] Based on the evaluation results, the server generates a list of spots and activities with the highest matching potential. The server then compiles the list of candidates and detailed information about each activity into an easy-to-read list. For example, "nature observation and photography in a park" or "visiting an art gallery at a museum."
[1389] Step 8:
[1390] The server sends the generated candidate list to the terminal as an HTTP response, and the terminal receives and analyzes the response.
[1391] Step 9:
[1392] The device receives a list of options and displays it in an easy-to-read format for the user. The list includes the title of each plan and detailed information (location, activity content, recommended time, etc.). For example, "Nature observation and relaxation at Park A," or "Shopping and lunch at Market B and Cafe C."
[1393] Through the above process, the user can quickly and easily find holiday plans that best suit their tastes and current emotional state.
[1394] Example 2
[1395] 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."
[1396] Conventional systems provide activity suggestions based on a user's hobbies and preferences, but are unable to provide optimal suggestions that take into account the user's current emotional state. Furthermore, planning requires a significant amount of time and effort, placing a significant burden on users. Furthermore, the limited number of plan options offered results in insufficient user satisfaction.
[1397] 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.
[1398] In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and emotional state and extracting the user's hobbies, preferences, and emotional state, means for searching a database for optimal activities and spots based on the extracted hobbies, preferences, and emotional state, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, and means for providing the generated candidate list to the user. This allows the server to propose optimal holiday plans based on the user's hobbies, preferences, and current emotional state, thereby reducing the time and effort required for planning.
[1399] "User" means an individual who uses the System to find activities and travel plans.
[1400] "Input information" refers to information such as hobbies, interests, and current emotional state that a user provides to the system.
[1401] "Emotional state" refers to the psychological state the user is feeling, and includes information such as "I want to relax" or "I'm excited."
[1402] "Hobbies and tastes" refers to the activities and interests that users prefer.
[1403] "Activity" refers to a specific action or event suggested to a User through the System.
[1404] "Spots" refer to specific locations or tourist attractions suggested to users.
[1405] "Search means" refers to an algorithm or program that searches a database for relevant activities and spots based on the user's interests, tastes and emotional state.
[1406] "Matching degree" refers to an index that evaluates the degree of compatibility with the user's hobbies and emotional state.
[1407] "Candidate List" refers to a list of optimal activities and spots generated by the server to provide to the user.
[1408] This invention is a system that proposes optimal holiday plans based on a user's hobbies, preferences, and current emotional state. The system consists of a terminal that receives and analyzes user input information, and a server that searches, evaluates, and provides activities and spots based on the analysis results.
[1409] User information input and data submission
[1410] First, the user launches the application on a device such as a smartphone or PC and inputs information such as hobbies, favorite activities, and places of interest, as well as their current emotional state. For example, the user inputs hobby information such as "hiking," "cafe hopping," and "visiting art galleries," and emotional information such as "I want to relax."
[1411] The device receives this input information, converts it into a format such as JSON, and sends it to the server. For example, data like "{ 'Hobbies': ['Hiking', 'Café Hopping', 'Art Gallery Visiting'], 'Emotions': 'Relaxing'}" is generated.
[1412] Data analysis and search on the server
[1413] The server receives the data sent from the device and analyzes the user's hobbies, interests, and emotional state. During the analysis, key information such as "hiking," "nature observation," and "park" is extracted, and the user's emotional state (e.g., "relaxation") is also taken into account.
[1414] The server then queries the database for relevant tourist attractions and activities, returning information such as "quiet parks," "markets," and "museums."
[1415] Calculating matching scores and generating candidate lists
[1416] The server compares the received data with the user's hobbies, interests, and emotional state, and calculates the degree of matching using the emotion engine data. For example, if it is determined that the user is "seeking relaxation," activities such as quiet parks and museums will be rated highly as a match.
[1417] Based on the evaluation results, a list of spots and activities with the highest matching score is generated. The generated list of candidates includes detailed information about each candidate (location, content, recommended time, etc.). Examples of plans include:
[1418] 1. Recommended Plan 1: Relax in the Park
[1419] Location: Quiet park
[1420] Activities: Nature observation, relaxing walks
[1421] Hours: 10:00~12:00
[1422] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[1423] Location: Market, Cafe
[1424] Activities: Shopping, relaxing lunch at a cafe
[1425] Hours: 12:00~14:00
[1426] 3. Recommended plan 3: Visiting art galleries at museums
[1427] Location: Museum
[1428] Activities: Quiet viewing of art galleries
[1429] Hours: 14:00~16:00
[1430] Providing a candidate list
[1431] Finally, the server sends the generated candidate list to the device via an HTTP response. The device receives this response, parses it, and displays it in a format that is easy for the user to view. The user can view the title and detailed information of each plan (location, activity content, time slot, etc.) through the application.
[1432] Prompt Sentence Examples
[1433] "I'm in the mood to relax and I'm interested in hiking and nature observation. Please suggest some recommended activity plans for me right now."
[1434] This system allows users to easily find the perfect holiday plan based on their preferences and current emotional state, significantly reducing the time and effort required for planning.
[1435] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1436] Step 1:
[1437] A user launches an application on a device and inputs their hobbies, favorite activities, points of interest, and current emotional state.
[1438] Input: Hobbies (e.g., "Hiking," "Café Hopping," "Visiting Art Galleries"), Emotional State (e.g., "I Want to Relax")
[1439] Output: Input screen displayed on the terminal
[1440] Step 2:
[1441] The terminal receives the user's input information and converts it into JSON format.
[1442] Input: User-entered information about hobbies and emotional states
[1443] Data processing: Converting to JSON format (e.g., "{ 'Hobbies': ['Hiking', 'Café hopping', 'Visiting art galleries'], 'Emotions': 'Relaxing'}")
[1444] Output: JSON data
[1445] Step 3:
[1446] The device sends the generated JSON data to the server.
[1447] Input: JSON data
[1448] Data calculation: Data transmission processing
[1449] Output: User input sent to the server
[1450] Step 4:
[1451] The server analyzes the JSON data received from the device and extracts the user's hobbies, interests, and emotional state.
[1452] Input: Received JSON data
[1453] Data calculation: JSON data analysis (extracting interests and emotional states)
[1454] Output: Extracted hobby and emotion information (e.g., "Hobbies: hiking, nature observation, parks; Emotion: relaxing")
[1455] Step 5:
[1456] The server uses the extracted information to send queries to a database to search for related activities and spots.
[1457] Input: Extracted hobbies and emotions
[1458] Data calculation: Generate and submit a database search query (e.g., "SELECT FROM Spots WHERE Hobbies IN ('Hiking', 'Nature Observation', 'Parks')").
[1459] Output: Spot and activity information returned from the database
[1460] Step 6:
[1461] The server compares the received data with the user's hobbies, interests, and emotional state to calculate the degree of matching.
[1462] Input: Spot and activity information received from the database
[1463] Data calculation: Calculation of matching degree (e.g., "Evaluate the compatibility between users seeking relaxation and each spot")
[1464] Output: Matching evaluation result
[1465] Step 7:
[1466] Based on the evaluation results, the server generates a list of candidate spots and activities with the highest matching potential.
[1467] Input: Matching evaluation result
[1468] Data processing: generating candidate lists (e.g., "creating a list of the best activities and spots")
[1469] Output: A list of suggestions (e.g., "Relaxing in the park, having lunch at a quiet cafe, and looking at art at a museum")
[1470] Step 8:
[1471] The server sends the generated candidate list to the terminal as an HTTP response.
[1472] Input: Suggestion list
[1473] Data operations: generating and sending HTTP responses
[1474] Output: Candidate list sent to terminal
[1475] Step 9:
[1476] The terminal receives the response, analyzes it, and displays it in a user-friendly format.
[1477] Input: Candidate list received from the server
[1478] Data processing: Parsing the response and converting it to a display format
[1479] Output: A list of options to be displayed to the user (e.g., "Plan 1: Relax in the park, Plan 2: Lunch at a cafe, Plan 3: View art at a museum")
[1480] (Application example 2)
[1481] 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."
[1482] Conventional systems primarily suggest activities and spots based on a user's hobbies and preferences, but do not take into account the user's current emotional state. As a result, appropriate suggestions that match the user's current mood and emotions are not provided, leading to a decrease in satisfaction. Furthermore, there is a demand for systems that not only suggest activities and spots but also recommend related products and services at the same time. However, no systems exist that can provide these comprehensive services. The present invention aims to solve these problems and provide a system that suggests optimal activities and spots based on a user's hobbies, preferences, and emotional state, and recommends related products and services.
[1483] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving user input information, means for analyzing the received user input information and extracting the user's hobbies and preferences, means including an emotion engine for analyzing the user's current emotional state, means for searching a database for optimal activities and spots based on the extracted hobbies and preferences and the analyzed emotional state, means for evaluating the degree of matching from the search results and generating a candidate list of optimal activities and spots, means for providing the generated candidate list to the user, and means for recommending products and services based on the candidate list. This makes it possible to not only suggest activities and spots that are suited to the user's hobbies, preferences, and emotional state, but also to simultaneously recommend related products and services.
[1484] "User input information" refers to information such as hobbies, favorite activities, and places of interest that a user provides to the system.
[1485] "Hobbies and tastes" refers to the tendencies and characteristics of activities, places, themes, etc. that a user is interested in.
[1486] An "emotion engine" is a technology that analyzes a user's current emotional state and acquires that emotional information.
[1487] A "database" is an information management system that stores information on activities, spots, and related products and services.
[1488] "Matching degree" is an index that evaluates how well the suggested activities and spots match the user's hobbies, tastes, and emotional state.
[1489] A "candidate list" is a list that compiles detailed information about the most suitable activities and spots from the search results.
[1490] "Product and service recommendation" refers to suggesting related products and services based on a user's tastes, preferences and emotional state.
[1491] The present invention relates to a system that suggests optimal activities and spots based on a user's hobbies, preferences, and current emotional state, and also recommends related products and services.
[1492] The process begins when a user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The device receives this user information, and the emotion engine recognizes the user's current emotional state. For example, if a user inputs hobbies such as "hiking," "cafe hopping," and "visiting art galleries," the emotion engine may recognize the user's emotions as "excited," "relaxed," or "curious."
[1493] The device receives this user information and emotion information, converts it into a format such as JSON, and sends it to the server. The server then analyzes the received user information and emotion information. It extracts key information related to the user's hobbies and interests (e.g., "hiking," "nature observation," "parks") and takes into account the user's current emotions based on the emotional state recognized by the emotion engine. For example, if the user wants to relax, plans for a quiet park or museum will be suggested, while if the user is excited, plans for an active hike or sports will be suggested.
[1494] The server then queries the database to find relevant tourist attractions and activities. After receiving the search results, the server compares them with the user's hobbies, interests, and emotional state to calculate the degree of matching. Furthermore, if the server determines that the user is currently seeking relaxation using the emotion engine data, it will rate relaxing activities as a high match.
[1495] The server then generates a list of spots and activities with the highest matching potential based on the evaluation results. This list also includes detailed information about each candidate (location, activity content, recommended time, etc.). Finally, the server sends the generated candidate list to the device as an HTTP response. The device receives this response, analyzes it, and displays it in a format that is easy for the user to view.
[1496] As a concrete example, if the user is interested in "hiking," "nature observation," and "parks," and is currently feeling like relaxing, the server can generate the following candidate list:
[1497] 1. Recommended Plan 1: Relax in the Park
[1498] Location: Quiet park
[1499] Activities: Nature observation, relaxing walks
[1500] Recommended time: 10:00~12:00
[1501] 2. Recommended Plan 2: Market Tour and Lunch at a Relaxing Cafe
[1502] Location: Market, Cafe
[1503] Activities: Shopping, relaxing lunch at a cafe
[1504] Recommended time: 12:00~14:00
[1505] 3. Recommended plan 3: Visiting art galleries at museums
[1506] Location: Museum
[1507] Activities: Art gallery visits
[1508] Recommended time: 14:00~16:00
[1509] Additionally, recommendations for related products and services are provided, such as aroma oils, yoga mats, and relaxation music for users who want to relax.
[1510] An example of a prompt to input to a generative AI model is, "Based on the user's emotional state, suggest products and activities that will help them relax."
[1511] The hardware required includes a user device such as a smartphone or smart glasses, a server, and an emotion analysis engine. The software includes an algorithm for matching analysis results with a database and an API for processing HTTP responses.
[1512] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1513] Step 1:
[1514] A user launches the application on their device and inputs information such as hobbies, favorite activities, and places of interest. The input information is received by the device as the user's hobbies and preferences. In this example, we assume the user inputs information such as "hiking," "cafe hopping," and "visiting art galleries." The input data is saved in text format and used for subsequent analysis.
[1515] Step 2:
[1516] The device analyzes the received user input information and uses an emotion engine to recognize the user's current emotional state. For example, the emotion engine analyzes emotional states such as "excitement," "relaxation," and "curiosity." The input data is categorized into hobbies, preferences, and emotional states and converted into a format such as JSON.
[1517] Step 3:
[1518] The device converts the analyzed user information and emotion information into JSON format and sends it to the server. The server receives this JSON data and temporarily stores it as data for processing. The input data is compared with the user database to extract the necessary information.
[1519] Step 4:
[1520] The server analyzes the received user's hobby and preference information and emotional state, and searches a database for the most suitable activities and spots. Based on the user's interests and current emotional state, the server searches for quiet spots for users who want to relax, and active spots for users who are excited. The server uses user information in JSON format as input data and retrieves relevant information through database queries.
[1521] Step 5:
[1522] The server evaluates the degree of matching from the search results and generates a list of candidate activities and spots that best suit the user's interests, tastes, and emotional state. Using spot information retrieved from the database and the user's interests, tastes, and emotional state as input, the algorithm calculates the degree of matching. The generated list includes detailed information (location, activity content, recommended time, etc.).
[1523] Step 6:
[1524] The server sends the generated candidate list to the terminal as an HTTP response. The terminal receives this response, parses it into a user-friendly format, and displays it. The input data is the generated candidate list, and a user-friendly list is created as the output.
[1525] Step 7:
[1526] The device then recommends related products and services based on the candidate list. In this process, aroma oils and yoga mats are recommended to users seeking relaxation. The input data is the generated candidate list, and the output is a list of recommended products and services.
[1527] As a concrete example, a prompt sentence to be input to the generative AI model would be, "Based on the user's emotional state, suggest products and activities that will help them relax."
[1528] 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.
[1529] 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.
[1530] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1531] 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.
[1532] 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.
[1533] 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.
[1534] 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).
[1535] 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.
[1536] 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."
[1537] 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.
[1538] 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).
[1539] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1540] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1541] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1542] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1543] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1544] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1545] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1546] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1547] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1548] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1549] The following is further disclosed regarding the above embodiment.
[1550] (Claim 1)
[1551] means for receiving user input;
[1552] A means for analyzing the received input information of the user and extracting the user's interests and preferences;
[1553] A means for searching a database for the most suitable activities and spots based on the extracted hobbies and preferences;
[1554] A method for evaluating the degree of matching from search results and generating a list of suitable activities and spots;
[1555] The system includes a means for providing the generated candidate list to a user.
[1556] (Claim 2)
[1557] The system according to claim 1, further comprising an algorithm for calculating the degree of matching of activities and spots based on the user's hobbies and preferences.
[1558] (Claim 3)
[1559] 10. The system of claim 1, wherein the candidate list provided to the user includes detailed information about each activity or spot.
[1560] "Example 1"
[1561] (Claim 1)
[1562] means for receiving user input;
[1563] A means for analyzing the received input information of the user and extracting the user's interests and preferences;
[1564] A means for searching a database for the most suitable activities and spots based on the extracted hobbies and preferences;
[1565] A method for evaluating the degree of matching from search results and generating a list of suitable activities and spots;
[1566] a means for providing the generated candidate list to a user;
[1567] The system includes means for inputting the provided information as a prompt sentence to a generative AI model.
[1568] (Claim 2)
[1569] The system according to claim 1, further comprising an algorithm for calculating the degree of matching of activities and spots based on the user's hobbies and preferences.
[1570] (Claim 3)
[1571] 10. The system of claim 1, wherein the candidate list provided to the user includes detailed information about each activity or spot.
[1572] "Application Example 1"
[1573] (Claim 1)
[1574] means for receiving user input;
[1575] A means for analyzing the received input information of the user and extracting the user's interests and preferences;
[1576] A means for searching a database for optimal activities, spots, and distribution services based on the extracted hobbies and preferences;
[1577] A means for evaluating the degree of matching from the search results and generating a list of optimal activities, spots, and delivery services;
[1578] The system includes a means for providing the generated candidate list to a user.
[1579] (Claim 2)
[1580] The system according to claim 1, further comprising an algorithm for calculating a matching degree of activities, spots, and distribution services based on a user's hobbies and preferences.
[1581] (Claim 3)
[1582] 10. The system of claim 1, wherein the candidate list provided to the user includes detailed information about each activity, spot, and delivery service.
[1583] "Example 2: Combining Emotion Engines"
[1584] (Claim 1)
[1585] means for receiving user input;
[1586] A means for analyzing the received input information and emotional state of the user and extracting the user's hobbies, preferences and emotional state;
[1587] A means for searching a database for optimal activities and spots based on the extracted hobbies, preferences and emotional state;
[1588] A method for evaluating the degree of matching from search results and generating a list of suitable activities and spots;
[1589] The system includes a means for providing the generated candidate list to a user.
[1590] (Claim 2)
[1591] The system according to claim 1, further comprising an algorithm for calculating a matching degree of activities and spots based on the user's hobbies, preferences and emotional state.
[1592] (Claim 3)
[1593] 10. The system of claim 1, wherein the candidate list provided to the user includes detailed information about each activity or spot.
[1594] "Application example 2 when combining emotion engines"
[1595] (Claim 1)
[1596] means for receiving user input;
[1597] A means for analyzing the received input information of the user and extracting the user's interests and preferences;
[1598] means including an emotion engine for analyzing a current emotional state of a user;
[1599] A means for searching a database for optimal activities and spots based on the extracted hobbies and preferences and the analyzed emotional state;
[1600] A method for evaluating the degree of matching from search results and generating a list of suitable activities and spots;
[1601] a means for providing the generated candidate list to a user;
[1602] A system that includes a means for recommending goods and services based on a candidate list.
[1603] (Claim 2)
[1604] The system according to claim 1, further comprising an algorithm for calculating a matching degree of activities and spots based on a user's hobbies, preferences and emotional state.
[1605] (Claim 3)
[1606] 10. The system of claim 1, wherein the candidate list provided to the user includes detailed information about each activity or spot, along with recommendations for related products and services. [Explanation of symbols]
[1607] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. means for receiving user input; A means for analyzing the received input information of the user and extracting the user's interests and preferences; A means for searching a database for the most suitable activities and spots based on the extracted hobbies and preferences; A method for evaluating the degree of matching from search results and generating a list of suitable activities and spots; The system includes a means for providing the generated candidate list to a user.
2. The system according to claim 1, further comprising an algorithm for calculating a matching degree of activities and spots based on the user's hobbies and preferences.
3. 10. The system of claim 1, wherein the candidate list provided to the user includes detailed information about each activity or spot.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A