System

The system addresses the delay in conversational AI by collecting and analyzing user data to provide timely prompts, enhancing user convenience and natural dialogue.

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

Patent Information

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

AI Technical Summary

Technical Problem

Conversational AI systems require users to initiate dialogue by asking questions, leading to delays and inconvenience, especially for individuals with difficulty entering input, such as the elderly and children, and lack timely actions and notifications, hindering widespread adoption.

Method used

A system that collects voice, location, schedule, weather, and traffic information, analyzes the data to understand the user's situation, and generates and notifies prompts without requiring user input, using a server to collect and analyze data and a terminal to communicate prompts audibly or visually.

Benefits of technology

Enables users to receive necessary information at appropriate times without asking questions, improving convenience and enabling natural dialogue.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026034021000001_ABST
    Figure 2026034021000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system, comprising: means for collecting audio, location information, schedule, weather information, traffic information; means for analyzing the collected information and generating a prompt based on a current situation of a user; and means for notifying the user of the generated prompt.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

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

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

[0004] Current conversational artificial intelligence (AI) systems only initiate a dialogue when a user asks a question, resulting in delays in providing information appropriate to a specific situation. This time-consuming usage method is particularly inconvenient for users who have difficulty entering input, such as the elderly and children, and is hindering the widespread adoption of AI. Furthermore, the lack of timely actions and notifications significantly reduces user convenience. [Means for solving the problem]

[0005] One embodiment of the present invention includes a means for collecting voice, location, schedule, weather, and traffic information, a means for analyzing the collected information, and a means for generating a prompt based on the user's current situation. The system also includes a means for notifying the user of the generated prompt, and a means for transmitting the generated prompt from a server to a terminal and notifying the user of the received prompt by voice or display. This eliminates the need for the user to ask questions and allows the system to suggest necessary information and actions at appropriate times, resulting in more natural and efficient dialogue.

[0006] "Sound" refers to the set of vibrations transmitted through sound waves, particularly those characteristic of a user's speech or other sounds.

[0007] "Location information" refers to coordinate data that indicates a specific point on a map, and is information that identifies the user's current location using GPS data or the like.

[0008] A "schedule" refers to a timetable of predetermined plans and events, and includes date information managed by the user.

[0009] "Weather information" refers to data about meteorological conditions, and is information that provides current weather and forecasts.

[0010] "Traffic information" refers to data on road and public transport conditions, congestion levels, delays, etc.

[0011] "Means of collection" refers to the functions of the device or software to obtain data such as voice, location, schedule, weather, and traffic information.

[0012] "Means of analysis" refers to algorithms or programs that analyze collected data and understand the user's situation.

[0013] A "prompt" refers to a suggestion or notification message that encourages the user to take action.

[0014] "Generating means" refers to an algorithm or program for creating prompts based on the results of analyzing data.

[0015] "Means of notification" refers to the device or software capabilities to communicate the generated prompt to the user audibly or visually.

[0016] "Server" refers to a computer system on a network that collects, analyzes, and stores data.

[0017] "Terminal" means a device that is directly operated by a user and that collects data and receives and displays prompts.

[0018] "User" refers to a person who uses this system. [Brief explanation of the drawings]

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

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

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

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

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

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

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

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

[0027] [First embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0040] This invention is a system in which AI provides situation-based information at the appropriate time without the user having to ask questions. This system has a means to generate and notify the user of appropriate prompts by collecting and analyzing voice, location information, schedule information, weather information, and traffic information.

[0041] Server processing explanation

[0042] Data collection

[0043] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores the received data in a database for subsequent analysis.

[0044] Data analysis and prompt generation

[0045] The server analyzes the received data to understand the user's current situation, and generates prompts based on specific conditions, such as if the current weather is rainy, if the user is driving, or if there is an upcoming event. These prompts are messages suggesting the user's next action.

[0046] Prompt Notification

[0047] The generated prompt is sent from the server to the terminal. When the terminal receives the prompt, it notifies the user of the prompt in a format that is easy for the user to understand, such as by voice or on-screen display.

[0048] Terminal processing explanation

[0049] Data collection

[0050] The device collects voice, location, schedule, weather, and traffic information and stores it as structured data, which is then periodically sent to a server.

[0051] Data transmission

[0052] The device periodically transmits the collected data to the server. This transmission can be done in real time or in batches at regular intervals.

[0053] Prompt Reception

[0054] The device receives the prompt sent from the server and notifies the user of the prompt either by voice using speech synthesis technology or by displaying it on the screen.

[0055] Specific examples

[0056] Notifications for users while driving

[0057] The server receives location information from the device and detects that the user is driving.

[0058] Based on the analysis results, the server generates prompts containing information about landmarks and restaurants near the user's current location.

[0059] Sends a server-generated prompt to the terminal.

[0060] The device receives the prompt and notifies the user aloud, "There's a recommended restaurant near your current location. Would you like to stop by?"

[0061] Schedule Notifications

[0062] The server receives schedule information from the terminal and detects that the next appointment is approaching.

[0063] The server generates a notification prompt for the next appointment.

[0064] The server sends the generated prompt to the terminal, and the terminal receives the prompt.

[0065] The terminal notifies the user of the received prompt by voice, "The next meeting will start soon. Please prepare to move."

[0066] In this way, this system significantly improves user convenience by eliminating the need for users to ask questions and providing the necessary information at the appropriate time. Throughout this process, the server is responsible for collecting and analyzing data and generating prompts, while the terminal is responsible for collecting data and notifying prompts. This allows users to obtain information through natural dialogue.

[0067] The processing flow will be explained below.

[0068] Terminal handling

[0069] Step 1: Collect data

[0070] The device collects voice, location, schedule, weather, and traffic information through sensors and applications, and stores this data in a structured format.

[0071] Step 2: Sending data

[0072] The device sends the collected data to the server periodically, enabling real-time data sharing.

[0073] Step 3: Receiving a prompt

[0074] The terminal receives prompts sent from the server, which are generated based on the user's situation.

[0075] Step 4: Prompt Notification

[0076] The device notifies the user of the received prompt either audibly using speech synthesis technology or by displaying it on the screen.

[0077] Server Processing

[0078] Step 1: Receiving Data

[0079] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores the received data in a database.

[0080] Step 2: Analyze the data

[0081] The server analyzes the received data and determines the user's current situation based on the analysis results.

[0082] Step 3: Generate prompts

[0083] Based on the analysis, the server generates appropriate prompts for the user, such as prompts for nearby landmarks and restaurants if the user is driving.

[0084] Step 4: Sending the prompt

[0085] The server sends the generated prompts to the terminal, and the transmission is done quickly to provide timely information.

[0086] User operations

[0087] Step 1: Provide the data

[0088] Users provide data such as voice, location, and schedule information through their devices. This data is collected automatically, and no special operations are required.

[0089] Step 2: Receive and confirm the prompt

[0090] The user receives a prompt from the device, checks the content, and if the prompt is a voice notification, can take immediate action.

[0091] Step 3: Take action

[0092] The user can then take appropriate action based on the prompt. For example, if they receive a prompt recommending a restaurant, they can stop by the restaurant. In this way, users can acquire information through natural dialogue and reflect it in their actions.

[0093] Example 1

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

[0095] Conventional systems require users to actively obtain information, which can lead to missed timing or difficulty in obtaining accurate information. It is particularly difficult for users to obtain information when their hands are busy, such as while driving or preparing for a meeting. Furthermore, there is currently no system that can properly analyze collected data and provide useful information to users in real time.

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

[0097] In this invention, the server includes means for collecting voice, location information, schedule, weather data, and movement data, means for analyzing the collected data and generating prompts based on the user's current situation, and means for notifying the user of the generated prompts, thereby enabling the user to automatically receive necessary information at an appropriate time without having to ask.

[0098] "Voice" refers to a user's speech that has been digitally recorded and converted into analyzable data.

[0099] "Location information" is data indicating the user's current location, and is obtained by GPS or other location measurement means.

[0100] "Schedule" is information about the user's plans and events, and is obtained from a calendar application.

[0101] "Weather Data" means information about current and future weather conditions, obtained from external weather service APIs.

[0102] "Movement data" refers to information relating to the movement of a user, including traffic information, movement routes, and the like.

[0103] "Server" means a computer system that analyzes received data and generates and sends prompts to the user.

[0104] A "terminal" is a digital device carried by a user that collects voice and location information and transmits it to a server.

[0105] A "prompt" is a message that suggests a next action to the user.

[0106] "Notification" refers to a means of conveying the generated prompt to the user, and may include audio, screen display, etc.

[0107] "Collection means" refers to a function for acquiring voice, location information, schedule, weather data, and movement data.

[0108] The "analysis means" is a function that evaluates the user's situation based on the collected data and generates the most appropriate prompt.

[0109] The "transmission means" is a communication function for delivering the generated prompt from the server to the terminal.

[0110] MODE FOR CARRYING OUT THE INVENTION

[0111] This invention is a system that provides context-based information at the right time without the user having to ask. The system collects and analyzes voice, location information, schedule, weather data, and movement data to generate and notify the user with appropriate prompts.

[0112] Hardware and software used

[0113] This system operates through the cooperation of a server and terminals. The main hardware and software used are listed below.

[0114] server

[0115] Hardware: High-performance server computer

[0116] software:

[0117] Database: General-purpose relational database management system (e.g., MySQL (registered trademark), PostgreSQL)

[0118] Web framework: Node.js, Flask (Python)

[0119] Machine learning libraries: Scikit-learn, TENSORFLOW (registered trademark)

[0120] Messaging service: Firebase Cloud Messaging (FCM)

[0121] Terminal

[0122] Hardware: Smartphones, tablets

[0123] software:

[0124] Audio collection: MediaRecorder class (ANDROID(R)), AVAudioRecorder class (iOS)

[0125] Location information collection: LocationManager (Android), Core Location (iOS)

[0126] Schedule collection: CalendarProvider API (Android), EventKit framework (iOS)

[0127] Weather information collection: Weather service API (e.g. OpenWeatherMap API)

[0128] Traffic information collection: Traffic information API (e.g., Google Maps API)

[0129] Data transmission: Retrofit library (Android), Alamofire library (iOS)

[0130] Voice notification: Google TTS (Text-to-Speech)

[0131] Data collection and analysis

[0132] The device periodically collects voice, location, schedule, weather, and movement data in the background and sends it to the server, which receives the data and stores it in a database.

[0133] The server analyzes the received data to understand the user's current situation, and uses machine learning algorithms to predict the user's next action from the collected data and generate prompts based on specific conditions.

[0134] Prompt generation and notification

[0135] The generated prompt is sent from the server to the device, and when the device receives the prompt, it notifies the user by voice using speech synthesis technology or by displaying it on the screen.

[0136] For example, the following prompt is generated for a user who is driving:

[0137] "There's a recommended restaurant near where you are. Would you like to stop by?"

[0138] Additionally, the following prompts are generated on a scheduled basis:

[0139] "The next meeting will begin shortly. Please prepare to move."

[0140] As described above, this system can significantly improve user convenience by eliminating the need for users to ask questions to the system and providing necessary information at the appropriate time.

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

[0142] Step 1:

[0143] Device data collection

[0144] The device collects audio data, location information, schedule data, weather data, and movement data. Audio data is recorded using the device's microphone with the MediaRecorder class (Android) or AVAudioRecorder class (iOS). Location information is obtained using the GPS sensor with LocationManager (Android) or Core Location (iOS). Schedule data is obtained from the device's calendar app using the CalendarProvider API (Android) or EventKit framework (iOS). Weather data and movement data are obtained using external weather service APIs and traffic information APIs. This data is temporarily stored in local storage.

[0145] Input and Output

[0146] Input: User voice, location information, schedule, weather data, movement data

[0147] Output: Collected structured data (audio files, location data, schedule events, weather data, movement data)

[0148] Step 2:

[0149] Sending data from the device to the server

[0150] The device periodically sends collected voice data, location information, schedule data, weather data, and movement data to the server using the Retrofit library (Android) or Alamofire library (iOS) to securely transmit data via HTTPS requests.

[0151] Input and Output

[0152] Input: Collected structured data

[0153] Output: Data sent to the server

[0154] Step 3:

[0155] Receiving and storing data on the server

[0156] The server receives the data sent from the device and stores it in a database. It uses a database management system (e.g., MySQL, PostgreSQL) to properly structure and store the received data.

[0157] Input and Output

[0158] Input: Data sent from the terminal

[0159] Output: Data stored in the database

[0160] Step 4:

[0161] Server data analysis and prompt generation

[0162] The server analyzes the data stored in the database and generates prompts based on the user's current situation using machine learning libraries such as Scikit-learn and TensorFlow. For example, it can detect from location data that the user is currently driving and generate prompts containing information about nearby restaurants.

[0163] Input and Output

[0164] Input: Data stored in a database

[0165] Output: Generated prompt

[0166] Step 5:

[0167] Sending prompts from the server to the device

[0168] The generated prompt is sent from the server to the device as a push notification using Firebase Cloud Messaging (FCM).

[0169] Input and Output

[0170] Input: Generated prompt

[0171] Output: Push notification to device

[0172] Step 6:

[0173] Device prompt reception and user notification

[0174] The device receives the prompt sent from the server and notifies the user by voice using speech synthesis technology (e.g., Google TTS), or by displaying the prompt on the screen using NotificationManager (Android) or UNNotificationCenter (iOS).

[0175] Input and Output

[0176] Input: Prompt sent from the server

[0177] Output: Audio or visual notification

[0178] These steps allow users to automatically receive the information they need at specific times, such as prompts like "There's a recommended restaurant near your current location. Would you like to stop by?" or "Your next meeting will start soon. Please get ready to move."

[0179] (Application example 1)

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

[0181] Current self-driving vehicles require users to search for and obtain the information they need, resulting in low convenience. Furthermore, it is difficult for users to receive useful information at the appropriate time while driving, so the comfort and safety of the vehicle cannot be fully guaranteed. This results in a problem of a reduced driving experience and convenience during travel.

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

[0183] In this invention, the server includes means for collecting voice, location, schedule, weather, and traffic information, means for analyzing the collected information and generating prompts based on the user's current situation, means for notifying the user of the generated prompts, means for integrating with an information system installed in an autonomous vehicle to provide the user with useful information in real time, and means for inputting the prompts into a generative AI model and generating situation-specific prompt sentences. This allows the user to receive necessary information at the appropriate time while driving, enabling a comfortable and safe driving experience.

[0184] "Voice" refers to human speech and ambient sounds, and is a data source that the system collects to understand the user's intentions and environment.

[0185] "Location information" means data indicating the current geographic location obtained by GPS or other location sensors and used to determine the current location of a user or autonomous vehicle.

[0186] A "schedule" is data that indicates a user's plans and plans, and includes calendar information and information obtained from other platforms.

[0187] "Weather information" is data about current and forecast weather conditions, obtained from external weather forecast services.

[0188] "Traffic information" is data including current road conditions and congestion information, and is obtained from traffic management systems and external traffic information services.

[0189] A "prompt" is a recommendation or notification message provided to the user that is generated based on the results of the system's analysis.

[0190] "Generative AI Model" refers to the artificial intelligence algorithms and models used to generate optimal prompts for users based on input data.

[0191] An "autonomous vehicle" is a vehicle that can drive autonomously without human intervention, and uses AI and sensor technology to recognize and judge the surrounding environment and traffic conditions.

[0192] The present invention provides a system for providing useful information to a user in an autonomous vehicle in real time, and an embodiment of the system will be described in detail below. The system mainly comprises a server, a terminal, and a user who uses the server and the terminal.

[0193] Server Features

[0194] Data collection

[0195] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores this data in a database on the server for subsequent analysis.

[0196] Data analysis and prompt generation

[0197] The server analyzes the received data and performs processing to understand the user's current situation. For example, it generates appropriate prompts for the user based on their current location, weather, and schedule. This prompt generation uses a generative AI model to generate recommended messages based on the specific situation.

[0198] Prompt Notification

[0199] The generated prompt is sent from the server to the user's terminal. When the terminal receives the prompt, it notifies the user of the prompt. This notification can be done by voice, on-screen display, or other means.

[0200] Device Features

[0201] Data collection

[0202] The device collects the user's voice, location, schedule, weather, and traffic information and stores it as structured data, which is then periodically sent to a server.

[0203] Data transmission

[0204] The device periodically transmits the collected data to the server. This transmission can be done in real time or in batches at regular intervals.

[0205] Receiving prompts and notifications

[0206] The terminal receives the prompt sent from the server and notifies the user of the prompt either aloud using a speech synthesizer in the vehicle or by displaying it on an in-vehicle display.

[0207] Hardware and software used

[0208] Hardware:

[0209] Autonomous vehicle infotainment systems

[0210] GPS sensor

[0211] In-vehicle speech synthesizer

[0212] software:

[0213] Python

[0214] API Request

[0215] JSON

[0216] Weather forecast API (e.g. OpenWeatherMap)

[0217] Traffic information API

[0218] Specific examples

[0219] For example, while traveling in a self-driving vehicle, a user might receive a prompt like this:

[0220] Example prompt sentence:

[0221] There is a traffic jam. We recommend that you leave 15 minutes early.

[0222] The weather at your next destination is rainy. Don't forget your umbrella before you leave.

[0223] This system allows users to receive the necessary information at the appropriate time while driving, allowing them to enjoy a comfortable and safe driving experience.

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

[0225] Step 1:

[0226] The device collects voice, location, schedule, weather, and traffic information.

[0227] Specifically, the device obtains location information from a GPS sensor, the user's schedule from a calendar API, audio data from an on-board microphone, and weather and traffic information from a weather forecast API and a traffic information API, respectively.

[0228] Input: GPS, calendar API, car microphone, weather forecast API, traffic information API

[0229] Output: Collected voice, location information, schedule, weather information, traffic information

[0230] Step 2:

[0231] The terminal periodically transmits the collected data to the server.

[0232] Specifically, the device periodically collects data and sends it to the server in JSON format via an API request.

[0233] Input: Collected voice, location information, schedule, weather information, traffic information

[0234] Output: JSON formatted data sent to the server

[0235] Step 3:

[0236] The server analyzes the received data and understands the user's current situation.

[0237] Specifically, the server stores the received data in a database, then uses the location information to identify the current geographical situation, combines weather and traffic information to analyze the user's current situation, and uses schedule information to recognize the user's upcoming appointments and important events.

[0238] Input: JSON format data sent to the server

[0239] Output: Analysis results about the user's current situation

[0240] Step 4:

[0241] The server generates prompts using the generative AI model.

