System
The system optimizes communication algorithms based on network load and battery level to balance speed and power consumption, addressing the challenge of simultaneous high-speed and long battery life in digital devices.
Patent Information
- Application Number
- JP2024116511
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-19
- Publication Date
- 2026-01-29
AI Technical Summary
Modern digital devices face challenges in simultaneously achieving high-speed and stable data communication while maintaining long battery life, leading to suboptimal user experiences.
A system that acquires environmental data, selects an optimal communication algorithm based on network load and battery level, and applies the selected algorithm to device settings in real time, balancing communication speed and battery consumption.
Enables high-speed and stable data communication while effectively managing battery consumption, providing users with an optimized and efficient communication environment.
Smart Images

Figure 2026015037000001_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] Modern digital devices are required to have both high-speed and stable data communication speeds and long battery life. However, current technology makes it difficult to achieve both of these simultaneously, which often limits the user experience. The challenge is to improve user convenience by solving this problem. [Means for solving the problem]
[0005] To solve this problem, the present invention provides a system including a means for acquiring environmental data, a means for selecting a communication algorithm, and a means for applying the selected communication algorithm. The means for acquiring environmental data includes a means for measuring network load and a means for measuring remaining battery power. The means for selecting a communication algorithm selects a high-speed communication algorithm when the network load is high and the remaining battery power is 20% or more, and selects a battery-saving algorithm when the network load is low and the remaining battery power is 20% or less. This makes it possible to minimize battery consumption while achieving high-speed and stable data communication.
[0006] The "means for acquiring environmental data" refers to the means, including the hardware and software components, required for the device to acquire the current network load and remaining battery level.
[0007] The "means for selecting a communication algorithm" refers to a means including logic and processing for automatically selecting the optimum communication algorithm based on the acquired environmental data.
[0008] The "means for applying the selected communication algorithm" refers to a means having a function for dynamically changing the communication settings of the device based on the selected communication algorithm.
[0009] A "means for measuring network load" is a means having the function of measuring the current network usage status and determining the degree of load.
[0010] A "means for measuring remaining battery capacity" is a means having a function for measuring the remaining battery capacity of a device in real time and acquiring that value.
[0011] "High-speed communication algorithm" refers to communication protocols and settings that maximize communication speeds under conditions of high network load.
[0012] "Battery saving algorithms" refers to communication protocols and settings that minimize power consumption under low battery conditions.
[0013] "Balanced communication algorithm" refers to communication protocols and settings designed to balance communication speed and battery life.
[0014] "System" refers to a set of hardware and software that combines the above means to optimize the communication performance and battery life of a device. [Brief explanation of the drawings]
[0015] [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
[0016] 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.
[0017] First, the terms used in the following description will be explained.
[0018] 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).
[0019] 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.
[0020] 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.
[0021] 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.
[0022] 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."
[0023] [First embodiment]
[0024] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0025] 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.
[0026] 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).
[0027] 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.
[0028] 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.
[0029] 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.
[0030] 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.
[0031] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0032] 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.
[0033] 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.
[0034] 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.
[0035] 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."
[0036] In this system, the terminal acquires environmental information, selects the optimal communication algorithm based on that information, and applies the selected algorithm, thereby maintaining high-speed and stable communication while reducing battery consumption.
[0037] Acquiring environmental data from a device
[0038] The device first obtains network load and remaining battery level data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery level and obtains its percentage data.
[0039] Selection of communication algorithm by terminal
[0040] Next, the device selects the optimal communication algorithm based on the acquired environmental data. Specifically, it follows the following logic:
[0041] When the network load is high and the battery level is above 20%, the device will select the "high-speed communication algorithm."
[0042] When the network load is low and the battery level is below 20%, the device will select the "battery saving algorithm".
[0043] In other situations, the terminal applies a "balanced communication algorithm."
[0044] Device-based application and notification of settings
[0045] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, and network load.
[0046] Specific examples
[0047] For example, consider a situation where a user is using a device, the network load is high, and the battery is at 80%. In this case, the device will perform the following steps:
[0048] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0049] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[0050] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0051] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[0052] This allows users to enjoy a comfortable and efficient communication environment.
[0053] The processing flow will be explained below.
[0054] Step 1:
[0055] The terminal measures the network load.
[0056] The device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low.
[0057] Step 2:
[0058] The device measures the remaining battery power.
[0059] The device checks the current battery level and gets the percentage.
[0060] Step 3:
[0061] The device analyzes the environmental data.
[0062] The device performs a comprehensive analysis of the state of the communication environment based on the network load status (high / low) and remaining battery level.
[0063] Step 4:
[0064] The terminal selects the optimal communication algorithm.
[0065] The device determines the communication algorithm using the following logic:
[0066] When the network load is high and the battery level is 20% or more: A high-speed communication algorithm is selected.
[0067] When the network load is low and the battery level is below 20%, select the battery saving algorithm.
[0068] In other situations, a balanced communication algorithm is applied.
[0069] Step 5:
[0070] The terminal applies the selected communication algorithm to the system.
[0071] The terminal changes its communication settings according to the selected communication algorithm and applies the settings in real time to realize an optimized communication environment.
[0072] Step 6:
[0073] The terminal sends a notification to the user.
[0074] The device notifies the user that the setting change is complete, and provides the user with information about the applied communication algorithm (e.g., a high-speed communication algorithm has been applied), as well as the current network load and remaining battery level.
[0075] Through the above processing steps, the system provides the user with an optimal communication environment, enabling high-speed and stable communication while effectively managing battery consumption.
[0076] Example 1
[0077] 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."
[0078] In conventional communication systems, it has been difficult to select an optimal communication algorithm while fully considering the network load and remaining battery power. As a result, problems such as unstable communication speeds and rapid battery consumption have occurred. The present invention aims to solve these problems and reduce battery consumption while providing users with a high-speed, stable communication environment.
[0079] 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.
[0080] In this invention, the server includes means for measuring network load and analyzing the number of devices, means for measuring remaining battery power, means for analyzing acquired environmental data and selecting an optimal communication algorithm, means for applying the selected communication algorithm to system settings in real time, and means for notifying of setting changes, thereby making it possible to effectively reduce battery consumption while maintaining high-speed and stable communication.
[0081] "Network load" is a measure of the amount of bandwidth or data traffic being used within a network.
[0082] "Analyzing the number of devices" means identifying the number of devices and terminals connected to the network and analyzing their status.
[0083] "Battery remaining" is an indicator of the current state of a device's battery, usually expressed as a percentage.
[0084] "Analyzing environmental data" means processing the acquired data, such as network load and remaining battery level, to determine the situation and optimal settings.
[0085] "Selecting a communication algorithm" means selecting the most appropriate communication method based on the acquired and analyzed environmental data.
[0086] "Applying to system settings in real time" means that the selected communication algorithm is applied instantly and the system settings are updated and reflected immediately.
[0087] "Notifying the user of a setting change" means informing the user of changes to the system settings.
[0088] MODE FOR CARRYING OUT THE INVENTION
[0089] The present invention relates to a system in which a terminal selects an optimal communication algorithm based on the network load and remaining battery power, thereby reducing battery consumption while maintaining high-speed and stable communication.
[0090] Obtaining environmental data
[0091] First, the device obtains data on the network load and remaining battery level. To measure the network load, the device's network interface is used to measure the current amount of data traffic. Specifically, the Netstat command or a dedicated measurement API (e.g., the TrafficStats class on Android) is used. The device also analyzes network scanner and router data to analyze the number of connected devices. This makes it possible to determine whether the network load is high or low. To determine the remaining battery level, the device's internal battery sensor is used to obtain the current status. Specifically, the BatteryManager API (e.g., BatteryManager.BATTERY_PROPERTY_CAPACITY on Android) is used.
[0092] Selection of communication algorithm
[0093] Next, the device analyzes the acquired environmental data and selects the optimal communication algorithm. Specifically, it determines the communication algorithm based on the following logic:
[0094] When the network load is high and the battery level is above 20%, the device will select the "high-speed communication algorithm."
[0095] When the network load is low and the battery level is below 20%, the device will select the "battery saving algorithm".
[0096] In other situations, the terminal applies a "balanced communication algorithm."
[0097] Setting enforcement and notifications
[0098] The selected communication algorithm is applied to the device's system settings in real time. For example, if a "high-speed communication algorithm" is selected, the device will change the settings to allow the device to use the maximum bandwidth of Wi-Fi, 4G, and 5G. Once the setting change is complete, the device will notify the user. The notification will include the current communication algorithm, remaining battery level, network load, etc. Notification methods include the notification bar and a pop-up window.
[0099] Specific examples
[0100] For example, consider a situation where a user is using a device, the network is busy, and the battery is at 80%. In this case, the device will do the following:
[0101] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0102] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[0103] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0104] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[0105] This invention allows users to enjoy a comfortable and efficient communication environment.
[0106] Example prompts to be input to the generative AI model
[0107] "The system should select a high-speed communication algorithm when the network load is high and the battery level is high. Specific environmental conditions are assumed to be high data traffic and many connected devices."
[0108] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0109] Step 1: Obtaining the network load
[0110] The device obtains the network load. Specifically, it measures the current data traffic volume using the device's network interface. As input, it obtains data traffic information from the network interface and analyzes the data traffic volume based on that information. For example, it uses the Netstat command or a dedicated measurement API (TrafficStats class in Android). As output, it obtains network load data. For example, it determines that network traffic exceeds 1GB / h.
[0111] Step 2: Analyze the number of connected devices
[0112] The terminal analyzes the number of devices connected to the network. As input, it obtains information about connected devices using a network scanner or analyzing router data. Specifically, it obtains a device list from the router and counts the number of devices. As output, it obtains the number of connected devices. For example, if there are 10 or more connected devices, it determines that the network load is "high."
[0113] Step 3: Get the battery level
[0114] The device checks the current remaining battery capacity. As input, it collects battery information from the device's battery sensor and obtains the percentage data. Specifically, it uses the BatteryManager API (e.g., BatteryManager.BATTERY_PROPERTY_CAPACITY on Android). As output, it obtains the current remaining battery capacity data. For example, it confirms that the battery capacity is 80%.
[0115] Step 4: Analyze environmental data
[0116] The device analyzes the acquired network load and remaining battery data. The network load data and remaining battery data acquired in step 1 and step 2 are used as input. The output determines whether the current environmental state is high or low load, and whether the battery is high or low. For example, if the network load is high (over 1GB / h) and the remaining battery is 80%, it is determined to be "high load, high battery."
[0117] Step 5: Selecting a communication algorithm
[0118] The device selects the optimal communication algorithm based on the analysis results. The environmental condition data obtained in step 4 is used as input. The optimal communication algorithm is selected as output. Specifically, it is based on the following logic: if the network load is high and the remaining battery level is 20% or more, the "high-speed communication algorithm" is selected. For example, in the case of "high load and high battery," the "high-speed communication algorithm" is selected.
[0119] Step 6: Applying the communication algorithm
[0120] The device applies the selected communication algorithm to the system settings in real time. The communication algorithm data selected in step 5 is used as input. The system settings are updated as output. For example, if a "high-speed communication algorithm" is selected, the settings are changed so that the device can use the maximum bandwidth of Wi-Fi or 4G / 5G.
[0121] Step 7: Notify users
[0122] The device notifies the user of the setting change. As input, it obtains the communication algorithm applied in step 6 and its detailed information. Specifically, it sends a notification to the user using a notification bar or a pop-up window. As output, the user can be made aware of the setting change. For example, it may notify the user that "A high-speed communication algorithm has been applied. Network load: high, remaining battery: 80%."
[0123] (Application example 1)
[0124] 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."
[0125] Conventional communication systems have the problem that it is difficult to reduce battery consumption while maintaining high-speed communication when the network load is high or the battery level is low. In addition, there is no function to notify the user of the communication algorithm selection results in real time, making it difficult for the user to grasp the current communication status.
[0126] 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.
[0127] In this invention, the server includes means for acquiring environmental data, means for selecting a communication algorithm, means for applying the selected communication algorithm, and means for notifying the user, thereby making it possible to select an optimal communication algorithm depending on the network load and remaining battery power, and notify the user of the selection.
[0128] "Environmental data" refers to information about the surrounding communication environment obtained by a device, and specifically includes the amount of network traffic and the number of connected devices.
[0129] A "communication algorithm" refers to the method or means applied when communicating, and is a means of achieving optimal communication quality and battery consumption based on environmental data.
[0130] The "means for notifying the user" refers to a method or device for notifying the user of information about the selected communication algorithm and the current communication environment. Specifically, this includes display devices such as smartphones and tablets.
[0131] "Network load" refers to the level of usage and traffic on a communications network, and varies depending on the number of connected devices and the amount of data sent and received.
[0132] "Battery Remaining" refers to the remaining capacity of the device's battery, expressed as the current battery percentage.
[0133] A "high-speed communication algorithm" is an algorithm for achieving high communication speeds, and is mainly selected when the network load is high.
[0134] A "battery saving algorithm" is an algorithm for reducing battery consumption, and is mainly selected when the battery level is low.
[0135] The system of the present invention includes means for acquiring environmental data, selecting a communication algorithm, applying the selected communication algorithm, and notifying the user of the results. Specific embodiments for carrying out the present invention will be described in detail below.
[0136] Hardware and Software Configuration
[0137] Hardware:
[0138] This system requires the following hardware:
[0139] Smartphone: The primary device for applying communication algorithms and informing the user.
[0140] Wi-Fi router: A network device used to measure network load and transmit data.
[0141] software:
[0142] The following software libraries and frameworks are used:
[0143] Scapy: A Python library for measuring and analyzing network traffic.
[0144] Psutil: A Python library used to retrieve device battery information.
[0145] Flask: A Python framework used to build web interfaces for applying communication algorithms in real time.
[0146] Plyer: A Python library for user notifications.
[0147] System processing overview
[0148] Get environmental data:
[0149] The device first obtains network load and remaining battery level data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery level and obtains its percentage data.
[0150] Communication algorithm selection:
[0151] The terminal selects the optimal communication algorithm based on the acquired environmental data.
[0152] If the network load is high and the battery level is 20% or more, select the "high-speed communication algorithm."
[0153] Select "Battery saving algorithm" when network load is low and battery level is below 20%.
[0154] In other situations, a "balanced communication algorithm" is applied.
[0155] Communication algorithm application and notification:
[0156] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, and network load.
[0157] Examples:
[0158] For example, consider a situation where a user is using a device, the network load is high, and the battery is at 80%. In this case, the device will perform the following steps:
[0159] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0160] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[0161] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0162] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[0163] Example prompt sentence:
[0164] We are designing a "Smart Wi-Fi Manager" application for Wi-Fi management in brick-and-mortar stores. It selects the optimal communication algorithm (high-speed communication algorithm, battery-saving algorithm, balanced communication algorithm) based on the network load within the store and the remaining battery level of the smartphone, and adapts it in real time. The current communication status and algorithm are displayed to the user via a notification. Please use the following Python code to specifically explain what kind of data processing and calculations are performed.
[0165] The above is a specific embodiment of the present invention. This system allows users to enjoy a comfortable and efficient communication environment.
[0166] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0167] Step 1:
[0168] Obtaining environmental data
[0169] The device first obtains network load and remaining battery level data. Specifically, it uses the Scapy library to measure the current data traffic volume and analyze the number of connected devices. This determines whether the network load is "high" or "low." It also uses the Psutil library to check the current remaining battery level and obtain its percentage data. The input is the network state and the device's battery status, and the output is information about the network load and remaining battery level.
[0170] Step 2:
[0171] Selection of communication algorithm
[0172] Next, the device selects the optimal communication algorithm based on the acquired environmental data. Specifically, if the network load is high and the remaining battery level is 20% or more, it selects a "high-speed communication algorithm," and if the network load is low and the remaining battery level is 20% or less, it selects a "battery-saving algorithm." In all other cases, it selects a "balanced communication algorithm." The input is information about the network load and remaining battery level, and the output is the selected communication algorithm.
[0173] Step 3:
[0174] Application of communication algorithms
[0175] The terminal applies the selected communication algorithm to the system settings in real time. Specifically, the terminal's communication settings are changed to apply the optimal communication protocol and settings according to the selected algorithm. The input is the selected communication algorithm, and the output is the newly set communication protocol.
[0176] Step 4:
[0177] User Notification
[0178] The device notifies the user that the selected communication algorithm has been applied. Specifically, it uses the Plyer library to notify the user of information such as the communication algorithm, network load, and remaining battery level via a pop-up notification. The input is the newly set communication protocol and environmental data, and the output is a notification message for the user.
[0179] Step 5:
[0180] Monitoring and reassessing data
[0181] The device continuously monitors environmental data and repeats steps 1 to 4 described above according to changes in network load and remaining battery power. This ensures that the optimal communication environment is always maintained. The input is continuously acquired network and battery information, and the output is new communication settings and user notifications as needed.
[0182] Through the above processing steps, the terminal can apply the optimal communication algorithm according to the network load and battery state, and can notify the user as appropriate.
[0183] 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.
[0184] This system allows the device to acquire environmental information and user emotional information, select the optimal communication algorithm based on that information, and apply the selected algorithm to maintain high-speed, stable communication while reducing battery consumption.In addition, it is equipped with an emotion engine that recognizes the user's emotional state, improving the user experience.
[0185] Acquiring environmental data from a device
[0186] The device first obtains network load and battery remaining data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery power and obtains its percentage data.
[0187] Acquiring emotion data from the device
[0188] To recognize the user's emotions, the device is equipped with an emotion engine. The emotion engine analyzes the user's voice, facial expressions, text data, etc. to determine the user's emotional state. For example, it can determine whether the user is feeling stressed or relaxed based on changes in the tone and intonation of the voice, subtle facial movements, and words in the text that indicate emotions.
[0189] Selection of communication algorithm by terminal
[0190] Next, the device selects the optimal communication algorithm based on the acquired environmental and emotional data. Specifically, it follows the following logic:
[0191] When the network load is high and the battery level is 20% or more: A high-speed communication algorithm is selected.
[0192] When the network load is low and the battery level is below 20%, select the battery saving algorithm.
[0193] When the user is stressed: Prioritize the algorithm that prioritizes communication speed.
[0194] In other situations, a balanced communication algorithm is applied.
[0195] Device-based application and notification of settings
[0196] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, network load, and emotional state.
[0197] Specific examples
[0198] For example, consider a situation where a user is using a device, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the device will perform the following steps:
[0199] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0200] 2. The emotion engine recognizes the user's stress state.
[0201] 3. Because the load is high and the battery level is sufficient, the user is feeling stressed, so the device selects the "high-speed communication algorithm."
[0202] 4. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0203] 5. The device notifies the user that "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[0204] This not only allows users to enjoy a comfortable and efficient communication environment, but also provides a flexible communication environment that responds to their emotions.
[0205] The processing flow will be explained below.
[0206] Step 1:
[0207] The terminal measures the network load.
[0208] The device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low.
[0209] Step 2:
[0210] The device measures the remaining battery power.
[0211] The device checks the current battery level and gets the percentage.
[0212] Step 3:
[0213] The terminal recognizes the user's emotional state.
[0214] The device's built-in emotion engine analyzes the user's voice, facial expressions, and text data to determine their emotional state. For example, it can determine whether the user is stressed or relaxed based on changes in the tone and tone of their voice, subtle facial movements, and emotional words in the text.
[0215] Step 4:
[0216] The device analyzes environmental and emotional data.
[0217] The device comprehensively analyzes the network load status (high / low), remaining battery power, and the user's emotional state to understand the current communication environment and the user's state.
[0218] Step 5:
[0219] The terminal selects the optimal communication algorithm.
[0220] The device determines the communication algorithm using the following logic:
[0221] When the network load is high and the battery level is 20% or more: Select the "high-speed communication algorithm."
[0222] When the network load is low and the battery level is below 20%, select "Battery saving algorithm".
[0223] If the user is feeling stressed: Prioritize the "algorithm that prioritizes communication speed."
[0224] In other situations, a "balanced communication algorithm" is applied.
[0225] Step 6:
[0226] The terminal applies the selected communication algorithm to the system.
[0227] The terminal changes its communication settings according to the selected communication algorithm and applies the settings in real time to realize an optimized communication environment.
[0228] Step 7:
[0229] The terminal sends a notification to the user.
[0230] The device notifies the user that the setting change is complete and provides the user with information about the applied communication algorithm (e.g., "High-speed communication algorithm has been applied"), as well as information about the current network load, remaining battery level, and emotional state.
[0231] Through these processing steps, the system provides users with an optimal communication environment, enabling fast and stable communication while effectively managing battery consumption. It also adapts to the user's emotional state, providing a more comfortable user experience.
[0232] Example 2
[0233] 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."
[0234] Conventional communication systems only select communication algorithms based on environmental data, and are unable to provide an optimal communication environment that takes into account the user's emotional state. This makes it difficult to provide a flexible communication environment that responds to the user's emotions, and there is a need for methods to improve the user experience. Furthermore, there are limited methods for maintaining high-speed, stable communication while reducing battery consumption.
[0235] 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.
[0236] In this invention, the server includes means for acquiring environmental data, means for recognizing user emotion data, means for selecting a communication algorithm based on the acquired environmental data and emotion data, means for applying the selected communication algorithm in real time, and means for notifying the user of setting change information. This allows the server to select an optimal communication algorithm based on the environmental data and the user's emotional state, thereby maintaining high-speed and stable communication while reducing battery consumption. Furthermore, providing the user with a flexible communication environment that responds to their emotions improves the user experience.
[0237] "Environmental data" refers to information about external factors that affect the communication system, including, specifically, information about network load and remaining battery life.
[0238] "Network load" is information that indicates the network usage status, such as the amount of data being communicated over the network and the number of connected devices.
[0239] "Battery remaining" is information indicating the amount of power remaining in a device's battery, and is usually expressed as a percentage.
[0240] "User emotional data" refers to information about the user's emotional state, and is data analyzed from voice, facial expressions, text data, and the like.
[0241] A "communications algorithm" refers to a computational procedure or process that optimizes how data is sent and received in a communications system.
[0242] "Real time" refers to responding immediately to the moment processing occurs.
[0243] "Setting change information" is information for notifying the details of changes when changes are made to settings or algorithms within a communication system.
[0244] This invention relates to a system that selects and applies the optimal communication algorithm based on environmental data and user emotional information. This system allows a device to acquire environmental information and user emotional information, and selects and applies a communication algorithm in real time based on that information, improving communication stability and battery efficiency and enhancing the user experience.
[0245] Hardware and software used
[0246] Terminal
[0247] The device uses the following hardware and software to collect environmental and emotional data and select and apply communication algorithms:
[0248] 1. Hardware
[0249] Sensors: Equipped with a communication module for measuring network traffic and a battery monitor for checking the remaining battery level.
[0250] Camera: Used to analyze the user's facial expressions.
[0251] Microphone: Used to collect the user's voice and analyze emotions.
[0252] 2. Software
[0253] Emotion engine: Analyzes and determines the user's emotional state using speech analysis APIs (e.g., Google Cloud Speech-to-Text), facial expression recognition APIs (e.g., OpenCV and Azure Face API), and text analysis APIs (e.g., IBM Watson Natural Language Understanding).
[0254] Communication algorithm: Equipped with logic for selecting a communication algorithm based on environmental data such as network conditions and remaining battery level, as well as user emotional data.
[0255] Specific examples
[0256] Example 1
[0257] Consider a situation where a user is using a device, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the device will perform the following steps:
[0258] 1. Using the sensor, determine that the network load is "high" and confirm that the battery level is 80%.
[0259] 2. The emotion engine analyzes the voice data collected from the microphone and recognizes the user's stress level.
[0260] 3. Based on the acquired data, the communication algorithm selects a high-speed communication algorithm under stress conditions.
[0261] 4. The selected algorithm is applied in real time and the device settings are updated.
[0262] 5. The device notifies the user that "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[0263] Example 2
[0264] Consider a situation where a user is using a device in a relaxed state, the network load is low, and the battery is at 15%. In this case, the device performs the following steps:
[0265] 1. Using the sensor, determine that the network load is "low" and confirm that the battery level is 15%.
[0266] 2. The emotion engine analyzes facial expression data collected from the camera and recognizes that the user is relaxed.
[0267] 3. Based on the acquired data, the communication algorithm selects a battery saving algorithm.
[0268] 4. The selected algorithm is applied in real time and the device settings are updated.
[0269] 5. The device notifies the user: "Battery saving algorithm applied. Network load: low, battery remaining: 15%, emotional state: relaxed."
[0270] Prompt Sentence Examples
[0271] Here are some examples of prompts to input to a generative AI model:
[0272] "If the user is using the device, the network load is high, the battery is at 80%, and the user is feeling stressed, how would this system select a communication algorithm and notify the user?"
[0273] Through these detailed implementation procedures and concrete examples, the present invention can provide a more comfortable communication experience by selecting and applying the optimal communication algorithm in real time according to the user's mood and environmental conditions at the time.
[0274] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0275] Step 1: Obtaining environmental data
[0276] The device first uses the communication module to measure the network traffic volume and obtains the current data traffic volume, and then uses the OS's battery monitoring API to check the remaining battery level.
[0277] Input: Network traffic volume, remaining battery level
[0278] Data processing: Analyzes network traffic volume and determines whether the load is "high" or "low." Obtains remaining battery power as a percentage.
[0279] Output: Network load and battery level data
[0280] Step 2: Obtaining user emotion data
[0281] To recognize the user's emotions, the device first records voice data using the microphone. Then, it converts the voice data into text using a voice analysis API and analyzes it with the emotion engine. At the same time, it captures facial expressions with the camera and obtains facial expression data using the facial expression recognition API. It then uses the text analysis engine to analyze emotions from text messages.
[0282] Input: Voice data, facial expression data, text data
[0283] Data processing: Converts voice data into text and analyzes tone and timbre. Evaluates facial expression data in real time and analyzes emotional vocabulary in the text data.
[0284] Output: User's emotional state (stressed, relaxed, etc.)
[0285] Step 3: Selecting a communication algorithm
[0286] The device comprehensively evaluates the acquired environmental data (network load and remaining battery level) and the user's emotional data, and selects the appropriate communication algorithm according to multiple set selection criteria.
[0287] Input: Environmental data, user emotion data
[0288] Data processing: Evaluate conditions based on environmental data and emotional data to select the appropriate algorithm. For example, if the network load is high, the remaining battery level is over 20%, and the user is feeling stressed, select the "high-speed communication algorithm."
[0289] Output: Selected communication algorithm
[0290] Step 4: Applying settings and notifications
[0291] The device applies the selected communication algorithm to the system settings in real time, which includes updating the internal system configuration file and immediately updating the settings menu. After the settings are changed, the device notifies the user of the current setting status.
[0292] Input: Selected communication algorithm
[0293] Data processing: The selected algorithm is applied to the device settings to generate a notification for the user. For example, if a high-speed communication algorithm is applied, the notification will read, "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[0294] Output: Applied settings, user notification
[0295] (Application example 2)
[0296] 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."
[0297] Improving the quality of the user experience is crucial for modern content delivery services. However, the quality of communication is significantly affected by fluctuations in network load, battery level, and the user's emotional state. Conventional technologies have struggled to comprehensively consider these factors and select the optimal communication algorithm in real time. As a result, users often suffer from frequent interruptions and poor quality of communication. Therefore, a comprehensive communication management system that takes into account network load, battery level, and the user's emotional state is needed.
[0298] 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.
[0299] In this invention, the server includes means for acquiring environmental data, means for acquiring emotion data, means for selecting a communication algorithm, and means for applying the selected communication algorithm. This makes it possible to select and apply the optimal communication algorithm in real time based on the network load, remaining battery power, and the user's emotional state, and to notify the user of the current situation and information on the selected communication algorithm.
[0300] "Environmental data" is information about the situation in which the terminal used by the user is placed, such as the network load and remaining battery power of the terminal.
[0301] "Emotion data" is information about the user's emotional state obtained by analyzing audio data, video data, and text data.
[0302] "Communication algorithm" refers to the data communication method and settings selected based on the network load, remaining battery power, and the user's emotional state.
[0303] An "emotion engine" is a device or software that analyzes audio, video, and text data to determine a user's emotional state.
[0304] "Network load" refers to information about the network usage status, such as the amount of data traffic when a terminal communicates and the number of connected devices.
[0305] "Battery remaining" is a value that indicates how much the terminal's battery is currently charged.
[0306] A "high-speed communication algorithm" is an algorithm for maximizing communication speed when the network is under heavy load or when the user is feeling stressed.
[0307] The "battery saving algorithm" is an algorithm for reducing battery consumption when the network load is low and the remaining battery power is low.
[0308] "User notification" is a function that allows the terminal to inform the user of information such as the selected communication algorithm, remaining battery level, network load, and the user's emotional state.
[0309] This system provides a comfortable and efficient communication environment by providing a means for acquiring environmental and emotional data from the user's device, and then selecting and implementing the optimal communication algorithm based on that data.
[0310] First, the server obtains environmental data from the user's device. This environmental data includes the network load and remaining battery level. The network load is measured based on the amount of data traffic and the number of connected devices, while the remaining battery level is a value that indicates the current level of charge in the device's battery. Specifically, the server obtains the network load and remaining battery level information using the Python psutil library.
[0311] Next, the user's emotional state is determined using emotional data acquisition means. Emotional data is obtained by analyzing audio data, video data, and text data. A voice analysis library such as Pydub is used to analyze audio, and a generative AI model using Transformer is used to analyze the emotions in text data. An image analysis library such as OpenCV is used to analyze video data. These data are analyzed to determine the user's emotional state, such as whether they are stressed or relaxed.
[0312] The server selects a communication algorithm based on the acquired environmental data and emotion data. Specifically, it selects a communication algorithm based on the following rules:
[0313] A high-speed communication algorithm is selected under conditions where the network load is high and the battery level is 20% or more.
[0314] A battery saving algorithm is selected under conditions where the network load is low and the battery level is below 20%.
[0315] When a user is feeling stressed, an algorithm that prioritizes communication speed is selected.
[0316] The selected communication algorithm is immediately applied to the device's system settings by the server, allowing the user to communicate with settings optimized for the current communication conditions.
[0317] Furthermore, when a setting change is made, the server notifies the user of information about the communication algorithm, remaining battery level, network load, and emotional state, which helps the user understand the current communication environment.
[0318] As a concrete example, consider a situation where a user is using a streaming service, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the server performs the following steps:
[0319] Determine that the network load is "high" and check that the battery level is 80%.
[0320] The emotion engine recognizes the user's stress state.
[0321] Since the load is high and the battery level is sufficient, the user is feeling stressed, so a high-speed communication algorithm is selected.
[0322] High-speed communication algorithms are instantly applied to maximize communication speeds.
[0323] The server notifies the user: "High-speed communication algorithm applied. Network load: high, battery level: 80%, emotional state: stressed."
[0324] An example of a prompt might be:
[0325] "Please explain how you would choose your algorithms and apply settings when a user is using a streaming service, the network is heavily loaded, the battery is at 80%, and the user is stressed."
[0326] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0327] Step 1:
[0328] The device measures the current network load and obtains data on the remaining battery level. The input is data from the device's built-in sensor, and the output is numerical data on the network load and remaining battery level. Specifically, the data traffic volume and remaining battery level are obtained using the Python psutil library.
[0329] Step 2:
[0330] The device estimates the user's emotional state using microphone, camera, and text input data. The inputs are audio, video, and text data, and the output is the user's emotional state (stress, relaxation, etc.). The emotion engine performs audio analysis using the Pydub library, video analysis using OpenCV, and text analysis using a generative AI model (e.g., Transformer).
[0331] Step 3:
[0332] The server selects the optimal communication algorithm based on the acquired data on network load, remaining battery level, and emotional state. The input is environmental data and emotional data, and the output is the selected communication algorithm (high-speed communication algorithm, battery-saving algorithm, etc.). For example, if the network load is high and the remaining battery level is 20% or more, the high-speed communication algorithm is selected.
[0333] Step 4:
[0334] The server applies the selected communication algorithm to the terminal. The input is the selected communication algorithm, and the output is a change to the communication settings used by the terminal. Specifically, it directly rewrites the terminal's communication setting file and system settings.
[0335] Step 5:
[0336] The server notifies the user of changes to the communication algorithm, as well as information about the current network load, remaining battery level, and emotional state. The input is the communication algorithm selected by the server, environmental data, and emotional data, and the output is information displayed through the device's notification function. For example, a message such as "High-speed communication algorithm applied. Network load: high, remaining battery: 80%, emotional state: stressed" may be displayed.
[0337] 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.
[0338] 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.
[0339] 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.
[0340] [Second embodiment]
[0341] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0342] 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.
[0343] 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).
[0344] 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.
[0345] 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.
[0346] 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).
[0347] 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.
[0348] 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.
[0349] 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.
[0350] 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.
[0351] 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.
[0352] 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."
[0353] In this system, the terminal acquires environmental information, selects the optimal communication algorithm based on that information, and applies the selected algorithm, thereby maintaining high-speed and stable communication while reducing battery consumption.
[0354] Acquiring environmental data from a device
[0355] The device first obtains network load and remaining battery level data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery level and obtains its percentage data.
[0356] Selection of communication algorithm by terminal
[0357] Next, the device selects the optimal communication algorithm based on the acquired environmental data. Specifically, it follows the following logic:
[0358] When the network load is high and the battery level is above 20%, the device will select the "high-speed communication algorithm."
[0359] When the network load is low and the battery level is below 20%, the device will select the "battery saving algorithm".
[0360] In other situations, the terminal applies a "balanced communication algorithm."
[0361] Device-based application and notification of settings
[0362] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, and network load.
[0363] Specific examples
[0364] For example, consider a situation where a user is using a device, the network load is high, and the battery is at 80%. In this case, the device will perform the following steps:
[0365] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0366] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[0367] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0368] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[0369] This allows users to enjoy a comfortable and efficient communication environment.
[0370] The processing flow will be explained below.
[0371] Step 1:
[0372] The terminal measures the network load.
[0373] The device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low.
[0374] Step 2:
[0375] The device measures the remaining battery power.
[0376] The device checks the current battery level and gets the percentage.
[0377] Step 3:
[0378] The device analyzes the environmental data.
[0379] The device performs a comprehensive analysis of the state of the communication environment based on the network load status (high / low) and remaining battery level.
[0380] Step 4:
[0381] The terminal selects the optimal communication algorithm.
[0382] The device determines the communication algorithm using the following logic:
[0383] When the network load is high and the battery level is 20% or more: A high-speed communication algorithm is selected.
[0384] When the network load is low and the battery level is below 20%, select the battery saving algorithm.
[0385] In other situations, a balanced communication algorithm is applied.
[0386] Step 5:
[0387] The terminal applies the selected communication algorithm to the system.
[0388] The terminal changes its communication settings according to the selected communication algorithm and applies the settings in real time to realize an optimized communication environment.
[0389] Step 6:
[0390] The terminal sends a notification to the user.
[0391] The device notifies the user that the setting change is complete, and provides the user with information about the applied communication algorithm (e.g., a high-speed communication algorithm has been applied), as well as the current network load and remaining battery level.
[0392] Through the above processing steps, the system provides the user with an optimal communication environment, enabling high-speed and stable communication while effectively managing battery consumption.
[0393] Example 1
[0394] 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."
[0395] In conventional communication systems, it has been difficult to select an optimal communication algorithm while fully considering the network load and remaining battery power. As a result, problems such as unstable communication speeds and rapid battery consumption have occurred. The present invention aims to solve these problems and reduce battery consumption while providing users with a high-speed, stable communication environment.
[0396] 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.
[0397] In this invention, the server includes means for measuring network load and analyzing the number of devices, means for measuring remaining battery power, means for analyzing acquired environmental data and selecting an optimal communication algorithm, means for applying the selected communication algorithm to system settings in real time, and means for notifying of setting changes, thereby making it possible to effectively reduce battery consumption while maintaining high-speed and stable communication.
[0398] "Network load" is a measure of the amount of bandwidth or data traffic being used within a network.
[0399] "Analyzing the number of devices" means identifying the number of devices and terminals connected to the network and analyzing their status.
[0400] "Battery remaining" is an indicator of the current state of a device's battery, usually expressed as a percentage.
[0401] "Analyzing environmental data" means processing the acquired data, such as network load and remaining battery level, to determine the situation and optimal settings.
[0402] "Selecting a communication algorithm" means selecting the most appropriate communication method based on the acquired and analyzed environmental data.
[0403] "Applying to system settings in real time" means that the selected communication algorithm is applied instantly and the system settings are updated and reflected immediately.
[0404] "Notifying the user of a setting change" means informing the user of changes to the system settings.
[0405] MODE FOR CARRYING OUT THE INVENTION
[0406] The present invention relates to a system in which a terminal selects an optimal communication algorithm based on the network load and remaining battery power, thereby reducing battery consumption while maintaining high-speed and stable communication.
[0407] Obtaining environmental data
[0408] First, the device obtains data on the network load and remaining battery level. To measure the network load, the device's network interface is used to measure the current amount of data traffic. Specifically, the Netstat command or a dedicated measurement API (e.g., the TrafficStats class on Android) is used. The device also analyzes network scanner and router data to analyze the number of connected devices. This makes it possible to determine whether the network load is high or low. To determine the remaining battery level, the device's internal battery sensor is used to obtain the current status. Specifically, the BatteryManager API (e.g., BatteryManager.BATTERY_PROPERTY_CAPACITY on Android) is used.
[0409] Selection of communication algorithm
[0410] Next, the device analyzes the acquired environmental data and selects the optimal communication algorithm. Specifically, it determines the communication algorithm based on the following logic:
[0411] When the network load is high and the battery level is above 20%, the device will select the "high-speed communication algorithm."
[0412] When the network load is low and the battery level is below 20%, the device will select the "battery saving algorithm".
[0413] In other situations, the terminal applies a "balanced communication algorithm."
[0414] Setting enforcement and notifications
[0415] The selected communication algorithm is applied to the device's system settings in real time. For example, if a "high-speed communication algorithm" is selected, the device will change the settings to allow the device to use the maximum bandwidth of Wi-Fi, 4G, and 5G. Once the setting change is complete, the device will notify the user. The notification will include the current communication algorithm, remaining battery level, network load, etc. Notification methods include the notification bar and a pop-up window.
[0416] Specific examples
[0417] For example, consider a situation where a user is using a device, the network is busy, and the battery is at 80%. In this case, the device will do the following:
[0418] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0419] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[0420] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0421] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[0422] This invention allows users to enjoy a comfortable and efficient communication environment.
[0423] Example prompts to be input to the generative AI model
[0424] "The system should select a high-speed communication algorithm when the network load is high and the battery level is high. Specific environmental conditions are assumed to be high data traffic and many connected devices."
[0425] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0426] Step 1: Obtaining the network load
[0427] The device obtains the network load. Specifically, it measures the current data traffic volume using the device's network interface. As input, it obtains data traffic information from the network interface and analyzes the data traffic volume based on that information. For example, it uses the Netstat command or a dedicated measurement API (TrafficStats class in Android). As output, it obtains network load data. For example, it determines that network traffic exceeds 1GB / h.
[0428] Step 2: Analyze the number of connected devices
[0429] The terminal analyzes the number of devices connected to the network. As input, it obtains information about connected devices using a network scanner or analyzing router data. Specifically, it obtains a device list from the router and counts the number of devices. As output, it obtains the number of connected devices. For example, if there are 10 or more connected devices, it determines that the network load is "high."
[0430] Step 3: Get the battery level
[0431] The device checks the current remaining battery capacity. As input, it collects battery information from the device's battery sensor and obtains the percentage data. Specifically, it uses the BatteryManager API (e.g., BatteryManager.BATTERY_PROPERTY_CAPACITY on Android). As output, it obtains the current remaining battery capacity data. For example, it confirms that the battery capacity is 80%.
[0432] Step 4: Analyze environmental data
[0433] The device analyzes the acquired network load and remaining battery data. The network load data and remaining battery data acquired in step 1 and step 2 are used as input. The output determines whether the current environmental state is high or low load, and whether the battery is high or low. For example, if the network load is high (over 1GB / h) and the remaining battery is 80%, it is determined to be "high load, high battery."
[0434] Step 5: Selecting a communication algorithm
[0435] The device selects the optimal communication algorithm based on the analysis results. The environmental condition data obtained in step 4 is used as input. The optimal communication algorithm is selected as output. Specifically, it is based on the following logic: if the network load is high and the remaining battery level is 20% or more, the "high-speed communication algorithm" is selected. For example, in the case of "high load and high battery," the "high-speed communication algorithm" is selected.
[0436] Step 6: Applying the communication algorithm
[0437] The device applies the selected communication algorithm to the system settings in real time. The communication algorithm data selected in step 5 is used as input. The system settings are updated as output. For example, if a "high-speed communication algorithm" is selected, the settings are changed so that the device can use the maximum bandwidth of Wi-Fi or 4G / 5G.
[0438] Step 7: Notify users
[0439] The device notifies the user of the setting change. As input, it obtains the communication algorithm applied in step 6 and its detailed information. Specifically, it sends a notification to the user using a notification bar or a pop-up window. As output, the user can be made aware of the setting change. For example, it may notify the user that "A high-speed communication algorithm has been applied. Network load: high, remaining battery: 80%."
[0440] (Application example 1)
[0441] 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."
[0442] Conventional communication systems have the problem that it is difficult to reduce battery consumption while maintaining high-speed communication when the network load is high or the battery level is low. In addition, there is no function to notify the user of the communication algorithm selection results in real time, making it difficult for the user to grasp the current communication status.
[0443] 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.
[0444] In this invention, the server includes means for acquiring environmental data, means for selecting a communication algorithm, means for applying the selected communication algorithm, and means for notifying the user, thereby making it possible to select an optimal communication algorithm depending on the network load and remaining battery power, and notify the user of the selection.
[0445] "Environmental data" refers to information about the surrounding communication environment obtained by a device, and specifically includes the amount of network traffic and the number of connected devices.
[0446] A "communication algorithm" refers to the method or means applied when communicating, and is a means of achieving optimal communication quality and battery consumption based on environmental data.
[0447] The "means for notifying the user" refers to a method or device for notifying the user of information about the selected communication algorithm and the current communication environment. Specifically, this includes display devices such as smartphones and tablets.
[0448] "Network load" refers to the level of usage and traffic on a communications network, and varies depending on the number of connected devices and the amount of data sent and received.
[0449] "Battery Remaining" refers to the remaining capacity of the device's battery, expressed as the current battery percentage.
[0450] A "high-speed communication algorithm" is an algorithm for achieving high communication speeds, and is mainly selected when the network load is high.
[0451] A "battery saving algorithm" is an algorithm for reducing battery consumption, and is mainly selected when the battery level is low.
[0452] The system of the present invention includes means for acquiring environmental data, selecting a communication algorithm, applying the selected communication algorithm, and notifying the user of the results. Specific embodiments for carrying out the present invention will be described in detail below.
[0453] Hardware and Software Configuration
[0454] Hardware:
[0455] This system requires the following hardware:
[0456] Smartphone: The primary device for applying communication algorithms and informing the user.
[0457] Wi-Fi router: A network device used to measure network load and transmit data.
[0458] software:
[0459] The following software libraries and frameworks are used:
[0460] Scapy: A Python library for measuring and analyzing network traffic.
[0461] Psutil: A Python library used to retrieve device battery information.
[0462] Flask: A Python framework used to build web interfaces for applying communication algorithms in real time.
[0463] Plyer: A Python library for user notifications.
[0464] System processing overview
[0465] Get environmental data:
[0466] The device first obtains network load and remaining battery level data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery level and obtains its percentage data.
[0467] Communication algorithm selection:
[0468] The terminal selects the optimal communication algorithm based on the acquired environmental data.
[0469] If the network load is high and the battery level is 20% or more, select the "high-speed communication algorithm."
[0470] Select "Battery saving algorithm" when network load is low and battery level is below 20%.
[0471] In other situations, a "balanced communication algorithm" is applied.
[0472] Communication algorithm application and notification:
[0473] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, and network load.
[0474] Examples:
[0475] For example, consider a situation where a user is using a device, the network load is high, and the battery is at 80%. In this case, the device will perform the following steps:
[0476] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0477] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[0478] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0479] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[0480] Example prompt sentence:
[0481] We are designing a "Smart Wi-Fi Manager" application for Wi-Fi management in brick-and-mortar stores. It selects the optimal communication algorithm (high-speed communication algorithm, battery-saving algorithm, balanced communication algorithm) based on the network load within the store and the remaining battery level of the smartphone, and adapts it in real time. The current communication status and algorithm are displayed to the user via a notification. Please use the following Python code to specifically explain what kind of data processing and calculations are performed.
[0482] The above is a specific embodiment of the present invention. This system allows users to enjoy a comfortable and efficient communication environment.
[0483] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0484] Step 1:
[0485] Obtaining environmental data
[0486] The device first obtains network load and remaining battery level data. Specifically, it uses the Scapy library to measure the current data traffic volume and analyze the number of connected devices. This determines whether the network load is "high" or "low." It also uses the Psutil library to check the current remaining battery level and obtain its percentage data. The input is the network state and the device's battery status, and the output is information about the network load and remaining battery level.
[0487] Step 2:
[0488] Selection of communication algorithm
[0489] Next, the device selects the optimal communication algorithm based on the acquired environmental data. Specifically, if the network load is high and the remaining battery level is 20% or more, it selects a "high-speed communication algorithm," and if the network load is low and the remaining battery level is 20% or less, it selects a "battery-saving algorithm." In all other cases, it selects a "balanced communication algorithm." The input is information about the network load and remaining battery level, and the output is the selected communication algorithm.
[0490] Step 3:
[0491] Application of communication algorithms
[0492] The terminal applies the selected communication algorithm to the system settings in real time. Specifically, the terminal's communication settings are changed to apply the optimal communication protocol and settings according to the selected algorithm. The input is the selected communication algorithm, and the output is the newly set communication protocol.
[0493] Step 4:
[0494] User Notification
[0495] The device notifies the user that the selected communication algorithm has been applied. Specifically, it uses the Plyer library to notify the user of information such as the communication algorithm, network load, and remaining battery level via a pop-up notification. The input is the newly set communication protocol and environmental data, and the output is a notification message for the user.
[0496] Step 5:
[0497] Monitoring and reassessing data
[0498] The device continuously monitors environmental data and repeats steps 1 to 4 described above according to changes in network load and remaining battery power. This ensures that the optimal communication environment is always maintained. The input is continuously acquired network and battery information, and the output is new communication settings and user notifications as needed.
[0499] Through the above processing steps, the terminal can apply the optimal communication algorithm according to the network load and battery state, and can notify the user as appropriate.
[0500] 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.
[0501] This system allows the device to acquire environmental information and user emotional information, select the optimal communication algorithm based on that information, and apply the selected algorithm to maintain high-speed, stable communication while reducing battery consumption.In addition, it is equipped with an emotion engine that recognizes the user's emotional state, improving the user experience.
[0502] Acquiring environmental data from a device
[0503] The device first obtains network load and battery remaining data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery power and obtains its percentage data.
[0504] Acquiring emotion data from the device
[0505] To recognize the user's emotions, the device is equipped with an emotion engine. The emotion engine analyzes the user's voice, facial expressions, text data, etc. to determine the user's emotional state. For example, it can determine whether the user is feeling stressed or relaxed based on changes in the tone and intonation of the voice, subtle facial movements, and words in the text that indicate emotions.
[0506] Selection of communication algorithm by terminal
[0507] Next, the device selects the optimal communication algorithm based on the acquired environmental and emotional data. Specifically, it follows the following logic:
[0508] When the network load is high and the battery level is 20% or more: A high-speed communication algorithm is selected.
[0509] When the network load is low and the battery level is below 20%, select the battery saving algorithm.
[0510] When the user is stressed: Prioritize the algorithm that prioritizes communication speed.
[0511] In other situations, a balanced communication algorithm is applied.
[0512] Device-based application and notification of settings
[0513] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, network load, and emotional state.
[0514] Specific examples
[0515] For example, consider a situation where a user is using a device, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the device will perform the following steps:
[0516] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0517] 2. The emotion engine recognizes the user's stress state.
[0518] 3. Because the load is high and the battery level is sufficient, the user is feeling stressed, so the device selects the "high-speed communication algorithm."
[0519] 4. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0520] 5. The device notifies the user that "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[0521] This not only allows users to enjoy a comfortable and efficient communication environment, but also provides a flexible communication environment that responds to their emotions.
[0522] The processing flow will be explained below.
[0523] Step 1:
[0524] The terminal measures the network load.
[0525] The device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low.
[0526] Step 2:
[0527] The device measures the remaining battery power.
[0528] The device checks the current battery level and gets the percentage.
[0529] Step 3:
[0530] The terminal recognizes the user's emotional state.
[0531] The device's built-in emotion engine analyzes the user's voice, facial expressions, and text data to determine their emotional state. For example, it can determine whether the user is stressed or relaxed based on changes in the tone and tone of their voice, subtle facial movements, and emotional words in the text.
[0532] Step 4:
[0533] The device analyzes environmental and emotional data.
[0534] The device comprehensively analyzes the network load status (high / low), remaining battery power, and the user's emotional state to understand the current communication environment and the user's state.
[0535] Step 5:
[0536] The terminal selects the optimal communication algorithm.
[0537] The device determines the communication algorithm using the following logic:
[0538] When the network load is high and the battery level is 20% or more: Select the "high-speed communication algorithm."
[0539] When the network load is low and the battery level is below 20%, select "Battery saving algorithm".
[0540] If the user is feeling stressed: Prioritize the "algorithm that prioritizes communication speed."
[0541] In other situations, a "balanced communication algorithm" is applied.
[0542] Step 6:
[0543] The terminal applies the selected communication algorithm to the system.
[0544] The terminal changes its communication settings according to the selected communication algorithm and applies the settings in real time to realize an optimized communication environment.
[0545] Step 7:
[0546] The terminal sends a notification to the user.
[0547] The device notifies the user that the setting change is complete and provides the user with information about the applied communication algorithm (e.g., "High-speed communication algorithm has been applied"), as well as information about the current network load, remaining battery level, and emotional state.
[0548] Through these processing steps, the system provides users with an optimal communication environment, enabling fast and stable communication while effectively managing battery consumption. It also adapts to the user's emotional state, providing a more comfortable user experience.
[0549] Example 2
[0550] 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."
[0551] Conventional communication systems only select communication algorithms based on environmental data, and are unable to provide an optimal communication environment that takes into account the user's emotional state. This makes it difficult to provide a flexible communication environment that responds to the user's emotions, and there is a need for methods to improve the user experience. Furthermore, there are limited methods for maintaining high-speed, stable communication while reducing battery consumption.
[0552] 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.
[0553] In this invention, the server includes means for acquiring environmental data, means for recognizing user emotion data, means for selecting a communication algorithm based on the acquired environmental data and emotion data, means for applying the selected communication algorithm in real time, and means for notifying the user of setting change information. This allows the server to select an optimal communication algorithm based on the environmental data and the user's emotional state, thereby maintaining high-speed and stable communication while reducing battery consumption. Furthermore, providing the user with a flexible communication environment that responds to their emotions improves the user experience.
[0554] "Environmental data" refers to information about external factors that affect the communication system, including, specifically, information about network load and remaining battery life.
[0555] "Network load" is information that indicates the network usage status, such as the amount of data being communicated over the network and the number of connected devices.
[0556] "Battery remaining" is information indicating the amount of power remaining in a device's battery, and is usually expressed as a percentage.
[0557] "User emotional data" refers to information about the user's emotional state, and is data analyzed from voice, facial expressions, text data, and the like.
[0558] A "communications algorithm" refers to a computational procedure or process that optimizes how data is sent and received in a communications system.
[0559] "Real time" refers to responding immediately to the moment processing occurs.
[0560] "Setting change information" is information for notifying the details of changes when changes are made to settings or algorithms within a communication system.
[0561] This invention relates to a system that selects and applies the optimal communication algorithm based on environmental data and user emotional information. This system allows a device to acquire environmental information and user emotional information, and selects and applies a communication algorithm in real time based on that information, improving communication stability and battery efficiency and enhancing the user experience.
[0562] Hardware and software used
[0563] Terminal
[0564] The device uses the following hardware and software to collect environmental and emotional data and select and apply communication algorithms:
[0565] 1. Hardware
[0566] Sensors: Equipped with a communication module for measuring network traffic and a battery monitor for checking the remaining battery level.
[0567] Camera: Used to analyze the user's facial expressions.
[0568] Microphone: Used to collect the user's voice and analyze emotions.
[0569] 2. Software
[0570] Emotion engine: Analyzes and determines the user's emotional state using speech analysis APIs (e.g., Google Cloud Speech-to-Text), facial expression recognition APIs (e.g., OpenCV and Azure Face API), and text analysis APIs (e.g., IBM Watson Natural Language Understanding).
[0571] Communication algorithm: Equipped with logic for selecting a communication algorithm based on environmental data such as network conditions and remaining battery level, as well as user emotional data.
[0572] Specific examples
[0573] Example 1
[0574] Consider a situation where a user is using a device, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the device will perform the following steps:
[0575] 1. Using the sensor, determine that the network load is "high" and confirm that the battery level is 80%.
[0576] 2. The emotion engine analyzes the voice data collected from the microphone and recognizes the user's stress level.
[0577] 3. Based on the acquired data, the communication algorithm selects a high-speed communication algorithm under stress conditions.
[0578] 4. The selected algorithm is applied in real time and the device settings are updated.
[0579] 5. The device notifies the user that "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[0580] Example 2
[0581] Consider a situation where a user is using a device in a relaxed state, the network load is low, and the battery is at 15%. In this case, the device performs the following steps:
[0582] 1. Using the sensor, determine that the network load is "low" and confirm that the battery level is 15%.
[0583] 2. The emotion engine analyzes facial expression data collected from the camera and recognizes that the user is relaxed.
[0584] 3. Based on the acquired data, the communication algorithm selects a battery saving algorithm.
[0585] 4. The selected algorithm is applied in real time and the device settings are updated.
[0586] 5. The device notifies the user: "Battery saving algorithm applied. Network load: low, battery remaining: 15%, emotional state: relaxed."
[0587] Prompt Sentence Examples
[0588] Here are some examples of prompts to input to a generative AI model:
[0589] "If the user is using the device, the network load is high, the battery is at 80%, and the user is feeling stressed, how would this system select a communication algorithm and notify the user?"
[0590] Through these detailed implementation procedures and concrete examples, the present invention can provide a more comfortable communication experience by selecting and applying the optimal communication algorithm in real time according to the user's mood and environmental conditions at the time.
[0591] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0592] Step 1: Obtaining environmental data
[0593] The device first uses the communication module to measure the network traffic volume and obtains the current data traffic volume, and then uses the OS's battery monitoring API to check the remaining battery level.
[0594] Input: Network traffic volume, remaining battery level
[0595] Data processing: Analyzes network traffic volume and determines whether the load is "high" or "low." Obtains remaining battery power as a percentage.
[0596] Output: Network load and battery level data
[0597] Step 2: Obtaining user emotion data
[0598] To recognize the user's emotions, the device first records voice data using the microphone. Then, it converts the voice data into text using a voice analysis API and analyzes it with the emotion engine. At the same time, it captures facial expressions with the camera and obtains facial expression data using the facial expression recognition API. It then uses the text analysis engine to analyze emotions from text messages.
[0599] Input: Voice data, facial expression data, text data
[0600] Data processing: Converts voice data into text and analyzes tone and timbre. Evaluates facial expression data in real time and analyzes emotional vocabulary in the text data.
[0601] Output: User's emotional state (stressed, relaxed, etc.)
[0602] Step 3: Selecting a communication algorithm
[0603] The device comprehensively evaluates the acquired environmental data (network load and remaining battery level) and the user's emotional data, and selects the appropriate communication algorithm according to multiple set selection criteria.
[0604] Input: Environmental data, user emotion data
[0605] Data processing: Evaluate conditions based on environmental data and emotional data to select the appropriate algorithm. For example, if the network load is high, the remaining battery level is over 20%, and the user is feeling stressed, select the "high-speed communication algorithm."
[0606] Output: Selected communication algorithm
[0607] Step 4: Applying settings and notifications
[0608] The device applies the selected communication algorithm to the system settings in real time, which includes updating the internal system configuration file and immediately updating the settings menu. After the settings are changed, the device notifies the user of the current setting status.
[0609] Input: Selected communication algorithm
[0610] Data processing: The selected algorithm is applied to the device settings to generate a notification for the user. For example, if a high-speed communication algorithm is applied, the notification will read, "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[0611] Output: Applied settings, user notification
[0612] (Application example 2)
[0613] 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."
[0614] Improving the quality of the user experience is crucial for modern content delivery services. However, the quality of communication is significantly affected by fluctuations in network load, battery level, and the user's emotional state. Conventional technologies have struggled to comprehensively consider these factors and select the optimal communication algorithm in real time. As a result, users often suffer from frequent interruptions and poor quality of communication. Therefore, a comprehensive communication management system that takes into account network load, battery level, and the user's emotional state is needed.
[0615] 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.
[0616] In this invention, the server includes means for acquiring environmental data, means for acquiring emotion data, means for selecting a communication algorithm, and means for applying the selected communication algorithm. This makes it possible to select and apply the optimal communication algorithm in real time based on the network load, remaining battery power, and the user's emotional state, and to notify the user of the current situation and information on the selected communication algorithm.
[0617] "Environmental data" is information about the situation in which the terminal used by the user is placed, such as the network load and remaining battery power of the terminal.
[0618] "Emotion data" is information about the user's emotional state obtained by analyzing audio data, video data, and text data.
[0619] "Communication algorithm" refers to the data communication method and settings selected based on the network load, remaining battery power, and the user's emotional state.
[0620] An "emotion engine" is a device or software that analyzes audio, video, and text data to determine a user's emotional state.
[0621] "Network load" refers to information about the network usage status, such as the amount of data traffic when a terminal communicates and the number of connected devices.
[0622] "Battery remaining" is a value that indicates how much the terminal's battery is currently charged.
[0623] A "high-speed communication algorithm" is an algorithm for maximizing communication speed when the network is under heavy load or when the user is feeling stressed.
[0624] The "battery saving algorithm" is an algorithm for reducing battery consumption when the network load is low and the remaining battery power is low.
[0625] "User notification" is a function that allows the terminal to inform the user of information such as the selected communication algorithm, remaining battery level, network load, and the user's emotional state.
[0626] This system provides a comfortable and efficient communication environment by providing a means for acquiring environmental and emotional data from the user's device, and then selecting and implementing the optimal communication algorithm based on that data.
[0627] First, the server obtains environmental data from the user's device. This environmental data includes the network load and remaining battery level. The network load is measured based on the amount of data traffic and the number of connected devices, while the remaining battery level is a value that indicates the current level of charge in the device's battery. Specifically, the server obtains the network load and remaining battery level information using the Python psutil library.
[0628] Next, the user's emotional state is determined using emotional data acquisition means. Emotional data is obtained by analyzing audio data, video data, and text data. A voice analysis library such as Pydub is used to analyze audio, and a generative AI model using Transformer is used to analyze the emotions in text data. An image analysis library such as OpenCV is used to analyze video data. These data are analyzed to determine the user's emotional state, such as whether they are stressed or relaxed.
[0629] The server selects a communication algorithm based on the acquired environmental data and emotion data. Specifically, it selects a communication algorithm based on the following rules:
[0630] A high-speed communication algorithm is selected under conditions where the network load is high and the battery level is 20% or more.
[0631] A battery saving algorithm is selected under conditions where the network load is low and the battery level is below 20%.
[0632] When a user is feeling stressed, an algorithm that prioritizes communication speed is selected.
[0633] The selected communication algorithm is immediately applied to the device's system settings by the server, allowing the user to communicate with settings optimized for the current communication conditions.
[0634] Furthermore, when a setting change is made, the server notifies the user of information about the communication algorithm, remaining battery level, network load, and emotional state, which helps the user understand the current communication environment.
[0635] As a concrete example, consider a situation where a user is using a streaming service, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the server performs the following steps:
[0636] Determine that the network load is "high" and check that the battery level is 80%.
[0637] The emotion engine recognizes the user's stress state.
[0638] Since the load is high and the battery level is sufficient, the user is feeling stressed, so a high-speed communication algorithm is selected.
[0639] High-speed communication algorithms are instantly applied to maximize communication speeds.
[0640] The server notifies the user: "High-speed communication algorithm applied. Network load: high, battery level: 80%, emotional state: stressed."
[0641] An example of a prompt might be:
[0642] "Please explain how you would choose your algorithms and apply settings when a user is using a streaming service, the network is heavily loaded, the battery is at 80%, and the user is stressed."
[0643] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0644] Step 1:
[0645] The device measures the current network load and obtains data on the remaining battery level. The input is data from the device's built-in sensor, and the output is numerical data on the network load and remaining battery level. Specifically, the data traffic volume and remaining battery level are obtained using the Python psutil library.
[0646] Step 2:
[0647] The device estimates the user's emotional state using microphone, camera, and text input data. The inputs are audio, video, and text data, and the output is the user's emotional state (stress, relaxation, etc.). The emotion engine performs audio analysis using the Pydub library, video analysis using OpenCV, and text analysis using a generative AI model (e.g., Transformer).
[0648] Step 3:
[0649] The server selects the optimal communication algorithm based on the acquired data on network load, remaining battery level, and emotional state. The input is environmental data and emotional data, and the output is the selected communication algorithm (high-speed communication algorithm, battery-saving algorithm, etc.). For example, if the network load is high and the remaining battery level is 20% or more, the high-speed communication algorithm is selected.
[0650] Step 4:
[0651] The server applies the selected communication algorithm to the terminal. The input is the selected communication algorithm, and the output is a change to the communication settings used by the terminal. Specifically, it directly rewrites the terminal's communication setting file and system settings.
[0652] Step 5:
[0653] The server notifies the user of changes to the communication algorithm, as well as information about the current network load, remaining battery level, and emotional state. The input is the communication algorithm selected by the server, environmental data, and emotional data, and the output is information displayed through the device's notification function. For example, a message such as "High-speed communication algorithm applied. Network load: high, remaining battery: 80%, emotional state: stressed" may be displayed.
[0654] 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.
[0655] 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.
[0656] 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.
[0657] [Third embodiment]
[0658] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0659] 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.
[0660] 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).
[0661] 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.
[0662] 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.
[0663] 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).
[0664] 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.
[0665] 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.
[0666] 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.
[0667] 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.
[0668] 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.
[0669] 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."
[0670] In this system, the terminal acquires environmental information, selects the optimal communication algorithm based on that information, and applies the selected algorithm, thereby maintaining high-speed and stable communication while reducing battery consumption.
[0671] Acquiring environmental data from a device
[0672] The device first obtains network load and remaining battery level data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery level and obtains its percentage data.
[0673] Selection of communication algorithm by terminal
[0674] Next, the device selects the optimal communication algorithm based on the acquired environmental data. Specifically, it follows the following logic:
[0675] When the network load is high and the battery level is above 20%, the device will select the "high-speed communication algorithm."
[0676] When the network load is low and the battery level is below 20%, the device will select the "battery saving algorithm".
[0677] In other situations, the terminal applies a "balanced communication algorithm."
[0678] Device-based application and notification of settings
[0679] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, and network load.
[0680] Specific examples
[0681] For example, consider a situation where a user is using a device, the network load is high, and the battery is at 80%. In this case, the device will perform the following steps:
[0682] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0683] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[0684] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0685] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[0686] This allows users to enjoy a comfortable and efficient communication environment.
[0687] The processing flow will be explained below.
[0688] Step 1:
[0689] The terminal measures the network load.
[0690] The device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low.
[0691] Step 2:
[0692] The device measures the remaining battery power.
[0693] The device checks the current battery level and gets the percentage.
[0694] Step 3:
[0695] The device analyzes the environmental data.
[0696] The device performs a comprehensive analysis of the state of the communication environment based on the network load status (high / low) and remaining battery level.
[0697] Step 4:
[0698] The terminal selects the optimal communication algorithm.
[0699] The device determines the communication algorithm using the following logic:
[0700] When the network load is high and the battery level is 20% or more: A high-speed communication algorithm is selected.
[0701] When the network load is low and the battery level is below 20%, select the battery saving algorithm.
[0702] In other situations, a balanced communication algorithm is applied.
[0703] Step 5:
[0704] The terminal applies the selected communication algorithm to the system.
[0705] The terminal changes its communication settings according to the selected communication algorithm and applies the settings in real time to realize an optimized communication environment.
[0706] Step 6:
[0707] The terminal sends a notification to the user.
[0708] The device notifies the user that the setting change is complete, and provides the user with information about the applied communication algorithm (e.g., a high-speed communication algorithm has been applied), as well as the current network load and remaining battery level.
[0709] Through the above processing steps, the system provides the user with an optimal communication environment, enabling high-speed and stable communication while effectively managing battery consumption.
[0710] Example 1
[0711] 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."
[0712] In conventional communication systems, it has been difficult to select an optimal communication algorithm while fully considering the network load and remaining battery power. As a result, problems such as unstable communication speeds and rapid battery consumption have occurred. The present invention aims to solve these problems and reduce battery consumption while providing users with a high-speed, stable communication environment.
[0713] 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.
[0714] In this invention, the server includes means for measuring network load and analyzing the number of devices, means for measuring remaining battery power, means for analyzing acquired environmental data and selecting an optimal communication algorithm, means for applying the selected communication algorithm to system settings in real time, and means for notifying of setting changes, thereby making it possible to effectively reduce battery consumption while maintaining high-speed and stable communication.
[0715] "Network load" is a measure of the amount of bandwidth or data traffic being used within a network.
[0716] "Analyzing the number of devices" means identifying the number of devices and terminals connected to the network and analyzing their status.
[0717] "Battery remaining" is an indicator of the current state of a device's battery, usually expressed as a percentage.
[0718] "Analyzing environmental data" means processing the acquired data, such as network load and remaining battery level, to determine the situation and optimal settings.
[0719] "Selecting a communication algorithm" means selecting the most appropriate communication method based on the acquired and analyzed environmental data.
[0720] "Applying to system settings in real time" means that the selected communication algorithm is applied instantly and the system settings are updated and reflected immediately.
[0721] "Notifying the user of a setting change" means informing the user of changes to the system settings.
[0722] MODE FOR CARRYING OUT THE INVENTION
[0723] The present invention relates to a system in which a terminal selects an optimal communication algorithm based on the network load and remaining battery power, thereby reducing battery consumption while maintaining high-speed and stable communication.
[0724] Obtaining environmental data
[0725] First, the device obtains data on the network load and remaining battery level. To measure the network load, the device's network interface is used to measure the current amount of data traffic. Specifically, the Netstat command or a dedicated measurement API (e.g., the TrafficStats class on Android) is used. The device also analyzes network scanner and router data to analyze the number of connected devices. This makes it possible to determine whether the network load is high or low. To determine the remaining battery level, the device's internal battery sensor is used to obtain the current status. Specifically, the BatteryManager API (e.g., BatteryManager.BATTERY_PROPERTY_CAPACITY on Android) is used.
[0726] Selection of communication algorithm
[0727] Next, the device analyzes the acquired environmental data and selects the optimal communication algorithm. Specifically, it determines the communication algorithm based on the following logic:
[0728] When the network load is high and the battery level is above 20%, the device will select the "high-speed communication algorithm."
[0729] When the network load is low and the battery level is below 20%, the device will select the "battery saving algorithm".
[0730] In other situations, the terminal applies a "balanced communication algorithm."
[0731] Setting enforcement and notifications
[0732] The selected communication algorithm is applied to the device's system settings in real time. For example, if a "high-speed communication algorithm" is selected, the device will change the settings to allow the device to use the maximum bandwidth of Wi-Fi, 4G, and 5G. Once the setting change is complete, the device will notify the user. The notification will include the current communication algorithm, remaining battery level, network load, etc. Notification methods include the notification bar and a pop-up window.
[0733] Specific examples
[0734] For example, consider a situation where a user is using a device, the network is busy, and the battery is at 80%. In this case, the device will do the following:
[0735] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0736] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[0737] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0738] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[0739] This invention allows users to enjoy a comfortable and efficient communication environment.
[0740] Example prompts to be input to the generative AI model
[0741] "The system should select a high-speed communication algorithm when the network load is high and the battery level is high. Specific environmental conditions are assumed to be high data traffic and many connected devices."
[0742] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0743] Step 1: Obtaining the network load
[0744] The device obtains the network load. Specifically, it measures the current data traffic volume using the device's network interface. As input, it obtains data traffic information from the network interface and analyzes the data traffic volume based on that information. For example, it uses the Netstat command or a dedicated measurement API (TrafficStats class in Android). As output, it obtains network load data. For example, it determines that network traffic exceeds 1GB / h.
[0745] Step 2: Analyze the number of connected devices
[0746] The terminal analyzes the number of devices connected to the network. As input, it obtains information about connected devices using a network scanner or analyzing router data. Specifically, it obtains a device list from the router and counts the number of devices. As output, it obtains the number of connected devices. For example, if there are 10 or more connected devices, it determines that the network load is "high."
[0747] Step 3: Get the battery level
[0748] The device checks the current remaining battery capacity. As input, it collects battery information from the device's battery sensor and obtains the percentage data. Specifically, it uses the BatteryManager API (e.g., BatteryManager.BATTERY_PROPERTY_CAPACITY on Android). As output, it obtains the current remaining battery capacity data. For example, it confirms that the battery capacity is 80%.
[0749] Step 4: Analyze environmental data
[0750] The device analyzes the acquired network load and remaining battery data. The network load data and remaining battery data acquired in step 1 and step 2 are used as input. The output determines whether the current environmental state is high or low load, and whether the battery is high or low. For example, if the network load is high (over 1GB / h) and the remaining battery is 80%, it is determined to be "high load, high battery."
[0751] Step 5: Selecting a communication algorithm
[0752] The device selects the optimal communication algorithm based on the analysis results. The environmental condition data obtained in step 4 is used as input. The optimal communication algorithm is selected as output. Specifically, it is based on the following logic: if the network load is high and the remaining battery level is 20% or more, the "high-speed communication algorithm" is selected. For example, in the case of "high load and high battery," the "high-speed communication algorithm" is selected.
[0753] Step 6: Applying the communication algorithm
[0754] The device applies the selected communication algorithm to the system settings in real time. The communication algorithm data selected in step 5 is used as input. The system settings are updated as output. For example, if a "high-speed communication algorithm" is selected, the settings are changed so that the device can use the maximum bandwidth of Wi-Fi or 4G / 5G.
[0755] Step 7: Notify users
[0756] The device notifies the user of the setting change. As input, it obtains the communication algorithm applied in step 6 and its detailed information. Specifically, it sends a notification to the user using a notification bar or a pop-up window. As output, the user can be made aware of the setting change. For example, it may notify the user that "A high-speed communication algorithm has been applied. Network load: high, remaining battery: 80%."
[0757] (Application example 1)
[0758] 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."
[0759] Conventional communication systems have the problem that it is difficult to reduce battery consumption while maintaining high-speed communication when the network load is high or the battery level is low. In addition, there is no function to notify the user of the communication algorithm selection results in real time, making it difficult for the user to grasp the current communication status.
[0760] 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.
[0761] In this invention, the server includes means for acquiring environmental data, means for selecting a communication algorithm, means for applying the selected communication algorithm, and means for notifying the user, thereby making it possible to select an optimal communication algorithm depending on the network load and remaining battery power, and notify the user of the selection.
[0762] "Environmental data" refers to information about the surrounding communication environment obtained by a device, and specifically includes the amount of network traffic and the number of connected devices.
[0763] A "communication algorithm" refers to the method or means applied when communicating, and is a means of achieving optimal communication quality and battery consumption based on environmental data.
[0764] The "means for notifying the user" refers to a method or device for notifying the user of information about the selected communication algorithm and the current communication environment. Specifically, this includes display devices such as smartphones and tablets.
[0765] "Network load" refers to the level of usage and traffic on a communications network, and varies depending on the number of connected devices and the amount of data sent and received.
[0766] "Battery Remaining" refers to the remaining capacity of the device's battery, expressed as the current battery percentage.
[0767] A "high-speed communication algorithm" is an algorithm for achieving high communication speeds, and is mainly selected when the network load is high.
[0768] A "battery saving algorithm" is an algorithm for reducing battery consumption, and is mainly selected when the battery level is low.
[0769] The system of the present invention includes means for acquiring environmental data, selecting a communication algorithm, applying the selected communication algorithm, and notifying the user of the results. Specific embodiments for carrying out the present invention will be described in detail below.
[0770] Hardware and Software Configuration
[0771] Hardware:
[0772] This system requires the following hardware:
[0773] Smartphone: The primary device for applying communication algorithms and informing the user.
[0774] Wi-Fi router: A network device used to measure network load and transmit data.
[0775] software:
[0776] The following software libraries and frameworks are used:
[0777] Scapy: A Python library for measuring and analyzing network traffic.
[0778] Psutil: A Python library used to retrieve device battery information.
[0779] Flask: A Python framework used to build web interfaces for applying communication algorithms in real time.
[0780] Plyer: A Python library for user notifications.
[0781] System processing overview
[0782] Get environmental data:
[0783] The device first obtains network load and remaining battery level data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery level and obtains its percentage data.
[0784] Communication algorithm selection:
[0785] The terminal selects the optimal communication algorithm based on the acquired environmental data.
[0786] If the network load is high and the battery level is 20% or more, select the "high-speed communication algorithm."
[0787] Select "Battery saving algorithm" when network load is low and battery level is below 20%.
[0788] In other situations, a "balanced communication algorithm" is applied.
[0789] Communication algorithm application and notification:
[0790] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, and network load.
[0791] Examples:
[0792] For example, consider a situation where a user is using a device, the network load is high, and the battery is at 80%. In this case, the device will perform the following steps:
[0793] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0794] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[0795] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0796] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[0797] Example prompt sentence:
[0798] We are designing a "Smart Wi-Fi Manager" application for Wi-Fi management in brick-and-mortar stores. It selects the optimal communication algorithm (high-speed communication algorithm, battery-saving algorithm, balanced communication algorithm) based on the network load within the store and the remaining battery level of the smartphone, and adapts it in real time. The current communication status and algorithm are displayed to the user via a notification. Please use the following Python code to specifically explain what kind of data processing and calculations are performed.
[0799] The above is a specific embodiment of the present invention. This system allows users to enjoy a comfortable and efficient communication environment.
[0800] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0801] Step 1:
[0802] Obtaining environmental data
[0803] The device first obtains network load and remaining battery level data. Specifically, it uses the Scapy library to measure the current data traffic volume and analyze the number of connected devices. This determines whether the network load is "high" or "low." It also uses the Psutil library to check the current remaining battery level and obtain its percentage data. The input is the network state and the device's battery status, and the output is information about the network load and remaining battery level.
[0804] Step 2:
[0805] Selection of communication algorithm
[0806] Next, the device selects the optimal communication algorithm based on the acquired environmental data. Specifically, if the network load is high and the remaining battery level is 20% or more, it selects a "high-speed communication algorithm," and if the network load is low and the remaining battery level is 20% or less, it selects a "battery-saving algorithm." In all other cases, it selects a "balanced communication algorithm." The input is information about the network load and remaining battery level, and the output is the selected communication algorithm.
[0807] Step 3:
[0808] Application of communication algorithms
[0809] The terminal applies the selected communication algorithm to the system settings in real time. Specifically, the terminal's communication settings are changed to apply the optimal communication protocol and settings according to the selected algorithm. The input is the selected communication algorithm, and the output is the newly set communication protocol.
[0810] Step 4:
[0811] User Notification
[0812] The device notifies the user that the selected communication algorithm has been applied. Specifically, it uses the Plyer library to notify the user of information such as the communication algorithm, network load, and remaining battery level via a pop-up notification. The input is the newly set communication protocol and environmental data, and the output is a notification message for the user.
[0813] Step 5:
[0814] Monitoring and reassessing data
[0815] The device continuously monitors environmental data and repeats steps 1 to 4 described above according to changes in network load and remaining battery power. This ensures that the optimal communication environment is always maintained. The input is continuously acquired network and battery information, and the output is new communication settings and user notifications as needed.
[0816] Through the above processing steps, the terminal can apply the optimal communication algorithm according to the network load and battery state, and can notify the user as appropriate.
[0817] 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.
[0818] This system allows the device to acquire environmental information and user emotional information, select the optimal communication algorithm based on that information, and apply the selected algorithm to maintain high-speed, stable communication while reducing battery consumption.In addition, it is equipped with an emotion engine that recognizes the user's emotional state, improving the user experience.
[0819] Acquiring environmental data from a device
[0820] The device first obtains network load and battery remaining data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery power and obtains its percentage data.
[0821] Acquiring emotion data from the device
[0822] To recognize the user's emotions, the device is equipped with an emotion engine. The emotion engine analyzes the user's voice, facial expressions, text data, etc. to determine the user's emotional state. For example, it can determine whether the user is feeling stressed or relaxed based on changes in the tone and intonation of the voice, subtle facial movements, and words in the text that indicate emotions.
[0823] Selection of communication algorithm by terminal
[0824] Next, the device selects the optimal communication algorithm based on the acquired environmental and emotional data. Specifically, it follows the following logic:
[0825] When the network load is high and the battery level is 20% or more: A high-speed communication algorithm is selected.
[0826] When the network load is low and the battery level is below 20%, select the battery saving algorithm.
[0827] When the user is stressed: Prioritize the algorithm that prioritizes communication speed.
[0828] In other situations, a balanced communication algorithm is applied.
[0829] Device-based application and notification of settings
[0830] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, network load, and emotional state.
[0831] Specific examples
[0832] For example, consider a situation where a user is using a device, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the device will perform the following steps:
[0833] 1. Determine that the network load is "high" and check that the battery level is 80%.
[0834] 2. The emotion engine recognizes the user's stress state.
[0835] 3. Because the load is high and the battery level is sufficient, the user is feeling stressed, so the device selects the "high-speed communication algorithm."
[0836] 4. This algorithm is applied immediately and the settings are set to maximize communication speed.
[0837] 5. The device notifies the user that "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[0838] This not only allows users to enjoy a comfortable and efficient communication environment, but also provides a flexible communication environment that responds to their emotions.
[0839] The processing flow will be explained below.
[0840] Step 1:
[0841] The terminal measures the network load.
[0842] The device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low.
[0843] Step 2:
[0844] The device measures the remaining battery power.
[0845] The device checks the current battery level and gets the percentage.
[0846] Step 3:
[0847] The terminal recognizes the user's emotional state.
[0848] The device's built-in emotion engine analyzes the user's voice, facial expressions, and text data to determine their emotional state. For example, it can determine whether the user is stressed or relaxed based on changes in the tone and tone of their voice, subtle facial movements, and emotional words in the text.
[0849] Step 4:
[0850] The device analyzes environmental and emotional data.
[0851] The device comprehensively analyzes the network load status (high / low), remaining battery power, and the user's emotional state to understand the current communication environment and the user's state.
[0852] Step 5:
[0853] The terminal selects the optimal communication algorithm.
[0854] The device determines the communication algorithm using the following logic:
[0855] When the network load is high and the battery level is 20% or more: Select the "high-speed communication algorithm."
[0856] When the network load is low and the battery level is below 20%, select "Battery saving algorithm".
[0857] If the user is feeling stressed: Prioritize the "algorithm that prioritizes communication speed."
[0858] In other situations, a "balanced communication algorithm" is applied.
[0859] Step 6:
[0860] The terminal applies the selected communication algorithm to the system.
[0861] The terminal changes its communication settings according to the selected communication algorithm and applies the settings in real time to realize an optimized communication environment.
[0862] Step 7:
[0863] The terminal sends a notification to the user.
[0864] The device notifies the user that the setting change is complete and provides the user with information about the applied communication algorithm (e.g., "High-speed communication algorithm has been applied"), as well as information about the current network load, remaining battery level, and emotional state.
[0865] Through these processing steps, the system provides users with an optimal communication environment, enabling fast and stable communication while effectively managing battery consumption. It also adapts to the user's emotional state, providing a more comfortable user experience.
[0866] Example 2
[0867] 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."
[0868] Conventional communication systems only select communication algorithms based on environmental data, and are unable to provide an optimal communication environment that takes into account the user's emotional state. This makes it difficult to provide a flexible communication environment that responds to the user's emotions, and there is a need for methods to improve the user experience. Furthermore, there are limited methods for maintaining high-speed, stable communication while reducing battery consumption.
[0869] 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.
[0870] In this invention, the server includes means for acquiring environmental data, means for recognizing user emotion data, means for selecting a communication algorithm based on the acquired environmental data and emotion data, means for applying the selected communication algorithm in real time, and means for notifying the user of setting change information. This allows the server to select an optimal communication algorithm based on the environmental data and the user's emotional state, thereby maintaining high-speed and stable communication while reducing battery consumption. Furthermore, providing the user with a flexible communication environment that responds to their emotions improves the user experience.
[0871] "Environmental data" refers to information about external factors that affect the communication system, including, specifically, information about network load and remaining battery life.
[0872] "Network load" is information that indicates the network usage status, such as the amount of data being communicated over the network and the number of connected devices.
[0873] "Battery remaining" is information indicating the amount of power remaining in a device's battery, and is usually expressed as a percentage.
[0874] "User emotional data" refers to information about the user's emotional state, and is data analyzed from voice, facial expressions, text data, and the like.
[0875] A "communications algorithm" refers to a computational procedure or process that optimizes how data is sent and received in a communications system.
[0876] "Real time" refers to responding immediately to the moment processing occurs.
[0877] "Setting change information" is information for notifying the details of changes when changes are made to settings or algorithms within a communication system.
[0878] This invention relates to a system that selects and applies the optimal communication algorithm based on environmental data and user emotional information. This system allows a device to acquire environmental information and user emotional information, and selects and applies a communication algorithm in real time based on that information, improving communication stability and battery efficiency and enhancing the user experience.
[0879] Hardware and software used
[0880] Terminal
[0881] The device uses the following hardware and software to collect environmental and emotional data and select and apply communication algorithms:
[0882] 1. Hardware
[0883] Sensors: Equipped with a communication module for measuring network traffic and a battery monitor for checking the remaining battery level.
[0884] Camera: Used to analyze the user's facial expressions.
[0885] Microphone: Used to collect the user's voice and analyze emotions.
[0886] 2. Software
[0887] Emotion engine: Analyzes and determines the user's emotional state using speech analysis APIs (e.g., Google Cloud Speech-to-Text), facial expression recognition APIs (e.g., OpenCV and Azure Face API), and text analysis APIs (e.g., IBM Watson Natural Language Understanding).
[0888] Communication algorithm: Equipped with logic for selecting a communication algorithm based on environmental data such as network conditions and remaining battery level, as well as user emotional data.
[0889] Specific examples
[0890] Example 1
[0891] Consider a situation where a user is using a device, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the device will perform the following steps:
[0892] 1. Using the sensor, determine that the network load is "high" and confirm that the battery level is 80%.
[0893] 2. The emotion engine analyzes the voice data collected from the microphone and recognizes the user's stress level.
[0894] 3. Based on the acquired data, the communication algorithm selects a high-speed communication algorithm under stress conditions.
[0895] 4. The selected algorithm is applied in real time and the device settings are updated.
[0896] 5. The device notifies the user that "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[0897] Example 2
[0898] Consider a situation where a user is using a device in a relaxed state, the network load is low, and the battery is at 15%. In this case, the device performs the following steps:
[0899] 1. Using the sensor, determine that the network load is "low" and confirm that the battery level is 15%.
[0900] 2. The emotion engine analyzes facial expression data collected from the camera and recognizes that the user is relaxed.
[0901] 3. Based on the acquired data, the communication algorithm selects a battery saving algorithm.
[0902] 4. The selected algorithm is applied in real time and the device settings are updated.
[0903] 5. The device notifies the user: "Battery saving algorithm applied. Network load: low, battery remaining: 15%, emotional state: relaxed."
[0904] Prompt Sentence Examples
[0905] Here are some examples of prompts to input to a generative AI model:
[0906] "If the user is using the device, the network load is high, the battery is at 80%, and the user is feeling stressed, how would this system select a communication algorithm and notify the user?"
[0907] Through these detailed implementation procedures and concrete examples, the present invention can provide a more comfortable communication experience by selecting and applying the optimal communication algorithm in real time according to the user's mood and environmental conditions at the time.
[0908] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0909] Step 1: Obtaining environmental data
[0910] The device first uses the communication module to measure the network traffic volume and obtains the current data traffic volume, and then uses the OS's battery monitoring API to check the remaining battery level.
[0911] Input: Network traffic volume, remaining battery level
[0912] Data processing: Analyzes network traffic volume and determines whether the load is "high" or "low." Obtains remaining battery power as a percentage.
[0913] Output: Network load and battery level data
[0914] Step 2: Obtaining user emotion data
[0915] To recognize the user's emotions, the device first records voice data using the microphone. Then, it converts the voice data into text using a voice analysis API and analyzes it with the emotion engine. At the same time, it captures facial expressions with the camera and obtains facial expression data using the facial expression recognition API. It then uses the text analysis engine to analyze emotions from text messages.
[0916] Input: Voice data, facial expression data, text data
[0917] Data processing: Converts voice data into text and analyzes tone and timbre. Evaluates facial expression data in real time and analyzes emotional vocabulary in the text data.
[0918] Output: User's emotional state (stressed, relaxed, etc.)
[0919] Step 3: Selecting a communication algorithm
[0920] The device comprehensively evaluates the acquired environmental data (network load and remaining battery level) and the user's emotional data, and selects the appropriate communication algorithm according to multiple set selection criteria.
[0921] Input: Environmental data, user emotion data
[0922] Data processing: Evaluate conditions based on environmental data and emotional data to select the appropriate algorithm. For example, if the network load is high, the remaining battery level is over 20%, and the user is feeling stressed, select the "high-speed communication algorithm."
[0923] Output: Selected communication algorithm
[0924] Step 4: Applying settings and notifications
[0925] The device applies the selected communication algorithm to the system settings in real time, which includes updating the internal system configuration file and immediately updating the settings menu. After the settings are changed, the device notifies the user of the current setting status.
[0926] Input: Selected communication algorithm
[0927] Data processing: The selected algorithm is applied to the device settings to generate a notification for the user. For example, if a high-speed communication algorithm is applied, the notification will read, "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[0928] Output: Applied settings, user notification
[0929] (Application example 2)
[0930] 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."
[0931] Improving the quality of the user experience is crucial for modern content delivery services. However, the quality of communication is significantly affected by fluctuations in network load, battery level, and the user's emotional state. Conventional technologies have struggled to comprehensively consider these factors and select the optimal communication algorithm in real time. As a result, users often suffer from frequent interruptions and poor quality of communication. Therefore, a comprehensive communication management system that takes into account network load, battery level, and the user's emotional state is needed.
[0932] 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.
[0933] In this invention, the server includes means for acquiring environmental data, means for acquiring emotion data, means for selecting a communication algorithm, and means for applying the selected communication algorithm. This makes it possible to select and apply the optimal communication algorithm in real time based on the network load, remaining battery power, and the user's emotional state, and to notify the user of the current situation and information on the selected communication algorithm.
[0934] "Environmental data" is information about the situation in which the terminal used by the user is placed, such as the network load and remaining battery power of the terminal.
[0935] "Emotion data" is information about the user's emotional state obtained by analyzing audio data, video data, and text data.
[0936] "Communication algorithm" refers to the data communication method and settings selected based on the network load, remaining battery power, and the user's emotional state.
[0937] An "emotion engine" is a device or software that analyzes audio, video, and text data to determine a user's emotional state.
[0938] "Network load" refers to information about the network usage status, such as the amount of data traffic when a terminal communicates and the number of connected devices.
[0939] "Battery remaining" is a value that indicates how much the terminal's battery is currently charged.
[0940] A "high-speed communication algorithm" is an algorithm for maximizing communication speed when the network is under heavy load or when the user is feeling stressed.
[0941] The "battery saving algorithm" is an algorithm for reducing battery consumption when the network load is low and the remaining battery power is low.
[0942] "User notification" is a function that allows the terminal to inform the user of information such as the selected communication algorithm, remaining battery level, network load, and the user's emotional state.
[0943] This system provides a comfortable and efficient communication environment by providing a means for acquiring environmental and emotional data from the user's device, and then selecting and implementing the optimal communication algorithm based on that data.
[0944] First, the server obtains environmental data from the user's device. This environmental data includes the network load and remaining battery level. The network load is measured based on the amount of data traffic and the number of connected devices, while the remaining battery level is a value that indicates the current level of charge in the device's battery. Specifically, the server obtains the network load and remaining battery level information using the Python psutil library.
[0945] Next, the user's emotional state is determined using emotional data acquisition means. Emotional data is obtained by analyzing audio data, video data, and text data. A voice analysis library such as Pydub is used to analyze audio, and a generative AI model using Transformer is used to analyze the emotions in text data. An image analysis library such as OpenCV is used to analyze video data. These data are analyzed to determine the user's emotional state, such as whether they are stressed or relaxed.
[0946] The server selects a communication algorithm based on the acquired environmental data and emotion data. Specifically, it selects a communication algorithm based on the following rules:
[0947] A high-speed communication algorithm is selected under conditions where the network load is high and the battery level is 20% or more.
[0948] A battery saving algorithm is selected under conditions where the network load is low and the battery level is below 20%.
[0949] When a user is feeling stressed, an algorithm that prioritizes communication speed is selected.
[0950] The selected communication algorithm is immediately applied to the device's system settings by the server, allowing the user to communicate with settings optimized for the current communication conditions.
[0951] Furthermore, when a setting change is made, the server notifies the user of information about the communication algorithm, remaining battery level, network load, and emotional state, which helps the user understand the current communication environment.
[0952] As a concrete example, consider a situation where a user is using a streaming service, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the server performs the following steps:
[0953] Determine that the network load is "high" and check that the battery level is 80%.
[0954] The emotion engine recognizes the user's stress state.
[0955] Since the load is high and the battery level is sufficient, the user is feeling stressed, so a high-speed communication algorithm is selected.
[0956] High-speed communication algorithms are instantly applied to maximize communication speeds.
[0957] The server notifies the user: "High-speed communication algorithm applied. Network load: high, battery level: 80%, emotional state: stressed."
[0958] An example of a prompt might be:
[0959] "Please explain how you would choose your algorithms and apply settings when a user is using a streaming service, the network is heavily loaded, the battery is at 80%, and the user is stressed."
[0960] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0961] Step 1:
[0962] The device measures the current network load and obtains data on the remaining battery level. The input is data from the device's built-in sensor, and the output is numerical data on the network load and remaining battery level. Specifically, the data traffic volume and remaining battery level are obtained using the Python psutil library.
[0963] Step 2:
[0964] The device estimates the user's emotional state using microphone, camera, and text input data. The inputs are audio, video, and text data, and the output is the user's emotional state (stress, relaxation, etc.). The emotion engine performs audio analysis using the Pydub library, video analysis using OpenCV, and text analysis using a generative AI model (e.g., Transformer).
[0965] Step 3:
[0966] The server selects the optimal communication algorithm based on the acquired data on network load, remaining battery level, and emotional state. The input is environmental data and emotional data, and the output is the selected communication algorithm (high-speed communication algorithm, battery-saving algorithm, etc.). For example, if the network load is high and the remaining battery level is 20% or more, the high-speed communication algorithm is selected.
[0967] Step 4:
[0968] The server applies the selected communication algorithm to the terminal. The input is the selected communication algorithm, and the output is a change to the communication settings used by the terminal. Specifically, it directly rewrites the terminal's communication setting file and system settings.
[0969] Step 5:
[0970] The server notifies the user of changes to the communication algorithm, as well as information about the current network load, remaining battery level, and emotional state. The input is the communication algorithm selected by the server, environmental data, and emotional data, and the output is information displayed through the device's notification function. For example, a message such as "High-speed communication algorithm applied. Network load: high, remaining battery: 80%, emotional state: stressed" may be displayed.
[0971] 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.
[0972] 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.
[0973] 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.
[0974] [Fourth embodiment]
[0975] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[0976] 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.
[0977] 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).
[0978] 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.
[0979] 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.
[0980] 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).
[0981] 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.
[0982] 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.
[0983] 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.
[0984] 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.
[0985] 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.
[0986] 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.
[0987] 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."
[0988] In this system, the terminal acquires environmental information, selects the optimal communication algorithm based on that information, and applies the selected algorithm, thereby maintaining high-speed and stable communication while reducing battery consumption.
[0989] Acquiring environmental data from a device
[0990] The device first obtains network load and remaining battery level data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery level and obtains its percentage data.
[0991] Selection of communication algorithm by terminal
[0992] Next, the device selects the optimal communication algorithm based on the acquired environmental data. Specifically, it follows the following logic:
[0993] When the network load is high and the battery level is above 20%, the device will select the "high-speed communication algorithm."
[0994] When the network load is low and the battery level is below 20%, the device will select the "battery saving algorithm".
[0995] In other situations, the terminal applies a "balanced communication algorithm."
[0996] Device-based application and notification of settings
[0997] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, and network load.
[0998] Specific examples
[0999] For example, consider a situation where a user is using a device, the network load is high, and the battery is at 80%. In this case, the device will perform the following steps:
[1000] 1. Determine that the network load is "high" and check that the battery level is 80%.
[1001] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[1002] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[1003] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[1004] This allows users to enjoy a comfortable and efficient communication environment.
[1005] The processing flow will be explained below.
[1006] Step 1:
[1007] The terminal measures the network load.
[1008] The device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low.
[1009] Step 2:
[1010] The device measures the remaining battery power.
[1011] The device checks the current battery level and gets the percentage.
[1012] Step 3:
[1013] The device analyzes the environmental data.
[1014] The device performs a comprehensive analysis of the state of the communication environment based on the network load status (high / low) and remaining battery level.
[1015] Step 4:
[1016] The terminal selects the optimal communication algorithm.
[1017] The device determines the communication algorithm using the following logic:
[1018] When the network load is high and the battery level is 20% or more: A high-speed communication algorithm is selected.
[1019] When the network load is low and the battery level is below 20%, select the battery saving algorithm.
[1020] In other situations, a balanced communication algorithm is applied.
[1021] Step 5:
[1022] The terminal applies the selected communication algorithm to the system.
[1023] The terminal changes its communication settings according to the selected communication algorithm and applies the settings in real time to realize an optimized communication environment.
[1024] Step 6:
[1025] The terminal sends a notification to the user.
[1026] The device notifies the user that the setting change is complete, and provides the user with information about the applied communication algorithm (e.g., a high-speed communication algorithm has been applied), as well as the current network load and remaining battery level.
[1027] Through the above processing steps, the system provides the user with an optimal communication environment, enabling high-speed and stable communication while effectively managing battery consumption.
[1028] Example 1
[1029] 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."
[1030] In conventional communication systems, it has been difficult to select an optimal communication algorithm while fully considering the network load and remaining battery power. As a result, problems such as unstable communication speeds and rapid battery consumption have occurred. The present invention aims to solve these problems and reduce battery consumption while providing users with a high-speed, stable communication environment.
[1031] 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.
[1032] In this invention, the server includes means for measuring network load and analyzing the number of devices, means for measuring remaining battery power, means for analyzing acquired environmental data and selecting an optimal communication algorithm, means for applying the selected communication algorithm to system settings in real time, and means for notifying of setting changes, thereby making it possible to effectively reduce battery consumption while maintaining high-speed and stable communication.
[1033] "Network load" is a measure of the amount of bandwidth or data traffic being used within a network.
[1034] "Analyzing the number of devices" means identifying the number of devices and terminals connected to the network and analyzing their status.
[1035] "Battery remaining" is an indicator of the current state of a device's battery, usually expressed as a percentage.
[1036] "Analyzing environmental data" means processing the acquired data, such as network load and remaining battery level, to determine the situation and optimal settings.
[1037] "Selecting a communication algorithm" means selecting the most appropriate communication method based on the acquired and analyzed environmental data.
[1038] "Applying to system settings in real time" means that the selected communication algorithm is applied instantly and the system settings are updated and reflected immediately.
[1039] "Notifying the user of a setting change" means informing the user of changes to the system settings.
[1040] MODE FOR CARRYING OUT THE INVENTION
[1041] The present invention relates to a system in which a terminal selects an optimal communication algorithm based on the network load and remaining battery power, thereby reducing battery consumption while maintaining high-speed and stable communication.
[1042] Obtaining environmental data
[1043] First, the device obtains data on the network load and remaining battery level. To measure the network load, the device's network interface is used to measure the current amount of data traffic. Specifically, the Netstat command or a dedicated measurement API (e.g., the TrafficStats class on Android) is used. The device also analyzes network scanner and router data to analyze the number of connected devices. This makes it possible to determine whether the network load is high or low. To determine the remaining battery level, the device's internal battery sensor is used to obtain the current status. Specifically, the BatteryManager API (e.g., BatteryManager.BATTERY_PROPERTY_CAPACITY on Android) is used.
[1044] Selection of communication algorithm
[1045] Next, the device analyzes the acquired environmental data and selects the optimal communication algorithm. Specifically, it determines the communication algorithm based on the following logic:
[1046] When the network load is high and the battery level is above 20%, the device will select the "high-speed communication algorithm."
[1047] When the network load is low and the battery level is below 20%, the device will select the "battery saving algorithm".
[1048] In other situations, the terminal applies a "balanced communication algorithm."
[1049] Setting enforcement and notifications
[1050] The selected communication algorithm is applied to the device's system settings in real time. For example, if a "high-speed communication algorithm" is selected, the device will change the settings to allow the device to use the maximum bandwidth of Wi-Fi, 4G, and 5G. Once the setting change is complete, the device will notify the user. The notification will include the current communication algorithm, remaining battery level, network load, etc. Notification methods include the notification bar and a pop-up window.
[1051] Specific examples
[1052] For example, consider a situation where a user is using a device, the network is busy, and the battery is at 80%. In this case, the device will do the following:
[1053] 1. Determine that the network load is "high" and check that the battery level is 80%.
[1054] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[1055] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[1056] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[1057] This invention allows users to enjoy a comfortable and efficient communication environment.
[1058] Example prompts to be input to the generative AI model
[1059] "The system should select a high-speed communication algorithm when the network load is high and the battery level is high. Specific environmental conditions are assumed to be high data traffic and many connected devices."
[1060] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1061] Step 1: Obtaining the network load
[1062] The device obtains the network load. Specifically, it measures the current data traffic volume using the device's network interface. As input, it obtains data traffic information from the network interface and analyzes the data traffic volume based on that information. For example, it uses the Netstat command or a dedicated measurement API (TrafficStats class in Android). As output, it obtains network load data. For example, it determines that network traffic exceeds 1GB / h.
[1063] Step 2: Analyze the number of connected devices
[1064] The terminal analyzes the number of devices connected to the network. As input, it obtains information about connected devices using a network scanner or analyzing router data. Specifically, it obtains a device list from the router and counts the number of devices. As output, it obtains the number of connected devices. For example, if there are 10 or more connected devices, it determines that the network load is "high."
[1065] Step 3: Get the battery level
[1066] The device checks the current remaining battery capacity. As input, it collects battery information from the device's battery sensor and obtains the percentage data. Specifically, it uses the BatteryManager API (e.g., BatteryManager.BATTERY_PROPERTY_CAPACITY on Android). As output, it obtains the current remaining battery capacity data. For example, it confirms that the battery capacity is 80%.
[1067] Step 4: Analyze environmental data
[1068] The device analyzes the acquired network load and remaining battery data. The network load data and remaining battery data acquired in step 1 and step 2 are used as input. The output determines whether the current environmental state is high or low load, and whether the battery is high or low. For example, if the network load is high (over 1GB / h) and the remaining battery is 80%, it is determined to be "high load, high battery."
[1069] Step 5: Selecting a communication algorithm
[1070] The device selects the optimal communication algorithm based on the analysis results. The environmental condition data obtained in step 4 is used as input. The optimal communication algorithm is selected as output. Specifically, it is based on the following logic: if the network load is high and the remaining battery level is 20% or more, the "high-speed communication algorithm" is selected. For example, in the case of "high load and high battery," the "high-speed communication algorithm" is selected.
[1071] Step 6: Applying the communication algorithm
[1072] The device applies the selected communication algorithm to the system settings in real time. The communication algorithm data selected in step 5 is used as input. The system settings are updated as output. For example, if a "high-speed communication algorithm" is selected, the settings are changed so that the device can use the maximum bandwidth of Wi-Fi or 4G / 5G.
[1073] Step 7: Notify users
[1074] The device notifies the user of the setting change. As input, it obtains the communication algorithm applied in step 6 and its detailed information. Specifically, it sends a notification to the user using a notification bar or a pop-up window. As output, the user can be made aware of the setting change. For example, it may notify the user that "A high-speed communication algorithm has been applied. Network load: high, remaining battery: 80%."
[1075] (Application example 1)
[1076] 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."
[1077] Conventional communication systems have the problem that it is difficult to reduce battery consumption while maintaining high-speed communication when the network load is high or the battery level is low. In addition, there is no function to notify the user of the communication algorithm selection results in real time, making it difficult for the user to grasp the current communication status.
[1078] 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.
[1079] In this invention, the server includes means for acquiring environmental data, means for selecting a communication algorithm, means for applying the selected communication algorithm, and means for notifying the user, thereby making it possible to select an optimal communication algorithm depending on the network load and remaining battery power, and notify the user of the selection.
[1080] "Environmental data" refers to information about the surrounding communication environment obtained by a device, and specifically includes the amount of network traffic and the number of connected devices.
[1081] A "communication algorithm" refers to the method or means applied when communicating, and is a means of achieving optimal communication quality and battery consumption based on environmental data.
[1082] The "means for notifying the user" refers to a method or device for notifying the user of information about the selected communication algorithm and the current communication environment. Specifically, this includes display devices such as smartphones and tablets.
[1083] "Network load" refers to the level of usage and traffic on a communications network, and varies depending on the number of connected devices and the amount of data sent and received.
[1084] "Battery Remaining" refers to the remaining capacity of the device's battery, expressed as the current battery percentage.
[1085] A "high-speed communication algorithm" is an algorithm for achieving high communication speeds, and is mainly selected when the network load is high.
[1086] A "battery saving algorithm" is an algorithm for reducing battery consumption, and is mainly selected when the battery level is low.
[1087] The system of the present invention includes means for acquiring environmental data, selecting a communication algorithm, applying the selected communication algorithm, and notifying the user of the results. Specific embodiments for carrying out the present invention will be described in detail below.
[1088] Hardware and Software Configuration
[1089] Hardware:
[1090] This system requires the following hardware:
[1091] Smartphone: The primary device for applying communication algorithms and informing the user.
[1092] Wi-Fi router: A network device used to measure network load and transmit data.
[1093] software:
[1094] The following software libraries and frameworks are used:
[1095] Scapy: A Python library for measuring and analyzing network traffic.
[1096] Psutil: A Python library used to retrieve device battery information.
[1097] Flask: A Python framework used to build web interfaces for applying communication algorithms in real time.
[1098] Plyer: A Python library for user notifications.
[1099] System processing overview
[1100] Get environmental data:
[1101] The device first obtains network load and remaining battery level data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery level and obtains its percentage data.
[1102] Communication algorithm selection:
[1103] The terminal selects the optimal communication algorithm based on the acquired environmental data.
[1104] If the network load is high and the battery level is 20% or more, select the "high-speed communication algorithm."
[1105] Select "Battery saving algorithm" when network load is low and battery level is below 20%.
[1106] In other situations, a "balanced communication algorithm" is applied.
[1107] Communication algorithm application and notification:
[1108] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, and network load.
[1109] Examples:
[1110] For example, consider a situation where a user is using a device, the network load is high, and the battery is at 80%. In this case, the device will perform the following steps:
[1111] 1. Determine that the network load is "high" and check that the battery level is 80%.
[1112] 2. Because the load is high and the battery level is sufficient, the device selects the "high-speed communication algorithm."
[1113] 3. This algorithm is applied immediately and the settings are set to maximize communication speed.
[1114] 4. The device notifies the user that "High-speed communication algorithm has been applied. Network load: high, battery remaining: 80%."
[1115] Example prompt sentence:
[1116] We are designing a "Smart Wi-Fi Manager" application for Wi-Fi management in brick-and-mortar stores. It selects the optimal communication algorithm (high-speed communication algorithm, battery-saving algorithm, balanced communication algorithm) based on the network load within the store and the remaining battery level of the smartphone, and adapts it in real time. The current communication status and algorithm are displayed to the user via a notification. Please use the following Python code to specifically explain what kind of data processing and calculations are performed.
[1117] The above is a specific embodiment of the present invention. This system allows users to enjoy a comfortable and efficient communication environment.
[1118] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1119] Step 1:
[1120] Obtaining environmental data
[1121] The device first obtains network load and remaining battery level data. Specifically, it uses the Scapy library to measure the current data traffic volume and analyze the number of connected devices. This determines whether the network load is "high" or "low." It also uses the Psutil library to check the current remaining battery level and obtain its percentage data. The input is the network state and the device's battery status, and the output is information about the network load and remaining battery level.
[1122] Step 2:
[1123] Selection of communication algorithm
[1124] Next, the device selects the optimal communication algorithm based on the acquired environmental data. Specifically, if the network load is high and the remaining battery level is 20% or more, it selects a "high-speed communication algorithm," and if the network load is low and the remaining battery level is 20% or less, it selects a "battery-saving algorithm." In all other cases, it selects a "balanced communication algorithm." The input is information about the network load and remaining battery level, and the output is the selected communication algorithm.
[1125] Step 3:
[1126] Application of communication algorithms
[1127] The terminal applies the selected communication algorithm to the system settings in real time. Specifically, the terminal's communication settings are changed to apply the optimal communication protocol and settings according to the selected algorithm. The input is the selected communication algorithm, and the output is the newly set communication protocol.
[1128] Step 4:
[1129] User Notification
[1130] The device notifies the user that the selected communication algorithm has been applied. Specifically, it uses the Plyer library to notify the user of information such as the communication algorithm, network load, and remaining battery level via a pop-up notification. The input is the newly set communication protocol and environmental data, and the output is a notification message for the user.
[1131] Step 5:
[1132] Monitoring and reassessing data
[1133] The device continuously monitors environmental data and repeats steps 1 to 4 described above according to changes in network load and remaining battery power. This ensures that the optimal communication environment is always maintained. The input is continuously acquired network and battery information, and the output is new communication settings and user notifications as needed.
[1134] Through the above processing steps, the terminal can apply the optimal communication algorithm according to the network load and battery state, and can notify the user as appropriate.
[1135] 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.
[1136] This system allows the device to acquire environmental information and user emotional information, select the optimal communication algorithm based on that information, and apply the selected algorithm to maintain high-speed, stable communication while reducing battery consumption.In addition, it is equipped with an emotion engine that recognizes the user's emotional state, improving the user experience.
[1137] Acquiring environmental data from a device
[1138] The device first obtains network load and battery remaining data. To obtain network load, the device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low. At the same time, the device checks the current remaining battery power and obtains its percentage data.
[1139] Acquiring emotion data from the device
[1140] To recognize the user's emotions, the device is equipped with an emotion engine. The emotion engine analyzes the user's voice, facial expressions, text data, etc. to determine the user's emotional state. For example, it can determine whether the user is feeling stressed or relaxed based on changes in the tone and intonation of the voice, subtle facial movements, and words in the text that indicate emotions.
[1141] Selection of communication algorithm by terminal
[1142] Next, the device selects the optimal communication algorithm based on the acquired environmental and emotional data. Specifically, it follows the following logic:
[1143] When the network load is high and the battery level is 20% or more: A high-speed communication algorithm is selected.
[1144] When the network load is low and the battery level is below 20%, select the battery saving algorithm.
[1145] When the user is stressed: Prioritize the algorithm that prioritizes communication speed.
[1146] In other situations, a balanced communication algorithm is applied.
[1147] Device-based application and notification of settings
[1148] The selected communication algorithm is applied to the system settings by the device in real time, allowing the user to communicate with settings optimized for the current communication conditions. When the settings are changed, the device notifies the user and provides information such as the current communication algorithm, remaining battery level, network load, and emotional state.
[1149] Specific examples
[1150] For example, consider a situation where a user is using a device, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the device will perform the following steps:
[1151] 1. Determine that the network load is "high" and check that the battery level is 80%.
[1152] 2. The emotion engine recognizes the user's stress state.
[1153] 3. Because the load is high and the battery level is sufficient, the user is feeling stressed, so the device selects the "high-speed communication algorithm."
[1154] 4. This algorithm is applied immediately and the settings are set to maximize communication speed.
[1155] 5. The device notifies the user that "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[1156] This not only allows users to enjoy a comfortable and efficient communication environment, but also provides a flexible communication environment that responds to their emotions.
[1157] The processing flow will be explained below.
[1158] Step 1:
[1159] The terminal measures the network load.
[1160] The device measures the current data traffic volume and analyzes the number of connected devices on the network. Based on this information, the device determines whether the network load is high or low.
[1161] Step 2:
[1162] The device measures the remaining battery power.
[1163] The device checks the current battery level and gets the percentage.
[1164] Step 3:
[1165] The terminal recognizes the user's emotional state.
[1166] The device's built-in emotion engine analyzes the user's voice, facial expressions, and text data to determine their emotional state. For example, it can determine whether the user is stressed or relaxed based on changes in the tone and tone of their voice, subtle facial movements, and emotional words in the text.
[1167] Step 4:
[1168] The device analyzes environmental and emotional data.
[1169] The device comprehensively analyzes the network load status (high / low), remaining battery power, and the user's emotional state to understand the current communication environment and the user's state.
[1170] Step 5:
[1171] The terminal selects the optimal communication algorithm.
[1172] The device determines the communication algorithm using the following logic:
[1173] When the network load is high and the battery level is 20% or more: Select the "high-speed communication algorithm."
[1174] When the network load is low and the battery level is below 20%, select "Battery saving algorithm".
[1175] If the user is feeling stressed: Prioritize the "algorithm that prioritizes communication speed."
[1176] In other situations, a "balanced communication algorithm" is applied.
[1177] Step 6:
[1178] The terminal applies the selected communication algorithm to the system.
[1179] The terminal changes its communication settings according to the selected communication algorithm and applies the settings in real time to realize an optimized communication environment.
[1180] Step 7:
[1181] The terminal sends a notification to the user.
[1182] The device notifies the user that the setting change is complete and provides the user with information about the applied communication algorithm (e.g., "High-speed communication algorithm has been applied"), as well as information about the current network load, remaining battery level, and emotional state.
[1183] Through these processing steps, the system provides users with an optimal communication environment, enabling fast and stable communication while effectively managing battery consumption. It also adapts to the user's emotional state, providing a more comfortable user experience.
[1184] Example 2
[1185] 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."
[1186] Conventional communication systems only select communication algorithms based on environmental data, and are unable to provide an optimal communication environment that takes into account the user's emotional state. This makes it difficult to provide a flexible communication environment that responds to the user's emotions, and there is a need for methods to improve the user experience. Furthermore, there are limited methods for maintaining high-speed, stable communication while reducing battery consumption.
[1187] 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.
[1188] In this invention, the server includes means for acquiring environmental data, means for recognizing user emotion data, means for selecting a communication algorithm based on the acquired environmental data and emotion data, means for applying the selected communication algorithm in real time, and means for notifying the user of setting change information. This allows the server to select an optimal communication algorithm based on the environmental data and the user's emotional state, thereby maintaining high-speed and stable communication while reducing battery consumption. Furthermore, providing the user with a flexible communication environment that responds to their emotions improves the user experience.
[1189] "Environmental data" refers to information about external factors that affect the communication system, including, specifically, information about network load and remaining battery life.
[1190] "Network load" is information that indicates the network usage status, such as the amount of data being communicated over the network and the number of connected devices.
[1191] "Battery remaining" is information indicating the amount of power remaining in a device's battery, and is usually expressed as a percentage.
[1192] "User emotional data" refers to information about the user's emotional state, and is data analyzed from voice, facial expressions, text data, and the like.
[1193] A "communications algorithm" refers to a computational procedure or process that optimizes how data is sent and received in a communications system.
[1194] "Real time" refers to responding immediately to the moment processing occurs.
[1195] "Setting change information" is information for notifying the details of changes when changes are made to settings or algorithms within a communication system.
[1196] This invention relates to a system that selects and applies the optimal communication algorithm based on environmental data and user emotional information. This system allows a device to acquire environmental information and user emotional information, and selects and applies a communication algorithm in real time based on that information, improving communication stability and battery efficiency and enhancing the user experience.
[1197] Hardware and software used
[1198] Terminal
[1199] The device uses the following hardware and software to collect environmental and emotional data and select and apply communication algorithms:
[1200] 1. Hardware
[1201] Sensors: Equipped with a communication module for measuring network traffic and a battery monitor for checking the remaining battery level.
[1202] Camera: Used to analyze the user's facial expressions.
[1203] Microphone: Used to collect the user's voice and analyze emotions.
[1204] 2. Software
[1205] Emotion engine: Analyzes and determines the user's emotional state using speech analysis APIs (e.g., Google Cloud Speech-to-Text), facial expression recognition APIs (e.g., OpenCV and Azure Face API), and text analysis APIs (e.g., IBM Watson Natural Language Understanding).
[1206] Communication algorithm: Equipped with logic for selecting a communication algorithm based on environmental data such as network conditions and remaining battery level, as well as user emotional data.
[1207] Specific examples
[1208] Example 1
[1209] Consider a situation where a user is using a device, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the device will perform the following steps:
[1210] 1. Using the sensor, determine that the network load is "high" and confirm that the battery level is 80%.
[1211] 2. The emotion engine analyzes the voice data collected from the microphone and recognizes the user's stress level.
[1212] 3. Based on the acquired data, the communication algorithm selects a high-speed communication algorithm under stress conditions.
[1213] 4. The selected algorithm is applied in real time and the device settings are updated.
[1214] 5. The device notifies the user that "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[1215] Example 2
[1216] Consider a situation where a user is using a device in a relaxed state, the network load is low, and the battery is at 15%. In this case, the device performs the following steps:
[1217] 1. Using the sensor, determine that the network load is "low" and confirm that the battery level is 15%.
[1218] 2. The emotion engine analyzes facial expression data collected from the camera and recognizes that the user is relaxed.
[1219] 3. Based on the acquired data, the communication algorithm selects a battery saving algorithm.
[1220] 4. The selected algorithm is applied in real time and the device settings are updated.
[1221] 5. The device notifies the user: "Battery saving algorithm applied. Network load: low, battery remaining: 15%, emotional state: relaxed."
[1222] Prompt Sentence Examples
[1223] Here are some examples of prompts to input to a generative AI model:
[1224] "If the user is using the device, the network load is high, the battery is at 80%, and the user is feeling stressed, how would this system select a communication algorithm and notify the user?"
[1225] Through these detailed implementation procedures and concrete examples, the present invention can provide a more comfortable communication experience by selecting and applying the optimal communication algorithm in real time according to the user's mood and environmental conditions at the time.
[1226] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1227] Step 1: Obtaining environmental data
[1228] The device first uses the communication module to measure the network traffic volume and obtains the current data traffic volume, and then uses the OS's battery monitoring API to check the remaining battery level.
[1229] Input: Network traffic volume, remaining battery level
[1230] Data processing: Analyzes network traffic volume and determines whether the load is "high" or "low." Obtains remaining battery power as a percentage.
[1231] Output: Network load and battery level data
[1232] Step 2: Obtaining user emotion data
[1233] To recognize the user's emotions, the device first records voice data using the microphone. Then, it converts the voice data into text using a voice analysis API and analyzes it with the emotion engine. At the same time, it captures facial expressions with the camera and obtains facial expression data using the facial expression recognition API. It then uses the text analysis engine to analyze emotions from text messages.
[1234] Input: Voice data, facial expression data, text data
[1235] Data processing: Converts voice data into text and analyzes tone and timbre. Evaluates facial expression data in real time and analyzes emotional vocabulary in the text data.
[1236] Output: User's emotional state (stressed, relaxed, etc.)
[1237] Step 3: Selecting a communication algorithm
[1238] The device comprehensively evaluates the acquired environmental data (network load and remaining battery level) and the user's emotional data, and selects the appropriate communication algorithm according to multiple set selection criteria.
[1239] Input: Environmental data, user emotion data
[1240] Data processing: Evaluate conditions based on environmental data and emotional data to select the appropriate algorithm. For example, if the network load is high, the remaining battery level is over 20%, and the user is feeling stressed, select the "high-speed communication algorithm."
[1241] Output: Selected communication algorithm
[1242] Step 4: Applying settings and notifications
[1243] The device applies the selected communication algorithm to the system settings in real time, which includes updating the internal system configuration file and immediately updating the settings menu. After the settings are changed, the device notifies the user of the current setting status.
[1244] Input: Selected communication algorithm
[1245] Data processing: The selected algorithm is applied to the device settings to generate a notification for the user. For example, if a high-speed communication algorithm is applied, the notification will read, "High-speed communication algorithm applied. Network load: High, Battery remaining: 80%, Emotional state: Stressed."
[1246] Output: Applied settings, user notification
[1247] (Application example 2)
[1248] 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."
[1249] Improving the quality of the user experience is crucial for modern content delivery services. However, the quality of communication is significantly affected by fluctuations in network load, battery level, and the user's emotional state. Conventional technologies have struggled to comprehensively consider these factors and select the optimal communication algorithm in real time. As a result, users often suffer from frequent interruptions and poor quality of communication. Therefore, a comprehensive communication management system that takes into account network load, battery level, and the user's emotional state is needed.
[1250] 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.
[1251] In this invention, the server includes means for acquiring environmental data, means for acquiring emotion data, means for selecting a communication algorithm, and means for applying the selected communication algorithm. This makes it possible to select and apply the optimal communication algorithm in real time based on the network load, remaining battery power, and the user's emotional state, and to notify the user of the current situation and information on the selected communication algorithm.
[1252] "Environmental data" is information about the situation in which the terminal used by the user is placed, such as the network load and remaining battery power of the terminal.
[1253] "Emotion data" is information about the user's emotional state obtained by analyzing audio data, video data, and text data.
[1254] "Communication algorithm" refers to the data communication method and settings selected based on the network load, remaining battery power, and the user's emotional state.
[1255] An "emotion engine" is a device or software that analyzes audio, video, and text data to determine a user's emotional state.
[1256] "Network load" refers to information about the network usage status, such as the amount of data traffic when a terminal communicates and the number of connected devices.
[1257] "Battery remaining" is a value that indicates how much the terminal's battery is currently charged.
[1258] A "high-speed communication algorithm" is an algorithm for maximizing communication speed when the network is under heavy load or when the user is feeling stressed.
[1259] The "battery saving algorithm" is an algorithm for reducing battery consumption when the network load is low and the remaining battery power is low.
[1260] "User notification" is a function that allows the terminal to inform the user of information such as the selected communication algorithm, remaining battery level, network load, and the user's emotional state.
[1261] This system provides a comfortable and efficient communication environment by providing a means for acquiring environmental and emotional data from the user's device, and then selecting and implementing the optimal communication algorithm based on that data.
[1262] First, the server obtains environmental data from the user's device. This environmental data includes the network load and remaining battery level. The network load is measured based on the amount of data traffic and the number of connected devices, while the remaining battery level is a value that indicates the current level of charge in the device's battery. Specifically, the server obtains the network load and remaining battery level information using the Python psutil library.
[1263] Next, the user's emotional state is determined using emotional data acquisition means. Emotional data is obtained by analyzing audio data, video data, and text data. A voice analysis library such as Pydub is used to analyze audio, and a generative AI model using Transformer is used to analyze the emotions in text data. An image analysis library such as OpenCV is used to analyze video data. These data are analyzed to determine the user's emotional state, such as whether they are stressed or relaxed.
[1264] The server selects a communication algorithm based on the acquired environmental data and emotion data. Specifically, it selects a communication algorithm based on the following rules:
[1265] A high-speed communication algorithm is selected under conditions where the network load is high and the battery level is 20% or more.
[1266] A battery saving algorithm is selected under conditions where the network load is low and the battery level is below 20%.
[1267] When a user is feeling stressed, an algorithm that prioritizes communication speed is selected.
[1268] The selected communication algorithm is immediately applied to the device's system settings by the server, allowing the user to communicate with settings optimized for the current communication conditions.
[1269] Furthermore, when a setting change is made, the server notifies the user of information about the communication algorithm, remaining battery level, network load, and emotional state, which helps the user understand the current communication environment.
[1270] As a concrete example, consider a situation where a user is using a streaming service, the network load is high, the battery is at 80%, and the user is feeling stressed. In this case, the server performs the following steps:
[1271] Determine that the network load is "high" and check that the battery level is 80%.
[1272] The emotion engine recognizes the user's stress state.
[1273] Since the load is high and the battery level is sufficient, the user is feeling stressed, so a high-speed communication algorithm is selected.
[1274] High-speed communication algorithms are instantly applied to maximize communication speeds.
[1275] The server notifies the user: "High-speed communication algorithm applied. Network load: high, battery level: 80%, emotional state: stressed."
[1276] An example of a prompt might be:
[1277] "Please explain how you would choose your algorithms and apply settings when a user is using a streaming service, the network is heavily loaded, the battery is at 80%, and the user is stressed."
[1278] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1279] Step 1:
[1280] The device measures the current network load and obtains data on the remaining battery level. The input is data from the device's built-in sensor, and the output is numerical data on the network load and remaining battery level. Specifically, the data traffic volume and remaining battery level are obtained using the Python psutil library.
[1281] Step 2:
[1282] The device estimates the user's emotional state using microphone, camera, and text input data. The inputs are audio, video, and text data, and the output is the user's emotional state (stress, relaxation, etc.). The emotion engine performs audio analysis using the Pydub library, video analysis using OpenCV, and text analysis using a generative AI model (e.g., Transformer).
[1283] Step 3:
[1284] The server selects the optimal communication algorithm based on the acquired data on network load, remaining battery level, and emotional state. The input is environmental data and emotional data, and the output is the selected communication algorithm (high-speed communication algorithm, battery-saving algorithm, etc.). For example, if the network load is high and the remaining battery level is 20% or more, the high-speed communication algorithm is selected.
[1285] Step 4:
[1286] The server applies the selected communication algorithm to the terminal. The input is the selected communication algorithm, and the output is a change to the communication settings used by the terminal. Specifically, it directly rewrites the terminal's communication setting file and system settings.
[1287] Step 5:
[1288] The server notifies the user of changes to the communication algorithm, as well as information about the current network load, remaining battery level, and emotional state. The input is the communication algorithm selected by the server, environmental data, and emotional data, and the output is information displayed through the device's notification function. For example, a message such as "High-speed communication algorithm applied. Network load: high, remaining battery: 80%, emotional state: stressed" may be displayed.
[1289] 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.
[1290] 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.
[1291] 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.
[1292] 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.
[1293] FIG. 9 illustrates 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 behaviors 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.
[1294] 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.
[1295] 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).
[1296] 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.
[1297] 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."
[1298] 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.
[1299] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1300] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1301] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1302] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1303] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1304] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1305] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1306] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1307] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1308] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1309] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1310] The following is further disclosed regarding the above embodiment.
[1311] (Claim 1)
[1312] a means for acquiring environmental data;
[1313] means for selecting a communication algorithm;
[1314] means for applying the selected communication algorithm;
[1315] A system including:
[1316] (Claim 2)
[1317] The system of claim 1 , wherein the means for acquiring environmental data includes means for measuring a network load and means for measuring a remaining battery capacity.
[1318] (Claim 3)
[1319] 2. The system of claim 1, wherein the means for selecting a communication algorithm selects a high-speed communication algorithm under conditions where the network load is high and the remaining battery level is 20% or more, and selects a battery-saving algorithm under conditions where the network load is low and the remaining battery level is 20% or less.
[1320] "Example 1"
[1321] (Claim 1)
[1322] a means for measuring network load and analyzing the number of devices;
[1323] a means for measuring the remaining battery capacity;
[1324] A means for analyzing the acquired environmental data and selecting the optimal communication algorithm;
[1325] means for applying the selected communication algorithm to the system configuration in real time;
[1326] a means for notifying the user of the change in configuration;
[1327] A system including:
[1328] (Claim 2)
[1329] The means for measuring the network load and analyzing the number of devices includes:
[1330] 10. The system of claim 1, further comprising functionality for measuring data traffic volume and identifying devices connected to the network.
[1331] (Claim 3)
[1332] The means for selecting a communication algorithm includes:
[1333] A high-speed communication algorithm is selected under conditions of high network load and battery remaining of 20% or more.
[1334] 10. The system of claim 1, wherein the battery saving algorithm is selected under conditions of low network load and battery remaining charge of 20% or less.
[1335] "Application Example 1"
[1336] (Claim 1)
[1337] a means for acquiring environmental data;
[1338] means for selecting a communication algorithm;
[1339] means for applying the selected communication algorithm;
[1340] A system including a means for providing notifications to a user.
[1341] (Claim 2)
[1342] the means for acquiring environmental data includes means for measuring a network load and means for measuring a remaining battery capacity;
[1343] 10. The system of claim 1.
[1344] (Claim 3)
[1345] the means for selecting a communication algorithm selects a high-speed communication algorithm under the condition that the network load is high and the remaining battery level is 20% or more, and selects a battery-saving algorithm under the condition that the network load is low and the remaining battery level is 20% or less, and notifies the user that the selected communication algorithm has been applied.
[1346] 10. The system of claim 1.
[1347] "Example 2: Combining Emotion Engines"
[1348] (Claim 1)
[1349] a means for acquiring environmental data;
[1350] means for recognizing user emotion data;
[1351] means for selecting a communication algorithm based on the acquired environmental data and emotion data;
[1352] means for applying the selected communication algorithm in real time;
[1353] means for notifying a user of setting change information;
[1354] A system including:
[1355] (Claim 2)
[1356] The system of claim 1 , wherein the means for acquiring environmental data includes means for measuring a network load and means for measuring a remaining battery capacity.
[1357] (Claim 3)
[1358] The system of claim 1, wherein the means for selecting a communication algorithm selects a high-speed communication algorithm under conditions where the network load is high and the remaining battery level is 20% or more, selects a battery-saving algorithm under conditions where the network load is low and the remaining battery level is 20% or less, and selects an algorithm that prioritizes communication speed when the user is feeling stressed.
[1359] "Application example 2 when combining emotion engines"
[1360] (Claim 1)
[1361] a means for acquiring environmental data;
[1362] A means for acquiring emotion data;
[1363] means for selecting a communication algorithm;
[1364] means for applying the selected communication algorithm;
[1365] A system including:
[1366] (Claim 2)
[1367] The system of claim 1 , wherein the means for acquiring environmental data includes means for measuring a network load and means for measuring a remaining battery capacity.
[1368] (Claim 3)
[1369] 10. The system of claim 1, wherein the means for obtaining emotional data includes means for determining the emotional state of the user by analyzing audio data, video data, and text data.
[1370] (Claim 4)
[1371] The system of claim 1, wherein the means for selecting a communication algorithm selects a high-speed communication algorithm when the network load is high and the remaining battery level is 20% or more, selects a battery-saving algorithm when the network load is low and the remaining battery level is 20% or less, and selects an algorithm that prioritizes communication speed when the user is feeling stressed.
[1372] (Claim 5)
[1373] 10. The system of claim 1, wherein the means for applying the selected communication algorithm includes means for notifying the user of the communication algorithm, remaining battery power, network load, and emotional state information. [Explanation of symbols]
[1374] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. a means for acquiring environmental data; means for selecting a communication algorithm; means for applying the selected communication algorithm; A system including:
2. The system of claim 1 , wherein the means for acquiring environmental data includes means for measuring a network load and means for measuring a remaining battery capacity.
3. 2. The system of claim 1, wherein the means for selecting a communication algorithm selects a high-speed communication algorithm under conditions where the network load is high and the remaining battery level is 20% or more, and selects a battery-saving algorithm under conditions where the network load is low and the remaining battery level is 20% or less.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A