System
A system that learns user behavioral patterns and provides real-time notifications for weather, traffic, and events addresses the challenge of timely and personalized information delivery during commutes and walks.
Patent Information
- Application Number
- JP2024133412
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-08
- Publication Date
- 2026-02-20
AI Technical Summary
Existing systems fail to provide timely and personalized information to users during their daily commutes and walks, such as weather forecasts, traffic conditions, event information, and advertising, due to the lack of real-time data acquisition and notification based on behavioral patterns.
A system that learns user behavioral patterns, acquires weather and traffic information, collects event and store flyer information, and generates notifications to be sent to a user's device, adjusting content and timing based on these patterns.
Enables users to prepare for weather and traffic conditions and receive relevant information in real-time, enhancing the convenience of their daily activities by providing personalized notifications.
Smart Images

Figure 2026030429000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] In modern society, many people experience delays and stress during their daily commute to work or school due to uncertainties such as weather, transportation disruptions, and accidents. Even when people seek relaxation through activities like walking, they often become bored due to the same route and lack of information, making it difficult to continue. To solve these problems, a system is needed that learns users' behavioral patterns, provides necessary information in real time, and supports daily life. [Means for solving the problem]
[0005] We provide a system that includes a means for learning a user's behavioral patterns, a means for acquiring weather forecast information, a means for acquiring traffic information, a means for collecting event information and store flyer information within the user's range of movement, a means for generating appropriate notifications for the user, and a means for transmitting the generated notifications to the user's device. This system generates notifications to respond to changes in weather and traffic conditions based on the user's settings and provides information in real time. This enables the user to prepare for weather conditions and take appropriate measures in response to transportation delays, and also allows the user to constantly obtain new and interesting information by obtaining the latest event information and store flyer information while taking a walk.
[0006] "User" refers to any individual or entity that uses this system.
[0007] "Behavioral patterns" refer to specific behavioral patterns predicted based on a user's past behavioral history and tendencies.
[0008] "Means of learning" refers to methods and technologies for understanding user behavior patterns by collecting and analyzing data.
[0009] "Weather forecast information" refers to information about the current and future weather conditions obtained from weather data provision services.
[0010] "Traffic status information" refers to real-time traffic data, including information on transportation operation status, delays, accidents, etc.
[0011] "Event information" refers to information about events and activities held within the user's area of activity.
[0012] "Store flyer information" refers to product promotions and special offers offered by nearby stores.
[0013] "Means for generating notifications" refers to the methods and techniques for generating the necessary notifications to users based on the collected information.
[0014] "Terminal" refers to an electronic device used by a user, such as a computer, smartphone, or tablet.
[0015] "Server" refers to a computer system for analyzing, storing, and providing data. [Brief explanation of the drawings]
[0016] [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
[0017] 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.
[0018] First, the terms used in the following description will be explained.
[0019] 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).
[0020] 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.
[0021] 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.
[0022] 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.
[0023] 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."
[0024] [First embodiment]
[0025] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0026] 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.
[0027] 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).
[0028] 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.
[0029] 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.
[0030] 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.
[0031] 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.
[0032] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0033] 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.
[0034] 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.
[0035] 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.
[0036] 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."
[0037] This invention is a system that provides necessary information at appropriate times to users during their daily commutes to work or school, or when they are out walking. Below, we will explain the program processing of this system in natural language, with concrete examples.
[0038] System Overview
[0039] This system learns the user's behavioral patterns and generates appropriate notifications based on real-time weather forecasts, traffic conditions, event information, and store flyer information, and sends them to the user's device.The system is mainly composed of two components: a server and a device.
[0040] Program processing
[0041] 1. Get user settings:
[0042] The user inputs the commute time and the means of transportation they will use into the terminal.
[0043] The terminal sends this setting information to the server, which stores it in a database.
[0044] 2. Learning behavioral patterns:
[0045] The device periodically collects the user's GPS data and usage history and sends them to the server.
[0046] The server analyzes this data and uses machine learning algorithms to learn user behavior patterns.
[0047] The learning results are stored in a database and will be used for future predictions.
[0048] 3. Aggregation of information:
[0049] The server obtains the current day's weather information from the weather forecast API.
[0050] The server obtains the operation status of public transport from the traffic information API.
[0051] The server collects information about nearby events and store flyers from social media and news sites.
[0052] 4. Notification Generation and Sending:
[0053] The server uses this aggregated information to generate notifications appropriate for the user.
[0054] The content and timing of notifications are adjusted based on predicted behavioral patterns (e.g., wake-up time, departure time).
[0055] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[0056] Specific examples
[0057] Commuting Scenario
[0058] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[0059] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[0060] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[0061] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[0062] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[0063] 6. The device displays a notification to the user, who then selects a detour and departs.
[0064] Walking Scenario
[0065] 1. The user enters the setting to take a walk at 18:00 into the device.
[0066] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[0067] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[0068] 4. The server tracks the user's GPS data in real time and generates a notification to the device during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0069] 5. The device displays a notification to the user, and the user visits the new cafe.
[0070] In this way, the system learns the user's behavioral patterns and provides necessary information at the appropriate time, thereby supporting the user's daily life.
[0071] The processing flow will be explained below.
[0072] Step 1:
[0073] Users input their commute time and the transportation they will use into the device. They also set their wake-up time, return home time, and walk times.
[0074] Step 2:
[0075] The device checks the entered setting information and sends it to the server, which stores it in a database.
[0076] Step 3:
[0077] The device periodically collects the user's GPS data and usage history and sends it to a server, which analyzes the data and uses machine learning algorithms to learn the user's behavioral patterns.
[0078] Step 4:
[0079] The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, commute time to school, and walking time.
[0080] Step 5:
[0081] The server queries the weather API to get the weather information for the day, including whether it's raining, sunny, and the temperature.
[0082] Step 6:
[0083] The server queries the traffic information API to obtain the operation status of the transportation facility in use, including information on delays, accidents, etc.
[0084] Step 7:
[0085] The server crawls social media and news sites to collect information about events and store flyers within the user's area of activity.
[0086] Step 8:
[0087] The server generates appropriate notifications for the user based on the aggregated information, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[0088] Step 9:
[0089] The server generates a notification based on traffic conditions 15 minutes before the user's scheduled departure time, such as "Subway Line 1 is delayed due to an accident. We recommend you take a detour."
[0090] Step 10:
[0091] The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[0092] Step 11:
[0093] The server tracks the user's GPS data in real time and generates notifications during a walk such as, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0094] Step 12:
[0095] The server generates notifications and sends them to the device, which displays them to the user in real time.
[0096] Step 13:
[0097] The user checks the notification and takes necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, visiting a new cafe, etc.).
[0098] This series of processes enables users to commute to work or school or take a walk more comfortably. The system supports daily life by quickly responding to changes in weather and traffic conditions and providing users with the information they need in a timely manner.
[0099] Example 1
[0100] 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."
[0101] In modern society, users' daily commutes, school commutes, and walks vary widely, and the information they require is also diverse. However, conventional systems have had the problem of making it difficult to provide this information in a timely and unified manner. In particular, there was no system that could obtain weather forecasts, traffic conditions, event information, advertising information, and other information in real time and provide timely notifications based on users' behavioral patterns. This required users to take the time to check the information they needed one by one, which hindered their efficient behavior.
[0102] 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.
[0103] In this invention, the server includes a means for acquiring and storing user settings, a means for analyzing and predicting behavioral patterns using a machine learning algorithm, and a means for collecting information in real time and adjusting notifications, thereby enabling weather forecasts, traffic conditions, event information, and advertising information to be notified in real time at appropriate times based on the user's behavioral patterns.
[0104] "User settings" refers to information that a user enters into the system to identify their behavioral patterns, such as their commute time and the means of transportation they use.
[0105] "Behavioral patterns" refers to data on the user's daily behavioral tendencies and habits, such as departure time and route taken.
[0106] "Weather forecast information" is weather forecast information for a specific date and time based on meteorological data.
[0107] "Traffic information" refers to real-time information on the operation status of public transport and traffic congestion.
[0108] "Event information" is information about events held in a specific region or period.
[0109] "Advertising information" is commercial information such as special offers and sales information provided by stores and services.
[0110] "Notification" refers to information sent from the system to users, including weather forecasts, traffic conditions, event information, and advertising information.
[0111] "Terminal" refers to a device used by a user, such as a smartphone or tablet, or other information and communication device.
[0112] A "server" is a computer system for processing information and storing and transmitting various data.
[0113] A "machine learning algorithm" is a computational method for recognizing patterns and building predictive models based on data analysis.
[0114] This invention is a system that provides necessary information at the appropriate time during users' daily commutes to work or school, or while walking. This system consists of two components: a server and a terminal.
[0115] System Overview
[0116] Retrieving User Settings
[0117] Users input their commute time and the mode of transportation they will use into their device, which then sends this information to the server, which stores it in a database.
[0118] Learning behavioral patterns
[0119] The device periodically collects the user's location data and sends it to the server. The server analyzes this data and uses machine learning algorithms (e.g., random forests) to learn behavioral patterns. The learning results are stored in a database and used for future predictions.
[0120] Aggregation of information
[0121] The server uses external APIs (e.g., weather information API, traffic information API) to obtain weather forecast information and traffic information. The server also uses web scraping technology to collect event information and advertising information from social media and news sites.
[0122] Generate and send notifications
[0123] The server generates notifications appropriate for the user based on the aggregated information. The content and timing of the notifications are adjusted based on predicted behavioral patterns. The generated notifications are sent from the server to the device and displayed to the user in real time.
[0124] Specific examples
[0125] Commuting Scenario
[0126] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[0127] 2. The server retrieves "rain" information from the weather information API before the predicted wake-up time.
[0128] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[0129] 4. At 6:45, the server receives information from the traffic information API that "the subway is delayed due to an accident."
[0130] 5. The server generates a notification saying, "The subway is delayed due to an accident, so we recommend that you take a detour," and sends it to the device.
[0131] 6. The device displays a notification to the user, who then selects a detour and departs.
[0132] Walking Scenario
[0133] 1. The user enters the setting to take a walk at 18:00 into the device.
[0134] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[0135] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[0136] 4. The server tracks the user's location data in real time and generates a notification to the device during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0137] 5. The device displays a notification to the user, and the user visits the new cafe.
[0138] Prompt Sentence Examples
[0139] You can ask a generative AI model to describe a specific system using the following prompt:
[0140] Design a system that provides appropriate information in real time based on a user's commute and walking patterns. Please explain the specific steps for generating notifications for weather forecasts, traffic conditions, event information, and advertising information. Please also provide a detailed description of the process and specific behavior of each step. Please also include the names of any tools or APIs you use.
[0141] In this way, the system learns the user's behavioral patterns and provides necessary information at the appropriate time, thereby supporting the user's daily life.
[0142] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0143] Step 1:
[0144] The user inputs information about their commute time and the mode of transportation they will use into their device. The input data includes the departure time (e.g., 7:00), return time (e.g., 18:00), and the mode of transportation they will use (e.g., subway line 1). The device then sends this setting information to the server. The server stores the received setting information in a database and uses it for subsequent processing.
[0145] Step 2:
[0146] The device periodically collects the user's location data and sends it to the server. The location data is collected using the device's GPS function and sent to the server as a batch process at regular intervals (e.g., every 10 minutes). The server analyzes the received location data and uses a machine learning algorithm (e.g., random forest) to learn the user's behavioral patterns. The analysis results are stored in a database and used for future predictions.
[0147] Step 3:
[0148] The server uses external APIs (e.g., weather information API, traffic information API) to obtain weather forecast information and traffic information. The server periodically sends requests to specified API endpoints and stores the obtained data in an internal database. In parallel with this, the server uses web scraping technology to collect event information and advertising information from social media and news sites. This is also done periodically, and the collected data is stored in a database.
[0149] Step 4:
[0150] The server generates notifications appropriate for the user based on the aggregated information. It uses acquired weather forecast information, traffic information, event information, advertising information, and predicted user behavior patterns as input data to generate highly relevant notifications. For example, if it is raining, it will create a notification saying, "It will rain today, so it would be a good idea to take an umbrella." The content and timing of the generated notification are adjusted based on predicted behavior patterns (e.g., wake-up time, departure time).
[0151] Step 5:
[0152] The server sends the generated notification to the device and displays it to the user in real time. The server uses a push notification service (e.g., Firebase Cloud Messaging) to send the generated notification to the device. The device immediately displays the received notification and helps the user take appropriate action. Specifically, the push notification triggers the notification to be displayed on the notification screen, allowing the user to check the information.
[0153] (Application example 1)
[0154] 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."
[0155] Conventional information systems provided for commuting, school, and walks are mainly limited to weather forecasts and traffic information, and have the problem of being unable to accommodate the diverse interests of users. Furthermore, it is difficult to provide personalized information based on users' behavioral patterns and interests, and notifications at the appropriate time in real time are insufficient. This can result in users being unable to receive the appropriate information when they need it, reducing the convenience of their daily lives.
[0156] 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.
[0157] In this invention, the server includes means for learning the user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic information, means for collecting event information and store flyer information within the user's range of activity, means for collecting content information (videos, news articles, music playlists, etc.) in real time, means for generating appropriate notifications for the user, and means for sending the generated notifications to the user's terminal, thereby enabling personalized information based on the user's behavioral patterns and interests to be provided in real time at an appropriate timing.
[0158] "Behavioral patterns" refer to the regularity and tendencies of a user's daily actions and behavior, including the time of day they commute to work or school and the places they visit.
[0159] "Notification generation" refers to the process of generating information to be distributed to the user and sending it to the user's terminal in an appropriate format.
[0160] "Weather forecast information" is information about weather predicted based on meteorological data, including temperature, precipitation, wind speed, etc.
[0161] "Traffic condition information" is information that indicates the operation status of transportation facilities and the congestion status of roads.
[0162] "Event information" is information about events and activities held within the area of activity.
[0163] "Store flyer information" refers to promotional information such as discounts and campaigns offered by retail stores.
[0164] "Content information" is a general term for information according to the medium and format that a user can access, and includes videos, news articles, music playlists, and the like.
[0165] "GPS data" refers to data indicating location information obtained by the Global Positioning System, and is used to identify a user's current location and travel route.
[0166] "Usage history" refers to a record of the actions and browsing a user performs through a device or application, including the content viewed and the places visited.
[0167] "Real-time" refers to processing and providing data simultaneously with actual time.
[0168] "Interests" refers to areas or topics in which you are particularly interested or concerned.
[0169] "Personalized information" refers to information that provides specific content individually based on the individual requests and actions of each user.
[0170] This invention is a system for learning user behavior patterns and providing appropriate information in real time. The processing contents of the program for realizing this system will be explained below.
[0171] Hardware and software used
[0172] 1. Hardware
[0173] Smartphone: Used as a user device to receive and display notifications.
[0174] Server: Analyzes data, aggregates information, and generates notifications.
[0175] 2. Software
[0176] Mobile app: Developed in Swift (for iOS) and Kotlin (for Android), it retrieves user settings and displays notifications.
[0177] Server-side program: Uses Python, Flask, and RESTful APIs to handle communication processing and database management.
[0178] Database: MySQL and MongoDB are used to store user data and learning results.
[0179] External API: Use OpenWeatherMap API (weather forecast), Google Maps API (traffic information), etc. to obtain the necessary information.
[0180] Machine learning libraries: TensorFlow and PyTorch are used to learn and analyze behavioral patterns.
[0181] Program processing
[0182] 1. Get user settings
[0183] Users enter their commute time, the means of transportation they use, and their interests and concerns into a smartphone app.
[0184] The terminal sends this setting information to the server, which stores it in a database.
[0185] 2. Learning behavioral patterns
[0186] The terminal periodically acquires the user's GPS data and usage history and sends them to the server.
[0187] The server analyzes this data using machine learning algorithms (e.g., TensorFlow, PyTorch) to learn user behavior patterns.
[0188] The learning results are stored in a database and will be used for future predictions.
[0189] 3. Aggregation of information
[0190] The server obtains the current day's weather information from a weather forecast API (e.g., OpenWeatherMap API).
[0191] The server obtains the operation status of public transport from a traffic information API (e.g., Google Maps API).
[0192] The server collects information about nearby events and store flyers from social media and news sites.
[0193] The server obtains content information such as videos and music playlists from content distribution APIs (e.g., YouTube API, Spotify API).
[0194] 4. Generating and Sending Notifications
[0195] The server uses this aggregated information to generate notifications appropriate for the user.
[0196] The content and timing of notifications are tailored based on predicted behavioral patterns (e.g., wake-up time, departure time) and interests.
[0197] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[0198] Specific examples
[0199] 1. New Morning News Video Notification
[0200] Users have the habit of watching the latest news videos during their morning commute.
[0201] At 6:25, the server generates a notification recommending the latest news video and sends it to the device.
[0202] The device will display "Check out this morning's latest news," helping users watch news videos during their commute.
[0203] 2. Lunchtime music playlist notification
[0204] Users often listen to music during their lunch break.
[0205] At 11:55, the server generates a notification recommending a new music playlist and sends it to the device.
[0206] The device will display a notification saying "A new music playlist has been added!", allowing users to enjoy new music during their lunch break.
[0207] Prompt Sentence Examples
[0208] 1. News video notification generation:
[0209] "News video, morning commute, 6:25 AM"
[0210] 2. Music playlist notification generation:
[0211] "Music playlist, lunch break, 11:55 AM"
[0212] These prompts are fed into a generative AI model and used to generate appropriate notifications based on the user's behavioral patterns and interests.
[0213] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0214] Step 1:
[0215] Retrieving User Settings
[0216] Users enter their commute time, the means of transportation they use, and their interests and concerns into a smartphone app.
[0217] Input: Commuting time, transportation used, interests
[0218] Data processing: The entered information is encoded in JSON format.
[0219] Output: Encoded user preference data
[0220] The terminal sends this setting information to the server, which stores it in a database.
[0221] Input: Encoded user preference data
[0222] Data calculation: The server stores the received data in a database.
[0223] Output: User preferences stored in the database
[0224] Step 2:
[0225] Learning behavioral patterns
[0226] The device periodically collects the user's GPS data and usage history and sends them to the server.
[0227] Input: User's GPS data, usage history
[0228] Data processing: GPS data is stored as location information, and usage history is categorized as content viewed, places visited, etc.
[0229] Output: Organized user data
[0230] The server analyzes this data using machine learning algorithms (e.g., TensorFlow, PyTorch) to learn user behavior patterns.
[0231] Input: Organized user data
[0232] Data computation: Using machine learning algorithms to generate models of behavioral patterns.
[0233] Output: Learned behavioral pattern model
[0234] The learning results are stored in a database and will be used for future predictions.
[0235] Input: Learned behavioral pattern model
[0236] Data calculation: Save the model parameters in the database.
[0237] Output: Model parameters stored in a database
[0238] Step 3:
[0239] Aggregation of information
[0240] The server obtains the current day's weather information from a weather forecast API (e.g., OpenWeatherMap API).
[0241] Input: Weather API request
[0242] Data calculation: Analyze the response from the API and extract weather information.
[0243] Output: Today's weather information
[0244] The server obtains the operation status of public transport from a traffic information API (e.g., Google Maps API).
[0245] Input: Traffic information API request
[0246] Data calculation: Analyzes the response from the API and extracts traffic conditions.
[0247] Output: Traffic status information
[0248] The server collects information about nearby events and store flyers from social media and news sites.
[0249] Input: Scraping requests from social media and news sites
[0250] Data calculation: Analyze the scraping results to extract event and flyer information.
[0251] Output: Local event information, store flyer information
[0252] The server obtains content information such as videos and music playlists from content distribution APIs (e.g., YouTube API, Spotify API).
[0253] Input: Content Delivery API request
[0254] Data calculation: Analyzes the response from the API and extracts content information.
[0255] Output: Content information (videos, music playlists, etc.)
[0256] Step 4:
[0257] Generate and send notifications
[0258] The server uses this aggregated information to generate notifications appropriate for the user.
[0259] Input: Learned behavioral pattern model, aggregated information
[0260] Data calculations: Generate notifications based on model predictions.
[0261] Output: The generated notification
[0262] The content and timing of notifications are tailored based on predicted behavioral patterns (e.g., wake-up time, departure time) and interests.
[0263] Input: Generated notification
[0264] Data calculations: Adjusting timing and content to customize notifications
[0265] Output: Customized notification
[0266] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[0267] Input: Customized notification
[0268] Data calculation: Sending notifications via HTTP requests
[0269] Output: Notification displayed on the user's device
[0270] 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.
[0271] This invention is a system that provides necessary information at the appropriate time during a user's daily commute to work or school or during a walk, and recognizes the user's emotions to further personalize the notification content. Below, the program processing of this system is explained in natural language, with concrete examples.
[0272] System Overview
[0273] This system learns the user's behavioral patterns and generates appropriate notifications based on real-time weather forecasts, traffic conditions, event information, and store flyer information, and sends them to the user's device. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, it provides a function to personalize the notification content according to the user's emotions. The system mainly consists of three components: a server, a device, and an emotion engine.
[0274] Program processing
[0275] 1. Get user settings:
[0276] Users input information about their commute time and the means of transportation they will use into the device, as well as set wake-up times, return home times, and walk times.
[0277] 2. The device checks the entered setting information and sends it to the server, which stores it in a database.
[0278] 3. The device periodically collects the user's GPS data and usage history and sends them to the server, which analyzes this data and uses machine learning algorithms to learn the user's behavioral patterns.
[0279] 4. The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, commute time to school, walking time, etc.
[0280] 5. The server queries the weather API to get the weather information for the day, including whether it will rain, be sunny, and the temperature.
[0281] 6. The server queries the traffic information API to obtain the operation status of the transportation facility being used, including information on delays, accidents, etc.
[0282] 7. The server crawls social media and news sites to collect event information and store flyers within the user's area of activity.
[0283] 8. The server generates appropriate notifications for the user based on the aggregated information, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[0284] 9. The server generates a notification based on traffic conditions 15 minutes before the departure time set by the user. For example, it generates a notification such as, "Subway Line 1 is delayed due to an accident. We recommend you take a detour."
[0285] 10. The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[0286] 11. The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0287] 12. The emotion engine analyzes the user's voice data and facial expression images to recognize the user's emotions.
[0288] 13. The server further personalizes the notification content based on the emotional information obtained from the emotion engine. For example, if the user is feeling stressed, the server notifies the user of event information related to relaxation.
[0289] 14. The server sends the generated notifications to the device, which displays them to the user in real time.
[0290] 15. The user checks the notification and takes necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, visiting a new cafe, etc.).
[0291] Specific examples
[0292] Commuting Scenario
[0293] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[0294] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[0295] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[0296] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[0297] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[0298] 6. The device displays a notification to the user, who then selects a detour and departs.
[0299] 7. The emotion engine detects the user's stress from voice data collected during the commute.
[0300] 8. Based on this information, the server generates a notification saying, "Would you like to listen to some relaxing music?" and sends it to the device.
[0301] Walking Scenario
[0302] 1. The user enters the setting to take a walk at 18:00 into the device.
[0303] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[0304] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[0305] 4. The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0306] 5. The device displays a notification to the user, and the user visits the new cafe.
[0307] 6. The emotion engine detects whether the user is enjoying the game from their facial expressions.
[0308] 7. Based on this information, the server generates a notification saying, "Would you like to see a movie playing at a nearby cinema?" and sends it to the device.
[0309] This series of processes enables users to go to work or school or take a walk more comfortably. The system supports daily life by providing necessary information in a timely manner based on weather, traffic conditions, and even the user's emotions.
[0310] The processing flow will be explained below.
[0311] Step 1:
[0312] Users input their commute times, wake-up times, and the means of transportation they will use into the device, as well as set times for walking and other planned activities.
[0313] Step 2:
[0314] The device checks the entered setting information and sends it to the server, which stores it in a database.
[0315] Step 3:
[0316] The device periodically collects the user's GPS data and usage history and sends it to a server, which analyzes this data and uses machine learning algorithms to learn the user's behavioral patterns.
[0317] Step 4:
[0318] The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, and walking time.
[0319] Step 5:
[0320] The server queries the weather forecast API to obtain the weather information for the day, including whether it will rain, be sunny, and the temperature.
[0321] Step 6:
[0322] The server queries the traffic information API to obtain the operation status of the transportation facility in use, including delays, accidents, etc.
[0323] Step 7:
[0324] The server crawls social media and news sites to collect information about events and store flyers within the user's area of activity.
[0325] Step 8:
[0326] The emotion engine acquires and analyzes the user's voice data and facial expression images to recognize the user's emotions. The recognized emotion data is then sent to the server.
[0327] Step 9:
[0328] The server generates appropriate notifications for the user based on the aggregated information and emotional data, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[0329] Step 10:
[0330] The server generates a notification based on traffic conditions and the user's emotional data 15 minutes before the departure time set by the user. For example, it generates a notification such as "Subway Line 1 is delayed due to an accident, so we recommend you take a detour" or "You seem to be feeling depressed, so please leave early and take a break at a cafe to refresh yourself."
[0331] Step 11:
[0332] The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[0333] Step 12:
[0334] The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer." Based on information from the emotion engine, it can also add a message that corresponds to the user's emotion, such as, "Why not try the new cafe to celebrate?"
[0335] Step 13:
[0336] The server generates notifications and sends them to the terminal, which displays them to the user in real time.
[0337] Step 14:
[0338] Users check the notification and take necessary actions (e.g., leave earlier, bring an umbrella, visit a new cafe, etc.) and also take into account advice based on their emotions.
[0339] This series of processes allows users to go to work or school or take a walk more comfortably. The system supports users' daily lives by providing necessary information in a timely manner according to changes in weather and traffic conditions, as well as their emotions.
[0340] Example 2
[0341] 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."
[0342] Conventional systems provide notifications for daily activities such as commuting to work or school, walking, etc., but lack the ability to recognize the user's emotions and personalize the notification content. As a result, notifications often do not match the user's situation or emotions, reducing the effectiveness of notifications. In addition, real-time information collection and timely notification generation are not adequately performed, which can result in users not receiving the information they need.
[0343] 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.
[0344] In this invention, the server includes means for learning a user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic condition information, means for collecting event information and store flyer information within the user's range of activity, means for recognizing the user's emotions, means for generating appropriate notifications for the user, and means for transmitting the generated notifications to the user's terminal, thereby making it possible to provide personalized notifications at appropriate times based on the user's behavioral patterns and emotions.
[0345] A "means for learning behavioral patterns" is a system or algorithm that analyzes a user's location data and usage history to recognize the user's behavioral habits and tendencies.
[0346] "Means for obtaining weather forecast information" refers to a system or algorithm for obtaining current and future weather information using an external weather forecast API, etc.
[0347] "Means for acquiring traffic information" refers to a system or algorithm for acquiring information on the operation status of public transport and road congestion information, etc., using external traffic information APIs, etc.
[0348] "Means for collecting event information and store flyer information" refers to a system or algorithm that automatically collects information about events being held in a specific area and store sales information from social media, news sites, advertising sites, etc.
[0349] "Means for recognizing emotions" refers to a system or algorithm that analyzes a user's voice data or image data and recognizes the user's emotional state (happiness, sadness, stress, etc.).
[0350] "Means for generating notifications" means a system or algorithm for automatically generating notification content appropriate to the user based on collected information, learned behavioral patterns, and recognized emotions.
[0351] The "means for sending notifications" refers to a system or algorithm for sending the generated notification content to the user's device in real time.
[0352] This invention is a system that provides necessary information at the appropriate time during a user's daily commute or walk, and also recognizes the user's emotions to personalize the notification content. This system is mainly composed of three components: a server, a terminal, and an emotion engine.
[0353] System Overview
[0354] The basic configuration of the system is as follows:
[0355] Server: Learns behavioral patterns, collects information, generates and sends notifications.
[0356] Device: A device where a user enters configuration information and receives notifications.
[0357] Emotion engine: A function for recognizing user emotions from voice data and facial images.
[0358] Program processing
[0359] User Settings and Data Collection
[0360] Users input information about their commute time, the means of transportation they use, the time they wake up, the time they return home, the time they take a walk, etc. The device then sends this information to the server, which then stores it in a database.
[0361] Learning behavioral patterns
[0362] The device periodically collects the user's GPS data and usage history and sends them to a server. The server analyzes this data and uses machine learning algorithms such as Python's Scikit-Learn library to learn the user's behavioral patterns. The learning results are stored in a database and used for future predictions.
[0363] Information gathering
[0364] The server obtains the current day's weather information using a weather forecast API (e.g., OpenWeatherMap API), obtains the status of public transport using a traffic information API (e.g., Google Maps API), and collects event information and store flyer information from social media and news sites.
[0365] Notification Generation and Delivery
[0366] The server generates appropriate notifications for the user based on the collected information and learned behavioral patterns. For example, it generates a weather forecast notification 30 minutes before the predicted wake-up time, and a traffic situation notification 15 minutes before departure time. The generated notifications are sent to the device and displayed to the user via the device's push notification service.
[0367] Emotion Recognition and Notification Personalization
[0368] The emotion engine analyzes the user's voice data and facial expressions to recognize their emotions. The server further personalizes the notification content based on the information from the emotion engine. For example, if the user is feeling stressed, the server may notify them of "information about relaxation events."
[0369] Specific examples
[0370] Commuting Scenario
[0371] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[0372] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[0373] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[0374] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[0375] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[0376] 6. The device displays a notification to the user, who then selects a detour and departs.
[0377] 7. The emotion engine detects the user's stress from voice data collected during the commute.
[0378] 8. Based on this information, the server generates a notification saying, "Would you like to listen to some relaxing music?" and sends it to the device.
[0379] Walking Scenario
[0380] 1. The user enters the setting to take a walk at 18:00 into the device.
[0381] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[0382] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[0383] 4. The server tracks the user's GPS data in real time and generates notifications during a walk such as "A new cafe has opened 500 meters away."
[0384] 5. The device displays a notification to the user, and the user visits the new cafe.
[0385] 6. The emotion engine detects whether the user is enjoying the game from their facial expressions.
[0386] 7. Based on this information, the server generates a notification saying, "Would you like to see a movie playing at a nearby cinema?" and sends it to the device.
[0387] Prompt Sentence Examples
[0388] Example prompt 1: Commuting scenario
[0389] "Set up your commute to wake up at 6:00 and leave at 7:00. Anticipated issues include subway delays and bad weather. Explain the flow for generating notifications and displaying them to the user."
[0390] Example prompt 2: Walking scenario
[0391] "Please set up a walk at 18:00. During the walk, collect information about events and new stores, generate notifications based on that information, and explain the flow of displaying them to the user."
[0392] In this way, the system supports users in their daily commutes and walks, providing timely information tailored to their situation and emotions.
[0393] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0394] Step 1:
[0395] Users input information such as commute time, wake-up time, return home time, and walking time into the terminal.
[0396] Input: User's schedule and transportation information
[0397] How it works: The user enters the required information through the device app.
[0398] Output: The entered configuration information
[0399] Step 2:
[0400] The terminal transmits the setting information to the server.
[0401] Input: The entered configuration information
[0402] How it works: The device converts the collected data into the specified format and sends it to the server using the HTTPS protocol.
[0403] Output: Configuration information sent to the server
[0404] Step 3:
[0405] The server stores the received configuration information in a database.
[0406] Input: Submitted configuration information
[0407] How it works: The server parses the configuration information and stores it in a database, which can be stored in a MySQL database for example.
[0408] Output: Saved configuration information
[0409] Step 4:
[0410] The device periodically collects the user's GPS data and usage history and sends them to the server.
[0411] Input: User's GPS data and usage history
[0412] How it works: The device obtains location information from the built-in GPS module and sends it, along with usage history, to the server.
[0413] Output: GPS data and usage history sent to the server
[0414] Step 5:
[0415] The server analyzes the received GPS data and usage history using machine learning algorithms to learn the user's behavioral patterns.
[0416] Input: GPS data and usage history
[0417] How it works: The server uses Python's Scikit-Learn library to apply clustering algorithms and other techniques to analyze behavioral patterns.
[0418] Output: Learned behavioral patterns
[0419] Step 6:
[0420] The server stores the learned behavioral patterns in a database.
[0421] Input: Learned behavioral patterns
[0422] Operation: The server stores the behavioral patterns in a database for future use.
[0423] Output: Stored behavioral patterns
[0424] Step 7:
[0425] The server uses a weather forecast API to obtain the weather information for the day.
[0426] Input: API request
[0427] How it works: The server sends a request to an external weather API (e.g., OpenWeatherMap API) to retrieve current or future weather data.
[0428] Output: Weather information data
[0429] Step 8:
[0430] The server uses a traffic information API to obtain the operation status of transportation services.
[0431] Input: API request
[0432] How it works: The server sends a request to an external traffic information API (e.g., Google Maps API) to obtain traffic information such as delays and accidents.
[0433] Output: Traffic information data
[0434] Step 9:
[0435] The server collects event information and store flyer information from social media and news sites.
[0436] Input: crawl request
[0437] How it works: The server crawls data from specific websites and social media sites to collect event information and flyers.
[0438] Output: Event information and store flyer information
[0439] Step 10:
[0440] The server generates appropriate notifications for the user based on the aggregated information.
[0441] Input: Weather information, traffic information, event information, learned behavioral patterns
[0442] How it works: The server combines this data and creates optimal notification content based on the user's behavioral patterns.
[0443] Output: Notification content
[0444] Step 11:
[0445] The server sends the generated notification to the terminal.
[0446] Input: Notification content
[0447] How it works: The server generates the notification and sends it to the device's push notification service.
[0448] Output: Notification sent to the device
[0449] Step 12:
[0450] The device displays the notification to the user in real time.
[0451] Input: Notification sent from the server
[0452] How it works: The device displays the content to the user as a push notification.
[0453] Output: The notification displayed to the user
[0454] Step 13:
[0455] The emotion engine analyzes the user's voice data and facial expression images to recognize emotions.
[0456] Input: User's voice data and facial expression images
[0457] How it works: The emotion engine uses deep learning models to analyze audio features and image data to classify emotions.
[0458] Output: Recognized emotion data
[0459] Step 14:
[0460] The server further personalizes the notification content based on the emotional data obtained from the emotion engine.
[0461] Input: Recognized emotion data
[0462] How it works: The server adjusts the notification content based on the emotion data, for example generating a relaxation notification for a user who is feeling stressed.
[0463] Output: personalized notification content
[0464] Step 15:
[0465] The server sends personalized notifications to the device.
[0466] Input: Personalized notification content
[0467] How it works: The server sends personalized notifications to the device, just like regular notifications.
[0468] Output: Personalized notification sent to device
[0469] Step 16:
[0470] The device displays personalized notifications to the user in real time.
[0471] Input: Personalized notification sent from the server
[0472] What it does: The device displays the notification to the user as a push notification.
[0473] Output: The personalized notification displayed to the user
[0474] Step 17:
[0475] The user checks the notification and takes the necessary action.
[0476] Input: Displayed notification
[0477] Action: The user takes an action based on the notification, for example, taking an umbrella, taking a detour, listening to relaxing music, etc.
[0478] Output: User action
[0479] (Application example 2)
[0480] 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."
[0481] Conventional information systems have difficulty providing necessary information at the appropriate time during users' daily commutes, such as commuting to work or school, or taking a walk. Furthermore, they lack the ability to provide personalized notifications based on the user's emotions, meaning that the content of notifications does not fully meet the user's needs. In particular, in autonomous vehicles, real-time information provision and notifications based on emotions are required to improve passenger comfort.
[0482] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0483] In this invention, the server includes means for learning a user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic condition information, means for collecting event information and store flyer information within the user's range of movement, means for recognizing the user's emotions, means for personalizing notification content based on the emotion information, means for generating notifications appropriate for the user, and means for sending the generated notifications to the user's terminal. This enables the user's behavioral patterns and emotions to be analyzed in real time, enabling the provision of comfortable information in an autonomous vehicle and personalized notifications according to the emotions.
[0484] "Behavioral patterns" refer to the characteristics and tendencies of repeated behaviors such as commuting to work, school, walking, etc. in a user's daily life.
[0485] "Weather forecast information" is data relating to meteorological conditions such as future weather, temperature, and probability of precipitation in a specified area.
[0486] "Traffic information" is data on the operation status, delays, accidents, etc. of roads and public transportation in a specified area.
[0487] "Event information" is information about events and activities held within a designated area.
[0488] "Store flyer information" is advertising information such as discount information and new product announcements issued by stores within the user's range of activity.
[0489] "Means for recognizing emotions" refers to technology that uses a camera and microphone to analyze the user's facial expressions and voice to identify their emotional state at any given time.
[0490] "Means for personalizing notification content" refers to technology that generates optimal notifications based on the user's needs and status, based on acquired emotional information and behavioral patterns.
[0491] An "autonomous vehicle" is a vehicle that is capable of some degree of autonomous driving without driver intervention.
[0492] "Analyzing in real time" refers to processing data and generating results immediately as the data is generated.
[0493] "Personalized notifications" are notifications that provide information customized to the needs and circumstances of individual users.
[0494] The system for realizing this invention mainly comprises three components: a server, a terminal (for example, a smartphone), and an emotion recognition engine. Specific embodiments of the invention will be described below.
[0495] System configuration
[0496] server
[0497] The server is responsible for learning user behavior patterns and collecting and analyzing weather forecasts, traffic conditions, event information, store flyer information, etc. It also processes data to personalize notification content based on the user's emotional information.
[0498] Terminal
[0499] The device is mainly a smartphone, and its role is to send the user's input information (destination, departure time, behavioral patterns, etc.) to the server, and display notifications received from the server to the user in real time.The device also uses the camera and microphone to provide the emotion engine with user emotion data.
[0500] Emotion Recognition Engine
[0501] The emotion recognition engine recognizes emotions by analyzing the user's facial expression images and voice data. For example, image analysis algorithms and voice analysis software are used for this purpose. Based on this, it recognizes the user's state of stress or enjoyment and sends that information to the server.
[0502] What the program does
[0503] Get user settings
[0504] The user inputs information such as the destination, departure time, and stopovers into the terminal. This information is sent from the terminal to the server and stored in a database.
[0505] Data collection and analysis
[0506] The device periodically collects the user's location information using GPS and sends it to the server. The server analyzes this data and implements machine learning algorithms to learn the user's behavioral patterns. The server also collects real-time weather and traffic information using weather forecast APIs and traffic information APIs. It also crawls and collects event information and store flyer information from social media and news sites.
[0507] Emotional Data Processing
[0508] Using the device's camera and microphone, the emotion recognition engine analyzes the user's facial expressions and voice, and sends the emotional data to the server, which then personalizes the notification content based on this emotional data.
[0509] Generate and send notifications
[0510] The server generates notifications appropriate for the user based on the collected data and emotional information. For example, based on the weather forecast, it may generate a notification saying, "It's going to rain, so we recommend you take an umbrella," or based on traffic information, it may generate a notification saying, "The subway is delayed, so we recommend you take an alternative route." If the user is feeling stressed, it may generate a notification saying, "Would you like to listen to some relaxing music?", or if the user is enjoying themselves, it may generate a notification saying, "Would you like to join a nearby event?" All of these notifications are sent to the device in real time.
[0511] Specific examples
[0512] Commuting Scenario
[0513] Users input their destination into the application, and the self-driving vehicle calculates the route based on that information. After departure, the server generates a notification based on the weather forecast for the route the self-driving vehicle will take, saying, "It looks like it might rain along the way, so you'd better bring an umbrella," and sends this to the smartphone application. The camera and microphone analyze the passenger's facial expressions and voice, and if it detects that the passenger is feeling stressed, it generates a notification saying, "Would you like to listen to some relaxing music?" and sends this to the smartphone application.
[0514] Example prompts for generative AI models
[0515] "To improve passenger comfort in autonomous vehicles, please create a program to implement a system that analyzes passenger emotions in real time and provides relaxing music if the passenger is feeling stressed, or notifies the passenger of nearby event information if the passenger is having fun."
[0516] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0517] Step 1:
[0518] The user opens the smartphone application and inputs information such as the destination, departure time, and stopovers. The input information is sent to the device and stored on the server. An example of input data might be "Departure time from home to work is 7:30." The server then writes this data into a database.
[0519] Step 2:
[0520] The device uses its GPS function to periodically obtain the user's current location. Updated location information is sent to the server every few seconds. The input data is the user's current location coordinate data, which the server receives and records in a database in real time.
[0521] Step 3:
[0522] The server uses a machine learning algorithm to learn the user's behavioral patterns. This is done using the user's GPS data and past usage history. The input data is the user's location history and behavioral history data, and the server uses this to train a model that predicts the user's next behavior. The output is a behavioral pattern prediction model.
[0523] Step 4:
[0524] The server accesses the weather forecast API and obtains weather information for the specified area. The input data is the "location information of the specified area," and the data obtained is "weather, temperature, precipitation probability, etc. for that area." The server analyzes this data, extracts the necessary weather information, and saves it.
[0525] Step 5:
[0526] The server accesses the traffic information API and obtains the traffic conditions along the user's route. The input data is "information about the specified route," and the data obtained is "information about route delays, accidents, etc." The server analyzes this data, extracts appropriate traffic-related information, and stores it.
[0527] Step 6:
[0528] The server crawls and collects information about events and store flyers within the user's range of activity from social media and news sites. The input data is "location information within the user's range of activity," and the output data is "event information and discount flyer information." This data is also stored on the server.
[0529] Step 7:
[0530] Using the device's camera and microphone, the emotion recognition engine analyzes the user's facial expressions and voice. The input data is "video and audio data," and the emotion recognition engine analyzes it to generate "user emotion data" (for example, whether the user is feeling stressed or enjoying themselves). This emotion data is also sent to the server.
[0531] Step 8:
[0532] The server generates notifications appropriate for the user based on the collected data and emotional information. For example, it generates a notification based on the weather forecast saying, "It's going to rain, so we recommend you take an umbrella," or based on traffic information, a notification saying, "The subway is delayed, so we recommend you take an alternative route." The input data is "weather information, traffic information, emotional data," and the output is a "personalized notification message."
[0533] Step 9:
[0534] If the user is feeling stressed, the server generates a notification saying, "Would you like to listen to some relaxing music?" If the user is enjoying themselves, the server generates a notification saying, "Would you like to join a nearby event?" This notification is also sent to the device in real time. The input data is "emotion data," and the output is "a notification message that promotes stress reduction or enjoyment."
[0535] Step 10:
[0536] The device displays the received notification to the user in real time. The user can check the notification content and take necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, playing relaxing music, visiting a new cafe, etc.). Specifically, the user can tap the notification on their smartphone to check more information or take action immediately.
[0537] 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.
[0538] 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.
[0539] 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.
[0540] [Second embodiment]
[0541] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0542] 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.
[0543] 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).
[0544] 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.
[0545] 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.
[0546] 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).
[0547] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0548] 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.
[0549] 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.
[0550] 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.
[0551] 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.
[0552] 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."
[0553] This invention is a system that provides necessary information at appropriate times to users during their daily commutes to work or school, or when they are out walking. Below, we will explain the program processing of this system in natural language, with concrete examples.
[0554] System Overview
[0555] This system learns the user's behavioral patterns and generates appropriate notifications based on real-time weather forecasts, traffic conditions, event information, and store flyer information, and sends them to the user's device.The system is mainly composed of two components: a server and a device.
[0556] Program processing
[0557] 1. Get user settings:
[0558] The user inputs the commute time and the means of transportation they will use into the terminal.
[0559] The terminal sends this setting information to the server, which stores it in a database.
[0560] 2. Learning behavioral patterns:
[0561] The device periodically collects the user's GPS data and usage history and sends them to the server.
[0562] The server analyzes this data and uses machine learning algorithms to learn user behavior patterns.
[0563] The learning results are stored in a database and will be used for future predictions.
[0564] 3. Aggregation of information:
[0565] The server obtains the current day's weather information from the weather forecast API.
[0566] The server obtains the operation status of public transport from the traffic information API.
[0567] The server collects information about nearby events and store flyers from social media and news sites.
[0568] 4. Notification Generation and Sending:
[0569] The server uses this aggregated information to generate notifications appropriate for the user.
[0570] The content and timing of notifications are adjusted based on predicted behavioral patterns (e.g., wake-up time, departure time).
[0571] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[0572] Specific examples
[0573] Commuting Scenario
[0574] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[0575] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[0576] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[0577] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[0578] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[0579] 6. The device displays a notification to the user, who then selects a detour and departs.
[0580] Walking Scenario
[0581] 1. The user enters the setting to take a walk at 18:00 into the device.
[0582] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[0583] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[0584] 4. The server tracks the user's GPS data in real time and generates a notification to the device during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0585] 5. The device displays a notification to the user, and the user visits the new cafe.
[0586] In this way, the system learns the user's behavioral patterns and provides necessary information at the appropriate time, thereby supporting the user's daily life.
[0587] The processing flow will be explained below.
[0588] Step 1:
[0589] Users input their commute time and the transportation they will use into the device. They also set their wake-up time, return home time, and walk times.
[0590] Step 2:
[0591] The device checks the entered setting information and sends it to the server, which stores it in a database.
[0592] Step 3:
[0593] The device periodically collects the user's GPS data and usage history and sends it to a server, which analyzes the data and uses machine learning algorithms to learn the user's behavioral patterns.
[0594] Step 4:
[0595] The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, commute time to school, and walking time.
[0596] Step 5:
[0597] The server queries the weather API to get the weather information for the day, including whether it's raining, sunny, and the temperature.
[0598] Step 6:
[0599] The server queries the traffic information API to obtain the operation status of the transportation facility in use, including information on delays, accidents, etc.
[0600] Step 7:
[0601] The server crawls social media and news sites to collect information about events and store flyers within the user's area of activity.
[0602] Step 8:
[0603] The server generates appropriate notifications for the user based on the aggregated information, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[0604] Step 9:
[0605] The server generates a notification based on traffic conditions 15 minutes before the user's scheduled departure time, such as "Subway Line 1 is delayed due to an accident. We recommend you take a detour."
[0606] Step 10:
[0607] The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[0608] Step 11:
[0609] The server tracks the user's GPS data in real time and generates notifications during a walk such as, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0610] Step 12:
[0611] The server generates notifications and sends them to the device, which displays them to the user in real time.
[0612] Step 13:
[0613] The user checks the notification and takes necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, visiting a new cafe, etc.).
[0614] This series of processes enables users to commute to work or school or take a walk more comfortably. The system supports daily life by quickly responding to changes in weather and traffic conditions and providing users with the information they need in a timely manner.
[0615] Example 1
[0616] 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."
[0617] In modern society, users' daily commutes, school commutes, and walks vary widely, and the information they require is also diverse. However, conventional systems have had the problem of making it difficult to provide this information in a timely and unified manner. In particular, there was no system that could obtain weather forecasts, traffic conditions, event information, advertising information, and other information in real time and provide timely notifications based on users' behavioral patterns. This required users to take the time to check the information they needed one by one, which hindered their efficient behavior.
[0618] 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.
[0619] In this invention, the server includes a means for acquiring and storing user settings, a means for analyzing and predicting behavioral patterns using a machine learning algorithm, and a means for collecting information in real time and adjusting notifications, thereby enabling weather forecasts, traffic conditions, event information, and advertising information to be notified in real time at appropriate times based on the user's behavioral patterns.
[0620] "User settings" refers to information that a user enters into the system to identify their behavioral patterns, such as their commute time and the means of transportation they use.
[0621] "Behavioral patterns" refers to data on the user's daily behavioral tendencies and habits, such as departure time and route taken.
[0622] "Weather forecast information" is weather forecast information for a specific date and time based on meteorological data.
[0623] "Traffic information" refers to real-time information on the operation status of public transport and traffic congestion.
[0624] "Event information" is information about events held in a specific region or period.
[0625] "Advertising information" is commercial information such as special offers and sales information provided by stores and services.
[0626] "Notification" refers to information sent from the system to users, including weather forecasts, traffic conditions, event information, and advertising information.
[0627] "Terminal" refers to a device used by a user, such as a smartphone or tablet, or other information and communication device.
[0628] A "server" is a computer system for processing information and storing and transmitting various data.
[0629] A "machine learning algorithm" is a computational method for recognizing patterns and building predictive models based on data analysis.
[0630] This invention is a system that provides necessary information at the appropriate time during users' daily commutes to work or school, or while walking. This system consists of two components: a server and a terminal.
[0631] System Overview
[0632] Retrieving User Settings
[0633] Users input their commute time and the mode of transportation they will use into their device, which then sends this information to the server, which stores it in a database.
[0634] Learning behavioral patterns
[0635] The device periodically collects the user's location data and sends it to the server. The server analyzes this data and uses machine learning algorithms (e.g., random forests) to learn behavioral patterns. The learning results are stored in a database and used for future predictions.
[0636] Aggregation of information
[0637] The server uses external APIs (e.g., weather information API, traffic information API) to obtain weather forecast information and traffic information. The server also uses web scraping technology to collect event information and advertising information from social media and news sites.
[0638] Generate and send notifications
[0639] The server generates notifications appropriate for the user based on the aggregated information. The content and timing of the notifications are adjusted based on predicted behavioral patterns. The generated notifications are sent from the server to the device and displayed to the user in real time.
[0640] Specific examples
[0641] Commuting Scenario
[0642] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[0643] 2. The server retrieves "rain" information from the weather information API before the predicted wake-up time.
[0644] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[0645] 4. At 6:45, the server receives information from the traffic information API that "the subway is delayed due to an accident."
[0646] 5. The server generates a notification saying, "The subway is delayed due to an accident, so we recommend that you take a detour," and sends it to the device.
[0647] 6. The device displays a notification to the user, who then selects a detour and departs.
[0648] Walking Scenario
[0649] 1. The user enters the setting to take a walk at 18:00 into the device.
[0650] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[0651] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[0652] 4. The server tracks the user's location data in real time and generates a notification to the device during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0653] 5. The device displays a notification to the user, and the user visits the new cafe.
[0654] Prompt Sentence Examples
[0655] You can ask a generative AI model to describe a specific system using the following prompt:
[0656] Design a system that provides appropriate information in real time based on a user's commute and walking patterns. Please explain the specific steps for generating notifications for weather forecasts, traffic conditions, event information, and advertising information. Please also provide a detailed description of the process and specific behavior of each step. Please also include the names of any tools or APIs you use.
[0657] In this way, the system learns the user's behavioral patterns and provides necessary information at the appropriate time, thereby supporting the user's daily life.
[0658] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0659] Step 1:
[0660] The user inputs information about their commute time and the mode of transportation they will use into their device. The input data includes the departure time (e.g., 7:00), return time (e.g., 18:00), and the mode of transportation they will use (e.g., subway line 1). The device then sends this setting information to the server. The server stores the received setting information in a database and uses it for subsequent processing.
[0661] Step 2:
[0662] The device periodically collects the user's location data and sends it to the server. The location data is collected using the device's GPS function and sent to the server as a batch process at regular intervals (e.g., every 10 minutes). The server analyzes the received location data and uses a machine learning algorithm (e.g., random forest) to learn the user's behavioral patterns. The analysis results are stored in a database and used for future predictions.
[0663] Step 3:
[0664] The server uses external APIs (e.g., weather information API, traffic information API) to obtain weather forecast information and traffic information. The server periodically sends requests to specified API endpoints and stores the obtained data in an internal database. In parallel with this, the server uses web scraping technology to collect event information and advertising information from social media and news sites. This is also done periodically, and the collected data is stored in a database.
[0665] Step 4:
[0666] The server generates notifications appropriate for the user based on the aggregated information. It uses acquired weather forecast information, traffic information, event information, advertising information, and predicted user behavior patterns as input data to generate highly relevant notifications. For example, if it is raining, it will create a notification saying, "It will rain today, so it would be a good idea to take an umbrella." The content and timing of the generated notification are adjusted based on predicted behavior patterns (e.g., wake-up time, departure time).
[0667] Step 5:
[0668] The server sends the generated notification to the device and displays it to the user in real time. The server uses a push notification service (e.g., Firebase Cloud Messaging) to send the generated notification to the device. The device immediately displays the received notification and helps the user take appropriate action. Specifically, the push notification triggers the notification to be displayed on the notification screen, allowing the user to check the information.
[0669] (Application example 1)
[0670] 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."
[0671] Conventional information systems provided for commuting, school, and walks are mainly limited to weather forecasts and traffic information, and have the problem of being unable to accommodate the diverse interests of users. Furthermore, it is difficult to provide personalized information based on users' behavioral patterns and interests, and notifications at the appropriate time in real time are insufficient. This can result in users being unable to receive the appropriate information when they need it, reducing the convenience of their daily lives.
[0672] 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.
[0673] In this invention, the server includes means for learning the user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic information, means for collecting event information and store flyer information within the user's range of activity, means for collecting content information (videos, news articles, music playlists, etc.) in real time, means for generating appropriate notifications for the user, and means for sending the generated notifications to the user's terminal, thereby enabling personalized information based on the user's behavioral patterns and interests to be provided in real time at an appropriate timing.
[0674] "Behavioral patterns" refer to the regularity and tendencies of a user's daily actions and behavior, including the time of day they commute to work or school and the places they visit.
[0675] "Notification generation" refers to the process of generating information to be distributed to the user and sending it to the user's terminal in an appropriate format.
[0676] "Weather forecast information" is information about weather predicted based on meteorological data, including temperature, precipitation, wind speed, etc.
[0677] "Traffic condition information" is information that indicates the operation status of transportation facilities and the congestion status of roads.
[0678] "Event information" is information about events and activities held within the area of activity.
[0679] "Store flyer information" refers to promotional information such as discounts and campaigns offered by retail stores.
[0680] "Content information" is a general term for information according to the medium and format that a user can access, and includes videos, news articles, music playlists, and the like.
[0681] "GPS data" refers to data indicating location information obtained by the Global Positioning System, and is used to identify a user's current location and travel route.
[0682] "Usage history" refers to a record of the actions and browsing a user performs through a device or application, including the content viewed and the places visited.
[0683] "Real-time" refers to processing and providing data simultaneously with actual time.
[0684] "Interests" refers to areas or topics in which you are particularly interested or concerned.
[0685] "Personalized information" refers to information that provides specific content individually based on the individual requests and actions of each user.
[0686] This invention is a system for learning user behavior patterns and providing appropriate information in real time. The processing contents of the program for realizing this system will be explained below.
[0687] Hardware and software used
[0688] 1. Hardware
[0689] Smartphone: Used as a user device to receive and display notifications.
[0690] Server: Analyzes data, aggregates information, and generates notifications.
[0691] 2. Software
[0692] Mobile app: Developed in Swift (for iOS) and Kotlin (for Android), it retrieves user settings and displays notifications.
[0693] Server-side program: Uses Python, Flask, and RESTful APIs to handle communication processing and database management.
[0694] Database: MySQL and MongoDB are used to store user data and learning results.
[0695] External API: Use OpenWeatherMap API (weather forecast), Google Maps API (traffic information), etc. to obtain the necessary information.
[0696] Machine learning libraries: TensorFlow and PyTorch are used to learn and analyze behavioral patterns.
[0697] Program processing
[0698] 1. Get user settings
[0699] Users enter their commute time, the means of transportation they use, and their interests and concerns into a smartphone app.
[0700] The terminal sends this setting information to the server, which stores it in a database.
[0701] 2. Learning behavioral patterns
[0702] The terminal periodically acquires the user's GPS data and usage history and sends them to the server.
[0703] The server analyzes this data using machine learning algorithms (e.g., TensorFlow, PyTorch) to learn user behavior patterns.
[0704] The learning results are stored in a database and will be used for future predictions.
[0705] 3. Aggregation of information
[0706] The server obtains the current day's weather information from a weather forecast API (e.g., OpenWeatherMap API).
[0707] The server obtains the operation status of public transport from a traffic information API (e.g., Google Maps API).
[0708] The server collects information about nearby events and store flyers from social media and news sites.
[0709] The server obtains content information such as videos and music playlists from content distribution APIs (e.g., YouTube API, Spotify API).
[0710] 4. Generating and Sending Notifications
[0711] The server uses this aggregated information to generate notifications appropriate for the user.
[0712] The content and timing of notifications are tailored based on predicted behavioral patterns (e.g., wake-up time, departure time) and interests.
[0713] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[0714] Specific examples
[0715] 1. New Morning News Video Notification
[0716] Users have the habit of watching the latest news videos during their morning commute.
[0717] At 6:25, the server generates a notification recommending the latest news video and sends it to the device.
[0718] The device will display "Check out this morning's latest news," helping users watch news videos during their commute.
[0719] 2. Lunchtime music playlist notification
[0720] Users often listen to music during their lunch break.
[0721] At 11:55, the server generates a notification recommending a new music playlist and sends it to the device.
[0722] The device will display a notification saying "A new music playlist has been added!", allowing users to enjoy new music during their lunch break.
[0723] Prompt Sentence Examples
[0724] 1. News video notification generation:
[0725] "News video, morning commute, 6:25 AM"
[0726] 2. Music playlist notification generation:
[0727] "Music playlist, lunch break, 11:55 AM"
[0728] These prompts are fed into a generative AI model and used to generate appropriate notifications based on the user's behavioral patterns and interests.
[0729] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0730] Step 1:
[0731] Retrieving User Settings
[0732] Users enter their commute time, the means of transportation they use, and their interests and concerns into a smartphone app.
[0733] Input: Commuting time, transportation used, interests
[0734] Data processing: The entered information is encoded in JSON format.
[0735] Output: Encoded user preference data
[0736] The terminal sends this setting information to the server, which stores it in a database.
[0737] Input: Encoded user preference data
[0738] Data calculation: The server stores the received data in a database.
[0739] Output: User preferences stored in the database
[0740] Step 2:
[0741] Learning behavioral patterns
[0742] The device periodically collects the user's GPS data and usage history and sends them to the server.
[0743] Input: User's GPS data, usage history
[0744] Data processing: GPS data is stored as location information, and usage history is categorized as content viewed, places visited, etc.
[0745] Output: Organized user data
[0746] The server analyzes this data using machine learning algorithms (e.g., TensorFlow, PyTorch) to learn user behavior patterns.
[0747] Input: Organized user data
[0748] Data computation: Using machine learning algorithms to generate models of behavioral patterns.
[0749] Output: Learned behavioral pattern model
[0750] The learning results are stored in a database and will be used for future predictions.
[0751] Input: Learned behavioral pattern model
[0752] Data calculation: Save the model parameters in the database.
[0753] Output: Model parameters stored in a database
[0754] Step 3:
[0755] Aggregation of information
[0756] The server obtains the current day's weather information from a weather forecast API (e.g., OpenWeatherMap API).
[0757] Input: Weather API request
[0758] Data calculation: Analyze the response from the API and extract weather information.
[0759] Output: Today's weather information
[0760] The server obtains the operation status of public transport from a traffic information API (e.g., Google Maps API).
[0761] Input: Traffic information API request
[0762] Data calculation: Analyzes the response from the API and extracts traffic conditions.
[0763] Output: Traffic status information
[0764] The server collects information about nearby events and store flyers from social media and news sites.
[0765] Input: Scraping requests from social media and news sites
[0766] Data calculation: Analyze the scraping results to extract event and flyer information.
[0767] Output: Local event information, store flyer information
[0768] The server obtains content information such as videos and music playlists from content distribution APIs (e.g., YouTube API, Spotify API).
[0769] Input: Content Delivery API request
[0770] Data calculation: Analyzes the response from the API and extracts content information.
[0771] Output: Content information (videos, music playlists, etc.)
[0772] Step 4:
[0773] Generate and send notifications
[0774] The server uses this aggregated information to generate notifications appropriate for the user.
[0775] Input: Learned behavioral pattern model, aggregated information
[0776] Data calculations: Generate notifications based on model predictions.
[0777] Output: The generated notification
[0778] The content and timing of notifications are tailored based on predicted behavioral patterns (e.g., wake-up time, departure time) and interests.
[0779] Input: Generated notification
[0780] Data calculations: Adjusting timing and content to customize notifications
[0781] Output: Customized notification
[0782] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[0783] Input: Customized notification
[0784] Data calculation: Sending notifications via HTTP requests
[0785] Output: Notification displayed on the user's device
[0786] 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.
[0787] This invention is a system that provides necessary information at the appropriate time during a user's daily commute to work or school or during a walk, and recognizes the user's emotions to further personalize the notification content. Below, the program processing of this system is explained in natural language, with concrete examples.
[0788] System Overview
[0789] This system learns the user's behavioral patterns and generates appropriate notifications based on real-time weather forecasts, traffic conditions, event information, and store flyer information, and sends them to the user's device. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, it provides a function to personalize the notification content according to the user's emotions. The system mainly consists of three components: a server, a device, and an emotion engine.
[0790] Program processing
[0791] 1. Get user settings:
[0792] Users input information about their commute time and the means of transportation they will use into the device, as well as set wake-up times, return home times, and walk times.
[0793] 2. The device checks the entered setting information and sends it to the server, which stores it in a database.
[0794] 3. The device periodically collects the user's GPS data and usage history and sends them to the server, which analyzes this data and uses machine learning algorithms to learn the user's behavioral patterns.
[0795] 4. The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, commute time to school, walking time, etc.
[0796] 5. The server queries the weather API to get the weather information for the day, including whether it will rain, be sunny, and the temperature.
[0797] 6. The server queries the traffic information API to obtain the operation status of the transportation facility being used, including information on delays, accidents, etc.
[0798] 7. The server crawls social media and news sites to collect event information and store flyers within the user's area of activity.
[0799] 8. The server generates appropriate notifications for the user based on the aggregated information, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[0800] 9. The server generates a notification based on traffic conditions 15 minutes before the departure time set by the user. For example, it generates a notification such as, "Subway Line 1 is delayed due to an accident. We recommend you take a detour."
[0801] 10. The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[0802] 11. The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0803] 12. The emotion engine analyzes the user's voice data and facial expression images to recognize the user's emotions.
[0804] 13. The server further personalizes the notification content based on the emotional information obtained from the emotion engine. For example, if the user is feeling stressed, the server notifies the user of event information related to relaxation.
[0805] 14. The server sends the generated notifications to the device, which displays them to the user in real time.
[0806] 15. The user checks the notification and takes necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, visiting a new cafe, etc.).
[0807] Specific examples
[0808] Commuting Scenario
[0809] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[0810] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[0811] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[0812] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[0813] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[0814] 6. The device displays a notification to the user, who then selects a detour and departs.
[0815] 7. The emotion engine detects the user's stress from voice data collected during the commute.
[0816] 8. Based on this information, the server generates a notification saying, "Would you like to listen to some relaxing music?" and sends it to the device.
[0817] Walking Scenario
[0818] 1. The user enters the setting to take a walk at 18:00 into the device.
[0819] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[0820] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[0821] 4. The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[0822] 5. The device displays a notification to the user, and the user visits the new cafe.
[0823] 6. The emotion engine detects whether the user is enjoying the game from their facial expressions.
[0824] 7. Based on this information, the server generates a notification saying, "Would you like to see a movie playing at a nearby cinema?" and sends it to the device.
[0825] This series of processes enables users to go to work or school or take a walk more comfortably. The system supports daily life by providing necessary information in a timely manner based on weather, traffic conditions, and even the user's emotions.
[0826] The processing flow will be explained below.
[0827] Step 1:
[0828] Users input their commute times, wake-up times, and the means of transportation they will use into the device, as well as set times for walking and other planned activities.
[0829] Step 2:
[0830] The device checks the entered setting information and sends it to the server, which stores it in a database.
[0831] Step 3:
[0832] The device periodically collects the user's GPS data and usage history and sends it to a server, which analyzes this data and uses machine learning algorithms to learn the user's behavioral patterns.
[0833] Step 4:
[0834] The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, and walking time.
[0835] Step 5:
[0836] The server queries the weather forecast API to obtain the weather information for the day, including whether it will rain, be sunny, and the temperature.
[0837] Step 6:
[0838] The server queries the traffic information API to obtain the operation status of the transportation facility in use, including delays, accidents, etc.
[0839] Step 7:
[0840] The server crawls social media and news sites to collect information about events and store flyers within the user's area of activity.
[0841] Step 8:
[0842] The emotion engine acquires and analyzes the user's voice data and facial expression images to recognize the user's emotions. The recognized emotion data is then sent to the server.
[0843] Step 9:
[0844] The server generates appropriate notifications for the user based on the aggregated information and emotional data, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[0845] Step 10:
[0846] The server generates a notification based on traffic conditions and the user's emotional data 15 minutes before the departure time set by the user. For example, it generates a notification such as "Subway Line 1 is delayed due to an accident, so we recommend you take a detour" or "You seem to be feeling depressed, so please leave early and take a break at a cafe to refresh yourself."
[0847] Step 11:
[0848] The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[0849] Step 12:
[0850] The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer." Based on information from the emotion engine, it can also add a message that corresponds to the user's emotion, such as, "Why not try the new cafe to celebrate?"
[0851] Step 13:
[0852] The server generates notifications and sends them to the terminal, which displays them to the user in real time.
[0853] Step 14:
[0854] Users check the notification and take necessary actions (e.g., leave earlier, bring an umbrella, visit a new cafe, etc.) and also take into account advice based on their emotions.
[0855] This series of processes allows users to go to work or school or take a walk more comfortably. The system supports users' daily lives by providing necessary information in a timely manner according to changes in weather and traffic conditions, as well as their emotions.
[0856] Example 2
[0857] 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."
[0858] Conventional systems provide notifications for daily activities such as commuting to work or school, walking, etc., but lack the ability to recognize the user's emotions and personalize the notification content. As a result, notifications often do not match the user's situation or emotions, reducing the effectiveness of notifications. In addition, real-time information collection and timely notification generation are not adequately performed, which can result in users not receiving the information they need.
[0859] 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.
[0860] In this invention, the server includes means for learning a user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic condition information, means for collecting event information and store flyer information within the user's range of activity, means for recognizing the user's emotions, means for generating appropriate notifications for the user, and means for transmitting the generated notifications to the user's terminal, thereby making it possible to provide personalized notifications at appropriate times based on the user's behavioral patterns and emotions.
[0861] A "means for learning behavioral patterns" is a system or algorithm that analyzes a user's location data and usage history to recognize the user's behavioral habits and tendencies.
[0862] "Means for obtaining weather forecast information" refers to a system or algorithm for obtaining current and future weather information using an external weather forecast API, etc.
[0863] "Means for acquiring traffic information" refers to a system or algorithm for acquiring information on the operation status of public transport and road congestion information, etc., using external traffic information APIs, etc.
[0864] "Means for collecting event information and store flyer information" refers to a system or algorithm that automatically collects information about events being held in a specific area and store sales information from social media, news sites, advertising sites, etc.
[0865] "Means for recognizing emotions" refers to a system or algorithm that analyzes a user's voice data or image data and recognizes the user's emotional state (happiness, sadness, stress, etc.).
[0866] "Means for generating notifications" means a system or algorithm for automatically generating notification content appropriate to the user based on collected information, learned behavioral patterns, and recognized emotions.
[0867] The "means for sending notifications" refers to a system or algorithm for sending the generated notification content to the user's device in real time.
[0868] This invention is a system that provides necessary information at the appropriate time during a user's daily commute or walk, and also recognizes the user's emotions to personalize the notification content. This system is mainly composed of three components: a server, a terminal, and an emotion engine.
[0869] System Overview
[0870] The basic configuration of the system is as follows:
[0871] Server: Learns behavioral patterns, collects information, generates and sends notifications.
[0872] Device: A device where a user enters configuration information and receives notifications.
[0873] Emotion engine: A function for recognizing user emotions from voice data and facial images.
[0874] Program processing
[0875] User Settings and Data Collection
[0876] Users input information about their commute time, the means of transportation they use, the time they wake up, the time they return home, the time they take a walk, etc. The device then sends this information to the server, which then stores it in a database.
[0877] Learning behavioral patterns
[0878] The device periodically collects the user's GPS data and usage history and sends them to a server. The server analyzes this data and uses machine learning algorithms such as Python's Scikit-Learn library to learn the user's behavioral patterns. The learning results are stored in a database and used for future predictions.
[0879] Information gathering
[0880] The server obtains the current day's weather information using a weather forecast API (e.g., OpenWeatherMap API), obtains the status of public transport using a traffic information API (e.g., Google Maps API), and collects event information and store flyer information from social media and news sites.
[0881] Notification Generation and Delivery
[0882] The server generates appropriate notifications for the user based on the collected information and learned behavioral patterns. For example, it generates a weather forecast notification 30 minutes before the predicted wake-up time, and a traffic situation notification 15 minutes before departure time. The generated notifications are sent to the device and displayed to the user via the device's push notification service.
[0883] Emotion Recognition and Notification Personalization
[0884] The emotion engine analyzes the user's voice data and facial expressions to recognize their emotions. The server further personalizes the notification content based on the information from the emotion engine. For example, if the user is feeling stressed, the server may notify them of "information about relaxation events."
[0885] Specific examples
[0886] Commuting Scenario
[0887] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[0888] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[0889] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[0890] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[0891] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[0892] 6. The device displays a notification to the user, who then selects a detour and departs.
[0893] 7. The emotion engine detects the user's stress from voice data collected during the commute.
[0894] 8. Based on this information, the server generates a notification saying, "Would you like to listen to some relaxing music?" and sends it to the device.
[0895] Walking Scenario
[0896] 1. The user enters the setting to take a walk at 18:00 into the device.
[0897] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[0898] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[0899] 4. The server tracks the user's GPS data in real time and generates notifications during a walk such as "A new cafe has opened 500 meters away."
[0900] 5. The device displays a notification to the user, and the user visits the new cafe.
[0901] 6. The emotion engine detects whether the user is enjoying the game from their facial expressions.
[0902] 7. Based on this information, the server generates a notification saying, "Would you like to see a movie playing at a nearby cinema?" and sends it to the device.
[0903] Prompt Sentence Examples
[0904] Example prompt 1: Commuting scenario
[0905] "Set up your commute to wake up at 6:00 and leave at 7:00. Anticipated issues include subway delays and bad weather. Explain the flow for generating notifications and displaying them to the user."
[0906] Example prompt 2: Walking scenario
[0907] "Please set up a walk at 18:00. During the walk, collect information about events and new stores, generate notifications based on that information, and explain the flow of displaying them to the user."
[0908] In this way, the system supports users in their daily commutes and walks, providing timely information tailored to their situation and emotions.
[0909] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0910] Step 1:
[0911] Users input information such as commute time, wake-up time, return home time, and walking time into the terminal.
[0912] Input: User's schedule and transportation information
[0913] How it works: The user enters the required information through the device app.
[0914] Output: The entered configuration information
[0915] Step 2:
[0916] The terminal transmits the setting information to the server.
[0917] Input: The entered configuration information
[0918] How it works: The device converts the collected data into the specified format and sends it to the server using the HTTPS protocol.
[0919] Output: Configuration information sent to the server
[0920] Step 3:
[0921] The server stores the received configuration information in a database.
[0922] Input: Submitted configuration information
[0923] How it works: The server parses the configuration information and stores it in a database, which can be stored in a MySQL database for example.
[0924] Output: Saved configuration information
[0925] Step 4:
[0926] The device periodically collects the user's GPS data and usage history and sends them to the server.
[0927] Input: User's GPS data and usage history
[0928] How it works: The device obtains location information from the built-in GPS module and sends it, along with usage history, to the server.
[0929] Output: GPS data and usage history sent to the server
[0930] Step 5:
[0931] The server analyzes the received GPS data and usage history using machine learning algorithms to learn the user's behavioral patterns.
[0932] Input: GPS data and usage history
[0933] How it works: The server uses Python's Scikit-Learn library to apply clustering algorithms and other techniques to analyze behavioral patterns.
[0934] Output: Learned behavioral patterns
[0935] Step 6:
[0936] The server stores the learned behavioral patterns in a database.
[0937] Input: Learned behavioral patterns
[0938] Operation: The server stores the behavioral patterns in a database for future use.
[0939] Output: Stored behavioral patterns
[0940] Step 7:
[0941] The server uses a weather forecast API to obtain the weather information for the day.
[0942] Input: API request
[0943] How it works: The server sends a request to an external weather API (e.g., OpenWeatherMap API) to retrieve current or future weather data.
[0944] Output: Weather information data
[0945] Step 8:
[0946] The server uses a traffic information API to obtain the operation status of transportation services.
[0947] Input: API request
[0948] How it works: The server sends a request to an external traffic information API (e.g., Google Maps API) to obtain traffic information such as delays and accidents.
[0949] Output: Traffic information data
[0950] Step 9:
[0951] The server collects event information and store flyer information from social media and news sites.
[0952] Input: crawl request
[0953] How it works: The server crawls data from specific websites and social media sites to collect event information and flyers.
[0954] Output: Event information and store flyer information
[0955] Step 10:
[0956] The server generates appropriate notifications for the user based on the aggregated information.
[0957] Input: Weather information, traffic information, event information, learned behavioral patterns
[0958] How it works: The server combines this data and creates optimal notification content based on the user's behavioral patterns.
[0959] Output: Notification content
[0960] Step 11:
[0961] The server sends the generated notification to the terminal.
[0962] Input: Notification content
[0963] How it works: The server generates the notification and sends it to the device's push notification service.
[0964] Output: Notification sent to the device
[0965] Step 12:
[0966] The device displays the notification to the user in real time.
[0967] Input: Notification sent from the server
[0968] How it works: The device displays the content to the user as a push notification.
[0969] Output: The notification displayed to the user
[0970] Step 13:
[0971] The emotion engine analyzes the user's voice data and facial expression images to recognize emotions.
[0972] Input: User's voice data and facial expression images
[0973] How it works: The emotion engine uses deep learning models to analyze audio features and image data to classify emotions.
[0974] Output: Recognized emotion data
[0975] Step 14:
[0976] The server further personalizes the notification content based on the emotional data obtained from the emotion engine.
[0977] Input: Recognized emotion data
[0978] How it works: The server adjusts the notification content based on the emotion data, for example generating a relaxation notification for a user who is feeling stressed.
[0979] Output: personalized notification content
[0980] Step 15:
[0981] The server sends personalized notifications to the device.
[0982] Input: Personalized notification content
[0983] How it works: The server sends personalized notifications to the device, just like regular notifications.
[0984] Output: Personalized notification sent to device
[0985] Step 16:
[0986] The device displays personalized notifications to the user in real time.
[0987] Input: Personalized notification sent from the server
[0988] What it does: The device displays the notification to the user as a push notification.
[0989] Output: The personalized notification displayed to the user
[0990] Step 17:
[0991] The user checks the notification and takes the necessary action.
[0992] Input: Displayed notification
[0993] Action: The user takes an action based on the notification, for example, taking an umbrella, taking a detour, listening to relaxing music, etc.
[0994] Output: User action
[0995] (Application example 2)
[0996] 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."
[0997] Conventional information systems have difficulty providing necessary information at the appropriate time during users' daily commutes, such as commuting to work or school, or taking a walk. Furthermore, they lack the ability to provide personalized notifications based on the user's emotions, meaning that the content of notifications does not fully meet the user's needs. In particular, in autonomous vehicles, real-time information provision and notifications based on emotions are required to improve passenger comfort.
[0998] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0999] In this invention, the server includes means for learning a user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic condition information, means for collecting event information and store flyer information within the user's range of movement, means for recognizing the user's emotions, means for personalizing notification content based on the emotion information, means for generating notifications appropriate for the user, and means for sending the generated notifications to the user's terminal. This enables the user's behavioral patterns and emotions to be analyzed in real time, enabling the provision of comfortable information in an autonomous vehicle and personalized notifications according to the emotions.
[1000] "Behavioral patterns" refer to the characteristics and tendencies of repeated behaviors such as commuting to work, school, walking, etc. in a user's daily life.
[1001] "Weather forecast information" is data relating to meteorological conditions such as future weather, temperature, and probability of precipitation in a specified area.
[1002] "Traffic information" is data on the operation status, delays, accidents, etc. of roads and public transportation in a specified area.
[1003] "Event information" is information about events and activities held within a designated area.
[1004] "Store flyer information" is advertising information such as discount information and new product announcements issued by stores within the user's range of activity.
[1005] "Means for recognizing emotions" refers to technology that uses a camera and microphone to analyze the user's facial expressions and voice to identify their emotional state at any given time.
[1006] "Means for personalizing notification content" refers to technology that generates optimal notifications based on the user's needs and status, based on acquired emotional information and behavioral patterns.
[1007] An "autonomous vehicle" is a vehicle that is capable of some degree of autonomous driving without driver intervention.
[1008] "Analyzing in real time" refers to processing data and generating results immediately as the data is generated.
[1009] "Personalized notifications" are notifications that provide information customized to the needs and circumstances of individual users.
[1010] The system for realizing this invention mainly comprises three components: a server, a terminal (for example, a smartphone), and an emotion recognition engine. Specific embodiments of the invention will be described below.
[1011] System configuration
[1012] server
[1013] The server is responsible for learning user behavior patterns and collecting and analyzing weather forecasts, traffic conditions, event information, store flyer information, etc. It also processes data to personalize notification content based on the user's emotional information.
[1014] Terminal
[1015] The device is mainly a smartphone, and its role is to send the user's input information (destination, departure time, behavioral patterns, etc.) to the server, and display notifications received from the server to the user in real time.The device also uses the camera and microphone to provide the emotion engine with user emotion data.
[1016] Emotion Recognition Engine
[1017] The emotion recognition engine recognizes emotions by analyzing the user's facial expression images and voice data. For example, image analysis algorithms and voice analysis software are used for this purpose. Based on this, it recognizes the user's state of stress or enjoyment and sends that information to the server.
[1018] What the program does
[1019] Get user settings
[1020] The user inputs information such as the destination, departure time, and stopovers into the terminal. This information is sent from the terminal to the server and stored in a database.
[1021] Data collection and analysis
[1022] The device periodically collects the user's location information using GPS and sends it to the server. The server analyzes this data and implements machine learning algorithms to learn the user's behavioral patterns. The server also collects real-time weather and traffic information using weather forecast APIs and traffic information APIs. It also crawls and collects event information and store flyer information from social media and news sites.
[1023] Emotional Data Processing
[1024] Using the device's camera and microphone, the emotion recognition engine analyzes the user's facial expressions and voice, and sends the emotional data to the server, which then personalizes the notification content based on this emotional data.
[1025] Generate and send notifications
[1026] The server generates notifications appropriate for the user based on the collected data and emotional information. For example, based on the weather forecast, it may generate a notification saying, "It's going to rain, so we recommend you take an umbrella," or based on traffic information, it may generate a notification saying, "The subway is delayed, so we recommend you take an alternative route." If the user is feeling stressed, it may generate a notification saying, "Would you like to listen to some relaxing music?", or if the user is enjoying themselves, it may generate a notification saying, "Would you like to join a nearby event?" All of these notifications are sent to the device in real time.
[1027] Specific examples
[1028] Commuting Scenario
[1029] Users input their destination into the application, and the self-driving vehicle calculates the route based on that information. After departure, the server generates a notification based on the weather forecast for the route the self-driving vehicle will take, saying, "It looks like it might rain along the way, so you'd better bring an umbrella," and sends this to the smartphone application. The camera and microphone analyze the passenger's facial expressions and voice, and if it detects that the passenger is feeling stressed, it generates a notification saying, "Would you like to listen to some relaxing music?" and sends this to the smartphone application.
[1030] Example prompts for generative AI models
[1031] "To improve passenger comfort in autonomous vehicles, please create a program to implement a system that analyzes passenger emotions in real time and provides relaxing music if the passenger is feeling stressed, or notifies the passenger of nearby event information if the passenger is having fun."
[1032] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1033] Step 1:
[1034] The user opens the smartphone application and inputs information such as the destination, departure time, and stopovers. The input information is sent to the device and stored on the server. An example of input data might be "Departure time from home to work is 7:30." The server then writes this data into a database.
[1035] Step 2:
[1036] The device uses its GPS function to periodically obtain the user's current location. Updated location information is sent to the server every few seconds. The input data is the user's current location coordinate data, which the server receives and records in a database in real time.
[1037] Step 3:
[1038] The server uses a machine learning algorithm to learn the user's behavioral patterns. This is done using the user's GPS data and past usage history. The input data is the user's location history and behavioral history data, and the server uses this to train a model that predicts the user's next behavior. The output is a behavioral pattern prediction model.
[1039] Step 4:
[1040] The server accesses the weather forecast API and obtains weather information for the specified area. The input data is the "location information of the specified area," and the data obtained is "weather, temperature, precipitation probability, etc. for that area." The server analyzes this data, extracts the necessary weather information, and saves it.
[1041] Step 5:
[1042] The server accesses the traffic information API and obtains the traffic conditions along the user's route. The input data is "information about the specified route," and the data obtained is "information about route delays, accidents, etc." The server analyzes this data, extracts appropriate traffic-related information, and stores it.
[1043] Step 6:
[1044] The server crawls and collects information about events and store flyers within the user's range of activity from social media and news sites. The input data is "location information within the user's range of activity," and the output data is "event information and discount flyer information." This data is also stored on the server.
[1045] Step 7:
[1046] Using the device's camera and microphone, the emotion recognition engine analyzes the user's facial expressions and voice. The input data is "video and audio data," and the emotion recognition engine analyzes it to generate "user emotion data" (for example, whether the user is feeling stressed or enjoying themselves). This emotion data is also sent to the server.
[1047] Step 8:
[1048] The server generates notifications appropriate for the user based on the collected data and emotional information. For example, it generates a notification based on the weather forecast saying, "It's going to rain, so we recommend you take an umbrella," or based on traffic information, a notification saying, "The subway is delayed, so we recommend you take an alternative route." The input data is "weather information, traffic information, emotional data," and the output is a "personalized notification message."
[1049] Step 9:
[1050] If the user is feeling stressed, the server generates a notification saying, "Would you like to listen to some relaxing music?" If the user is enjoying themselves, the server generates a notification saying, "Would you like to join a nearby event?" This notification is also sent to the device in real time. The input data is "emotion data," and the output is "a notification message that promotes stress reduction or enjoyment."
[1051] Step 10:
[1052] The device displays the received notification to the user in real time. The user can check the notification content and take necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, playing relaxing music, visiting a new cafe, etc.). Specifically, the user can tap the notification on their smartphone to check more information or take action immediately.
[1053] 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.
[1054] 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.
[1055] 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.
[1056] [Third embodiment]
[1057] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1058] 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.
[1059] 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).
[1060] 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.
[1061] 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.
[1062] 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).
[1063] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1064] 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.
[1065] 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.
[1066] 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.
[1067] 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.
[1068] 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."
[1069] This invention is a system that provides necessary information at appropriate times to users during their daily commutes to work or school, or when they are out walking. Below, we will explain the program processing of this system in natural language, with concrete examples.
[1070] System Overview
[1071] This system learns the user's behavioral patterns and generates appropriate notifications based on real-time weather forecasts, traffic conditions, event information, and store flyer information, and sends them to the user's device.The system is mainly composed of two components: a server and a device.
[1072] Program processing
[1073] 1. Get user settings:
[1074] The user inputs the commute time and the means of transportation they will use into the terminal.
[1075] The terminal sends this setting information to the server, which stores it in a database.
[1076] 2. Learning behavioral patterns:
[1077] The device periodically collects the user's GPS data and usage history and sends them to the server.
[1078] The server analyzes this data and uses machine learning algorithms to learn user behavior patterns.
[1079] The learning results are stored in a database and will be used for future predictions.
[1080] 3. Aggregation of information:
[1081] The server obtains the current day's weather information from the weather forecast API.
[1082] The server obtains the operation status of public transport from the traffic information API.
[1083] The server collects information about nearby events and store flyers from social media and news sites.
[1084] 4. Notification Generation and Sending:
[1085] The server uses this aggregated information to generate notifications appropriate for the user.
[1086] The content and timing of notifications are adjusted based on predicted behavioral patterns (e.g., wake-up time, departure time).
[1087] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[1088] Specific examples
[1089] Commuting Scenario
[1090] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[1091] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[1092] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[1093] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[1094] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[1095] 6. The device displays a notification to the user, who then selects a detour and departs.
[1096] Walking Scenario
[1097] 1. The user enters the setting to take a walk at 18:00 into the device.
[1098] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[1099] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[1100] 4. The server tracks the user's GPS data in real time and generates a notification to the device during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1101] 5. The device displays a notification to the user, and the user visits the new cafe.
[1102] In this way, the system learns the user's behavioral patterns and provides necessary information at the appropriate time, thereby supporting the user's daily life.
[1103] The processing flow will be explained below.
[1104] Step 1:
[1105] Users input their commute time and the transportation they will use into the device. They also set their wake-up time, return home time, and walk times.
[1106] Step 2:
[1107] The device checks the entered setting information and sends it to the server, which stores it in a database.
[1108] Step 3:
[1109] The device periodically collects the user's GPS data and usage history and sends it to a server, which analyzes the data and uses machine learning algorithms to learn the user's behavioral patterns.
[1110] Step 4:
[1111] The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, commute time to school, and walking time.
[1112] Step 5:
[1113] The server queries the weather API to get the weather information for the day, including whether it's raining, sunny, and the temperature.
[1114] Step 6:
[1115] The server queries the traffic information API to obtain the operation status of the transportation facility in use, including information on delays, accidents, etc.
[1116] Step 7:
[1117] The server crawls social media and news sites to collect information about events and store flyers within the user's area of activity.
[1118] Step 8:
[1119] The server generates appropriate notifications for the user based on the aggregated information, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[1120] Step 9:
[1121] The server generates a notification based on traffic conditions 15 minutes before the user's scheduled departure time, such as "Subway Line 1 is delayed due to an accident. We recommend you take a detour."
[1122] Step 10:
[1123] The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[1124] Step 11:
[1125] The server tracks the user's GPS data in real time and generates notifications during a walk such as, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1126] Step 12:
[1127] The server generates notifications and sends them to the device, which displays them to the user in real time.
[1128] Step 13:
[1129] The user checks the notification and takes necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, visiting a new cafe, etc.).
[1130] This series of processes enables users to commute to work or school or take a walk more comfortably. The system supports daily life by quickly responding to changes in weather and traffic conditions and providing users with the information they need in a timely manner.
[1131] Example 1
[1132] 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."
[1133] In modern society, users' daily commutes, school commutes, and walks vary widely, and the information they require is also diverse. However, conventional systems have had the problem of making it difficult to provide this information in a timely and unified manner. In particular, there was no system that could obtain weather forecasts, traffic conditions, event information, advertising information, and other information in real time and provide timely notifications based on users' behavioral patterns. This required users to take the time to check the information they needed one by one, which hindered their efficient behavior.
[1134] 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.
[1135] In this invention, the server includes a means for acquiring and storing user settings, a means for analyzing and predicting behavioral patterns using a machine learning algorithm, and a means for collecting information in real time and adjusting notifications, thereby enabling weather forecasts, traffic conditions, event information, and advertising information to be notified in real time at appropriate times based on the user's behavioral patterns.
[1136] "User settings" refers to information that a user enters into the system to identify their behavioral patterns, such as their commute time and the means of transportation they use.
[1137] "Behavioral patterns" refers to data on the user's daily behavioral tendencies and habits, such as departure time and route taken.
[1138] "Weather forecast information" is weather forecast information for a specific date and time based on meteorological data.
[1139] "Traffic information" refers to real-time information on the operation status of public transport and traffic congestion.
[1140] "Event information" is information about events held in a specific region or period.
[1141] "Advertising information" is commercial information such as special offers and sales information provided by stores and services.
[1142] "Notification" refers to information sent from the system to users, including weather forecasts, traffic conditions, event information, and advertising information.
[1143] "Terminal" refers to a device used by a user, such as a smartphone or tablet, or other information and communication device.
[1144] A "server" is a computer system for processing information and storing and transmitting various data.
[1145] A "machine learning algorithm" is a computational method for recognizing patterns and building predictive models based on data analysis.
[1146] This invention is a system that provides necessary information at the appropriate time during users' daily commutes to work or school, or while walking. This system consists of two components: a server and a terminal.
[1147] System Overview
[1148] Retrieving User Settings
[1149] Users input their commute time and the mode of transportation they will use into their device, which then sends this information to the server, which stores it in a database.
[1150] Learning behavioral patterns
[1151] The device periodically collects the user's location data and sends it to the server. The server analyzes this data and uses machine learning algorithms (e.g., random forests) to learn behavioral patterns. The learning results are stored in a database and used for future predictions.
[1152] Aggregation of information
[1153] The server uses external APIs (e.g., weather information API, traffic information API) to obtain weather forecast information and traffic information. The server also uses web scraping technology to collect event information and advertising information from social media and news sites.
[1154] Generate and send notifications
[1155] The server generates notifications appropriate for the user based on the aggregated information. The content and timing of the notifications are adjusted based on predicted behavioral patterns. The generated notifications are sent from the server to the device and displayed to the user in real time.
[1156] Specific examples
[1157] Commuting Scenario
[1158] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[1159] 2. The server retrieves "rain" information from the weather information API before the predicted wake-up time.
[1160] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[1161] 4. At 6:45, the server receives information from the traffic information API that "the subway is delayed due to an accident."
[1162] 5. The server generates a notification saying, "The subway is delayed due to an accident, so we recommend that you take a detour," and sends it to the device.
[1163] 6. The device displays a notification to the user, who then selects a detour and departs.
[1164] Walking Scenario
[1165] 1. The user enters the setting to take a walk at 18:00 into the device.
[1166] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[1167] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[1168] 4. The server tracks the user's location data in real time and generates a notification to the device during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1169] 5. The device displays a notification to the user, and the user visits the new cafe.
[1170] Prompt Sentence Examples
[1171] You can ask a generative AI model to describe a specific system using the following prompt:
[1172] Design a system that provides appropriate information in real time based on a user's commute and walking patterns. Please explain the specific steps for generating notifications for weather forecasts, traffic conditions, event information, and advertising information. Please also provide a detailed description of the process and specific behavior of each step. Please also include the names of any tools or APIs you use.
[1173] In this way, the system learns the user's behavioral patterns and provides necessary information at the appropriate time, thereby supporting the user's daily life.
[1174] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1175] Step 1:
[1176] The user inputs information about their commute time and the mode of transportation they will use into their device. The input data includes the departure time (e.g., 7:00), return time (e.g., 18:00), and the mode of transportation they will use (e.g., subway line 1). The device then sends this setting information to the server. The server stores the received setting information in a database and uses it for subsequent processing.
[1177] Step 2:
[1178] The device periodically collects the user's location data and sends it to the server. The location data is collected using the device's GPS function and sent to the server as a batch process at regular intervals (e.g., every 10 minutes). The server analyzes the received location data and uses a machine learning algorithm (e.g., random forest) to learn the user's behavioral patterns. The analysis results are stored in a database and used for future predictions.
[1179] Step 3:
[1180] The server uses external APIs (e.g., weather information API, traffic information API) to obtain weather forecast information and traffic information. The server periodically sends requests to specified API endpoints and stores the obtained data in an internal database. In parallel with this, the server uses web scraping technology to collect event information and advertising information from social media and news sites. This is also done periodically, and the collected data is stored in a database.
[1181] Step 4:
[1182] The server generates notifications appropriate for the user based on the aggregated information. It uses acquired weather forecast information, traffic information, event information, advertising information, and predicted user behavior patterns as input data to generate highly relevant notifications. For example, if it is raining, it will create a notification saying, "It will rain today, so it would be a good idea to take an umbrella." The content and timing of the generated notification are adjusted based on predicted behavior patterns (e.g., wake-up time, departure time).
[1183] Step 5:
[1184] The server sends the generated notification to the device and displays it to the user in real time. The server uses a push notification service (e.g., Firebase Cloud Messaging) to send the generated notification to the device. The device immediately displays the received notification and helps the user take appropriate action. Specifically, the push notification triggers the notification to be displayed on the notification screen, allowing the user to check the information.
[1185] (Application example 1)
[1186] 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."
[1187] Conventional information systems provided for commuting, school, and walks are mainly limited to weather forecasts and traffic information, and have the problem of being unable to accommodate the diverse interests of users. Furthermore, it is difficult to provide personalized information based on users' behavioral patterns and interests, and notifications at the appropriate time in real time are insufficient. This can result in users being unable to receive the appropriate information when they need it, reducing the convenience of their daily lives.
[1188] 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.
[1189] In this invention, the server includes means for learning the user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic information, means for collecting event information and store flyer information within the user's range of activity, means for collecting content information (videos, news articles, music playlists, etc.) in real time, means for generating appropriate notifications for the user, and means for sending the generated notifications to the user's terminal, thereby enabling personalized information based on the user's behavioral patterns and interests to be provided in real time at an appropriate timing.
[1190] "Behavioral patterns" refer to the regularity and tendencies of a user's daily actions and behavior, including the time of day they commute to work or school and the places they visit.
[1191] "Notification generation" refers to the process of generating information to be distributed to the user and sending it to the user's terminal in an appropriate format.
[1192] "Weather forecast information" is information about weather predicted based on meteorological data, including temperature, precipitation, wind speed, etc.
[1193] "Traffic condition information" is information that indicates the operation status of transportation facilities and the congestion status of roads.
[1194] "Event information" is information about events and activities held within the area of activity.
[1195] "Store flyer information" refers to promotional information such as discounts and campaigns offered by retail stores.
[1196] "Content information" is a general term for information according to the medium and format that a user can access, and includes videos, news articles, music playlists, and the like.
[1197] "GPS data" refers to data indicating location information obtained by the Global Positioning System, and is used to identify a user's current location and travel route.
[1198] "Usage history" refers to a record of the actions and browsing a user performs through a device or application, including the content viewed and the places visited.
[1199] "Real-time" refers to processing and providing data simultaneously with actual time.
[1200] "Interests" refers to areas or topics in which you are particularly interested or concerned.
[1201] "Personalized information" refers to information that provides specific content individually based on the individual requests and actions of each user.
[1202] This invention is a system for learning user behavior patterns and providing appropriate information in real time. The processing contents of the program for realizing this system will be explained below.
[1203] Hardware and software used
[1204] 1. Hardware
[1205] Smartphone: Used as a user device to receive and display notifications.
[1206] Server: Analyzes data, aggregates information, and generates notifications.
[1207] 2. Software
[1208] Mobile app: Developed in Swift (for iOS) and Kotlin (for Android), it retrieves user settings and displays notifications.
[1209] Server-side program: Uses Python, Flask, and RESTful APIs to handle communication processing and database management.
[1210] Database: MySQL and MongoDB are used to store user data and learning results.
[1211] External API: Use OpenWeatherMap API (weather forecast), Google Maps API (traffic information), etc. to obtain the necessary information.
[1212] Machine learning libraries: TensorFlow and PyTorch are used to learn and analyze behavioral patterns.
[1213] Program processing
[1214] 1. Get user settings
[1215] Users enter their commute time, the means of transportation they use, and their interests and concerns into a smartphone app.
[1216] The terminal sends this setting information to the server, which stores it in a database.
[1217] 2. Learning behavioral patterns
[1218] The terminal periodically acquires the user's GPS data and usage history and sends them to the server.
[1219] The server analyzes this data using machine learning algorithms (e.g., TensorFlow, PyTorch) to learn user behavior patterns.
[1220] The learning results are stored in a database and will be used for future predictions.
[1221] 3. Aggregation of information
[1222] The server obtains the current day's weather information from a weather forecast API (e.g., OpenWeatherMap API).
[1223] The server obtains the operation status of public transport from a traffic information API (e.g., Google Maps API).
[1224] The server collects information about nearby events and store flyers from social media and news sites.
[1225] The server obtains content information such as videos and music playlists from content distribution APIs (e.g., YouTube API, Spotify API).
[1226] 4. Generating and Sending Notifications
[1227] The server uses this aggregated information to generate notifications appropriate for the user.
[1228] The content and timing of notifications are tailored based on predicted behavioral patterns (e.g., wake-up time, departure time) and interests.
[1229] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[1230] Specific examples
[1231] 1. New Morning News Video Notification
[1232] Users have the habit of watching the latest news videos during their morning commute.
[1233] At 6:25, the server generates a notification recommending the latest news video and sends it to the device.
[1234] The device will display "Check out this morning's latest news," helping users watch news videos during their commute.
[1235] 2. Lunchtime music playlist notification
[1236] Users often listen to music during their lunch break.
[1237] At 11:55, the server generates a notification recommending a new music playlist and sends it to the device.
[1238] The device will display a notification saying "A new music playlist has been added!", allowing users to enjoy new music during their lunch break.
[1239] Prompt Sentence Examples
[1240] 1. News video notification generation:
[1241] "News video, morning commute, 6:25 AM"
[1242] 2. Music playlist notification generation:
[1243] "Music playlist, lunch break, 11:55 AM"
[1244] These prompts are fed into a generative AI model and used to generate appropriate notifications based on the user's behavioral patterns and interests.
[1245] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1246] Step 1:
[1247] Retrieving User Settings
[1248] Users enter their commute time, the means of transportation they use, and their interests and concerns into a smartphone app.
[1249] Input: Commuting time, transportation used, interests
[1250] Data processing: The entered information is encoded in JSON format.
[1251] Output: Encoded user preference data
[1252] The terminal sends this setting information to the server, which stores it in a database.
[1253] Input: Encoded user preference data
[1254] Data calculation: The server stores the received data in a database.
[1255] Output: User preferences stored in the database
[1256] Step 2:
[1257] Learning behavioral patterns
[1258] The device periodically collects the user's GPS data and usage history and sends them to the server.
[1259] Input: User's GPS data, usage history
[1260] Data processing: GPS data is stored as location information, and usage history is categorized as content viewed, places visited, etc.
[1261] Output: Organized user data
[1262] The server analyzes this data using machine learning algorithms (e.g., TensorFlow, PyTorch) to learn user behavior patterns.
[1263] Input: Organized user data
[1264] Data computation: Using machine learning algorithms to generate models of behavioral patterns.
[1265] Output: Learned behavioral pattern model
[1266] The learning results are stored in a database and will be used for future predictions.
[1267] Input: Learned behavioral pattern model
[1268] Data calculation: Save the model parameters in the database.
[1269] Output: Model parameters stored in a database
[1270] Step 3:
[1271] Aggregation of information
[1272] The server obtains the current day's weather information from a weather forecast API (e.g., OpenWeatherMap API).
[1273] Input: Weather API request
[1274] Data calculation: Analyze the response from the API and extract weather information.
[1275] Output: Today's weather information
[1276] The server obtains the operation status of public transport from a traffic information API (e.g., Google Maps API).
[1277] Input: Traffic information API request
[1278] Data calculation: Analyzes the response from the API and extracts traffic conditions.
[1279] Output: Traffic status information
[1280] The server collects information about nearby events and store flyers from social media and news sites.
[1281] Input: Scraping requests from social media and news sites
[1282] Data calculation: Analyze the scraping results to extract event and flyer information.
[1283] Output: Local event information, store flyer information
[1284] The server obtains content information such as videos and music playlists from content distribution APIs (e.g., YouTube API, Spotify API).
[1285] Input: Content Delivery API request
[1286] Data calculation: Analyzes the response from the API and extracts content information.
[1287] Output: Content information (videos, music playlists, etc.)
[1288] Step 4:
[1289] Generate and send notifications
[1290] The server uses this aggregated information to generate notifications appropriate for the user.
[1291] Input: Learned behavioral pattern model, aggregated information
[1292] Data calculations: Generate notifications based on model predictions.
[1293] Output: The generated notification
[1294] The content and timing of notifications are tailored based on predicted behavioral patterns (e.g., wake-up time, departure time) and interests.
[1295] Input: Generated notification
[1296] Data calculations: Adjusting timing and content to customize notifications
[1297] Output: Customized notification
[1298] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[1299] Input: Customized notification
[1300] Data calculation: Sending notifications via HTTP requests
[1301] Output: Notification displayed on the user's device
[1302] 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.
[1303] This invention is a system that provides necessary information at the appropriate time during a user's daily commute to work or school or during a walk, and recognizes the user's emotions to further personalize the notification content. Below, the program processing of this system is explained in natural language, with concrete examples.
[1304] System Overview
[1305] This system learns the user's behavioral patterns and generates appropriate notifications based on real-time weather forecasts, traffic conditions, event information, and store flyer information, and sends them to the user's device. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, it provides a function to personalize the notification content according to the user's emotions. The system mainly consists of three components: a server, a device, and an emotion engine.
[1306] Program processing
[1307] 1. Get user settings:
[1308] Users input information about their commute time and the means of transportation they will use into the device, as well as set wake-up times, return home times, and walk times.
[1309] 2. The device checks the entered setting information and sends it to the server, which stores it in a database.
[1310] 3. The device periodically collects the user's GPS data and usage history and sends them to the server, which analyzes this data and uses machine learning algorithms to learn the user's behavioral patterns.
[1311] 4. The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, commute time to school, walking time, etc.
[1312] 5. The server queries the weather API to get the weather information for the day, including whether it will rain, be sunny, and the temperature.
[1313] 6. The server queries the traffic information API to obtain the operation status of the transportation facility being used, including information on delays, accidents, etc.
[1314] 7. The server crawls social media and news sites to collect event information and store flyers within the user's area of activity.
[1315] 8. The server generates appropriate notifications for the user based on the aggregated information, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[1316] 9. The server generates a notification based on traffic conditions 15 minutes before the departure time set by the user. For example, it generates a notification such as, "Subway Line 1 is delayed due to an accident. We recommend you take a detour."
[1317] 10. The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[1318] 11. The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1319] 12. The emotion engine analyzes the user's voice data and facial expression images to recognize the user's emotions.
[1320] 13. The server further personalizes the notification content based on the emotional information obtained from the emotion engine. For example, if the user is feeling stressed, the server notifies the user of event information related to relaxation.
[1321] 14. The server sends the generated notifications to the device, which displays them to the user in real time.
[1322] 15. The user checks the notification and takes necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, visiting a new cafe, etc.).
[1323] Specific examples
[1324] Commuting Scenario
[1325] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[1326] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[1327] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[1328] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[1329] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[1330] 6. The device displays a notification to the user, who then selects a detour and departs.
[1331] 7. The emotion engine detects the user's stress from voice data collected during the commute.
[1332] 8. Based on this information, the server generates a notification saying, "Would you like to listen to some relaxing music?" and sends it to the device.
[1333] Walking Scenario
[1334] 1. The user enters the setting to take a walk at 18:00 into the device.
[1335] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[1336] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[1337] 4. The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1338] 5. The device displays a notification to the user, and the user visits the new cafe.
[1339] 6. The emotion engine detects whether the user is enjoying the game from their facial expressions.
[1340] 7. Based on this information, the server generates a notification saying, "Would you like to see a movie playing at a nearby cinema?" and sends it to the device.
[1341] This series of processes enables users to go to work or school or take a walk more comfortably. The system supports daily life by providing necessary information in a timely manner based on weather, traffic conditions, and even the user's emotions.
[1342] The processing flow will be explained below.
[1343] Step 1:
[1344] Users input their commute times, wake-up times, and the means of transportation they will use into the device, as well as set times for walking and other planned activities.
[1345] Step 2:
[1346] The device checks the entered setting information and sends it to the server, which stores it in a database.
[1347] Step 3:
[1348] The device periodically collects the user's GPS data and usage history and sends it to a server, which analyzes this data and uses machine learning algorithms to learn the user's behavioral patterns.
[1349] Step 4:
[1350] The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, and walking time.
[1351] Step 5:
[1352] The server queries the weather forecast API to obtain the weather information for the day, including whether it will rain, be sunny, and the temperature.
[1353] Step 6:
[1354] The server queries the traffic information API to obtain the operation status of the transportation facility in use, including delays, accidents, etc.
[1355] Step 7:
[1356] The server crawls social media and news sites to collect information about events and store flyers within the user's area of activity.
[1357] Step 8:
[1358] The emotion engine acquires and analyzes the user's voice data and facial expression images to recognize the user's emotions. The recognized emotion data is then sent to the server.
[1359] Step 9:
[1360] The server generates appropriate notifications for the user based on the aggregated information and emotional data, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[1361] Step 10:
[1362] The server generates a notification based on traffic conditions and the user's emotional data 15 minutes before the departure time set by the user. For example, it generates a notification such as "Subway Line 1 is delayed due to an accident, so we recommend you take a detour" or "You seem to be feeling depressed, so please leave early and take a break at a cafe to refresh yourself."
[1363] Step 11:
[1364] The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[1365] Step 12:
[1366] The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer." Based on information from the emotion engine, it can also add a message that corresponds to the user's emotion, such as, "Why not try the new cafe to celebrate?"
[1367] Step 13:
[1368] The server generates notifications and sends them to the terminal, which displays them to the user in real time.
[1369] Step 14:
[1370] Users check the notification and take necessary actions (e.g., leave earlier, bring an umbrella, visit a new cafe, etc.) and also take into account advice based on their emotions.
[1371] This series of processes allows users to go to work or school or take a walk more comfortably. The system supports users' daily lives by providing necessary information in a timely manner according to changes in weather and traffic conditions, as well as their emotions.
[1372] Example 2
[1373] 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."
[1374] Conventional systems provide notifications for daily activities such as commuting to work or school, walking, etc., but lack the ability to recognize the user's emotions and personalize the notification content. As a result, notifications often do not match the user's situation or emotions, reducing the effectiveness of notifications. In addition, real-time information collection and timely notification generation are not adequately performed, which can result in users not receiving the information they need.
[1375] 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.
[1376] In this invention, the server includes means for learning a user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic condition information, means for collecting event information and store flyer information within the user's range of activity, means for recognizing the user's emotions, means for generating appropriate notifications for the user, and means for transmitting the generated notifications to the user's terminal, thereby making it possible to provide personalized notifications at appropriate times based on the user's behavioral patterns and emotions.
[1377] A "means for learning behavioral patterns" is a system or algorithm that analyzes a user's location data and usage history to recognize the user's behavioral habits and tendencies.
[1378] "Means for obtaining weather forecast information" refers to a system or algorithm for obtaining current and future weather information using an external weather forecast API, etc.
[1379] "Means for acquiring traffic information" refers to a system or algorithm for acquiring information on the operation status of public transport and road congestion information, etc., using external traffic information APIs, etc.
[1380] "Means for collecting event information and store flyer information" refers to a system or algorithm that automatically collects information about events being held in a specific area and store sales information from social media, news sites, advertising sites, etc.
[1381] "Means for recognizing emotions" refers to a system or algorithm that analyzes a user's voice data or image data and recognizes the user's emotional state (happiness, sadness, stress, etc.).
[1382] "Means for generating notifications" means a system or algorithm for automatically generating notification content appropriate to the user based on collected information, learned behavioral patterns, and recognized emotions.
[1383] The "means for sending notifications" refers to a system or algorithm for sending the generated notification content to the user's device in real time.
[1384] This invention is a system that provides necessary information at the appropriate time during a user's daily commute or walk, and also recognizes the user's emotions to personalize the notification content. This system is mainly composed of three components: a server, a terminal, and an emotion engine.
[1385] System Overview
[1386] The basic configuration of the system is as follows:
[1387] Server: Learns behavioral patterns, collects information, generates and sends notifications.
[1388] Device: A device where a user enters configuration information and receives notifications.
[1389] Emotion engine: A function for recognizing user emotions from voice data and facial images.
[1390] Program processing
[1391] User Settings and Data Collection
[1392] Users input information about their commute time, the means of transportation they use, the time they wake up, the time they return home, the time they take a walk, etc. The device then sends this information to the server, which then stores it in a database.
[1393] Learning behavioral patterns
[1394] The device periodically collects the user's GPS data and usage history and sends them to a server. The server analyzes this data and uses machine learning algorithms such as Python's Scikit-Learn library to learn the user's behavioral patterns. The learning results are stored in a database and used for future predictions.
[1395] Information gathering
[1396] The server obtains the current day's weather information using a weather forecast API (e.g., OpenWeatherMap API), obtains the status of public transport using a traffic information API (e.g., Google Maps API), and collects event information and store flyer information from social media and news sites.
[1397] Notification Generation and Delivery
[1398] The server generates appropriate notifications for the user based on the collected information and learned behavioral patterns. For example, it generates a weather forecast notification 30 minutes before the predicted wake-up time, and a traffic situation notification 15 minutes before departure time. The generated notifications are sent to the device and displayed to the user via the device's push notification service.
[1399] Emotion Recognition and Notification Personalization
[1400] The emotion engine analyzes the user's voice data and facial expressions to recognize their emotions. The server further personalizes the notification content based on the information from the emotion engine. For example, if the user is feeling stressed, the server may notify them of "information about relaxation events."
[1401] Specific examples
[1402] Commuting Scenario
[1403] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[1404] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[1405] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[1406] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[1407] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[1408] 6. The device displays a notification to the user, who then selects a detour and departs.
[1409] 7. The emotion engine detects the user's stress from voice data collected during the commute.
[1410] 8. Based on this information, the server generates a notification saying, "Would you like to listen to some relaxing music?" and sends it to the device.
[1411] Walking Scenario
[1412] 1. The user enters the setting to take a walk at 18:00 into the device.
[1413] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[1414] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[1415] 4. The server tracks the user's GPS data in real time and generates notifications during a walk such as "A new cafe has opened 500 meters away."
[1416] 5. The device displays a notification to the user, and the user visits the new cafe.
[1417] 6. The emotion engine detects whether the user is enjoying the game from their facial expressions.
[1418] 7. Based on this information, the server generates a notification saying, "Would you like to see a movie playing at a nearby cinema?" and sends it to the device.
[1419] Prompt Sentence Examples
[1420] Example prompt 1: Commuting scenario
[1421] "Set up your commute to wake up at 6:00 and leave at 7:00. Anticipated issues include subway delays and bad weather. Explain the flow for generating notifications and displaying them to the user."
[1422] Example prompt 2: Walking scenario
[1423] "Please set up a walk at 18:00. During the walk, collect information about events and new stores, generate notifications based on that information, and explain the flow of displaying them to the user."
[1424] In this way, the system supports users in their daily commutes and walks, providing timely information tailored to their situation and emotions.
[1425] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1426] Step 1:
[1427] Users input information such as commute time, wake-up time, return home time, and walking time into the terminal.
[1428] Input: User's schedule and transportation information
[1429] How it works: The user enters the required information through the device app.
[1430] Output: The entered configuration information
[1431] Step 2:
[1432] The terminal transmits the setting information to the server.
[1433] Input: The entered configuration information
[1434] How it works: The device converts the collected data into the specified format and sends it to the server using the HTTPS protocol.
[1435] Output: Configuration information sent to the server
[1436] Step 3:
[1437] The server stores the received configuration information in a database.
[1438] Input: Submitted configuration information
[1439] How it works: The server parses the configuration information and stores it in a database, which can be stored in a MySQL database for example.
[1440] Output: Saved configuration information
[1441] Step 4:
[1442] The device periodically collects the user's GPS data and usage history and sends them to the server.
[1443] Input: User's GPS data and usage history
[1444] How it works: The device obtains location information from the built-in GPS module and sends it, along with usage history, to the server.
[1445] Output: GPS data and usage history sent to the server
[1446] Step 5:
[1447] The server analyzes the received GPS data and usage history using machine learning algorithms to learn the user's behavioral patterns.
[1448] Input: GPS data and usage history
[1449] How it works: The server uses Python's Scikit-Learn library to apply clustering algorithms and other techniques to analyze behavioral patterns.
[1450] Output: Learned behavioral patterns
[1451] Step 6:
[1452] The server stores the learned behavioral patterns in a database.
[1453] Input: Learned behavioral patterns
[1454] Operation: The server stores the behavioral patterns in a database for future use.
[1455] Output: Stored behavioral patterns
[1456] Step 7:
[1457] The server uses a weather forecast API to obtain the weather information for the day.
[1458] Input: API request
[1459] How it works: The server sends a request to an external weather API (e.g., OpenWeatherMap API) to retrieve current or future weather data.
[1460] Output: Weather information data
[1461] Step 8:
[1462] The server uses a traffic information API to obtain the operation status of transportation services.
[1463] Input: API request
[1464] How it works: The server sends a request to an external traffic information API (e.g., Google Maps API) to obtain traffic information such as delays and accidents.
[1465] Output: Traffic information data
[1466] Step 9:
[1467] The server collects event information and store flyer information from social media and news sites.
[1468] Input: crawl request
[1469] How it works: The server crawls data from specific websites and social media sites to collect event information and flyers.
[1470] Output: Event information and store flyer information
[1471] Step 10:
[1472] The server generates appropriate notifications for the user based on the aggregated information.
[1473] Input: Weather information, traffic information, event information, learned behavioral patterns
[1474] How it works: The server combines this data and creates optimal notification content based on the user's behavioral patterns.
[1475] Output: Notification content
[1476] Step 11:
[1477] The server sends the generated notification to the terminal.
[1478] Input: Notification content
[1479] How it works: The server generates the notification and sends it to the device's push notification service.
[1480] Output: Notification sent to the device
[1481] Step 12:
[1482] The device displays the notification to the user in real time.
[1483] Input: Notification sent from the server
[1484] How it works: The device displays the content to the user as a push notification.
[1485] Output: The notification displayed to the user
[1486] Step 13:
[1487] The emotion engine analyzes the user's voice data and facial expression images to recognize emotions.
[1488] Input: User's voice data and facial expression images
[1489] How it works: The emotion engine uses deep learning models to analyze audio features and image data to classify emotions.
[1490] Output: Recognized emotion data
[1491] Step 14:
[1492] The server further personalizes the notification content based on the emotional data obtained from the emotion engine.
[1493] Input: Recognized emotion data
[1494] How it works: The server adjusts the notification content based on the emotion data, for example generating a relaxation notification for a user who is feeling stressed.
[1495] Output: personalized notification content
[1496] Step 15:
[1497] The server sends personalized notifications to the device.
[1498] Input: Personalized notification content
[1499] How it works: The server sends personalized notifications to the device, just like regular notifications.
[1500] Output: Personalized notification sent to device
[1501] Step 16:
[1502] The device displays personalized notifications to the user in real time.
[1503] Input: Personalized notification sent from the server
[1504] What it does: The device displays the notification to the user as a push notification.
[1505] Output: The personalized notification displayed to the user
[1506] Step 17:
[1507] The user checks the notification and takes the necessary action.
[1508] Input: Displayed notification
[1509] Action: The user takes an action based on the notification, for example, taking an umbrella, taking a detour, listening to relaxing music, etc.
[1510] Output: User action
[1511] (Application example 2)
[1512] 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."
[1513] Conventional information systems have difficulty providing necessary information at the appropriate time during users' daily commutes, such as commuting to work or school, or taking a walk. Furthermore, they lack the ability to provide personalized notifications based on the user's emotions, meaning that the content of notifications does not fully meet the user's needs. In particular, in autonomous vehicles, real-time information provision and notifications based on emotions are required to improve passenger comfort.
[1514] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1515] In this invention, the server includes means for learning a user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic condition information, means for collecting event information and store flyer information within the user's range of movement, means for recognizing the user's emotions, means for personalizing notification content based on the emotion information, means for generating notifications appropriate for the user, and means for sending the generated notifications to the user's terminal. This enables the user's behavioral patterns and emotions to be analyzed in real time, enabling the provision of comfortable information in an autonomous vehicle and personalized notifications according to the emotions.
[1516] "Behavioral patterns" refer to the characteristics and tendencies of repeated behaviors such as commuting to work, school, walking, etc. in a user's daily life.
[1517] "Weather forecast information" is data relating to meteorological conditions such as future weather, temperature, and probability of precipitation in a specified area.
[1518] "Traffic information" is data on the operation status, delays, accidents, etc. of roads and public transportation in a specified area.
[1519] "Event information" is information about events and activities held within a designated area.
[1520] "Store flyer information" is advertising information such as discount information and new product announcements issued by stores within the user's range of activity.
[1521] "Means for recognizing emotions" refers to technology that uses a camera and microphone to analyze the user's facial expressions and voice to identify their emotional state at any given time.
[1522] "Means for personalizing notification content" refers to technology that generates optimal notifications based on the user's needs and status, based on acquired emotional information and behavioral patterns.
[1523] An "autonomous vehicle" is a vehicle that is capable of some degree of autonomous driving without driver intervention.
[1524] "Analyzing in real time" refers to processing data and generating results immediately as the data is generated.
[1525] "Personalized notifications" are notifications that provide information customized to the needs and circumstances of individual users.
[1526] The system for realizing this invention mainly comprises three components: a server, a terminal (for example, a smartphone), and an emotion recognition engine. Specific embodiments of the invention will be described below.
[1527] System configuration
[1528] server
[1529] The server is responsible for learning user behavior patterns and collecting and analyzing weather forecasts, traffic conditions, event information, store flyer information, etc. It also processes data to personalize notification content based on the user's emotional information.
[1530] Terminal
[1531] The device is mainly a smartphone, and its role is to send the user's input information (destination, departure time, behavioral patterns, etc.) to the server, and display notifications received from the server to the user in real time.The device also uses the camera and microphone to provide the emotion engine with user emotion data.
[1532] Emotion Recognition Engine
[1533] The emotion recognition engine recognizes emotions by analyzing the user's facial expression images and voice data. For example, image analysis algorithms and voice analysis software are used for this purpose. Based on this, it recognizes the user's state of stress or enjoyment and sends that information to the server.
[1534] What the program does
[1535] Get user settings
[1536] The user inputs information such as the destination, departure time, and stopovers into the terminal. This information is sent from the terminal to the server and stored in a database.
[1537] Data collection and analysis
[1538] The device periodically collects the user's location information using GPS and sends it to the server. The server analyzes this data and implements machine learning algorithms to learn the user's behavioral patterns. The server also collects real-time weather and traffic information using weather forecast APIs and traffic information APIs. It also crawls and collects event information and store flyer information from social media and news sites.
[1539] Emotional Data Processing
[1540] Using the device's camera and microphone, the emotion recognition engine analyzes the user's facial expressions and voice, and sends the emotional data to the server, which then personalizes the notification content based on this emotional data.
[1541] Generate and send notifications
[1542] The server generates notifications appropriate for the user based on the collected data and emotional information. For example, based on the weather forecast, it may generate a notification saying, "It's going to rain, so we recommend you take an umbrella," or based on traffic information, it may generate a notification saying, "The subway is delayed, so we recommend you take an alternative route." If the user is feeling stressed, it may generate a notification saying, "Would you like to listen to some relaxing music?", or if the user is enjoying themselves, it may generate a notification saying, "Would you like to join a nearby event?" All of these notifications are sent to the device in real time.
[1543] Specific examples
[1544] Commuting Scenario
[1545] Users input their destination into the application, and the self-driving vehicle calculates the route based on that information. After departure, the server generates a notification based on the weather forecast for the route the self-driving vehicle will take, saying, "It looks like it might rain along the way, so you'd better bring an umbrella," and sends this to the smartphone application. The camera and microphone analyze the passenger's facial expressions and voice, and if it detects that the passenger is feeling stressed, it generates a notification saying, "Would you like to listen to some relaxing music?" and sends this to the smartphone application.
[1546] Example prompts for generative AI models
[1547] "To improve passenger comfort in autonomous vehicles, please create a program to implement a system that analyzes passenger emotions in real time and provides relaxing music if the passenger is feeling stressed, or notifies the passenger of nearby event information if the passenger is having fun."
[1548] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1549] Step 1:
[1550] The user opens the smartphone application and inputs information such as the destination, departure time, and stopovers. The input information is sent to the device and stored on the server. An example of input data might be "Departure time from home to work is 7:30." The server then writes this data into a database.
[1551] Step 2:
[1552] The device uses its GPS function to periodically obtain the user's current location. Updated location information is sent to the server every few seconds. The input data is the user's current location coordinate data, which the server receives and records in a database in real time.
[1553] Step 3:
[1554] The server uses a machine learning algorithm to learn the user's behavioral patterns. This is done using the user's GPS data and past usage history. The input data is the user's location history and behavioral history data, and the server uses this to train a model that predicts the user's next behavior. The output is a behavioral pattern prediction model.
[1555] Step 4:
[1556] The server accesses the weather forecast API and obtains weather information for the specified area. The input data is the "location information of the specified area," and the data obtained is "weather, temperature, precipitation probability, etc. for that area." The server analyzes this data, extracts the necessary weather information, and saves it.
[1557] Step 5:
[1558] The server accesses the traffic information API and obtains the traffic conditions along the user's route. The input data is "information about the specified route," and the data obtained is "information about route delays, accidents, etc." The server analyzes this data, extracts appropriate traffic-related information, and stores it.
[1559] Step 6:
[1560] The server crawls and collects information about events and store flyers within the user's range of activity from social media and news sites. The input data is "location information within the user's range of activity," and the output data is "event information and discount flyer information." This data is also stored on the server.
[1561] Step 7:
[1562] Using the device's camera and microphone, the emotion recognition engine analyzes the user's facial expressions and voice. The input data is "video and audio data," and the emotion recognition engine analyzes it to generate "user emotion data" (for example, whether the user is feeling stressed or enjoying themselves). This emotion data is also sent to the server.
[1563] Step 8:
[1564] The server generates notifications appropriate for the user based on the collected data and emotional information. For example, it generates a notification based on the weather forecast saying, "It's going to rain, so we recommend you take an umbrella," or based on traffic information, a notification saying, "The subway is delayed, so we recommend you take an alternative route." The input data is "weather information, traffic information, emotional data," and the output is a "personalized notification message."
[1565] Step 9:
[1566] If the user is feeling stressed, the server generates a notification saying, "Would you like to listen to some relaxing music?" If the user is enjoying themselves, the server generates a notification saying, "Would you like to join a nearby event?" This notification is also sent to the device in real time. The input data is "emotion data," and the output is "a notification message that promotes stress reduction or enjoyment."
[1567] Step 10:
[1568] The device displays the received notification to the user in real time. The user can check the notification content and take necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, playing relaxing music, visiting a new cafe, etc.). Specifically, the user can tap the notification on their smartphone to check more information or take action immediately.
[1569] 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.
[1570] 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.
[1571] 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.
[1572] [Fourth embodiment]
[1573] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1574] 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.
[1575] 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).
[1576] 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.
[1577] 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.
[1578] 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).
[1579] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1580] 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.
[1581] 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.
[1582] 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.
[1583] 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.
[1584] 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.
[1585] 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."
[1586] This invention is a system that provides necessary information at appropriate times to users during their daily commutes to work or school, or when they are out walking. Below, we will explain the program processing of this system in natural language, with concrete examples.
[1587] System Overview
[1588] This system learns the user's behavioral patterns and generates appropriate notifications based on real-time weather forecasts, traffic conditions, event information, and store flyer information, and sends them to the user's device.The system is mainly composed of two components: a server and a device.
[1589] Program processing
[1590] 1. Get user settings:
[1591] The user inputs the commute time and the means of transportation they will use into the terminal.
[1592] The terminal sends this setting information to the server, which stores it in a database.
[1593] 2. Learning behavioral patterns:
[1594] The device periodically collects the user's GPS data and usage history and sends them to the server.
[1595] The server analyzes this data and uses machine learning algorithms to learn user behavior patterns.
[1596] The learning results are stored in a database and will be used for future predictions.
[1597] 3. Aggregation of information:
[1598] The server obtains the current day's weather information from the weather forecast API.
[1599] The server obtains the operation status of public transport from the traffic information API.
[1600] The server collects information about nearby events and store flyers from social media and news sites.
[1601] 4. Notification Generation and Sending:
[1602] The server uses this aggregated information to generate notifications appropriate for the user.
[1603] The content and timing of notifications are adjusted based on predicted behavioral patterns (e.g., wake-up time, departure time).
[1604] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[1605] Specific examples
[1606] Commuting Scenario
[1607] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[1608] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[1609] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[1610] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[1611] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[1612] 6. The device displays a notification to the user, who then selects a detour and departs.
[1613] Walking Scenario
[1614] 1. The user enters the setting to take a walk at 18:00 into the device.
[1615] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[1616] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[1617] 4. The server tracks the user's GPS data in real time and generates a notification to the device during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1618] 5. The device displays a notification to the user, and the user visits the new cafe.
[1619] In this way, the system learns the user's behavioral patterns and provides necessary information at the appropriate time, thereby supporting the user's daily life.
[1620] The processing flow will be explained below.
[1621] Step 1:
[1622] Users input their commute time and the transportation they will use into the device. They also set their wake-up time, return home time, and walk times.
[1623] Step 2:
[1624] The device checks the entered setting information and sends it to the server, which stores it in a database.
[1625] Step 3:
[1626] The device periodically collects the user's GPS data and usage history and sends it to a server, which analyzes the data and uses machine learning algorithms to learn the user's behavioral patterns.
[1627] Step 4:
[1628] The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, commute time to school, and walking time.
[1629] Step 5:
[1630] The server queries the weather API to get the weather information for the day, including whether it's raining, sunny, and the temperature.
[1631] Step 6:
[1632] The server queries the traffic information API to obtain the operation status of the transportation facility in use, including information on delays, accidents, etc.
[1633] Step 7:
[1634] The server crawls social media and news sites to collect information about events and store flyers within the user's area of activity.
[1635] Step 8:
[1636] The server generates appropriate notifications for the user based on the aggregated information, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[1637] Step 9:
[1638] The server generates a notification based on traffic conditions 15 minutes before the user's scheduled departure time, such as "Subway Line 1 is delayed due to an accident. We recommend you take a detour."
[1639] Step 10:
[1640] The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[1641] Step 11:
[1642] The server tracks the user's GPS data in real time and generates notifications during a walk such as, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1643] Step 12:
[1644] The server generates notifications and sends them to the device, which displays them to the user in real time.
[1645] Step 13:
[1646] The user checks the notification and takes necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, visiting a new cafe, etc.).
[1647] This series of processes enables users to commute to work or school or take a walk more comfortably. The system supports daily life by quickly responding to changes in weather and traffic conditions and providing users with the information they need in a timely manner.
[1648] Example 1
[1649] 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."
[1650] In modern society, users' daily commutes, school commutes, and walks vary widely, and the information they require is also diverse. However, conventional systems have had the problem of making it difficult to provide this information in a timely and unified manner. In particular, there was no system that could obtain weather forecasts, traffic conditions, event information, advertising information, and other information in real time and provide timely notifications based on users' behavioral patterns. This required users to take the time to check the information they needed one by one, which hindered their efficient behavior.
[1651] 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.
[1652] In this invention, the server includes a means for acquiring and storing user settings, a means for analyzing and predicting behavioral patterns using a machine learning algorithm, and a means for collecting information in real time and adjusting notifications, thereby enabling weather forecasts, traffic conditions, event information, and advertising information to be notified in real time at appropriate times based on the user's behavioral patterns.
[1653] "User settings" refers to information that a user enters into the system to identify their behavioral patterns, such as their commute time and the means of transportation they use.
[1654] "Behavioral patterns" refers to data on the user's daily behavioral tendencies and habits, such as departure time and route taken.
[1655] "Weather forecast information" is weather forecast information for a specific date and time based on meteorological data.
[1656] "Traffic information" refers to real-time information on the operation status of public transport and traffic congestion.
[1657] "Event information" is information about events held in a specific region or period.
[1658] "Advertising information" is commercial information such as special offers and sales information provided by stores and services.
[1659] "Notification" refers to information sent from the system to users, including weather forecasts, traffic conditions, event information, and advertising information.
[1660] "Terminal" refers to a device used by a user, such as a smartphone or tablet, or other information and communication device.
[1661] A "server" is a computer system for processing information and storing and transmitting various data.
[1662] A "machine learning algorithm" is a computational method for recognizing patterns and building predictive models based on data analysis.
[1663] This invention is a system that provides necessary information at the appropriate time during users' daily commutes to work or school, or while walking. This system consists of two components: a server and a terminal.
[1664] System Overview
[1665] Retrieving User Settings
[1666] Users input their commute time and the mode of transportation they will use into their device, which then sends this information to the server, which stores it in a database.
[1667] Learning behavioral patterns
[1668] The device periodically collects the user's location data and sends it to the server. The server analyzes this data and uses machine learning algorithms (e.g., random forests) to learn behavioral patterns. The learning results are stored in a database and used for future predictions.
[1669] Aggregation of information
[1670] The server uses external APIs (e.g., weather information API, traffic information API) to obtain weather forecast information and traffic information. The server also uses web scraping technology to collect event information and advertising information from social media and news sites.
[1671] Generate and send notifications
[1672] The server generates notifications appropriate for the user based on the aggregated information. The content and timing of the notifications are adjusted based on predicted behavioral patterns. The generated notifications are sent from the server to the device and displayed to the user in real time.
[1673] Specific examples
[1674] Commuting Scenario
[1675] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[1676] 2. The server retrieves "rain" information from the weather information API before the predicted wake-up time.
[1677] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[1678] 4. At 6:45, the server receives information from the traffic information API that "the subway is delayed due to an accident."
[1679] 5. The server generates a notification saying, "The subway is delayed due to an accident, so we recommend that you take a detour," and sends it to the device.
[1680] 6. The device displays a notification to the user, who then selects a detour and departs.
[1681] Walking Scenario
[1682] 1. The user enters the setting to take a walk at 18:00 into the device.
[1683] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[1684] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[1685] 4. The server tracks the user's location data in real time and generates a notification to the device during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1686] 5. The device displays a notification to the user, and the user visits the new cafe.
[1687] Prompt Sentence Examples
[1688] You can ask a generative AI model to describe a specific system using the following prompt:
[1689] Design a system that provides appropriate information in real time based on a user's commute and walking patterns. Please explain the specific steps for generating notifications for weather forecasts, traffic conditions, event information, and advertising information. Please also provide a detailed description of the process and specific behavior of each step. Please also include the names of any tools or APIs you use.
[1690] In this way, the system learns the user's behavioral patterns and provides necessary information at the appropriate time, thereby supporting the user's daily life.
[1691] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1692] Step 1:
[1693] The user inputs information about their commute time and the mode of transportation they will use into their device. The input data includes the departure time (e.g., 7:00), return time (e.g., 18:00), and the mode of transportation they will use (e.g., subway line 1). The device then sends this setting information to the server. The server stores the received setting information in a database and uses it for subsequent processing.
[1694] Step 2:
[1695] The device periodically collects the user's location data and sends it to the server. The location data is collected using the device's GPS function and sent to the server as a batch process at regular intervals (e.g., every 10 minutes). The server analyzes the received location data and uses a machine learning algorithm (e.g., random forest) to learn the user's behavioral patterns. The analysis results are stored in a database and used for future predictions.
[1696] Step 3:
[1697] The server uses external APIs (e.g., weather information API, traffic information API) to obtain weather forecast information and traffic information. The server periodically sends requests to specified API endpoints and stores the obtained data in an internal database. In parallel with this, the server uses web scraping technology to collect event information and advertising information from social media and news sites. This is also done periodically, and the collected data is stored in a database.
[1698] Step 4:
[1699] The server generates notifications appropriate for the user based on the aggregated information. It uses acquired weather forecast information, traffic information, event information, advertising information, and predicted user behavior patterns as input data to generate highly relevant notifications. For example, if it is raining, it will create a notification saying, "It will rain today, so it would be a good idea to take an umbrella." The content and timing of the generated notification are adjusted based on predicted behavior patterns (e.g., wake-up time, departure time).
[1700] Step 5:
[1701] The server sends the generated notification to the device and displays it to the user in real time. The server uses a push notification service (e.g., Firebase Cloud Messaging) to send the generated notification to the device. The device immediately displays the received notification and helps the user take appropriate action. Specifically, the push notification triggers the notification to be displayed on the notification screen, allowing the user to check the information.
[1702] (Application example 1)
[1703] 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."
[1704] Conventional information systems provided for commuting, school, and walks are mainly limited to weather forecasts and traffic information, and have the problem of being unable to accommodate the diverse interests of users. Furthermore, it is difficult to provide personalized information based on users' behavioral patterns and interests, and notifications at the appropriate time in real time are insufficient. This can result in users being unable to receive the appropriate information when they need it, reducing the convenience of their daily lives.
[1705] 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.
[1706] In this invention, the server includes means for learning the user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic information, means for collecting event information and store flyer information within the user's range of activity, means for collecting content information (videos, news articles, music playlists, etc.) in real time, means for generating appropriate notifications for the user, and means for sending the generated notifications to the user's terminal, thereby enabling personalized information based on the user's behavioral patterns and interests to be provided in real time at an appropriate timing.
[1707] "Behavioral patterns" refer to the regularity and tendencies of a user's daily actions and behavior, including the time of day they commute to work or school and the places they visit.
[1708] "Notification generation" refers to the process of generating information to be distributed to the user and sending it to the user's terminal in an appropriate format.
[1709] "Weather forecast information" is information about weather predicted based on meteorological data, including temperature, precipitation, wind speed, etc.
[1710] "Traffic condition information" is information that indicates the operation status of transportation facilities and the congestion status of roads.
[1711] "Event information" is information about events and activities held within the area of activity.
[1712] "Store flyer information" refers to promotional information such as discounts and campaigns offered by retail stores.
[1713] "Content information" is a general term for information according to the medium and format that a user can access, and includes videos, news articles, music playlists, and the like.
[1714] "GPS data" refers to data indicating location information obtained by the Global Positioning System, and is used to identify a user's current location and travel route.
[1715] "Usage history" refers to a record of the actions and browsing a user performs through a device or application, including the content viewed and the places visited.
[1716] "Real-time" refers to processing and providing data simultaneously with actual time.
[1717] "Interests" refers to areas or topics in which you are particularly interested or concerned.
[1718] "Personalized information" refers to information that provides specific content individually based on the individual requests and actions of each user.
[1719] This invention is a system for learning user behavior patterns and providing appropriate information in real time. The processing contents of the program for realizing this system will be explained below.
[1720] Hardware and software used
[1721] 1. Hardware
[1722] Smartphone: Used as a user device to receive and display notifications.
[1723] Server: Analyzes data, aggregates information, and generates notifications.
[1724] 2. Software
[1725] Mobile app: Developed in Swift (for iOS) and Kotlin (for Android), it retrieves user settings and displays notifications.
[1726] Server-side program: Uses Python, Flask, and RESTful APIs to handle communication processing and database management.
[1727] Database: MySQL and MongoDB are used to store user data and learning results.
[1728] External API: Use OpenWeatherMap API (weather forecast), Google Maps API (traffic information), etc. to obtain the necessary information.
[1729] Machine learning libraries: TensorFlow and PyTorch are used to learn and analyze behavioral patterns.
[1730] Program processing
[1731] 1. Get user settings
[1732] Users enter their commute time, the means of transportation they use, and their interests and concerns into a smartphone app.
[1733] The terminal sends this setting information to the server, which stores it in a database.
[1734] 2. Learning behavioral patterns
[1735] The terminal periodically acquires the user's GPS data and usage history and sends them to the server.
[1736] The server analyzes this data using machine learning algorithms (e.g., TensorFlow, PyTorch) to learn user behavior patterns.
[1737] The learning results are stored in a database and will be used for future predictions.
[1738] 3. Aggregation of information
[1739] The server obtains the current day's weather information from a weather forecast API (e.g., OpenWeatherMap API).
[1740] The server obtains the operation status of public transport from a traffic information API (e.g., Google Maps API).
[1741] The server collects information about nearby events and store flyers from social media and news sites.
[1742] The server obtains content information such as videos and music playlists from content distribution APIs (e.g., YouTube API, Spotify API).
[1743] 4. Generating and Sending Notifications
[1744] The server uses this aggregated information to generate notifications appropriate for the user.
[1745] The content and timing of notifications are tailored based on predicted behavioral patterns (e.g., wake-up time, departure time) and interests.
[1746] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[1747] Specific examples
[1748] 1. New Morning News Video Notification
[1749] Users have the habit of watching the latest news videos during their morning commute.
[1750] At 6:25, the server generates a notification recommending the latest news video and sends it to the device.
[1751] The device will display "Check out this morning's latest news," helping users watch news videos during their commute.
[1752] 2. Lunchtime music playlist notification
[1753] Users often listen to music during their lunch break.
[1754] At 11:55, the server generates a notification recommending a new music playlist and sends it to the device.
[1755] The device will display a notification saying "A new music playlist has been added!", allowing users to enjoy new music during their lunch break.
[1756] Prompt Sentence Examples
[1757] 1. News video notification generation:
[1758] "News video, morning commute, 6:25 AM"
[1759] 2. Music playlist notification generation:
[1760] "Music playlist, lunch break, 11:55 AM"
[1761] These prompts are fed into a generative AI model and used to generate appropriate notifications based on the user's behavioral patterns and interests.
[1762] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1763] Step 1:
[1764] Retrieving User Settings
[1765] Users enter their commute time, the means of transportation they use, and their interests and concerns into a smartphone app.
[1766] Input: Commuting time, transportation used, interests
[1767] Data processing: The entered information is encoded in JSON format.
[1768] Output: Encoded user preference data
[1769] The terminal sends this setting information to the server, which stores it in a database.
[1770] Input: Encoded user preference data
[1771] Data calculation: The server stores the received data in a database.
[1772] Output: User preferences stored in the database
[1773] Step 2:
[1774] Learning behavioral patterns
[1775] The device periodically collects the user's GPS data and usage history and sends them to the server.
[1776] Input: User's GPS data, usage history
[1777] Data processing: GPS data is stored as location information, and usage history is categorized as content viewed, places visited, etc.
[1778] Output: Organized user data
[1779] The server analyzes this data using machine learning algorithms (e.g., TensorFlow, PyTorch) to learn user behavior patterns.
[1780] Input: Organized user data
[1781] Data computation: Using machine learning algorithms to generate models of behavioral patterns.
[1782] Output: Learned behavioral pattern model
[1783] The learning results are stored in a database and will be used for future predictions.
[1784] Input: Learned behavioral pattern model
[1785] Data calculation: Save the model parameters in the database.
[1786] Output: Model parameters stored in a database
[1787] Step 3:
[1788] Aggregation of information
[1789] The server obtains the current day's weather information from a weather forecast API (e.g., OpenWeatherMap API).
[1790] Input: Weather API request
[1791] Data calculation: Analyze the response from the API and extract weather information.
[1792] Output: Today's weather information
[1793] The server obtains the operation status of public transport from a traffic information API (e.g., Google Maps API).
[1794] Input: Traffic information API request
[1795] Data calculation: Analyzes the response from the API and extracts traffic conditions.
[1796] Output: Traffic status information
[1797] The server collects information about nearby events and store flyers from social media and news sites.
[1798] Input: Scraping requests from social media and news sites
[1799] Data calculation: Analyze the scraping results to extract event and flyer information.
[1800] Output: Local event information, store flyer information
[1801] The server obtains content information such as videos and music playlists from content distribution APIs (e.g., YouTube API, Spotify API).
[1802] Input: Content Delivery API request
[1803] Data calculation: Analyzes the response from the API and extracts content information.
[1804] Output: Content information (videos, music playlists, etc.)
[1805] Step 4:
[1806] Generate and send notifications
[1807] The server uses this aggregated information to generate notifications appropriate for the user.
[1808] Input: Learned behavioral pattern model, aggregated information
[1809] Data calculations: Generate notifications based on model predictions.
[1810] Output: The generated notification
[1811] The content and timing of notifications are tailored based on predicted behavioral patterns (e.g., wake-up time, departure time) and interests.
[1812] Input: Generated notification
[1813] Data calculations: Adjusting timing and content to customize notifications
[1814] Output: Customized notification
[1815] The generated notification is sent from the server to the terminal and displayed to the user in real time.
[1816] Input: Customized notification
[1817] Data calculation: Sending notifications via HTTP requests
[1818] Output: Notification displayed on the user's device
[1819] 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.
[1820] This invention is a system that provides necessary information at the appropriate time during a user's daily commute to work or school or during a walk, and recognizes the user's emotions to further personalize the notification content. Below, the program processing of this system is explained in natural language, with concrete examples.
[1821] System Overview
[1822] This system learns the user's behavioral patterns and generates appropriate notifications based on real-time weather forecasts, traffic conditions, event information, and store flyer information, and sends them to the user's device. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, it provides a function to personalize the notification content according to the user's emotions. The system mainly consists of three components: a server, a device, and an emotion engine.
[1823] Program processing
[1824] 1. Get user settings:
[1825] Users input information about their commute time and the means of transportation they will use into the device, as well as set wake-up times, return home times, and walk times.
[1826] 2. The device checks the entered setting information and sends it to the server, which stores it in a database.
[1827] 3. The device periodically collects the user's GPS data and usage history and sends them to the server, which analyzes this data and uses machine learning algorithms to learn the user's behavioral patterns.
[1828] 4. The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, commute time to school, walking time, etc.
[1829] 5. The server queries the weather API to get the weather information for the day, including whether it will rain, be sunny, and the temperature.
[1830] 6. The server queries the traffic information API to obtain the operation status of the transportation facility being used, including information on delays, accidents, etc.
[1831] 7. The server crawls social media and news sites to collect event information and store flyers within the user's area of activity.
[1832] 8. The server generates appropriate notifications for the user based on the aggregated information, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[1833] 9. The server generates a notification based on traffic conditions 15 minutes before the departure time set by the user. For example, it generates a notification such as, "Subway Line 1 is delayed due to an accident. We recommend you take a detour."
[1834] 10. The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[1835] 11. The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1836] 12. The emotion engine analyzes the user's voice data and facial expression images to recognize the user's emotions.
[1837] 13. The server further personalizes the notification content based on the emotional information obtained from the emotion engine. For example, if the user is feeling stressed, the server notifies the user of event information related to relaxation.
[1838] 14. The server sends the generated notifications to the device, which displays them to the user in real time.
[1839] 15. The user checks the notification and takes necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, visiting a new cafe, etc.).
[1840] Specific examples
[1841] Commuting Scenario
[1842] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[1843] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[1844] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[1845] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[1846] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[1847] 6. The device displays a notification to the user, who then selects a detour and departs.
[1848] 7. The emotion engine detects the user's stress from voice data collected during the commute.
[1849] 8. Based on this information, the server generates a notification saying, "Would you like to listen to some relaxing music?" and sends it to the device.
[1850] Walking Scenario
[1851] 1. The user enters the setting to take a walk at 18:00 into the device.
[1852] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[1853] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[1854] 4. The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer."
[1855] 5. The device displays a notification to the user, and the user visits the new cafe.
[1856] 6. The emotion engine detects whether the user is enjoying the game from their facial expressions.
[1857] 7. Based on this information, the server generates a notification saying, "Would you like to see a movie playing at a nearby cinema?" and sends it to the device.
[1858] This series of processes enables users to go to work or school or take a walk more comfortably. The system supports daily life by providing necessary information in a timely manner based on weather, traffic conditions, and even the user's emotions.
[1859] The processing flow will be explained below.
[1860] Step 1:
[1861] Users input their commute times, wake-up times, and the means of transportation they will use into the device, as well as set times for walking and other planned activities.
[1862] Step 2:
[1863] The device checks the entered setting information and sends it to the server, which stores it in a database.
[1864] Step 3:
[1865] The device periodically collects the user's GPS data and usage history and sends it to a server, which analyzes this data and uses machine learning algorithms to learn the user's behavioral patterns.
[1866] Step 4:
[1867] The server stores the learning results in a database and uses them for future predictions. The learned behavioral patterns include wake-up time, commute time, and walking time.
[1868] Step 5:
[1869] The server queries the weather forecast API to obtain the weather information for the day, including whether it will rain, be sunny, and the temperature.
[1870] Step 6:
[1871] The server queries the traffic information API to obtain the operation status of the transportation facility in use, including delays, accidents, etc.
[1872] Step 7:
[1873] The server crawls social media and news sites to collect information about events and store flyers within the user's area of activity.
[1874] Step 8:
[1875] The emotion engine acquires and analyzes the user's voice data and facial expression images to recognize the user's emotions. The recognized emotion data is then sent to the server.
[1876] Step 9:
[1877] The server generates appropriate notifications for the user based on the aggregated information and emotional data, for example, a weather forecast notification 30 minutes before the predicted wake-up time.
[1878] Step 10:
[1879] The server generates a notification based on traffic conditions and the user's emotional data 15 minutes before the departure time set by the user. For example, it generates a notification such as "Subway Line 1 is delayed due to an accident, so we recommend you take a detour" or "You seem to be feeling depressed, so please leave early and take a break at a cafe to refresh yourself."
[1880] Step 11:
[1881] The server generates a notification based on the event information just before the walk time. For example, it generates a notification saying, "A fireworks display will be held at a nearby park from 6:30 PM."
[1882] Step 12:
[1883] The server tracks the user's GPS data in real time and generates a notification during a walk saying, "A new cafe has opened 500 meters away. Check out the special offer flyer." Based on information from the emotion engine, it can also add a message that corresponds to the user's emotion, such as, "Why not try the new cafe to celebrate?"
[1884] Step 13:
[1885] The server generates notifications and sends them to the terminal, which displays them to the user in real time.
[1886] Step 14:
[1887] Users check the notification and take necessary actions (e.g., leave earlier, bring an umbrella, visit a new cafe, etc.) and also take into account advice based on their emotions.
[1888] This series of processes allows users to go to work or school or take a walk more comfortably. The system supports users' daily lives by providing necessary information in a timely manner according to changes in weather and traffic conditions, as well as their emotions.
[1889] Example 2
[1890] 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."
[1891] Conventional systems provide notifications for daily activities such as commuting to work or school, walking, etc., but lack the ability to recognize the user's emotions and personalize the notification content. As a result, notifications often do not match the user's situation or emotions, reducing the effectiveness of notifications. In addition, real-time information collection and timely notification generation are not adequately performed, which can result in users not receiving the information they need.
[1892] 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.
[1893] In this invention, the server includes means for learning a user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic condition information, means for collecting event information and store flyer information within the user's range of activity, means for recognizing the user's emotions, means for generating appropriate notifications for the user, and means for transmitting the generated notifications to the user's terminal, thereby making it possible to provide personalized notifications at appropriate times based on the user's behavioral patterns and emotions.
[1894] A "means for learning behavioral patterns" is a system or algorithm that analyzes a user's location data and usage history to recognize the user's behavioral habits and tendencies.
[1895] "Means for obtaining weather forecast information" refers to a system or algorithm for obtaining current and future weather information using an external weather forecast API, etc.
[1896] "Means for acquiring traffic information" refers to a system or algorithm for acquiring information on the operation status of public transport and road congestion information, etc., using external traffic information APIs, etc.
[1897] "Means for collecting event information and store flyer information" refers to a system or algorithm that automatically collects information about events being held in a specific area and store sales information from social media, news sites, advertising sites, etc.
[1898] "Means for recognizing emotions" refers to a system or algorithm that analyzes a user's voice data or image data and recognizes the user's emotional state (happiness, sadness, stress, etc.).
[1899] "Means for generating notifications" means a system or algorithm for automatically generating notification content appropriate to the user based on collected information, learned behavioral patterns, and recognized emotions.
[1900] The "means for sending notifications" refers to a system or algorithm for sending the generated notification content to the user's device in real time.
[1901] This invention is a system that provides necessary information at the appropriate time during a user's daily commute or walk, and also recognizes the user's emotions to personalize the notification content. This system is mainly composed of three components: a server, a terminal, and an emotion engine.
[1902] System Overview
[1903] The basic configuration of the system is as follows:
[1904] Server: Learns behavioral patterns, collects information, generates and sends notifications.
[1905] Device: A device where a user enters configuration information and receives notifications.
[1906] Emotion engine: A function for recognizing user emotions from voice data and facial images.
[1907] Program processing
[1908] User Settings and Data Collection
[1909] Users input information about their commute time, the means of transportation they use, the time they wake up, the time they return home, the time they take a walk, etc. The device then sends this information to the server, which then stores it in a database.
[1910] Learning behavioral patterns
[1911] The device periodically collects the user's GPS data and usage history and sends them to a server. The server analyzes this data and uses machine learning algorithms such as Python's Scikit-Learn library to learn the user's behavioral patterns. The learning results are stored in a database and used for future predictions.
[1912] Information gathering
[1913] The server obtains the current day's weather information using a weather forecast API (e.g., OpenWeatherMap API), obtains the status of public transport using a traffic information API (e.g., Google Maps API), and collects event information and store flyer information from social media and news sites.
[1914] Notification Generation and Delivery
[1915] The server generates appropriate notifications for the user based on the collected information and learned behavioral patterns. For example, it generates a weather forecast notification 30 minutes before the predicted wake-up time, and a traffic situation notification 15 minutes before departure time. The generated notifications are sent to the device and displayed to the user via the device's push notification service.
[1916] Emotion Recognition and Notification Personalization
[1917] The emotion engine analyzes the user's voice data and facial expressions to recognize their emotions. The server further personalizes the notification content based on the information from the emotion engine. For example, if the user is feeling stressed, the server may notify them of "information about relaxation events."
[1918] Specific examples
[1919] Commuting Scenario
[1920] 1. The user enters settings into the device to wake up at 6:00 and leave home at 7:00.
[1921] 2. The server retrieves "rain" information from the weather forecast API before the predicted wake-up time (e.g., 5:30).
[1922] 3. The server generates a notification saying "It's going to rain today, so you should take an umbrella" and sends it to the device.
[1923] 4. At 6:45, the server receives information from the traffic information API that "Subway Line 1 is delayed due to an accident."
[1924] 5. The server generates a notification saying, "Subway Line 1 is delayed due to an accident. We recommend that you take a detour." and sends it to the device.
[1925] 6. The device displays a notification to the user, who then selects a detour and departs.
[1926] 7. The emotion engine detects the user's stress from voice data collected during the commute.
[1927] 8. Based on this information, the server generates a notification saying, "Would you like to listen to some relaxing music?" and sends it to the device.
[1928] Walking Scenario
[1929] 1. The user enters the setting to take a walk at 18:00 into the device.
[1930] 2. At 17:50, the server collects information about nearby events and obtains the information that "a fireworks display will be held in a nearby park from 18:30."
[1931] 3. The server generates a notification that "A fireworks display will be held in a nearby park from 6:30 PM" and sends it to the device.
[1932] 4. The server tracks the user's GPS data in real time and generates notifications during a walk such as "A new cafe has opened 500 meters away."
[1933] 5. The device displays a notification to the user, and the user visits the new cafe.
[1934] 6. The emotion engine detects whether the user is enjoying the game from their facial expressions.
[1935] 7. Based on this information, the server generates a notification saying, "Would you like to see a movie playing at a nearby cinema?" and sends it to the device.
[1936] Prompt Sentence Examples
[1937] Example prompt 1: Commuting scenario
[1938] "Set up your commute to wake up at 6:00 and leave at 7:00. Anticipated issues include subway delays and bad weather. Explain the flow for generating notifications and displaying them to the user."
[1939] Example prompt 2: Walking scenario
[1940] "Please set up a walk at 18:00. During the walk, collect information about events and new stores, generate notifications based on that information, and explain the flow of displaying them to the user."
[1941] In this way, the system supports users in their daily commutes and walks, providing timely information tailored to their situation and emotions.
[1942] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1943] Step 1:
[1944] Users input information such as commute time, wake-up time, return home time, and walking time into the terminal.
[1945] Input: User's schedule and transportation information
[1946] How it works: The user enters the required information through the device app.
[1947] Output: The entered configuration information
[1948] Step 2:
[1949] The terminal transmits the setting information to the server.
[1950] Input: The entered configuration information
[1951] How it works: The device converts the collected data into the specified format and sends it to the server using the HTTPS protocol.
[1952] Output: Configuration information sent to the server
[1953] Step 3:
[1954] The server stores the received configuration information in a database.
[1955] Input: Submitted configuration information
[1956] How it works: The server parses the configuration information and stores it in a database, which can be stored in a MySQL database for example.
[1957] Output: Saved configuration information
[1958] Step 4:
[1959] The device periodically collects the user's GPS data and usage history and sends them to the server.
[1960] Input: User's GPS data and usage history
[1961] How it works: The device obtains location information from the built-in GPS module and sends it, along with usage history, to the server.
[1962] Output: GPS data and usage history sent to the server
[1963] Step 5:
[1964] The server analyzes the received GPS data and usage history using machine learning algorithms to learn the user's behavioral patterns.
[1965] Input: GPS data and usage history
[1966] How it works: The server uses Python's Scikit-Learn library to apply clustering algorithms and other techniques to analyze behavioral patterns.
[1967] Output: Learned behavioral patterns
[1968] Step 6:
[1969] The server stores the learned behavioral patterns in a database.
[1970] Input: Learned behavioral patterns
[1971] Operation: The server stores the behavioral patterns in a database for future use.
[1972] Output: Stored behavioral patterns
[1973] Step 7:
[1974] The server uses a weather forecast API to obtain the weather information for the day.
[1975] Input: API request
[1976] How it works: The server sends a request to an external weather API (e.g., OpenWeatherMap API) to retrieve current or future weather data.
[1977] Output: Weather information data
[1978] Step 8:
[1979] The server uses a traffic information API to obtain the operation status of transportation services.
[1980] Input: API request
[1981] How it works: The server sends a request to an external traffic information API (e.g., Google Maps API) to obtain traffic information such as delays and accidents.
[1982] Output: Traffic information data
[1983] Step 9:
[1984] The server collects event information and store flyer information from social media and news sites.
[1985] Input: crawl request
[1986] How it works: The server crawls data from specific websites and social media sites to collect event information and flyers.
[1987] Output: Event information and store flyer information
[1988] Step 10:
[1989] The server generates appropriate notifications for the user based on the aggregated information.
[1990] Input: Weather information, traffic information, event information, learned behavioral patterns
[1991] How it works: The server combines this data and creates optimal notification content based on the user's behavioral patterns.
[1992] Output: Notification content
[1993] Step 11:
[1994] The server sends the generated notification to the terminal.
[1995] Input: Notification content
[1996] How it works: The server generates the notification and sends it to the device's push notification service.
[1997] Output: Notification sent to the device
[1998] Step 12:
[1999] The device displays the notification to the user in real time.
[2000] Input: Notification sent from the server
[2001] How it works: The device displays the content to the user as a push notification.
[2002] Output: The notification displayed to the user
[2003] Step 13:
[2004] The emotion engine analyzes the user's voice data and facial expression images to recognize emotions.
[2005] Input: User's voice data and facial expression images
[2006] How it works: The emotion engine uses deep learning models to analyze audio features and image data to classify emotions.
[2007] Output: Recognized emotion data
[2008] Step 14:
[2009] The server further personalizes the notification content based on the emotional data obtained from the emotion engine.
[2010] Input: Recognized emotion data
[2011] How it works: The server adjusts the notification content based on the emotion data, for example generating a relaxation notification for a user who is feeling stressed.
[2012] Output: personalized notification content
[2013] Step 15:
[2014] The server sends personalized notifications to the device.
[2015] Input: Personalized notification content
[2016] How it works: The server sends personalized notifications to the device, just like regular notifications.
[2017] Output: Personalized notification sent to device
[2018] Step 16:
[2019] The device displays personalized notifications to the user in real time.
[2020] Input: Personalized notification sent from the server
[2021] What it does: The device displays the notification to the user as a push notification.
[2022] Output: The personalized notification displayed to the user
[2023] Step 17:
[2024] The user checks the notification and takes the necessary action.
[2025] Input: Displayed notification
[2026] Action: The user takes an action based on the notification, for example, taking an umbrella, taking a detour, listening to relaxing music, etc.
[2027] Output: User action
[2028] (Application example 2)
[2029] 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."
[2030] Conventional information systems have difficulty providing necessary information at the appropriate time during users' daily commutes, such as commuting to work or school, or taking a walk. Furthermore, they lack the ability to provide personalized notifications based on the user's emotions, meaning that the content of notifications does not fully meet the user's needs. In particular, in autonomous vehicles, real-time information provision and notifications based on emotions are required to improve passenger comfort.
[2031] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[2032] In this invention, the server includes means for learning a user's behavioral patterns, means for acquiring weather forecast information, means for acquiring traffic condition information, means for collecting event information and store flyer information within the user's range of movement, means for recognizing the user's emotions, means for personalizing notification content based on the emotion information, means for generating notifications appropriate for the user, and means for sending the generated notifications to the user's terminal. This enables the user's behavioral patterns and emotions to be analyzed in real time, enabling the provision of comfortable information in an autonomous vehicle and personalized notifications according to the emotions.
[2033] "Behavioral patterns" refer to the characteristics and tendencies of repeated behaviors such as commuting to work, school, walking, etc. in a user's daily life.
[2034] "Weather forecast information" is data relating to meteorological conditions such as future weather, temperature, and probability of precipitation in a specified area.
[2035] "Traffic information" is data on the operation status, delays, accidents, etc. of roads and public transportation in a specified area.
[2036] "Event information" is information about events and activities held within a designated area.
[2037] "Store flyer information" is advertising information such as discount information and new product announcements issued by stores within the user's range of activity.
[2038] "Means for recognizing emotions" refers to technology that uses a camera and microphone to analyze the user's facial expressions and voice to identify their emotional state at any given time.
[2039] "Means for personalizing notification content" refers to technology that generates optimal notifications based on the user's needs and status, based on acquired emotional information and behavioral patterns.
[2040] An "autonomous vehicle" is a vehicle that is capable of some degree of autonomous driving without driver intervention.
[2041] "Analyzing in real time" refers to processing data and generating results immediately as the data is generated.
[2042] "Personalized notifications" are notifications that provide information customized to the needs and circumstances of individual users.
[2043] The system for realizing this invention mainly comprises three components: a server, a terminal (for example, a smartphone), and an emotion recognition engine. Specific embodiments of the invention will be described below.
[2044] System configuration
[2045] server
[2046] The server is responsible for learning user behavior patterns and collecting and analyzing weather forecasts, traffic conditions, event information, store flyer information, etc. It also processes data to personalize notification content based on the user's emotional information.
[2047] Terminal
[2048] The device is mainly a smartphone, and its role is to send the user's input information (destination, departure time, behavioral patterns, etc.) to the server, and display notifications received from the server to the user in real time.The device also uses the camera and microphone to provide the emotion engine with user emotion data.
[2049] Emotion Recognition Engine
[2050] The emotion recognition engine recognizes emotions by analyzing the user's facial expression images and voice data. For example, image analysis algorithms and voice analysis software are used for this purpose. Based on this, it recognizes the user's state of stress or enjoyment and sends that information to the server.
[2051] What the program does
[2052] Get user settings
[2053] The user inputs information such as the destination, departure time, and stopovers into the terminal. This information is sent from the terminal to the server and stored in a database.
[2054] Data collection and analysis
[2055] The device periodically collects the user's location information using GPS and sends it to the server. The server analyzes this data and implements machine learning algorithms to learn the user's behavioral patterns. The server also collects real-time weather and traffic information using weather forecast APIs and traffic information APIs. It also crawls and collects event information and store flyer information from social media and news sites.
[2056] Emotional Data Processing
[2057] Using the device's camera and microphone, the emotion recognition engine analyzes the user's facial expressions and voice, and sends the emotional data to the server, which then personalizes the notification content based on this emotional data.
[2058] Generate and send notifications
[2059] The server generates notifications appropriate for the user based on the collected data and emotional information. For example, based on the weather forecast, it may generate a notification saying, "It's going to rain, so we recommend you take an umbrella," or based on traffic information, it may generate a notification saying, "The subway is delayed, so we recommend you take an alternative route." If the user is feeling stressed, it may generate a notification saying, "Would you like to listen to some relaxing music?", or if the user is enjoying themselves, it may generate a notification saying, "Would you like to join a nearby event?" All of these notifications are sent to the device in real time.
[2060] Specific examples
[2061] Commuting Scenario
[2062] Users input their destination into the application, and the self-driving vehicle calculates the route based on that information. After departure, the server generates a notification based on the weather forecast for the route the self-driving vehicle will take, saying, "It looks like it might rain along the way, so you'd better bring an umbrella," and sends this to the smartphone application. The camera and microphone analyze the passenger's facial expressions and voice, and if it detects that the passenger is feeling stressed, it generates a notification saying, "Would you like to listen to some relaxing music?" and sends this to the smartphone application.
[2063] Example prompts for generative AI models
[2064] "To improve passenger comfort in autonomous vehicles, please create a program to implement a system that analyzes passenger emotions in real time and provides relaxing music if the passenger is feeling stressed, or notifies the passenger of nearby event information if the passenger is having fun."
[2065] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[2066] Step 1:
[2067] The user opens the smartphone application and inputs information such as the destination, departure time, and stopovers. The input information is sent to the device and stored on the server. An example of input data might be "Departure time from home to work is 7:30." The server then writes this data into a database.
[2068] Step 2:
[2069] The device uses its GPS function to periodically obtain the user's current location. Updated location information is sent to the server every few seconds. The input data is the user's current location coordinate data, which the server receives and records in a database in real time.
[2070] Step 3:
[2071] The server uses a machine learning algorithm to learn the user's behavioral patterns. This is done using the user's GPS data and past usage history. The input data is the user's location history and behavioral history data, and the server uses this to train a model that predicts the user's next behavior. The output is a behavioral pattern prediction model.
[2072] Step 4:
[2073] The server accesses the weather forecast API and obtains weather information for the specified area. The input data is the "location information of the specified area," and the data obtained is "weather, temperature, precipitation probability, etc. for that area." The server analyzes this data, extracts the necessary weather information, and saves it.
[2074] Step 5:
[2075] The server accesses the traffic information API and obtains the traffic conditions along the user's route. The input data is "information about the specified route," and the data obtained is "information about route delays, accidents, etc." The server analyzes this data, extracts appropriate traffic-related information, and stores it.
[2076] Step 6:
[2077] The server crawls and collects information about events and store flyers within the user's range of activity from social media and news sites. The input data is "location information within the user's range of activity," and the output data is "event information and discount flyer information." This data is also stored on the server.
[2078] Step 7:
[2079] Using the device's camera and microphone, the emotion recognition engine analyzes the user's facial expressions and voice. The input data is "video and audio data," and the emotion recognition engine analyzes it to generate "user emotion data" (for example, whether the user is feeling stressed or enjoying themselves). This emotion data is also sent to the server.
[2080] Step 8:
[2081] The server generates notifications appropriate for the user based on the collected data and emotional information. For example, it generates a notification based on the weather forecast saying, "It's going to rain, so we recommend you take an umbrella," or based on traffic information, a notification saying, "The subway is delayed, so we recommend you take an alternative route." The input data is "weather information, traffic information, emotional data," and the output is a "personalized notification message."
[2082] Step 9:
[2083] If the user is feeling stressed, the server generates a notification saying, "Would you like to listen to some relaxing music?" If the user is enjoying themselves, the server generates a notification saying, "Would you like to join a nearby event?" This notification is also sent to the device in real time. The input data is "emotion data," and the output is "a notification message that promotes stress reduction or enjoyment."
[2084] Step 10:
[2085] The device displays the received notification to the user in real time. The user can check the notification content and take necessary action (e.g., leaving earlier, bringing an umbrella, choosing a detour, playing relaxing music, visiting a new cafe, etc.). Specifically, the user can tap the notification on their smartphone to check more information or take action immediately.
[2086] 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.
[2087] 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.
[2088] 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.
[2089] 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.
[2090] 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.
[2091] 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.
[2092] 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).
[2093] 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.
[2094] 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."
[2095] 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.
[2096] The system according to the present disclosure has been described above mainly with respect to th...
Claims
1. a means for learning user behavior patterns; A means for obtaining weather forecast information; A means for obtaining traffic condition information; A means of collecting event information and store flyer information within the area of activity; means for generating an appropriate notification to the user; means for transmitting the generated notification to a user's terminal; A system including:
2. 2. The system of claim 1, wherein the means for learning the user's behavioral patterns learns the user's behavioral patterns by analyzing the user's GPS data and usage history.
3. 2. The system according to claim 1, wherein the notification generating means adjusts the notification generation time based on the user's wake-up time or departure time.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A