[0242] Specifically, the server inputs the analysis results into a generative AI model to generate an appropriate prompt specific to the user's situation, which then suggests the next action to take.

[0243] Input: Analysis results about the user's current situation

[0244] Output: Prompt sentence generated by the generative AI model

[0245] Step 5:

[0246] The server generates a prompt and sends it to the terminal.

[0247] Specifically, the server sends the generated prompt text to the terminal via an API request.

[0248] Input: Generated prompt text

[0249] Output: The prompt sent to the terminal

[0250] Step 6:

[0251] The terminal receives the prompt and notifies the user.

[0252] Specifically, the device will use a speech synthesizer to audibly notify the user of the received prompt, or display it on the in-car display. For example, if the prompt is "There is a traffic jam. We recommend that you leave 15 minutes early," the device will audibly notify the user of the prompt.

[0253] Input: The prompt sent to the terminal

[0254] Output: A prompt given to the user either audibly or on a display

[0255] This processing flow allows users to receive necessary information at the appropriate time while driving, allowing them to enjoy a comfortable and safe driving experience.

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

[0257] This system understands the user's current situation by collecting and analyzing the user's voice, location information, schedule, weather information, and traffic information, and generates and notifies the user of appropriate prompts. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and generating prompts according to the user's emotions, more personalized dialogue is realized.

[0258] Server processing explanation

[0259] Data collection

[0260] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores this data in a database for subsequent analysis.

[0261] Data analysis and prompt generation

[0262] The server analyzes the received data to understand the user's current situation. This analysis also uses an emotion engine that recognizes emotions from the user's voice data and facial expression data. The emotion engine analyzes the voice data and image data to identify the user's emotions. Based on the analysis results, it generates prompts that correspond to the user's situation and emotions.

[0263] Prompt Notification

[0264] The generated prompt is sent from the server to the device. When the device receives the prompt, it notifies the user of the prompt either by voice using speech synthesis technology or by displaying it on the screen.

[0265] Terminal processing explanation

[0266] Data collection

[0267] The device collects voice, location, schedule, weather, and traffic information and stores them in a structured format. At the same time, it also collects the user's voice and image data (facial expressions), which are then sent to a server for analysis by the emotion engine.

[0268] Data transmission

[0269] The device periodically transmits all collected data to the server, either in real time or in batches at regular intervals.

[0270] Prompt Reception

[0271] The device receives the prompt sent from the server and notifies the user of the prompt either audibly using speech synthesis technology or by displaying it on the screen.

[0272] User operations

[0273] Data provision

[0274] Users provide data such as voice, location, schedule, and facial expressions through their devices. This data is collected automatically, and no special operations are required.

[0275] Receiving and acknowledging prompts

[0276] The user receives a prompt from the device and checks its contents. The prompt contains information and suggestions that correspond to the user's situation and emotions.

[0277] Taking action

[0278] The user can then take appropriate action based on the prompts. For example, if the emotion engine detects that the user is feeling stressed, it will suggest ways to relax or take a break, and the user will act accordingly.

[0279] Specific examples

[0280] Notifications for users while driving

[0281] The server receives location information and voice data from the device and detects that the user is driving and feeling stressed.

[0282] Based on the analysis, the server generates prompts recommending relaxing spots and cafes near the user's current location, and may also include suggestions for music or breathing exercises to help reduce the user's stress.

[0283] Sends a server-generated prompt to the terminal.

[0284] The device receives the prompt and notifies the user by voice, "There's a relaxing cafe near your current location. Would you like to take a break?"

[0285] Schedule Notifications

[0286] The server receives schedule information and the user's facial expression data from the terminal and detects that the next appointment is approaching and that the user is feeling impatient.

[0287] The server generates a notification prompt for the next appointment, reminding the user, "Your next meeting will start soon. Get ready to travel," and also includes suggestions for relaxation techniques to help ease the user's sense of urgency.

[0288] The server sends the generated prompt to the terminal, and the terminal receives the prompt.

[0289] The device receives the prompt and notifies the user aloud: "Your next meeting will start soon. Please prepare to move. Take a deep breath and relax."

[0290] In this way, this system saves users the trouble of asking questions, and by using an emotion engine, it can provide more personalized information and actions, allowing users to obtain information appropriate to their situation and take action through natural dialogue.

[0291] The processing flow will be explained below.

[0292] Terminal handling

[0293] Step 1: Collect data

[0294] The device collects voice, location, schedule, weather, and traffic information through the microphone, GPS sensor, calendar app, weather forecast API, traffic information API, etc. It also collects facial expression data through the user's face recognition camera. This collected data is temporarily stored in a structured format.

[0295] Step 2: Sending data

[0296] The device periodically transmits the collected data to the server, either in real time or at regular intervals depending on the network connection status.

[0297] Step 3: Receiving a prompt

[0298] The device receives prompts sent from the server, which are based on parsed information and tailored to the user's current situation and emotional state.

[0299] Step 4: Prompt Notification

[0300] The device will notify the user of the received prompts either by speech synthesis or by displaying them on the screen.

[0301] Server Processing

[0302] Step 1: Receiving Data

[0303] The server receives voice, location, schedule, weather, traffic, and facial expression data sent from the device, and stores the received data in a database.

[0304] Step 2: Analyze the data

[0305] The server analyzes the received data to understand the user's current situation and emotions. The emotion engine analyzes the voice data and facial expression data to recognize the emotions the user is feeling (e.g., joy, anger, sadness, stress, etc.).

[0306] Step 3: Generate prompts

[0307] Based on the analysis results, the server generates prompts according to the user's situation and emotions. For example, if the emotion engine determines that the user is under stress while driving, it generates prompts recommending relaxing spots and cafes.

[0308] Step 4: Sending the prompt

[0309] The server sends the generated prompt to the terminal. The sending is done quickly, so that the information is provided in a timely manner.

[0310] User operations

[0311] Step 1: Provide the data

[0312] Users provide data such as voice, location, schedule, weather, traffic information, and facial expressions through their devices. This data is collected automatically, and users do not need to perform any special operations.

[0313] Step 2: Receive and confirm the prompt

[0314] The user receives a prompt from the terminal and can easily check the content by listening to the audio notification or by looking at the screen display.

[0315] Step 3: Take action

[0316] The user can then take appropriate action based on the prompts. For example, if the emotion engine recognizes that the user is feeling stressed and receives a prompt suggesting ways to relax, the user can try these methods.

[0317] Specific examples

[0318] Example 1: Notification to the user while driving

[0319] Step 1: The device collects the user's location and voice data to detect that they are driving and feeling stressed.

[0320] Step 2: The device sends the collected data to the server.

[0321] Step 3: The server receives the data, and the emotion engine analyzes the voice data to determine that the user is feeling stressed.

[0322] Step 4: Based on the analysis, the server generates prompts recommending relaxing spots and cafes near the user's current location, including music suggestions for stress reduction.

[0323] Step 5: Send the server-generated prompt to the terminal.

[0324] Step 6: The device receives the prompt and notifies the user by voice, "There's a relaxing cafe near your current location. Would you like to take a break?"

[0325] Example 2: Schedule notification

[0326] Step 1: The device collects the user's schedule information and facial expression data, and detects that the next appointment is approaching and that the user is feeling anxious.

[0327] Step 2: The device sends the collected data to the server.

[0328] Step 3: The server receives the data, and the emotion engine analyzes the facial expression data to determine that the user is feeling impatient.

[0329] Step 4: Based on the analysis results, the server generates a reminder prompt saying, "Your next meeting will start soon. Please prepare to move," and a prompt offering relaxation techniques to reduce the sense of urgency.

[0330] Step 5: Send the server-generated prompt to the terminal.

[0331] Step 6: The device receives the prompt and audibly informs the user, "Your next meeting will start soon. Get ready to go. Take a deep breath and relax."

[0332] This allows users to be provided with appropriate information and actions according to their situation and emotions through natural dialogue.

[0333] Example 2

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

[0335] In conventional systems, even if data such as a user's voice, location information, schedule, weather information, and movement information are collected individually, it is difficult to comprehensively analyze this data to understand the user's situation and emotions and provide appropriate prompts. Furthermore, there have been no systems that recognize user emotions and enable more personalized dialogue. This has made it difficult to suggest timely and appropriate actions to the user.

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

[0337] In this invention, the server includes means for collecting voice, location information, schedule, weather information, and movement information, means for analyzing the collected information and generating prompts based on the user's current situation and emotions, and means for notifying the user of the generated prompts, thereby enabling the server to comprehensively grasp the user's situation and emotions and provide more personalized and appropriate prompts in a timely manner.

[0338] "Voice" refers to the sounds and words uttered by the user, and is data that can be collected and analyzed to understand the user's instructions and emotions.

[0339] "Location Information" means data that indicates a user's current location determined using GPS or other location measurement technology.

[0340] "Schedule" refers to events and plans that a user has registered in a calendar or planner, and is data that can be used to analyze the user's activities and plans by understanding these events and plans.

[0341] "Weather information" refers to information that indicates current weather, temperature, humidity, and other meteorological conditions. By collecting and analyzing this information, users can understand the external environment that influences their behavior.

[0342] "Movement information" refers to information about a user's means of transportation and travel route, and is data that can be collected and analyzed to determine the user's current location, arrival time, etc.

[0343] A "prompt" is a notification or suggestion message to the user that is generated based on collected data, and is an instruction to support the user's actions.

[0344] "Emotion" refers to the psychological state that the user is feeling, such as joy, anger, sadness, or surprise, and by recognizing this, it is possible to generate a prompt that is more appropriate for the user.

[0345] "Notification" refers to the means by which the user is notified of the generated prompt, providing information to the user by voice or display.

[0346] MODE FOR CARRYING OUT THE INVENTION

[0347] This system understands the user's current situation by collecting and analyzing the user's voice, location information, schedule, weather information, and movement information, and generates and notifies appropriate prompts. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and generating prompts according to the user's emotions, it achieves more personalized dialogue.

[0348] Terminal operation for data collection

[0349] The device records the user's voice using a microphone and obtains location information using the GPS function. It also obtains schedule information from a calendar app, and weather and movement information from weather APIs and traffic APIs via the Internet. It also uses the camera function to capture the user's facial expression and collects data for facial expression analysis. The device saves this data in a structured format (for example, JSON format).

[0350] Sending data to the server

[0351] The device periodically sends collected data to the server. Data transmission is triggered in real time or at regular intervals. The server stores the received data in a database and uses it for subsequent analysis.

[0352] Data analysis on the server

[0353] The server uses multiple software tools to analyze the received data and understand the user's current situation and emotions. For example, voice data is converted into text by a speech recognition engine, and the text is then analyzed by a natural language processing engine. Location and schedule data are used to infer the user's activities using data analysis tools.

[0354] Emotion recognition

[0355] The server uses an emotion engine to recognize the user's emotions from voice data and facial expression data. For example, voice data is converted into text by a voice analysis engine and then analyzed by a natural language processing engine. Facial expression analysis is also performed using an image analysis engine. These tools can be generally called voice recognition engines or image analysis engines.

[0356] Prompt Generation

[0357] The server generates appropriate prompts based on the analysis results and data obtained from emotion recognition. A generative AI model is used to generate these prompts. A pre-trained generative AI model is used to generate natural language prompts that correspond to the user's situation and emotions. For example, prompts such as "There's a relaxing cafe near your current location. Would you like to take a short break?" or "Your next meeting will start soon. Please get ready to move. Take a deep breath and relax." are generated.

[0358] Prompt Notification

[0359] The generated prompt is sent from the server to the terminal. The terminal notifies the user of the received prompt. The notification can be made by voice using speech synthesis technology or by displaying the message on the screen. For speech synthesis, a general speech synthesis technology can be used.

[0360] In this way, the present invention can grasp the user's situation and emotions in real time and provide appropriate prompts, thereby providing more personalized information and actions to the user.

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

[0362] Step 1:

[0363] The device collects the user's voice, location information, schedule, weather information, and movement information.

[0364] Input: Audio data from the microphone, location information from GPS, schedule information from the calendar app, weather information from the weather API, and travel information from the traffic API.

[0365] Output: Collected data stored in a structured data format (e.g. JSON).

[0366] Specific operation: The device periodically activates the microphone to record audio, obtains the current location using GPS, obtains schedule information from the calendar app, and calls weather and traffic APIs to obtain weather and movement information. The obtained data is stored internally in a structured format.

[0367] Step 2:

[0368] The terminal transmits the collected data to the server.

[0369] Input: Collected data stored in a structured format.

[0370] Output: Data stored in the server's database.

[0371] Specific operation: The device periodically sends collected data to the server via API, which is then stored in the server's database.

[0372] Step 3:

[0373] The server parses the received data.

[0374] Input: User's voice data, location information, schedule information, weather information, and movement information stored in the server's database.

[0375] Output: Analysis of the user's current situation.

[0376] How it works: The server uses Python's Pandas library to cross-reference location and schedule information to estimate user activity. It also analyzes weather and travel information to calculate the time it will take to reach the next appointment.

[0377] Step 4:

[0378] The server uses an emotion engine to recognize the user's emotions from voice data and facial expression data.

[0379] Input: Voice data, facial expression data.

[0380] Output: User emotion recognition results.

[0381] Specific operation: The server converts voice data into text using a speech recognition engine, analyzes the text using a natural language processing engine to identify emotions, and analyzes facial expression data using an image analysis engine to identify emotions from the user's facial expressions.

[0382] Step 5:

[0383] The server uses the analysis results and emotion recognition results to generate prompts.

[0384] Input: User situation analysis results, emotion recognition results.

[0385] Output: The prompt statement.

[0386] Specific operation: The server uses a generative AI model (e.g., a derivative model of GPT) to generate appropriate prompts based on the user's situation and emotions. The generated prompts provide support for the user's actions.

[0387] Step 6:

[0388] The server generates a prompt and sends it to the terminal, which notifies the user.

[0389] Input: The prompt statement.

[0390] Output: The prompt that is displayed to the user.

[0391] Specific operation: The server sends a prompt to the terminal, and the terminal notifies the user of the prompt using speech synthesis technology or displays it on the screen. For example, the prompt "The next meeting will start soon. Please prepare to move. Take a deep breath and relax." is announced by voice or display.

[0392] (Application example 2)

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

[0394] Conventional shopping assistant systems often provide suggestions based solely on location and schedule information without considering the user's emotional state, resulting in low user satisfaction. Furthermore, the lack of suggestions tailored to the user's emotional needs and stress levels in the store is problematic. Therefore, it is necessary to provide a more personalized shopping experience and increase the user's emotional satisfaction.

[0395] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for collecting voice, location information, schedule, weather information, and traffic information, means for analyzing the collected information and generating prompts based on the user's current situation, means for identifying the user's emotions and generating prompts according to the emotions, means for notifying the user of the generated prompts, means for periodically transmitting the collected information to the server, means for storing and analyzing the received information on the server side, and means for the server to generate personalized prompts based on the emotions and suggest relaxation methods to the user. This enables a more personalized shopping experience according to the user's emotional state.

[0396] "Speech" refers to a user's speech or verbal communication, and is an acoustic signal collected through an input device such as a microphone.

[0397] "Location information" refers to a user's current geographic location or coordinate information obtained using technologies such as GPS or Bluetooth beacons.

[0398] "Schedule" refers to data about a user's plans and appointments, and is information including dates and times and details of events.

[0399] "Weather information" refers to data about current weather conditions and forecasted weather, including factors such as temperature, rainfall, and wind speed.

[0400] "Traffic information" refers to data on road congestion and public transportation operations, including information on travel times and traffic congestion.

[0401] A "prompt" is a notification or suggestion generated to prompt a user to take a particular action or provide information, and is a message conveyed in audio or visual form.

[0402] "Emotion" refers to identifying the user's psychological state or mood, and is recognized by analyzing voice and facial expression data.

[0403] The "emotion engine" is a software component that analyzes the user's voice and facial expression data to identify the user's emotions.

[0404] "Terminology" refers to words or phrases used to define particular concepts or functions within the system of the present invention and are used consistently within the context of this invention.

[0405] This invention is a system that collects and analyzes a user's voice, location information, schedule, weather information, and traffic information, identifies the user's emotions, and generates and notifies them of appropriate prompts. Specifically, the system is implemented in the following steps.

[0406] First, the server receives voice, location, schedule, weather, and traffic information sent from the device. This allows the server to collect data to understand the user's current situation. The server then uses an emotion engine to analyze the received voice and facial expression data and identify the user's emotions. This analysis uses specific APIs and software libraries.

[0407] The server then analyzes the received data and generates a prompt based on the user's situation and emotions. This prompt is then sent to the user via the device. The prompt is either audible using speech synthesis technology or displayed on a display screen. Specifically, the server converts speech to text using the Google Cloud Speech-to-Text API and analyzes emotions using the Emotion API from Azure Cognitive Services. The server also uses Firebase Firestore to store data and generate prompts based on the analysis results.

[0408] For example, as a user walks through a store, the system tracks the user's location and suggests relevant products and services when the user approaches a specific area. Furthermore, if the user is feeling stressed, the system can generate prompts suggesting ways to relax. Specific examples of prompts include, "Sir, it seems like your current situation is a bit stressful. There's a cafe nearby where you can relax. I recommend taking a break." or "You're feeling great! Here are some recommended new products."

[0409] The device collects voice and location information and sends it to the server. It also receives prompts sent from the server and notifies the user. Voice synthesis technology is used for voice notifications, and the display is used for text notifications. The device is equipped with GPS, a camera, and a microphone, and these hardware devices are used to collect the necessary data.

[0410] Users provide data such as voice, location, schedule, and facial expressions through their device. This data is collected automatically, and no special operations are required. Users also receive prompts from their device and check their content. The prompts contain information and suggestions based on the user's situation and emotions. Users can take appropriate actions based on the prompts, resulting in a more comfortable shopping experience.

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

[0412] Step 1:

[0413] The device collects the user's voice, location, schedule, weather, and traffic information. This includes voice input via microphone, location information via GPS, schedule information from the calendar app, weather information from the weather API, and traffic information from the traffic API. Each collected data is stored in a structured format and prepared for transmission to the server in the next step.

[0414] Step 2:

[0415] The device sends all collected data to a server. This data includes voice data, location information, schedules, weather information, and traffic information. The server receives this data and stores it in a database. The data may be sent in real time or in batches at regular intervals. The server uses the data for subsequent analysis.

[0416] Step 3:

[0417] The server analyzes the received data and understands the user's current situation. Specifically, it converts the voice data into text using the Google Cloud Speech-to-Text API. It also uses the Emotion API from Azure Cognitive Services to identify the user's emotions from the text and voice. This enables a comprehensive understanding of the user's location, schedule, weather, traffic conditions, and emotional state.

