System
The system addresses the lack of personalized navigation by generating routes based on user preferences and interests, and dynamically updating routes and spots based on real-time conditions, providing a more satisfying driving experience.
Patent Information
- Application Number
- JP2024117294
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-22
- Publication Date
- 2026-02-03
AI Technical Summary
Existing navigation systems fail to provide personalized driving experiences tailored to individual user preferences and interests, and lack the ability to dynamically update routes based on real-time traffic and weather conditions, making them less convenient and less satisfying for users.
A system that includes means for acquiring location information, user preferences and interests, generating personalized routes, suggesting interesting spots, and dynamically updating navigation based on real-time traffic and weather conditions, using machine learning to identify similar user groups and optimize routes.
Enables personalized driving experiences by suggesting spots and routes based on user interests, and dynamically adapting to real-time conditions, enhancing user satisfaction and enjoyment.
Smart Images

Figure 2026016204000001_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] Many people today want to explore new places, but often find it difficult to decide where to go and which route to take. In particular, the lack of personalized suggestions tailored to individual preferences makes it difficult to provide a satisfying driving experience for users with diverse tastes. This invention aims to address this issue by providing a system that generates driving routes based on a user's preferences and interests, and suggests interesting spots, unknown tourist destinations, local gourmet food, and more. [Means for solving the problem]
[0005] This invention provides a system including: means for acquiring location information; means for acquiring and storing information about a user's preferences and interests; means for generating a series of routes based on the user's preferences and interests and the location information; means for suggesting interesting spots along the generated routes; and means for updating and displaying navigation information in real time. The system further includes means for comparing and analyzing profile data of other users to identify user groups with similar interests, and means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing the route and suggested spots, thereby providing a personalized and satisfying driving experience for users with diverse tastes.
[0006] "Means for acquiring location information" refers to a system or device for electronically acquiring the geographical location of a user, such as their current location, starting point, or destination.
[0007] "Means for acquiring and storing information about user preferences and interests" refers to a system or device that collects data entered by a user about their hobbies and preferences and stores it over the long term.
[0008] The "means for generating a set of routes" refers to a system or device for calculating and designing an optimal travel route based on acquired location information and the user's preferences and interests.
[0009] "Means for suggesting interesting spots along the generated route" refers to a system or device for introducing points such as tourist attractions and shops that suit the user's preferences along the generated route.
[0010] "Means for updating and displaying navigation information in real time" refers to a system or device for providing the latest navigation information to a user on the move in real time and displaying it on a screen or the like.
[0011] "Means for comparing and analyzing profile data of other users" refers to a data analysis system or device for comparing profile data of multiple users and identifying groups with similar interests and preferences.
[0012] "Means for obtaining information necessary to provide real-time updates based on traffic and weather conditions" refers to a system or device that collects data on current traffic and weather conditions and provides the user with up-to-date information.
[0013] "Means for dynamically changing routes and suggested spots" refers to a system or device for updating and optimizing existing route and spot suggestions in real time based on the latest information obtained. [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] This system is designed to generate personalized driving routes based on the user's preferences and interests, and to suggest interesting spots, unknown tourist destinations, local gourmet food, etc. The program processing of this system is explained below.
[0036] Creating and Updating User Profiles
[0037] When a user first uses the application, they input information about their preferences and interests, such as "nature," "history," and "food." The device collects this information and sends it to the server. The server stores the information in a database and creates a user profile.
[0038] If a user wants to add a new interest, for example, they can set "outdoors" as a new hobby. In this case, the information is sent from the device to the server and the profile is updated.
[0039] Find Similar Profiles
[0040] The server periodically analyzes all stored user profile data using machine learning algorithms to identify user groups with similar interests, improving the accuracy of personalized suggestions by taking into account the spots and gourmet information that other users are interested in.
[0041] Location and route calculation
[0042] When a user plans a drive, they input their starting point and destination into their device. GPS is used to obtain their current location, which is then sent along with the starting point information to the server. The server then calculates the optimal driving route based on the user's current location, destination, and user profile.
[0043] Spot suggestions and route display
[0044] The calculated route includes interesting spots that match the user's preferences. For example, if the user is interested in "hot springs" and "local cuisine," hot springs and well-received local restaurants along the way will be suggested. This information is sent from the server to the device and displayed as a route and spots on a map.
[0045] Navigation and real-time updates
[0046] Once the user starts driving, the device provides real-time navigation, constantly checking the user's current location using GPS and providing directions. The server monitors traffic and weather conditions and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, an alternative route is calculated and sent to the device.
[0047] If a new interesting spot is discovered while driving, the server will notify the device and recommend that the user visit. For example, one day, a notification may appear saying, "A new cafe has opened nearby."
[0048] Specific examples
[0049] As a concrete example, suppose User A is interested in "nature" and "cafes." User A sets his starting point as Tokyo and his destination as Karuizawa. Based on the user's information, the server calculates a driving route from Tokyo to Karuizawa and suggests spots along the way, such as "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device provides real-time guidance and also displays information about spots along the way.
[0050] This series of processes allows users to enjoy a driving experience based on their own preferences and interests. Also, by incorporating the experiences and preferences of other users, it is possible to provide new discoveries and enjoyment.
[0051] The processing flow will be explained below.
[0052] Step 1: Enter your user information
[0053] When a user uses the application for the first time, they enter information such as their username, age, and interests (e.g., nature, history, gourmet food, etc.). The device receives this information and sends it to the server.
[0054] Step 2: Create a user profile
[0055] The server stores the received user information in a database and creates a profile for the user.
[0056] Step 3: Update your profile
[0057] When a user adds a new interest or preference, for example, entering an interest in "hot springs," the device sends the updated information to the server, which then updates the profile.
[0058] Step 4: Analyzing other user profiles
[0059] The server compares and analyzes the stored profile data of all users using machine learning algorithms to identify groups of users with similar interests.
[0060] Step 5: Set your origin and destination
[0061] The user inputs the departure point and destination into the terminal, and this location information, including the current location, is sent to the server.
[0062] Step 6: Route calculation
[0063] The server calculates the optimal route from the origin to the destination, inserting points of interest from the user's profile along the route as appropriate.
[0064] Step 7: Propose a spot
[0065] The server sends the calculated route and information about points of interest along the route to the device, which receives it and displays it on a map.
[0066] Step 8: Start Navigation
[0067] Once the user starts driving, the device provides real-time navigation, using GPS to constantly check the user's current location and provide directions and directions to the next stop.
[0068] Step 9: Real-time updates
[0069] The server monitors traffic and weather conditions in real time and updates route and spot information as needed, sending the updated information to the device and notifying the user.
[0070] Step 10: Notification of new spots
[0071] If a new interesting spot is discovered during the drive, the server notifies the device of the information and displays a message recommending the user to visit.
[0072] In this way, each step works in succession to provide the user with a personalized driving route and navigation experience.
[0073] Example 1
[0074] 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."
[0075] Conventional navigation systems simply present the shortest routes and standard tourist spots without considering the user's preferences or interests. This prevents users from enjoying trips or drives tailored to their individual interests, making it difficult to provide a personalized experience. Furthermore, they lack the ability to dynamically update routes based on real-time traffic and weather information, making them less convenient in situations where a quick response is required. Furthermore, they lack a method for suggesting new discoveries and fun activities by utilizing other users' profile data, making it difficult to improve the quality of the user experience.
[0076] 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.
[0077] In this invention, the server includes a means for acquiring location information, a means for acquiring and storing information about a user's preferences and interests, a means for creating and updating a user profile, a means for identifying similar user groups, a means for suggesting interesting places along the generated route, and a means for updating and displaying navigation information in real time. This allows users to enjoy personalized routes based on their preferences and interests. Furthermore, suggestions utilizing other users' profile data provide new discoveries and enjoyment, and dynamic route updates based on real-time traffic and weather information are possible.
[0078] "Means for acquiring location information" refers to a device or method for collecting information on the user's current location and the specified starting point and destination.
[0079] "Means for acquiring and storing information about user preferences and interests" refers to devices or methods for collecting user-entered interests and preferences (e.g., nature, history, gourmet food, etc.) and storing them in a database.
[0080] A "means for creating and updating a user profile" is a device or method for generating a user profile based on collected information about a user's interests and preferences, and updating that information as needed.
[0081] A "means for identifying similar user groups" is a device or method for identifying groups of users with similar interests or preferences using machine learning algorithms or data analysis techniques.
[0082] The "means for generating a set of routes" refers to a device or method for calculating and generating an optimal route based on the user's location information and profile information.
[0083] A "means for suggesting places of interest along the generated route" is a device or method for suggesting places of interest or tourist attractions along the route based on the user's interests and preferences.
[0084] "Means for updating and displaying navigation information in real time" refers to a device or method for updating navigation information based on real-time location information, traffic conditions, weather information, etc., and displaying it to the user.
[0085] "Means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing routes and suggested spots" refers to devices or methods for acquiring traffic conditions and weather information in real time, and appropriately changing routes and suggested spots based on that information.
[0086] The present invention is a system that generates a personalized driving route based on a user's preferences and interests, and suggests interesting spots, unknown tourist destinations, local gourmet food, etc. Specific embodiments are described below.
[0087] Creating and Updating User Profiles
[0088] When a user first uses an application, they launch the app and enter their preferences and interests. For example, categories include "nature," "history," and "food." The device collects this information and sends it to the server using an HTTP POST request. The server receives this information, stores it in a database, and creates a user profile. This allows the user to receive personalized suggestions based on their individual preferences.
[0089] Find Similar Profiles
[0090] The server periodically analyzes the stored profile data of all users using machine learning algorithms (e.g., K-means clustering), which identifies groups of users with similar interests. This improves the accuracy of personalized suggestions by taking into account the spots and gourmet information that other users are interested in.
[0091] Location and route calculation
[0092] When a user plans a drive, they input their starting point and destination into their device. The device uses its built-in GPS module to obtain their current location and sends it along with the starting point information to the server. The server uses this data to calculate the optimal driving route using a common map service API (e.g., Google Maps API). At this time, the server takes into account the user's profile and generates a route tailored to their individual preferences.
[0093] Spot suggestions and route display
[0094] The server searches for interesting spots that match the user's preferences along the calculated route. This is done by using spot information stored in a database or external APIs (e.g., Yelp API or TripAdvisor API). Once the spot information is determined, the server sends the optimal route including the information to the device. The device receives this information, and the route and spot information are displayed on a map application (e.g., Google Maps).
[0095] Navigation and real-time updates
[0096] Once the user starts driving, the device provides real-time navigation. It uses GPS to constantly check the user's current location and guides the user in the right direction. The server monitors traffic and weather conditions in the backend and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, the server calculates a new route and sends that information to the device. Additionally, if a new interesting spot is discovered, the server immediately sends a notification to the device. An example of a notification might be a message like, "A new cafe has opened nearby."
[0097] Examples of specific examples and prompts
[0098] For example, if User A is interested in "nature" and "cafes," he or she can set the starting point as Tokyo and the destination as Karuizawa. Based on the user's profile and current location, the server calls the Google Maps API to calculate the optimal driving route from Tokyo to Karuizawa. Suggested spots along the way include "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device provides real-time guidance and displays information about spots along the way.
[0099] An example of a prompt for a generative AI model might be, "Please suggest a driving route from Tokyo to Karuizawa where you can enjoy nature and cafes." Using this prompt, a personalized route can be provided.
[0100] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0101] Detailed description of the processing steps
[0102] Step 1: Create a user profile
[0103] When a user launches the application for the first time, they enter their preferences and interests (e.g., "nature," "history," and "food"). The device collects this information, composes a packet in JSON format, and sends it to the server using an HTTP POST request. At this point, the input is information about the user's preferences and interests, and the output is data to be sent to the server. The server saves the received information in a database and initializes and creates a user profile.
[0104] Step 2: Update your user profile
[0105] When a user wants to add a new interest or preference, they enter the update in the device's settings menu. For example, they want to add an interest in "outdoors." The device collects the update and sends it to the server. The input is the new preference information, and the output is an updated user profile. The server adds this information to the existing profile and updates the database.
[0106] Step 3: Find Similar Profiles
[0107] The server periodically analyzes the stored profile data of all users. It uses machine learning algorithms (e.g., K-means clustering) to identify user groups with similar interests. The input data is the profile data of all users, and the output is a list of similar user groups. This step enables personalized suggestions based on the spots and gourmet information that other users are interested in.
[0108] Step 4: Obtaining location information and calculating routes
[0109] When a user plans a drive, they input their starting point and destination into their device. The device uses its built-in GPS module to obtain their current location information and sends it to the server. The input is the starting point, destination, and current location information, and the output is a personalized driving route. The server uses this information to calculate the optimal driving route using external map services such as Google Maps API. The calculation result is personalized, taking into account information in the user profile.
[0110] Step 5: Spot suggestions and route display
[0111] The server searches for interesting spots that match the user's preferences along the calculated route. It uses spot information stored in a database and data from external APIs (e.g., Yelp API or TripAdvisor API). The input is the user's profile information and route data, and the output is a list of suggested spots. The suggested information is sent from the server to the device, and the device displays the route and spot information on a map application (e.g., Google Maps). The spots are indicated on the map with icons or pins.
[0112] Step 6: Navigation and real-time updates
[0113] Once the user starts driving, the device begins providing real-time navigation. It constantly checks the user's current location using GPS and provides turn-by-turn navigation. The server monitors real-time traffic and weather information in the backend and updates the route and suggested spots as needed. The input is real-time location information, traffic conditions, and weather information, and the output is an updated route and suggested spots. For example, if a sudden traffic jam occurs, the server calculates a new route and sends that information to the device. Additionally, if a new interesting spot is found, the server immediately sends a notification to the device.
[0114] (Application example 1)
[0115] 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."
[0116] In recent years, with the advancement of autonomous driving technology, optimization and personalization of driving routes have become increasingly important. Conventional navigation systems have difficulty suggesting spots based on the user's preferences and interests, and there is a need for a means to provide a more personalized driving experience. In addition, real-time route updates that take into account changes in traffic conditions and weather have been insufficient, so a system that can improve user satisfaction is needed.
[0117] 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.
[0118] In this invention, the server includes: means for acquiring location information; means for acquiring and storing information related to a user's preferences and interests; means for generating a set of routes based on the user's preferences and interests and the location information; means for suggesting interesting spots along the generated route; means for updating and displaying navigation information in real time; means for communicating with an external server to acquire traffic and weather information in real time; means for dynamically updating the set of routes and suggested spots based on changes in traffic and weather; means for comparing and analyzing profile data of other users to identify user groups with similar interests; means for calculating and presenting an optimal driving route that reflects the user's profile information based on a departure point and destination specified by the user; and means for notifying and suggesting new interesting places discovered while driving. This enables the provision of a personalized driving experience based on the user's preferences and interests, and improves user satisfaction by updating routes in response to changes in traffic and weather conditions in real time.
[0119] "Means of obtaining location information" refers to the function of obtaining the current location using location information services such as GPS.
[0120] "Means for obtaining and storing information about user preferences and interests" refers to the function of collecting data related to the interests and preferences entered by the user and storing it in a database.
[0121] "Means for generating a set of routes" refers to a system that calculates and creates a route from a user's preferences and interests, as well as their current location to their destination.
[0122] "Means for suggesting interesting spots" refers to a system that recommends places such as tourist attractions and restaurants that suit the user's preferences and are located on the generated route.
[0123] "Means for updating and displaying navigation information in real time" refers to an application that provides guidance to users while they are traveling, applying the latest traffic information and route changes.
[0124] "Means of communicating with an external server to obtain real-time traffic and weather information" refers to a system that receives the latest traffic and weather information from an external server using the Internet or a network.
[0125] "Means of dynamically updating the set of routes and suggested spots" refers to the ability to change calculated routes and recommended spots on the fly in response to changes in traffic and weather conditions.
[0126] "Means for comparative analysis of other users' profile data and identifying user groups with similar interests" refers to a system that analyzes stored data of other users using machine learning algorithms, etc., and classifies users with common interests.
[0127] "Means for calculating and presenting optimal driving routes that reflect user profile information" refers to a system that calculates optimal routes and provides route information based on the user's preferences and interests.
[0128] "Means of notifying and suggesting newly discovered interesting places to the user" refers to a function that notifies the user in real time of new tourist spots and facilities discovered while driving.
[0129] The system of the present invention provides a series of processes for users to enjoy personalized driving routes, allowing users to plan a drive based on their preferences and interests, and reach their destination while receiving real-time traffic and weather information.
[0130] System configuration
[0131] The system includes a terminal, a server, a GPS module, and an external database.
[0132] Creating and updating user profiles
[0133] First, a user accesses the application using their device. They input information about their preferences and interests (e.g., "nature" or "cafes"), which is then sent from the device to the server. The server stores the received information in a database and creates or updates the user's profile. For example, if the user becomes interested in "outdoors," that information is also added to the database.
[0134] Find Similar Profiles
[0135] The server uses machine learning algorithms to identify groups of users with similar interests based on stored user profile data, a process that allows the server to provide more accurate recommendations based on the places and interests recommended by other users.
[0136] Route calculation and spot suggestions
[0137] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location and sends it to the server. The server calculates the optimal driving route based on the user's current location, destination, and user profile. This calculation also includes information on external traffic and weather conditions. The calculated route includes points of interest that match the user's preferences. For example, if a user is interested in "hot springs" and "local cuisine," the route will suggest hot spring resorts and popular local restaurants.
[0138] Real-time updates
[0139] Once the user starts driving, the device provides real-time navigation, constantly checking the user's current location using GPS and providing directions. The server monitors traffic and weather conditions and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, an alternative route is calculated and sent to the device. Additionally, if a new interesting spot is discovered during the drive, the server notifies the device and recommends that the user visit it.
[0140] Hardware and software used
[0141] Hardware: On-board computers and GPS modules for autonomous vehicles (e.g., NVIDIA Drive platform)
[0142] Software: Navigation application (e.g., a program written in Python), server-side RESTful API (e.g., Flask, Django)
[0143] Specific examples
[0144] For example, if User A is interested in "nature" and "cafes," and sets the starting point as Tokyo and the destination as Karuizawa, the server will calculate the optimal driving route based on the user's information. This route may include suggestions such as "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device will provide real-time guidance and display information about spots along the way.
[0145] Prompt Sentence Examples
[0146] "Develop an application that suggests driving routes and tourist spots based on the user's interests and preferences. Specify the starting point and destination and provide real-time information on tourist spots, restaurants, etc. that match the user's interests. Also include a function to update the route based on traffic and weather information."
[0147] This allows users to enjoy a personalized driving experience while also ensuring safe and efficient travel based on the latest external information.
[0148] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0149] Step 1:
[0150] A user opens an application on their device and inputs information about their preferences and interests. This information may include interests such as "nature" and "cafes." This user information is collected as input data and sent from the device to a server. The server stores the received data in a database and creates a user profile.
[0151] Step 2:
[0152] The server periodically analyzes the stored user profile data. It uses machine learning algorithms to analyze the data and identify user groups with similar interests. At this stage, it takes all users' profile data as input and obtains user groups with similar interests as output.
[0153] Step 3:
[0154] The user inputs their starting point and destination into the device. The device uses a GPS module to obtain their current location and sends it to the server as their starting point. The server calculates the optimal driving route based on the user's current location, destination, and user profile. This route calculation also includes obtaining traffic and weather information. The starting point, destination, and user profile are used as input, and a personalized driving route is obtained as output.
[0155] Step 4:
[0156] The server identifies points of interest along the calculated route and sends this information to the device, which then uses the received information to display the route and suggested points on a map. The route information and point information are used as input, and the map information displayed to the user is obtained as output.
[0157] Step 5:
[0158] When the user starts driving, the device provides real-time navigation. It constantly checks the user's current location using GPS, and the server monitors traffic and weather information in real time, updating the route as needed. The current location information and traffic and weather information obtained from an external server are used as input, and the updated route and new spot information are obtained as output.
[0159] Step 6:
[0160] If a new interesting spot is found during the journey, the server notifies the device. For example, the server sends a notification to the device saying, "A new cafe has opened nearby," suggesting that the user visit. The new spot information is used as input, and the notification to the user is obtained as output.
[0161] Step 7:
[0162] Once the user completes the driving route, the device collects the user's feedback, which is sent to the server and stored in a database to help improve future route calculations and suggest new spots. The user's feedback is used as input, and updated profile data is obtained as output.
[0163] 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.
[0164] This system not only provides personalized driving routes based on the user's preferences and interests, but also suggests optimal routes and spots based on the user's emotions. The program processing of this system is explained in detail below.
[0165] Creating and Updating User Profiles
[0166] When a user first uses the application, they enter information such as their username, age, and interests (e.g., nature, history, food, etc.). The device collects this information and sends it to the server, which stores it in a database and creates a user profile. This information is updated as the user's interests change.
[0167] Use of emotion engine
[0168] The device is equipped with an emotion engine that recognizes the user's emotions, and uses sensors such as a camera and microphone to analyze the user's facial expressions and tone of voice. The emotion engine recognizes emotional states such as "happiness," "sadness," and "surprise," and sends this information to a server.
[0169] Similarity profile and sentiment data analysis
[0170] The server compares the profile data and emotional data of other users to identify groups of users with similar interests and emotional states, thereby gathering data to suggest spots and activities that are appropriate for the user's current emotional state.
[0171] Location and route calculation
[0172] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location and sends this information to the server. The server then calculates the optimal driving route based on this information, the user's profile, and emotional data. In doing so, it selects relaxing and stimulating spots that match the user's emotional state.
[0173] Spot suggestions and route display
[0174] The calculated route includes interesting spots based on the user's interests and emotions. For example, if the user is a "nature lover" and "want to relax," hot springs and quiet cafes along the way will be suggested. This information is sent from the server to the device and displayed on the map.
[0175] Navigation and real-time updates
[0176] When the user starts driving, the device provides real-time navigation and guidance while constantly checking the user's current location using GPS. The server monitors traffic and weather conditions and updates route and spot information in real time. The emotion engine also continuously monitors the user's emotional state and dynamically changes suggestions as needed.
[0177] For example, if a user feels stressed due to a sudden traffic jam, the server will detect this and suggest spots and routes that will help relieve stress. Also, if a new interesting spot is discovered while driving, the server will notify the device of this information based on data from the emotion engine and recommend that the user visit it.
[0178] Specific examples
[0179] Suppose User B is interested in "history" and "cafes" and is currently seeking "relaxation." By setting the starting point as Osaka and the destination as Kyoto, the server calculates a driving route from Osaka to Kyoto based on the user's profile and emotional state, suggesting historical temples and quiet cafes along the way. Once the user begins driving, the device provides real-time guidance, showing the direction of travel and providing detailed information about spots along the way.
[0180] This system allows users to enjoy a personalized driving experience and receives appropriate suggestions based on their emotions, resulting in a more satisfying drive.
[0181] The processing flow will be explained below.
[0182] Step 1: Enter your user information
[0183] When a user uses the application for the first time, they enter their username, age, hobbies, and interests (e.g., nature, history, gourmet food, etc.). The device collects this data and sends it to the server.
[0184] Step 2: Create a user profile
[0185] The server stores the received user information in a database and creates a profile for the user.
[0186] Step 3: Recognizing Emotional Data
[0187] When a user uses the application, sensors such as the camera and microphone built into the device are used to analyze facial expressions and tone of voice. The emotion engine recognizes the user's emotional state (e.g., joy, sadness, surprise) and sends the information to the server.
[0188] Step 4: Update your profile
[0189] When a user adds new interests, preferences, or emotional states, they enter the new data through their IP terminal and send it to the server, which receives it and updates the existing profile data.
[0190] Step 5: Analyze other user data
[0191] The server periodically analyzes other users' profile data and emotional data using machine learning algorithms to identify groups of users with similar interests and emotional states.
[0192] Step 6: Set your origin and destination
[0193] The user inputs the departure point and destination into the terminal, and location information including the current location is sent to the server.
[0194] Step 7: Route calculation
[0195] The server calculates the optimal route from the origin to the destination, selecting spots based on the user's profile and emotional state and incorporating them into the route.
[0196] Step 8: Propose a spot
[0197] The server sends the calculated route and information about suggested spots along the route to the device, which receives it and displays it on a map.
[0198] Step 9: Start Navigation
[0199] When a user starts driving, the device provides real-time navigation, using GPS to determine the user's current location and providing directions and directions to the next stop.
[0200] Step 10: Real-time updates
[0201] The server monitors traffic and weather conditions in real time and updates route and spot information as needed, while the emotion engine continuously monitors the user's emotional state and dynamically changes suggestions based on this.
[0202] For example, if a user feels stressed due to a sudden traffic jam, the emotion engine will detect this and the server will suggest a detour route to a new relaxing spot.
[0203] Step 11: Notification of new spots
[0204] If a new interesting spot is discovered while driving, the server will notify the device of the information based on the emotion engine data and recommend the user to visit. For example, a notification will be displayed while driving saying, "A new cafe has opened nearby."
[0205] In this way, users can enjoy a personalized driving experience that takes into account their individual preferences and emotional state.
[0206] Example 2
[0207] 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."
[0208] Conventional navigation systems only suggest routes based on the user's basic location information and preferences, and do not provide personalized suggestions that take into account the user's emotional state. This makes it difficult to increase user satisfaction while driving. Furthermore, since they do not suggest appropriate spots or routes that respond to real-time changes in the user's emotional state, there is a need to optimize the driving experience.
[0209] 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.
[0210] In this invention, the server includes: means for acquiring location information; means for acquiring and storing a user's preferences, interests, and emotional state; means for generating a set of routes based on the user's preferences, interests, emotional state, and location information; means for suggesting interesting spots along the generated route; means for updating and displaying navigation information in real time; means for monitoring the user's emotional state in real time and dynamically changing the suggested content; means for comparing and analyzing other users' profile data and emotional data to identify user groups with similar interests and emotional states; and means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing the route and suggested spots. This enables the suggestion of spots and routes based on the user's emotional state, resulting in a more satisfying and personalized driving experience. Furthermore, real-time information updates constantly suggest optimal routes and spots, significantly improving the quality of driving.
[0211] "Means for acquiring location information" refers to a device or program for acquiring information about a user's current location using GPS or other location detection technology.
[0212] "Means for acquiring and storing user preferences, interests, and emotional states" refers to a device or program for collecting information on preferences and interests entered by a user and their emotional states analyzed using an emotion engine, and storing them in a database.
[0213] A "means for generating a set of routes" is a device or program containing an algorithm for calculating and generating an optimal driving route based on the user's preferences, interests and emotional state.
[0214] The "means for suggesting interesting spots" is a device or program for selecting spots on the generated route that are suited to the user's interests and emotional state, and suggesting them to the user.
[0215] "Means for updating and displaying navigation information in real time" refers to a device or program that updates the latest navigation information in real time based on the user's current location while driving and provides it to the user visually and audibly.
[0216] "Means for monitoring the user's emotional state in real time and dynamically changing the suggested content" refers to a device or program that uses an emotion engine to continuously monitor the user's emotional state while driving and dynamically changes the suggested spots and routes based on that data.
[0217] "Means for comparatively analyzing profile data and emotional data of other users and identifying user groups with similar interests and emotional states" refers to a device or program for comparatively analyzing the profile and emotional data of other users stored in a database with the current user's data and identifying user groups with similar characteristics.
[0218] "Means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing routes and suggested spots" refers to a device or program that acquires changes in traffic conditions and weather in real time, and dynamically changes routes and suggested spots based on that information.
[0219] System Overview
[0220] This system provides personalized driving routes based on the user's preferences, interests, and emotional state, and can suggest optimal routes and spots depending on the user's emotions.The system is mainly composed of three elements: a server, a terminal, and a user.
[0221] Creating and Updating User Profiles
[0222] When a user first uses an application, they enter basic information such as their username, age, and interests. This data is collected by the device and sent to the server. The server creates a user profile based on the received information and stores it in a database. For example, a user might select interests such as "nature lover," "history lover," or "foodie." If the user's interests change, the information is updated accordingly.
[0223] Use of emotion engine
[0224] The device is equipped with an emotion engine that uses sensors such as a camera and microphone to collect the user's facial expressions and tone of voice in real time. The emotion engine analyzes the user's emotional state and obtains emotional data such as "happiness," "sadness," and "surprise." This information is encrypted and sent to the server. For example, if the user is smiling, the emotional state is detected as "happiness," and if the user has a sad face, the emotional state is detected as "sadness."
[0225] Similarity profile and sentiment data analysis
[0226] The server performs comparative analysis of the current user's data based on the profile data and emotional data of other users stored in the database. This identifies user groups with similar interests and emotional states. Identifying similar user groups makes it possible to suggest spots and activities that match the user's current emotional state.
[0227] Location and route calculation
[0228] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location information and sends it to the server. The server then calculates the optimal driving route based on the obtained location information, the user's profile, and emotional data. In doing so, it selects relaxing and stimulating spots that match the user's emotional state. For example, if the user is a "nature lover" and is looking to "relax," it will suggest hot springs and quiet cafes along the way.
[0229] Spot suggestions and route display
[0230] Based on the calculated route, the server selects spots that suit the user's interests and emotional state. Information about the selected spots is sent from the server to the device and displayed on a map. The user can use this information to plan their drive.
[0231] Navigation and real-time updates
[0232] When the user starts driving, the device provides real-time navigation and constantly checks the user's current location using GPS. The server monitors traffic and weather conditions and updates route and spot information in real time based on the acquired data. The emotion engine also continuously monitors the user's emotional state and dynamically changes suggestions as needed. For example, if the user becomes stressed due to a sudden traffic jam, the server will suggest spots and routes suitable for relieving stress.
[0233] Specific examples
[0234] For example, imagine a user wants to drive from Osaka to Kyoto. The user is interested in "history" and "cafes," and currently wants to "relax." Based on this profile and emotion data, the server calculates the optimal driving route from Osaka to Kyoto, suggesting historical temples and quiet cafes along the way. The device provides real-time navigation, showing the user's direction and providing detailed information about the spots along the way.
[0235] Examples of prompt statements
[0236] An example prompt might be, "How can I suggest historical temples and quiet cafes for the user when they are driving from Osaka to Kyoto?"
[0237] This system allows users to enjoy a personalized driving experience and receives appropriate suggestions based on their emotions, resulting in a more satisfying drive. Real-time suggestions are always made based on the latest information, so users can get the best possible driving experience.
[0238] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0239] Step 1:
[0240] Creating a User Profile
[0241] When a user uses the application for the first time, they enter information such as their username, age, and interests (nature, history, gourmet food, etc.).
[0242] Input: Username, Age, Interests
[0243] Data processing: The device formats this information and converts it into JSON format.
[0244] Output: Converted user information in JSON format
[0245] The device collects this information and sends it to a server, which receives it, stores it in a database, and creates a user profile.
[0246] Specific Action: Inserts a new record into the database and saves it as a user profile.
[0247] Step 2:
[0248] Acquiring emotional data using the emotion engine
[0249] The device is equipped with sensors such as a camera and microphone, which collect the user's facial expressions and tone of voice in real time.
[0250] Input: User's facial expression, voice
[0251] Data processing: The emotion engine uses facial expression recognition and voice analysis to identify emotional states (happiness, sadness, surprise, etc.).
[0252] Output: Identified emotion data
[0253] The device sends this emotion data to the server, which then stores it in a database.
[0254] Specific operation: Emotion data is linked to the user profile and stored in a database.
[0255] Step 3:
[0256] Similarity profile and sentiment data analysis
[0257] The server compares the profile data and emotional data of other users to identify groups of users with similar interests and emotional states.
[0258] Input: Current user data, other user data
[0259] Data processing: Compare profiles and sentiment data using a similarity algorithm.
[0260] Output: Similar user groups
[0261] The server stores similar user groups in a database.
[0262] Specific operation: Calculate similarity scores and save them as a group of users who meet certain criteria.
[0263] Step 4:
[0264] Location information acquisition and route calculation
[0265] When the user inputs the departure point and destination into the terminal, the terminal uses GPS to obtain current location information.
[0266] Input: Departure point, Destination
[0267] Data processing: Current location information is obtained using a GPS device and converted into location data.
[0268] Output: The location data obtained.
[0269] The device sends location data to a server, which then calculates the optimal driving route based on this information, the user's profile, and emotional data.
[0270] Specific operation: Runs a route calculation algorithm and generates a route that matches the user's profile and emotions.
[0271] Step 5:
[0272] Spot suggestions and route display
[0273] Based on the calculated route, the server selects interesting spots based on the user's interests and emotions.
[0274] Input: Calculated route, user interest and emotion data
[0275] Data processing: Using a spot selection algorithm, the optimal spot is selected.
[0276] Output: Selected spot information
[0277] The server sends this information to the terminal, which then displays the spot information on a map.
[0278] Specific behavior: Uses the mapping API to display spots on a map.
[0279] Step 6:
[0280] Navigation and real-time updates
[0281] Once the user starts driving, the device provides real-time navigation.
[0282] Input: Current location data
[0283] Data processing: Executes route guidance algorithms and determines direction of travel.
[0284] Output: Real-time navigation information
[0285] The server monitors traffic and weather conditions and updates route and spot information in real time.
[0286] Specific operation: Traffic and weather information is obtained through API, and route and spot information is dynamically updated.
[0287] Step 7:
[0288] Continuous monitoring of emotional state and suggestion changes
[0289] The emotion engine continuously monitors the user's emotional state.
[0290] Input: Real-time facial expressions and voice of the user
[0291] Data Processing: The emotion engine analyzes the emotion data to identify the current emotional state.
[0292] Output: Updated emotion data
[0293] The server dynamically changes the suggestions based on changes in emotional state.
[0294] Specific operation: The proposed algorithm is re-run to re-suggest spots and routes that are appropriate for the user's new emotional state.
[0295] In this way, users can enjoy a real-time, emotionally-driven, and personalized driving experience.
[0296] (Application example 2)
[0297] 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."
[0298] Conventional navigation systems can suggest routes based on a user's preferences and interests, but they cannot suggest optimal spots or routes that take the user's emotional state into account. It is also technically difficult to dynamically change the suggested content in real time in response to changes in the user's emotions. This makes it difficult to provide a satisfying driving experience. Furthermore, it is also impossible to make more accurate suggestions by utilizing profile data or emotional data of other users. The present invention aims to solve these problems.
[0299] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0300] In this invention, the server includes means for acquiring and storing information about a user's preferences and interests, means for recognizing the user's emotional state, means for comparing and analyzing the profile data and emotional data of other users to identify a user group with similar interests and emotional states, and means for real-time updates based on traffic and weather information, thereby enabling the server to generate a series of routes based on the user's preferences, interests, and emotional states, suggest interesting spots along the generated routes, and update and display navigation information in real time.
[0301] The "means for acquiring location information" is a means for acquiring information on the user's current location or a specified location using a location information acquisition device such as a GPS.
[0302] The "means for acquiring and storing information about the user's preferences and interests" refers to a means for collecting data about preferences and interests previously input by the user and storing it in a database.
[0303] The "means for recognizing the user's emotional state" refers to a means for determining the user's emotional state by analyzing the user's facial expressions and tone of voice using sensors such as a camera or microphone.
[0304] The "means for generating a set of routes" is a means for calculating and generating an appropriate driving route based on the user's preferences, interests, emotional state, and location information.
[0305] The "means for suggesting interesting spots" is a means for suggesting places and facilities that may be of interest to the user along the generated route.
[0306] "Means for updating and displaying navigation information in real time" means means for providing users with constantly updated information about their current route and destination using GPS information and other real-time data.
[0307] The "means for comparatively analyzing the profile data and emotional data of other users" refers to a means for comparing the profiles and emotional states of multiple users and analyzing commonalities and differences.
[0308] The "means for identifying a group of users with similar interests and emotional states" is a means for grouping and identifying users with common interests and emotional states based on comparatively analyzed data.
[0309] "Means for real-time updates based on traffic conditions and weather information" refers to means for obtaining current traffic conditions and weather data and dynamically changing and updating routes and suggested spots based on that data.
[0310] To implement the present invention, it is necessary to build a system that provides personalized driving routes based on a user's preferences and emotional state. The system includes means for acquiring location information, means for acquiring and storing information about a user's preferences and interests, means for recognizing the user's emotional state, means for generating a set of routes, means for suggesting points of interest, and means for updating and displaying navigation information in real time.
[0311] Specific configuration
[0312] Hardware
[0313] The following hardware is proposed to be used:
[0314] GPS module: Required to obtain location information.
[0315] Camera and microphone: Used to analyze the user's facial expressions and tone of voice to recognize their emotional state.
[0316] Computer (server): Responsible for processing and storing data.
[0317] software
[0318] The software used includes the following:
[0319] Python: Used as the primary programming language for server and data processing.
[0320] Database Management System (DBMS): Used to store user profiles and emotion data.
[0321] Emotion Recognition Engine: Processes data from the camera and microphone and uses it to recognize the user's emotional state.
[0322] Generative AI model: Used to build algorithms that suggest optimal routes and spots to users based on collected data.
[0323] Data Flow and Processing
[0324] 1. The server retrieves the profile information (name, age, interests, etc.) that the user enters when using the application for the first time and stores it in a database.
[0325] 2. The device uses a built-in camera and microphone to analyze the user's facial expressions and tone of voice to recognize their emotional state, and the data is sent to the server.
[0326] 3. The server compares and analyzes the profile data and emotional data of other users to identify groups of users with similar interests and emotional states, and generates a set of routes based on the results.
[0327] 4. The server monitors current traffic and weather information and updates the route and suggested spots in real time. This information is sent to the device and displayed to the user.
[0328] Specific examples
[0329] Let's say User B is interested in "history" and "cafes" and is currently looking for "relaxation." User B sets a driving route from Osaka to Kyoto in the application. The server calculates the optimal route based on the user's profile and current emotional state, suggesting historical temples and quiet cafes along the way. If the user feels stressed during the drive, the server will detect this information and suggest new relaxation spots.
[0330] Prompt Sentence Examples
[0331] The prompt sentence used to analyze user profile and emotional data using a generative AI model and make optimal suggestions is in the following format:
[0332] User Profile:
[0333] Name: User B
[0334] Age: 30
[0335] Interests: History, Cafes
[0336] Current emotional state: Relaxed
[0337] Starting point: Osaka
[0338] Destination: Kyoto
[0339] Using this information, we can suggest the best driving route and places to stop along the way.
[0340] The system constructed in this way can provide a personalized driving experience that is in line with the user's preferences and emotional state.
[0341] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0342] Step 1: Create a user profile
[0343] Input: Profile information (such as name, age, interests, etc.) that users enter when they first use the application
[0344] Operation: The device collects the entered profile information.
[0345] Data Processing: The collected information is properly formatted into a database.
[0346] Output: The formatted profile information is sent to the server and stored in a database.
[0347] Step 2: Recognizing your emotional state
[0348] Input: Data on the user's facial expressions and tone of voice obtained through the device's camera and microphone
[0349] How it works: The device uses a camera and microphone to collect the user's emotions in real time.
[0350] Data processing: The emotion recognition engine analyzes the collected data and determines a specific emotional state (e.g., "relaxed" or "stressed").
[0351] Output: The determined emotional state is sent to the server and recorded.
[0352] Step 3: Analyzing similar profiles and sentiment data
[0353] Input: User profile data and emotion data
[0354] How it works: The server takes other users' profile data and sentiment data and compares them using an analysis engine.
[0355] Data processing: Data analysis algorithms identify groups of users with similar interests and emotional states.
[0356] Output: Data for the identified user groups is generated.
[0357] Step 4: Obtaining location information
[0358] Input: The user enters the origin and destination.
[0359] Operation: The device obtains its current location using the GPS module.
[0360] Data processing: The acquired location information is converted into an appropriate format.
[0361] Output: The converted location information is sent to the server.
[0362] Step 5: Generate Routes
[0363] Input: User profile information, emotional state, location information
[0364] How it works: The server uses this information to calculate the optimal driving route, and uses a generative AI model to create prompts and suggest the best route.
[0365] Data processing: Algorithms dynamically generate routes based on the user's preferences and emotions.
[0366] Output: The generated route is sent to the device.
[0367] Step 6: Propose a spot
[0368] Input: Generated route, user profile information, emotional state
[0369] How it works: The server selects spots along the generated route that match the user's interests and emotional state.
[0370] Data Processing: The selected spots are properly formatted.
[0371] Output: Formatted spot information is sent to the device.
[0372] Step 7: Real-time navigation and updates
[0373] Input: Current traffic conditions, weather information, fluctuations in the user's emotional state
[0374] How it works: The device provides real-time navigation and monitors your location using GPS. The server receives this data and updates the route and spot information as needed.
[0375] Data processing: Route and spot information is dynamically updated based on traffic conditions, weather information, and emotion data.
[0376] Output: Updated navigation information is displayed on the device.
[0377] In this way, it is possible to provide optimal driving routes and spots in real time based on the user's preferences and emotional state.
[0378] 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.
[0379] 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.
[0380] 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.
[0381] [Second embodiment]
[0382] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0383] 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.
[0384] 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).
[0385] 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.
[0386] 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.
[0387] 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).
[0388] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0389] 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.
[0390] 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.
[0391] 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.
[0392] 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.
[0393] 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."
[0394] This system is designed to generate personalized driving routes based on the user's preferences and interests, and to suggest interesting spots, unknown tourist destinations, local gourmet food, etc. The program processing of this system is explained below.
[0395] Creating and Updating User Profiles
[0396] When a user first uses the application, they input information about their preferences and interests, such as "nature," "history," and "food." The device collects this information and sends it to the server. The server stores the information in a database and creates a user profile.
[0397] If a user wants to add a new interest, for example, they can set "outdoors" as a new hobby. In this case, the information is sent from the device to the server and the profile is updated.
[0398] Find Similar Profiles
[0399] The server periodically analyzes all stored user profile data using machine learning algorithms to identify user groups with similar interests, improving the accuracy of personalized suggestions by taking into account the spots and gourmet information that other users are interested in.
[0400] Location and route calculation
[0401] When a user plans a drive, they input their starting point and destination into their device. GPS is used to obtain their current location, which is then sent along with the starting point information to the server. The server then calculates the optimal driving route based on the user's current location, destination, and user profile.
[0402] Spot suggestions and route display
[0403] The calculated route includes interesting spots that match the user's preferences. For example, if the user is interested in "hot springs" and "local cuisine," hot springs and well-received local restaurants along the way will be suggested. This information is sent from the server to the device and displayed as a route and spots on a map.
[0404] Navigation and real-time updates
[0405] Once the user starts driving, the device provides real-time navigation, constantly checking the user's current location using GPS and providing directions. The server monitors traffic and weather conditions and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, an alternative route is calculated and sent to the device.
[0406] If a new interesting spot is discovered while driving, the server will notify the device and recommend that the user visit. For example, one day, a notification may appear saying, "A new cafe has opened nearby."
[0407] Specific examples
[0408] As a concrete example, suppose User A is interested in "nature" and "cafes." User A sets his starting point as Tokyo and his destination as Karuizawa. Based on the user's information, the server calculates a driving route from Tokyo to Karuizawa and suggests spots along the way, such as "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device provides real-time guidance and also displays information about spots along the way.
[0409] This series of processes allows users to enjoy a driving experience based on their own preferences and interests. Also, by incorporating the experiences and preferences of other users, it is possible to provide new discoveries and enjoyment.
[0410] The processing flow will be explained below.
[0411] Step 1: Enter your user information
[0412] When a user uses the application for the first time, they enter information such as their username, age, and interests (e.g., nature, history, gourmet food, etc.). The device receives this information and sends it to the server.
[0413] Step 2: Create a user profile
[0414] The server stores the received user information in a database and creates a profile for the user.
[0415] Step 3: Update your profile
[0416] When a user adds a new interest or preference, for example, entering an interest in "hot springs," the device sends the updated information to the server, which then updates the profile.
[0417] Step 4: Analyzing other user profiles
[0418] The server compares and analyzes the stored profile data of all users using machine learning algorithms to identify groups of users with similar interests.
[0419] Step 5: Set your origin and destination
[0420] The user inputs the departure point and destination into the terminal, and this location information, including the current location, is sent to the server.
[0421] Step 6: Route calculation
[0422] The server calculates the optimal route from the origin to the destination, inserting points of interest from the user's profile along the route as appropriate.
[0423] Step 7: Propose a spot
[0424] The server sends the calculated route and information about points of interest along the route to the device, which receives it and displays it on a map.
[0425] Step 8: Start Navigation
[0426] Once the user starts driving, the device provides real-time navigation, using GPS to constantly check the user's current location and provide directions and directions to the next stop.
[0427] Step 9: Real-time updates
[0428] The server monitors traffic and weather conditions in real time and updates route and spot information as needed, sending the updated information to the device and notifying the user.
[0429] Step 10: Notification of new spots
[0430] If a new interesting spot is discovered during the drive, the server notifies the device of the information and displays a message recommending the user to visit.
[0431] In this way, each step works in succession to provide the user with a personalized driving route and navigation experience.
[0432] Example 1
[0433] 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."
[0434] Conventional navigation systems simply present the shortest routes and standard tourist spots without considering the user's preferences or interests. This prevents users from enjoying trips or drives tailored to their individual interests, making it difficult to provide a personalized experience. Furthermore, they lack the ability to dynamically update routes based on real-time traffic and weather information, making them less convenient in situations where a quick response is required. Furthermore, they lack a method for suggesting new discoveries and fun activities by utilizing other users' profile data, making it difficult to improve the quality of the user experience.
[0435] 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.
[0436] In this invention, the server includes a means for acquiring location information, a means for acquiring and storing information about a user's preferences and interests, a means for creating and updating a user profile, a means for identifying similar user groups, a means for suggesting interesting places along the generated route, and a means for updating and displaying navigation information in real time. This allows users to enjoy personalized routes based on their preferences and interests. Furthermore, suggestions utilizing other users' profile data provide new discoveries and enjoyment, and dynamic route updates based on real-time traffic and weather information are possible.
[0437] "Means for acquiring location information" refers to a device or method for collecting information on the user's current location and the specified starting point and destination.
[0438] "Means for acquiring and storing information about user preferences and interests" refers to devices or methods for collecting user-entered interests and preferences (e.g., nature, history, gourmet food, etc.) and storing them in a database.
[0439] A "means for creating and updating a user profile" is a device or method for generating a user profile based on collected information about a user's interests and preferences, and updating that information as needed.
[0440] A "means for identifying similar user groups" is a device or method for identifying groups of users with similar interests or preferences using machine learning algorithms or data analysis techniques.
[0441] The "means for generating a set of routes" refers to a device or method for calculating and generating an optimal route based on the user's location information and profile information.
[0442] A "means for suggesting places of interest along the generated route" is a device or method for suggesting places of interest or tourist attractions along the route based on the user's interests and preferences.
[0443] "Means for updating and displaying navigation information in real time" refers to a device or method for updating navigation information based on real-time location information, traffic conditions, weather information, etc., and displaying it to the user.
[0444] "Means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing routes and suggested spots" refers to devices or methods for acquiring traffic conditions and weather information in real time, and appropriately changing routes and suggested spots based on that information.
[0445] The present invention is a system that generates a personalized driving route based on a user's preferences and interests, and suggests interesting spots, unknown tourist destinations, local gourmet food, etc. Specific embodiments are described below.
[0446] Creating and Updating User Profiles
[0447] When a user first uses an application, they launch the app and enter their preferences and interests. For example, categories include "nature," "history," and "food." The device collects this information and sends it to the server using an HTTP POST request. The server receives this information, stores it in a database, and creates a user profile. This allows the user to receive personalized suggestions based on their individual preferences.
[0448] Find Similar Profiles
[0449] The server periodically analyzes the stored profile data of all users using machine learning algorithms (e.g., K-means clustering), which identifies groups of users with similar interests. This improves the accuracy of personalized suggestions by taking into account the spots and gourmet information that other users are interested in.
[0450] Location and route calculation
[0451] When a user plans a drive, they input their starting point and destination into their device. The device uses its built-in GPS module to obtain their current location and sends it along with the starting point information to the server. The server uses this data to calculate the optimal driving route using a common map service API (e.g., Google Maps API). At this time, the server takes into account the user's profile and generates a route tailored to their individual preferences.
[0452] Spot suggestions and route display
[0453] The server searches for interesting spots that match the user's preferences along the calculated route. This is done by using spot information stored in a database or external APIs (e.g., Yelp API or TripAdvisor API). Once the spot information is determined, the server sends the optimal route including the information to the device. The device receives this information, and the route and spot information are displayed on a map application (e.g., Google Maps).
[0454] Navigation and real-time updates
[0455] Once the user starts driving, the device provides real-time navigation. It uses GPS to constantly check the user's current location and guides the user in the right direction. The server monitors traffic and weather conditions in the backend and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, the server calculates a new route and sends that information to the device. Additionally, if a new interesting spot is discovered, the server immediately sends a notification to the device. An example of a notification might be a message like, "A new cafe has opened nearby."
[0456] Examples of specific examples and prompts
[0457] For example, if User A is interested in "nature" and "cafes," he or she can set the starting point as Tokyo and the destination as Karuizawa. Based on the user's profile and current location, the server calls the Google Maps API to calculate the optimal driving route from Tokyo to Karuizawa. Suggested spots along the way include "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device provides real-time guidance and displays information about spots along the way.
[0458] An example of a prompt for a generative AI model might be, "Please suggest a driving route from Tokyo to Karuizawa where you can enjoy nature and cafes." Using this prompt, a personalized route can be provided.
[0459] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0460] Detailed description of the processing steps
[0461] Step 1: Create a user profile
[0462] When a user launches the application for the first time, they enter their preferences and interests (e.g., "nature," "history," and "food"). The device collects this information, composes a packet in JSON format, and sends it to the server using an HTTP POST request. At this point, the input is information about the user's preferences and interests, and the output is data to be sent to the server. The server saves the received information in a database and initializes and creates a user profile.
[0463] Step 2: Update your user profile
[0464] When a user wants to add a new interest or preference, they enter the update in the device's settings menu. For example, they want to add an interest in "outdoors." The device collects the update and sends it to the server. The input is the new preference information, and the output is an updated user profile. The server adds this information to the existing profile and updates the database.
[0465] Step 3: Find Similar Profiles
[0466] The server periodically analyzes the stored profile data of all users. It uses machine learning algorithms (e.g., K-means clustering) to identify user groups with similar interests. The input data is the profile data of all users, and the output is a list of similar user groups. This step enables personalized suggestions based on the spots and gourmet information that other users are interested in.
[0467] Step 4: Obtaining location information and calculating routes
[0468] When a user plans a drive, they input their starting point and destination into their device. The device uses its built-in GPS module to obtain their current location information and sends it to the server. The input is the starting point, destination, and current location information, and the output is a personalized driving route. The server uses this information to calculate the optimal driving route using external map services such as Google Maps API. The calculation result is personalized, taking into account information in the user profile.
[0469] Step 5: Spot suggestions and route display
[0470] The server searches for interesting spots that match the user's preferences along the calculated route. It uses spot information stored in a database and data from external APIs (e.g., Yelp API or TripAdvisor API). The input is the user's profile information and route data, and the output is a list of suggested spots. The suggested information is sent from the server to the device, and the device displays the route and spot information on a map application (e.g., Google Maps). The spots are indicated on the map with icons or pins.
[0471] Step 6: Navigation and real-time updates
[0472] Once the user starts driving, the device begins providing real-time navigation. It constantly checks the user's current location using GPS and provides turn-by-turn navigation. The server monitors real-time traffic and weather information in the backend and updates the route and suggested spots as needed. The input is real-time location information, traffic conditions, and weather information, and the output is an updated route and suggested spots. For example, if a sudden traffic jam occurs, the server calculates a new route and sends that information to the device. Additionally, if a new interesting spot is found, the server immediately sends a notification to the device.
[0473] (Application example 1)
[0474] 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."
[0475] In recent years, with the advancement of autonomous driving technology, optimization and personalization of driving routes have become increasingly important. Conventional navigation systems have difficulty suggesting spots based on the user's preferences and interests, and there is a need for a means to provide a more personalized driving experience. In addition, real-time route updates that take into account changes in traffic conditions and weather have been insufficient, so a system that can improve user satisfaction is needed.
[0476] 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.
[0477] In this invention, the server includes: means for acquiring location information; means for acquiring and storing information related to a user's preferences and interests; means for generating a set of routes based on the user's preferences and interests and the location information; means for suggesting interesting spots along the generated route; means for updating and displaying navigation information in real time; means for communicating with an external server to acquire traffic and weather information in real time; means for dynamically updating the set of routes and suggested spots based on changes in traffic and weather; means for comparing and analyzing profile data of other users to identify user groups with similar interests; means for calculating and presenting an optimal driving route that reflects the user's profile information based on a departure point and destination specified by the user; and means for notifying and suggesting new interesting places discovered while driving. This enables the provision of a personalized driving experience based on the user's preferences and interests, and improves user satisfaction by updating routes in response to changes in traffic and weather conditions in real time.
[0478] "Means of obtaining location information" refers to the function of obtaining the current location using location information services such as GPS.
[0479] "Means for obtaining and storing information about user preferences and interests" refers to the function of collecting data related to the interests and preferences entered by the user and storing it in a database.
[0480] "Means for generating a set of routes" refers to a system that calculates and creates a route from a user's preferences and interests, as well as their current location to their destination.
[0481] "Means for suggesting interesting spots" refers to a system that recommends places such as tourist attractions and restaurants that suit the user's preferences and are located on the generated route.
[0482] "Means for updating and displaying navigation information in real time" refers to an application that provides guidance to users while they are traveling, applying the latest traffic information and route changes.
[0483] "Means of communicating with an external server to obtain real-time traffic and weather information" refers to a system that receives the latest traffic and weather information from an external server using the Internet or a network.
[0484] "Means of dynamically updating the set of routes and suggested spots" refers to the ability to change calculated routes and recommended spots on the fly in response to changes in traffic and weather conditions.
[0485] "Means for comparative analysis of other users' profile data and identifying user groups with similar interests" refers to a system that analyzes stored data of other users using machine learning algorithms, etc., and classifies users with common interests.
[0486] "Means for calculating and presenting optimal driving routes that reflect user profile information" refers to a system that calculates optimal routes and provides route information based on the user's preferences and interests.
[0487] "Means of notifying and suggesting newly discovered interesting places to the user" refers to a function that notifies the user in real time of new tourist spots and facilities discovered while driving.
[0488] The system of the present invention provides a series of processes for users to enjoy personalized driving routes, allowing users to plan a drive based on their preferences and interests, and reach their destination while receiving real-time traffic and weather information.
[0489] System configuration
[0490] The system includes a terminal, a server, a GPS module, and an external database.
[0491] Creating and updating user profiles
[0492] First, a user accesses the application using their device. They input information about their preferences and interests (e.g., "nature" or "cafes"), which is then sent from the device to the server. The server stores the received information in a database and creates or updates the user's profile. For example, if the user becomes interested in "outdoors," that information is also added to the database.
[0493] Find Similar Profiles
[0494] The server uses machine learning algorithms to identify groups of users with similar interests based on stored user profile data, a process that allows the server to provide more accurate recommendations based on the places and interests recommended by other users.
[0495] Route calculation and spot suggestions
[0496] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location and sends it to the server. The server calculates the optimal driving route based on the user's current location, destination, and user profile. This calculation also includes information on external traffic and weather conditions. The calculated route includes points of interest that match the user's preferences. For example, if a user is interested in "hot springs" and "local cuisine," the route will suggest hot spring resorts and popular local restaurants.
[0497] Real-time updates
[0498] Once the user starts driving, the device provides real-time navigation, constantly checking the user's current location using GPS and providing directions. The server monitors traffic and weather conditions and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, an alternative route is calculated and sent to the device. Additionally, if a new interesting spot is discovered during the drive, the server notifies the device and recommends that the user visit it.
[0499] Hardware and software used
[0500] Hardware: On-board computers and GPS modules for autonomous vehicles (e.g., NVIDIA Drive platform)
[0501] Software: Navigation application (e.g., a program written in Python), server-side RESTful API (e.g., Flask, Django)
[0502] Specific examples
[0503] For example, if User A is interested in "nature" and "cafes," and sets the starting point as Tokyo and the destination as Karuizawa, the server will calculate the optimal driving route based on the user's information. This route may include suggestions such as "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device will provide real-time guidance and display information about spots along the way.
[0504] Prompt Sentence Examples
[0505] "Develop an application that suggests driving routes and tourist spots based on the user's interests and preferences. Specify the starting point and destination and provide real-time information on tourist spots, restaurants, etc. that match the user's interests. Also include a function to update the route based on traffic and weather information."
[0506] This allows users to enjoy a personalized driving experience while also ensuring safe and efficient travel based on the latest external information.
[0507] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0508] Step 1:
[0509] A user opens an application on their device and inputs information about their preferences and interests. This information may include interests such as "nature" and "cafes." This user information is collected as input data and sent from the device to a server. The server stores the received data in a database and creates a user profile.
[0510] Step 2:
[0511] The server periodically analyzes the stored user profile data. It uses machine learning algorithms to analyze the data and identify user groups with similar interests. At this stage, it takes all users' profile data as input and obtains user groups with similar interests as output.
[0512] Step 3:
[0513] The user inputs their starting point and destination into the device. The device uses a GPS module to obtain their current location and sends it to the server as their starting point. The server calculates the optimal driving route based on the user's current location, destination, and user profile. This route calculation also includes obtaining traffic and weather information. The starting point, destination, and user profile are used as input, and a personalized driving route is obtained as output.
[0514] Step 4:
[0515] The server identifies points of interest along the calculated route and sends this information to the device, which then uses the received information to display the route and suggested points on a map. The route information and point information are used as input, and the map information displayed to the user is obtained as output.
[0516] Step 5:
[0517] When the user starts driving, the device provides real-time navigation. It constantly checks the user's current location using GPS, and the server monitors traffic and weather information in real time, updating the route as needed. The current location information and traffic and weather information obtained from an external server are used as input, and the updated route and new spot information are obtained as output.
[0518] Step 6:
[0519] If a new interesting spot is found during the journey, the server notifies the device. For example, the server sends a notification to the device saying, "A new cafe has opened nearby," suggesting that the user visit. The new spot information is used as input, and the notification to the user is obtained as output.
[0520] Step 7:
[0521] Once the user completes the driving route, the device collects the user's feedback, which is sent to the server and stored in a database to help improve future route calculations and suggest new spots. The user's feedback is used as input, and updated profile data is obtained as output.
[0522] 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.
[0523] This system not only provides personalized driving routes based on the user's preferences and interests, but also suggests optimal routes and spots based on the user's emotions. The program processing of this system is explained in detail below.
[0524] Creating and Updating User Profiles
[0525] When a user first uses the application, they enter information such as their username, age, and interests (e.g., nature, history, food, etc.). The device collects this information and sends it to the server, which stores it in a database and creates a user profile. This information is updated as the user's interests change.
[0526] Use of emotion engine
[0527] The device is equipped with an emotion engine that recognizes the user's emotions, and uses sensors such as a camera and microphone to analyze the user's facial expressions and tone of voice. The emotion engine recognizes emotional states such as "happiness," "sadness," and "surprise," and sends this information to a server.
[0528] Similarity profile and sentiment data analysis
[0529] The server compares the profile data and emotional data of other users to identify groups of users with similar interests and emotional states, thereby gathering data to suggest spots and activities that are appropriate for the user's current emotional state.
[0530] Location and route calculation
[0531] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location and sends this information to the server. The server then calculates the optimal driving route based on this information, the user's profile, and emotional data. In doing so, it selects relaxing and stimulating spots that match the user's emotional state.
[0532] Spot suggestions and route display
[0533] The calculated route includes interesting spots based on the user's interests and emotions. For example, if the user is a "nature lover" and "want to relax," hot springs and quiet cafes along the way will be suggested. This information is sent from the server to the device and displayed on the map.
[0534] Navigation and real-time updates
[0535] When the user starts driving, the device provides real-time navigation and guidance while constantly checking the user's current location using GPS. The server monitors traffic and weather conditions and updates route and spot information in real time. The emotion engine also continuously monitors the user's emotional state and dynamically changes suggestions as needed.
[0536] For example, if a user feels stressed due to a sudden traffic jam, the server will detect this and suggest spots and routes that will help relieve stress. Also, if a new interesting spot is discovered while driving, the server will notify the device of this information based on data from the emotion engine and recommend that the user visit it.
[0537] Specific examples
[0538] Suppose User B is interested in "history" and "cafes" and is currently seeking "relaxation." By setting the starting point as Osaka and the destination as Kyoto, the server calculates a driving route from Osaka to Kyoto based on the user's profile and emotional state, suggesting historical temples and quiet cafes along the way. Once the user begins driving, the device provides real-time guidance, showing the direction of travel and providing detailed information about spots along the way.
[0539] This system allows users to enjoy a personalized driving experience and receives appropriate suggestions based on their emotions, resulting in a more satisfying drive.
[0540] The processing flow will be explained below.
[0541] Step 1: Enter your user information
[0542] When a user uses the application for the first time, they enter their username, age, hobbies, and interests (e.g., nature, history, gourmet food, etc.). The device collects this data and sends it to the server.
[0543] Step 2: Create a user profile
[0544] The server stores the received user information in a database and creates a profile for the user.
[0545] Step 3: Recognizing Emotional Data
[0546] When a user uses the application, sensors such as the camera and microphone built into the device are used to analyze facial expressions and tone of voice. The emotion engine recognizes the user's emotional state (e.g., joy, sadness, surprise) and sends the information to the server.
[0547] Step 4: Update your profile
[0548] When a user adds new interests, preferences, or emotional states, they enter the new data through their IP terminal and send it to the server, which receives it and updates the existing profile data.
[0549] Step 5: Analyze other user data
[0550] The server periodically analyzes other users' profile data and emotional data using machine learning algorithms to identify groups of users with similar interests and emotional states.
[0551] Step 6: Set your origin and destination
[0552] The user inputs the departure point and destination into the terminal, and location information including the current location is sent to the server.
[0553] Step 7: Route calculation
[0554] The server calculates the optimal route from the origin to the destination, selecting spots based on the user's profile and emotional state and incorporating them into the route.
[0555] Step 8: Propose a spot
[0556] The server sends the calculated route and information about suggested spots along the route to the device, which receives it and displays it on a map.
[0557] Step 9: Start Navigation
[0558] When a user starts driving, the device provides real-time navigation, using GPS to determine the user's current location and providing directions and directions to the next stop.
[0559] Step 10: Real-time updates
[0560] The server monitors traffic and weather conditions in real time and updates route and spot information as needed, while the emotion engine continuously monitors the user's emotional state and dynamically changes suggestions based on this.
[0561] For example, if a user feels stressed due to a sudden traffic jam, the emotion engine will detect this and the server will suggest a detour route to a new relaxing spot.
[0562] Step 11: Notification of new spots
[0563] If a new interesting spot is discovered while driving, the server will notify the device of the information based on the emotion engine data and recommend the user to visit. For example, a notification will be displayed while driving saying, "A new cafe has opened nearby."
[0564] In this way, users can enjoy a personalized driving experience that takes into account their individual preferences and emotional state.
[0565] Example 2
[0566] 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."
[0567] Conventional navigation systems only suggest routes based on the user's basic location information and preferences, and do not provide personalized suggestions that take into account the user's emotional state. This makes it difficult to increase user satisfaction while driving. Furthermore, since they do not suggest appropriate spots or routes that respond to real-time changes in the user's emotional state, there is a need to optimize the driving experience.
[0568] 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.
[0569] In this invention, the server includes: means for acquiring location information; means for acquiring and storing a user's preferences, interests, and emotional state; means for generating a set of routes based on the user's preferences, interests, emotional state, and location information; means for suggesting interesting spots along the generated route; means for updating and displaying navigation information in real time; means for monitoring the user's emotional state in real time and dynamically changing the suggested content; means for comparing and analyzing other users' profile data and emotional data to identify user groups with similar interests and emotional states; and means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing the route and suggested spots. This enables the suggestion of spots and routes based on the user's emotional state, resulting in a more satisfying and personalized driving experience. Furthermore, real-time information updates constantly suggest optimal routes and spots, significantly improving the quality of driving.
[0570] "Means for acquiring location information" refers to a device or program for acquiring information about a user's current location using GPS or other location detection technology.
[0571] "Means for acquiring and storing user preferences, interests, and emotional states" refers to a device or program for collecting information on preferences and interests entered by a user and their emotional states analyzed using an emotion engine, and storing them in a database.
[0572] A "means for generating a set of routes" is a device or program containing an algorithm for calculating and generating an optimal driving route based on the user's preferences, interests and emotional state.
[0573] The "means for suggesting interesting spots" is a device or program for selecting spots on the generated route that are suited to the user's interests and emotional state, and suggesting them to the user.
[0574] "Means for updating and displaying navigation information in real time" refers to a device or program that updates the latest navigation information in real time based on the user's current location while driving and provides it to the user visually and audibly.
[0575] "Means for monitoring the user's emotional state in real time and dynamically changing the suggested content" refers to a device or program that uses an emotion engine to continuously monitor the user's emotional state while driving and dynamically changes the suggested spots and routes based on that data.
[0576] "Means for comparatively analyzing profile data and emotional data of other users and identifying user groups with similar interests and emotional states" refers to a device or program for comparatively analyzing the profile and emotional data of other users stored in a database with the current user's data and identifying user groups with similar characteristics.
[0577] "Means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing routes and suggested spots" refers to a device or program that acquires changes in traffic conditions and weather in real time, and dynamically changes routes and suggested spots based on that information.
[0578] System Overview
[0579] This system provides personalized driving routes based on the user's preferences, interests, and emotional state, and can suggest optimal routes and spots depending on the user's emotions.The system is mainly composed of three elements: a server, a terminal, and a user.
[0580] Creating and Updating User Profiles
[0581] When a user first uses an application, they enter basic information such as their username, age, and interests. This data is collected by the device and sent to the server. The server creates a user profile based on the received information and stores it in a database. For example, a user might select interests such as "nature lover," "history lover," or "foodie." If the user's interests change, the information is updated accordingly.
[0582] Use of emotion engine
[0583] The device is equipped with an emotion engine that uses sensors such as a camera and microphone to collect the user's facial expressions and tone of voice in real time. The emotion engine analyzes the user's emotional state and obtains emotional data such as "happiness," "sadness," and "surprise." This information is encrypted and sent to the server. For example, if the user is smiling, the emotional state is detected as "happiness," and if the user has a sad face, the emotional state is detected as "sadness."
[0584] Similarity profile and sentiment data analysis
[0585] The server performs comparative analysis of the current user's data based on the profile data and emotional data of other users stored in the database. This identifies user groups with similar interests and emotional states. Identifying similar user groups makes it possible to suggest spots and activities that match the user's current emotional state.
[0586] Location and route calculation
[0587] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location information and sends it to the server. The server then calculates the optimal driving route based on the obtained location information, the user's profile, and emotional data. In doing so, it selects relaxing and stimulating spots that match the user's emotional state. For example, if the user is a "nature lover" and is looking to "relax," it will suggest hot springs and quiet cafes along the way.
[0588] Spot suggestions and route display
[0589] Based on the calculated route, the server selects spots that suit the user's interests and emotional state. Information about the selected spots is sent from the server to the device and displayed on a map. The user can use this information to plan their drive.
[0590] Navigation and real-time updates
[0591] When the user starts driving, the device provides real-time navigation and constantly checks the user's current location using GPS. The server monitors traffic and weather conditions and updates route and spot information in real time based on the acquired data. The emotion engine also continuously monitors the user's emotional state and dynamically changes suggestions as needed. For example, if the user becomes stressed due to a sudden traffic jam, the server will suggest spots and routes suitable for relieving stress.
[0592] Specific examples
[0593] For example, imagine a user wants to drive from Osaka to Kyoto. The user is interested in "history" and "cafes," and currently wants to "relax." Based on this profile and emotion data, the server calculates the optimal driving route from Osaka to Kyoto, suggesting historical temples and quiet cafes along the way. The device provides real-time navigation, showing the user's direction and providing detailed information about the spots along the way.
[0594] Examples of prompt statements
[0595] An example prompt might be, "How can I suggest historical temples and quiet cafes for the user when they are driving from Osaka to Kyoto?"
[0596] This system allows users to enjoy a personalized driving experience and receives appropriate suggestions based on their emotions, resulting in a more satisfying drive. Real-time suggestions are always made based on the latest information, so users can get the best possible driving experience.
[0597] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0598] Step 1:
[0599] Creating a User Profile
[0600] When a user uses the application for the first time, they enter information such as their username, age, and interests (nature, history, gourmet food, etc.).
[0601] Input: Username, Age, Interests
[0602] Data processing: The device formats this information and converts it into JSON format.
[0603] Output: Converted user information in JSON format
[0604] The device collects this information and sends it to a server, which receives it, stores it in a database, and creates a user profile.
[0605] Specific Action: Inserts a new record into the database and saves it as a user profile.
[0606] Step 2:
[0607] Acquiring emotional data using the emotion engine
[0608] The device is equipped with sensors such as a camera and microphone, which collect the user's facial expressions and tone of voice in real time.
[0609] Input: User's facial expression, voice
[0610] Data processing: The emotion engine uses facial expression recognition and voice analysis to identify emotional states (happiness, sadness, surprise, etc.).
[0611] Output: Identified emotion data
[0612] The device sends this emotion data to the server, which then stores it in a database.
[0613] Specific operation: Emotion data is linked to the user profile and stored in a database.
[0614] Step 3:
[0615] Similarity profile and sentiment data analysis
[0616] The server compares the profile data and emotional data of other users to identify groups of users with similar interests and emotional states.
[0617] Input: Current user data, other user data
[0618] Data processing: Compare profiles and sentiment data using a similarity algorithm.
[0619] Output: Similar user groups
[0620] The server stores similar user groups in a database.
[0621] Specific operation: Calculate similarity scores and save them as a group of users who meet certain criteria.
[0622] Step 4:
[0623] Location information acquisition and route calculation
[0624] When the user inputs the departure point and destination into the terminal, the terminal uses GPS to obtain current location information.
[0625] Input: Departure point, Destination
[0626] Data processing: Current location information is obtained using a GPS device and converted into location data.
[0627] Output: The location data obtained.
[0628] The device sends location data to a server, which then calculates the optimal driving route based on this information, the user's profile, and emotional data.
[0629] Specific operation: Runs a route calculation algorithm and generates a route that matches the user's profile and emotions.
[0630] Step 5:
[0631] Spot suggestions and route display
[0632] Based on the calculated route, the server selects interesting spots based on the user's interests and emotions.
[0633] Input: Calculated route, user interest and emotion data
[0634] Data processing: Using a spot selection algorithm, the optimal spot is selected.
[0635] Output: Selected spot information
[0636] The server sends this information to the terminal, which then displays the spot information on a map.
[0637] Specific behavior: Uses the mapping API to display spots on a map.
[0638] Step 6:
[0639] Navigation and real-time updates
[0640] Once the user starts driving, the device provides real-time navigation.
[0641] Input: Current location data
[0642] Data processing: Executes route guidance algorithms and determines direction of travel.
[0643] Output: Real-time navigation information
[0644] The server monitors traffic and weather conditions and updates route and spot information in real time.
[0645] Specific operation: Traffic and weather information is obtained through API, and route and spot information is dynamically updated.
[0646] Step 7:
[0647] Continuous monitoring of emotional state and suggestion changes
[0648] The emotion engine continuously monitors the user's emotional state.
[0649] Input: Real-time facial expressions and voice of the user
[0650] Data Processing: The emotion engine analyzes the emotion data to identify the current emotional state.
[0651] Output: Updated emotion data
[0652] The server dynamically changes the suggestions based on changes in emotional state.
[0653] Specific operation: The proposed algorithm is re-run to re-suggest spots and routes that are appropriate for the user's new emotional state.
[0654] In this way, users can enjoy a real-time, emotionally-driven, and personalized driving experience.
[0655] (Application example 2)
[0656] 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."
[0657] Conventional navigation systems can suggest routes based on a user's preferences and interests, but they cannot suggest optimal spots or routes that take the user's emotional state into account. It is also technically difficult to dynamically change the suggested content in real time in response to changes in the user's emotions. This makes it difficult to provide a satisfying driving experience. Furthermore, it is also impossible to make more accurate suggestions by utilizing profile data or emotional data of other users. The present invention aims to solve these problems.
[0658] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0659] In this invention, the server includes means for acquiring and storing information about a user's preferences and interests, means for recognizing the user's emotional state, means for comparing and analyzing the profile data and emotional data of other users to identify a user group with similar interests and emotional states, and means for real-time updates based on traffic and weather information, thereby enabling the server to generate a series of routes based on the user's preferences, interests, and emotional states, suggest interesting spots along the generated routes, and update and display navigation information in real time.
[0660] The "means for acquiring location information" is a means for acquiring information on the user's current location or a specified location using a location information acquisition device such as a GPS.
[0661] The "means for acquiring and storing information about the user's preferences and interests" refers to a means for collecting data about preferences and interests previously input by the user and storing it in a database.
[0662] The "means for recognizing the user's emotional state" refers to a means for determining the user's emotional state by analyzing the user's facial expressions and tone of voice using sensors such as a camera or microphone.
[0663] The "means for generating a set of routes" is a means for calculating and generating an appropriate driving route based on the user's preferences, interests, emotional state, and location information.
[0664] The "means for suggesting interesting spots" is a means for suggesting places and facilities that may be of interest to the user along the generated route.
[0665] "Means for updating and displaying navigation information in real time" means means for providing users with constantly updated information about their current route and destination using GPS information and other real-time data.
[0666] The "means for comparatively analyzing the profile data and emotional data of other users" refers to a means for comparing the profiles and emotional states of multiple users and analyzing commonalities and differences.
[0667] The "means for identifying a group of users with similar interests and emotional states" is a means for grouping and identifying users with common interests and emotional states based on comparatively analyzed data.
[0668] "Means for real-time updates based on traffic conditions and weather information" refers to means for obtaining current traffic conditions and weather data and dynamically changing and updating routes and suggested spots based on that data.
[0669] To implement the present invention, it is necessary to build a system that provides personalized driving routes based on a user's preferences and emotional state. The system includes means for acquiring location information, means for acquiring and storing information about a user's preferences and interests, means for recognizing the user's emotional state, means for generating a set of routes, means for suggesting points of interest, and means for updating and displaying navigation information in real time.
[0670] Specific configuration
[0671] Hardware
[0672] The following hardware is proposed to be used:
[0673] GPS module: Required to obtain location information.
[0674] Camera and microphone: Used to analyze the user's facial expressions and tone of voice to recognize their emotional state.
[0675] Computer (server): Responsible for processing and storing data.
[0676] software
[0677] The software used includes the following:
[0678] Python: Used as the primary programming language for server and data processing.
[0679] Database Management System (DBMS): Used to store user profiles and emotion data.
[0680] Emotion Recognition Engine: Processes data from the camera and microphone and uses it to recognize the user's emotional state.
[0681] Generative AI model: Used to build algorithms that suggest optimal routes and spots to users based on collected data.
[0682] Data Flow and Processing
[0683] 1. The server retrieves the profile information (name, age, interests, etc.) that the user enters when using the application for the first time and stores it in a database.
[0684] 2. The device uses a built-in camera and microphone to analyze the user's facial expressions and tone of voice to recognize their emotional state, and the data is sent to the server.
[0685] 3. The server compares and analyzes the profile data and emotional data of other users to identify groups of users with similar interests and emotional states, and generates a set of routes based on the results.
[0686] 4. The server monitors current traffic and weather information and updates the route and suggested spots in real time. This information is sent to the device and displayed to the user.
[0687] Specific examples
[0688] Let's say User B is interested in "history" and "cafes" and is currently looking for "relaxation." User B sets a driving route from Osaka to Kyoto in the application. The server calculates the optimal route based on the user's profile and current emotional state, suggesting historical temples and quiet cafes along the way. If the user feels stressed during the drive, the server will detect this information and suggest new relaxation spots.
[0689] Prompt Sentence Examples
[0690] The prompt sentence used to analyze user profile and emotional data using a generative AI model and make optimal suggestions is in the following format:
[0691] User Profile:
[0692] Name: User B
[0693] Age: 30
[0694] Interests: History, Cafes
[0695] Current emotional state: Relaxed
[0696] Starting point: Osaka
[0697] Destination: Kyoto
[0698] Using this information, we can suggest the best driving route and places to stop along the way.
[0699] The system constructed in this way can provide a personalized driving experience that is in line with the user's preferences and emotional state.
[0700] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0701] Step 1: Create a user profile
[0702] Input: Profile information (such as name, age, interests, etc.) that users enter when they first use the application
[0703] Operation: The device collects the entered profile information.
[0704] Data Processing: The collected information is properly formatted into a database.
[0705] Output: The formatted profile information is sent to the server and stored in a database.
[0706] Step 2: Recognizing your emotional state
[0707] Input: Data on the user's facial expressions and tone of voice obtained through the device's camera and microphone
[0708] How it works: The device uses a camera and microphone to collect the user's emotions in real time.
[0709] Data processing: The emotion recognition engine analyzes the collected data and determines a specific emotional state (e.g., "relaxed" or "stressed").
[0710] Output: The determined emotional state is sent to the server and recorded.
[0711] Step 3: Analyzing similar profiles and sentiment data
[0712] Input: User profile data and emotion data
[0713] How it works: The server takes other users' profile data and sentiment data and compares them using an analysis engine.
[0714] Data processing: Data analysis algorithms identify groups of users with similar interests and emotional states.
[0715] Output: Data for the identified user groups is generated.
[0716] Step 4: Obtaining location information
[0717] Input: The user enters the origin and destination.
[0718] Operation: The device obtains its current location using the GPS module.
[0719] Data processing: The acquired location information is converted into an appropriate format.
[0720] Output: The converted location information is sent to the server.
[0721] Step 5: Generate Routes
[0722] Input: User profile information, emotional state, location information
[0723] How it works: The server uses this information to calculate the optimal driving route, and uses a generative AI model to create prompts and suggest the best route.
[0724] Data processing: Algorithms dynamically generate routes based on the user's preferences and emotions.
[0725] Output: The generated route is sent to the device.
[0726] Step 6: Propose a spot
[0727] Input: Generated route, user profile information, emotional state
[0728] How it works: The server selects spots along the generated route that match the user's interests and emotional state.
[0729] Data Processing: The selected spots are properly formatted.
[0730] Output: Formatted spot information is sent to the device.
[0731] Step 7: Real-time navigation and updates
[0732] Input: Current traffic conditions, weather information, fluctuations in the user's emotional state
[0733] How it works: The device provides real-time navigation and monitors your location using GPS. The server receives this data and updates the route and spot information as needed.
[0734] Data processing: Route and spot information is dynamically updated based on traffic conditions, weather information, and emotion data.
[0735] Output: Updated navigation information is displayed on the device.
[0736] In this way, it is possible to provide optimal driving routes and spots in real time based on the user's preferences and emotional state.
[0737] 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.
[0738] 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.
[0739] 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.
[0740] [Third embodiment]
[0741] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0742] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[0743] 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).
[0744] 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.
[0745] 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.
[0746] 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).
[0747] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0748] 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.
[0749] 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.
[0750] 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.
[0751] 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.
[0752] 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."
[0753] This system is designed to generate personalized driving routes based on the user's preferences and interests, and to suggest interesting spots, unknown tourist destinations, local gourmet food, etc. The program processing of this system is explained below.
[0754] Creating and Updating User Profiles
[0755] When a user first uses the application, they input information about their preferences and interests, such as "nature," "history," and "food." The device collects this information and sends it to the server. The server stores the information in a database and creates a user profile.
[0756] If a user wants to add a new interest, for example, they can set "outdoors" as a new hobby. In this case, the information is sent from the device to the server and the profile is updated.
[0757] Find Similar Profiles
[0758] The server periodically analyzes all stored user profile data using machine learning algorithms to identify user groups with similar interests, improving the accuracy of personalized suggestions by taking into account the spots and gourmet information that other users are interested in.
[0759] Location and route calculation
[0760] When a user plans a drive, they input their starting point and destination into their device. GPS is used to obtain their current location, which is then sent along with the starting point information to the server. The server then calculates the optimal driving route based on the user's current location, destination, and user profile.
[0761] Spot suggestions and route display
[0762] The calculated route includes interesting spots that match the user's preferences. For example, if the user is interested in "hot springs" and "local cuisine," hot springs and well-received local restaurants along the way will be suggested. This information is sent from the server to the device and displayed as a route and spots on a map.
[0763] Navigation and real-time updates
[0764] Once the user starts driving, the device provides real-time navigation, constantly checking the user's current location using GPS and providing directions. The server monitors traffic and weather conditions and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, an alternative route is calculated and sent to the device.
[0765] If a new interesting spot is discovered while driving, the server will notify the device and recommend that the user visit. For example, one day, a notification may appear saying, "A new cafe has opened nearby."
[0766] Specific examples
[0767] As a concrete example, suppose User A is interested in "nature" and "cafes." User A sets his starting point as Tokyo and his destination as Karuizawa. Based on the user's information, the server calculates a driving route from Tokyo to Karuizawa and suggests spots along the way, such as "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device provides real-time guidance and also displays information about spots along the way.
[0768] This series of processes allows users to enjoy a driving experience based on their own preferences and interests. Also, by incorporating the experiences and preferences of other users, it is possible to provide new discoveries and enjoyment.
[0769] The processing flow will be explained below.
[0770] Step 1: Enter your user information
[0771] When a user uses the application for the first time, they enter information such as their username, age, and interests (e.g., nature, history, gourmet food, etc.). The device receives this information and sends it to the server.
[0772] Step 2: Create a user profile
[0773] The server stores the received user information in a database and creates a profile for the user.
[0774] Step 3: Update your profile
[0775] When a user adds a new interest or preference, for example, entering an interest in "hot springs," the device sends the updated information to the server, which then updates the profile.
[0776] Step 4: Analyzing other user profiles
[0777] The server compares and analyzes the stored profile data of all users using machine learning algorithms to identify groups of users with similar interests.
[0778] Step 5: Set your origin and destination
[0779] The user inputs the departure point and destination into the terminal, and this location information, including the current location, is sent to the server.
[0780] Step 6: Route calculation
[0781] The server calculates the optimal route from the origin to the destination, inserting points of interest from the user's profile along the route as appropriate.
[0782] Step 7: Propose a spot
[0783] The server sends the calculated route and information about points of interest along the route to the device, which receives it and displays it on a map.
[0784] Step 8: Start Navigation
[0785] Once the user starts driving, the device provides real-time navigation, using GPS to constantly check the user's current location and provide directions and directions to the next stop.
[0786] Step 9: Real-time updates
[0787] The server monitors traffic and weather conditions in real time and updates route and spot information as needed, sending the updated information to the device and notifying the user.
[0788] Step 10: Notification of new spots
[0789] If a new interesting spot is discovered during the drive, the server notifies the device of the information and displays a message recommending the user to visit.
[0790] In this way, each step works in succession to provide the user with a personalized driving route and navigation experience.
[0791] Example 1
[0792] 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."
[0793] Conventional navigation systems simply present the shortest routes and standard tourist spots without considering the user's preferences or interests. This prevents users from enjoying trips or drives tailored to their individual interests, making it difficult to provide a personalized experience. Furthermore, they lack the ability to dynamically update routes based on real-time traffic and weather information, making them less convenient in situations where a quick response is required. Furthermore, they lack a method for suggesting new discoveries and fun activities by utilizing other users' profile data, making it difficult to improve the quality of the user experience.
[0794] 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.
[0795] In this invention, the server includes a means for acquiring location information, a means for acquiring and storing information about a user's preferences and interests, a means for creating and updating a user profile, a means for identifying similar user groups, a means for suggesting interesting places along the generated route, and a means for updating and displaying navigation information in real time. This allows users to enjoy personalized routes based on their preferences and interests. Furthermore, suggestions utilizing other users' profile data provide new discoveries and enjoyment, and dynamic route updates based on real-time traffic and weather information are possible.
[0796] "Means for acquiring location information" refers to a device or method for collecting information on the user's current location and the specified starting point and destination.
[0797] "Means for acquiring and storing information about user preferences and interests" refers to devices or methods for collecting user-entered interests and preferences (e.g., nature, history, gourmet food, etc.) and storing them in a database.
[0798] A "means for creating and updating a user profile" is a device or method for generating a user profile based on collected information about a user's interests and preferences, and updating that information as needed.
[0799] A "means for identifying similar user groups" is a device or method for identifying groups of users with similar interests or preferences using machine learning algorithms or data analysis techniques.
[0800] The "means for generating a set of routes" refers to a device or method for calculating and generating an optimal route based on the user's location information and profile information.
[0801] A "means for suggesting places of interest along the generated route" is a device or method for suggesting places of interest or tourist attractions along the route based on the user's interests and preferences.
[0802] "Means for updating and displaying navigation information in real time" refers to a device or method for updating navigation information based on real-time location information, traffic conditions, weather information, etc., and displaying it to the user.
[0803] "Means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing routes and suggested spots" refers to devices or methods for acquiring traffic conditions and weather information in real time, and appropriately changing routes and suggested spots based on that information.
[0804] The present invention is a system that generates a personalized driving route based on a user's preferences and interests, and suggests interesting spots, unknown tourist destinations, local gourmet food, etc. Specific embodiments are described below.
[0805] Creating and Updating User Profiles
[0806] When a user first uses an application, they launch the app and enter their preferences and interests. For example, categories include "nature," "history," and "food." The device collects this information and sends it to the server using an HTTP POST request. The server receives this information, stores it in a database, and creates a user profile. This allows the user to receive personalized suggestions based on their individual preferences.
[0807] Find Similar Profiles
[0808] The server periodically analyzes the stored profile data of all users using machine learning algorithms (e.g., K-means clustering), which identifies groups of users with similar interests. This improves the accuracy of personalized suggestions by taking into account the spots and gourmet information that other users are interested in.
[0809] Location and route calculation
[0810] When a user plans a drive, they input their starting point and destination into their device. The device uses its built-in GPS module to obtain their current location and sends it along with the starting point information to the server. The server uses this data to calculate the optimal driving route using a common map service API (e.g., Google Maps API). At this time, the server takes into account the user's profile and generates a route tailored to their individual preferences.
[0811] Spot suggestions and route display
[0812] The server searches for interesting spots that match the user's preferences along the calculated route. This is done by using spot information stored in a database or external APIs (e.g., Yelp API or TripAdvisor API). Once the spot information is determined, the server sends the optimal route including the information to the device. The device receives this information, and the route and spot information are displayed on a map application (e.g., Google Maps).
[0813] Navigation and real-time updates
[0814] Once the user starts driving, the device provides real-time navigation. It uses GPS to constantly check the user's current location and guides the user in the right direction. The server monitors traffic and weather conditions in the backend and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, the server calculates a new route and sends that information to the device. Additionally, if a new interesting spot is discovered, the server immediately sends a notification to the device. An example of a notification might be a message like, "A new cafe has opened nearby."
[0815] Examples of specific examples and prompts
[0816] For example, if User A is interested in "nature" and "cafes," he or she can set the starting point as Tokyo and the destination as Karuizawa. Based on the user's profile and current location, the server calls the Google Maps API to calculate the optimal driving route from Tokyo to Karuizawa. Suggested spots along the way include "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device provides real-time guidance and displays information about spots along the way.
[0817] An example of a prompt for a generative AI model might be, "Please suggest a driving route from Tokyo to Karuizawa where you can enjoy nature and cafes." Using this prompt, a personalized route can be provided.
[0818] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0819] Detailed description of the processing steps
[0820] Step 1: Create a user profile
[0821] When a user launches the application for the first time, they enter their preferences and interests (e.g., "nature," "history," and "food"). The device collects this information, composes a packet in JSON format, and sends it to the server using an HTTP POST request. At this point, the input is information about the user's preferences and interests, and the output is data to be sent to the server. The server saves the received information in a database and initializes and creates a user profile.
[0822] Step 2: Update your user profile
[0823] When a user wants to add a new interest or preference, they enter the update in the device's settings menu. For example, they want to add an interest in "outdoors." The device collects the update and sends it to the server. The input is the new preference information, and the output is an updated user profile. The server adds this information to the existing profile and updates the database.
[0824] Step 3: Find Similar Profiles
[0825] The server periodically analyzes the stored profile data of all users. It uses machine learning algorithms (e.g., K-means clustering) to identify user groups with similar interests. The input data is the profile data of all users, and the output is a list of similar user groups. This step enables personalized suggestions based on the spots and gourmet information that other users are interested in.
[0826] Step 4: Obtaining location information and calculating routes
[0827] When a user plans a drive, they input their starting point and destination into their device. The device uses its built-in GPS module to obtain their current location information and sends it to the server. The input is the starting point, destination, and current location information, and the output is a personalized driving route. The server uses this information to calculate the optimal driving route using external map services such as Google Maps API. The calculation result is personalized, taking into account information in the user profile.
[0828] Step 5: Spot suggestions and route display
[0829] The server searches for interesting spots that match the user's preferences along the calculated route. It uses spot information stored in a database and data from external APIs (e.g., Yelp API or TripAdvisor API). The input is the user's profile information and route data, and the output is a list of suggested spots. The suggested information is sent from the server to the device, and the device displays the route and spot information on a map application (e.g., Google Maps). The spots are indicated on the map with icons or pins.
[0830] Step 6: Navigation and real-time updates
[0831] Once the user starts driving, the device begins providing real-time navigation. It constantly checks the user's current location using GPS and provides turn-by-turn navigation. The server monitors real-time traffic and weather information in the backend and updates the route and suggested spots as needed. The input is real-time location information, traffic conditions, and weather information, and the output is an updated route and suggested spots. For example, if a sudden traffic jam occurs, the server calculates a new route and sends that information to the device. Additionally, if a new interesting spot is found, the server immediately sends a notification to the device.
[0832] (Application example 1)
[0833] 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."
[0834] In recent years, with the advancement of autonomous driving technology, optimization and personalization of driving routes have become increasingly important. Conventional navigation systems have difficulty suggesting spots based on the user's preferences and interests, and there is a need for a means to provide a more personalized driving experience. In addition, real-time route updates that take into account changes in traffic conditions and weather have been insufficient, so a system that can improve user satisfaction is needed.
[0835] 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.
[0836] In this invention, the server includes: means for acquiring location information; means for acquiring and storing information related to a user's preferences and interests; means for generating a set of routes based on the user's preferences and interests and the location information; means for suggesting interesting spots along the generated route; means for updating and displaying navigation information in real time; means for communicating with an external server to acquire traffic and weather information in real time; means for dynamically updating the set of routes and suggested spots based on changes in traffic and weather; means for comparing and analyzing profile data of other users to identify user groups with similar interests; means for calculating and presenting an optimal driving route that reflects the user's profile information based on a departure point and destination specified by the user; and means for notifying and suggesting new interesting places discovered while driving. This enables the provision of a personalized driving experience based on the user's preferences and interests, and improves user satisfaction by updating routes in response to changes in traffic and weather conditions in real time.
[0837] "Means of obtaining location information" refers to the function of obtaining the current location using location information services such as GPS.
[0838] "Means for obtaining and storing information about user preferences and interests" refers to the function of collecting data related to the interests and preferences entered by the user and storing it in a database.
[0839] "Means for generating a set of routes" refers to a system that calculates and creates a route from a user's preferences and interests, as well as their current location to their destination.
[0840] "Means for suggesting interesting spots" refers to a system that recommends places such as tourist attractions and restaurants that suit the user's preferences and are located on the generated route.
[0841] "Means for updating and displaying navigation information in real time" refers to an application that provides guidance to users while they are traveling, applying the latest traffic information and route changes.
[0842] "Means of communicating with an external server to obtain real-time traffic and weather information" refers to a system that receives the latest traffic and weather information from an external server using the Internet or a network.
[0843] "Means of dynamically updating the set of routes and suggested spots" refers to the ability to change calculated routes and recommended spots on the fly in response to changes in traffic and weather conditions.
[0844] "Means for comparative analysis of other users' profile data and identifying user groups with similar interests" refers to a system that analyzes stored data of other users using machine learning algorithms, etc., and classifies users with common interests.
[0845] "Means for calculating and presenting optimal driving routes that reflect user profile information" refers to a system that calculates optimal routes and provides route information based on the user's preferences and interests.
[0846] "Means of notifying and suggesting newly discovered interesting places to the user" refers to a function that notifies the user in real time of new tourist spots and facilities discovered while driving.
[0847] The system of the present invention provides a series of processes for users to enjoy personalized driving routes, allowing users to plan a drive based on their preferences and interests, and reach their destination while receiving real-time traffic and weather information.
[0848] System configuration
[0849] The system includes a terminal, a server, a GPS module, and an external database.
[0850] Creating and updating user profiles
[0851] First, a user accesses the application using their device. They input information about their preferences and interests (e.g., "nature" or "cafes"), which is then sent from the device to the server. The server stores the received information in a database and creates or updates the user's profile. For example, if the user becomes interested in "outdoors," that information is also added to the database.
[0852] Find Similar Profiles
[0853] The server uses machine learning algorithms to identify groups of users with similar interests based on stored user profile data, a process that allows the server to provide more accurate recommendations based on the places and interests recommended by other users.
[0854] Route calculation and spot suggestions
[0855] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location and sends it to the server. The server calculates the optimal driving route based on the user's current location, destination, and user profile. This calculation also includes information on external traffic and weather conditions. The calculated route includes points of interest that match the user's preferences. For example, if a user is interested in "hot springs" and "local cuisine," the route will suggest hot spring resorts and popular local restaurants.
[0856] Real-time updates
[0857] Once the user starts driving, the device provides real-time navigation, constantly checking the user's current location using GPS and providing directions. The server monitors traffic and weather conditions and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, an alternative route is calculated and sent to the device. Additionally, if a new interesting spot is discovered during the drive, the server notifies the device and recommends that the user visit it.
[0858] Hardware and software used
[0859] Hardware: On-board computers and GPS modules for autonomous vehicles (e.g., NVIDIA Drive platform)
[0860] Software: Navigation application (e.g., a program written in Python), server-side RESTful API (e.g., Flask, Django)
[0861] Specific examples
[0862] For example, if User A is interested in "nature" and "cafes," and sets the starting point as Tokyo and the destination as Karuizawa, the server will calculate the optimal driving route based on the user's information. This route may include suggestions such as "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device will provide real-time guidance and display information about spots along the way.
[0863] Prompt Sentence Examples
[0864] "Develop an application that suggests driving routes and tourist spots based on the user's interests and preferences. Specify the starting point and destination and provide real-time information on tourist spots, restaurants, etc. that match the user's interests. Also include a function to update the route based on traffic and weather information."
[0865] This allows users to enjoy a personalized driving experience while also ensuring safe and efficient travel based on the latest external information.
[0866] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0867] Step 1:
[0868] A user opens an application on their device and inputs information about their preferences and interests. This information may include interests such as "nature" and "cafes." This user information is collected as input data and sent from the device to a server. The server stores the received data in a database and creates a user profile.
[0869] Step 2:
[0870] The server periodically analyzes the stored user profile data. It uses machine learning algorithms to analyze the data and identify user groups with similar interests. At this stage, it takes all users' profile data as input and obtains user groups with similar interests as output.
[0871] Step 3:
[0872] The user inputs their starting point and destination into the device. The device uses a GPS module to obtain their current location and sends it to the server as their starting point. The server calculates the optimal driving route based on the user's current location, destination, and user profile. This route calculation also includes obtaining traffic and weather information. The starting point, destination, and user profile are used as input, and a personalized driving route is obtained as output.
[0873] Step 4:
[0874] The server identifies points of interest along the calculated route and sends this information to the device, which then uses the received information to display the route and suggested points on a map. The route information and point information are used as input, and the map information displayed to the user is obtained as output.
[0875] Step 5:
[0876] When the user starts driving, the device provides real-time navigation. It constantly checks the user's current location using GPS, and the server monitors traffic and weather information in real time, updating the route as needed. The current location information and traffic and weather information obtained from an external server are used as input, and the updated route and new spot information are obtained as output.
[0877] Step 6:
[0878] If a new interesting spot is found during the journey, the server notifies the device. For example, the server sends a notification to the device saying, "A new cafe has opened nearby," suggesting that the user visit. The new spot information is used as input, and the notification to the user is obtained as output.
[0879] Step 7:
[0880] Once the user completes the driving route, the device collects the user's feedback, which is sent to the server and stored in a database to help improve future route calculations and suggest new spots. The user's feedback is used as input, and updated profile data is obtained as output.
[0881] 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.
[0882] This system not only provides personalized driving routes based on the user's preferences and interests, but also suggests optimal routes and spots based on the user's emotions. The program processing of this system is explained in detail below.
[0883] Creating and Updating User Profiles
[0884] When a user first uses the application, they enter information such as their username, age, and interests (e.g., nature, history, food, etc.). The device collects this information and sends it to the server, which stores it in a database and creates a user profile. This information is updated as the user's interests change.
[0885] Use of emotion engine
[0886] The device is equipped with an emotion engine that recognizes the user's emotions, and uses sensors such as a camera and microphone to analyze the user's facial expressions and tone of voice. The emotion engine recognizes emotional states such as "happiness," "sadness," and "surprise," and sends this information to a server.
[0887] Similarity profile and sentiment data analysis
[0888] The server compares the profile data and emotional data of other users to identify groups of users with similar interests and emotional states, thereby gathering data to suggest spots and activities that are appropriate for the user's current emotional state.
[0889] Location and route calculation
[0890] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location and sends this information to the server. The server then calculates the optimal driving route based on this information, the user's profile, and emotional data. In doing so, it selects relaxing and stimulating spots that match the user's emotional state.
[0891] Spot suggestions and route display
[0892] The calculated route includes interesting spots based on the user's interests and emotions. For example, if the user is a "nature lover" and "want to relax," hot springs and quiet cafes along the way will be suggested. This information is sent from the server to the device and displayed on the map.
[0893] Navigation and real-time updates
[0894] When the user starts driving, the device provides real-time navigation and guidance while constantly checking the user's current location using GPS. The server monitors traffic and weather conditions and updates route and spot information in real time. The emotion engine also continuously monitors the user's emotional state and dynamically changes suggestions as needed.
[0895] For example, if a user feels stressed due to a sudden traffic jam, the server will detect this and suggest spots and routes that will help relieve stress. Also, if a new interesting spot is discovered while driving, the server will notify the device of this information based on data from the emotion engine and recommend that the user visit it.
[0896] Specific examples
[0897] Suppose User B is interested in "history" and "cafes" and is currently seeking "relaxation." By setting the starting point as Osaka and the destination as Kyoto, the server calculates a driving route from Osaka to Kyoto based on the user's profile and emotional state, suggesting historical temples and quiet cafes along the way. Once the user begins driving, the device provides real-time guidance, showing the direction of travel and providing detailed information about spots along the way.
[0898] This system allows users to enjoy a personalized driving experience and receives appropriate suggestions based on their emotions, resulting in a more satisfying drive.
[0899] The processing flow will be explained below.
[0900] Step 1: Enter your user information
[0901] When a user uses the application for the first time, they enter their username, age, hobbies, and interests (e.g., nature, history, gourmet food, etc.). The device collects this data and sends it to the server.
[0902] Step 2: Create a user profile
[0903] The server stores the received user information in a database and creates a profile for the user.
[0904] Step 3: Recognizing Emotional Data
[0905] When a user uses the application, sensors such as the camera and microphone built into the device are used to analyze facial expressions and tone of voice. The emotion engine recognizes the user's emotional state (e.g., joy, sadness, surprise) and sends the information to the server.
[0906] Step 4: Update your profile
[0907] When a user adds new interests, preferences, or emotional states, they enter the new data through their IP terminal and send it to the server, which receives it and updates the existing profile data.
[0908] Step 5: Analyze other user data
[0909] The server periodically analyzes other users' profile data and emotional data using machine learning algorithms to identify groups of users with similar interests and emotional states.
[0910] Step 6: Set your origin and destination
[0911] The user inputs the departure point and destination into the terminal, and location information including the current location is sent to the server.
[0912] Step 7: Route calculation
[0913] The server calculates the optimal route from the origin to the destination, selecting spots based on the user's profile and emotional state and incorporating them into the route.
[0914] Step 8: Propose a spot
[0915] The server sends the calculated route and information about suggested spots along the route to the device, which receives it and displays it on a map.
[0916] Step 9: Start Navigation
[0917] When a user starts driving, the device provides real-time navigation, using GPS to determine the user's current location and providing directions and directions to the next stop.
[0918] Step 10: Real-time updates
[0919] The server monitors traffic and weather conditions in real time and updates route and spot information as needed, while the emotion engine continuously monitors the user's emotional state and dynamically changes suggestions based on this.
[0920] For example, if a user feels stressed due to a sudden traffic jam, the emotion engine will detect this and the server will suggest a detour route to a new relaxing spot.
[0921] Step 11: Notification of new spots
[0922] If a new interesting spot is discovered while driving, the server will notify the device of the information based on the emotion engine data and recommend the user to visit. For example, a notification will be displayed while driving saying, "A new cafe has opened nearby."
[0923] In this way, users can enjoy a personalized driving experience that takes into account their individual preferences and emotional state.
[0924] Example 2
[0925] 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."
[0926] Conventional navigation systems only suggest routes based on the user's basic location information and preferences, and do not provide personalized suggestions that take into account the user's emotional state. This makes it difficult to increase user satisfaction while driving. Furthermore, since they do not suggest appropriate spots or routes that respond to real-time changes in the user's emotional state, there is a need to optimize the driving experience.
[0927] 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.
[0928] In this invention, the server includes: means for acquiring location information; means for acquiring and storing a user's preferences, interests, and emotional state; means for generating a set of routes based on the user's preferences, interests, emotional state, and location information; means for suggesting interesting spots along the generated route; means for updating and displaying navigation information in real time; means for monitoring the user's emotional state in real time and dynamically changing the suggested content; means for comparing and analyzing other users' profile data and emotional data to identify user groups with similar interests and emotional states; and means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing the route and suggested spots. This enables the suggestion of spots and routes based on the user's emotional state, resulting in a more satisfying and personalized driving experience. Furthermore, real-time information updates constantly suggest optimal routes and spots, significantly improving the quality of driving.
[0929] "Means for acquiring location information" refers to a device or program for acquiring information about a user's current location using GPS or other location detection technology.
[0930] "Means for acquiring and storing user preferences, interests, and emotional states" refers to a device or program for collecting information on preferences and interests entered by a user and their emotional states analyzed using an emotion engine, and storing them in a database.
[0931] A "means for generating a set of routes" is a device or program containing an algorithm for calculating and generating an optimal driving route based on the user's preferences, interests and emotional state.
[0932] The "means for suggesting interesting spots" is a device or program for selecting spots on the generated route that are suited to the user's interests and emotional state, and suggesting them to the user.
[0933] "Means for updating and displaying navigation information in real time" refers to a device or program that updates the latest navigation information in real time based on the user's current location while driving and provides it to the user visually and audibly.
[0934] "Means for monitoring the user's emotional state in real time and dynamically changing the suggested content" refers to a device or program that uses an emotion engine to continuously monitor the user's emotional state while driving and dynamically changes the suggested spots and routes based on that data.
[0935] "Means for comparatively analyzing profile data and emotional data of other users and identifying user groups with similar interests and emotional states" refers to a device or program for comparatively analyzing the profile and emotional data of other users stored in a database with the current user's data and identifying user groups with similar characteristics.
[0936] "Means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing routes and suggested spots" refers to a device or program that acquires changes in traffic conditions and weather in real time, and dynamically changes routes and suggested spots based on that information.
[0937] System Overview
[0938] This system provides personalized driving routes based on the user's preferences, interests, and emotional state, and can suggest optimal routes and spots depending on the user's emotions.The system is mainly composed of three elements: a server, a terminal, and a user.
[0939] Creating and Updating User Profiles
[0940] When a user first uses an application, they enter basic information such as their username, age, and interests. This data is collected by the device and sent to the server. The server creates a user profile based on the received information and stores it in a database. For example, a user might select interests such as "nature lover," "history lover," or "foodie." If the user's interests change, the information is updated accordingly.
[0941] Use of emotion engine
[0942] The device is equipped with an emotion engine that uses sensors such as a camera and microphone to collect the user's facial expressions and tone of voice in real time. The emotion engine analyzes the user's emotional state and obtains emotional data such as "happiness," "sadness," and "surprise." This information is encrypted and sent to the server. For example, if the user is smiling, the emotional state is detected as "happiness," and if the user has a sad face, the emotional state is detected as "sadness."
[0943] Similarity profile and sentiment data analysis
[0944] The server performs comparative analysis of the current user's data based on the profile data and emotional data of other users stored in the database. This identifies user groups with similar interests and emotional states. Identifying similar user groups makes it possible to suggest spots and activities that match the user's current emotional state.
[0945] Location and route calculation
[0946] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location information and sends it to the server. The server then calculates the optimal driving route based on the obtained location information, the user's profile, and emotional data. In doing so, it selects relaxing and stimulating spots that match the user's emotional state. For example, if the user is a "nature lover" and is looking to "relax," it will suggest hot springs and quiet cafes along the way.
[0947] Spot suggestions and route display
[0948] Based on the calculated route, the server selects spots that suit the user's interests and emotional state. Information about the selected spots is sent from the server to the device and displayed on a map. The user can use this information to plan their drive.
[0949] Navigation and real-time updates
[0950] When the user starts driving, the device provides real-time navigation and constantly checks the user's current location using GPS. The server monitors traffic and weather conditions and updates route and spot information in real time based on the acquired data. The emotion engine also continuously monitors the user's emotional state and dynamically changes suggestions as needed. For example, if the user becomes stressed due to a sudden traffic jam, the server will suggest spots and routes suitable for relieving stress.
[0951] Specific examples
[0952] For example, imagine a user wants to drive from Osaka to Kyoto. The user is interested in "history" and "cafes," and currently wants to "relax." Based on this profile and emotion data, the server calculates the optimal driving route from Osaka to Kyoto, suggesting historical temples and quiet cafes along the way. The device provides real-time navigation, showing the user's direction and providing detailed information about the spots along the way.
[0953] Examples of prompt statements
[0954] An example prompt might be, "How can I suggest historical temples and quiet cafes for the user when they are driving from Osaka to Kyoto?"
[0955] This system allows users to enjoy a personalized driving experience and receives appropriate suggestions based on their emotions, resulting in a more satisfying drive. Real-time suggestions are always made based on the latest information, so users can get the best possible driving experience.
[0956] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0957] Step 1:
[0958] Creating a User Profile
[0959] When a user uses the application for the first time, they enter information such as their username, age, and interests (nature, history, gourmet food, etc.).
[0960] Input: Username, Age, Interests
[0961] Data processing: The device formats this information and converts it into JSON format.
[0962] Output: Converted user information in JSON format
[0963] The device collects this information and sends it to a server, which receives it, stores it in a database, and creates a user profile.
[0964] Specific Action: Inserts a new record into the database and saves it as a user profile.
[0965] Step 2:
[0966] Acquiring emotional data using the emotion engine
[0967] The device is equipped with sensors such as a camera and microphone, which collect the user's facial expressions and tone of voice in real time.
[0968] Input: User's facial expression, voice
[0969] Data processing: The emotion engine uses facial expression recognition and voice analysis to identify emotional states (happiness, sadness, surprise, etc.).
[0970] Output: Identified emotion data
[0971] The device sends this emotion data to the server, which then stores it in a database.
[0972] Specific operation: Emotion data is linked to the user profile and stored in a database.
[0973] Step 3:
[0974] Similarity profile and sentiment data analysis
[0975] The server compares the profile data and emotional data of other users to identify groups of users with similar interests and emotional states.
[0976] Input: Current user data, other user data
[0977] Data processing: Compare profiles and sentiment data using a similarity algorithm.
[0978] Output: Similar user groups
[0979] The server stores similar user groups in a database.
[0980] Specific operation: Calculate similarity scores and save them as a group of users who meet certain criteria.
[0981] Step 4:
[0982] Location information acquisition and route calculation
[0983] When the user inputs the departure point and destination into the terminal, the terminal uses GPS to obtain current location information.
[0984] Input: Departure point, Destination
[0985] Data processing: Current location information is obtained using a GPS device and converted into location data.
[0986] Output: The location data obtained.
[0987] The device sends location data to a server, which then calculates the optimal driving route based on this information, the user's profile, and emotional data.
[0988] Specific operation: Runs a route calculation algorithm and generates a route that matches the user's profile and emotions.
[0989] Step 5:
[0990] Spot suggestions and route display
[0991] Based on the calculated route, the server selects interesting spots based on the user's interests and emotions.
[0992] Input: Calculated route, user interest and emotion data
[0993] Data processing: Using a spot selection algorithm, the optimal spot is selected.
[0994] Output: Selected spot information
[0995] The server sends this information to the terminal, which then displays the spot information on a map.
[0996] Specific behavior: Uses the mapping API to display spots on a map.
[0997] Step 6:
[0998] Navigation and real-time updates
[0999] Once the user starts driving, the device provides real-time navigation.
[1000] Input: Current location data
[1001] Data processing: Executes route guidance algorithms and determines direction of travel.
[1002] Output: Real-time navigation information
[1003] The server monitors traffic and weather conditions and updates route and spot information in real time.
[1004] Specific operation: Traffic and weather information is obtained through API, and route and spot information is dynamically updated.
[1005] Step 7:
[1006] Continuous monitoring of emotional state and suggestion changes
[1007] The emotion engine continuously monitors the user's emotional state.
[1008] Input: Real-time facial expressions and voice of the user
[1009] Data Processing: The emotion engine analyzes the emotion data to identify the current emotional state.
[1010] Output: Updated emotion data
[1011] The server dynamically changes the suggestions based on changes in emotional state.
[1012] Specific operation: The proposed algorithm is re-run to re-suggest spots and routes that are appropriate for the user's new emotional state.
[1013] In this way, users can enjoy a real-time, emotionally-driven, and personalized driving experience.
[1014] (Application example 2)
[1015] 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."
[1016] Conventional navigation systems can suggest routes based on a user's preferences and interests, but they cannot suggest optimal spots or routes that take the user's emotional state into account. It is also technically difficult to dynamically change the suggested content in real time in response to changes in the user's emotions. This makes it difficult to provide a satisfying driving experience. Furthermore, it is also impossible to make more accurate suggestions by utilizing profile data or emotional data of other users. The present invention aims to solve these problems.
[1017] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1018] In this invention, the server includes means for acquiring and storing information about a user's preferences and interests, means for recognizing the user's emotional state, means for comparing and analyzing the profile data and emotional data of other users to identify a user group with similar interests and emotional states, and means for real-time updates based on traffic and weather information, thereby enabling the server to generate a series of routes based on the user's preferences, interests, and emotional states, suggest interesting spots along the generated routes, and update and display navigation information in real time.
[1019] The "means for acquiring location information" is a means for acquiring information on the user's current location or a specified location using a location information acquisition device such as a GPS.
[1020] The "means for acquiring and storing information about the user's preferences and interests" refers to a means for collecting data about preferences and interests previously input by the user and storing it in a database.
[1021] The "means for recognizing the user's emotional state" refers to a means for determining the user's emotional state by analyzing the user's facial expressions and tone of voice using sensors such as a camera or microphone.
[1022] The "means for generating a set of routes" is a means for calculating and generating an appropriate driving route based on the user's preferences, interests, emotional state, and location information.
[1023] The "means for suggesting interesting spots" is a means for suggesting places and facilities that may be of interest to the user along the generated route.
[1024] "Means for updating and displaying navigation information in real time" means means for providing users with constantly updated information about their current route and destination using GPS information and other real-time data.
[1025] The "means for comparatively analyzing the profile data and emotional data of other users" refers to a means for comparing the profiles and emotional states of multiple users and analyzing commonalities and differences.
[1026] The "means for identifying a group of users with similar interests and emotional states" is a means for grouping and identifying users with common interests and emotional states based on comparatively analyzed data.
[1027] "Means for real-time updates based on traffic conditions and weather information" refers to means for obtaining current traffic conditions and weather data and dynamically changing and updating routes and suggested spots based on that data.
[1028] To implement the present invention, it is necessary to build a system that provides personalized driving routes based on a user's preferences and emotional state. The system includes means for acquiring location information, means for acquiring and storing information about a user's preferences and interests, means for recognizing the user's emotional state, means for generating a set of routes, means for suggesting points of interest, and means for updating and displaying navigation information in real time.
[1029] Specific configuration
[1030] Hardware
[1031] The following hardware is proposed to be used:
[1032] GPS module: Required to obtain location information.
[1033] Camera and microphone: Used to analyze the user's facial expressions and tone of voice to recognize their emotional state.
[1034] Computer (server): Responsible for processing and storing data.
[1035] software
[1036] The software used includes the following:
[1037] Python: Used as the primary programming language for server and data processing.
[1038] Database Management System (DBMS): Used to store user profiles and emotion data.
[1039] Emotion Recognition Engine: Processes data from the camera and microphone and uses it to recognize the user's emotional state.
[1040] Generative AI model: Used to build algorithms that suggest optimal routes and spots to users based on collected data.
[1041] Data Flow and Processing
[1042] 1. The server retrieves the profile information (name, age, interests, etc.) that the user enters when using the application for the first time and stores it in a database.
[1043] 2. The device uses a built-in camera and microphone to analyze the user's facial expressions and tone of voice to recognize their emotional state, and the data is sent to the server.
[1044] 3. The server compares and analyzes the profile data and emotional data of other users to identify groups of users with similar interests and emotional states, and generates a set of routes based on the results.
[1045] 4. The server monitors current traffic and weather information and updates the route and suggested spots in real time. This information is sent to the device and displayed to the user.
[1046] Specific examples
[1047] Let's say User B is interested in "history" and "cafes" and is currently looking for "relaxation." User B sets a driving route from Osaka to Kyoto in the application. The server calculates the optimal route based on the user's profile and current emotional state, suggesting historical temples and quiet cafes along the way. If the user feels stressed during the drive, the server will detect this information and suggest new relaxation spots.
[1048] Prompt Sentence Examples
[1049] The prompt sentence used to analyze user profile and emotional data using a generative AI model and make optimal suggestions is in the following format:
[1050] User Profile:
[1051] Name: User B
[1052] Age: 30
[1053] Interests: History, Cafes
[1054] Current emotional state: Relaxed
[1055] Starting point: Osaka
[1056] Destination: Kyoto
[1057] Using this information, we can suggest the best driving route and places to stop along the way.
[1058] The system constructed in this way can provide a personalized driving experience that is in line with the user's preferences and emotional state.
[1059] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1060] Step 1: Create a user profile
[1061] Input: Profile information (such as name, age, interests, etc.) that users enter when they first use the application
[1062] Operation: The device collects the entered profile information.
[1063] Data Processing: The collected information is properly formatted into a database.
[1064] Output: The formatted profile information is sent to the server and stored in a database.
[1065] Step 2: Recognizing your emotional state
[1066] Input: Data on the user's facial expressions and tone of voice obtained through the device's camera and microphone
[1067] How it works: The device uses a camera and microphone to collect the user's emotions in real time.
[1068] Data processing: The emotion recognition engine analyzes the collected data and determines a specific emotional state (e.g., "relaxed" or "stressed").
[1069] Output: The determined emotional state is sent to the server and recorded.
[1070] Step 3: Analyzing similar profiles and sentiment data
[1071] Input: User profile data and emotion data
[1072] How it works: The server takes other users' profile data and sentiment data and compares them using an analysis engine.
[1073] Data processing: Data analysis algorithms identify groups of users with similar interests and emotional states.
[1074] Output: Data for the identified user groups is generated.
[1075] Step 4: Obtaining location information
[1076] Input: The user enters the origin and destination.
[1077] Operation: The device obtains its current location using the GPS module.
[1078] Data processing: The acquired location information is converted into an appropriate format.
[1079] Output: The converted location information is sent to the server.
[1080] Step 5: Generate Routes
[1081] Input: User profile information, emotional state, location information
[1082] How it works: The server uses this information to calculate the optimal driving route, and uses a generative AI model to create prompts and suggest the best route.
[1083] Data processing: Algorithms dynamically generate routes based on the user's preferences and emotions.
[1084] Output: The generated route is sent to the device.
[1085] Step 6: Propose a spot
[1086] Input: Generated route, user profile information, emotional state
[1087] How it works: The server selects spots along the generated route that match the user's interests and emotional state.
[1088] Data Processing: The selected spots are properly formatted.
[1089] Output: Formatted spot information is sent to the device.
[1090] Step 7: Real-time navigation and updates
[1091] Input: Current traffic conditions, weather information, fluctuations in the user's emotional state
[1092] How it works: The device provides real-time navigation and monitors your location using GPS. The server receives this data and updates the route and spot information as needed.
[1093] Data processing: Route and spot information is dynamically updated based on traffic conditions, weather information, and emotion data.
[1094] Output: Updated navigation information is displayed on the device.
[1095] In this way, it is possible to provide optimal driving routes and spots in real time based on the user's preferences and emotional state.
[1096] 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.
[1097] 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.
[1098] 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.
[1099] [Fourth embodiment]
[1100] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1101] 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.
[1102] 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).
[1103] 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.
[1104] 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.
[1105] 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).
[1106] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1107] 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.
[1108] 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.
[1109] 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.
[1110] 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.
[1111] 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.
[1112] 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."
[1113] This system is designed to generate personalized driving routes based on the user's preferences and interests, and to suggest interesting spots, unknown tourist destinations, local gourmet food, etc. The program processing of this system is explained below.
[1114] Creating and Updating User Profiles
[1115] When a user first uses the application, they input information about their preferences and interests, such as "nature," "history," and "food." The device collects this information and sends it to the server. The server stores the information in a database and creates a user profile.
[1116] If a user wants to add a new interest, for example, they can set "outdoors" as a new hobby. In this case, the information is sent from the device to the server and the profile is updated.
[1117] Find Similar Profiles
[1118] The server periodically analyzes all stored user profile data using machine learning algorithms to identify user groups with similar interests, improving the accuracy of personalized suggestions by taking into account the spots and gourmet information that other users are interested in.
[1119] Location and route calculation
[1120] When a user plans a drive, they input their starting point and destination into their device. GPS is used to obtain their current location, which is then sent along with the starting point information to the server. The server then calculates the optimal driving route based on the user's current location, destination, and user profile.
[1121] Spot suggestions and route display
[1122] The calculated route includes interesting spots that match the user's preferences. For example, if the user is interested in "hot springs" and "local cuisine," hot springs and well-received local restaurants along the way will be suggested. This information is sent from the server to the device and displayed as a route and spots on a map.
[1123] Navigation and real-time updates
[1124] Once the user starts driving, the device provides real-time navigation, constantly checking the user's current location using GPS and providing directions. The server monitors traffic and weather conditions and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, an alternative route is calculated and sent to the device.
[1125] If a new interesting spot is discovered while driving, the server will notify the device and recommend that the user visit. For example, one day, a notification may appear saying, "A new cafe has opened nearby."
[1126] Specific examples
[1127] As a concrete example, suppose User A is interested in "nature" and "cafes." User A sets his starting point as Tokyo and his destination as Karuizawa. Based on the user's information, the server calculates a driving route from Tokyo to Karuizawa and suggests spots along the way, such as "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device provides real-time guidance and also displays information about spots along the way.
[1128] This series of processes allows users to enjoy a driving experience based on their own preferences and interests. Also, by incorporating the experiences and preferences of other users, it is possible to provide new discoveries and enjoyment.
[1129] The processing flow will be explained below.
[1130] Step 1: Enter your user information
[1131] When a user uses the application for the first time, they enter information such as their username, age, and interests (e.g., nature, history, gourmet food, etc.). The device receives this information and sends it to the server.
[1132] Step 2: Create a user profile
[1133] The server stores the received user information in a database and creates a profile for the user.
[1134] Step 3: Update your profile
[1135] When a user adds a new interest or preference, for example, entering an interest in "hot springs," the device sends the updated information to the server, which then updates the profile.
[1136] Step 4: Analyzing other user profiles
[1137] The server compares and analyzes the stored profile data of all users using machine learning algorithms to identify groups of users with similar interests.
[1138] Step 5: Set your origin and destination
[1139] The user inputs the departure point and destination into the terminal, and this location information, including the current location, is sent to the server.
[1140] Step 6: Route calculation
[1141] The server calculates the optimal route from the origin to the destination, inserting points of interest from the user's profile along the route as appropriate.
[1142] Step 7: Propose a spot
[1143] The server sends the calculated route and information about points of interest along the route to the device, which receives it and displays it on a map.
[1144] Step 8: Start Navigation
[1145] Once the user starts driving, the device provides real-time navigation, using GPS to constantly check the user's current location and provide directions and directions to the next stop.
[1146] Step 9: Real-time updates
[1147] The server monitors traffic and weather conditions in real time and updates route and spot information as needed, sending the updated information to the device and notifying the user.
[1148] Step 10: Notification of new spots
[1149] If a new interesting spot is discovered during the drive, the server notifies the device of the information and displays a message recommending the user to visit.
[1150] In this way, each step works in succession to provide the user with a personalized driving route and navigation experience.
[1151] Example 1
[1152] 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."
[1153] Conventional navigation systems simply present the shortest routes and standard tourist spots without considering the user's preferences or interests. This prevents users from enjoying trips or drives tailored to their individual interests, making it difficult to provide a personalized experience. Furthermore, they lack the ability to dynamically update routes based on real-time traffic and weather information, making them less convenient in situations where a quick response is required. Furthermore, they lack a method for suggesting new discoveries and fun activities by utilizing other users' profile data, making it difficult to improve the quality of the user experience.
[1154] 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.
[1155] In this invention, the server includes a means for acquiring location information, a means for acquiring and storing information about a user's preferences and interests, a means for creating and updating a user profile, a means for identifying similar user groups, a means for suggesting interesting places along the generated route, and a means for updating and displaying navigation information in real time. This allows users to enjoy personalized routes based on their preferences and interests. Furthermore, suggestions utilizing other users' profile data provide new discoveries and enjoyment, and dynamic route updates based on real-time traffic and weather information are possible.
[1156] "Means for acquiring location information" refers to a device or method for collecting information on the user's current location and the specified starting point and destination.
[1157] "Means for acquiring and storing information about user preferences and interests" refers to devices or methods for collecting user-entered interests and preferences (e.g., nature, history, gourmet food, etc.) and storing them in a database.
[1158] A "means for creating and updating a user profile" is a device or method for generating a user profile based on collected information about a user's interests and preferences, and updating that information as needed.
[1159] A "means for identifying similar user groups" is a device or method for identifying groups of users with similar interests or preferences using machine learning algorithms or data analysis techniques.
[1160] The "means for generating a set of routes" refers to a device or method for calculating and generating an optimal route based on the user's location information and profile information.
[1161] A "means for suggesting places of interest along the generated route" is a device or method for suggesting places of interest or tourist attractions along the route based on the user's interests and preferences.
[1162] "Means for updating and displaying navigation information in real time" refers to a device or method for updating navigation information based on real-time location information, traffic conditions, weather information, etc., and displaying it to the user.
[1163] "Means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing routes and suggested spots" refers to devices or methods for acquiring traffic conditions and weather information in real time, and appropriately changing routes and suggested spots based on that information.
[1164] The present invention is a system that generates a personalized driving route based on a user's preferences and interests, and suggests interesting spots, unknown tourist destinations, local gourmet food, etc. Specific embodiments are described below.
[1165] Creating and Updating User Profiles
[1166] When a user first uses an application, they launch the app and enter their preferences and interests. For example, categories include "nature," "history," and "food." The device collects this information and sends it to the server using an HTTP POST request. The server receives this information, stores it in a database, and creates a user profile. This allows the user to receive personalized suggestions based on their individual preferences.
[1167] Find Similar Profiles
[1168] The server periodically analyzes the stored profile data of all users using machine learning algorithms (e.g., K-means clustering), which identifies groups of users with similar interests. This improves the accuracy of personalized suggestions by taking into account the spots and gourmet information that other users are interested in.
[1169] Location and route calculation
[1170] When a user plans a drive, they input their starting point and destination into their device. The device uses its built-in GPS module to obtain their current location and sends it along with the starting point information to the server. The server uses this data to calculate the optimal driving route using a common map service API (e.g., Google Maps API). At this time, the server takes into account the user's profile and generates a route tailored to their individual preferences.
[1171] Spot suggestions and route display
[1172] The server searches for interesting spots that match the user's preferences along the calculated route. This is done by using spot information stored in a database or external APIs (e.g., Yelp API or TripAdvisor API). Once the spot information is determined, the server sends the optimal route including the information to the device. The device receives this information, and the route and spot information are displayed on a map application (e.g., Google Maps).
[1173] Navigation and real-time updates
[1174] Once the user starts driving, the device provides real-time navigation. It uses GPS to constantly check the user's current location and guides the user in the right direction. The server monitors traffic and weather conditions in the backend and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, the server calculates a new route and sends that information to the device. Additionally, if a new interesting spot is discovered, the server immediately sends a notification to the device. An example of a notification might be a message like, "A new cafe has opened nearby."
[1175] Examples of specific examples and prompts
[1176] For example, if User A is interested in "nature" and "cafes," he or she can set the starting point as Tokyo and the destination as Karuizawa. Based on the user's profile and current location, the server calls the Google Maps API to calculate the optimal driving route from Tokyo to Karuizawa. Suggested spots along the way include "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device provides real-time guidance and displays information about spots along the way.
[1177] An example of a prompt for a generative AI model might be, "Please suggest a driving route from Tokyo to Karuizawa where you can enjoy nature and cafes." Using this prompt, a personalized route can be provided.
[1178] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1179] Detailed description of the processing steps
[1180] Step 1: Create a user profile
[1181] When a user launches the application for the first time, they enter their preferences and interests (e.g., "nature," "history," and "food"). The device collects this information, composes a packet in JSON format, and sends it to the server using an HTTP POST request. At this point, the input is information about the user's preferences and interests, and the output is data to be sent to the server. The server saves the received information in a database and initializes and creates a user profile.
[1182] Step 2: Update your user profile
[1183] When a user wants to add a new interest or preference, they enter the update in the device's settings menu. For example, they want to add an interest in "outdoors." The device collects the update and sends it to the server. The input is the new preference information, and the output is an updated user profile. The server adds this information to the existing profile and updates the database.
[1184] Step 3: Find Similar Profiles
[1185] The server periodically analyzes the stored profile data of all users. It uses machine learning algorithms (e.g., K-means clustering) to identify user groups with similar interests. The input data is the profile data of all users, and the output is a list of similar user groups. This step enables personalized suggestions based on the spots and gourmet information that other users are interested in.
[1186] Step 4: Obtaining location information and calculating routes
[1187] When a user plans a drive, they input their starting point and destination into their device. The device uses its built-in GPS module to obtain their current location information and sends it to the server. The input is the starting point, destination, and current location information, and the output is a personalized driving route. The server uses this information to calculate the optimal driving route using external map services such as Google Maps API. The calculation result is personalized, taking into account information in the user profile.
[1188] Step 5: Spot suggestions and route display
[1189] The server searches for interesting spots that match the user's preferences along the calculated route. It uses spot information stored in a database and data from external APIs (e.g., Yelp API or TripAdvisor API). The input is the user's profile information and route data, and the output is a list of suggested spots. The suggested information is sent from the server to the device, and the device displays the route and spot information on a map application (e.g., Google Maps). The spots are indicated on the map with icons or pins.
[1190] Step 6: Navigation and real-time updates
[1191] Once the user starts driving, the device begins providing real-time navigation. It constantly checks the user's current location using GPS and provides turn-by-turn navigation. The server monitors real-time traffic and weather information in the backend and updates the route and suggested spots as needed. The input is real-time location information, traffic conditions, and weather information, and the output is an updated route and suggested spots. For example, if a sudden traffic jam occurs, the server calculates a new route and sends that information to the device. Additionally, if a new interesting spot is found, the server immediately sends a notification to the device.
[1192] (Application example 1)
[1193] 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."
[1194] In recent years, with the advancement of autonomous driving technology, optimization and personalization of driving routes have become increasingly important. Conventional navigation systems have difficulty suggesting spots based on the user's preferences and interests, and there is a need for a means to provide a more personalized driving experience. In addition, real-time route updates that take into account changes in traffic conditions and weather have been insufficient, so a system that can improve user satisfaction is needed.
[1195] 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.
[1196] In this invention, the server includes: means for acquiring location information; means for acquiring and storing information related to a user's preferences and interests; means for generating a set of routes based on the user's preferences and interests and the location information; means for suggesting interesting spots along the generated route; means for updating and displaying navigation information in real time; means for communicating with an external server to acquire traffic and weather information in real time; means for dynamically updating the set of routes and suggested spots based on changes in traffic and weather; means for comparing and analyzing profile data of other users to identify user groups with similar interests; means for calculating and presenting an optimal driving route that reflects the user's profile information based on a departure point and destination specified by the user; and means for notifying and suggesting new interesting places discovered while driving. This enables the provision of a personalized driving experience based on the user's preferences and interests, and improves user satisfaction by updating routes in response to changes in traffic and weather conditions in real time.
[1197] "Means of obtaining location information" refers to the function of obtaining the current location using location information services such as GPS.
[1198] "Means for obtaining and storing information about user preferences and interests" refers to the function of collecting data related to the interests and preferences entered by the user and storing it in a database.
[1199] "Means for generating a set of routes" refers to a system that calculates and creates a route from a user's preferences and interests, as well as their current location to their destination.
[1200] "Means for suggesting interesting spots" refers to a system that recommends places such as tourist attractions and restaurants that suit the user's preferences and are located on the generated route.
[1201] "Means for updating and displaying navigation information in real time" refers to an application that provides guidance to users while they are traveling, applying the latest traffic information and route changes.
[1202] "Means of communicating with an external server to obtain real-time traffic and weather information" refers to a system that receives the latest traffic and weather information from an external server using the Internet or a network.
[1203] "Means of dynamically updating the set of routes and suggested spots" refers to the ability to change calculated routes and recommended spots on the fly in response to changes in traffic and weather conditions.
[1204] "Means for comparative analysis of other users' profile data and identifying user groups with similar interests" refers to a system that analyzes stored data of other users using machine learning algorithms, etc., and classifies users with common interests.
[1205] "Means for calculating and presenting optimal driving routes that reflect user profile information" refers to a system that calculates optimal routes and provides route information based on the user's preferences and interests.
[1206] "Means of notifying and suggesting newly discovered interesting places to the user" refers to a function that notifies the user in real time of new tourist spots and facilities discovered while driving.
[1207] The system of the present invention provides a series of processes for users to enjoy personalized driving routes, allowing users to plan a drive based on their preferences and interests, and reach their destination while receiving real-time traffic and weather information.
[1208] System configuration
[1209] The system includes a terminal, a server, a GPS module, and an external database.
[1210] Creating and updating user profiles
[1211] First, a user accesses the application using their device. They input information about their preferences and interests (e.g., "nature" or "cafes"), which is then sent from the device to the server. The server stores the received information in a database and creates or updates the user's profile. For example, if the user becomes interested in "outdoors," that information is also added to the database.
[1212] Find Similar Profiles
[1213] The server uses machine learning algorithms to identify groups of users with similar interests based on stored user profile data, a process that allows the server to provide more accurate recommendations based on the places and interests recommended by other users.
[1214] Route calculation and spot suggestions
[1215] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location and sends it to the server. The server calculates the optimal driving route based on the user's current location, destination, and user profile. This calculation also includes information on external traffic and weather conditions. The calculated route includes points of interest that match the user's preferences. For example, if a user is interested in "hot springs" and "local cuisine," the route will suggest hot spring resorts and popular local restaurants.
[1216] Real-time updates
[1217] Once the user starts driving, the device provides real-time navigation, constantly checking the user's current location using GPS and providing directions. The server monitors traffic and weather conditions and updates the route and suggested spots as needed. For example, if a sudden traffic jam occurs, an alternative route is calculated and sent to the device. Additionally, if a new interesting spot is discovered during the drive, the server notifies the device and recommends that the user visit it.
[1218] Hardware and software used
[1219] Hardware: On-board computers and GPS modules for autonomous vehicles (e.g., NVIDIA Drive platform)
[1220] Software: Navigation application (e.g., a program written in Python), server-side RESTful API (e.g., Flask, Django)
[1221] Specific examples
[1222] For example, if User A is interested in "nature" and "cafes," and sets the starting point as Tokyo and the destination as Karuizawa, the server will calculate the optimal driving route based on the user's information. This route may include suggestions such as "Kiyosato Plateau" and "cafes surrounded by nature." When the user starts driving, the device will provide real-time guidance and display information about spots along the way.
[1223] Prompt Sentence Examples
[1224] "Develop an application that suggests driving routes and tourist spots based on the user's interests and preferences. Specify the starting point and destination and provide real-time information on tourist spots, restaurants, etc. that match the user's interests. Also include a function to update the route based on traffic and weather information."
[1225] This allows users to enjoy a personalized driving experience while also ensuring safe and efficient travel based on the latest external information.
[1226] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1227] Step 1:
[1228] A user opens an application on their device and inputs information about their preferences and interests. This information may include interests such as "nature" and "cafes." This user information is collected as input data and sent from the device to a server. The server stores the received data in a database and creates a user profile.
[1229] Step 2:
[1230] The server periodically analyzes the stored user profile data. It uses machine learning algorithms to analyze the data and identify user groups with similar interests. At this stage, it takes all users' profile data as input and obtains user groups with similar interests as output.
[1231] Step 3:
[1232] The user inputs their starting point and destination into the device. The device uses a GPS module to obtain their current location and sends it to the server as their starting point. The server calculates the optimal driving route based on the user's current location, destination, and user profile. This route calculation also includes obtaining traffic and weather information. The starting point, destination, and user profile are used as input, and a personalized driving route is obtained as output.
[1233] Step 4:
[1234] The server identifies points of interest along the calculated route and sends this information to the device, which then uses the received information to display the route and suggested points on a map. The route information and point information are used as input, and the map information displayed to the user is obtained as output.
[1235] Step 5:
[1236] When the user starts driving, the device provides real-time navigation. It constantly checks the user's current location using GPS, and the server monitors traffic and weather information in real time, updating the route as needed. The current location information and traffic and weather information obtained from an external server are used as input, and the updated route and new spot information are obtained as output.
[1237] Step 6:
[1238] If a new interesting spot is found during the journey, the server notifies the device. For example, the server sends a notification to the device saying, "A new cafe has opened nearby," suggesting that the user visit. The new spot information is used as input, and the notification to the user is obtained as output.
[1239] Step 7:
[1240] Once the user completes the driving route, the device collects the user's feedback, which is sent to the server and stored in a database to help improve future route calculations and suggest new spots. The user's feedback is used as input, and updated profile data is obtained as output.
[1241] 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.
[1242] This system not only provides personalized driving routes based on the user's preferences and interests, but also suggests optimal routes and spots based on the user's emotions. The program processing of this system is explained in detail below.
[1243] Creating and Updating User Profiles
[1244] When a user first uses the application, they enter information such as their username, age, and interests (e.g., nature, history, food, etc.). The device collects this information and sends it to the server, which stores it in a database and creates a user profile. This information is updated as the user's interests change.
[1245] Use of emotion engine
[1246] The device is equipped with an emotion engine that recognizes the user's emotions, and uses sensors such as a camera and microphone to analyze the user's facial expressions and tone of voice. The emotion engine recognizes emotional states such as "happiness," "sadness," and "surprise," and sends this information to a server.
[1247] Similarity profile and sentiment data analysis
[1248] The server compares the profile data and emotional data of other users to identify groups of users with similar interests and emotional states, thereby gathering data to suggest spots and activities that are appropriate for the user's current emotional state.
[1249] Location and route calculation
[1250] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location and sends this information to the server. The server then calculates the optimal driving route based on this information, the user's profile, and emotional data. In doing so, it selects relaxing and stimulating spots that match the user's emotional state.
[1251] Spot suggestions and route display
[1252] The calculated route includes interesting spots based on the user's interests and emotions. For example, if the user is a "nature lover" and "want to relax," hot springs and quiet cafes along the way will be suggested. This information is sent from the server to the device and displayed on the map.
[1253] Navigation and real-time updates
[1254] When the user starts driving, the device provides real-time navigation and guidance while constantly checking the user's current location using GPS. The server monitors traffic and weather conditions and updates route and spot information in real time. The emotion engine also continuously monitors the user's emotional state and dynamically changes suggestions as needed.
[1255] For example, if a user feels stressed due to a sudden traffic jam, the server will detect this and suggest spots and routes that will help relieve stress. Also, if a new interesting spot is discovered while driving, the server will notify the device of this information based on data from the emotion engine and recommend that the user visit it.
[1256] Specific examples
[1257] Suppose User B is interested in "history" and "cafes" and is currently seeking "relaxation." By setting the starting point as Osaka and the destination as Kyoto, the server calculates a driving route from Osaka to Kyoto based on the user's profile and emotional state, suggesting historical temples and quiet cafes along the way. Once the user begins driving, the device provides real-time guidance, showing the direction of travel and providing detailed information about spots along the way.
[1258] This system allows users to enjoy a personalized driving experience and receives appropriate suggestions based on their emotions, resulting in a more satisfying drive.
[1259] The processing flow will be explained below.
[1260] Step 1: Enter your user information
[1261] When a user uses the application for the first time, they enter their username, age, hobbies, and interests (e.g., nature, history, gourmet food, etc.). The device collects this data and sends it to the server.
[1262] Step 2: Create a user profile
[1263] The server stores the received user information in a database and creates a profile for the user.
[1264] Step 3: Recognizing Emotional Data
[1265] When a user uses the application, sensors such as the camera and microphone built into the device are used to analyze facial expressions and tone of voice. The emotion engine recognizes the user's emotional state (e.g., joy, sadness, surprise) and sends the information to the server.
[1266] Step 4: Update your profile
[1267] When a user adds new interests, preferences, or emotional states, they enter the new data through their IP terminal and send it to the server, which receives it and updates the existing profile data.
[1268] Step 5: Analyze other user data
[1269] The server periodically analyzes other users' profile data and emotional data using machine learning algorithms to identify groups of users with similar interests and emotional states.
[1270] Step 6: Set your origin and destination
[1271] The user inputs the departure point and destination into the terminal, and location information including the current location is sent to the server.
[1272] Step 7: Route calculation
[1273] The server calculates the optimal route from the origin to the destination, selecting spots based on the user's profile and emotional state and incorporating them into the route.
[1274] Step 8: Propose a spot
[1275] The server sends the calculated route and information about suggested spots along the route to the device, which receives it and displays it on a map.
[1276] Step 9: Start Navigation
[1277] When a user starts driving, the device provides real-time navigation, using GPS to determine the user's current location and providing directions and directions to the next stop.
[1278] Step 10: Real-time updates
[1279] The server monitors traffic and weather conditions in real time and updates route and spot information as needed, while the emotion engine continuously monitors the user's emotional state and dynamically changes suggestions based on this.
[1280] For example, if a user feels stressed due to a sudden traffic jam, the emotion engine will detect this and the server will suggest a detour route to a new relaxing spot.
[1281] Step 11: Notification of new spots
[1282] If a new interesting spot is discovered while driving, the server will notify the device of the information based on the emotion engine data and recommend the user to visit. For example, a notification will be displayed while driving saying, "A new cafe has opened nearby."
[1283] In this way, users can enjoy a personalized driving experience that takes into account their individual preferences and emotional state.
[1284] Example 2
[1285] 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."
[1286] Conventional navigation systems only suggest routes based on the user's basic location information and preferences, and do not provide personalized suggestions that take into account the user's emotional state. This makes it difficult to increase user satisfaction while driving. Furthermore, since they do not suggest appropriate spots or routes that respond to real-time changes in the user's emotional state, there is a need to optimize the driving experience.
[1287] 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.
[1288] In this invention, the server includes: means for acquiring location information; means for acquiring and storing a user's preferences, interests, and emotional state; means for generating a set of routes based on the user's preferences, interests, emotional state, and location information; means for suggesting interesting spots along the generated route; means for updating and displaying navigation information in real time; means for monitoring the user's emotional state in real time and dynamically changing the suggested content; means for comparing and analyzing other users' profile data and emotional data to identify user groups with similar interests and emotional states; and means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing the route and suggested spots. This enables the suggestion of spots and routes based on the user's emotional state, resulting in a more satisfying and personalized driving experience. Furthermore, real-time information updates constantly suggest optimal routes and spots, significantly improving the quality of driving.
[1289] "Means for acquiring location information" refers to a device or program for acquiring information about a user's current location using GPS or other location detection technology.
[1290] "Means for acquiring and storing user preferences, interests, and emotional states" refers to a device or program for collecting information on preferences and interests entered by a user and their emotional states analyzed using an emotion engine, and storing them in a database.
[1291] A "means for generating a set of routes" is a device or program containing an algorithm for calculating and generating an optimal driving route based on the user's preferences, interests and emotional state.
[1292] The "means for suggesting interesting spots" is a device or program for selecting spots on the generated route that are suited to the user's interests and emotional state, and suggesting them to the user.
[1293] "Means for updating and displaying navigation information in real time" refers to a device or program that updates the latest navigation information in real time based on the user's current location while driving and provides it to the user visually and audibly.
[1294] "Means for monitoring the user's emotional state in real time and dynamically changing the suggested content" refers to a device or program that uses an emotion engine to continuously monitor the user's emotional state while driving and dynamically changes the suggested spots and routes based on that data.
[1295] "Means for comparatively analyzing profile data and emotional data of other users and identifying user groups with similar interests and emotional states" refers to a device or program for comparatively analyzing the profile and emotional data of other users stored in a database with the current user's data and identifying user groups with similar characteristics.
[1296] "Means for acquiring information necessary for real-time updates based on traffic conditions and weather, and dynamically changing routes and suggested spots" refers to a device or program that acquires changes in traffic conditions and weather in real time, and dynamically changes routes and suggested spots based on that information.
[1297] System Overview
[1298] This system provides personalized driving routes based on the user's preferences, interests, and emotional state, and can suggest optimal routes and spots depending on the user's emotions.The system is mainly composed of three elements: a server, a terminal, and a user.
[1299] Creating and Updating User Profiles
[1300] When a user first uses an application, they enter basic information such as their username, age, and interests. This data is collected by the device and sent to the server. The server creates a user profile based on the received information and stores it in a database. For example, a user might select interests such as "nature lover," "history lover," or "foodie." If the user's interests change, the information is updated accordingly.
[1301] Use of emotion engine
[1302] The device is equipped with an emotion engine that uses sensors such as a camera and microphone to collect the user's facial expressions and tone of voice in real time. The emotion engine analyzes the user's emotional state and obtains emotional data such as "happiness," "sadness," and "surprise." This information is encrypted and sent to the server. For example, if the user is smiling, the emotional state is detected as "happiness," and if the user has a sad face, the emotional state is detected as "sadness."
[1303] Similarity profile and sentiment data analysis
[1304] The server performs comparative analysis of the current user's data based on the profile data and emotional data of other users stored in the database. This identifies user groups with similar interests and emotional states. Identifying similar user groups makes it possible to suggest spots and activities that match the user's current emotional state.
[1305] Location and route calculation
[1306] When a user inputs their starting point and destination into the device, the device uses GPS to obtain their current location information and sends it to the server. The server then calculates the optimal driving route based on the obtained location information, the user's profile, and emotional data. In doing so, it selects relaxing and stimulating spots that match the user's emotional state. For example, if the user is a "nature lover" and is looking to "relax," it will suggest hot springs and quiet cafes along the way.
[1307] Spot suggestions and route display
[1308] Based on the calculated route, the server selects spots that suit the user's interests and emotional state. Information about the selected spots is sent from the server to the device and displayed on a map. The user can use this information to plan their drive.
[1309] Navigation and real-time updates
[1310] When the user starts driving, the device provides real-time navigation and constantly checks the user's current location using GPS. The server monitors traffic and weather conditions and updates route and spot information in real time based on the acquired data. The emotion engine also continuously monitors the user's emotional state and dynamically changes suggestions as needed. For example, if the user becomes stressed due to a sudden traffic jam, the server will suggest spots and routes suitable for relieving stress.
[1311] Specific examples
[1312] For example, imagine a user wants to drive from Osaka to Kyoto. The user is interested in "history" and "cafes," and currently wants to "relax." Based on this profile and emotion data, the server calculates the optimal driving route from Osaka to Kyoto, suggesting historical temples and quiet cafes along the way. The device provides real-time navigation, showing the user's direction and providing detailed information about the spots along the way.
[1313] Examples of prompt statements
[1314] An example prompt might be, "How can I suggest historical temples and quiet cafes for the user when they are driving from Osaka to Kyoto?"
[1315] This system allows users to enjoy a personalized driving experience and receives appropriate suggestions based on their emotions, resulting in a more satisfying drive. Real-time suggestions are always made based on the latest information, so users can get the best possible driving experience.
[1316] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1317] Step 1:
[1318] Creating a User Profile
[1319] When a user uses the application for the first time, they enter information such as their username, age, and interests (nature, history, gourmet food, etc.).
[1320] Input: Username, Age, Interests
[1321] Data processing: The device formats this information and converts it into JSON format.
[1322] Output: Converted user information in JSON format
[1323] The device collects this information and sends it to a server, which receives it, stores it in a database, and creates a user profile.
[1324] Specific Action: Inserts a new record into the database and saves it as a user profile.
[1325] Step 2:
[1326] Acquiring emotional data using the emotion engine
[1327] The device is equipped with sensors such as a camera and microphone, which collect the user's facial expressions and tone of voice in real time.
[1328] Input: User's facial expression, voice
[1329] Data processing: The emotion engine uses facial expression recognition and voice analysis to identify emotional states (happiness, sadness, surprise, etc.).
[1330] Output: Identified emotion data
[1331] The device sends this emotion data to the server, which then stores it in a database.
[1332] Specific operation: Emotion data is linked to the user profile and stored in a database.
[1333] Step 3:
[1334] Similarity profile and sentiment data analysis
[1335] The server compares the profile data and emotional data of other users to identify groups of users with similar interests and emotional states.
[1336] Input: Current user data, other user data
[1337] Data processing: Compare profiles and sentiment data using a similarity algorithm.
[1338] Output: Similar user groups
[1339] The server stores similar user groups in a database.
[1340] Specific operation: Calculate similarity scores and save them as a group of users who meet certain criteria.
[1341] Step 4:
[1342] Location information acquisition and route calculation
[1343] When the user inputs the departure point and destination into the terminal, the terminal uses GPS to obtain current location information.
[1344] Input: Departure point, Destination
[1345] Data processing: Current location information is obtained using a GPS device and converted into location data.
[1346] Output: The location data obtained.
[1347] The device sends location data to a server, which then calculates the optimal driving route based on this information, the user's profile, and emotional data.
[1348] Specific operation: Runs a route calculation algorithm and generates a route that matches the user's profile and emotions.
[1349] Step 5:
[1350] Spot suggestions and route display
[1351] Based on the calculated route, the server selects interesting spots based on the user's interests and emotions.
[1352] Input: Calculated route, user interest and emotion data
[1353] Data processing: Using a spot selection algorithm, the optimal spot is selected.
[1354] Output: Selected spot information
[1355] The server sends this information to the terminal, which then displays the spot information on a map.
[1356] Specific behavior: Uses the mapping API to display spots on a map.
[1357] Step 6:
[1358] Navigation and real-time updates
[1359] Once the user starts driving, the device provides real-time navigation.
[1360] Input: Current location data
[1361] Data processing: Executes route guidance algorithms and determines direction of travel.
[1362] Output: Real-time navigation information
[1363] The server monitors traffic and weather conditions and updates route and spot information in real time.
[1364] Specific operation: Traffic and weather information is obtained through API, and route and spot information is dynamically updated.
[1365] Step 7:
[1366] Continuous monitoring of emotional state and suggestion changes
[1367] The emotion engine continuously monitors the user's emotional state.
[1368] Input: Real-time facial expressions and voice of the user
[1369] Data Processing: The emotion engine analyzes the emotion data to identify the current emotional state.
[1370] Output: Updated emotion data
[1371] The server dynamically changes the suggestions based on changes in emotional state.
[1372] Specific operation: The proposed algorithm is re-run to re-suggest spots and routes that are appropriate for the user's new emotional state.
[1373] In this way, users can enjoy a real-time, emotionally-driven, and personalized driving experience.
[1374] (Application example 2)
[1375] 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."
[1376] Conventional navigation systems can suggest routes based on a user's preferences and interests, but they cannot suggest optimal spots or routes that take the user's emotional state into account. It is also technically difficult to dynamically change the suggested content in real time in response to changes in the user's emotions. This makes it difficult to provide a satisfying driving experience. Furthermore, it is also impossible to make more accurate suggestions by utilizing profile data or emotional data of other users. The present invention aims to solve these problems.
[1377] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1378] In this invention, the server includes means for acquiring and storing information about a user's preferences and interests, means for recognizing the user's emotional state, means for comparing and analyzing the profile data and emotional data of other users to identify a user group with similar interests and emotional states, and means for real-time updates based on traffic and weather information, thereby enabling the server to generate a series of routes based on the user's preferences, interests, and emotional states, suggest interesting spots along the generated routes, and update and display navigation information in real time.
[1379] The "means for acquiring location information" is a means for acquiring information on the user's current location or a specified location using a location information acquisition device such as a GPS.
[1380] The "means for acquiring and storing information about the user's preferences and interests" refers to a means for collecting data about preferences and interests previously input by the user and storing it in a database.
[1381] The "means for recognizing the user's emotional state" refers to a means for determining the user's emotional state by analyzing the user's facial expressions and tone of voice using sensors such as a camera or microphone.
[1382] The "means for generating a set of routes" is a means for calculating and generating an appropriate driving route based on the user's preferences, interests, emotional state, and location information.
[1383] The "means for suggesting interesting spots" is a means for suggesting places and facilities that may be of interest to the user along the generated route.
[1384] "Means for updating and displaying navigation information in real time" means means for providing users with constantly updated information about their current route and destination using GPS information and other real-time data.
[1385] The "means for comparatively analyzing the profile data and emotional data of other users" refers to a means for comparing the profiles and emotional states of multiple users and analyzing commonalities and differences.
[1386] The "means for identifying a group of users with similar interests and emotional states" is a means for grouping and identifying users with common interests and emotional states based on comparatively analyzed data.
[1387] "Means for real-time updates based on traffic conditions and weather information" refers to means for obtaining current traffic conditions and weather data and dynamically changing and updating routes and suggested spots based on that data.
[1388] To implement the present invention, it is necessary to build a system that provides personalized driving routes based on a user's preferences and emotional state. The system includes means for acquiring location information, means for acquiring and storing information about a user's preferences and interests, means for recognizing the user's emotional state, means for generating a set of routes, means for suggesting points of interest, and means for updating and displaying navigation information in real time.
[1389] Specific configuration
[1390] Hardware
[1391] The following hardware is proposed to be used:
[1392] GPS module: Required to obtain location information.
[1393] Camera and microphone: Used to analyze the user's facial expressions and tone of voice to recognize their emotional state.
[1394] Computer (server): Responsible for processing and storing data.
[1395] software
[1396] The software used includes the following:
[1397] Python: Used as the primary programming language for server and data processing.
[1398] Database Management System (DBMS): Used to store user profiles and emotion data.
[1399] Emotion Recognition Engine: Processes data from the camera and microphone and uses it to recognize the user's emotional state.
[1400] Generative AI model: Used to build algorithms that suggest optimal routes and spots to users based on collected data.
[1401] Data Flow and Processing
[1402] 1. The server retrieves the profile information (name, age, interests, etc.) that the user enters when using the application for the first time and stores it in a database.
[1403] 2. The device uses a built-in camera and microphone to analyze the user's facial expressions and tone of voice to recognize their emotional state, and the data is sent to the server.
[1404] 3. The server compares and analyzes the profile data and emotional data of other users to identify groups of users with similar interests and emotional states, and generates a set of routes based on the results.
[1405] 4. The server monitors current traffic and weather information and updates the route and suggested spots in real time. This information is sent to the device and displayed to the user.
[1406] Specific examples
[1407] Let's say User B is interested in "history" and "cafes" and is currently looking for "relaxation." User B sets a driving route from Osaka to Kyoto in the application. The server calculates the optimal route based on the user's profile and current emotional state, suggesting historical temples and quiet cafes along the way. If the user feels stressed during the drive, the server will detect this information and suggest new relaxation spots.
[1408] Prompt Sentence Examples
[1409] The prompt sentence used to analyze user profile and emotional data using a generative AI model and make optimal suggestions is in the following format:
[1410] User Profile:
[1411] Name: User B
[1412] Age: 30
[1413] Interests: History, Cafes
[1414] Current emotional state: Relaxed
[1415] Starting point: Osaka
[1416] Destination: Kyoto
[1417] Using this information, we can suggest the best driving route and places to stop along the way.
[1418] The system constructed in this way can provide a personalized driving experience that is in line with the user's preferences and emotional state.
[1419] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1420] Step 1: Create a user profile
[1421] Input: Profile information (such as name, age, interests, etc.) that users enter when they first use the application
[1422] Operation: The device collects the entered profile information.
[1423] Data Processing: The collected information is properly formatted into a database.
[1424] Output: The formatted profile information is sent to the server and stored in a database.
[1425] Step 2: Recognizing your emotional state
[1426] Input: Data on the user's facial expressions and tone of voice obtained through the device's camera and microphone
[1427] How it works: The device uses a camera and microphone to collect the user's emotions in real time.
[1428] Data processing: The emotion recognition engine analyzes the collected data and determines a specific emotional state (e.g., "relaxed" or "stressed").
[1429] Output: The determined emotional state is sent to the server and recorded.
[1430] Step 3: Analyzing similar profiles and sentiment data
[1431] Input: User profile data and emotion data
[1432] How it works: The server takes other users' profile data and sentiment data and compares them using an analysis engine.
[1433] Data processing: Data analysis algorithms identify groups of users with similar interests and emotional states.
[1434] Output: Data for the identified user groups is generated.
[1435] Step 4: Obtaining location information
[1436] Input: The user enters the origin and destination.
[1437] Operation: The device obtains its current location using the GPS module.
[1438] Data processing: The acquired location information is converted into an appropriate format.
[1439] Output: The converted location information is sent to the server.
[1440] Step 5: Generate Routes
[1441] Input: User profile information, emotional state, location information
[1442] How it works: The server uses this information to calculate the optimal driving route, and uses a generative AI model to create prompts and suggest the best route.
[1443] Data processing: Algorithms dynamically generate routes based on the user's preferences and emotions.
[1444] Output: The generated route is sent to the device.
[1445] Step 6: Propose a spot
[1446] Input: Generated route, user profile information, emotional state
[1447] How it works: The server selects spots along the generated route that match the user's interests and emotional state.
[1448] Data Processing: The selected spots are properly formatted.
[1449] Output: Formatted spot information is sent to the device.
[1450] Step 7: Real-time navigation and updates
[1451] Input: Current traffic conditions, weather information, fluctuations in the user's emotional state
[1452] How it works: The device provides real-time navigation and monitors your location using GPS. The server receives this data and updates the route and spot information as needed.
[1453] Data processing: Route and spot information is dynamically updated based on traffic conditions, weather information, and emotion data.
[1454] Output: Updated navigation information is displayed on the device.
[1455] In this way, it is possible to provide optimal driving routes and spots in real time based on the user's preferences and emotional state.
[1456] 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.
[1457] 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.
[1458] 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.
[1459] 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.
[1460] 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.
[1461] 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.
[1462] 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).
[1463] 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.
[1464] 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."
[1465] 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.
[1466] 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).
[1467] 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.
[1468] 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.
[1469] 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.
[1470] 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.
[1471] 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.
[1472] 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.
[1473] 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.
[1474] 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.
[1475] 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.
[1476] 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.
[1477] The following is further disclosed regarding the above embodiment.
[1478] (Claim 1)
[1479] A means for acquiring location information;
[1480] means for capturing and storing information about user preferences and interests;
[1481] means for generating a set of routes based on the user's preferences and interests and location information;
[1482] a means of suggesting points of interest along the generated route;
[1483] a means for updating and displaying navigation information in real time;
[1484] A system including:
[1485] (Claim 2)
[1486] 10. The system of claim 1, further comprising means for comparatively analyzing profile data of other users to identify groups of users with similar interests.
[1487] (Claim 3)
[1488] 10. The system of claim 1, further comprising means for obtaining information necessary to provide real-time updates based on traffic and weather conditions and dynamically modifying the route and suggested spots.
[1489] "Example 1"
[1490] (Claim 1)
[1491] A means for acquiring location information;
[1492] means for capturing and storing information about user preferences and interests;
[1493] means for generating a set of routes based on the user's preferences and interests and location information;
[1494] a means for suggesting interesting locations along the generated route;
[1495] a means for updating and displaying navigation information in real time;
[1496] a means for creating and updating a user profile;
[1497] A system including a means for identifying similar user groups.
[1498] (Claim 2)
[1499] 10. The system of claim 1, further comprising means for comparatively analyzing profile data of other users to identify groups of users with similar interests.
[1500] (Claim 3)
[1501] 10. The system of claim 1, further comprising means for obtaining information necessary to provide real-time updates based on traffic and weather conditions and dynamically modifying the route and suggested spots.
[1502] "Application Example 1"
[1503] (Claim 1)
[1504] A means for acquiring location information;
[1505] means for capturing and storing information about user preferences and interests;
[1506] means for generating a set of routes based on the user's preferences and interests and location information;
[1507] a means of suggesting points of interest along the generated route;
[1508] a means for updating and displaying navigation information in real time;
[1509] A means of communicating with an external server to obtain real-time traffic and weather information,
[1510] A means of dynamically updating the set of routes and suggested spots based on changing traffic and weather conditions; and
[1511] A system including:
[1512] (Claim 2)
[1513] 10. The system of claim 1, further comprising means for comparatively analyzing profile data of other users to identify groups of users with similar interests.
[1514] (Claim 3)
[1515] The system of claim 1 further comprising: means for calculating and presenting an optimal driving route that reflects the user's profile information based on a starting point and destination specified by the user; and means for notifying and suggesting to the user newly discovered interesting places during the drive.
[1516] "Example 2: Combining Emotion Engines"
[1517] (Claim 1)
[1518] A means for acquiring location information;
[1519] means for acquiring and storing information about the user's preferences and interests and emotional state;
[1520] means for generating a set of routes based on the user's preferences, interests, emotional state and location information;
[1521] a means of suggesting points of interest along the generated route;
[1522] a means for updating and displaying navigation information in real time;
[1523] A means for monitoring the user's emotional state in real time and dynamically changing the content of the suggestions;
[1524] A system including:
[1525] (Claim 2)
[1526] 10. The system of claim 1, further comprising means for comparatively analyzing profile data and emotional data of other users to identify groups of users with similar interests and emotional states.
[1527] (Claim 3)
[1528] 10. The system of claim 1, further comprising means for obtaining information necessary to provide real-time updates based on traffic and weather conditions and for dynamically modifying the route and suggested spots.
[1529] "Application example 2 when combining emotion engines"
[1530] (Claim 1)
[1531] A means for acquiring location information;
[1532] means for capturing and storing information about user preferences and interests;
[1533] means for recognizing an emotional state of a user;
[1534] means for generating a set of routes based on the user's preferences, interests, emotional state and location information;
[1535] a means of suggesting points of interest along the generated route;
[1536] a means for updating and displaying navigation information in real time;
[1537] A system including:
[1538] (Claim 2)
[1539] 10. The system of claim 1, further comprising means for comparatively analyzing profile data and emotional data of other users to identify groups of users with similar interests and emotional states.
[1540] (Claim 3)
[1541] 10. The system of claim 1, further comprising means for obtaining information necessary to provide real-time updates based on traffic and weather conditions and dynamically modifying the route and suggested spots. [Explanation of symbols]
[1542] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. A means for acquiring location information; means for capturing and storing information about user preferences and interests; means for generating a set of routes based on the user's preferences and interests and location information; a means of suggesting points of interest along the generated route; a means for updating and displaying navigation information in real time; A system including:
2. 10. The system of claim 1, further comprising means for comparatively analyzing profile data of other users to identify groups of users with similar interests.
3. The system of claim 1 further comprising means for obtaining information necessary to provide real-time updates based on traffic and weather conditions and for dynamically modifying the route and suggested spots.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A