[0418] Step 4:

[0419] The server generates prompts based on the analysis results. Since the analysis results reveal the user's emotional state and current situation, it creates personalized prompts such as, "If you're feeling stressed, we suggest taking a break at a nearby cafe." To generate these prompts, a generative AI model is used to automatically generate appropriate prompts.

[0420] Step 5:

[0421] The server sends the generated prompt to the terminal. The generated prompt is sent to the terminal in text or audio format. For example, the prompt may include a sentence such as, "Dear customer, your current situation seems a bit stressful. There is a cafe nearby where you can relax. I recommend you take a break."

[0422] Step 6:

[0423] The device receives the prompt sent from the server and notifies the user. The notification is either audible using speech synthesis technology or displayed as text on the display. For example, in the case of a voice notification, the device may tell the user, "There's a cafe near your current location where you can relax. Would you like to take a break?"

[0424] Step 7:

[0425] The user receives a notification from their device and chooses an appropriate action based on the notification. For example, if the user is feeling stressed, they can follow the notification and take a break at a nearby cafe. In this way, the system provides a personalized shopping experience based on the user's emotional state and current situation.

[0426] Through the above processing steps, the present invention provides optimal prompts according to the user's emotions and circumstances, realizing personalized dialogue.

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

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

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

[0430] [Second embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0443] This invention is a system in which AI provides situation-based information at the appropriate time without the user having to ask questions. This system has a means to generate and notify the user of appropriate prompts by collecting and analyzing voice, location information, schedule information, weather information, and traffic information.

[0444] Server processing explanation

[0445] Data collection

[0446] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores the received data in a database for subsequent analysis.

[0447] Data analysis and prompt generation

[0448] The server analyzes the received data to understand the user's current situation, and generates prompts based on specific conditions, such as if the current weather is rainy, if the user is driving, or if there is an upcoming event. These prompts are messages suggesting the user's next action.

[0449] Prompt Notification

[0450] The generated prompt is sent from the server to the terminal. When the terminal receives the prompt, it notifies the user of the prompt in a format that is easy for the user to understand, such as by voice or on-screen display.

[0451] Terminal processing explanation

[0452] Data collection

[0453] The device collects voice, location, schedule, weather, and traffic information and stores it as structured data, which is then periodically sent to a server.

[0454] Data transmission

[0455] The device periodically transmits the collected data to the server. This transmission can be done in real time or in batches at regular intervals.

[0456] Prompt Reception

[0457] The device receives the prompt sent from the server and notifies the user of the prompt either by voice using speech synthesis technology or by displaying it on the screen.

[0458] Specific examples

[0459] Notifications for users while driving

[0460] The server receives location information from the device and detects that the user is driving.

[0461] Based on the analysis results, the server generates prompts containing information about landmarks and restaurants near the user's current location.

[0462] Sends a server-generated prompt to the terminal.

[0463] The device receives the prompt and notifies the user aloud, "There's a recommended restaurant near your current location. Would you like to stop by?"

[0464] Schedule Notifications

[0465] The server receives schedule information from the terminal and detects that the next appointment is approaching.

[0466] The server generates a notification prompt for the next appointment.

[0467] The server sends the generated prompt to the terminal, and the terminal receives the prompt.

[0468] The terminal notifies the user of the received prompt by voice, "The next meeting will start soon. Please prepare to move."

[0469] In this way, this system significantly improves user convenience by eliminating the need for users to ask questions and providing the necessary information at the appropriate time. Throughout this process, the server is responsible for collecting and analyzing data and generating prompts, while the terminal is responsible for collecting data and notifying prompts. This allows users to obtain information through natural dialogue.

[0470] The processing flow will be explained below.

[0471] Terminal handling

[0472] Step 1: Collect data

[0473] The device collects voice, location, schedule, weather, and traffic information through sensors and applications, and stores this data in a structured format.

[0474] Step 2: Sending data

[0475] The device sends the collected data to the server periodically, enabling real-time data sharing.

[0476] Step 3: Receiving a prompt

[0477] The terminal receives prompts sent from the server, which are generated based on the user's situation.

[0478] Step 4: Prompt Notification

[0479] The device notifies the user of the received prompt either audibly using speech synthesis technology or by displaying it on the screen.

[0480] Server Processing

[0481] Step 1: Receiving Data

[0482] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores the received data in a database.

[0483] Step 2: Analyze the data

[0484] The server analyzes the received data and determines the user's current situation based on the analysis results.

[0485] Step 3: Generate prompts

[0486] Based on the analysis, the server generates appropriate prompts for the user, such as prompts for nearby landmarks and restaurants if the user is driving.

[0487] Step 4: Sending the prompt

[0488] The server sends the generated prompts to the terminal, and the transmission is done quickly to provide timely information.

[0489] User operations

[0490] Step 1: Provide the data

[0491] Users provide data such as voice, location, and schedule information through their devices. This data is collected automatically, and no special operations are required.

[0492] Step 2: Receive and confirm the prompt

[0493] The user receives a prompt from the device, checks the content, and if the prompt is a voice notification, can take immediate action.

[0494] Step 3: Take action

[0495] The user can then take appropriate action based on the prompt. For example, if they receive a prompt recommending a restaurant, they can stop by the restaurant. In this way, users can acquire information through natural dialogue and reflect it in their actions.

[0496] Example 1

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

[0498] Conventional systems require users to actively obtain information, which can lead to missed timing or difficulty in obtaining accurate information. It is particularly difficult for users to obtain information when their hands are busy, such as while driving or preparing for a meeting. Furthermore, there is currently no system that can properly analyze collected data and provide useful information to users in real time.

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

[0500] In this invention, the server includes means for collecting voice, location information, schedule, weather data, and movement data, means for analyzing the collected data and generating prompts based on the user's current situation, and means for notifying the user of the generated prompts, thereby enabling the user to automatically receive necessary information at an appropriate time without having to ask.

[0501] "Voice" refers to a user's speech that has been digitally recorded and converted into analyzable data.

[0502] "Location information" is data indicating the user's current location, and is obtained by GPS or other location measurement means.

[0503] "Schedule" is information about the user's plans and events, and is obtained from a calendar application.

[0504] "Weather Data" means information about current and future weather conditions, obtained from external weather service APIs.

[0505] "Movement data" refers to information relating to the movement of a user, including traffic information, movement routes, and the like.

[0506] "Server" means a computer system that analyzes received data and generates and sends prompts to the user.

[0507] A "terminal" is a digital device carried by a user that collects voice and location information and transmits it to a server.

[0508] A "prompt" is a message that suggests a next action to the user.

[0509] "Notification" refers to a means of conveying the generated prompt to the user, and may include audio, screen display, etc.

[0510] "Collection means" refers to a function for acquiring voice, location information, schedule, weather data, and movement data.

[0511] The "analysis means" is a function that evaluates the user's situation based on the collected data and generates the most appropriate prompt.

[0512] The "transmission means" is a communication function for delivering the generated prompt from the server to the terminal.

[0513] MODE FOR CARRYING OUT THE INVENTION

[0514] This invention is a system that provides context-based information at the right time without the user having to ask. The system collects and analyzes voice, location information, schedule, weather data, and movement data to generate appropriate prompts and notify the user.

[0515] Hardware and software used

[0516] This system operates through the cooperation of a server and terminals. The main hardware and software used are listed below.

[0517] server

[0518] Hardware: High-performance server computer

[0519] software:

[0520] Database: General-purpose relational database management system (e.g., MySQL, PostgreSQL)

[0521] Web framework: Node.js, Flask (Python)

[0522] Machine learning libraries: Scikit-learn, TensorFlow

[0523] Messaging service: Firebase Cloud Messaging (FCM)

[0524] Terminal

[0525] Hardware: Smartphones, tablets

[0526] software:

[0527] Audio collection: MediaRecorder class (Android), AVAudioRecorder class (iOS)

[0528] Location information collection: LocationManager (Android), Core Location (iOS)

[0529] Schedule collection: CalendarProvider API (Android), EventKit framework (iOS)

[0530] Weather information collection: Weather service API (e.g. OpenWeatherMap API)

[0531] Traffic information collection: Traffic information API (e.g., Google Maps API)

[0532] Data transmission: Retrofit library (Android), Alamofire library (iOS)

[0533] Voice notification: Google TTS (Text-to-Speech)

[0534] Data collection and analysis

[0535] The device periodically collects voice, location, schedule, weather, and movement data in the background and sends it to the server, which receives the data and stores it in a database.

[0536] The server analyzes the received data to understand the user's current situation, and uses machine learning algorithms to predict the user's next action from the collected data and generate prompts based on specific conditions.

[0537] Prompt generation and notification

[0538] The generated prompt is sent from the server to the device, and when the device receives the prompt, it notifies the user by voice using speech synthesis technology or by displaying it on the screen.

[0539] For example, the following prompt is generated for a user who is driving:

[0540] "There's a recommended restaurant near where you are. Would you like to stop by?"

[0541] Additionally, the following prompts are generated on a scheduled basis:

[0542] "The next meeting will begin shortly. Please prepare to move."

[0543] As described above, this system can significantly improve user convenience by eliminating the need for users to ask questions to the system and providing necessary information at the appropriate time.

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

[0545] Step 1:

[0546] Device data collection

[0547] The device collects audio data, location information, schedule data, weather data, and movement data. Audio data is recorded using the device's microphone with the MediaRecorder class (Android) or AVAudioRecorder class (iOS). Location information is obtained using the GPS sensor with LocationManager (Android) or Core Location (iOS). Schedule data is obtained from the device's calendar app using the CalendarProvider API (Android) or EventKit framework (iOS). Weather data and movement data are obtained using external weather service APIs and traffic information APIs. This data is temporarily stored in local storage.

[0548] Input and Output

[0549] Input: User voice, location information, schedule, weather data, movement data

[0550] Output: Collected structured data (audio files, location data, schedule events, weather data, movement data)

[0551] Step 2:

[0552] Sending data from the device to the server

[0553] The device periodically sends collected voice data, location information, schedule data, weather data, and movement data to the server using the Retrofit library (Android) or Alamofire library (iOS) to securely transmit data via HTTPS requests.

[0554] Input and Output

[0555] Input: Collected structured data

[0556] Output: Data sent to the server

[0557] Step 3:

[0558] Receiving and storing data on the server

[0559] The server receives the data sent from the device and stores it in a database. It uses a database management system (e.g., MySQL, PostgreSQL) to properly structure and store the received data.

[0560] Input and Output

[0561] Input: Data sent from the terminal

[0562] Output: Data stored in the database

[0563] Step 4:

[0564] Server data analysis and prompt generation

[0565] The server analyzes the data stored in the database and generates prompts based on the user's current situation using machine learning libraries such as Scikit-learn and TensorFlow. For example, it can detect from location data that the user is currently driving and generate prompts containing information about nearby restaurants.

[0566] Input and Output

[0567] Input: Data stored in a database

[0568] Output: Generated prompt

[0569] Step 5:

[0570] Sending prompts from the server to the device

[0571] The generated prompt is sent from the server to the device as a push notification using Firebase Cloud Messaging (FCM).

[0572] Input and Output

[0573] Input: Generated prompt

[0574] Output: Push notification to device

[0575] Step 6:

[0576] Device prompt reception and user notification

[0577] The device receives the prompt sent from the server and notifies the user by voice using speech synthesis technology (e.g., Google TTS), or by displaying the prompt on the screen using NotificationManager (Android) or UNNotificationCenter (iOS).

[0578] Input and Output

[0579] Input: Prompt sent from the server

[0580] Output: Audio or visual notification

[0581] These steps allow users to automatically receive the information they need at specific times, such as prompts like "There's a recommended restaurant near your current location. Would you like to stop by?" or "Your next meeting will start soon. Please get ready to move."

[0582] (Application example 1)

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

[0584] Current self-driving vehicles require users to search for and obtain the information they need, resulting in low convenience. Furthermore, it is difficult for users to receive useful information at the appropriate time while driving, so the comfort and safety of the vehicle cannot be fully guaranteed. This results in a problem of a reduced driving experience and convenience during travel.

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

[0586] In this invention, the server includes means for collecting voice, location, schedule, weather, and traffic information, means for analyzing the collected information and generating prompts based on the user's current situation, means for notifying the user of the generated prompts, means for integrating with an information system installed in an autonomous vehicle to provide the user with useful information in real time, and means for inputting the prompts into a generative AI model and generating situation-specific prompt sentences. This allows the user to receive necessary information at the appropriate time while driving, enabling a comfortable and safe driving experience.

[0587] "Voice" refers to human speech and ambient sounds, and is a data source that the system collects to understand the user's intentions and environment.

[0588] "Location information" means data indicating the current geographic location obtained by GPS or other location sensors and used to determine the current location of a user or autonomous vehicle.

[0589] A "schedule" is data that indicates a user's plans and plans, and includes calendar information and information obtained from other platforms.

[0590] "Weather information" is data about current and forecast weather conditions, obtained from external weather forecast services.

[0591] "Traffic information" is data including current road conditions and congestion information, and is obtained from traffic management systems and external traffic information services.

[0592] A "prompt" is a recommendation or notification message provided to the user that is generated based on the results of the system's analysis.

[0593] "Generative AI Model" refers to the artificial intelligence algorithms and models used to generate optimal prompts for users based on input data.

[0594] An "autonomous vehicle" is a vehicle that can drive autonomously without human intervention, and uses AI and sensor technology to recognize and judge the surrounding environment and traffic conditions.

[0595] The present invention provides a system for providing useful information to a user in an autonomous vehicle in real time, and an embodiment of the system will be described in detail below. The system mainly comprises a server, a terminal, and a user who uses the server and the terminal.

[0596] Server Features

[0597] Data collection

[0598] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores this data in a database on the server for subsequent analysis.

[0599] Data analysis and prompt generation

[0600] The server analyzes the received data and performs processing to understand the user's current situation. For example, it generates appropriate prompts for the user based on their current location, weather, and schedule. This prompt generation uses a generative AI model to generate recommended messages based on the specific situation.

[0601] Prompt Notification

[0602] The generated prompt is sent from the server to the user's terminal. When the terminal receives the prompt, it notifies the user of the prompt. This notification can be done by voice, on-screen display, or other means.

[0603] Device Features

[0604] Data collection

[0605] The device collects the user's voice, location, schedule, weather, and traffic information and stores it as structured data, which is then periodically sent to a server.

[0606] Data transmission

[0607] The device periodically transmits the collected data to the server. This transmission can be done in real time or in batches at regular intervals.

[0608] Receiving prompts and notifications

[0609] The terminal receives the prompt sent from the server and notifies the user of the prompt either aloud using a speech synthesizer in the vehicle or by displaying it on an in-vehicle display.

[0610] Hardware and software used

[0611] Hardware:

[0612] Autonomous vehicle infotainment systems

[0613] GPS sensor

[0614] In-vehicle speech synthesizer

[0615] software:

[0616] Python

[0617] API Request

[0618] JSON

[0619] Weather forecast API (e.g. OpenWeatherMap)

[0620] Traffic information API

[0621] Specific examples

[0622] For example, while traveling in a self-driving vehicle, a user might receive a prompt like this:

[0623] Example prompt sentence:

[0624] There is a traffic jam. We recommend that you leave 15 minutes early.

[0625] The weather at your next destination is rainy. Don't forget your umbrella before you leave.

[0626] This system allows users to receive the necessary information at the appropriate time while driving, allowing them to enjoy a comfortable and safe driving experience.

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

[0628] Step 1:

[0629] The device collects voice, location, schedule, weather, and traffic information.

[0630] Specifically, the device obtains location information from a GPS sensor, the user's schedule from a calendar API, audio data from an on-board microphone, and weather and traffic information from a weather forecast API and a traffic information API, respectively.

[0631] Input: GPS, calendar API, car microphone, weather forecast API, traffic information API

[0632] Output: Collected voice, location information, schedule, weather information, traffic information

[0633] Step 2:

[0634] The terminal periodically transmits the collected data to the server.

[0635] Specifically, the device periodically collects data and sends it to the server in JSON format via an API request.

[0636] Input: Collected voice, location information, schedule, weather information, traffic information

[0637] Output: JSON formatted data sent to the server

[0638] Step 3:

[0639] The server analyzes the received data and understands the user's current situation.

[0640] Specifically, the server stores the received data in a database, then uses the location information to identify the current geographical situation, combines weather and traffic information to analyze the user's current situation, and uses schedule information to recognize the user's upcoming appointments and important events.

[0641] Input: JSON format data sent to the server

[0642] Output: Analysis results about the user's current situation

[0643] Step 4:

[0644] The server generates prompts using the generative AI model.

[0645] Specifically, the server inputs the analysis results into a generative AI model to generate an appropriate prompt specific to the user's situation, which then suggests the next action to take.

[0646] Input: Analysis results about the user's current situation

[0647] Output: Prompt sentence generated by the generative AI model

[0648] Step 5:

[0649] The server generates a prompt and sends it to the terminal.

[0650] Specifically, the server sends the generated prompt text to the terminal via an API request.

[0651] Input: Generated prompt text

[0652] Output: The prompt sent to the terminal

[0653] Step 6:

[0654] The terminal receives the prompt and notifies the user.

[0655] Specifically, the device will use a speech synthesizer to audibly notify the user of the received prompt, or display it on the in-car display. For example, if the prompt is "There is a traffic jam. We recommend that you leave 15 minutes early," the device will audibly notify the user of the prompt.

[0656] Input: The prompt sent to the terminal

[0657] Output: A prompt given to the user either audibly or on a display

[0658] This processing flow allows users to receive necessary information at the appropriate time while driving, allowing them to enjoy a comfortable and safe driving experience.

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

[0660] This system understands the user's current situation by collecting and analyzing the user's voice, location information, schedule, weather information, and traffic information, and generates and notifies the user of appropriate prompts. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and generating prompts according to the user's emotions, more personalized dialogue is realized.

[0661] Server processing explanation

[0662] Data collection

[0663] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores this data in a database for subsequent analysis.

[0664] Data analysis and prompt generation

[0665] The server analyzes the received data to understand the user's current situation. This analysis also uses an emotion engine that recognizes emotions from the user's voice data and facial expression data. The emotion engine analyzes the voice data and image data to identify the user's emotions. Based on the analysis results, it generates prompts that correspond to the user's situation and emotions.

[0666] Prompt Notification

[0667] The generated prompt is sent from the server to the device. When the device receives the prompt, it notifies the user of the prompt either by voice using speech synthesis technology or by displaying it on the screen.

[0668] Terminal processing explanation

[0669] Data collection

[0670] The device collects voice, location, schedule, weather, and traffic information and stores them in a structured format. At the same time, it also collects the user's voice and image data (facial expressions), which are then sent to a server for analysis by the emotion engine.

[0671] Data transmission

[0672] The device periodically transmits all collected data to the server, either in real time or in batches at regular intervals.

[0673] Prompt Reception

[0674] The device receives the prompt sent from the server and notifies the user of the prompt either audibly using speech synthesis technology or by displaying it on the screen.

[0675] User operations

[0676] Data provision

[0677] Users provide data such as voice, location, schedule, and facial expressions through their devices. This data is collected automatically, and no special operations are required.

[0678] Receiving and acknowledging prompts

[0679] The user receives a prompt from the device and checks its contents. The prompt contains information and suggestions that correspond to the user's situation and emotions.

[0680] Taking action

[0681] The user can then take appropriate action based on the prompts. For example, if the emotion engine detects that the user is feeling stressed, it will suggest ways to relax or take a break, and the user will act accordingly.

[0682] Specific examples

[0683] Notifications for users while driving

[0684] The server receives location information and voice data from the device and detects that the user is driving and feeling stressed.

[0685] Based on the analysis, the server generates prompts recommending relaxing spots and cafes near the user's current location, and may also include suggestions for music or breathing exercises to help reduce the user's stress.

[0686] Sends a server-generated prompt to the terminal.

[0687] The device receives the prompt and notifies the user by voice, "There's a relaxing cafe near your current location. Would you like to take a break?"

[0688] Schedule Notifications

[0689] The server receives schedule information and the user's facial expression data from the terminal and detects that the next appointment is approaching and that the user is feeling impatient.

[0690] The server generates a notification prompt for the next appointment, reminding the user, "Your next meeting will start soon. Get ready to travel," and also includes suggestions for relaxation techniques to help ease the user's sense of urgency.

[0691] The server sends the generated prompt to the terminal, and the terminal receives the prompt.

[0692] The device receives the prompt and notifies the user aloud: "Your next meeting will start soon. Please prepare to move. Take a deep breath and relax."

[0693] In this way, this system saves users the trouble of asking questions, and by using an emotion engine, it can provide more personalized information and actions, allowing users to obtain information appropriate to their situation and take action through natural dialogue.

[0694] The processing flow will be explained below.

[0695] Terminal handling

[0696] Step 1: Collect data

[0697] The device collects voice, location, schedule, weather, and traffic information through the microphone, GPS sensor, calendar app, weather forecast API, traffic information API, etc. It also collects facial expression data through the user's face recognition camera. This collected data is temporarily stored in a structured format.

[0698] Step 2: Sending data

[0699] The device periodically transmits the collected data to the server, either in real time or at regular intervals depending on the network connection status.

[0700] Step 3: Receiving a prompt

[0701] The device receives prompts sent from the server, which are based on parsed information and tailored to the user's current situation and emotional state.

[0702] Step 4: Prompt Notification

[0703] The device will notify the user of the received prompts either by speech synthesis or by displaying them on the screen.

[0704] Server Processing

[0705] Step 1: Receiving Data

[0706] The server receives voice, location, schedule, weather, traffic, and facial expression data sent from the device, and stores the received data in a database.

[0707] Step 2: Analyze the data

[0708] The server analyzes the received data to understand the user's current situation and emotions. The emotion engine analyzes the voice data and facial expression data to recognize the emotions the user is feeling (e.g., joy, anger, sadness, stress, etc.).

[0709] Step 3: Generate prompts

[0710] Based on the analysis results, the server generates prompts according to the user's situation and emotions. For example, if the emotion engine determines that the user is under stress while driving, it generates prompts recommending relaxing spots and cafes.

[0711] Step 4: Sending the prompt

[0712] The server sends the generated prompt to the terminal. The sending is done quickly, so that the information is provided in a timely manner.

[0713] User operations

[0714] Step 1: Provide the data

[0715] Users provide data such as voice, location, schedule, weather, traffic information, and facial expressions through their devices. This data is collected automatically, and users do not need to perform any special operations.

[0716] Step 2: Receive and confirm the prompt

[0717] The user receives a prompt from the terminal and can easily check the content by listening to the audio notification or by looking at the screen display.

[0718] Step 3: Take action

[0719] The user can then take appropriate action based on the prompts. For example, if the emotion engine recognizes that the user is feeling stressed and receives a prompt suggesting ways to relax, the user can try these methods.

[0720] Specific examples

[0721] Example 1: Notification to the user while driving

[0722] Step 1: The device collects the user's location and voice data to detect that they are driving and feeling stressed.

[0723] Step 2: The device sends the collected data to the server.

[0724] Step 3: The server receives the data, and the emotion engine analyzes the voice data to determine that the user is feeling stressed.

[0725] Step 4: Based on the analysis, the server generates prompts recommending relaxing spots and cafes near the user's current location, including music suggestions for stress reduction.

[0726] Step 5: Send the server-generated prompt to the terminal.

[0727] Step 6: The device receives the prompt and notifies the user by voice, "There's a relaxing cafe near your current location. Would you like to take a break?"

[0728] Example 2: Schedule notification

[0729] Step 1: The device collects the user's schedule information and facial expression data, and detects that the next appointment is approaching and that the user is feeling anxious.

[0730] Step 2: The device sends the collected data to the server.

[0731] Step 3: The server receives the data, and the emotion engine analyzes the facial expression data to determine that the user is feeling impatient.

[0732] Step 4: Based on the analysis results, the server generates a reminder prompt saying, "Your next meeting will start soon. Please prepare to move," and a prompt offering relaxation techniques to reduce the sense of urgency.

[0733] Step 5: Send the server-generated prompt to the terminal.

[0734] Step 6: The device receives the prompt and audibly informs the user, "Your next meeting will start soon. Get ready to go. Take a deep breath and relax."

[0735] This allows users to be provided with appropriate information and actions according to their situation and emotions through natural dialogue.

[0736] Example 2

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

[0738] In conventional systems, even if data such as a user's voice, location information, schedule, weather information, and movement information are collected individually, it is difficult to comprehensively analyze this data to understand the user's situation and emotions and provide appropriate prompts. Furthermore, there have been no systems that recognize user emotions and enable more personalized dialogue. This has made it difficult to suggest timely and appropriate actions to the user.

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

[0740] In this invention, the server includes means for collecting voice, location information, schedule, weather information, and movement information, means for analyzing the collected information and generating prompts based on the user's current situation and emotions, and means for notifying the user of the generated prompts, thereby enabling the server to comprehensively grasp the user's situation and emotions and provide more personalized and appropriate prompts in a timely manner.

[0741] "Voice" refers to the sounds and words uttered by the user, and is data that can be collected and analyzed to understand the user's instructions and emotions.

[0742] "Location Information" means data that indicates a user's current location determined using GPS or other location measurement technology.

[0743] "Schedule" refers to events and plans that a user has registered in a calendar or planner, and is data that can be used to analyze the user's activities and plans by understanding these events and plans.

[0744] "Weather information" refers to information that indicates current weather, temperature, humidity, and other meteorological conditions. By collecting and analyzing this information, users can understand the external environment that influences their behavior.

[0745] "Movement information" refers to information about a user's means of transportation and travel route, and is data that can be collected and analyzed to determine the user's current location, arrival time, etc.

[0746] A "prompt" is a notification or suggestion message to the user that is generated based on collected data, and is an instruction to support the user's actions.

[0747] "Emotion" refers to the psychological state that the user is feeling, such as joy, anger, sadness, or surprise, and recognizing this is an element for generating more appropriate prompts for the user.

[0748] "Notification" refers to the means by which the user is notified of the generated prompt, providing information to the user by voice or display.

[0749] MODE FOR CARRYING OUT THE INVENTION

[0750] This system understands the user's current situation by collecting and analyzing the user's voice, location information, schedule, weather information, and movement information, and generates and notifies appropriate prompts. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and generating prompts according to the user's emotions, it achieves more personalized dialogue.

[0751] Terminal operation for data collection

[0752] The device records the user's voice using a microphone and obtains location information using the GPS function. It also obtains schedule information from a calendar app, and weather and movement information from weather APIs and traffic APIs via the Internet. It also uses the camera function to capture the user's facial expression and collects data for facial expression analysis. The device saves this data in a structured format (for example, JSON format).

[0753] Sending data to the server

[0754] The device periodically sends collected data to the server. Data transmission is triggered in real time or at regular intervals. The server stores the received data in a database and uses it for subsequent analysis.

[0755] Data analysis on the server

[0756] The server uses multiple software tools to analyze the received data and understand the user's current situation and emotions. For example, voice data is converted into text by a speech recognition engine, and the text is then analyzed by a natural language processing engine. Location and schedule data are used to infer the user's activities using data analysis tools.

[0757] Emotion recognition

[0758] The server uses an emotion engine to recognize the user's emotions from voice data and facial expression data. For example, voice data is converted into text by a voice analysis engine and then analyzed by a natural language processing engine. Facial expression analysis is also performed using an image analysis engine. These tools can be generally called voice recognition engines or image analysis engines.

[0759] Prompt Generation

[0760] The server generates appropriate prompts based on the analysis results and data obtained from emotion recognition. A generative AI model is used to generate these prompts. A pre-trained generative AI model is used to generate natural language prompts that correspond to the user's situation and emotions. For example, prompts such as "There's a relaxing cafe near your current location. Would you like to take a short break?" or "Your next meeting will start soon. Please get ready to move. Take a deep breath and relax." are generated.

[0761] Prompt Notification

[0762] The generated prompt is sent from the server to the terminal. The terminal notifies the user of the received prompt. The notification can be made by voice using speech synthesis technology or by displaying the message on the screen. For speech synthesis, a general speech synthesis technology can be used.

[0763] In this way, the present invention can grasp the user's situation and emotions in real time and provide appropriate prompts, thereby providing more personalized information and actions to the user.

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

[0765] Step 1:

[0766] The device collects the user's voice, location information, schedule, weather information, and movement information.

[0767] Input: Audio data from the microphone, location information from GPS, schedule information from the calendar app, weather information from the weather API, and travel information from the traffic API.

[0768] Output: Collected data stored in a structured data format (e.g. JSON).

[0769] Specific operation: The device periodically activates the microphone to record audio, obtains the current location using GPS, obtains schedule information from the calendar app, and calls weather and traffic APIs to obtain weather and movement information. The obtained data is stored internally in a structured format.

[0770] Step 2:

[0771] The terminal transmits the collected data to the server.

[0772] Input: Collected data stored in a structured format.

[0773] Output: Data stored in the server's database.

[0774] Specific operation: The device periodically sends collected data to the server via API, which is then stored in the server's database.

[0775] Step 3:

[0776] The server parses the received data.

[0777] Input: User's voice data, location information, schedule information, weather information, and movement information stored in the server's database.

[0778] Output: Analysis of the user's current situation.

[0779] How it works: The server uses Python's Pandas library and other tools to cross-reference location and schedule information to estimate user activity. It also analyzes weather and travel information to calculate the time it will take to reach the next appointment.

[0780] Step 4:

[0781] The server uses an emotion engine to recognize the user's emotions from voice data and facial expression data.

[0782] Input: Voice data, facial expression data.

[0783] Output: User emotion recognition results.

[0784] Specific operation: The server converts voice data into text using a speech recognition engine, analyzes the text using a natural language processing engine to identify emotions, and analyzes facial expression data using an image analysis engine to identify emotions from the user's facial expressions.

[0785] Step 5:

[0786] The server uses the analysis results and emotion recognition results to generate prompts.

[0787] Input: User situation analysis results, emotion recognition results.

[0788] Output: The prompt statement.

[0789] Specific operation: The server uses a generative AI model (e.g., a derivative model of GPT) to generate appropriate prompts based on the user's situation and emotions. The generated prompts provide support for the user's actions.

[0790] Step 6:

[0791] The server generates a prompt and sends it to the terminal, which notifies the user.

[0792] Input: The prompt statement.

[0793] Output: The prompt that is displayed to the user.

[0794] Specific operation: The server sends a prompt to the terminal, and the terminal notifies the user of the prompt using speech synthesis technology or displays it on the screen. For example, the prompt "The next meeting will start soon. Please prepare to move. Take a deep breath and relax." is announced by voice or display.

[0795] (Application example 2)

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

[0797] Conventional shopping assistant systems often provide suggestions based solely on location and schedule information without considering the user's emotional state, resulting in low user satisfaction. Furthermore, the lack of suggestions tailored to the user's emotional needs and stress levels in the store is problematic. Therefore, it is necessary to provide a more personalized shopping experience and increase the user's emotional satisfaction.

[0798] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for collecting voice, location information, schedule, weather information, and traffic information, means for analyzing the collected information and generating prompts based on the user's current situation, means for identifying the user's emotions and generating prompts according to the emotions, means for notifying the user of the generated prompts, means for periodically transmitting the collected information to the server, means for storing and analyzing the received information on the server side, and means for the server to generate personalized prompts based on the emotions and suggest relaxation methods to the user. This enables a more personalized shopping experience according to the user's emotional state.

[0799] "Speech" refers to a user's speech or verbal communication, and is an acoustic signal collected through an input device such as a microphone.

[0800] "Location information" refers to a user's current geographic location or coordinate information obtained using technologies such as GPS or Bluetooth beacons.

[0801] "Schedule" refers to data about a user's plans and appointments, and is information including dates and times and details of events.

[0802] "Weather information" refers to data about current weather conditions and forecasted weather, including factors such as temperature, rainfall, and wind speed.

[0803] "Traffic information" refers to data on road congestion and public transportation operations, including information on travel times and traffic congestion.

[0804] A "prompt" is a notification or suggestion generated to prompt a user to take a particular action or provide information, and is a message conveyed in audio or visual form.

[0805] "Emotion" refers to identifying the user's psychological state or mood, and is recognized by analyzing voice and facial expression data.

[0806] The "emotion engine" is a software component that analyzes the user's voice and facial expression data to identify the user's emotions.

[0807] "Terminology" refers to words or phrases used to define particular concepts or functions within the system of the present invention and are used consistently within the context of this invention.

[0808] This invention is a system that collects and analyzes a user's voice, location information, schedule, weather information, and traffic information, identifies the user's emotions, and generates and notifies them of appropriate prompts. Specifically, the system is implemented in the following steps.

[0809] First, the server receives voice, location, schedule, weather, and traffic information sent from the device. This allows the server to collect data to understand the user's current situation. The server then uses an emotion engine to analyze the received voice and facial expression data and identify the user's emotions. This analysis uses specific APIs and software libraries.

[0810] The server then analyzes the received data and generates prompts based on the user's situation and emotions. These prompts are then sent to the user via the device. Notifications can be made audibly using speech synthesis technology or displayed on a display. Specifically, the server converts speech to text using the Google Cloud Speech-to-Text API and analyzes emotions using the Azure Cognitive Services Emotion API. The server also uses Firebase Firestore to store data and generate prompts based on the analysis results.

[0811] For example, as a user walks through a store, the system tracks the user's location and suggests relevant products and services when the user approaches a specific area. Furthermore, if the user is feeling stressed, the system can generate prompts suggesting ways to relax. Specific examples of prompts include, "Sir, it seems like your current situation is a bit stressful. There's a cafe nearby where you can relax. I recommend taking a break." or "You're feeling great! Here are some recommended new products."

[0812] The device collects voice and location information and sends it to the server. It also receives prompts sent from the server and notifies the user. Voice synthesis technology is used for voice notifications, and the display is used for text notifications. The device is equipped with GPS, a camera, and a microphone, and these hardware devices are used to collect the necessary data.

[0813] Users provide data such as voice, location, schedule, and facial expressions through their device. This data is collected automatically, and no special operations are required. Users also receive prompts from their device and check their content. The prompts contain information and suggestions based on the user's situation and emotions. Users can take appropriate actions based on the prompts, resulting in a more comfortable shopping experience.

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

[0815] Step 1:

[0816] The device collects the user's voice, location, schedule, weather, and traffic information. This includes voice input via microphone, location information via GPS, schedule information from the calendar app, weather information from the weather API, and traffic information from the traffic API. Each collected data is stored in a structured format and prepared for transmission to the server in the next step.

[0817] Step 2:

[0818] The device sends all collected data to a server. This data includes voice data, location information, schedules, weather information, and traffic information. The server receives this data and stores it in a database. The data may be sent in real time or in batches at regular intervals. The server uses the data for subsequent analysis.

[0819] Step 3:

[0820] The server analyzes the received data and understands the user's current situation. Specifically, it converts the voice data into text using the Google Cloud Speech-to-Text API. It also uses the Emotion API from Azure Cognitive Services to identify the user's emotions from the text and voice. This enables a comprehensive understanding of the user's location, schedule, weather, traffic conditions, and emotional state.

[0821] Step 4:

[0822] The server generates prompts based on the analysis results. Since the analysis results reveal the user's emotional state and current situation, it creates personalized prompts such as, "If you're feeling stressed, we suggest taking a break at a nearby cafe." To generate these prompts, a generative AI model is used to automatically generate appropriate prompts.

[0823] Step 5:

[0824] The server sends the generated prompt to the terminal. The generated prompt is sent to the terminal in text or audio format. For example, the prompt may include a sentence such as, "Dear customer, your current situation seems a bit stressful. There is a cafe nearby where you can relax. I recommend you take a break."

[0825] Step 6:

[0826] The device receives the prompt sent from the server and notifies the user. The notification is either audible using speech synthesis technology or displayed as text on the display. For example, in the case of a voice notification, the device may tell the user, "There's a cafe near your current location where you can relax. Would you like to take a break?"

[0827] Step 7:

[0828] The user receives a notification from their device and chooses an appropriate action based on the notification. For example, if the user is feeling stressed, they can follow the notification and take a break at a nearby cafe. In this way, the system provides a personalized shopping experience based on the user's emotional state and current situation.

[0829] Through the above processing steps, the present invention provides optimal prompts according to the user's emotions and circumstances, realizing personalized dialogue.

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

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

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

[0833] [Third embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0846] This invention is a system in which AI provides situation-based information at the appropriate time without the user having to ask questions. This system has a means to generate and notify the user of appropriate prompts by collecting and analyzing voice, location information, schedule information, weather information, and traffic information.

[0847] Server processing explanation

[0848] Data collection

[0849] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores the received data in a database for subsequent analysis.

[0850] Data analysis and prompt generation

[0851] The server analyzes the received data to understand the user's current situation, and generates prompts based on specific conditions, such as if the current weather is rainy, if the user is driving, or if there is an upcoming event. These prompts are messages suggesting the user's next action.

[0852] Prompt Notification

[0853] The generated prompt is sent from the server to the terminal. When the terminal receives the prompt, it notifies the user of the prompt in a format that is easy for the user to understand, such as by voice or on-screen display.

[0854] Terminal processing explanation

[0855] Data collection

[0856] The device collects voice, location, schedule, weather, and traffic information and stores it as structured data, which is then periodically sent to a server.

[0857] Data transmission

[0858] The device periodically transmits the collected data to the server. This transmission can be done in real time or in batches at regular intervals.

[0859] Prompt Reception

[0860] The device receives the prompt sent from the server and notifies the user of the prompt either by voice using speech synthesis technology or by displaying it on the screen.

[0861] Specific examples

[0862] Notifications for users while driving

[0863] The server receives location information from the device and detects that the user is driving.

[0864] Based on the analysis results, the server generates prompts containing information about landmarks and restaurants near the user's current location.

[0865] Sends a server-generated prompt to the terminal.

[0866] The device receives the prompt and notifies the user aloud, "There's a recommended restaurant near your current location. Would you like to stop by?"

[0867] Schedule Notifications

[0868] The server receives schedule information from the terminal and detects that the next appointment is approaching.

[0869] The server generates a notification prompt for the next appointment.

[0870] The server sends the generated prompt to the terminal, and the terminal receives the prompt.

[0871] The terminal notifies the user of the received prompt by voice, "The next meeting will start soon. Please prepare to move."

[0872] In this way, this system significantly improves user convenience by eliminating the need for users to ask questions and providing the necessary information at the appropriate time. Throughout this process, the server is responsible for collecting and analyzing data and generating prompts, while the terminal is responsible for collecting data and notifying prompts. This allows users to obtain information through natural dialogue.

[0873] The processing flow will be explained below.

[0874] Terminal handling

[0875] Step 1: Collect data

[0876] The device collects voice, location, schedule, weather, and traffic information through sensors and applications, and stores this data in a structured format.

[0877] Step 2: Sending data

[0878] The device sends the collected data to the server periodically, enabling real-time data sharing.

[0879] Step 3: Receiving a prompt

[0880] The terminal receives prompts sent from the server, which are generated based on the user's situation.

[0881] Step 4: Prompt Notification

[0882] The device notifies the user of the received prompt either audibly using speech synthesis technology or by displaying it on the screen.

[0883] Server Processing

[0884] Step 1: Receiving Data

[0885] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores the received data in a database.

[0886] Step 2: Analyze the data

[0887] The server analyzes the received data and determines the user's current situation based on the analysis results.

[0888] Step 3: Generate prompts

[0889] Based on the analysis, the server generates appropriate prompts for the user, such as prompts for nearby landmarks and restaurants if the user is driving.

[0890] Step 4: Sending the prompt

[0891] The server sends the generated prompts to the terminal, and the transmission is done quickly to provide timely information.

[0892] User operations

[0893] Step 1: Provide the data

[0894] Users provide data such as voice, location, and schedule information through their devices. This data is collected automatically, and no special operations are required.

[0895] Step 2: Receive and confirm the prompt

[0896] The user receives a prompt from the device, checks the content, and if the prompt is a voice notification, can take immediate action.

[0897] Step 3: Take action

[0898] The user can then take appropriate action based on the prompt. For example, if they receive a prompt recommending a restaurant, they can stop by the restaurant. In this way, users can acquire information through natural dialogue and reflect it in their actions.

[0899] Example 1

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

[0901] Conventional systems require users to actively obtain information, which can lead to missed timing or difficulty in obtaining accurate information. It is particularly difficult for users to obtain information when their hands are busy, such as while driving or preparing for a meeting. Furthermore, there is currently no system that can properly analyze collected data and provide useful information to users in real time.

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

[0903] In this invention, the server includes means for collecting voice, location information, schedule, weather data, and movement data, means for analyzing the collected data and generating prompts based on the user's current situation, and means for notifying the user of the generated prompts, thereby enabling the user to automatically receive necessary information at an appropriate time without having to ask.

[0904] "Voice" refers to a user's speech that has been digitally recorded and converted into analyzable data.

[0905] "Location information" is data indicating the user's current location, and is obtained by GPS or other location measurement means.

[0906] "Schedule" is information about the user's plans and events, and is obtained from a calendar application.

[0907] "Weather Data" means information about current and future weather conditions, obtained from external weather service APIs.

[0908] "Movement data" refers to information relating to the movement of a user, including traffic information, movement routes, and the like.

[0909] "Server" means a computer system that analyzes received data and generates and sends prompts to the user.

[0910] A "terminal" is a digital device carried by a user that collects voice and location information and transmits it to a server.

[0911] A "prompt" is a message that suggests a next action to the user.

[0912] "Notification" refers to a means of conveying the generated prompt to the user, and may include audio, screen display, etc.

[0913] "Collection means" refers to a function for acquiring voice, location information, schedule, weather data, and movement data.

[0914] The "analysis means" is a function that evaluates the user's situation based on the collected data and generates the most appropriate prompt.

[0915] The "transmission means" is a communication function for delivering the generated prompt from the server to the terminal.

[0916] MODE FOR CARRYING OUT THE INVENTION

[0917] This invention is a system that provides context-based information at the right time without the user having to ask. The system collects and analyzes voice, location information, schedule, weather data, and movement data to generate appropriate prompts and notify the user.

[0918] Hardware and software used

[0919] This system operates through the cooperation of a server and terminals. The main hardware and software used are listed below.

[0920] server

[0921] Hardware: High-performance server computer

[0922] software:

[0923] Database: General-purpose relational database management system (e.g., MySQL, PostgreSQL)

[0924] Web framework: Node.js, Flask (Python)

[0925] Machine learning libraries: Scikit-learn, TensorFlow

[0926] Messaging service: Firebase Cloud Messaging (FCM)

[0927] Terminal

[0928] Hardware: Smartphones, tablets

[0929] software:

[0930] Audio collection: MediaRecorder class (Android), AVAudioRecorder class (iOS)

[0931] Location information collection: LocationManager (Android), Core Location (iOS)

[0932] Schedule collection: CalendarProvider API (Android), EventKit framework (iOS)

[0933] Weather information collection: Weather service API (e.g. OpenWeatherMap API)

[0934] Traffic information collection: Traffic information API (e.g., Google Maps API)

[0935] Data transmission: Retrofit library (Android), Alamofire library (iOS)

[0936] Voice notification: Google TTS (Text-to-Speech)

[0937] Data collection and analysis

[0938] The device periodically collects voice, location, schedule, weather, and movement data in the background and sends it to the server, which receives the data and stores it in a database.

[0939] The server analyzes the received data to understand the user's current situation, and uses machine learning algorithms to predict the user's next action from the collected data and generate prompts based on specific conditions.

[0940] Prompt generation and notification

[0941] The generated prompt is sent from the server to the device, and when the device receives the prompt, it notifies the user by voice using speech synthesis technology or by displaying it on the screen.

[0942] For example, the following prompt is generated for a user who is driving:

[0943] "There's a recommended restaurant near where you are. Would you like to stop by?"

[0944] Additionally, the following prompts are generated on a scheduled basis:

[0945] "The next meeting will begin shortly. Please prepare to move."

[0946] As described above, this system can significantly improve user convenience by eliminating the need for users to ask questions to the system and providing necessary information at the appropriate time.

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

[0948] Step 1:

[0949] Device data collection

[0950] The device collects audio data, location information, schedule data, weather data, and movement data. Audio data is recorded using the device's microphone with the MediaRecorder class (Android) or AVAudioRecorder class (iOS). Location information is obtained using the GPS sensor with LocationManager (Android) or Core Location (iOS). Schedule data is obtained from the device's calendar app using the CalendarProvider API (Android) or EventKit framework (iOS). Weather data and movement data are obtained using external weather service APIs and traffic information APIs. This data is temporarily stored in local storage.

[0951] Input and Output

[0952] Input: User voice, location information, schedule, weather data, movement data

[0953] Output: Collected structured data (audio files, location data, schedule events, weather data, movement data)

[0954] Step 2:

[0955] Sending data from the device to the server

[0956] The device periodically sends collected voice data, location information, schedule data, weather data, and movement data to the server using the Retrofit library (Android) or Alamofire library (iOS) to securely transmit data via HTTPS requests.

[0957] Input and Output

[0958] Input: Collected structured data

[0959] Output: Data sent to the server

[0960] Step 3:

[0961] Receiving and storing data on the server

[0962] The server receives the data sent from the device and stores it in a database. It uses a database management system (e.g., MySQL, PostgreSQL) to properly structure and store the received data.

[0963] Input and Output

[0964] Input: Data sent from the terminal

[0965] Output: Data stored in the database

[0966] Step 4:

[0967] Server data analysis and prompt generation

[0968] The server analyzes the data stored in the database and generates prompts based on the user's current situation using machine learning libraries such as Scikit-learn and TensorFlow. For example, it can detect from location data that the user is currently driving and generate prompts containing information about nearby restaurants.

[0969] Input and Output

[0970] Input: Data stored in a database

[0971] Output: Generated prompt

[0972] Step 5:

[0973] Sending prompts from the server to the device

[0974] The generated prompt is sent from the server to the device as a push notification using Firebase Cloud Messaging (FCM).

[0975] Input and Output

[0976] Input: Generated prompt

[0977] Output: Push notification to device

[0978] Step 6:

[0979] Device prompt reception and user notification

[0980] The device receives the prompt sent from the server and notifies the user by voice using speech synthesis technology (e.g., Google TTS), or by displaying the prompt on the screen using NotificationManager (Android) or UNNotificationCenter (iOS).

[0981] Input and Output

[0982] Input: Prompt sent from the server

[0983] Output: Audio or visual notification

[0984] These steps allow users to automatically receive the information they need at specific times, such as prompts like "There's a recommended restaurant near your current location. Would you like to stop by?" or "Your next meeting will start soon. Please get ready to move."

[0985] (Application example 1)

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

[0987] Current self-driving vehicles require users to search for and obtain the information they need, resulting in low convenience. Furthermore, it is difficult for users to receive useful information at the appropriate time while driving, so the comfort and safety of the vehicle cannot be fully guaranteed. This results in a problem of a reduced driving experience and convenience during travel.

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

[0989] In this invention, the server includes means for collecting voice, location, schedule, weather, and traffic information, means for analyzing the collected information and generating prompts based on the user's current situation, means for notifying the user of the generated prompts, means for integrating with an information system installed in an autonomous vehicle to provide the user with useful information in real time, and means for inputting the prompts into a generative AI model and generating situation-specific prompt sentences. This allows the user to receive necessary information at the appropriate time while driving, enabling a comfortable and safe driving experience.

[0990] "Voice" refers to human speech and ambient sounds, and is a data source that the system collects to understand the user's intentions and environment.

[0991] "Location information" means data indicating the current geographic location obtained by GPS or other location sensors and used to determine the current location of a user or autonomous vehicle.

[0992] A "schedule" is data that indicates a user's plans and plans, and includes calendar information and information obtained from other platforms.

[0993] "Weather information" is data about current and forecast weather conditions, obtained from external weather forecast services.

[0994] "Traffic information" is data including current road conditions and congestion information, and is obtained from traffic management systems and external traffic information services.

[0995] A "prompt" is a recommendation or notification message provided to the user that is generated based on the results of the system's analysis.

[0996] "Generative AI Model" refers to the artificial intelligence algorithms and models used to generate optimal prompts for users based on input data.

[0997] An "autonomous vehicle" is a vehicle that can drive autonomously without human intervention, and uses AI and sensor technology to recognize and judge the surrounding environment and traffic conditions.

[0998] The present invention provides a system for providing useful information to a user in an autonomous vehicle in real time, and an embodiment of the system will be described in detail below. The system mainly comprises a server, a terminal, and a user who uses the server and the terminal.

[0999] Server Features

[1000] Data collection

[1001] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores this data in a database on the server for subsequent analysis.

[1002] Data analysis and prompt generation

[1003] The server analyzes the received data and performs processing to understand the user's current situation. For example, it generates appropriate prompts for the user based on their current location, weather, and schedule. This prompt generation uses a generative AI model to generate recommended messages based on the specific situation.

[1004] Prompt Notification

[1005] The generated prompt is sent from the server to the user's terminal. When the terminal receives the prompt, it notifies the user of the prompt. This notification can be done by voice, on-screen display, or other means.

[1006] Device Features

[1007] Data collection

[1008] The device collects the user's voice, location, schedule, weather, and traffic information and stores it as structured data, which is then periodically sent to a server.

[1009] Data transmission

[1010] The device periodically transmits the collected data to the server. This transmission can be done in real time or in batches at regular intervals.

[1011] Receiving prompts and notifications

[1012] The terminal receives the prompt sent from the server and notifies the user of the prompt either aloud using a speech synthesizer in the vehicle or by displaying it on an in-vehicle display.

[1013] Hardware and software used

[1014] Hardware:

[1015] Autonomous vehicle infotainment systems

[1016] GPS sensor

[1017] In-vehicle speech synthesizer

[1018] software:

[1019] Python

[1020] API Request

[1021] JSON

[1022] Weather forecast API (e.g. OpenWeatherMap)

[1023] Traffic information API

[1024] Specific examples

[1025] For example, while traveling in a self-driving vehicle, a user might receive a prompt like this:

[1026] Example prompt sentence:

[1027] There is a traffic jam. We recommend that you leave 15 minutes early.

[1028] The weather at your next destination is rainy. Don't forget your umbrella before you leave.

[1029] This system allows users to receive the necessary information at the appropriate time while driving, allowing them to enjoy a comfortable and safe driving experience.

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

[1031] Step 1:

[1032] The device collects voice, location, schedule, weather, and traffic information.

[1033] Specifically, the device obtains location information from a GPS sensor, the user's schedule from a calendar API, audio data from an on-board microphone, and weather and traffic information from a weather forecast API and a traffic information API, respectively.

[1034] Input: GPS, calendar API, car microphone, weather forecast API, traffic information API

[1035] Output: Collected voice, location information, schedule, weather information, traffic information

[1036] Step 2:

[1037] The terminal periodically transmits the collected data to the server.

[1038] Specifically, the device periodically collects data and sends it to the server in JSON format via an API request.

[1039] Input: Collected voice, location information, schedule, weather information, traffic information

[1040] Output: JSON formatted data sent to the server

[1041] Step 3:

[1042] The server analyzes the received data and understands the user's current situation.

[1043] Specifically, the server stores the received data in a database, then uses the location information to identify the current geographical situation, combines weather and traffic information to analyze the user's current situation, and uses schedule information to recognize the user's upcoming appointments and important events.

[1044] Input: JSON format data sent to the server

[1045] Output: Analysis results about the user's current situation

[1046] Step 4:

[1047] The server generates prompts using the generative AI model.

[1048] Specifically, the server inputs the analysis results into a generative AI model to generate an appropriate prompt specific to the user's situation, which then suggests the next action to take.

[1049] Input: Analysis results about the user's current situation

[1050] Output: Prompt sentence generated by the generative AI model

[1051] Step 5:

[1052] The server generates a prompt and sends it to the terminal.

[1053] Specifically, the server sends the generated prompt text to the terminal via an API request.

[1054] Input: Generated prompt text

[1055] Output: The prompt sent to the terminal

[1056] Step 6:

[1057] The terminal receives the prompt and notifies the user.

[1058] Specifically, the device will use a speech synthesizer to audibly notify the user of the received prompt, or display it on the in-car display. For example, if the prompt is "There is a traffic jam. We recommend that you leave 15 minutes early," the device will audibly notify the user of the prompt.

[1059] Input: The prompt sent to the terminal

[1060] Output: A prompt given to the user either audibly or on a display

[1061] This processing flow allows users to receive necessary information at the appropriate time while driving, allowing them to enjoy a comfortable and safe driving experience.

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

[1063] This system understands the user's current situation by collecting and analyzing the user's voice, location information, schedule, weather information, and traffic information, and generates and notifies the user of appropriate prompts. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and generating prompts according to the user's emotions, more personalized dialogue is realized.

[1064] Server processing explanation

[1065] Data collection

[1066] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores this data in a database for subsequent analysis.

[1067] Data analysis and prompt generation

[1068] The server analyzes the received data to understand the user's current situation. This analysis also uses an emotion engine that recognizes emotions from the user's voice data and facial expression data. The emotion engine analyzes the voice data and image data to identify the user's emotions. Based on the analysis results, it generates prompts that correspond to the user's situation and emotions.

[1069] Prompt Notification

[1070] The generated prompt is sent from the server to the device. When the device receives the prompt, it notifies the user of the prompt either by voice using speech synthesis technology or by displaying it on the screen.

[1071] Terminal processing explanation

[1072] Data collection

[1073] The device collects voice, location, schedule, weather, and traffic information and stores them in a structured format. At the same time, it also collects the user's voice and image data (facial expressions), which are then sent to a server for analysis by the emotion engine.

[1074] Data transmission

[1075] The device periodically transmits all collected data to the server, either in real time or in batches at regular intervals.

[1076] Prompt Reception

[1077] The device receives the prompt sent from the server and notifies the user of the prompt either audibly using speech synthesis technology or by displaying it on the screen.

[1078] User operations

[1079] Data provision

[1080] Users provide data such as voice, location, schedule, and facial expressions through their devices. This data is collected automatically, and no special operations are required.

[1081] Receiving and acknowledging prompts

[1082] The user receives a prompt from the device and checks its contents. The prompt contains information and suggestions that correspond to the user's situation and emotions.

[1083] Taking action

[1084] The user can then take appropriate action based on the prompts. For example, if the emotion engine detects that the user is feeling stressed, it will suggest ways to relax or take a break, and the user will act accordingly.

[1085] Specific examples

[1086] Notifications for users while driving

[1087] The server receives location information and voice data from the device and detects that the user is driving and feeling stressed.

[1088] Based on the analysis, the server generates prompts recommending relaxing spots and cafes near the user's current location, and may also include suggestions for music or breathing exercises to help reduce the user's stress.

[1089] Sends a server-generated prompt to the terminal.

[1090] The device receives the prompt and notifies the user by voice, "There's a relaxing cafe near your current location. Would you like to take a break?"

[1091] Schedule Notifications

[1092] The server receives schedule information and the user's facial expression data from the terminal and detects that the next appointment is approaching and that the user is feeling impatient.

[1093] The server generates a notification prompt for the next appointment, reminding the user, "Your next meeting will start soon. Get ready to travel," and also includes suggestions for relaxation techniques to help ease the user's sense of urgency.

[1094] The server sends the generated prompt to the terminal, and the terminal receives the prompt.

[1095] The device receives the prompt and notifies the user aloud: "Your next meeting will start soon. Please prepare to move. Take a deep breath and relax."

[1096] In this way, this system saves users the trouble of asking questions, and by using an emotion engine, it can provide more personalized information and actions, allowing users to obtain information appropriate to their situation and take action through natural dialogue.

[1097] The processing flow will be explained below.

[1098] Terminal handling

[1099] Step 1: Collect data

[1100] The device collects voice, location, schedule, weather, and traffic information through the microphone, GPS sensor, calendar app, weather forecast API, traffic information API, etc. It also collects facial expression data through the user's face recognition camera. This collected data is temporarily stored in a structured format.

[1101] Step 2: Sending data

[1102] The device periodically transmits the collected data to the server, either in real time or at regular intervals depending on the network connection status.

[1103] Step 3: Receiving a prompt

[1104] The device receives prompts sent from the server, which are based on parsed information and tailored to the user's current situation and emotional state.

[1105] Step 4: Prompt Notification

[1106] The device will notify the user of the received prompts either by speech synthesis or by displaying them on the screen.

[1107] Server Processing

[1108] Step 1: Receiving Data

[1109] The server receives voice, location, schedule, weather, traffic, and facial expression data sent from the device, and stores the received data in a database.

[1110] Step 2: Analyze the data

[1111] The server analyzes the received data to understand the user's current situation and emotions. The emotion engine analyzes the voice data and facial expression data to recognize the emotions the user is feeling (e.g., joy, anger, sadness, stress, etc.).

[1112] Step 3: Generate prompts

[1113] Based on the analysis results, the server generates prompts according to the user's situation and emotions. For example, if the emotion engine determines that the user is under stress while driving, it generates prompts recommending relaxing spots and cafes.

[1114] Step 4: Sending the prompt

[1115] The server sends the generated prompt to the terminal. The sending is done quickly, so that the information is provided in a timely manner.

[1116] User operations

[1117] Step 1: Provide the data

[1118] Users provide data such as voice, location, schedule, weather, traffic information, and facial expressions through their devices. This data is collected automatically, and users do not need to perform any special operations.

[1119] Step 2: Receive and confirm the prompt

[1120] The user receives a prompt from the terminal and can easily check the content by listening to the audio notification or by looking at the screen display.

[1121] Step 3: Take action

[1122] The user can then take appropriate action based on the prompts. For example, if the emotion engine recognizes that the user is feeling stressed and receives a prompt suggesting ways to relax, the user can try these methods.

[1123] Specific examples

[1124] Example 1: Notification to the user while driving

[1125] Step 1: The device collects the user's location and voice data to detect that they are driving and feeling stressed.

[1126] Step 2: The device sends the collected data to the server.

[1127] Step 3: The server receives the data, and the emotion engine analyzes the voice data to determine that the user is feeling stressed.

[1128] Step 4: Based on the analysis, the server generates prompts recommending relaxing spots and cafes near the user's current location, including music suggestions for stress reduction.

[1129] Step 5: Send the server-generated prompt to the terminal.

[1130] Step 6: The device receives the prompt and notifies the user by voice, "There's a relaxing cafe near your current location. Would you like to take a break?"

[1131] Example 2: Schedule notification

[1132] Step 1: The device collects the user's schedule information and facial expression data, and detects that the next appointment is approaching and that the user is feeling anxious.

[1133] Step 2: The device sends the collected data to the server.

[1134] Step 3: The server receives the data, and the emotion engine analyzes the facial expression data to determine that the user is feeling impatient.

[1135] Step 4: Based on the analysis results, the server generates a reminder prompt saying, "Your next meeting will start soon. Please prepare to move," and a prompt offering relaxation techniques to reduce the sense of urgency.

[1136] Step 5: Send the server-generated prompt to the terminal.

[1137] Step 6: The device receives the prompt and audibly informs the user, "Your next meeting will start soon. Get ready to go. Take a deep breath and relax."

[1138] This allows users to be provided with appropriate information and actions according to their situation and emotions through natural dialogue.

[1139] Example 2

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

[1141] In conventional systems, even if data such as a user's voice, location information, schedule, weather information, and movement information are collected individually, it is difficult to comprehensively analyze this data to understand the user's situation and emotions and provide appropriate prompts. Furthermore, there have been no systems that recognize user emotions and enable more personalized dialogue. This has made it difficult to suggest timely and appropriate actions to the user.

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

[1143] In this invention, the server includes means for collecting voice, location information, schedule, weather information, and movement information, means for analyzing the collected information and generating prompts based on the user's current situation and emotions, and means for notifying the user of the generated prompts, thereby enabling the server to comprehensively grasp the user's situation and emotions and provide more personalized and appropriate prompts in a timely manner.

[1144] "Voice" refers to the sounds and words uttered by the user, and is data that can be collected and analyzed to understand the user's instructions and emotions.

[1145] "Location Information" means data that indicates a user's current location determined using GPS or other location measurement technology.

[1146] "Schedule" refers to events and plans that a user has registered in a calendar or planner, and is data that can be used to analyze the user's activities and plans by understanding these events and plans.

[1147] "Weather information" refers to information that indicates current weather, temperature, humidity, and other meteorological conditions. By collecting and analyzing this information, users can understand the external environment that influences their behavior.

[1148] "Movement information" refers to information about a user's means of transportation and travel route, and is data that can be collected and analyzed to determine the user's current location, arrival time, etc.

[1149] A "prompt" is a notification or suggestion message to the user that is generated based on collected data, and is an instruction to support the user's actions.

[1150] "Emotion" refers to the psychological state that the user is feeling, such as joy, anger, sadness, or surprise, and recognizing this is an element for generating more appropriate prompts for the user.

[1151] "Notification" refers to the means by which the user is notified of the generated prompt, providing information to the user by voice or display.

[1152] MODE FOR CARRYING OUT THE INVENTION

[1153] This system understands the user's current situation by collecting and analyzing the user's voice, location information, schedule, weather information, and movement information, and generates and notifies appropriate prompts. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and generating prompts according to the user's emotions, it achieves more personalized dialogue.

[1154] Terminal operation for data collection

[1155] The device records the user's voice using a microphone and obtains location information using the GPS function. It also obtains schedule information from a calendar app, and weather and movement information from weather APIs and traffic APIs via the Internet. It also uses the camera function to capture the user's facial expression and collects data for facial expression analysis. The device saves this data in a structured format (for example, JSON format).

[1156] Sending data to the server

[1157] The device periodically sends collected data to the server. Data transmission is triggered in real time or at regular intervals. The server stores the received data in a database and uses it for subsequent analysis.

[1158] Data analysis on the server

[1159] The server uses multiple software tools to analyze the received data and understand the user's current situation and emotions. For example, voice data is converted into text by a speech recognition engine, and the text is then analyzed by a natural language processing engine. Location and schedule data are used to infer the user's activities using data analysis tools.

[1160] Emotion recognition

[1161] The server uses an emotion engine to recognize the user's emotions from voice data and facial expression data. For example, voice data is converted into text by a voice analysis engine and then analyzed by a natural language processing engine. Facial expression analysis is also performed using an image analysis engine. These tools can be generally called voice recognition engines or image analysis engines.

[1162] Prompt Generation

[1163] The server generates appropriate prompts based on the analysis results and data obtained from emotion recognition. A generative AI model is used to generate these prompts. A pre-trained generative AI model is used to generate natural language prompts that correspond to the user's situation and emotions. For example, prompts such as "There's a relaxing cafe near your current location. Would you like to take a short break?" or "Your next meeting will start soon. Please get ready to move. Take a deep breath and relax." are generated.

[1164] Prompt Notification

[1165] The generated prompt is sent from the server to the terminal. The terminal notifies the user of the received prompt. The notification can be made by voice using speech synthesis technology or by displaying the message on the screen. For speech synthesis, a general speech synthesis technology can be used.

[1166] In this way, the present invention can grasp the user's situation and emotions in real time and provide appropriate prompts, thereby providing more personalized information and actions to the user.

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

[1168] Step 1:

[1169] The device collects the user's voice, location information, schedule, weather information, and movement information.

[1170] Input: Audio data from the microphone, location information from GPS, schedule information from the calendar app, weather information from the weather API, and travel information from the traffic API.

[1171] Output: Collected data stored in a structured data format (e.g. JSON).

[1172] Specific operation: The device periodically activates the microphone to record audio, obtains the current location using GPS, obtains schedule information from the calendar app, and calls weather and traffic APIs to obtain weather and movement information. The obtained data is stored internally in a structured format.

[1173] Step 2:

[1174] The terminal transmits the collected data to the server.

[1175] Input: Collected data stored in a structured format.

[1176] Output: Data stored in the server's database.

[1177] Specific operation: The device periodically sends collected data to the server via API, which is then stored in the server's database.

[1178] Step 3:

[1179] The server parses the received data.

[1180] Input: User's voice data, location information, schedule information, weather information, and movement information stored in the server's database.

[1181] Output: Analysis of the user's current situation.

[1182] How it works: The server uses Python's Pandas library and other tools to cross-reference location and schedule information to estimate user activity. It also analyzes weather and travel information to calculate the time it will take to reach the next appointment.

[1183] Step 4:

[1184] The server uses an emotion engine to recognize the user's emotions from voice data and facial expression data.

[1185] Input: Voice data, facial expression data.

[1186] Output: User emotion recognition results.

[1187] Specific operation: The server converts voice data into text using a speech recognition engine, analyzes the text using a natural language processing engine to identify emotions, and analyzes facial expression data using an image analysis engine to identify emotions from the user's facial expressions.

[1188] Step 5:

[1189] The server uses the analysis results and emotion recognition results to generate prompts.

[1190] Input: User situation analysis results, emotion recognition results.

[1191] Output: The prompt statement.

[1192] Specific operation: The server uses a generative AI model (e.g., a derivative model of GPT) to generate appropriate prompts based on the user's situation and emotions. The generated prompts provide support for the user's actions.

[1193] Step 6:

[1194] The server generates a prompt and sends it to the terminal, which notifies the user.

[1195] Input: The prompt statement.

[1196] Output: The prompt that is displayed to the user.

[1197] Specific operation: The server sends a prompt to the terminal, and the terminal notifies the user of the prompt using speech synthesis technology or displays it on the screen. For example, the prompt "The next meeting will start soon. Please prepare to move. Take a deep breath and relax." is announced by voice or display.

[1198] (Application example 2)

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

[1200] Conventional shopping assistant systems often provide suggestions based solely on location and schedule information without considering the user's emotional state, resulting in low user satisfaction. Furthermore, the lack of suggestions tailored to the user's emotional needs and stress levels in the store is problematic. Therefore, it is necessary to provide a more personalized shopping experience and increase the user's emotional satisfaction.

[1201] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for collecting voice, location information, schedule, weather information, and traffic information, means for analyzing the collected information and generating prompts based on the user's current situation, means for identifying the user's emotions and generating prompts according to the emotions, means for notifying the user of the generated prompts, means for periodically transmitting the collected information to the server, means for storing and analyzing the received information on the server side, and means for the server to generate personalized prompts based on the emotions and suggest relaxation methods to the user. This enables a more personalized shopping experience according to the user's emotional state.

[1202] "Speech" refers to a user's speech or verbal communication, and is an acoustic signal collected through an input device such as a microphone.

[1203] "Location information" refers to a user's current geographic location or coordinate information obtained using technologies such as GPS or Bluetooth beacons.

[1204] "Schedule" refers to data about a user's plans and appointments, and is information including dates and times and details of events.

[1205] "Weather information" refers to data about current weather conditions and forecasted weather, including factors such as temperature, rainfall, and wind speed.

[1206] "Traffic information" refers to data on road congestion and public transportation operations, including information on travel times and traffic congestion.

[1207] A "prompt" is a notification or suggestion generated to prompt a user to take a particular action or provide information, and is a message conveyed in audio or visual form.

[1208] "Emotion" refers to identifying the user's psychological state or mood, and is recognized by analyzing voice and facial expression data.

[1209] The "emotion engine" is a software component that analyzes the user's voice and facial expression data to identify the user's emotions.

[1210] "Terminology" refers to words or phrases used to define particular concepts or functions within the system of the present invention and are used consistently within the context of this invention.

[1211] This invention is a system that collects and analyzes a user's voice, location information, schedule, weather information, and traffic information, identifies the user's emotions, and generates and notifies them of appropriate prompts. Specifically, the system is implemented in the following steps.

[1212] First, the server receives voice, location, schedule, weather, and traffic information sent from the device. This allows the server to collect data to understand the user's current situation. The server then uses an emotion engine to analyze the received voice and facial expression data and identify the user's emotions. This analysis uses specific APIs and software libraries.

[1213] The server then analyzes the received data and generates prompts based on the user's situation and emotions. These prompts are then sent to the user via the device. Notifications can be made audibly using speech synthesis technology or displayed on a display. Specifically, the server converts speech to text using the Google Cloud Speech-to-Text API and analyzes emotions using the Azure Cognitive Services Emotion API. The server also uses Firebase Firestore to store data and generate prompts based on the analysis results.

[1214] For example, as a user walks through a store, the system tracks the user's location and suggests relevant products and services when the user approaches a specific area. Furthermore, if the user is feeling stressed, the system can generate prompts suggesting ways to relax. Specific examples of prompts include, "Sir, it seems like your current situation is a bit stressful. There's a cafe nearby where you can relax. I recommend taking a break." or "You're feeling great! Here are some recommended new products."

[1215] The device collects voice and location information and sends it to the server. It also receives prompts sent from the server and notifies the user. Voice synthesis technology is used for voice notifications, and the display is used for text notifications. The device is equipped with GPS, a camera, and a microphone, and these hardware devices are used to collect the necessary data.

[1216] Users provide data such as voice, location, schedule, and facial expressions through their device. This data is collected automatically, and no special operations are required. Users also receive prompts from their device and check their content. The prompts contain information and suggestions based on the user's situation and emotions. Users can take appropriate actions based on the prompts, resulting in a more comfortable shopping experience.

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

[1218] Step 1:

[1219] The device collects the user's voice, location, schedule, weather, and traffic information. This includes voice input via microphone, location information via GPS, schedule information from the calendar app, weather information from the weather API, and traffic information from the traffic API. Each collected data is stored in a structured format and prepared for transmission to the server in the next step.

[1220] Step 2:

[1221] The device sends all collected data to a server. This data includes voice data, location information, schedules, weather information, and traffic information. The server receives this data and stores it in a database. The data may be sent in real time or in batches at regular intervals. The server uses the data for subsequent analysis.

[1222] Step 3:

[1223] The server analyzes the received data and understands the user's current situation. Specifically, it converts the voice data into text using the Google Cloud Speech-to-Text API. It also uses the Emotion API from Azure Cognitive Services to identify the user's emotions from the text and voice. This enables a comprehensive understanding of the user's location, schedule, weather, traffic conditions, and emotional state.

[1224] Step 4:

[1225] The server generates prompts based on the analysis results. Since the analysis results reveal the user's emotional state and current situation, it creates personalized prompts such as, "If you're feeling stressed, we suggest taking a break at a nearby cafe." To generate these prompts, a generative AI model is used to automatically generate appropriate prompts.

[1226] Step 5:

[1227] The server sends the generated prompt to the terminal. The generated prompt is sent to the terminal in text or audio format. For example, the prompt may include a sentence such as, "Dear customer, your current situation seems a bit stressful. There is a cafe nearby where you can relax. I recommend you take a break."

[1228] Step 6:

[1229] The device receives the prompt sent from the server and notifies the user. The notification is either audible using speech synthesis technology or displayed as text on the display. For example, in the case of a voice notification, the device may tell the user, "There's a cafe near your current location where you can relax. Would you like to take a break?"

[1230] Step 7:

[1231] The user receives a notification from their device and chooses an appropriate action based on the notification. For example, if the user is feeling stressed, they can follow the notification and take a break at a nearby cafe. In this way, the system provides a personalized shopping experience based on the user's emotional state and current situation.

[1232] Through the above processing steps, the present invention provides optimal prompts according to the user's emotions and circumstances, realizing personalized dialogue.

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

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

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

[1236] [Fourth embodiment]

[1237] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

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

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

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

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

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

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

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

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

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

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

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

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

[1250] This invention is a system in which AI provides situation-based information at the appropriate time without the user having to ask questions. This system has a means to generate and notify the user of appropriate prompts by collecting and analyzing voice, location information, schedule information, weather information, and traffic information.

[1251] Server processing explanation

[1252] Data collection

[1253] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores the received data in a database for subsequent analysis.

[1254] Data analysis and prompt generation

[1255] The server analyzes the received data to understand the user's current situation, and generates prompts based on specific conditions, such as if the current weather is rainy, if the user is driving, or if there is an upcoming event. These prompts are messages suggesting the user's next action.

[1256] Prompt Notification

[1257] The generated prompt is sent from the server to the terminal. When the terminal receives the prompt, it notifies the user of the prompt in a format that is easy for the user to understand, such as by voice or on-screen display.

[1258] Terminal processing explanation

[1259] Data collection

[1260] The device collects voice, location, schedule, weather, and traffic information and stores it as structured data, which is then periodically sent to a server.

[1261] Data transmission

[1262] The device periodically transmits the collected data to the server. This transmission can be done in real time or in batches at regular intervals.

[1263] Prompt Reception

[1264] The device receives the prompt sent from the server and notifies the user of the prompt either by voice using speech synthesis technology or by displaying it on the screen.

[1265] Specific examples

[1266] Notifications for users while driving

[1267] The server receives location information from the device and detects that the user is driving.

[1268] Based on the analysis results, the server generates prompts containing information about landmarks and restaurants near the user's current location.

[1269] Sends a server-generated prompt to the terminal.

[1270] The device receives the prompt and notifies the user aloud, "There's a recommended restaurant near your current location. Would you like to stop by?"

[1271] Schedule Notifications

[1272] The server receives schedule information from the terminal and detects that the next appointment is approaching.

[1273] The server generates a notification prompt for the next appointment.

[1274] The server sends the generated prompt to the terminal, and the terminal receives the prompt.

[1275] The terminal notifies the user of the received prompt by voice, "The next meeting will start soon. Please prepare to move."

[1276] In this way, this system significantly improves user convenience by eliminating the need for users to ask questions and providing the necessary information at the appropriate time. Throughout this process, the server is responsible for collecting and analyzing data and generating prompts, while the terminal is responsible for collecting data and notifying prompts. This allows users to obtain information through natural dialogue.

[1277] The processing flow will be explained below.

[1278] Terminal handling

[1279] Step 1: Collect data

[1280] The device collects voice, location, schedule, weather, and traffic information through sensors and applications, and stores this data in a structured format.

[1281] Step 2: Sending data

[1282] The device sends the collected data to the server periodically, enabling real-time data sharing.

[1283] Step 3: Receiving a prompt

[1284] The terminal receives prompts sent from the server, which are generated based on the user's situation.

[1285] Step 4: Prompt Notification

[1286] The device notifies the user of the received prompt either audibly using speech synthesis technology or by displaying it on the screen.

[1287] Server Processing

[1288] Step 1: Receiving Data

[1289] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores the received data in a database.

[1290] Step 2: Analyze the data

[1291] The server analyzes the received data and determines the user's current situation based on the analysis results.

[1292] Step 3: Generate prompts

[1293] Based on the analysis, the server generates appropriate prompts for the user, such as prompts for nearby landmarks and restaurants if the user is driving.

[1294] Step 4: Sending the prompt

[1295] The server sends the generated prompts to the terminal, and the transmission is done quickly to provide timely information.

[1296] User operations

[1297] Step 1: Provide the data

[1298] Users provide data such as voice, location, and schedule information through their devices. This data is collected automatically, and no special operations are required.

[1299] Step 2: Receive and confirm the prompt

[1300] The user receives a prompt from the device, checks the content, and if the prompt is a voice notification, can take immediate action.

[1301] Step 3: Take action

[1302] The user can then take appropriate action based on the prompt. For example, if they receive a prompt recommending a restaurant, they can stop by the restaurant. In this way, users can acquire information through natural dialogue and reflect it in their actions.

[1303] Example 1

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

[1305] Conventional systems require users to actively obtain information, which can lead to missed timing or difficulty in obtaining accurate information. It is particularly difficult for users to obtain information when their hands are busy, such as while driving or preparing for a meeting. Furthermore, there is currently no system that can properly analyze collected data and provide useful information to users in real time.

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

[1307] In this invention, the server includes means for collecting voice, location information, schedule, weather data, and movement data, means for analyzing the collected data and generating prompts based on the user's current situation, and means for notifying the user of the generated prompts, thereby enabling the user to automatically receive necessary information at an appropriate time without having to ask.

[1308] "Voice" refers to a user's speech that has been digitally recorded and converted into analyzable data.

[1309] "Location information" is data indicating the user's current location, and is obtained by GPS or other location measurement means.

[1310] "Schedule" is information about the user's plans and events, and is obtained from a calendar application.

[1311] "Weather Data" means information about current and future weather conditions, obtained from external weather service APIs.

[1312] "Movement data" refers to information relating to the movement of a user, including traffic information, movement routes, and the like.

[1313] "Server" means a computer system that analyzes received data and generates and sends prompts to the user.

[1314] A "terminal" is a digital device carried by a user that collects voice and location information and transmits it to a server.

[1315] A "prompt" is a message that suggests a next action to the user.

[1316] "Notification" refers to a means of conveying the generated prompt to the user, and may include audio, screen display, etc.

[1317] "Collection means" refers to a function for acquiring voice, location information, schedule, weather data, and movement data.

[1318] The "analysis means" is a function that evaluates the user's situation based on the collected data and generates the most appropriate prompt.

[1319] The "transmission means" is a communication function for delivering the generated prompt from the server to the terminal.

[1320] MODE FOR CARRYING OUT THE INVENTION

[1321] This invention is a system that provides context-based information at the right time without the user having to ask. The system collects and analyzes voice, location information, schedule, weather data, and movement data to generate appropriate prompts and notify the user.

[1322] Hardware and software used

[1323] This system operates through the cooperation of a server and terminals. The main hardware and software used are listed below.

[1324] server

[1325] Hardware: High-performance server computer

[1326] software:

[1327] Database: General-purpose relational database management system (e.g., MySQL, PostgreSQL)

[1328] Web framework: Node.js, Flask (Python)

[1329] Machine learning libraries: Scikit-learn, TensorFlow

[1330] Messaging service: Firebase Cloud Messaging (FCM)

[1331] Terminal

[1332] Hardware: Smartphones, tablets

[1333] software:

[1334] Audio collection: MediaRecorder class (Android), AVAudioRecorder class (iOS)

[1335] Location information collection: LocationManager (Android), Core Location (iOS)

[1336] Schedule collection: CalendarProvider API (Android), EventKit framework (iOS)

[1337] Weather information collection: Weather service API (e.g. OpenWeatherMap API)

[1338] Traffic information collection: Traffic information API (e.g., Google Maps API)

[1339] Data transmission: Retrofit library (Android), Alamofire library (iOS)

[1340] Voice notification: Google TTS (Text-to-Speech)

[1341] Data collection and analysis

[1342] The device periodically collects voice, location, schedule, weather, and movement data in the background and sends it to the server, which receives the data and stores it in a database.

[1343] The server analyzes the received data to understand the user's current situation, and uses machine learning algorithms to predict the user's next action from the collected data and generate prompts based on specific conditions.

[1344] Prompt generation and notification

[1345] The generated prompt is sent from the server to the device, and when the device receives the prompt, it notifies the user by voice using speech synthesis technology or by displaying it on the screen.

[1346] For example, the following prompt is generated for a user who is driving:

[1347] "There's a recommended restaurant near where you are. Would you like to stop by?"

[1348] Additionally, the following prompts are generated on a scheduled basis:

[1349] "The next meeting will begin shortly. Please prepare to move."

[1350] As described above, this system can significantly improve user convenience by eliminating the need for users to ask questions to the system and providing necessary information at the appropriate time.

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

[1352] Step 1:

[1353] Device data collection

[1354] The device collects audio data, location information, schedule data, weather data, and movement data. Audio data is recorded using the device's microphone with the MediaRecorder class (Android) or AVAudioRecorder class (iOS). Location information is obtained using the GPS sensor with LocationManager (Android) or Core Location (iOS). Schedule data is obtained from the device's calendar app using the CalendarProvider API (Android) or EventKit framework (iOS). Weather data and movement data are obtained using external weather service APIs and traffic information APIs. This data is temporarily stored in local storage.

[1355] Input and Output

[1356] Input: User voice, location information, schedule, weather data, movement data

[1357] Output: Collected structured data (audio files, location data, schedule events, weather data, movement data)

[1358] Step 2:

[1359] Sending data from the device to the server

[1360] The device periodically sends collected voice data, location information, schedule data, weather data, and movement data to the server using the Retrofit library (Android) or Alamofire library (iOS) to securely transmit data via HTTPS requests.

[1361] Input and Output

[1362] Input: Collected structured data

[1363] Output: Data sent to the server

[1364] Step 3:

[1365] Receiving and storing data on the server

[1366] The server receives the data sent from the device and stores it in a database. It uses a database management system (e.g., MySQL, PostgreSQL) to properly structure and store the received data.

[1367] Input and Output

[1368] Input: Data sent from the terminal

[1369] Output: Data stored in the database

[1370] Step 4:

[1371] Server data analysis and prompt generation

[1372] The server analyzes the data stored in the database and generates prompts based on the user's current situation using machine learning libraries such as Scikit-learn and TensorFlow. For example, it can detect from location data that the user is currently driving and generate prompts containing information about nearby restaurants.

[1373] Input and Output

[1374] Input: Data stored in a database

[1375] Output: Generated prompt

[1376] Step 5:

[1377] Sending prompts from the server to the device

[1378] The generated prompt is sent from the server to the device as a push notification using Firebase Cloud Messaging (FCM).

[1379] Input and Output

[1380] Input: Generated prompt

[1381] Output: Push notification to device

[1382] Step 6:

[1383] Device prompt reception and user notification

[1384] The device receives the prompt sent from the server and notifies the user by voice using speech synthesis technology (e.g., Google TTS), or by displaying the prompt on the screen using NotificationManager (Android) or UNNotificationCenter (iOS).

[1385] Input and Output

[1386] Input: Prompt sent from the server

[1387] Output: Audio or visual notification

[1388] These steps allow users to automatically receive the information they need at specific times, such as prompts like "There's a recommended restaurant near your current location. Would you like to stop by?" or "Your next meeting will start soon. Please get ready to move."

[1389] (Application example 1)

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

[1391] Current self-driving vehicles require users to search for and obtain the information they need, resulting in low convenience. Furthermore, it is difficult for users to receive useful information at the appropriate time while driving, so the comfort and safety of the vehicle cannot be fully guaranteed. This results in a problem of a reduced driving experience and convenience during travel.

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

[1393] In this invention, the server includes means for collecting voice, location, schedule, weather, and traffic information, means for analyzing the collected information and generating prompts based on the user's current situation, means for notifying the user of the generated prompts, means for integrating with an information system installed in an autonomous vehicle to provide the user with useful information in real time, and means for inputting the prompts into a generative AI model and generating situation-specific prompt sentences. This allows the user to receive necessary information at the appropriate time while driving, enabling a comfortable and safe driving experience.

[1394] "Voice" refers to human speech and ambient sounds, and is a data source that the system collects to understand the user's intentions and environment.

[1395] "Location information" means data indicating the current geographic location obtained by GPS or other location sensors and used to determine the current location of a user or autonomous vehicle.

[1396] A "schedule" is data that indicates a user's plans and plans, and includes calendar information and information obtained from other platforms.

[1397] "Weather information" is data about current and forecast weather conditions, obtained from external weather forecast services.

[1398] "Traffic information" is data including current road conditions and congestion information, and is obtained from traffic management systems and external traffic information services.

[1399] A "prompt" is a recommendation or notification message provided to the user that is generated based on the results of the system's analysis.

[1400] "Generative AI Model" refers to the artificial intelligence algorithms and models used to generate optimal prompts for users based on input data.

[1401] An "autonomous vehicle" is a vehicle that can drive autonomously without human intervention, and uses AI and sensor technology to recognize and judge the surrounding environment and traffic conditions.

[1402] The present invention provides a system for providing useful information to a user in an autonomous vehicle in real time, and an embodiment of the system will be described in detail below. The system mainly comprises a server, a terminal, and a user who uses the server and the terminal.

[1403] Server Features

[1404] Data collection

[1405] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores this data in a database on the server for subsequent analysis.

[1406] Data analysis and prompt generation

[1407] The server analyzes the received data and performs processing to understand the user's current situation. For example, it generates appropriate prompts for the user based on their current location, weather, and schedule. This prompt generation uses a generative AI model to generate recommended messages based on the specific situation.

[1408] Prompt Notification

[1409] The generated prompt is sent from the server to the user's terminal. When the terminal receives the prompt, it notifies the user of the prompt. This notification can be done by voice, on-screen display, or other means.

[1410] Device Features

[1411] Data collection

[1412] The device collects the user's voice, location, schedule, weather, and traffic information and stores it as structured data, which is then periodically sent to a server.

[1413] Data transmission

[1414] The device periodically transmits the collected data to the server. This transmission can be done in real time or in batches at regular intervals.

[1415] Receiving prompts and notifications

[1416] The terminal receives the prompt sent from the server and notifies the user of the prompt either aloud using a speech synthesizer in the vehicle or by displaying it on an in-vehicle display.

[1417] Hardware and software used

[1418] Hardware:

[1419] Autonomous vehicle infotainment systems

[1420] GPS sensor

[1421] In-vehicle speech synthesizer

[1422] software:

[1423] Python

[1424] API Request

[1425] JSON

[1426] Weather forecast API (e.g. OpenWeatherMap)

[1427] Traffic information API

[1428] Specific examples

[1429] For example, while traveling in a self-driving vehicle, a user might receive a prompt like this:

[1430] Example prompt sentence:

[1431] There is a traffic jam. We recommend that you leave 15 minutes early.

[1432] The weather at your next destination is rainy. Don't forget your umbrella before you leave.

[1433] This system allows users to receive the necessary information at the appropriate time while driving, allowing them to enjoy a comfortable and safe driving experience.

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

[1435] Step 1:

[1436] The device collects voice, location, schedule, weather, and traffic information.

[1437] Specifically, the device obtains location information from a GPS sensor, the user's schedule from a calendar API, audio data from an on-board microphone, and weather and traffic information from a weather forecast API and a traffic information API, respectively.

[1438] Input: GPS, calendar API, car microphone, weather forecast API, traffic information API

[1439] Output: Collected voice, location information, schedule, weather information, traffic information

[1440] Step 2:

[1441] The terminal periodically transmits the collected data to the server.

[1442] Specifically, the device periodically collects data and sends it to the server in JSON format via an API request.

[1443] Input: Collected voice, location information, schedule, weather information, traffic information

[1444] Output: JSON formatted data sent to the server

[1445] Step 3:

[1446] The server analyzes the received data and understands the user's current situation.

[1447] Specifically, the server stores the received data in a database, then uses the location information to identify the current geographical situation, combines weather and traffic information to analyze the user's current situation, and uses schedule information to recognize the user's upcoming appointments and important events.

[1448] Input: JSON format data sent to the server

[1449] Output: Analysis results about the user's current situation

[1450] Step 4:

[1451] The server generates prompts using the generative AI model.

[1452] Specifically, the server inputs the analysis results into a generative AI model to generate an appropriate prompt specific to the user's situation, which then suggests the next action to take.

[1453] Input: Analysis results about the user's current situation

[1454] Output: Prompt sentence generated by the generative AI model

[1455] Step 5:

[1456] The server generates a prompt and sends it to the terminal.

[1457] Specifically, the server sends the generated prompt text to the terminal via an API request.

[1458] Input: Generated prompt text

[1459] Output: The prompt sent to the terminal

[1460] Step 6:

[1461] The terminal receives the prompt and notifies the user.

[1462] Specifically, the device will use a speech synthesizer to audibly notify the user of the received prompt, or display it on the in-car display. For example, if the prompt is "There is a traffic jam. We recommend that you leave 15 minutes early," the device will audibly notify the user of the prompt.

[1463] Input: The prompt sent to the terminal

[1464] Output: A prompt given to the user either audibly or on a display

[1465] This processing flow allows users to receive necessary information at the appropriate time while driving, allowing them to enjoy a comfortable and safe driving experience.

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

[1467] This system understands the user's current situation by collecting and analyzing the user's voice, location information, schedule, weather information, and traffic information, and generates and notifies the user of appropriate prompts. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and generating prompts according to the user's emotions, more personalized dialogue is realized.

[1468] Server processing explanation

[1469] Data collection

[1470] The server receives voice, location, schedule, weather, and traffic information sent from the device, and stores this data in a database for subsequent analysis.

[1471] Data analysis and prompt generation

[1472] The server analyzes the received data to understand the user's current situation. This analysis also uses an emotion engine that recognizes emotions from the user's voice data and facial expression data. The emotion engine analyzes the voice data and image data to identify the user's emotions. Based on the analysis results, it generates prompts that correspond to the user's situation and emotions.

[1473] Prompt Notification

[1474] The generated prompt is sent from the server to the device. When the device receives the prompt, it notifies the user of the prompt either by voice using speech synthesis technology or by displaying it on the screen.

[1475] Terminal processing explanation

[1476] Data collection

[1477] The device collects voice, location, schedule, weather, and traffic information and stores them in a structured format. At the same time, it also collects the user's voice and image data (facial expressions), which are then sent to a server for analysis by the emotion engine.

[1478] Data transmission

[1479] The device periodically transmits all collected data to the server, either in real time or in batches at regular intervals.

[1480] Prompt Reception

[1481] The device receives the prompt sent from the server and notifies the user of the prompt either audibly using speech synthesis technology or by displaying it on the screen.

[1482] User operations

[1483] Data provision

[1484] Users provide data such as voice, location, schedule, and facial expressions through their devices. This data is collected automatically, and no special operations are required.

[1485] Receiving and acknowledging prompts

[1486] The user receives a prompt from the device and checks its contents. The prompt contains information and suggestions that correspond to the user's situation and emotions.

[1487] Taking action

[1488] The user can then take appropriate action based on the prompts. For example, if the emotion engine detects that the user is feeling stressed, it will suggest ways to relax or take a break, and the user will act accordingly.

[1489] Specific examples

[1490] Notifications for users while driving

[1491] The server receives location information and voice data from the device and detects that the user is driving and feeling stressed.

[1492] Based on the analysis, the server generates prompts recommending relaxing spots and cafes near the user's current location, and may also include suggestions for music or breathing exercises to help reduce the user's stress.

[1493] Sends a server-generated prompt to the terminal.

[1494] The device receives the prompt and notifies the user by voice, "There's a relaxing cafe near your current location. Would you like to take a break?"

[1495] Schedule Notifications

[1496] The server receives schedule information and the user's facial expression data from the terminal and detects that the next appointment is approaching and that the user is feeling impatient.

[1497] The server generates a notification prompt for the next appointment, reminding the user, "Your next meeting will start soon. Get ready to travel," and also includes suggestions for relaxation techniques to help ease the user's sense of urgency.

[1498] The server sends the generated prompt to the terminal, and the terminal receives the prompt.

[1499] The device receives the prompt and notifies the user aloud: "Your next meeting will start soon. Please prepare to move. Take a deep breath and relax."

[1500] In this way, this system saves users the trouble of asking questions, and by using an emotion engine, it can provide more personalized information and actions, allowing users to obtain information appropriate to their situation and take action through natural dialogue.

[1501] The processing flow will be explained below.

[1502] Terminal handling

[1503] Step 1: Collect data

[1504] The device collects voice, location, schedule, weather, and traffic information through the microphone, GPS sensor, calendar app, weather forecast API, traffic information API, etc. It also collects facial expression data through the user's face recognition camera. This collected data is temporarily stored in a structured format.

[1505] Step 2: Sending data

[1506] The device periodically transmits the collected data to the server, either in real time or at regular intervals depending on the network connection status.

[1507] Step 3: Receiving a prompt

[1508] The device receives prompts sent from the server, which are based on parsed information and tailored to the user's current situation and emotional state.

[1509] Step 4: Prompt Notification

[1510] The device will notify the user of the received prompts either by speech synthesis or by displaying them on the screen.

[1511] Server Processing

[1512] Step 1: Receiving Data

[1513] The server receives voice, location, schedule, weather, traffic, and facial expression data sent from the device, and stores the received data in a database.

[1514] Step 2: Analyze the data

[1515] The server analyzes the received data to understand the user's current situation and emotions. The emotion engine analyzes the voice data and facial expression data to recognize the emotions the user is feeling (e.g., joy, anger, sadness, stress, etc.).

[1516] Step 3: Generate prompts

[1517] Based on the analysis results, the server generates prompts according to the user's situation and emotions. For example, if the emotion engine determines that the user is under stress while driving, it generates prompts recommending relaxing spots and cafes.

[1518] Step 4: Sending the prompt

[1519] The server sends the generated prompt to the terminal. The sending is done quickly, so that the information is provided in a timely manner.

[1520] User operations

[1521] Step 1: Provide the data

[1522] Users provide data such as voice, location, schedule, weather, traffic information, and facial expressions through their devices. This data is collected automatically, and users do not need to perform any special operations.

[1523] Step 2: Receive and confirm the prompt

[1524] The user receives a prompt from the terminal and can easily check the content by listening to the audio notification or by looking at the screen display.

[1525] Step 3: Take action

[1526] The user can then take appropriate action based on the prompts. For example, if the emotion engine recognizes that the user is feeling stressed and receives a prompt suggesting ways to relax, the user can try these methods.

[1527] Specific examples

[1528] Example 1: Notification to the user while driving

[1529] Step 1: The device collects the user's location and voice data to detect that they are driving and feeling stressed.

[1530] Step 2: The device sends the collected data to the server.

[1531] Step 3: The server receives the data, and the emotion engine analyzes the voice data to determine that the user is feeling stressed.

[1532] Step 4: Based on the analysis, the server generates prompts recommending relaxing spots and cafes near the user's current location, including music suggestions for stress reduction.

[1533] Step 5: Send the server-generated prompt to the terminal.

[1534] Step 6: The device receives the prompt and notifies the user by voice, "There's a relaxing cafe near your current location. Would you like to take a break?"

[1535] Example 2: Schedule notification

[1536] Step 1: The device collects the user's schedule information and facial expression data, and detects that the next appointment is approaching and that the user is feeling anxious.

[1537] Step 2: The device sends the collected data to the server.

[1538] Step 3: The server receives the data, and the emotion engine analyzes the facial expression data to determine that the user is feeling impatient.

[1539] Step 4: Based on the analysis results, the server generates a reminder prompt saying, "Your next meeting will start soon. Please prepare to move," and a prompt offering relaxation techniques to reduce the sense of urgency.

[1540] Step 5: Send the server-generated prompt to the terminal.

[1541] Step 6: The device receives the prompt and audibly informs the user, "Your next meeting will start soon. Get ready to go. Take a deep breath and relax."

[1542] This allows users to be provided with appropriate information and actions according to their situation and emotions through natural dialogue.

[1543] Example 2

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

[1545] In conventional systems, even if data such as a user's voice, location information, schedule, weather information, and movement information are collected individually, it is difficult to comprehensively analyze this data to understand the user's situation and emotions and provide appropriate prompts. Furthermore, there have been no systems that recognize user emotions and enable more personalized dialogue. This has made it difficult to suggest timely and appropriate actions to the user.

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

[1547] In this invention, the server includes means for collecting voice, location information, schedule, weather information, and movement information, means for analyzing the collected information and generating prompts based on the user's current situation and emotions, and means for notifying the user of the generated prompts, thereby enabling the server to comprehensively grasp the user's situation and emotions and provide more personalized and appropriate prompts in a timely manner.

[1548] "Voice" refers to the sounds and words uttered by the user, and is data that can be collected and analyzed to understand the user's instructions and emotions.

[1549] "Location Information" means data that indicates a user's current location determined using GPS or other location measurement technology.

[1550] "Schedule" refers to events and plans that a user has registered in a calendar or planner, and is data that can be used to analyze the user's activities and plans by understanding these events and plans.

[1551] "Weather information" refers to information that indicates current weather, temperature, humidity, and other meteorological conditions. By collecting and analyzing this information, users can understand the external environment that influences their behavior.

[1552] "Movement information" refers to information about a user's means of transportation and travel route, and is data that can be collected and analyzed to determine the user's current location, arrival time, etc.

[1553] A "prompt" is a notification or suggestion message to the user that is generated based on collected data, and is an instruction to support the user's actions.

[1554] "Emotion" refers to the psychological state that the user is feeling, such as joy, anger, sadness, or surprise, and recognizing this is an element for generating more appropriate prompts for the user.

[1555] "Notification" refers to the means by which the user is notified of the generated prompt, providing information to the user by voice or display.

[1556] MODE FOR CARRYING OUT THE INVENTION

[1557] This system understands the user's current situation by collecting and analyzing the user's voice, location information, schedule, weather information, and movement information, and generates and notifies appropriate prompts. Furthermore, by combining it with an emotion engine that recognizes the user's emotions and generating prompts according to the user's emotions, it achieves more personalized dialogue.

[1558] Terminal operation for data collection

[1559] The device records the user's voice using a microphone and obtains location information using the GPS function. It also obtains schedule information from a calendar app, and weather and movement information from weather APIs and traffic APIs via the Internet. It also uses the camera function to capture the user's facial expression and collects data for facial expression analysis. The device saves this data in a structured format (for example, JSON format).

[1560] Sending data to the server

[1561] The device periodically sends collected data to the server. Data transmission is triggered in real time or at regular intervals. The server stores the received data in a database and uses it for subsequent analysis.

[1562] Data analysis on the server

[1563] The server uses multiple software tools to analyze the received data and understand the user's current situation and emotions. For example, voice data is converted into text by a speech recognition engine, and the text is then analyzed by a natural language processing engine. Location and schedule data are used to infer the user's activities using data analysis tools.

[1564] Emotion recognition

[1565] The server uses an emotion engine to recognize the user's emotions from voice data and facial expression data. For example, voice data is converted into text by a voice analysis engine and then analyzed by a natural language processing engine. Facial expression analysis is also performed using an image analysis engine. These tools can be generally called voice recognition engines or image analysis engines.

[1566] Prompt Generation

[1567] The server generates appropriate prompts based on the analysis results and data obtained from emotion recognition. A generative AI model is used to generate these prompts. A pre-trained generative AI model is used to generate natural language prompts that correspond to the user's situation and emotions. For example, prompts such as "There's a relaxing cafe near your current location. Would you like to take a short break?" or "Your next meeting will start soon. Please get ready to move. Take a deep breath and relax." are generated.

[1568] Prompt Notification

[1569] The generated prompt is sent from the server to the terminal. The terminal notifies the user of the received prompt. The notification can be made by voice using speech synthesis technology or by displaying the message on the screen. For speech synthesis, a general speech synthesis technology can be used.

[1570] In this way, the present invention can grasp the user's situation and emotions in real time and provide appropriate prompts, thereby providing more personalized information and actions to the user.

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

[1572] Step 1:

[1573] The device collects the user's voice, location information, schedule, weather information, and movement information.

[1574] Input: Audio data from the microphone, location information from GPS, schedule information from the calendar app, weather information from the weather API, and travel information from the traffic API.

[1575] Output: Collected data stored in a structured data format (e.g. JSON).

[1576] Specific operation: The device periodically activates the microphone to record audio, obtains the current location using GPS, obtains schedule information from the calendar app, and calls weather and traffic APIs to obtain weather and movement information. The obtained data is stored internally in a structured format.

[1577] Step 2:

[1578] The terminal transmits the collected data to the server.

[1579] Input: Collected data stored in a structured format.

[1580] Output: Data stored in the server's database.

[1581] Specific operation: The device periodically sends collected data to the server via API, which is then stored in the server's database.

[1582] Step 3:

[1583] The server parses the received data.

[1584] Input: User's voice data, location information, schedule information, weather information, and movement information stored in the server's database.

[1585] Output: Analysis of the user's current situation.

[1586] How it works: The server uses Python's Pandas library and other tools to cross-reference location and schedule information to estimate user activity. It also analyzes weather and travel information to calculate the time it will take to reach the next appointment.

[1587] Step 4:

[1588] The server uses an emotion engine to recognize the user's emotions from voice data and facial expression data.

[1589] Input: Voice data, facial expression data.

[1590] Output: User emotion recognition results.

[1591] Specific operation: The server converts voice data into text using a speech recognition engine, analyzes the text using a natural language processing engine to identify emotions, and analyzes facial expression data using an image analysis engine to identify emotions from the user's facial expressions.

[1592] Step 5:

[1593] The server uses the analysis results and emotion recognition results to generate prompts.

[1594] Input: User situation analysis results, emotion recognition results.

[1595] Output: The prompt statement.

[1596] Specific operation: The server uses a generative AI model (e.g., a derivative model of GPT) to generate appropriate prompts based on the user's situation and emotions. The generated prompts provide support for the user's actions.

[1597] Step 6:

[1598] The server generates a prompt and sends it to the terminal, which notifies the user.

[1599] Input: The prompt statement.

[1600] Output: The prompt that is displayed to the user.

[1601] Specific operation: The server sends a prompt to the terminal, and the terminal notifies the user of the prompt using speech synthesis technology or displays it on the screen. For example, the prompt "The next meeting will start soon. Please prepare to move. Take a deep breath and relax." is announced by voice or display.

[1602] (Application example 2)

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

[1604] Conventional shopping assistant systems often provide suggestions based solely on location and schedule information without considering the user's emotional state, resulting in low user satisfaction. Furthermore, the lack of suggestions tailored to the user's emotional needs and stress levels in the store is problematic. Therefore, it is necessary to provide a more personalized shopping experience and increase the user's emotional satisfaction.

[1605] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for collecting voice, location information, schedule, weather information, and traffic information, means for analyzing the collected information and generating prompts based on the user's current situation, means for identifying the user's emotions and generating prompts according to the emotions, means for notifying the user of the generated prompts, means for periodically transmitting the collected information to the server, means for storing and analyzing the received information on the server side, and means for the server to generate personalized prompts based on the emotions and suggest relaxation methods to the user. This enables a more personalized shopping experience according to the user's emotional state.

[1606] "Speech" refers to a user's speech or verbal communication, and is an acoustic signal collected through an input device such as a microphone.

[1607] "Location information" refers to a user's current geographic location or coordinate information obtained using technologies such as GPS or Bluetooth beacons.

[1608] "Schedule" refers to data about a user's plans and appointments, and is information including dates and times and details of events.

[1609] "Weather information" refers to data about current weather conditions and forecasted weather, including factors such as temperature, rainfall, and wind speed.

[1610] "Traffic information" refers to data on road congestion and public transportation operations, including information on travel times and traffic congestion.

[1611] A "prompt" is a notification or suggestion generated to prompt a user to take a particular action or provide information, and is a message conveyed in audio or visual form.

[1612] "Emotion" refers to identifying the user's psychological state or mood, and is recognized by analyzing voice and facial expression data.

[1613] The "emotion engine" is a software component that analyzes the user's voice and facial expression data to identify the user's emotions.

[1614] "Terminology" refers to words or phrases used to define particular concepts or functions within the system of the present invention and are used consistently within the context of this invention.

[1615] This invention is a system that collects and analyzes a user's voice, location information, schedule, weather information, and traffic information, identifies the user's emotions, and generates and notifies them of appropriate prompts. Specifically, the system is implemented in the following steps.

[1616] First, the server receives voice, location, schedule, weather, and traffic information sent from the device. This allows the server to collect data to understand the user's current situation. The server then uses an emotion engine to analyze the received voice and facial expression data and identify the user's emotions. This analysis uses specific APIs and software libraries.

[1617] The server then analyzes the received data and generates prompts based on the user's situation and emotions. These prompts are then sent to the user via the device. Notifications can be made audibly using speech synthesis technology or displayed on a display. Specifically, the server converts speech to text using the Google Cloud Speech-to-Text API and analyzes emotions using the Azure Cognitive Services Emotion API. The server also uses Firebase Firestore to store data and generate prompts based on the analysis results.

[1618] For example, as a user walks through a store, the system tracks the user's location and suggests relevant products and services when the user approaches a specific area. Furthermore, if the user is feeling stressed, the system can generate prompts suggesting ways to relax. Specific examples of prompts include, "Sir, it seems like your current situation is a bit stressful. There's a cafe nearby where you can relax. I recommend taking a break." or "You're feeling great! Here are some recommended new products."

[1619] The device collects voice and location information and sends it to the server. It also receives prompts sent from the server and notifies the user. Voice synthesis technology is used for voice notifications, and the display is used for text notifications. The device is equipped with GPS, a camera, and a microphone, and these hardware devices are used to collect the necessary data.

[1620] Users provide data such as voice, location, schedule, and facial expressions through their device. This data is collected automatically, and no special operations are required. Users also receive prompts from their device and check their content. The prompts contain information and suggestions based on the user's situation and emotions. Users can take appropriate actions based on the prompts, resulting in a more comfortable shopping experience.

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

[1622] Step 1:

[1623] The device collects the user's voice, location, schedule, weather, and traffic information. This includes voice input via microphone, location information via GPS, schedule information from the calendar app, weather information from the weather API, and traffic information from the traffic API. Each collected data is stored in a structured format and prepared for transmission to the server in the next step.

[1624] Step 2:

[1625] The device sends all collected data to a server. This data includes voice data, location information, schedules, weather information, and traffic information. The server receives this data and stores it in a database. The data may be sent in real time or in batches at regular intervals. The server uses the data for subsequent analysis.

[1626] Step 3:

[1627] The server analyzes the received data and understands the user's current situation. Specifically, it converts the voice data into text using the Google Cloud Speech-to-Text API. It also uses the Emotion API from Azure Cognitive Services to identify the user's emotions from the text and voice. This enables a comprehensive understanding of the user's location, schedule, weather, traffic conditions, and emotional state.

[1628] Step 4:

[1629] The server generates prompts based on the analysis results. Since the analysis results reveal the user's emotional state and current situation, it creates personalized prompts such as, "If you're feeling stressed, we suggest taking a break at a nearby cafe." To generate these prompts, a generative AI model is used to automatically generate appropriate prompts.

[1630] Step 5:

[1631] The server sends the generated prompt to the terminal. The generated prompt is sent to the terminal in text or audio format. For example, the prompt may include a sentence such as, "Dear customer, your current situation seems a bit stressful. There is a cafe nearby where you can relax. I recommend you take a break."

[1632] Step 6:

[1633] The device receives the prompt sent from the server and notifies the user. The notification is either audible using speech synthesis technology or displayed as text on the display. For example, in the case of a voice notification, the device may tell the user, "There's a cafe near your current location where you can relax. Would you like to take a break?"

[1634] Step 7:

[1635] The user receives a notification from their device and chooses an appropriate action based on the notification. For example, if the user is feeling stressed, they can follow the notification and take a break at a nearby cafe. In this way, the system provides a personalized shopping experience based on the user's emotional state and current situation.

[1636] Through the above processing steps, the present invention provides optimal prompts according to the user's emotions and circumstances, realizing personalized dialogue.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[1658] The following is further disclosed regarding the above embodiment.

[1659] (Claim 1)

[1660] A means for collecting voice, location, schedule, weather, and traffic information;

[1661] means for analyzing the collected information and generating prompts based on the user's current situation;

[1662] means for notifying a user of the generated prompt;

[1663] A system including:

[1664] (Claim 2)

[1665] 2. The system of claim 1, further comprising: means for transmitting the generated prompt from the server to the terminal; and means for notifying the terminal of the received prompt by voice or display.

[1666] (Claim 3)

[1667] 10. The system of claim 1, further comprising: means for periodically transmitting the collected information to a server; and means for storing and analyzing the received information on the server side.

[1668] "Example 1"

[1669] (Claim 1)

[1670] a means for collecting voice, location, schedule, weather, and movement data;

[1671] means for analyzing the collected data and generating prompts based on the user's current situation;

[1672] means for notifying a user of the generated prompt;

[1673] A system including:

[1674] (Claim 2)

[1675] 2. The system of claim 1, further comprising: means for transmitting the generated prompt from the server to the terminal; and means for notifying the terminal of the received prompt by voice or display.

[1676] (Claim 3)

[1677] 10. The system of claim 1, further comprising: means for periodically transmitting the collected data to a server; and means for storing and analyzing the received data on the server side.

[1678] "Application Example 1"

[1679] (Claim 1)

[1680] A means for collecting voice, location, schedule, weather, and traffic information;

[1681] means for analyzing the collected information and generating prompts based on the user's current situation;

[1682] means for notifying a user of the generated prompt;

[1683] A means for providing useful information to a user in real time by being integrated into an information system installed in an autonomous vehicle;

[1684] A means for inputting the prompt into a generative AI model to generate a situation-specific prompt sentence;

[1685] A system including:

[1686] (Claim 2)

[1687] 2. The system of claim 1, further comprising: means for transmitting the generated prompt from the server to the terminal; and means for notifying the terminal of the received prompt by voice or display.

[1688] (Claim 3)

[1689] The system of claim 1, further comprising: means for periodically transmitting the collected information to a server; means for storing and analyzing the received information on the server side; and means for operating in cooperation with an information system in the vehicle.

[1690] "Example 2: Combining Emotion Engines"

[1691] (Claim 1)

[1692] A means for collecting voice, location, schedule, weather, and movement information;

[1693] means for analyzing the collected information and generating prompts based on the user's current situation and emotions;

[1694] means for notifying a user of the generated prompt;

[1695] A system including:

[1696] (Claim 2)

[1697] 2. The system according to claim 1, further comprising: means for transmitting the generated prompt from the management device to the terminal; and means for notifying the terminal of the received prompt by voice or display.

[1698] (Claim 3)

[1699] 2. The system according to claim 1, further comprising: means for periodically transmitting the collected information to a management device; and means for storing and analyzing the received information on the management device side.

[1700] "Application example 2 when combining emotion engines"

[1701] (Claim 1)

[1702] A means for collecting voice, location, schedule, weather, and traffic information;

[1703] means for analyzing the collected information and generating prompts based on the user's current situation;

[1704] means for identifying a user's emotion and generating a prompt in response to the emotion;

[1705] means for notifying a user of the generated prompt;

[1706] A system including:

[1707] (Claim 2)

[1708] means for transmitting the generated prompt from the server to the terminal; and means for notifying the terminal of the received prompt by voice or display;

[1709] A means for the terminal to transmit information (voice and facial expression data) for identifying the user's emotion to a server;

[1710] The system of claim 1 further comprising:

[1711] (Claim 3)

[1712] means for periodically transmitting the collected information to a server;

[1713] A means for storing and analyzing the received information on the server side;

[1714] A means for the server to generate personalized prompts based on the emotion and suggest relaxation methods to the user;

[1715] The system of claim 1 further comprising: [Explanation of symbols]

[1716] 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 collecting voice, location, schedule, weather, and traffic information; means for analyzing the collected information and generating prompts based on the user's current situation; means for notifying a user of the generated prompt; A system including:

2. 2. The system of claim 1, further comprising: means for transmitting the generated prompt from the server to the terminal; and means for notifying the terminal of the received prompt by voice or display.

3. 2. The system of claim 1, further comprising: means for periodically transmitting the collected information to a server; and means for storing and analyzing the received information at the server side.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A